diff options
Diffstat (limited to 'durt')
-rw-r--r-- | durt/nodes/(-1442,11,-2580).lua | 3 | ||||
-rw-r--r-- | durt/nodes/(-1513,11,-2588).lua | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/durt/nodes/(-1442,11,-2580).lua b/durt/nodes/(-1442,11,-2580).lua index c542ec7..a6c1a9d 100644 --- a/durt/nodes/(-1442,11,-2580).lua +++ b/durt/nodes/(-1442,11,-2580).lua @@ -1,2 +1 @@ --- ---to do: use rc token search to remove S27_EXIT rc
\ No newline at end of file +if event.train and atc_arrow then
local rc = get_rc() or ""
local rc_list = {}
for token in rc:gmatch("[^%s]+") do
if token ~= "S27_EXIT" then
table.insert(rc_list,token)
end
end
rc = table.concat(rc_list," ")
set_rc(rc)
atc_send("SM")
return
end
\ No newline at end of file diff --git a/durt/nodes/(-1513,11,-2588).lua b/durt/nodes/(-1513,11,-2588).lua index ca9cbd9..c76d2ce 100644 --- a/durt/nodes/(-1513,11,-2588).lua +++ b/durt/nodes/(-1513,11,-2588).lua @@ -1 +1 @@ -__approach_callback_mode = 1
if event.approach and not event.has_entered then
atc_set_ars_disable(true)
atc_set_lzb_tsr(1)
end
if event.train and atc_arrow then
if S.yards.S27.shunt_type == false then
local rc = get_rc() or ""
local action = 0
local rc_list = {}
for token in rc:gmatch("[^%s]+") do
if token=="S27_LOOP" then
action = 1
else
table.insert(rc_list,token)
end
end
if action == 0 then
rc = rc.." S27_LOOP"
else
rc = table.concat(rc_list," ").." S27_EXIT"
end
set_rc(rc)
atc_set_ars_disable(false)
atc_send("B0WRD1S3")
return
elseif S.yards.S27.shunt_type == true then
local info = {
['rc'] = get_rc() or "",
['ln'] = get_line() or "",
['it'] = atc_get_text_inside() or "",
['ot'] = atc_get_text_outside() or ""
}
if info.rc == "S27_HEADSHUNT S27_AROUND" then
info = S.yards.S27.info
set_rc(info.rc)
set_line(inf.ln)
atc_set_text_inside(info.it)
atc_set_text_outside(info.ot)
atc_send("BBWD3RD1SM")
else
S.yards.S27[info] = info
split_at_index(2,"BB")
set_rc("S27_HEADSHUNT S27_AROUND")
end
atc_set_ars_disable(false)
return
end
end
\ No newline at end of file +__approach_callback_mode = 1
if event.approach and not event.has_entered then
atc_set_ars_disable(true)
atc_set_lzb_tsr(1)
end
if event.train and atc_arrow then
if S.yards.S27.shunt_type == false then
--reverse around loop. player not present to supervise autocouple
local rc = get_rc() or ""
local action = 0
local rc_list = {}
for token in rc:gmatch("[^%s]+") do
if token=="S27_LOOP" then
action = 1
else
table.insert(rc_list,token)
end
end
if action == 0 then
rc = rc.." S27_LOOP"
else
rc = table.concat(rc_list," ").." S27_EXIT"
end
set_rc(rc)
atc_set_ars_disable(false)
atc_send("B0WRD1S3")
return
elseif S.yards.S27.shunt_type == true then
--split and run around properly. player is present to supervise autocouple
local info = {
['rc'] = get_rc() or "",
['ln'] = get_line() or "",
['it'] = atc_get_text_inside() or "",
['ot'] = atc_get_text_outside() or ""
}
if info.rc == "S27_HEADSHUNT S27_AROUND" then
info = S.yards.S27.info
set_rc(info.rc)
set_line(inf.ln)
atc_set_text_inside(info.it)
atc_set_text_outside(info.ot)
atc_send("BBWD3RD1SM")
else
S.yards.S27[info] = info
split_at_index(2,"BBWR")
set_rc("S27_HEADSHUNT S27_AROUND")
set_autocouple()
end
atc_set_ars_disable(false)
return
end
end
\ No newline at end of file |