From 35e90ddb7c8dd9fded8a41e7629ebcd862f29672 Mon Sep 17 00:00:00 2001 From: "quartz235@gmail.com" Date: Tue, 28 Feb 2012 21:57:21 +0000 Subject: [PATCH] Fixes issue 159 Picking up items during lesser form transformation as changeling should (for the most part) prevent them from being deleted. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3210 316c924e-a436-60f5-8080-3fe189b3f50e --- .../gamemodes/changeling/changeling_powers.dm | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/code/game/gamemodes/changeling/changeling_powers.dm b/code/game/gamemodes/changeling/changeling_powers.dm index 8f54c8586ad..f6c2178304e 100644 --- a/code/game/gamemodes/changeling/changeling_powers.dm +++ b/code/game/gamemodes/changeling/changeling_powers.dm @@ -216,9 +216,6 @@ if (istype(W, /obj/item/weapon/implant)) implants += W - for(var/obj/item/W in usr) - usr.drop_from_slot(W) - usr.update_clothing() usr.monkeyizing = 1 usr.canmove = 0 @@ -237,6 +234,10 @@ usr.dna = null O.changeling = usr.changeling + for(var/obj/item/W in usr) + usr.drop_from_slot(W) + + for(var/obj/T in usr) del(T) //for(var/R in usr.organs) //redundant, let's give garbage collector work to do --rastaf0 @@ -301,15 +302,6 @@ for (var/obj/item/weapon/implant/I in usr) //Still preserving implants implants += I - for(var/obj/item/W in usr) - usr.u_equip(W) - if (usr.client) - usr.client.screen -= W - if (W) - W.loc = usr.loc - W.dropped(usr) - W.layer = initial(W.layer) - usr.update_clothing() usr.monkeyizing = 1 usr.canmove = 0 @@ -323,6 +315,15 @@ sleep(48) del(animation) + for(var/obj/item/W in usr) + usr.u_equip(W) + if (usr.client) + usr.client.screen -= W + if (W) + W.loc = usr.loc + W.dropped(usr) + W.layer = initial(W.layer) + var/mob/living/carbon/human/O = new /mob/living/carbon/human( src ) if (isblockon(getblock(usr.dna.uni_identity, 11,3),11)) O.gender = FEMALE