aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--advtrains/trainlogic.lua8
-rw-r--r--advtrains_interlocking/lzb.lua2
2 files changed, 7 insertions, 3 deletions
diff --git a/advtrains/trainlogic.lua b/advtrains/trainlogic.lua
index ad51c42..2371490 100644
--- a/advtrains/trainlogic.lua
+++ b/advtrains/trainlogic.lua
@@ -573,9 +573,13 @@ end
local function mknodecallback(name)
local callt = {}
- advtrains["tnc_register_on_"..name] = function(func)
+ advtrains["tnc_register_on_"..name] = function(func, prio)
assertt(func, "function")
- table.insert(callt, func)
+ if prio then
+ table.insert(callt, 1, func)
+ else
+ table.insert(callt, func)
+ end
end
return callt, function(pos, id, train, index)
for _,f in ipairs(callt) do
diff --git a/advtrains_interlocking/lzb.lua b/advtrains_interlocking/lzb.lua
index eaa9808..eeddc77 100644
--- a/advtrains_interlocking/lzb.lua
+++ b/advtrains_interlocking/lzb.lua
@@ -288,4 +288,4 @@ advtrains.te_register_on_update(function(id, train)
end
look_ahead(id, train)
apply_control(id, train)
-end)
+end, true)