aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Pérez-Cerezo <gabriel@gpcf.eu>2021-02-11 12:26:28 +0100
committerGabriel Pérez-Cerezo <gabriel@gpcf.eu>2021-02-11 12:26:28 +0100
commita847527b632ef19efd5dcf8ea77b495984ff9cc9 (patch)
tree97df340b7b83049ff5e08c5aa3f82a218083e634
parentb5512ed80fd27d91535fbc99dde29ef924e86ed0 (diff)
downloadlinetrack-master.tar.gz
linetrack-master.tar.bz2
linetrack-master.zip
modify for new_lzb branchHEADmaster
-rw-r--r--interlocking.lua30
1 files changed, 12 insertions, 18 deletions
diff --git a/interlocking.lua b/interlocking.lua
index 98faa94..8f1f9ab 100644
--- a/interlocking.lua
+++ b/interlocking.lua
@@ -1,13 +1,14 @@
+
local setaspectf = function()
return function(pos, node, asp)
- if not asp.main.free then
- if asp.shunt.free then
+ if asp.main == 0 then
+ if asp.shunt then
advtrains.ndb.swap_node(pos, {name="linetrack:signal_shunt", param2 = node.param2})
else
advtrains.ndb.swap_node(pos, {name="linetrack:signal_danger", param2 = node.param2})
end
else
- if asp.dst.free and asp.main.speed == -1 then
+ if asp.dst ~= 0 and asp.main == -1 then
advtrains.ndb.swap_node(pos, {name="linetrack:signal_free", param2 = node.param2})
else
advtrains.ndb.swap_node(pos, {name="linetrack:signal_slow", param2 = node.param2})
@@ -21,18 +22,10 @@ local setaspectf = function()
end
local suppasp = {
- main = {
- free = nil,
- speed = {6, -1},
- },
- dst = {
- free = nil,
- speed = nil,
- },
- shunt = {
- free = nil,
- proceed_as_main = true,
- },
+ main = {0, 6, -1},
+ dst = {0, false},
+ shunt = nil,
+ proceed_as_main = true,
info = {
call_on = false,
dead_end = false,
@@ -40,11 +33,12 @@ local suppasp = {
}
}
+
for typ, prts in pairs({
danger = {asp = advtrains.interlocking.DANGER, n = "slow", ici=true},
- slow = {asp = { main = { free = true, speed = 6 }, shunt = {proceed_as_main = true}} , n = "free"},
- free = {asp = { main = { free = true, speed = -1 }, shunt = {proceed_as_main = true}} , n = "shunt"},
- shunt = {asp = { main = {free = false}, shunt = {free = true} } , n = "danger"},
+ slow = {asp = { main = 6, proceed_as_main = true} , n = "free"},
+ free = {asp = { main = -1, proceed_as_main = true} , n = "shunt"},
+ shunt = {asp = { main = 0, shunt = true} , n = "danger"},
}) do
minetest.register_node("linetrack:signal_"..typ, {
description = "Generic Main Signal",