Fix wood bulks not replacing rail
parent
473708eb0b
commit
7a7edca70d
17
init.lua
17
init.lua
|
@ -128,7 +128,7 @@ end
|
||||||
-- the node if it is allowed. Does never build in liquids.
|
-- the node if it is allowed. Does never build in liquids.
|
||||||
-- If check_above is true, don't build if the node above is attached (e.g. rail)
|
-- If check_above is true, don't build if the node above is attached (e.g. rail)
|
||||||
-- or a liquid.
|
-- or a liquid.
|
||||||
local function SetNodeIfCanBuild(pos, node, check_above)
|
local function SetNodeIfCanBuild(pos, node, check_above, can_replace_rail)
|
||||||
if check_above then
|
if check_above then
|
||||||
local abovename = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}).name
|
local abovename = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}).name
|
||||||
local abovedef = minetest.registered_nodes[abovename]
|
local abovedef = minetest.registered_nodes[abovename]
|
||||||
|
@ -145,7 +145,8 @@ local function SetNodeIfCanBuild(pos, node, check_above)
|
||||||
((def.is_ground_content and def.liquidtype == "none") or
|
((def.is_ground_content and def.liquidtype == "none") or
|
||||||
name == tsm_railcorridors.nodes.cobweb or
|
name == tsm_railcorridors.nodes.cobweb or
|
||||||
name == tsm_railcorridors.nodes.torch_wall or
|
name == tsm_railcorridors.nodes.torch_wall or
|
||||||
name == tsm_railcorridors.nodes.torch_floor
|
name == tsm_railcorridors.nodes.torch_floor or
|
||||||
|
(can_replace_rail and name == tsm_railcorridors.nodes.rail)
|
||||||
) then
|
) then
|
||||||
minetest.set_node(pos, node)
|
minetest.set_node(pos, node)
|
||||||
return true
|
return true
|
||||||
|
@ -425,10 +426,10 @@ local function TryPlaceCobweb(pos, needs_check, side_vector)
|
||||||
end
|
end
|
||||||
|
|
||||||
local function WoodBulk(pos, wood)
|
local function WoodBulk(pos, wood)
|
||||||
SetNodeIfCanBuild({x=pos.x+1, y=pos.y, z=pos.z+1}, {name=wood})
|
SetNodeIfCanBuild({x=pos.x+1, y=pos.y, z=pos.z+1}, {name=wood}, false, true)
|
||||||
SetNodeIfCanBuild({x=pos.x-1, y=pos.y, z=pos.z+1}, {name=wood})
|
SetNodeIfCanBuild({x=pos.x-1, y=pos.y, z=pos.z+1}, {name=wood}, false, true)
|
||||||
SetNodeIfCanBuild({x=pos.x+1, y=pos.y, z=pos.z-1}, {name=wood})
|
SetNodeIfCanBuild({x=pos.x+1, y=pos.y, z=pos.z-1}, {name=wood}, false, true)
|
||||||
SetNodeIfCanBuild({x=pos.x-1, y=pos.y, z=pos.z-1}, {name=wood})
|
SetNodeIfCanBuild({x=pos.x-1, y=pos.y, z=pos.z-1}, {name=wood}, false, true)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Gänge mit Schienen
|
-- Gänge mit Schienen
|
||||||
|
@ -505,13 +506,13 @@ local function corridor_part(start_point, segment_vector, segment_count, wood, p
|
||||||
local left_ok = true
|
local left_ok = true
|
||||||
left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y-1, z=calc[2]}, node_fence)
|
left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y-1, z=calc[2]}, node_fence)
|
||||||
if left_ok then left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y , z=calc[2]}, node_fence) end
|
if left_ok then left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y , z=calc[2]}, node_fence) end
|
||||||
if left_ok then left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y+1, z=calc[2]}, node_wood) end
|
if left_ok then left_ok = SetNodeIfCanBuild({x=calc[1], y=p.y+1, z=calc[2]}, node_wood, false, true) end
|
||||||
|
|
||||||
-- Right post and planks
|
-- Right post and planks
|
||||||
local right_ok = true
|
local right_ok = true
|
||||||
right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y-1, z=calc[4]}, node_fence)
|
right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y-1, z=calc[4]}, node_fence)
|
||||||
if right_ok then right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y , z=calc[4]}, node_fence) end
|
if right_ok then right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y , z=calc[4]}, node_fence) end
|
||||||
if right_ok then right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y+1, z=calc[4]}, node_wood) end
|
if right_ok then right_ok = SetNodeIfCanBuild({x=calc[3], y=p.y+1, z=calc[4]}, node_wood, false, true) end
|
||||||
|
|
||||||
-- Middle planks
|
-- Middle planks
|
||||||
local top_planks_ok = false
|
local top_planks_ok = false
|
||||||
|
|
Loading…
Reference in New Issue