diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 317f7b7777a..1c983cf35db 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -25,7 +25,7 @@ brain.brainmob.container = src brain.brainmob.stat = 0 locked = 1 - name = "Man-Machine Interface:[brain.brainmob.real_name]" + name = "Man-Machine Interface: [brain.brainmob.real_name]" icon_state = "mmi_full" return diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 45fd6e2e590..f6aae45e784 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -41,6 +41,7 @@ if(brain) brain.loc = loc mind.transfer_to(brain.brain.brainmob) + brain = null ..() //If there's an MMI in the robot, have it ejected when the mob goes away. --NEO diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 3c8597a22ae..17643ae2d52 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1977,12 +1977,13 @@ proc/isobserver(A) flick("gibbed-r", animation) if (src.client) - var/mob/dead/observer/newmob + if(!isrobot(src)) + var/mob/dead/observer/newmob - newmob = new/mob/dead/observer(src) - src:client:mob = newmob - if (src.mind) - src.mind.transfer_to(newmob) + newmob = new/mob/dead/observer(src) + src:client:mob = newmob + if (src.mind) + src.mind.transfer_to(newmob) var/virus = src.virus if (istype(src, /mob/living/silicon)) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 65bd4397024..7920d0638d3 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -202,6 +202,15 @@ O.job = "Cyborg" + O.brain = new /obj/item/device/mmi(O) + O.brain.name = "Man-Machine Interface: [src.name]" + O.brain.icon_state = "mmi_full" + O.brain.brain = new /obj/item/brain(O.brain) + O.brain.brain.name = "[src.name]'s brain" + O.brain.brain.brainmob = new /mob/living/carbon/brain(O.brain.brain) + O.brain.brain.brainmob.name = "[src.name]" + O.brain.brain.brainmob.container = O.brain + del(src)