/obj/structure/ghost_pod/Destroy() if(src in active_ghost_pods) active_ghost_pods -= src ..() /obj/structure/ghost_pod var/spawn_active = FALSE /obj/structure/ghost_pod/manual var/remains_active = FALSE var/activated = FALSE /obj/structure/ghost_pod/manual/attack_ghost(var/mob/observer/dead/user) if(!remains_active || busy) return if(!activated) to_chat(user, "\the [src] has not yet been activated. Sorry.") return if(used) to_chat(user, "Another spirit appears to have gotten to \the [src] before you. Sorry.") return busy = TRUE var/choice = input(user, "Are you certain you wish to activate this pod?", "Control Pod") as null|anything in list("Yes", "No") if(!choice || choice == "No") busy = FALSE return else if(used) to_chat(user, "Another spirit appears to have gotten to \the [src] before you. Sorry.") busy = FALSE return busy = FALSE create_occupant(user) /obj/structure/ghost_pod/proc/ghostpod_startup(var/notify = FALSE) if(!(src in active_ghost_pods)) active_ghost_pods += src if(notify) trigger() /obj/structure/ghost_pod/ghost_activated/Initialize() . = ..() ghostpod_startup(spawn_active)