mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-26 22:50:26 +01:00
Nuclear bombs in rifts spawn a singulo on the station and count as a syndie victory (#42011)
* A nuclear bomb in a rift in spacetime will now count as a syndie major victory, and spawn a singulo back at the station * Removes config debug stuff
This commit is contained in:
@@ -31,6 +31,9 @@
|
||||
M.visible_message("<span class='danger'>The bluespace collapse crushes the air towards it, pulling [M] towards the ground...</span>")
|
||||
M.Paralyze(5, TRUE, TRUE) //Overrides stun absorbs.
|
||||
T.TerraformTurf(/turf/open/chasm/magic, /turf/open/chasm/magic)
|
||||
for(var/fabricarea in get_areas(/area/fabric_of_reality))
|
||||
var/area/fabric_of_reality/R = fabricarea
|
||||
R.origin = loccheck
|
||||
for (var/obj/structure/ladder/unbreakable/binary/ladder in GLOB.ladders)
|
||||
ladder.ActivateAlmonds()
|
||||
qdel(A)
|
||||
|
||||
@@ -137,6 +137,7 @@
|
||||
has_gravity = TRUE
|
||||
noteleport = TRUE
|
||||
blob_allowed = FALSE
|
||||
var/turf/origin
|
||||
|
||||
//CAPTURE THE FLAG
|
||||
|
||||
|
||||
@@ -424,7 +424,10 @@
|
||||
var/off_station = 0
|
||||
var/turf/bomb_location = get_turf(src)
|
||||
var/area/A = get_area(bomb_location)
|
||||
if(bomb_location && is_station_level(bomb_location.z))
|
||||
if(istype(A, /area/fabric_of_reality))
|
||||
var/area/fabric_of_reality/fabric = A
|
||||
new /obj/singularity(fabric.origin, 2000) // Stage five singulo back on the station, as a gift
|
||||
else if(bomb_location && is_station_level(bomb_location.z))
|
||||
if(istype(A, /area/space))
|
||||
off_station = NUKE_NEAR_MISS
|
||||
if((bomb_location.x < (128-NUKERANGE)) || (bomb_location.x > (128+NUKERANGE)) || (bomb_location.y < (128-NUKERANGE)) || (bomb_location.y > (128+NUKERANGE)))
|
||||
@@ -445,7 +448,13 @@
|
||||
|
||||
/obj/machinery/nuclearbomb/proc/really_actually_explode(off_station)
|
||||
Cinematic(get_cinematic_type(off_station),world,CALLBACK(SSticker,/datum/controller/subsystem/ticker/proc/station_explosion_detonation,src))
|
||||
INVOKE_ASYNC(GLOBAL_PROC,.proc/KillEveryoneOnZLevel, z)
|
||||
var/area/A = get_area(src)
|
||||
if(istype(A, /area/fabric_of_reality))
|
||||
var/area/fabric_of_reality/fabric = A
|
||||
var/turf/T = fabric.origin
|
||||
INVOKE_ASYNC(GLOBAL_PROC,.proc/KillEveryoneOnZLevel, T.z)
|
||||
else
|
||||
INVOKE_ASYNC(GLOBAL_PROC,.proc/KillEveryoneOnZLevel, z)
|
||||
|
||||
/obj/machinery/nuclearbomb/proc/get_cinematic_type(off_station)
|
||||
if(off_station < 2)
|
||||
|
||||
Reference in New Issue
Block a user