Files
CHOMPStation2/code/modules/events/rogue_drones.dm
RadiantFlash7 8704ce4f39 Typo fixes
Typofixes in event anouncements.
2020-01-25 01:29:13 -05:00

59 lines
2.2 KiB
Plaintext

/datum/event/rogue_drone
endWhen = 1000
var/list/drones_list = list()
/datum/event/rogue_drone/start()
//spawn them at the same place as carp
var/list/possible_spawns = list()
for(var/obj/effect/landmark/C in landmarks_list)
if(C.name == "carpspawn")
possible_spawns.Add(C)
//25% chance for this to be a false alarm
var/num
if(prob(25))
num = 0
else
num = rand(2,6)
for(var/i=0, i<num, i++)
var/mob/living/simple_mob/mechanical/combat_drone/event/D = new(get_turf(pick(possible_spawns)))
drones_list.Add(D)
/datum/event/rogue_drone/announce()
var/msg
var/rng = rand(1,5)
//VOREStation Edit Start TFF 16/12/19 - Sif -> Virgo 3b
//YW EDIT 1/13/2020 - Virgo3b -> Cryogaia
switch(rng)
if(1)
msg = "A prototype combat drone wing operating in close orbit above Borealis 1 has failed to return from a anti-piracy sweep. If any have survived re-entry. \
approach with caution."
if(2)
msg = "Contact has been lost with a combat drone wing in Borealis 1 orbit. If any survived re-entry, approach with \
caution."
if(3)
msg = "Unidentified hackers have targeted a combat drone wing deployed around Borealis 1. If any are sighted in the area, approach with caution."
if(4)
msg = "A passing derelict ship's drone defense systems have just activated. If any have survived re-entry into the atmosphere, use caution."
if(5)
msg = "We're detecting a swarm of small objects approaching your outpost. Most likely a bunch of drones. Please exercise caution if you see any."
//VOREStation Edit End - YW EDIT END
command_announcement.Announce(msg, "Rogue drone alert")
/datum/event/rogue_drone/end()
var/num_recovered = 0
for(var/mob/living/simple_mob/mechanical/combat_drone/D in drones_list)
var/datum/effect/effect/system/spark_spread/sparks = new /datum/effect/effect/system/spark_spread()
sparks.set_up(3, 0, D.loc)
sparks.start()
D.z = using_map.admin_levels[1]
D.loot_list = list()
qdel(D)
num_recovered++
if(num_recovered > drones_list.len * 0.75)
command_announcement.Announce("The drones that were malfunctioning have been recovered safely.", "Rogue drone alert")
else
command_announcement.Announce("We're disappointed at the loss of the drones, but the survivors have been recovered.", "Rogue drone alert")