From 7372cd38200a869d74f90e977ca889b2cf5ef56b Mon Sep 17 00:00:00 2001 From: TheDZD Date: Mon, 13 Jun 2016 23:06:15 -0400 Subject: [PATCH] The Ice Age (#4655) --- code/game/machinery/cryopod.dm | 93 +++++++++++++++------------------- 1 file changed, 42 insertions(+), 51 deletions(-) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 68ff1bf64c1..f7de2dd6b5f 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -28,17 +28,6 @@ var/storage_name = "Cryogenic Oversight Control" var/allow_items = 1 -/obj/machinery/computer/cryopod/robot - name = "robotic storage console" - desc = "An interface between crew and the robotic storage systems" - icon = 'icons/obj/robot_storage.dmi' - icon_state = "console" - circuit = /obj/item/weapon/circuitboard/robotstoragecontrol - - storage_type = "cyborgs" - storage_name = "Robotic Storage Control" - allow_items = 0 - /obj/machinery/computer/cryopod/attack_ai() src.attack_hand() @@ -146,7 +135,6 @@ //Decorative structures to go alongside cryopods. /obj/structure/cryofeed - name = "cryogenic feed" desc = "A bewildering tangle of machinery and pipes." icon = 'icons/obj/Cryogenic2.dmi' @@ -218,23 +206,6 @@ orient_right = 1 icon_state = "body_scanner_0-r" -/obj/machinery/cryopod/robot - name = "robotic storage unit" - desc = "A storage unit for robots." - icon = 'icons/obj/robot_storage.dmi' - icon_state = "pod_0" - base_icon_state = "pod_0" - occupied_icon_state = "pod_1" - on_store_message = "has entered robotic storage." - on_store_name = "Robotic Storage Oversight" - on_enter_occupant_message = "The storage unit broadcasts a sleep signal to you. Your systems start to shut down, and you enter low-power mode." - allow_occupant_types = list(/mob/living/silicon/robot) - disallow_occupant_types = list(/mob/living/silicon/robot/drone) - -/obj/machinery/cryopod/robot/right - orient_right = 1 - icon_state = "pod_0-r" - /obj/machinery/cryopod/New() announce = new /obj/item/device/radio/intercom(src) @@ -296,22 +267,6 @@ despawn_occupant() -// This function can not be undone; do not call this unless you are sure -// Also make sure there is a valid control computer -/obj/machinery/cryopod/robot/despawn_occupant() - var/mob/living/silicon/robot/R = occupant - if(!istype(R)) return ..() - - R.contents -= R.mmi - qdel(R.mmi) - for(var/obj/item/I in R.module) // the tools the borg has; metal, glass, guns etc - for(var/obj/item/O in I) // the things inside the tools, if anything; mainly for janiborg trash bags - O.loc = R - qdel(I) - qdel(R.module) - - return ..() - // This function can not be undone; do not call this unless you are sure // Also make sure there is a valid control computer /obj/machinery/cryopod/proc/despawn_occupant() @@ -406,11 +361,6 @@ else icon_state = base_icon_state - //TODO: Check objectives/mode, update new targets if this mob is the target, spawn new antags? - - //This should guarantee that ghosts don't spawn. - occupant.ckey = null - //Make an announcement and log the person entering storage. control_computer.frozen_crew += "[occupant.real_name]" @@ -682,7 +632,6 @@ return /obj/machinery/cryopod/proc/go_out() - if(!occupant) return @@ -704,3 +653,45 @@ //Attacks/effects. /obj/machinery/cryopod/blob_act() return //Sorta gamey, but we don't really want these to be destroyed. + +/obj/machinery/computer/cryopod/robot + name = "robotic storage console" + desc = "An interface between crew and the robotic storage systems" + icon = 'icons/obj/robot_storage.dmi' + icon_state = "console" + circuit = /obj/item/weapon/circuitboard/robotstoragecontrol + + storage_type = "cyborgs" + storage_name = "Robotic Storage Control" + allow_items = 0 + +/obj/machinery/cryopod/robot + name = "robotic storage unit" + desc = "A storage unit for robots." + icon = 'icons/obj/robot_storage.dmi' + icon_state = "pod_0" + base_icon_state = "pod_0" + occupied_icon_state = "pod_1" + on_store_message = "has entered robotic storage." + on_store_name = "Robotic Storage Oversight" + on_enter_occupant_message = "The storage unit broadcasts a sleep signal to you. Your systems start to shut down, and you enter low-power mode." + allow_occupant_types = list(/mob/living/silicon/robot) + disallow_occupant_types = list(/mob/living/silicon/robot/drone) + +/obj/machinery/cryopod/robot/right + orient_right = 1 + icon_state = "pod_0-r" + +/obj/machinery/cryopod/robot/despawn_occupant() + var/mob/living/silicon/robot/R = occupant + if(!istype(R)) return ..() + + R.contents -= R.mmi + qdel(R.mmi) + for(var/obj/item/I in R.module) // the tools the borg has; metal, glass, guns etc + for(var/obj/item/O in I) // the things inside the tools, if anything; mainly for janiborg trash bags + O.loc = R + qdel(I) + qdel(R.module) + + return ..()