diff --git a/code/modules/surgery/organs/mmi_holder.dm b/code/modules/surgery/organs/mmi_holder.dm index 8b5834bd8fc..d4228fb9625 100644 --- a/code/modules/surgery/organs/mmi_holder.dm +++ b/code/modules/surgery/organs/mmi_holder.dm @@ -29,7 +29,7 @@ /obj/item/organ/internal/brain/mmi_holder/proc/update_from_mmi() if(!stored_mmi) return - name = stored_mmi.name + name = initial(stored_mmi.name) desc = stored_mmi.desc icon = stored_mmi.icon icon_state = stored_mmi.icon_state diff --git a/code/modules/surgery/organs/subtypes/machine.dm b/code/modules/surgery/organs/subtypes/machine.dm index 7c2aae08894..b66d13612a3 100644 --- a/code/modules/surgery/organs/subtypes/machine.dm +++ b/code/modules/surgery/organs/subtypes/machine.dm @@ -115,15 +115,22 @@ . = ..() +/obj/item/organ/internal/brain/mmi_holder/posibrain + name = "positronic brain" + /obj/item/organ/internal/brain/mmi_holder/posibrain/New() ..() stored_mmi = new /obj/item/mmi/robotic_brain/positronic(src) - if(owner) - stored_mmi.name = "positronic brain ([owner.real_name])" - stored_mmi.brainmob.real_name = owner.real_name + if(!owner) + stored_mmi.forceMove(get_turf(src)) + qdel(src) + +/obj/item/organ/internal/brain/mmi_holder/posibrain/remove(mob/living/user, special = 0) + if(stored_mmi && dna) + stored_mmi.name = "[initial(name)] ([dna.real_name])" + stored_mmi.brainmob.real_name = dna.real_name stored_mmi.brainmob.name = stored_mmi.brainmob.real_name stored_mmi.icon_state = "posibrain-occupied" - update_from_mmi() - else - stored_mmi.forceMove(get_turf(src)) - qdel(src) \ No newline at end of file + if(!stored_mmi.brainmob.dna) + stored_mmi.brainmob.dna = dna.Clone() + . = ..() \ No newline at end of file