Files
Paradise/code/modules/events/tear.dm
AffectedArc07 210f8badf4 Makes all global variables handled by the GLOB controller (#13152)
* Handlers converted, now to fix 3532 compile errors

* 3532 compile fixes later, got runtimes on startup

* Well the server loads now atleast

* Take 2

* Oops
2020-03-20 21:56:37 -06:00

51 lines
1.2 KiB
Plaintext

/datum/event/tear
startWhen = 3
announceWhen = 20
endWhen = 50
var/obj/effect/tear/TE
/datum/event/tear/announce()
GLOB.event_announcement.Announce("A tear in the fabric of space and time has opened. Expected location: [impact_area.name].", "Anomaly Alert")
/datum/event/tear/start()
var/turf/T = pick(get_area_turfs(impact_area))
if(T)
TE = new /obj/effect/tear(T.loc)
/datum/event/tear/setup()
impact_area = findEventArea()
/datum/event/tear/end()
if(TE)
qdel(TE)
/obj/effect/tear
name="Dimensional Tear"
desc="A tear in the dimensional fabric of space and time."
icon='icons/effects/tear.dmi'
icon_state="tear"
density = 0
anchored = 1
light_range = 3
/obj/effect/tear/Initialize(mapload)
. = ..()
var/atom/movable/overlay/animation = new(loc)
animation.icon_state = "newtear"
animation.icon = 'icons/effects/tear.dmi'
animation.master = src
spawn(15)
if(animation)
qdel(animation)
addtimer(CALLBACK(src, .proc/spew_critters), rand(30, 120))
/obj/effect/tear/proc/spew_critters()
for(var/i in 1 to 5)
var/mob/living/simple_animal/S
S = create_random_mob(get_turf(src), HOSTILE_SPAWN)
S.faction |= "chemicalsummon"
if(prob(50))
for(var/j = 1, j <= rand(1, 3), j++)
step(S, pick(NORTH, SOUTH, EAST, WEST))