From 1f97e026366fc39a05943b1221b341738626aab2 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Tue, 25 Aug 2020 23:11:51 +0100 Subject: [PATCH 1/3] Fix runtime when using swap forms --- code/game/gamemodes/changeling/powers/swap_form.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/changeling/powers/swap_form.dm b/code/game/gamemodes/changeling/powers/swap_form.dm index 0e02df12d88..02cca052ea8 100644 --- a/code/game/gamemodes/changeling/powers/swap_form.dm +++ b/code/game/gamemodes/changeling/powers/swap_form.dm @@ -18,7 +18,7 @@ if((NOCLONE || SKELETON || HUSK) in target.mutations) to_chat(user, "DNA of [target] is ruined beyond usability!") return - if(!istype(target) || issmall(target) || (NO_DNA in target.dna.species.species_traits)) + if(!istype(target) || !target.mind || issmall(target) || (NO_DNA in target.dna.species.species_traits)) to_chat(user, "[target] is not compatible with this ability.") return if(target.mind.changeling) From 233fb786e8b494d8ae9bc09cc41346a81f1c5402 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Tue, 25 Aug 2020 23:29:06 +0100 Subject: [PATCH 2/3] Fix swap forms suicide bug --- code/game/gamemodes/changeling/powers/swap_form.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/gamemodes/changeling/powers/swap_form.dm b/code/game/gamemodes/changeling/powers/swap_form.dm index 02cca052ea8..32f83b6af50 100644 --- a/code/game/gamemodes/changeling/powers/swap_form.dm +++ b/code/game/gamemodes/changeling/powers/swap_form.dm @@ -63,6 +63,8 @@ target.add_language("Changeling") user.remove_language("Changeling") user.regenerate_icons() + if(target.stat == DEAD && target.suiciding) //If Target committed suicide, unset flag for User + target.suiciding = 0 for(var/power in lingpowers) var/datum/action/changeling/S = power From acc28f9910c4d520b240096ade5a3ffa4effa156 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Wed, 26 Aug 2020 00:30:17 +0100 Subject: [PATCH 3/3] Stops body swap if either side has a borer --- code/game/gamemodes/changeling/powers/swap_form.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/game/gamemodes/changeling/powers/swap_form.dm b/code/game/gamemodes/changeling/powers/swap_form.dm index 32f83b6af50..97192c86a0f 100644 --- a/code/game/gamemodes/changeling/powers/swap_form.dm +++ b/code/game/gamemodes/changeling/powers/swap_form.dm @@ -24,6 +24,9 @@ if(target.mind.changeling) to_chat(user, "We are unable to swap forms with another changeling!") return + if(target.has_brain_worms() || user.has_brain_worms()) + to_chat(user, "A foreign presence repels us from this body!") + return return 1 /datum/action/changeling/swap_form/sting_action(var/mob/living/carbon/user)