From a8a495c0acade759e6e90ac1a6136ce254c3e9d0 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 16 Jul 2020 18:22:58 +0100 Subject: [PATCH 1/3] rewrites pickle handling --- code/modules/mob/living/simple_animal/pickle.dm | 9 ++++----- code/modules/mob/transform_procs.dm | 8 +++++++- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/simple_animal/pickle.dm b/code/modules/mob/living/simple_animal/pickle.dm index 09365fa7e2..a9052cd789 100644 --- a/code/modules/mob/living/simple_animal/pickle.dm +++ b/code/modules/mob/living/simple_animal/pickle.dm @@ -7,10 +7,10 @@ maxHealth = 100 icon = 'icons/mob/32x64.dmi' icon_state = "pickle" - del_on_death = TRUE deathmessage = "The pickle implodes into its own existential dread and disappears!" friendly_verb_continuous = "tickles" friendly_verb_simple = "tickle" + del_on_death = TRUE var/mob/living/original_body /mob/living/simple_animal/pickle/UnarmedAttack(atom/A) @@ -19,11 +19,10 @@ var/mob/laugher = A laugher.emote("laugh") -/mob/living/simple_animal/pickle/Destroy(force, kill_body = TRUE) +/mob/living/simple_animal/pickle/death() + ..() if(original_body) - if(kill_body) - original_body.adjustOrganLoss(ORGAN_SLOT_BRAIN, 200) //to be fair, you have to have a very high iq to understand- + original_body.adjustOrganLoss(ORGAN_SLOT_BRAIN, 200) //to be fair, you have to have a very high iq to understand- original_body.forceMove(get_turf(src)) if(mind) mind.transfer_to(original_body) - ..() diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 8f86f8edc4..608574a9d0 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -585,7 +585,13 @@ /mob/living/proc/turn_into_pickle() //if they're already a pickle, turn them back instead if(istype(src, /mob/living/simple_animal/pickle)) - qdel(src, FALSE) //this means the body inside the pickle will be dropped without killing it + //turn them back from being a pickle, but release them alive + var/mob/living/simple_animal/pickle/existing_pickle = src + if(existing_pickle.original_body) + existing_pickle.original_body.forceMove(get_turf(src)) + if(mind) + mind.transfer_to(existing_pickle.original_body) + qdel(src) else //make a new pickle on the tile and move their mind into it if possible var/mob/living/simple_animal/pickle/new_pickle = new /mob/living/simple_animal/pickle(get_turf(src)) From ebd648c03d272b632ceed0fd47b1d6eb42cf8dd1 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 16 Jul 2020 18:32:24 +0100 Subject: [PATCH 2/3] name edgecase too --- code/modules/mob/living/simple_animal/pickle.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/mob/living/simple_animal/pickle.dm b/code/modules/mob/living/simple_animal/pickle.dm index a9052cd789..c5469024e6 100644 --- a/code/modules/mob/living/simple_animal/pickle.dm +++ b/code/modules/mob/living/simple_animal/pickle.dm @@ -26,3 +26,7 @@ original_body.forceMove(get_turf(src)) if(mind) mind.transfer_to(original_body) + +/mob/living/simple_animal/pickle/wabbajack_act() //restore users name before its used on the new mob + if(original_body) + real_name = original_body.real_name From 5a1caf8798e73f60d177fc37ab73f102e85063c5 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Thu, 16 Jul 2020 18:37:32 +0100 Subject: [PATCH 3/3] thank you rag very cool --- icons/mob/32x64.dmi | Bin 4777 -> 5121 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/32x64.dmi b/icons/mob/32x64.dmi index 79a4c8a7fd867e19258cfc2233eb4003f2a98928..cddf9599b4c55f834a54ae9c8e7b92864e2c8185 100644 GIT binary patch delta 4984 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

0T@Y;Dj&m%46N$y<{9OR3Jd^~?eSm>u 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 T;tm)(00000NkvXXu0mjfy>+4!