diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index 30b12c88e81..e65ced5c08c 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -36,7 +36,7 @@ var/feature_object_spell_system = 0 //spawns a spellbook which gives object-type spells instead of verb-type spells for the wizard var/traitor_scaling = 0 //if amount of traitors scales based on amount of players var/protect_roles_from_antagonist = 0// If security and such can be tratior/cult/other - var/continous_rounds = 0 // Gamemodes which end instantly will instead keep on going until the round ends by escape shuttle or nuke. + var/continuous_rounds = 0 // Gamemodes which end instantly will instead keep on going until the round ends by escape shuttle or nuke. var/allow_Metadata = 0 // Metadata is supported. var/popup_admin_pm = 0 //adminPMs to non-admins show in a pop-up 'reply' window when set to 1. var/Ticklag = 0.9 @@ -449,7 +449,7 @@ config.gateway_delay = text2num(value) if("continuous_rounds") - config.continous_rounds = 1 + config.continuous_rounds = 1 if("ghost_interaction") config.ghost_interaction = 1 diff --git a/code/datums/spells/lichdom.dm b/code/datums/spells/lichdom.dm index 31c09813863..a115406548c 100644 --- a/code/datums/spells/lichdom.dm +++ b/code/datums/spells/lichdom.dm @@ -20,9 +20,9 @@ action_icon_state = "skeleton" /obj/effect/proc_holder/spell/targeted/lichdom/New() - if(!config.continous_rounds) + if(!config.continuous_rounds) existence_stops_round_end = 1 - config.continous_rounds = 1 + config.continuous_rounds = 1 ..() /obj/effect/proc_holder/spell/targeted/lichdom/Destroy() @@ -31,7 +31,7 @@ if(istype(S,/obj/effect/proc_holder/spell/targeted/lichdom) && S != src) return ..() if(existence_stops_round_end) - config.continous_rounds = 0 + config.continuous_rounds = 0 return ..() /obj/effect/proc_holder/spell/targeted/lichdom/cast(list/targets,mob/user = usr) diff --git a/code/game/gamemodes/gameticker.dm b/code/game/gamemodes/gameticker.dm index bbdbea1c724..69403bc5d8e 100644 --- a/code/game/gamemodes/gameticker.dm +++ b/code/game/gamemodes/gameticker.dm @@ -7,7 +7,6 @@ var/round_start_time = 0 var/hide_mode = 0 // leave here at 0 ! setup() will take care of it when needed for Secret mode -walter0o var/datum/game_mode/mode = null - var/post_game = 0 var/event_time = null var/event = 0 @@ -386,16 +385,13 @@ var/round_start_time = 0 //emergency_shuttle.process() DONE THROUGH PROCESS SCHEDULER - var/game_finished = 0 - var/mode_finished = 0 - if (config.continous_rounds) - game_finished = (mode.station_was_nuked) - mode_finished = (!post_game && mode.check_finished()) + var/game_finished = shuttle_master.emergency.mode >= SHUTTLE_ENDGAME || mode.station_was_nuked + if (config.continuous_rounds) + mode.check_finished() // some modes contain var-changing code in here, so call even if we don't uses result else - game_finished = (mode.check_finished()) - mode_finished = game_finished + game_finished |= mode.check_finished() - if(!mode.explosion_in_progress && game_finished && (mode_finished || post_game)) + if(!mode.explosion_in_progress && game_finished) current_state = GAME_STATE_FINISHED auto_toggle_ooc(1) // Turn it on spawn @@ -409,18 +405,6 @@ var/round_start_time = 0 else world.Reboot("Round ended.", "end_proper", "proper completion") - else if (mode_finished) - post_game = 1 - - mode.cleanup() - - //call a transfer shuttle vote - spawn(50) - if(!round_end_announced) // Spam Prevention. Now it should announce only once. - world << "\red The round has ended!" - round_end_announced = 1 - vote.autotransfer() - return 1 proc/getfactionbyname(var/name) diff --git a/code/game/gamemodes/malfunction/malfunction.dm b/code/game/gamemodes/malfunction/malfunction.dm index 4d436e29ca9..cc38ef0ef9f 100644 --- a/code/game/gamemodes/malfunction/malfunction.dm +++ b/code/game/gamemodes/malfunction/malfunction.dm @@ -148,7 +148,7 @@ if (station_captured && !to_nuke_or_not_to_nuke) return 1 if (is_malf_ai_dead()) - if(config.continous_rounds) + if(config.continuous_rounds) if(shuttle_master && shuttle_master.emergencyNoEscape) shuttle_master.emergencyNoEscape = 0 malf_mode_declared = 0 diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index 345114a4088..74e81484c97 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -203,15 +203,11 @@ //Checks if the round is over// /////////////////////////////// /datum/game_mode/revolution/check_finished() - if(config.continous_rounds) + if(config.continuous_rounds) if(finished != 0) if(shuttle_master && shuttle_master.emergencyNoEscape) shuttle_master.emergencyNoEscape = 0 - return ..() - if(finished != 0) - return 1 - else - return 0 + return finished != 0 /////////////////////////////////////////////////// //Deals with converting players to the revolution// diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 2f34c567dd3..37a6c801573 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -203,10 +203,6 @@ /datum/game_mode/wizard/check_finished() - - if(config.continous_rounds) - return ..() - var/wizards_alive = 0 var/traitors_alive = 0 for(var/datum/mind/wizard in wizards) diff --git a/code/game/gamemodes/xenos/xenos.dm b/code/game/gamemodes/xenos/xenos.dm index f30debb7e98..4ae05c7dd21 100644 --- a/code/game/gamemodes/xenos/xenos.dm +++ b/code/game/gamemodes/xenos/xenos.dm @@ -135,15 +135,7 @@ return ..() /datum/game_mode/xenos/check_finished() - if(config.continous_rounds) - if(result) - return ..() - if(shuttle_master && shuttle_master.emergency.mode >= SHUTTLE_ESCAPE) - return ..() - if(result || station_was_nuked) - return 1 - else - return 0 + return result != 0 /datum/game_mode/xenos/proc/xenos_alive() var/list/livingxenos = list()