diff options
Diffstat (limited to 'durt/nodes/(1843,17,4278).lua')
-rw-r--r-- | durt/nodes/(1843,17,4278).lua | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/durt/nodes/(1843,17,4278).lua b/durt/nodes/(1843,17,4278).lua new file mode 100644 index 0000000..dcfa6d4 --- /dev/null +++ b/durt/nodes/(1843,17,4278).lua @@ -0,0 +1,54 @@ +local notification_id = "OAF Logging" +local ind = POS(1845, 17, 4275) +local print_notification = true +local function send_train() + local cmd = { + "FREIGHT", + "OAF_SHUNTER", + "IYARD", + "IP_RTS", + "IP_COLLECT_OAF_Logging", + "IYARD_TO_OAF" + } + if section_occupancy("186232")[1] then --wagons to collect from local siding before departure + cmd[#cmd+1] = "OAF_HS_S" + cmd[#cmd+1] = "OAF_HS_S_AC" + cmd[#cmd+1] = "OAF_COLLECT_OUTBOUND" + else + cmd[#cmd+1] = "OAF_DEPART_LIGHT" + end + + set_rc(table.concat(cmd, " ")) + atc_send("S0WRD2A1S4D20SM") + F.indicator(ind,false) +end + +__approach_callback_mode = 1 + +if event.approach and not event.has_entered then + atc_set_lzb_tsr(1) + return +end + +if event.ext_int then + if event.message == "notify" then + if print_notification then print(rwt.to_string(rwt.now()).. " "..notification_id.." RX Notification") end + if F.indicator(ind) then return end + if atc_id then + send_train() + return + else + F.indicator(ind,true) + return + end + end +end + +if event.train then + if F.indicator(ind) then + send_train() + return + end + atc_send("B0") + return +end
\ No newline at end of file |