aboutsummaryrefslogtreecommitdiff
path: root/advtrains/passive.lua
diff options
context:
space:
mode:
Diffstat (limited to 'advtrains/passive.lua')
-rw-r--r--advtrains/passive.lua6
1 files changed, 6 insertions, 0 deletions
diff --git a/advtrains/passive.lua b/advtrains/passive.lua
index 37b79e4..aad309e 100644
--- a/advtrains/passive.lua
+++ b/advtrains/passive.lua
@@ -70,6 +70,12 @@ function advtrains.setstate(parpos, newstate, pnode)
end
-- invalidate paths (only relevant if this is a track)
advtrains.invalidate_all_paths(pos)
+ -- hack for old signals. Compatibility only, DO NOT USE for new signals!
+ if advtrains.interlocking and ndef.advtrains._is_passivenode_signal then
+ -- forcefully clears any set aspect, so that aspect system doesnt override it again
+ -- implicitly does an signal.notify_trains(pos)
+ advtrains.interlocking.signal.clear_aspect(pos)
+ end
return true
end