Terror spiders subtypes (#31628)

This commit is contained in:
PollardTheDragon
2026-02-19 19:03:13 +00:00
committed by GitHub
parent 7c18d553c2
commit eaf52e3d1f
2 changed files with 28 additions and 6 deletions
+5 -1
View File
@@ -228,7 +228,11 @@ GLOBAL_LIST_EMPTY(event_last_fired)
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/nothing, 5730),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/blob, 100, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/alien_infestation, 100, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror, 100, TRUE)
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror, 100, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror/prince, 0, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror/white, 0, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror/princess, 0, TRUE),
new /datum/event_meta(EVENT_LEVEL_DISASTER, /datum/event/spider_terror/queen, 0, TRUE),
)
var/activation_counter = 0
var/event_rolls = 0
+23 -5
View File
@@ -9,6 +9,8 @@
role_requirements = list(ASSIGNMENT_SECURITY = 3, ASSIGNMENT_CREW = 45, ASSIGNMENT_MEDICAL = 4)
var/spawncount = 1
var/successSpawn = FALSE //So we don't make a command report if nothing gets spawned.
/// Specific type of terror spawn
var/infestation_type
/datum/event/spider_terror/setup()
announceWhen = rand(announceWhen, announceWhen + 30)
@@ -36,11 +38,11 @@
/datum/event/spider_terror/proc/wrappedstart()
var/spider_type
var/infestation_type
if((length(GLOB.clients)) < TS_HIGHPOP_TRIGGER)
infestation_type = pick(TS_INFESTATION_PRINCE_SPIDER, TS_INFESTATION_WHITE_SPIDER, TS_INFESTATION_PRINCESS_SPIDER)
else
infestation_type = pick(TS_INFESTATION_PRINCE_SPIDER, TS_INFESTATION_WHITE_SPIDER, TS_INFESTATION_PRINCESS_SPIDER, TS_INFESTATION_QUEEN_SPIDER)
if(!infestation_type)
if((length(GLOB.clients)) < TS_HIGHPOP_TRIGGER)
infestation_type = pick(TS_INFESTATION_PRINCE_SPIDER, TS_INFESTATION_WHITE_SPIDER, TS_INFESTATION_PRINCESS_SPIDER)
else
infestation_type = pick(TS_INFESTATION_PRINCE_SPIDER, TS_INFESTATION_WHITE_SPIDER, TS_INFESTATION_PRINCESS_SPIDER, TS_INFESTATION_QUEEN_SPIDER)
switch(infestation_type)
if(TS_INFESTATION_PRINCE_SPIDER)
// Fairly weak. Dangerous in single combat but has little staying power. Always gets whittled down.
@@ -82,4 +84,20 @@
SSticker.record_biohazard_start(infestation_type)
SSevents.biohazards_this_round += infestation_type
/datum/event/spider_terror/prince
name = "terror prince"
infestation_type = TS_INFESTATION_PRINCE_SPIDER
/datum/event/spider_terror/white
name = "white terror spiders"
infestation_type = TS_INFESTATION_WHITE_SPIDER
/datum/event/spider_terror/princess
name = "princess terror spiders"
infestation_type = TS_INFESTATION_PRINCESS_SPIDER
/datum/event/spider_terror/queen
name = "queen of terror spiders"
infestation_type = TS_INFESTATION_QUEEN_SPIDER
#undef TS_HIGHPOP_TRIGGER