From b0a93cf790501e8800372db3a330ab8f06d9d031 Mon Sep 17 00:00:00 2001 From: BurgerLua Date: Tue, 23 Apr 2019 11:51:00 -0700 Subject: [PATCH] retweaked the event instead of removing it --- code/modules/events/wizard/race.dm | 35 +++++++++++++++++++++++++++--- tgstation.dme | 1 + 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/code/modules/events/wizard/race.dm b/code/modules/events/wizard/race.dm index 32b45e46f8..7ea875f152 100644 --- a/code/modules/events/wizard/race.dm +++ b/code/modules/events/wizard/race.dm @@ -5,6 +5,18 @@ max_occurrences = 5 earliest_start = 0 MINUTES +/datum/round_event/wizard/race + var/list/stored_name + var/list/stored_species + var/list/stored_dna + +/datum/round_event/wizard/race/setup() + stored_name = list() + stored_species = list() + stored_dna = list() + endWhen = rand(600,1200) //10 to 20 minutes + ..() + /datum/round_event/wizard/race/start() var/all_the_same = 0 @@ -12,18 +24,35 @@ for(var/speciestype in subtypesof(/datum/species)) var/datum/species/S = new speciestype() - if(!S.dangerous_existence && !S.blacklisted) + if(!S.dangerous_existence && !S.blacklisted && !S.nojumpsuit) //Dangerous Species, Blacklisted Species, and Species who can't wear jumpsuits are blacklisted. all_species += speciestype var/datum/species/new_species = pick(all_species) - if(prob(50)) + if(prob(75)) all_the_same = 1 - for(var/mob/living/carbon/human/H in GLOB.carbon_list) //yes, even the dead + for(var/mob/living/carbon/human/H in GLOB.carbon_list) + var/turf/T = get_turf(H) + if(!T) + continue + if(!is_station_level(T.z)) + continue + stored_name[H] = H.real_name + stored_species[H] = H.dna.species + stored_dna[H] = H.dna.unique_enzymes H.set_species(new_species) H.real_name = H.dna.species.random_name(H.gender,1) H.dna.unique_enzymes = H.dna.generate_unique_enzymes() to_chat(H, "You feel somehow... different?") if(!all_the_same) new_species = pick(all_species) + +/datum/round_event/wizard/race/end() + for(var/mob/living/carbon/human/H in GLOB.carbon_list) + if(!(stored_name[H] && stored_species[H] && stored_dna[H])) + continue + H.set_species(stored_species[H]) + H.real_name = stored_name[H] + H.dna.unique_enzymes = stored_dna[H] + to_chat(H, "You feel back to your normal self again.") \ No newline at end of file diff --git a/tgstation.dme b/tgstation.dme index de0ef8686f..5b4c4eabe5 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -1596,6 +1596,7 @@ #include "code\modules\events\wizard\lava.dm" #include "code\modules\events\wizard\magicarp.dm" #include "code\modules\events\wizard\petsplosion.dm" +#include "code\modules\events\wizard\race.dm" #include "code\modules\events\wizard\rpgloot.dm" #include "code\modules\events\wizard\shuffle.dm" #include "code\modules\events\wizard\summons.dm"