From c978c95d2949317378a3550b0e6ebcf6b865816a Mon Sep 17 00:00:00 2001 From: Tastyfish Date: Tue, 28 Feb 2012 00:27:37 -0500 Subject: [PATCH] adding admin verb to transform person into tajara, fixed tajara body updates --- baystation12.dme | 1 + .../Tajara/tajara_transformation.dm | 54 +++++++++++++++++++ .../Cael_Aislinn/Tajara/tajaran.dm | 2 + code/modules/admin/admin_verbs.dm | 2 + 4 files changed, 59 insertions(+) create mode 100644 code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm diff --git a/baystation12.dme b/baystation12.dme index f15f4d309ce..5dc235aaed7 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1031,6 +1031,7 @@ #include "code\WorkInProgress\buildmode.dm" #include "code\WorkInProgress\explosion_particles.dm" #include "code\WorkInProgress\Cael_Aislinn\Tajara\examine.dm" +#include "code\WorkInProgress\Cael_Aislinn\Tajara\tajara_transformation.dm" #include "code\WorkInProgress\Cael_Aislinn\Tajara\tajaran.dm" #include "code\WorkInProgress\mapload\dmm_suite.dm" #include "code\WorkInProgress\mapload\reader.dm" diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm new file mode 100644 index 00000000000..b3dc11b9132 --- /dev/null +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajara_transformation.dm @@ -0,0 +1,54 @@ +/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 + for(var/name in organs) + del(organs[name]) + + 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) + //animation = null + var/mob/living/carbon/human/tajaran/O = new /mob/living/carbon/human/tajaran( loc ) + del(animation) + + O.real_name = real_name + O.name = name + O.dna = dna + updateappearance(O,O.dna.uni_identity) + O.loc = loc + O.viruses = viruses + viruses = list() + for(var/datum/disease/D in O.viruses) + D.affected_mob = O + + if (client) + client.mob = O + if(mind) + mind.transfer_to(O) + + O << "You are now a Tajara." + spawn(0)//To prevent the proc from returning null. + del(src) + return + +/client/proc/make_tajaran(mob/living/carbon/human/H as mob) + set category = "Fun" + set name = "Make Tajaran" + set desc = "Make (mob) into a tajaran." + + if (!holder) + src << "Only administrators may use this command." + return + + if(istype(H)) + H:Tajaraize() \ No newline at end of file diff --git a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm index 0281c6a923c..eb431256914 100644 --- a/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm +++ b/code/WorkInProgress/Cael_Aislinn/Tajara/tajaran.dm @@ -475,6 +475,8 @@ last_b_state = stat /mob/living/carbon/human/tajaran/update_body() + return + if(stand_icon) del(stand_icon) if(lying_icon) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 15c2f7fb32b..d280cc98c43 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -181,6 +181,7 @@ verbs += /client/proc/delbook verbs += /client/proc/Force_Event_admin verbs += /client/proc/radioalert + verbs += /client/proc/make_tajaran if (holder.level >= 4)//Badmin******************************************************************** verbs += /obj/admins/proc/adrev //toggle admin revives @@ -424,6 +425,7 @@ verbs -= /client/proc/cmd_debug_prints verbs -= /client/proc/cmd_debug_blood verbs -= /client/proc/rnd_check_designs + verbs -= /client/proc/make_tajaran return