Makes the station Z level into a list instead of a single define
This commit is contained in:
committed by
CitadelStationBot
parent
8ee6fdb76a
commit
d05fdb0eb0
@@ -40,7 +40,7 @@
|
||||
for(var/obj/machinery/atmospherics/components/unary/vent_pump/temp_vent in GLOB.machines)
|
||||
if(QDELETED(temp_vent))
|
||||
continue
|
||||
if(temp_vent.loc.z == ZLEVEL_STATION && !temp_vent.welded)
|
||||
if((temp_vent.loc.z in GLOB.station_z_levels) && !temp_vent.welded)
|
||||
var/datum/pipeline/temp_vent_parent = temp_vent.PARENT1
|
||||
//Stops Aliens getting stuck in small networks.
|
||||
//See: Security, Virology
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
/datum/round_event/brand_intelligence/start()
|
||||
for(var/obj/machinery/vending/V in GLOB.machines)
|
||||
if(V.z != ZLEVEL_STATION)
|
||||
if(!(V.z in GLOB.station_z_levels))
|
||||
continue
|
||||
vendingMachines.Add(V)
|
||||
if(!vendingMachines.len)
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
var/turf/T = get_turf(H)
|
||||
if(!T)
|
||||
continue
|
||||
if(T.z != ZLEVEL_STATION)
|
||||
if(!(T.z in GLOB.station_z_levels))
|
||||
continue
|
||||
if(!H.client)
|
||||
continue
|
||||
|
||||
@@ -15,5 +15,5 @@
|
||||
/datum/round_event/grid_check/start()
|
||||
for(var/P in GLOB.apcs_list)
|
||||
var/obj/machinery/power/apc/C = P
|
||||
if(C.cell && C.z == ZLEVEL_STATION)
|
||||
if(C.cell && (C.z in GLOB.station_z_levels))
|
||||
C.energy_fail(rand(30,120))
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
/datum/round_event/presents/start()
|
||||
for(var/obj/structure/flora/tree/pine/xmas in world)
|
||||
if(xmas.z != ZLEVEL_STATION)
|
||||
if(!(xmas.z in GLOB.station_z_levels))
|
||||
continue
|
||||
for(var/turf/open/floor/T in orange(1,xmas))
|
||||
for(var/i=1,i<=rand(1,5),i++)
|
||||
|
||||
@@ -21,6 +21,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
|
||||
|
||||
/datum/round_event/immovable_rod/start()
|
||||
var/startside = pick(GLOB.cardinals)
|
||||
<<<<<<< HEAD
|
||||
var/turf/startT = spaceDebrisStartLoc(startside, ZLEVEL_STATION)
|
||||
var/turf/endT = spaceDebrisFinishLoc(startside, ZLEVEL_STATION)
|
||||
new /obj/effect/immovablerod(startT, endT)
|
||||
@@ -31,6 +32,18 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "immrod"
|
||||
throwforce = 100
|
||||
=======
|
||||
var/turf/startT = spaceDebrisStartLoc(startside, ZLEVEL_STATION_PRIMARY)
|
||||
var/turf/endT = spaceDebrisFinishLoc(startside, ZLEVEL_STATION_PRIMARY)
|
||||
new /obj/effect/immovablerod(startT, endT)
|
||||
|
||||
/obj/effect/immovablerod
|
||||
name = "immovable rod"
|
||||
desc = "What the fuck is that?"
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "immrod"
|
||||
throwforce = 100
|
||||
>>>>>>> 10a3238... Makes the station Z level into a list instead of a single define (#30297)
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
var/z_original = 0
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
storm = storm = mutable_appearance('icons/obj/tesla_engine/energy_ball.dmi', "energy_ball_fast", FLY_LAYER)
|
||||
storm.color = "#00FF00"
|
||||
|
||||
station_areas = get_areas_in_z(ZLEVEL_STATION)
|
||||
station_areas = get_areas_in_z(ZLEVEL_STATION_PRIMARY)
|
||||
|
||||
number_of_bosses = 0
|
||||
for(var/boss in boss_types)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
<<<<<<< HEAD
|
||||
/datum/round_event_control/radiation_storm
|
||||
name = "Radiation Storm"
|
||||
typepath = /datum/round_event/radiation_storm
|
||||
@@ -18,3 +19,24 @@
|
||||
/datum/round_event/radiation_storm/start()
|
||||
SSweather.run_weather("radiation storm",ZLEVEL_STATION)
|
||||
make_maint_all_access()
|
||||
=======
|
||||
/datum/round_event_control/radiation_storm
|
||||
name = "Radiation Storm"
|
||||
typepath = /datum/round_event/radiation_storm
|
||||
max_occurrences = 1
|
||||
|
||||
/datum/round_event/radiation_storm
|
||||
|
||||
|
||||
/datum/round_event/radiation_storm/setup()
|
||||
startWhen = 3
|
||||
endWhen = startWhen + 1
|
||||
announceWhen = 1
|
||||
|
||||
/datum/round_event/radiation_storm/announce()
|
||||
priority_announce("High levels of radiation detected near the station. Maintenance is best shielded from radiation.", "Anomaly Alert", 'sound/ai/radiation.ogg')
|
||||
//sound not longer matches the text, but an audible warning is probably good
|
||||
|
||||
/datum/round_event/radiation_storm/start()
|
||||
SSweather.run_weather("radiation storm",ZLEVEL_STATION_PRIMARY)
|
||||
>>>>>>> 10a3238... Makes the station Z level into a list instead of a single define (#30297)
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
var/list/potential = list()
|
||||
for(var/mob/living/simple_animal/L in GLOB.living_mob_list)
|
||||
var/turf/T = get_turf(L)
|
||||
if(T.z != ZLEVEL_STATION)
|
||||
if(!(T.z in GLOB.station_z_levels))
|
||||
continue
|
||||
if(!(L in GLOB.player_list) && !L.mind)
|
||||
potential += L
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
<<<<<<< HEAD
|
||||
/datum/round_event_control/spider_infestation
|
||||
name = "Spider Infestation"
|
||||
typepath = /datum/round_event/spider_infestation
|
||||
@@ -35,3 +36,42 @@
|
||||
spawn_atom_to_turf(spawn_type, vent, 1, FALSE)
|
||||
vents -= vent
|
||||
spawncount--
|
||||
=======
|
||||
/datum/round_event_control/spider_infestation
|
||||
name = "Spider Infestation"
|
||||
typepath = /datum/round_event/spider_infestation
|
||||
weight = 5
|
||||
max_occurrences = 1
|
||||
min_players = 15
|
||||
|
||||
/datum/round_event/spider_infestation
|
||||
announceWhen = 400
|
||||
|
||||
var/spawncount = 1
|
||||
|
||||
|
||||
/datum/round_event/spider_infestation/setup()
|
||||
announceWhen = rand(announceWhen, announceWhen + 50)
|
||||
spawncount = rand(5, 8)
|
||||
|
||||
/datum/round_event/spider_infestation/announce()
|
||||
priority_announce("Unidentified lifesigns detected coming aboard [station_name()]. Secure any exterior access, including ducting and ventilation.", "Lifesign Alert", 'sound/ai/aliens.ogg')
|
||||
|
||||
|
||||
/datum/round_event/spider_infestation/start()
|
||||
var/list/vents = list()
|
||||
for(var/obj/machinery/atmospherics/components/unary/vent_pump/temp_vent in world)
|
||||
if((temp_vent.loc.z in GLOB.station_z_levels) && !temp_vent.welded)
|
||||
var/datum/pipeline/temp_vent_parent = temp_vent.PARENT1
|
||||
if(temp_vent_parent.other_atmosmch.len > 20)
|
||||
vents += temp_vent
|
||||
|
||||
while((spawncount >= 1) && vents.len)
|
||||
var/obj/vent = pick(vents)
|
||||
var/spawn_type = /obj/structure/spider/spiderling
|
||||
if(prob(66))
|
||||
spawn_type = /obj/structure/spider/spiderling/nurse
|
||||
spawn_atom_to_turf(spawn_type, vent, 1, FALSE)
|
||||
vents -= vent
|
||||
spawncount--
|
||||
>>>>>>> 10a3238... Makes the station Z level into a list instead of a single define (#30297)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
<<<<<<< HEAD
|
||||
/datum/round_event_control/vent_clog
|
||||
name = "Clogged Vents"
|
||||
typepath = /datum/round_event/vent_clog
|
||||
@@ -47,3 +48,54 @@
|
||||
while(cockroaches)
|
||||
new /mob/living/simple_animal/cockroach(get_turf(vent))
|
||||
cockroaches--
|
||||
=======
|
||||
/datum/round_event_control/vent_clog
|
||||
name = "Clogged Vents"
|
||||
typepath = /datum/round_event/vent_clog
|
||||
weight = 35
|
||||
|
||||
/datum/round_event/vent_clog
|
||||
announceWhen = 1
|
||||
startWhen = 5
|
||||
endWhen = 35
|
||||
var/interval = 2
|
||||
var/list/vents = list()
|
||||
var/list/gunk = list("water","carbon","flour","radium","toxin","cleaner","nutriment","condensedcapsaicin","mushroomhallucinogen","lube",
|
||||
"plantbgone","banana","charcoal","space_drugs","morphine","holywater","ethanol","hot_coco","sacid")
|
||||
|
||||
/datum/round_event/vent_clog/announce()
|
||||
priority_announce("The scrubbers network is experiencing a backpressure surge. Some ejection of contents may occur.", "Atmospherics alert")
|
||||
|
||||
|
||||
/datum/round_event/vent_clog/setup()
|
||||
endWhen = rand(25, 100)
|
||||
for(var/obj/machinery/atmospherics/components/unary/vent_scrubber/temp_vent in GLOB.machines)
|
||||
if((temp_vent.loc.z in GLOB.station_z_levels) && !temp_vent.welded)
|
||||
var/datum/pipeline/temp_vent_parent = temp_vent.PARENT1
|
||||
if(temp_vent_parent.other_atmosmch.len > 20)
|
||||
vents += temp_vent
|
||||
if(!vents.len)
|
||||
return kill()
|
||||
|
||||
/datum/round_event/vent_clog/tick()
|
||||
if(activeFor % interval == 0)
|
||||
var/obj/machinery/atmospherics/components/unary/vent = pick_n_take(vents)
|
||||
while(vent && vent.welded)
|
||||
vent = pick_n_take(vents)
|
||||
|
||||
if(vent && vent.loc)
|
||||
var/datum/reagents/R = new/datum/reagents(50)
|
||||
R.my_atom = vent
|
||||
R.add_reagent(pick(gunk), 50)
|
||||
|
||||
var/datum/effect_system/smoke_spread/chem/smoke = new
|
||||
smoke.set_up(R, 1, vent, silent = 1)
|
||||
playsound(vent.loc, 'sound/effects/smoke.ogg', 50, 1, -3)
|
||||
smoke.start()
|
||||
qdel(R)
|
||||
|
||||
var/cockroaches = prob(33) ? 3 : 0
|
||||
while(cockroaches)
|
||||
new /mob/living/simple_animal/cockroach(get_turf(vent))
|
||||
cockroaches--
|
||||
>>>>>>> 10a3238... Makes the station Z level into a list instead of a single define (#30297)
|
||||
|
||||
@@ -13,4 +13,4 @@
|
||||
/datum/round_event/wizard/darkness/start()
|
||||
if(!started)
|
||||
started = TRUE
|
||||
SSweather.run_weather("advanced darkness", ZLEVEL_STATION)
|
||||
SSweather.run_weather("advanced darkness", ZLEVEL_STATION_PRIMARY)
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
ruins_wizard_loadout = 1
|
||||
|
||||
for(var/mob/living/carbon/human/H in GLOB.living_mob_list)
|
||||
if(ruins_spaceworthiness && (H.z != ZLEVEL_STATION || isspaceturf(H.loc) || isplasmaman(H)))
|
||||
if(ruins_spaceworthiness && !(H.z in GLOB.station_z_levels) || isspaceturf(H.loc) || isplasmaman(H))
|
||||
continue //#savetheminers
|
||||
if(ruins_wizard_loadout && H.mind && ((H.mind in SSticker.mode.wizards) || (H.mind in SSticker.mode.apprentices)))
|
||||
continue
|
||||
|
||||
@@ -12,4 +12,4 @@
|
||||
/datum/round_event/wizard/lava/start()
|
||||
if(!started)
|
||||
started = TRUE
|
||||
SSweather.run_weather("the floor is lava", ZLEVEL_STATION)
|
||||
SSweather.run_weather("the floor is lava", ZLEVEL_STATION_PRIMARY)
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
/datum/round_event_control/wizard/petsplosion/preRunEvent()
|
||||
for(var/mob/living/simple_animal/F in GLOB.living_mob_list)
|
||||
if(!ishostile(F) && F.z == ZLEVEL_STATION)
|
||||
if(!ishostile(F) && (F.z in GLOB.station_z_levels))
|
||||
mobs_to_dupe++
|
||||
if(mobs_to_dupe > 100 || !mobs_to_dupe)
|
||||
return EVENT_CANT_RUN
|
||||
@@ -24,7 +24,7 @@
|
||||
if(activeFor >= 30 * countdown) // 0 seconds : 2 animals | 30 seconds : 4 animals | 1 minute : 8 animals
|
||||
countdown += 1
|
||||
for(var/mob/living/simple_animal/F in GLOB.living_mob_list) //If you cull the heard before the next replication, things will be easier for you
|
||||
if(!ishostile(F) && F.z == ZLEVEL_STATION)
|
||||
if(!ishostile(F) && (F.z in GLOB.station_z_levels))
|
||||
new F.type(F.loc)
|
||||
mobs_duped++
|
||||
if(mobs_duped > 400)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
var/list/mobs = list()
|
||||
|
||||
for(var/mob/living/carbon/human/H in GLOB.living_mob_list)
|
||||
if(H.z != ZLEVEL_STATION)
|
||||
if(!(H.z in GLOB.station_z_levels))
|
||||
continue //lets not try to strand people in space or stuck in the wizards den
|
||||
moblocs += H.loc
|
||||
mobs += H
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
/datum/round_event/wormholes/start()
|
||||
for(var/turf/open/floor/T in world)
|
||||
if(T.z == ZLEVEL_STATION)
|
||||
if(T.z in GLOB.station_z_levels)
|
||||
pick_turfs += T
|
||||
|
||||
for(var/i = 1, i <= number_of_wormholes, i++)
|
||||
|
||||
Reference in New Issue
Block a user