diff options
Diffstat (limited to 'durt/nodes/(-1457,11,-2573).lua')
-rw-r--r-- | durt/nodes/(-1457,11,-2573).lua | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/durt/nodes/(-1457,11,-2573).lua b/durt/nodes/(-1457,11,-2573).lua index 8f984b2..cb9eb3c 100644 --- a/durt/nodes/(-1457,11,-2573).lua +++ b/durt/nodes/(-1457,11,-2573).lua @@ -1,17 +1,27 @@ -local rev_rc = "S27_REV_West" -local rm_rc = false - +-- Automatic bouncer for headshunts, assuming longer headshunt than train length. Arrow points into headshunt +local rev_rc = "S27_EXP_HS_S" +local rm_rc = true +local autocouple = "S27_EXP_HS_S_AC" +local rm_cpl_rc = true __approach_callback_mode = 1 if event.approach and not event.has_entered then - atc_set_lzb_tsr(1) + atc_set_lzb_tsr(3) atc_set_ars_disable(true) return end -if event.train and atc_arrow then - if not F.has_rc(rev_rc) then +if event.train then + if not atc_arrow then --train has bounced + if F.has_rc(autocouple) then + atc_send("CplS0WD2S1") + if rm_cpl_rc then F.remove_rc({autocouple}) end + end + return + end + + if not F.has_rc(rev_rc) then --not our train. disregard atc_set_ars_disable(false) return end |