summaryrefslogtreecommitdiff
path: root/Tyard/nodes/(-4039,12,-2655).lua
diff options
context:
space:
mode:
authorautocommitter <autocommitter@linux-forks.de>2024-04-22 14:56:58 +0200
committerautocommitter <autocommitter@linux-forks.de>2024-04-22 14:56:58 +0200
commit4590cc6504d625404f0af394da41bb71fc2dec45 (patch)
treebc8ae688454d7254909feb05e87d46fb4241bea2 /Tyard/nodes/(-4039,12,-2655).lua
parentaeea70df13db7d77ce2ce1075cbd14dc1c3797fc (diff)
downloadluaatc_envs-4590cc6504d625404f0af394da41bb71fc2dec45.tar.gz
luaatc_envs-4590cc6504d625404f0af394da41bb71fc2dec45.tar.bz2
luaatc_envs-4590cc6504d625404f0af394da41bb71fc2dec45.zip
State at 2022-04-20
Diffstat (limited to 'Tyard/nodes/(-4039,12,-2655).lua')
-rw-r--r--Tyard/nodes/(-4039,12,-2655).lua31
1 files changed, 30 insertions, 1 deletions
diff --git a/Tyard/nodes/(-4039,12,-2655).lua b/Tyard/nodes/(-4039,12,-2655).lua
index 7489acc..512ce80 100644
--- a/Tyard/nodes/(-4039,12,-2655).lua
+++ b/Tyard/nodes/(-4039,12,-2655).lua
@@ -1 +1,30 @@
--- \ No newline at end of file
+--EOL code
+local this_dir = true -- true = F.dir arrow points north
+local error_indicator = POS(-4025,13,-2671)
+if F.yard_active() then
+ if atc_arrow then
+ if F.dir() == this_dir then --train has bounced and needs to leave the rake or depart with it
+ if F.has_rc("TY_FINAL_COLLECT") then -- take the whole rake to the exit
+ F.remove({"TY_FINAL_COLLECT")
+ F.add_rc({"TY_DEPART"})
+ else -- disconnect loco and return to pickup
+ split_off_locomotive("A0B0")
+ F.add_rc({"TY_PICKUP"})
+ end
+ else --train needs to bounce
+ atc_send("B0WRD1S4")
+ end
+ else
+ if F.dir() == this_dir then
+ --train is clasifying wagons, let it pass and couple to the rest of the rake
+ local rm = {}
+ for v in F.get_rc_safe():gmatch("(TY_CLASS_%S+)") do
+ table.insert(rm,v)
+ end
+ F.remove_rc(rm)
+ else --this should never come into play as it means the train has entered from the wrong end somehow
+ atc_send("BBOL") --stop the train and open the doors (if available) to signify assistance required
+ setstate(error_indicator,"on")
+ end
+ end
+end \ No newline at end of file