mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-12 16:44:43 +01:00
Makes master support ss.postpone()ing the next fire of running subsystems (#59792)
Sadly it can't apply this to the next fire resume of paused subsystems, but at least its not resetting that postpone.
This commit is contained in:
committed by
GitHub
parent
d3aff2bd46
commit
ef129ac94f
@@ -525,7 +525,9 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
|
||||
|
||||
queue_node.last_fire = world.time
|
||||
queue_node.times_fired++
|
||||
|
||||
|
||||
var/postpone = queue_node.next_fire - queue_node.queued_time
|
||||
|
||||
if (queue_node_flags & SS_TICKER)
|
||||
queue_node.next_fire = world.time + (world.tick_lag * queue_node.wait)
|
||||
else if (queue_node_flags & SS_POST_FIRE_TIMING)
|
||||
@@ -535,6 +537,9 @@ GLOBAL_REAL(Master, /datum/controller/master) = new
|
||||
else
|
||||
queue_node.next_fire = queue_node.queued_time + queue_node.wait + (world.tick_lag * (queue_node.tick_overrun/100))
|
||||
|
||||
if (postpone >= world.tick_lag)
|
||||
queue_node.next_fire += postpone
|
||||
|
||||
queue_node.queued_time = 0
|
||||
|
||||
//remove from queue
|
||||
|
||||
Reference in New Issue
Block a user