diff options
Diffstat (limited to 'Tyard/nodes/(-4039,12,-2655).lua')
-rw-r--r-- | Tyard/nodes/(-4039,12,-2655).lua | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/Tyard/nodes/(-4039,12,-2655).lua b/Tyard/nodes/(-4039,12,-2655).lua index 747fb3d..f08c2fe 100644 --- a/Tyard/nodes/(-4039,12,-2655).lua +++ b/Tyard/nodes/(-4039,12,-2655).lua @@ -1 +1,28 @@ -F.EOL(true)
\ No newline at end of file +--EOL code +local this_dir = true -- true = F.dir arrow points north + +if not F.yard_active() then return end +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_LAST_CLASS") then -- take the whole rake to the exit + F.remove_rc({"TY_LAST_CLASS"}) + F.add_rc({"TY_DEPART"}) + split_off_locomotive("A0B0") + elseif not F.has_rc("TY_FINAL_COLLECT") then + -- disconnect loco and return to pickup + split_off_locomotive("A0B0") + F.add_rc({"TY_PICKUP"}) + end --if has FINAL_COLLECT then don't split off the loco. take the full rake + F.add_rc({"TY_HEADSHUNT"}) + 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 + F.remove_rc_match("TY_CLASS_%S+") + 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 + F.error(true) + end +end
\ No newline at end of file |