diff options
Diffstat (limited to 'Crossroads')
-rw-r--r-- | Crossroads/init_code.lua | 28 | ||||
-rw-r--r-- | Crossroads/nodes/(1538,6,7946).lua | 2 | ||||
-rw-r--r-- | Crossroads/nodes/(1573,6,8005).lua | 1 | ||||
-rw-r--r-- | Crossroads/nodes/(1592,6,8002).lua | 1 | ||||
-rw-r--r-- | Crossroads/nodes/(1606,6,7941).lua | 1 | ||||
-rw-r--r-- | Crossroads/nodes/(1610,6,7967).lua | 2 | ||||
-rw-r--r-- | Crossroads/nodes/(1612,6,7949).lua | 3 | ||||
-rw-r--r-- | Crossroads/nodes/(1617,6,7943).lua | 3 |
8 files changed, 34 insertions, 7 deletions
diff --git a/Crossroads/init_code.lua b/Crossroads/init_code.lua index 067c474..286e897 100644 --- a/Crossroads/init_code.lua +++ b/Crossroads/init_code.lua @@ -31,6 +31,9 @@ local crossing_light_count = { NRG_3 = 3, NRG_4 = 2, NRG_5 = 4, + NRG_6 = 4, + NRG_7 = 2, + NRG_8 = 4, } local function update_light(loc, k, v) @@ -52,14 +55,31 @@ local function update_light(loc, k, v) end end -function F.x_on(t) - if event.type ~= "train" then return end - if not atc_arrow then return end +function F.crossing_on(t) for loc, k in pairs(t) do update_light(loc, k, true) end end +function F.x_on(t) + if event.type == "train" and atc_arrow then + return F.crossing_on(t) + end +end + +function F.ax_on(t) + __approach_callback_mode = 1 + if (event.type == "approach" or event.type == "train") and atc_arrow then + return F.crossing_on(t) + end +end + +function F.sx_on(t) + if event.type == "schedule" and (event.msg or {}).depart then + return F.crossing_on(t) + end +end + function F.x_off(t) if event.type ~= "train" then return end if not atc_arrow then return end @@ -250,7 +270,7 @@ function F.stn2gen(stn, trk, door, ret, chout, depspeed) ts = os.time(), mode = "ARR", } - schedule_in(interval, {intext = nxtdisp}) + schedule_in(interval, {intext = nxtdisp, depart = true}) break end end diff --git a/Crossroads/nodes/(1538,6,7946).lua b/Crossroads/nodes/(1538,6,7946).lua index 8d006a8..f4d3045 100644 --- a/Crossroads/nodes/(1538,6,7946).lua +++ b/Crossroads/nodes/(1538,6,7946).lua @@ -1 +1 @@ -F.x_on {NRG_1 = 1}
\ No newline at end of file +F.ax_on {NRG_1 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1573,6,8005).lua b/Crossroads/nodes/(1573,6,8005).lua new file mode 100644 index 0000000..f6dfb94 --- /dev/null +++ b/Crossroads/nodes/(1573,6,8005).lua @@ -0,0 +1 @@ +F.ax_on{NRG_8 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1592,6,8002).lua b/Crossroads/nodes/(1592,6,8002).lua new file mode 100644 index 0000000..bf58619 --- /dev/null +++ b/Crossroads/nodes/(1592,6,8002).lua @@ -0,0 +1 @@ +F.x_off{NRG_6 = 1, NRG_7 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1606,6,7941).lua b/Crossroads/nodes/(1606,6,7941).lua new file mode 100644 index 0000000..6e3c9d3 --- /dev/null +++ b/Crossroads/nodes/(1606,6,7941).lua @@ -0,0 +1 @@ +F.ax_on{NRG_2 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1610,6,7967).lua b/Crossroads/nodes/(1610,6,7967).lua new file mode 100644 index 0000000..5381aa3 --- /dev/null +++ b/Crossroads/nodes/(1610,6,7967).lua @@ -0,0 +1,2 @@ +F.x_off {NRG_4 = 1} +F.ax_on {NRG_5 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1612,6,7949).lua b/Crossroads/nodes/(1612,6,7949).lua index 3ed95ea..a500be8 100644 --- a/Crossroads/nodes/(1612,6,7949).lua +++ b/Crossroads/nodes/(1612,6,7949).lua @@ -1 +1,2 @@ -F.x_off{NRG_2 = 1}
\ No newline at end of file +F.x_off{NRG_2 = 1} +F.ax_on{NRG_4 = 1}
\ No newline at end of file diff --git a/Crossroads/nodes/(1617,6,7943).lua b/Crossroads/nodes/(1617,6,7943).lua index 3ed95ea..ed8cbfd 100644 --- a/Crossroads/nodes/(1617,6,7943).lua +++ b/Crossroads/nodes/(1617,6,7943).lua @@ -1 +1,2 @@ -F.x_off{NRG_2 = 1}
\ No newline at end of file +F.x_off{NRG_2 = 1} +F.ax_on{NRG_3 = 1}
\ No newline at end of file |