Merge pull request #52137 from optimumtact/doorfuckery

Use the autoclose_in wrapper for autoclose in the base door open
This commit is contained in:
skoglol
2020-07-12 11:51:16 +02:00
committed by GitHub
2 changed files with 10 additions and 4 deletions
+4 -1
View File
@@ -37,6 +37,7 @@
#define AIRLOCK_DAMAGE_DEFLECTION_N 21 // Normal airlock damage deflection
#define AIRLOCK_DAMAGE_DEFLECTION_R 30 // Reinforced airlock damage deflection
#define DOOR_CLOSE_WAIT 60 /// Time before a door closes, if not overridden
/obj/machinery/door/airlock
name = "airlock"
icon = 'icons/obj/doors/airlocks/station/public.dmi'
@@ -1077,7 +1078,7 @@
if(safe)
for(var/atom/movable/M in get_turf(src))
if(M.density && M != src) //something is blocking the door
autoclose_in(60)
autoclose_in(DOOR_CLOSE_WAIT)
return
if(forced < 2)
@@ -1497,3 +1498,5 @@
#undef AIRLOCK_INTEGRITY_MULTIPLIER
#undef AIRLOCK_DAMAGE_DEFLECTION_N
#undef AIRLOCK_DAMAGE_DEFLECTION_R
#undef DOOR_CLOSE_WAIT
+6 -3
View File
@@ -1,3 +1,4 @@
#define DOOR_CLOSE_WAIT 60 ///Default wait until doors autoclose
/obj/machinery/door
name = "door"
desc = "It opens and closes."
@@ -301,7 +302,7 @@
air_update_turf(1)
update_freelook_sight()
if(autoclose)
addtimer(CALLBACK(src, .proc/close), autoclose)
autoclose_in(DOOR_CLOSE_WAIT)
return 1
/obj/machinery/door/proc/close()
@@ -313,7 +314,7 @@
for(var/atom/movable/M in get_turf(src))
if(M.density && M != src) //something is blocking the door
if(autoclose)
autoclose_in(60)
autoclose_in(DOOR_CLOSE_WAIT)
return
operating = TRUE
@@ -424,4 +425,6 @@
/obj/machinery/door/power_change()
. = ..()
if(. && !(machine_stat & NOPOWER))
autoclose_in(rand(0.5 SECONDS, 3 SECONDS))
autoclose_in(DOOR_CLOSE_WAIT)
#undef DOOR_CLOSE_WAIT