mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-10 01:49:19 +00:00
37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
/datum/round_event_control/electrical_storm
|
|
name = "Electrical Storm"
|
|
typepath = /datum/round_event/electrical_storm
|
|
earliest_start = 6000
|
|
min_players = 5
|
|
weight = 40
|
|
alertadmins = 0
|
|
|
|
/datum/round_event/electrical_storm
|
|
var/lightsoutAmount = 1
|
|
var/lightsoutRange = 25
|
|
announceWhen = 1
|
|
|
|
/datum/round_event/electrical_storm/announce(fake)
|
|
priority_announce("An electrical storm has been detected in your area, please repair potential electronic overloads.", "Electrical Storm Alert")
|
|
|
|
|
|
/datum/round_event/electrical_storm/start()
|
|
var/list/epicentreList = list()
|
|
|
|
for(var/i=1, i <= lightsoutAmount, i++)
|
|
var/list/possibleEpicentres = list()
|
|
for(var/obj/effect/landmark/lightsout/newEpicentre in GLOB.landmarks_list)
|
|
if(!(newEpicentre in epicentreList))
|
|
possibleEpicentres += newEpicentre
|
|
if(possibleEpicentres.len)
|
|
epicentreList += pick(possibleEpicentres)
|
|
else
|
|
break
|
|
|
|
if(!epicentreList.len)
|
|
return
|
|
|
|
for(var/obj/effect/landmark/epicentre in epicentreList)
|
|
for(var/obj/machinery/power/apc/apc in urange(lightsoutRange, epicentre))
|
|
apc.overload_lighting()
|