diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 343f421b4e8..097efa2c75c 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -12,11 +12,12 @@ /obj/machinery/computer/aifixer/attackby(I as obj, user as mob, params) if(occupant && istype(I, /obj/item/weapon/screwdriver)) - if(stat & (NOPOWER|BROKEN)) + if(stat & BROKEN) + ..() + if(stat & NOPOWER) to_chat(user, "The screws on [name]'s screen won't budge.") else - to_chat(user, "The screws on [name]'s screen won't budge and it emits a warning beep.") - return + to_chat(user, "The screws on [name]'s screen won't budge and it emits a warning beep!.") else ..() @@ -135,3 +136,18 @@ to_chat(user, "ERROR: Reconstruction in progress.") else if(!occupant) to_chat(user, "ERROR: Unable to locate artificial intelligence.") + +/obj/machinery/computer/aifixer/Destroy() + if(occupant) + occupant.ghostize() + qdel(occupant) + occupant = null + return ..() + +/obj/machinery/computer/aifixer/emp_act() + if(occupant) + occupant.ghostize() + qdel(occupant) + occupant = null + else + ..()