diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index be69869d73..4111d20aaf 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -10,15 +10,14 @@ resistance_flags = FIRE_PROOF | ACID_PROOF | INDESTRUCTIBLE /obj/item/device/paicard/Initialize() - ..() SSpai.pai_card_list += src add_overlay("pai-off") + return ..() /obj/item/device/paicard/Destroy() //Will stop people throwing friend pAIs into the singularity so they can respawn SSpai.pai_card_list -= src - if(!isnull(pai)) - pai.death(0) + QDEL_NULL(pai) return ..() /obj/item/device/paicard/attack_self(mob/user) @@ -26,9 +25,9 @@ return user.set_machine(src) var/dat = "Personal AI Device
" - if(pai && (!pai.master_dna || !pai.master)) - dat += "Imprint Master DNA
" if(pai) + if(!pai.master_dna || !pai.master) + dat += "Imprint Master DNA
" dat += "Installed Personality: [pai.name]
" dat += "Prime directive:
[pai.laws.zeroth]
" for(var/slaws in pai.laws.supplied) @@ -86,7 +85,7 @@ to_chat(pai, "Byte by byte you lose your sense of self.") to_chat(pai, "Your mental faculties leave you.") to_chat(pai, "oblivion... ") - pai.death(0) + removePersonality() if(href_list["wires"]) var/wire = text2num(href_list["wires"]) if(pai.radio) @@ -119,9 +118,9 @@ audible_message("\The [src] plays a cheerful startup noise!") /obj/item/device/paicard/proc/removePersonality() - src.pai = null - src.cut_overlays() - src.add_overlay("pai-off") + QDEL_NULL(pai) + cut_overlays() + add_overlay("pai-off") /obj/item/device/paicard/proc/setEmotion(emotion) if(pai) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index c2b482901d..3177f237b2 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -79,7 +79,7 @@ /mob/living/silicon/pai/Destroy() GLOB.pai_list -= src - ..() + return ..() /mob/living/silicon/pai/Initialize() var/obj/item/device/paicard/P = loc