Fix H#66 (Hemiptera 66) crash on missing double_conn match

h137
orwell96 2018-10-17 17:42:32 +02:00
parent e04d84cb4c
commit 87621caf1f
2 changed files with 12 additions and 9 deletions

View File

@ -207,15 +207,18 @@ function tp.placetrack(pos, nnpref, placer, itemstack, pointed_thing, yaw)
if (dconn1[conn1.."_"..conn2]) then
using = dconn1[conn1.."_"..conn2]
end
tp.bend_rail(p_railpos[conn1], conn1, nnpref)
tp.bend_rail(p_railpos[conn2], conn2, nnpref)
advtrains.ndb.swap_node(pos, using)
local nname=using.name
if minetest.registered_nodes[nname] and minetest.registered_nodes[nname].after_place_node then
minetest.registered_nodes[nname].after_place_node(pos, placer, itemstack, pointed_thing)
if using then
-- has found a fitting rail in either direction
-- if not, continue loop
tp.bend_rail(p_railpos[conn1], conn1, nnpref)
tp.bend_rail(p_railpos[conn2], conn2, nnpref)
advtrains.ndb.swap_node(pos, using)
local nname=using.name
if minetest.registered_nodes[nname] and minetest.registered_nodes[nname].after_place_node then
minetest.registered_nodes[nname].after_place_node(pos, placer, itemstack, pointed_thing)
end
return
end
return
end
end
end

View File

@ -118,7 +118,7 @@ function ac.run_in_env(pos, evtdata, customfct_p)
atlatc.interrupt.add(t, pos, {type="int", int=true, message=imesg})
end
-- add digiline_send function, if digiline is loaded
if digiline then
if minetest.global_exists("digiline") then
customfct.digiline_send=function(channel, msg)
assertt(channel, "string")
digiline:receptor_send(pos, digiline.rules.default, channel, msg)