Positronic Brain Balance

This commit is contained in:
Fox-McCloud
2016-01-08 02:50:20 -05:00
parent 14ac5f25f3
commit 3000fd495f
4 changed files with 26 additions and 11 deletions
@@ -12,6 +12,7 @@
var/list/ghost_volunteers[0]
req_access = list(access_robotics)
mecha = null//This does not appear to be used outside of reference in mecha.dm.
var/silenced = 0 //if set to 1, they can't talk.
/obj/item/device/mmi/posibrain/attack_self(mob/user as mob)
@@ -28,6 +29,13 @@
if(check_observer(O))
transfer_personality(O)
reset_search()
else
if(silenced)
silenced = 0
user << "<span class='notice'>You toggle the speaker to 'on', on the [src].</span>"
else
silenced = 1
user << "<span class='notice'>You toggle the speaker to 'off', on the [src].</span>"
/obj/item/device/mmi/posibrain/proc/request_player()
for(var/mob/dead/observer/O in player_list)
@@ -184,3 +192,6 @@
var/turf/T = get_turf_or_move(src.loc)
for (var/mob/M in viewers(T))
M.show_message("\blue The positronic brain pings softly.")
/obj/item/device/mmi/posibrain/ipc
silenced = 1
+5 -10
View File
@@ -3,9 +3,13 @@
if (silent)
return
if(!(container && (istype(container, /obj/item/device/mmi) || istype(container, /obj/item/device/mmi/posibrain))))
if(!(container && istype(container, /obj/item/device/mmi)))
return //No MMI, can't speak, bucko./N
else
if(container && istype(container, /obj/item/device/mmi/posibrain))
var/obj/item/device/mmi/posibrain/P = container
if(P && P.silenced)
return
if(prob(emp_damage*4))
if(prob(10))//10% chane to drop the message entirely
return
@@ -14,15 +18,6 @@
..(message)
/mob/living/carbon/brain/can_speak(var/datum/language/speaking)
if(speaking == all_languages["Robot Talk"] && (container && istype(container, /obj/item/device/mmi/posibrain))) //so posibrains can speak binary; less messy than adding the language
return 1
else return ..()
/mob/living/carbon/brain/binarycheck()
return (container && istype(container, /obj/item/device/mmi/posibrain))
/mob/living/carbon/brain/handle_message_mode(var/message_mode, var/message, var/verb, var/speaking, var/used_radios, var/alt_name)
switch(message_mode)
if("headset")
+1 -1
View File
@@ -124,7 +124,7 @@
/obj/item/organ/mmi_holder/posibrain/New()
robotize()
stored_mmi = new /obj/item/device/mmi/posibrain(src)
stored_mmi = new /obj/item/device/mmi/posibrain/ipc(src)
..()
spawn(1)
if(owner)