mirror of
https://github.com/goonstation/goonstation-2016.git
synced 2026-07-13 01:52:21 +01:00
30 lines
669 B
Plaintext
30 lines
669 B
Plaintext
var/datum/explosion_controller/explosions
|
|
|
|
/datum/explosion_controller
|
|
var/list/queued = list()
|
|
|
|
proc/queue(atom/source, turf/epicenter, power, brisance = 1)
|
|
queued += new/datum/explosion(source, epicenter, power, brisance)
|
|
|
|
proc/process()
|
|
if (queued.len)
|
|
var/datum/explosion/E = queued[1]
|
|
queued -= E
|
|
E.fire()
|
|
|
|
/datum/explosion
|
|
var/atom/source
|
|
var/turf/epicenter
|
|
var/power
|
|
var/brisance
|
|
|
|
New(atom/source, turf/epicenter, power, brisance)
|
|
src.source = source
|
|
src.epicenter = epicenter
|
|
src.power = power
|
|
src.brisance = brisance
|
|
|
|
proc/fire()
|
|
handle_queued_explosion_dont_call_this_one_directly_fucknuts(source, epicenter, power, brisance)
|
|
|