From 69b6926293df66577b1128fc1c9f87fcec17864f Mon Sep 17 00:00:00 2001 From: SkyMarshal Date: Sun, 20 May 2012 12:32:00 -0700 Subject: [PATCH] Fixes Tajaran Transformation. Few sanity checks and bugfixes added. --- baystation12.dme | 4 +--- .../Tajara/tajara_transformation.dm | 18 ++++++++++++------ .../Cael_Aislinn/Tajara/tajaran.dm | 2 +- code/game/machinery/computer/lockdown.dm | 2 +- code/game/objects/radio/radio.dm | 10 ++++++---- 5 files changed, 21 insertions(+), 15 deletions(-) diff --git a/baystation12.dme b/baystation12.dme index 90fe1f183b1..d762df503c6 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -166,7 +166,6 @@ #define FILE_DIR "code/WorkInProgress/Apples" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/BirdMan" -#define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Jumper" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Rust" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Supermatter" #define FILE_DIR "code/WorkInProgress/Cael_Aislinn/Tajara" @@ -205,7 +204,6 @@ #define FILE_DIR "icons/vending_icons" #define FILE_DIR "interface" #define FILE_DIR "maps" -#define FILE_DIR "maps/backup" #define FILE_DIR "maps/RandomZLevels" #define FILE_DIR "sound" #define FILE_DIR "sound/AI" @@ -1212,5 +1210,5 @@ #include "code\WorkInProgress\Wrongnumber\weldbackpack.dm" #include "interface\interface.dm" #include "interface\skin.dmf" -#include "maps\Antiqua.dmm" +#include "maps\tgstation.2.0.8.dmm" // END_INCLUDE diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm index e195bd30bb3..44360cace8b 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm @@ -1,30 +1,35 @@ /mob/living/carbon/human/proc/Tajaraize() if (monkeyizing) return - for(var/obj/item/W in src) - drop_from_slot(W) - update_clothing() monkeyizing = 1 canmove = 0 icon = null invisibility = 101 + overlays = list() var/atom/movable/overlay/animation = new /atom/movable/overlay( loc ) animation.icon_state = "blank" animation.icon = 'mob.dmi' animation.master = src flick("h2monkey", animation) - sleep(48) + sleep(18) //animation = null var/mob/living/carbon/human/tajaran/O = new /mob/living/carbon/human/tajaran( loc ) del(animation) del(O.organs) O.organs = organs - for(var/name in O.organs) + for(var/name in O.organs) //Ensuring organ trasnfer var/datum/organ/external/organ = O.organs[name] organ.owner = O for(var/obj/item/weapon/implant/implant in organ.implant) implant.imp_in = O + for(var/obj/hud/H in contents) //Lets not get a duplicate hud + del(H) + for(var/named in vars) //Making them keep their crap. + if(istype(vars[named], /obj/item)) + O.vars[named] = vars[named] + else if (named == "contents") + O.vars[named] = vars[named] O.real_name = real_name O.name = name @@ -44,7 +49,8 @@ mind.transfer_to(O) O.update_body() O.update_face() - O.update_clothing() + spawn(1) + O.update_clothing() O << "You are now a Tajara." spawn(0)//To prevent the proc from returning null. del(src) diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm index de50debbcf0..18e3322a3e8 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm @@ -28,7 +28,7 @@ ..() /mob/living/carbon/human/tajaran/update_clothing() - ..() +// ..() if (monkeyizing) return diff --git a/code/game/machinery/computer/lockdown.dm b/code/game/machinery/computer/lockdown.dm index bbc0f4268a8..d5506914986 100644 --- a/code/game/machinery/computer/lockdown.dm +++ b/code/game/machinery/computer/lockdown.dm @@ -146,7 +146,7 @@ t += "" for(var/curNetId in connected_doors) var/list/L = connected_doors[curNetId] - if(L.len == 0) + if(!L || L.len == 0) continue t += "" t += "" diff --git a/code/game/objects/radio/radio.dm b/code/game/objects/radio/radio.dm index e68dc18c11a..5a6a212d4f7 100644 --- a/code/game/objects/radio/radio.dm +++ b/code/game/objects/radio/radio.dm @@ -729,10 +729,12 @@ var/GLOBAL_RADIO_TYPE = 1 // radio type to use ..() /obj/item/device/radio/proc/config(op) - for (var/ch_name in channels) - radio_controller.remove_object(src, radiochannels[ch_name]) + if(radio_controller) + for (var/ch_name in channels) + radio_controller.remove_object(src, radiochannels[ch_name]) secure_radio_connections = new channels = op - for (var/ch_name in op) - secure_radio_connections[ch_name] = radio_controller.add_object(src, radiochannels[ch_name], RADIO_CHAT) + if(radio_controller) + for (var/ch_name in op) + secure_radio_connections[ch_name] = radio_controller.add_object(src, radiochannels[ch_name], RADIO_CHAT) return
" + curNetId + "