From 6e140f003c97719e2dfd42df4eb174074ec68711 Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Mon, 30 Mar 2020 14:24:51 -0700 Subject: [PATCH] cloners now give TRAIT_MUTATION_STASIS and prevent active genes from ticking while inside (#11691) * Update cloning.dm * Update traits.dm * Update life.dm * Update code/__DEFINES/traits.dm Co-Authored-By: Ghom <42542238+Ghommie@users.noreply.github.com> Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> --- code/__DEFINES/traits.dm | 1 + code/game/machinery/cloning.dm | 2 ++ code/modules/mob/living/carbon/human/life.dm | 2 ++ 3 files changed, 5 insertions(+) diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index 7bcdded17b..a8c0353591 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -212,6 +212,7 @@ #define TRAIT_NO_TELEPORT "no-teleport" //you just can't #define TRAIT_NO_INTERNALS "no-internals" #define TRAIT_NO_ALCOHOL "alcohol_intolerance" +#define TRAIT_MUTATION_STASIS "mutation_stasis" //Prevents processed genetics mutations from processing. // common trait sources #define TRAIT_GENERIC "generic" diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 7654070cf1..648c227c0a 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -180,6 +180,7 @@ //Get the clone body ready maim_clone(H) + ADD_TRAIT(H, TRAIT_MUTATION_STASIS, CLONING_POD_TRAIT) ADD_TRAIT(H, TRAIT_STABLEHEART, CLONING_POD_TRAIT) ADD_TRAIT(H, TRAIT_STABLELIVER, CLONING_POD_TRAIT) ADD_TRAIT(H, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) @@ -369,6 +370,7 @@ return REMOVE_TRAIT(mob_occupant, TRAIT_STABLEHEART, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_MUTATION_STASIS, CLONING_POD_TRAIT) REMOVE_TRAIT(mob_occupant, TRAIT_STABLELIVER, CLONING_POD_TRAIT) REMOVE_TRAIT(mob_occupant, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) REMOVE_TRAIT(mob_occupant, TRAIT_MUTE, CLONING_POD_TRAIT) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 9316a36e6b..eb22934a2b 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -323,6 +323,8 @@ SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "embedded") /mob/living/carbon/human/proc/handle_active_genes() + if(HAS_TRAIT(src, TRAIT_MUTATION_STASIS)) + return for(var/datum/mutation/human/HM in dna.mutations) HM.on_life(src)