aboutsummaryrefslogtreecommitdiff
path: root/advtrains_signals_ks/init.lua
diff options
context:
space:
mode:
authororwell <orwell@bleipb.de>2024-11-14 00:03:38 +0100
committerorwell <orwell@bleipb.de>2024-11-14 00:03:38 +0100
commitfe57e7dd089653e2361a4ebb0b34137a3261e198 (patch)
tree0bc1be5e530f6a7af857b8cefe29c1da5ae29b8b /advtrains_signals_ks/init.lua
parentd42f1bcf1a7ec18d392671be54636e7cad8b788b (diff)
downloadadvtrains-fe57e7dd089653e2361a4ebb0b34137a3261e198.tar.gz
advtrains-fe57e7dd089653e2361a4ebb0b34137a3261e198.tar.bz2
advtrains-fe57e7dd089653e2361a4ebb0b34137a3261e198.zip
Add Blocksignal mode for signals to autocreate simple block route
Diffstat (limited to 'advtrains_signals_ks/init.lua')
-rwxr-xr-xadvtrains_signals_ks/init.lua8
1 files changed, 6 insertions, 2 deletions
diff --git a/advtrains_signals_ks/init.lua b/advtrains_signals_ks/init.lua
index c0e74ea..a85bec9 100755
--- a/advtrains_signals_ks/init.lua
+++ b/advtrains_signals_ks/init.lua
@@ -161,7 +161,7 @@ end
-- Main aspects shunt signal
-- Shunt signals have only two states, distant doesn't matter
-local mainaspects_shunt = {
+local mainaspects_ra = {
{
name = "shunt",
description = "Shunt",
@@ -335,6 +335,10 @@ for _, rtab in ipairs({
}) do
local sbox = table.copy(rtab.sbox)
sbox[5] = 0
+ local afunc = prts.asp
+ if type(afunc) == "table" then
+ afunc = function() return prts.asp end
+ end
minetest.register_node("advtrains_signals_ks:ra_"..typ.."_"..rot, {
description = "Ks Shunting Signal",
drawtype = "mesh",
@@ -366,7 +370,7 @@ for _, rtab in ipairs({
advtrains = {
main_aspects = mainaspects_ra,
apply_aspect = applyaspectf_ra(rot),
- get_aspect_info = prts.asp,
+ get_aspect_info = afunc,
route_role = "shunt",
trackworker_next_rot = "advtrains_signals_ks:ra_"..typ.."_"..rtab.nextrot,
trackworker_rot_incr_param2 = (rot=="60")