mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 18:32:03 +00:00
even better
This commit is contained in:
@@ -923,6 +923,12 @@ var/list/ignored_keys = list("loc", "locs", "parent_type", "vars", "verbs", "typ
|
||||
fromupdate += T.ChangeTurf(turftoleave)
|
||||
else
|
||||
T.ChangeTurf(/turf/space)
|
||||
switch(universe.name)
|
||||
if("Hell Rising")
|
||||
T.overlays += "hell01"
|
||||
if("Supermatter Cascade")
|
||||
T.overlays += "end01"
|
||||
|
||||
|
||||
refined_src -= T
|
||||
refined_trg -= B
|
||||
|
||||
@@ -34,7 +34,7 @@ datum/shuttle_controller
|
||||
// call the shuttle
|
||||
// if not called before, set the endtime to T+600 seconds
|
||||
// otherwise if outgoing, switch to incoming
|
||||
proc/incall(coeff = 1)
|
||||
datum/shuttle_controller/proc/incall(coeff = 1)
|
||||
if(shutdown) return
|
||||
if((!universe.OnShuttleCall(null) || deny_shuttle) && alert == 1) //crew transfer shuttle does not gets recalled by gamemode
|
||||
return
|
||||
@@ -52,18 +52,18 @@ datum/shuttle_controller
|
||||
if(istype(A, /area/hallway) && !A.lighting_subarea)
|
||||
A.readyalert()
|
||||
|
||||
proc/shuttlealert(var/X)
|
||||
datum/shuttle_controller/proc/shuttlealert(var/X)
|
||||
if(shutdown) return
|
||||
alert = X
|
||||
|
||||
|
||||
proc/force_shutdown()
|
||||
datum/shuttle_controller/proc/force_shutdown()
|
||||
online=0
|
||||
shutdown=1
|
||||
|
||||
|
||||
|
||||
proc/recall()
|
||||
datum/shuttle_controller/proc/recall()
|
||||
if(shutdown) return
|
||||
if(!can_recall) return
|
||||
if(direction == 1)
|
||||
@@ -85,9 +85,9 @@ datum/shuttle_controller
|
||||
online = 1
|
||||
return
|
||||
|
||||
// returns the time (in seconds) before shuttle arrival
|
||||
// note if direction = -1, gives a count-up to SHUTTLEARRIVETIME
|
||||
proc/timeleft()
|
||||
// returns the time (in seconds) before shuttle arrival
|
||||
// note if direction = -1, gives a count-up to SHUTTLEARRIVETIME
|
||||
datum/shuttle_controller/proc/timeleft()
|
||||
|
||||
if(online)
|
||||
var/timeleft = round((endtime - world.timeofday)/10 ,1)
|
||||
@@ -98,14 +98,14 @@ datum/shuttle_controller
|
||||
else
|
||||
return SHUTTLEARRIVETIME
|
||||
|
||||
// sets the time left to a given delay (in seconds)
|
||||
proc/settimeleft(var/delay)
|
||||
// sets the time left to a given delay (in seconds)
|
||||
datum/shuttle_controller/proc/settimeleft(var/delay)
|
||||
endtime = world.timeofday + delay * 10
|
||||
timelimit = delay
|
||||
|
||||
// sets the shuttle direction
|
||||
// 1 = towards SS13, -1 = back to centcom
|
||||
proc/setdirection(var/dirn)
|
||||
// sets the shuttle direction
|
||||
// 1 = towards SS13, -1 = back to centcom
|
||||
datum/shuttle_controller/proc/setdirection(var/dirn)
|
||||
if(direction == dirn)
|
||||
return
|
||||
direction = dirn
|
||||
@@ -114,15 +114,15 @@ datum/shuttle_controller
|
||||
endtime = world.timeofday + (SHUTTLEARRIVETIME*10 - ticksleft)
|
||||
return
|
||||
|
||||
proc/process()
|
||||
datum/shuttle_controller/proc/process()
|
||||
|
||||
proc/move_pod(var/start_type,var/end_type,var/direction,var/open_doors)
|
||||
datum/shuttle_controller/proc/move_pod(var/start_type,var/end_type,var/direction,var/open_doors)
|
||||
var/area/start_location=locate(start_type)
|
||||
var/area/end_location=locate(end_type)
|
||||
|
||||
start_location.move_contents_to(end_location, null, direction)
|
||||
|
||||
for(var/obj/machinery/door/D in world)
|
||||
for(var/obj/machinery/door/D in all_doors)
|
||||
if( get_area(D) == end_location )
|
||||
spawn(0)
|
||||
if(open_doors)
|
||||
@@ -142,8 +142,9 @@ datum/shuttle_controller
|
||||
M.Weaken(5)
|
||||
|
||||
|
||||
emergency_shuttle
|
||||
force_shutdown()
|
||||
datum/shuttle_controller/emergency_shuttle
|
||||
|
||||
datum/shuttle_controller/emergency_shuttle/force_shutdown()
|
||||
..()
|
||||
if(direction == 2)
|
||||
location = 1
|
||||
@@ -159,7 +160,7 @@ datum/shuttle_controller
|
||||
|
||||
online = 0
|
||||
|
||||
process()
|
||||
datum/shuttle_controller/emergency_shuttle/process()
|
||||
if(!online || shutdown)
|
||||
return
|
||||
var/timeleft = timeleft()
|
||||
|
||||
@@ -98,7 +98,7 @@ In short:
|
||||
|
||||
A.updateicon()
|
||||
|
||||
/datum/universal_state/hell/proc/OverlayAndAmbientSet()
|
||||
/datum/universal_state/hell/OverlayAndAmbientSet()
|
||||
for(var/turf/T in world)
|
||||
if(istype(T, /turf/space))
|
||||
T.overlays += "hell01"
|
||||
|
||||
@@ -60,6 +60,9 @@
|
||||
/datum/universal_state/proc/OnTurfChange(var/turf/NT)
|
||||
return
|
||||
|
||||
/datum/universal_state/proc/OverlayAndAmbientSet()
|
||||
return
|
||||
|
||||
/proc/SetUniversalState(var/newstate,var/on_exit=1, var/on_enter=1)
|
||||
if(on_exit)
|
||||
universe.OnExit()
|
||||
|
||||
@@ -126,7 +126,7 @@ AUTOMATED ALERT: Link to [command_name()] lost."}
|
||||
|
||||
A.updateicon()
|
||||
|
||||
/datum/universal_state/supermatter_cascade/proc/OverlayAndAmbientSet()
|
||||
/datum/universal_state/supermatter_cascade/OverlayAndAmbientSet()
|
||||
for(var/turf/T in world)
|
||||
if(istype(T, /turf/space))
|
||||
T.overlays += "end01"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#define BLOB_PROBABILITY 40
|
||||
#define HEADBUTT_PROBABILITY 40
|
||||
#define BRAINLOSS_FOR_HEADBUTT 60
|
||||
|
||||
var/list/all_doors = list()
|
||||
/obj/machinery/door
|
||||
name = "door"
|
||||
desc = "It opens and closes."
|
||||
@@ -294,6 +294,7 @@
|
||||
|
||||
/obj/machinery/door/New()
|
||||
. = ..()
|
||||
all_doors += src
|
||||
|
||||
if(density)
|
||||
// above most items if closed
|
||||
@@ -334,6 +335,7 @@
|
||||
|
||||
/obj/machinery/door/Destroy()
|
||||
update_nearby_tiles()
|
||||
all_doors -= src
|
||||
..()
|
||||
|
||||
/obj/machinery/door/CanPass(atom/movable/mover, turf/target, height=1.5, air_group = 0)
|
||||
|
||||
Reference in New Issue
Block a user