From ce0ce0b6b934fc06ac0ce043d50ce3650767a328 Mon Sep 17 00:00:00 2001 From: LetterJay Date: Wed, 15 Nov 2017 10:38:57 -0600 Subject: [PATCH] Update changeling.dm --- code/datums/antagonists/changeling.dm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/code/datums/antagonists/changeling.dm b/code/datums/antagonists/changeling.dm index 7a3dba2cf3..d72cb64b81 100644 --- a/code/datums/antagonists/changeling.dm +++ b/code/datums/antagonists/changeling.dm @@ -80,7 +80,7 @@ . = ..() /datum/antagonist/changeling/on_removal() - remove_changeling_powers() + remove_changeling_powers(FALSE) owner.objectives -= objectives . = ..() @@ -102,11 +102,11 @@ chem_recharge_slowdown = initial(chem_recharge_slowdown) mimicing = "" -/datum/antagonist/changeling/proc/remove_changeling_powers() +/datum/antagonist/changeling/proc/remove_changeling_powers(keep_free_powers=0) if(ishuman(owner.current) || ismonkey(owner.current)) reset_properties() for(var/obj/effect/proc_holder/changeling/p in purchasedpowers) - if(p.always_keep) + if((p.dna_cost == 0 && keep_free_powers) || p.always_keep) continue purchasedpowers -= p p.on_refund(owner.current) @@ -118,13 +118,13 @@ /datum/antagonist/changeling/proc/reset_powers() if(purchasedpowers) - remove_changeling_powers() - //Repurchase free powers. + remove_changeling_powers(TRUE) + //Purchase free powers. for(var/path in all_powers) var/obj/effect/proc_holder/changeling/S = new path() if(!S.dna_cost) if(!has_sting(S)) - purchasedpowers += S + purchasedpowers+=S S.on_purchase(owner.current,TRUE) /datum/antagonist/changeling/proc/has_sting(obj/effect/proc_holder/changeling/power) @@ -480,4 +480,4 @@ /datum/antagonist/changeling/xenobio name = "Xenobio Changeling" give_objectives = FALSE - you_are_greet = FALSE \ No newline at end of file + you_are_greet = FALSE