diff options
Diffstat (limited to 'durt/nodes/(-2080,3,822).lua')
-rw-r--r-- | durt/nodes/(-2080,3,822).lua | 49 |
1 files changed, 30 insertions, 19 deletions
diff --git a/durt/nodes/(-2080,3,822).lua b/durt/nodes/(-2080,3,822).lua index 202a5d7..b068713 100644 --- a/durt/nodes/(-2080,3,822).lua +++ b/durt/nodes/(-2080,3,822).lua @@ -1,25 +1,36 @@ -__approach_callback_method = 2 +local dir_indicator = POS(-2079,7,803) +local this_dir = true + +__approach_callback_mode = 2 if event.approach and not event.has_entered then - if atc_arrow then - atc_set_lzb_tsr(1) - else - atc_set_lzb_tsr(2) - end + atc_set_lzb_tsr(2) + atc_set_ars_disable(true) + return end if event.train then - if atc_arrow then - if F.has_rc("ARC_load") then - if F.has_rc("ARC_load_rejoin") then - F.remove_rc({"Arc_load_reverse","ARC_load_rejoin"}) - atc_send("SM") - return - else - split_at_fc("S0",5) - F.add_rc({"ARC_load_reverse"}) - atc_send("S2") - return - end - end + if not F.has_rc("ARC_LOAD") then + atc_set_ars_disable(false) + return + end + if F.has_rc("ARC_LOAD_exit") then + atc_set_ars_disable(false) + return + end + if not atc_arrow then + atc_send("S2") + return + end + + if not F.has_rc("ARC_LOAD_rejoin") then + split_at_fc("B0") + F.add_rc("ARC_LOAD_reverse ARC_LOAD_load") + atc_send("A1S2") + F.dir(dir_indicator,this_dir) + else + unset_autocouple() + F.remove_rc({"ARC_LOAD_reverse","ARC_LOAD_rejoin"}) + F.add_rc("ARC_LOAD_exit") + atc_send("B0WRD1S6A1") end end
\ No newline at end of file |