diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 0e071c2dc9d..9c874f54b17 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -246,6 +246,8 @@ var/list/ai_verbs_default = list( if(!powered_ai || powered_ai.stat & DEAD) qdel() return + if(powered_ai.psupply != src) // For some reason, the AI has different powersupply object. Delete this one, it's no longer needed. + qdel(src) if(powered_ai.APU_power) use_power = 0 return diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 60a474ce6d8..6899098c94c 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -159,10 +159,8 @@ stat |= MAINT src.update_icon() -/obj/machinery/power/apc/initialize() - ..() +/obj/machinery/power/apc/Destroy() src.update() - area.apc = null area.power_light = 0 area.power_equip = 0 @@ -179,7 +177,7 @@ terminal = null // Malf AI, removes the APC from AI's hacked APCs list. - if(hacker && hacker.hacked_apcs && src in hacker.hacked_apcs) + if((hacker) && (hacker.hacked_apcs) && (src in hacker.hacked_apcs)) hacker.hacked_apcs -= src ..()