Skip to content

Commit 234ce0d

Browse files
authored
Fix some antags still rolling after the emergency shuttle is past the point of no return (#6319)
1 parent c0a0a1c commit 234ce0d

File tree

10 files changed

+25
-8
lines changed

10 files changed

+25
-8
lines changed

code/modules/antagonists/pirate/pirate_event.dm

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
track = EVENT_TRACK_MAJOR
1818
tags = list(TAG_COMBAT, TAG_COMMUNAL, TAG_EXTERNAL, TAG_OUTSIDER_ANTAG)
1919
checks_antag_cap = TRUE
20+
dont_spawn_near_roundend = TRUE
2021
//monkestation edit end
2122

2223
/datum/round_event_control/pirates/preRunEvent()

code/modules/events/_event.dm

+4
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@
5858
var/can_run_post_roundstart = TRUE
5959
/// If set then the type or list of types of storytellers we are restricted to being trigged by
6060
var/list/allowed_storytellers
61+
/// If TRUE, then this event will not roll if the emergency shuttle is past the point of no recall.
62+
var/dont_spawn_near_roundend = FALSE
6163
// monkestation end
6264

6365
/datum/round_event_control/New()
@@ -100,6 +102,8 @@
100102
// monkestation start: event groups and storyteller stuff
101103
if(SSgamemode.current_storyteller?.disable_distribution || SSgamemode.halted_storyteller)
102104
return FALSE
105+
if(dont_spawn_near_roundend && EMERGENCY_PAST_POINT_OF_NO_RETURN)
106+
return FALSE
103107
if(event_group && !GLOB.event_groups[event_group].can_run())
104108
return FALSE
105109
if(roundstart && (!SSgamemode.can_run_roundstart || (SSgamemode.ran_roundstart && !fake_check && !SSgamemode.current_storyteller?.ignores_roundstart)))

code/modules/events/ghost_role/blob.dm

-6
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,6 @@
99
category = EVENT_CATEGORY_ENTITIES
1010
description = "Spawns a new blob overmind."
1111

12-
/datum/round_event_control/blob/can_spawn_event(players, allow_magic = FALSE, fake_check = FALSE) //MONKESTATION ADDITION: fake_check = FALSE
13-
if(EMERGENCY_PAST_POINT_OF_NO_RETURN) // no blobs if the shuttle is past the point of no return
14-
return FALSE
15-
16-
return ..()
17-
1812
/datum/round_event/ghost_role/blob
1913
announce_chance = 0
2014
role_name = "blob overmind"

monkestation/code/modules/antagonists/florida_man/florida_events.dm

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
track = EVENT_TRACK_MODERATE
77
tags = list(TAG_DESTRUCTIVE, TAG_COMBAT, TAG_EXTERNAL, TAG_OUTSIDER_ANTAG)
88
checks_antag_cap = TRUE
9+
dont_spawn_near_roundend = TRUE
910

1011
/datum/round_event/ghost_role/florida_man
1112
minimum_required = 1

monkestation/code/modules/blood_for_the_blood_gods/slasher/ghost_role.dm

+1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
track = EVENT_TRACK_MODERATE
77
tags = list(TAG_SPOOKY, TAG_COMBAT, TAG_EXTERNAL, TAG_OUTSIDER_ANTAG)
88
checks_antag_cap = TRUE
9+
dont_spawn_near_roundend = TRUE
910

1011
/datum/round_event/ghost_role/slasher
1112
minimum_required = 1

monkestation/code/modules/events/ghost_role/drifting_contractor.dm

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
track = EVENT_TRACK_MAJOR
1111
tags = list(TAG_OUTSIDER_ANTAG, TAG_SPACE, TAG_COMBAT)
1212
checks_antag_cap = TRUE
13+
dont_spawn_near_roundend = TRUE
1314

1415
/datum/round_event/ghost_role/contractor
1516
minimum_required = 1

monkestation/code/modules/storytellers/converted_events/_base_event.dm

+1-2
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@
6464
/datum/round_event_control/antagonist
6565
checks_antag_cap = TRUE
6666
track = EVENT_TRACK_ROLESET
67+
dont_spawn_near_roundend = TRUE
6768
///list of required roles, needed for this to form
6869
var/list/exclusive_roles
6970
/// Protected roles from the antag roll. People will not get those roles if a config is enabled
@@ -124,8 +125,6 @@
124125
. = ..()
125126
if(!.)
126127
return
127-
if(EMERGENCY_PAST_POINT_OF_NO_RETURN)
128-
return FALSE
129128
if(!check_required())
130129
return FALSE
131130

monkestation/code/modules/storytellers/converted_events/event_overrides.dm

+14
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
track = EVENT_TRACK_MAJOR
33
tags = list(TAG_TARGETED, TAG_SPOOKY, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
44
checks_antag_cap = TRUE
5+
dont_spawn_near_roundend = TRUE
56

67
/datum/round_event_control/anomaly
78
track = EVENT_TRACK_MODERATE
@@ -12,6 +13,7 @@
1213
track = EVENT_TRACK_ROLESET
1314
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
1415
checks_antag_cap = TRUE
16+
dont_spawn_near_roundend = TRUE
1517

1618
/datum/round_event_control/aurora_caelus
1719
track = EVENT_TRACK_MUNDANE
@@ -21,6 +23,7 @@
2123
track = EVENT_TRACK_ROLESET
2224
tags = list(TAG_DESTRUCTIVE, TAG_COMBAT, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
2325
checks_antag_cap = TRUE
26+
dont_spawn_near_roundend = TRUE
2427

2528
/datum/round_event_control/brain_trauma
2629
track = EVENT_TRACK_MUNDANE
@@ -50,6 +53,7 @@
5053
track = EVENT_TRACK_MAJOR
5154
tags = list(TAG_COMBAT, TAG_SPACE, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
5255
checks_antag_cap = TRUE
56+
dont_spawn_near_roundend = TRUE
5357

5458
/datum/round_event_control/communications_blackout
5559
max_occurrences = 2
@@ -81,6 +85,7 @@
8185
/datum/round_event_control/fugitives
8286
track = EVENT_TRACK_MAJOR
8387
tags = list(TAG_COMBAT, TAG_EXTERNAL, TAG_OUTSIDER_ANTAG)
88+
dont_spawn_near_roundend = TRUE
8489

8590
/datum/round_event_control/gravity_generator_blackout
8691
track = EVENT_TRACK_MODERATE
@@ -129,11 +134,13 @@
129134
track = EVENT_TRACK_MAJOR
130135
tags = list(TAG_COMBAT, TAG_SPOOKY, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
131136
checks_antag_cap = TRUE
137+
dont_spawn_near_roundend = TRUE
132138

133139
/datum/round_event_control/nightmare
134140
track = EVENT_TRACK_MAJOR
135141
tags = list(TAG_COMBAT, TAG_SPOOKY, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
136142
checks_antag_cap = TRUE
143+
dont_spawn_near_roundend = TRUE
137144

138145
/datum/round_event_control/obsessed
139146
weight = 0 // use storyteller variants instead
@@ -165,6 +172,7 @@
165172
track = EVENT_TRACK_MAJOR
166173
tags = list(TAG_DESTRUCTIVE, TAG_SPOOKY, TAG_EXTERNAL, TAG_MAGICAL, TAG_OUTSIDER_ANTAG)
167174
checks_antag_cap = TRUE
175+
dont_spawn_near_roundend = TRUE
168176

169177
/datum/round_event_control/sandstorm
170178
track = EVENT_TRACK_MODERATE
@@ -188,11 +196,13 @@
188196
/datum/round_event_control/sentience
189197
track = EVENT_TRACK_MUNDANE
190198
tags = list(TAG_COMMUNAL, TAG_SPOOKY, TAG_MAGICAL)
199+
dont_spawn_near_roundend = TRUE
191200

192201
/datum/round_event_control/sentient_disease
193202
track = EVENT_TRACK_MAJOR
194203
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
195204
checks_antag_cap = TRUE
205+
dont_spawn_near_roundend = TRUE
196206

197207
/datum/round_event_control/shuttle_catastrophe
198208
track = EVENT_TRACK_MODERATE
@@ -206,6 +216,7 @@
206216
track = EVENT_TRACK_MAJOR
207217
tags = list(TAG_COMBAT, TAG_SPOOKY, TAG_EXTERNAL, TAG_MAGICAL, TAG_OUTSIDER_ANTAG)
208218
checks_antag_cap = TRUE
219+
dont_spawn_near_roundend = TRUE
209220

210221
/datum/round_event_control/space_dust
211222
track = EVENT_TRACK_MUNDANE
@@ -215,11 +226,13 @@
215226
track = EVENT_TRACK_ROLESET
216227
tags = list(TAG_COMBAT, TAG_SPACE, TAG_EXTERNAL, TAG_ALIEN, TAG_MAGICAL, TAG_OUTSIDER_ANTAG)
217228
checks_antag_cap = TRUE
229+
dont_spawn_near_roundend = TRUE
218230

219231
/datum/round_event_control/space_ninja
220232
track = EVENT_TRACK_ROLESET
221233
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE, TAG_EXTERNAL, TAG_OUTSIDER_ANTAG)
222234
checks_antag_cap = TRUE
235+
dont_spawn_near_roundend = TRUE
223236

224237
/datum/round_event_control/spacevine
225238
track = EVENT_TRACK_MAJOR
@@ -231,6 +244,7 @@
231244
track = EVENT_TRACK_ROLESET
232245
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE, TAG_EXTERNAL, TAG_ALIEN, TAG_OUTSIDER_ANTAG)
233246
checks_antag_cap = TRUE
247+
dont_spawn_near_roundend = TRUE
234248

235249
/datum/round_event_control/stray_cargo
236250
track = EVENT_TRACK_MUNDANE

monkestation/code/modules/storytellers/converted_events/solo/ghosts/teratoma.dm

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
weight = 5
1111
tags = list(TAG_COMBAT, TAG_DESTRUCTIVE, TAG_OUTSIDER_ANTAG, TAG_EXTERNAL, TAG_ALIEN)
1212
checks_antag_cap = TRUE
13+
dont_spawn_near_roundend = TRUE
1314

1415
/datum/round_event/ghost_role/teratoma
1516
minimum_required = 1

monkestation/code/modules/virology/disease/plague_rat/event.dm

+1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
min_wizard_trigger_potency = 6
1313
max_wizard_trigger_potency = 7
1414
tags = list(TAG_OUTSIDER_ANTAG, TAG_COMMUNAL, TAG_COMBAT, TAG_ALIEN)
15+
dont_spawn_near_roundend = TRUE
1516

1617
/datum/round_event/ghost_role/plague_rat
1718
minimum_required = 1

0 commit comments

Comments
 (0)