aboutsummaryrefslogtreecommitdiff
path: root/advtrains_interlocking/tool.lua
diff options
context:
space:
mode:
authororwell96 <orwell@bleipb.de>2023-03-19 17:19:40 +0100
committerorwell96 <orwell@bleipb.de>2023-05-27 12:26:14 +0200
commita14eb7fe737ffc4df4077a01f4859d74f62d0af2 (patch)
tree088ec0a6306ee415a01a084d41cb11dfa40e1b5e /advtrains_interlocking/tool.lua
parent6a5540878f334e97b78ef1430698a8bf8b3faa99 (diff)
downloadadvtrains-a14eb7fe737ffc4df4077a01f4859d74f62d0af2.tar.gz
advtrains-a14eb7fe737ffc4df4077a01f4859d74f62d0af2.tar.bz2
advtrains-a14eb7fe737ffc4df4077a01f4859d74f62d0af2.zip
TCB Xlinking added, to make nonconnected crossings possible
Diffstat (limited to 'advtrains_interlocking/tool.lua')
-rw-r--r--advtrains_interlocking/tool.lua13
1 files changed, 11 insertions, 2 deletions
diff --git a/advtrains_interlocking/tool.lua b/advtrains_interlocking/tool.lua
index 4b701b4..6723f88 100644
--- a/advtrains_interlocking/tool.lua
+++ b/advtrains_interlocking/tool.lua
@@ -26,7 +26,11 @@ local function node_right_click(pos, pname)
local node_ok, conns, rail_y=advtrains.get_rail_info_at(pos)
if not node_ok then
minetest.chat_send_player(pname, "Node is not a track!")
- return
+ return
+ end
+ if advtrains.interlocking.db.get_tcb(pos) then
+ advtrains.interlocking.show_tcb_form(pos, pname)
+ return
end
local ts_id = advtrains.interlocking.db.check_and_repair_ts_at_pos(pos)
@@ -41,7 +45,12 @@ local function node_left_click(pos, pname)
local node_ok, conns, rail_y=advtrains.get_rail_info_at(pos)
if not node_ok then
minetest.chat_send_player(pname, "Node is not a track!")
- return
+ return
+ end
+
+ if advtrains.interlocking.db.get_tcb(pos) then
+ advtrains.interlocking.show_tcb_marker(pos)
+ return
end
local ts_id = advtrains.interlocking.db.check_and_repair_ts_at_pos(pos)