diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index fe15d146aa4..56a6d452e2a 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -54,7 +54,8 @@ R.name = heldname R.custom_name = heldname R.real_name = heldname - + if(R.mmi && R.mmi.brainmob) + R.mmi.brainmob.name = R.name return TRUE /obj/item/borg/upgrade/restart diff --git a/code/modules/mob/dead/observer/orbit.dm b/code/modules/mob/dead/observer/orbit.dm index 14c40e30e4e..f8fda08a860 100644 --- a/code/modules/mob/dead/observer/orbit.dm +++ b/code/modules/mob/dead/observer/orbit.dm @@ -47,16 +47,22 @@ var/list/pois = getpois(mobs_only = FALSE, skip_mindless = FALSE) for(var/name in pois) + var/mob/M = pois[name] + if(name == null) + if(pois[name] && M.type) + stack_trace("getpois returned something under a null name. Type: [M.type]") + else + stack_trace("getpois returned a null value") + continue + var/list/serialized = list() serialized["name"] = "[name]" // stringify it; If it's null or something - we'd like to know it and fix getpois() - if(name == null || serialized["name"] != name) - stack_trace("getpois returned something under a non-string name [name] - [pois[name]]") + if(serialized["name"] != name) + stack_trace("getpois returned something under a non-string name [name] - [pois[name]] - [M.type]") + continue - var/poi = pois[name] + serialized["ref"] = "\ref[M]" - serialized["ref"] = "\ref[poi]" - - var/mob/M = poi if(istype(M)) if(isnewplayer(M)) // People in the lobby screen; only have their ckey as a name. continue diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 627ef8861fd..64da8c35281 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -230,6 +230,9 @@ GLOBAL_LIST_INIT(robot_verbs_default, list( if(Entry[2] == ckey) //They're in the list? Custom sprite time, var and icon change required custom_sprite = 1 + if(mmi && mmi.brainmob) + mmi.brainmob.name = newname + return 1 diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 212bb41720d..a2eeeb8e2be 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -93,6 +93,8 @@ if(O.mind && O.mind.assigned_role == "Cyborg") if(O.mind.role_alt_title == "Robot") O.mmi = new /obj/item/mmi/robotic_brain(O) + if(O.mmi.brainmob) + O.mmi.brainmob.name = O.name else O.mmi = new /obj/item/mmi(O) O.mmi.transfer_identity(src) //Does not transfer key/client.