mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-12 03:02:54 +00:00
Merge pull request #6022 from mwerezak/docking
Fixes for docking controllers, emergency shuttle and airlock animations
This commit is contained in:
@@ -648,8 +648,10 @@ About the new airlock wires panel:
|
|||||||
else
|
else
|
||||||
flick("door_closing", src)
|
flick("door_closing", src)
|
||||||
if("spark")
|
if("spark")
|
||||||
|
if(density)
|
||||||
flick("door_spark", src)
|
flick("door_spark", src)
|
||||||
if("deny")
|
if("deny")
|
||||||
|
if(density)
|
||||||
flick("door_deny", src)
|
flick("door_deny", src)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -197,7 +197,9 @@
|
|||||||
|
|
||||||
//checks if we are ready for undocking
|
//checks if we are ready for undocking
|
||||||
/datum/computer/file/embedded_program/airlock/multi_docking/proc/ready_for_undocking()
|
/datum/computer/file/embedded_program/airlock/multi_docking/proc/ready_for_undocking()
|
||||||
return check_doors_secured()
|
var/ext_closed = check_exterior_door_secured()
|
||||||
|
var/int_closed = check_interior_door_secured()
|
||||||
|
return (ext_closed || int_closed)
|
||||||
|
|
||||||
/datum/computer/file/embedded_program/airlock/multi_docking/proc/open_doors()
|
/datum/computer/file/embedded_program/airlock/multi_docking/proc/open_doors()
|
||||||
toggleDoor(memory["interior_status"], tag_interior_door, memory["secure"], "open")
|
toggleDoor(memory["interior_status"], tag_interior_door, memory["secure"], "open")
|
||||||
|
|||||||
@@ -137,10 +137,3 @@
|
|||||||
|
|
||||||
/datum/computer/file/embedded_program/docking/simple/escape_pod/prepare_for_undocking()
|
/datum/computer/file/embedded_program/docking/simple/escape_pod/prepare_for_undocking()
|
||||||
eject_time = world.time + eject_delay*10
|
eject_time = world.time + eject_delay*10
|
||||||
|
|
||||||
/*
|
|
||||||
/datum/computer/file/embedded_program/docking/simple/escape_pod/ready_for_undocking()
|
|
||||||
if (world.time < eject_time)
|
|
||||||
return 0
|
|
||||||
return ..()
|
|
||||||
*/
|
|
||||||
@@ -34,15 +34,14 @@
|
|||||||
if (moving_status == SHUTTLE_IDLE)
|
if (moving_status == SHUTTLE_IDLE)
|
||||||
return //someone cancelled the launch
|
return //someone cancelled the launch
|
||||||
|
|
||||||
|
moving_status = SHUTTLE_INTRANSIT
|
||||||
move(departing, interim, direction)
|
move(departing, interim, direction)
|
||||||
|
|
||||||
moving_status = SHUTTLE_INTRANSIT
|
|
||||||
arrive_time = world.time + travel_time*10
|
arrive_time = world.time + travel_time*10
|
||||||
while (world.time < arrive_time)
|
while (world.time < arrive_time)
|
||||||
sleep(5)
|
sleep(5)
|
||||||
|
|
||||||
move(interim, destination, direction)
|
move(interim, destination, direction)
|
||||||
|
|
||||||
moving_status = SHUTTLE_IDLE
|
moving_status = SHUTTLE_IDLE
|
||||||
|
|
||||||
/datum/shuttle/proc/dock()
|
/datum/shuttle/proc/dock()
|
||||||
@@ -69,6 +68,8 @@
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
//just moves the shuttle from A to B, if it can be moved
|
//just moves the shuttle from A to B, if it can be moved
|
||||||
|
//A note to anyone overriding move in a subtype. move() must absolutely not, under any circumstances, fail to move the shuttle.
|
||||||
|
//If you want to conditionally cancel shuttle launches, that logic must go in short_jump() or long_jump()
|
||||||
/datum/shuttle/proc/move(var/area/origin, var/area/destination, var/direction=null)
|
/datum/shuttle/proc/move(var/area/origin, var/area/destination, var/direction=null)
|
||||||
|
|
||||||
//world << "move_shuttle() called for [shuttle_tag] leaving [origin] en route to [destination]."
|
//world << "move_shuttle() called for [shuttle_tag] leaving [origin] en route to [destination]."
|
||||||
|
|||||||
Reference in New Issue
Block a user