if minetest.get_modpath("default") then local default_fences = { "default:fence_wood", "default:fence_acacia_wood", "default:fence_aspen_wood", "default:fence_junglewood", "default:fence_pine_wood" } for _, n in ipairs(default_fences) do minetest.override_item(n, { check_for_pole = true }) end end if minetest.get_modpath("cottages") then local cbox = table.copy(minetest.registered_items["cottages:table"].node_box) minetest.override_item("cottages:table", { check_for_pole = true, selection_box = cbox }) end if minetest.get_modpath("prefab_redo") then minetest.override_item("prefab_redo:concrete_railing", { check_for_pole = true, selection_box = { type = "connected", connect_right = { -0.125, -0.5, -0.125, 0.5, 0.375, 0.125 }, connect_left = { -0.5, -0.5, -0.125, 0.125, 0.375, 0.125 }, connect_back = { -0.125, -0.5, -0.125, 0.125, 0.375, 0.5 }, connect_front = { -0.125, -0.5, -0.5, 0.125, 0.375, 0.125 }, disconnected = { -0.125, -0.5, -0.125, 0.125, 0.25, 0.125 }, fixed = {} } }) end if minetest.get_modpath("streetspoles") then local htj_north = { [1] = true, [3] = true, [9] = true, [11] = true, [21] = true, [23] = true } local htj_east = { [0] = true, [2] = true, [16] = true, [18] = true, [20] = true, [22] = true } local htj_south = { [1] = true, [3] = true, [5] = true, [7] = true, [21] = true, [23] = true } local htj_west = { [0] = true, [2] = true, [12] = true, [14] = true, [20] = true, [22] = true } local vtj_north = { [8] = true, [10] = true, [13] = true, [15] = true, [17] = true, [19] = true } local vtj_east = { [4] = true, [6] = true, [8] = true, [10] = true, [17] = true, [19] = true } local vtj_south = { [4] = true, [6] = true, [13] = true, [15] = true, [17] = true, [10] = true } local vtj_west = { [4] = true, [6] = true, [8] = true, [10] = true, [13] = true, [15] = true } minetest.override_item("streets:bigpole", { check_for_pole = function(pos, node, def, ppos, pnode, pdef) if pnode.param2 < 4 or (pnode.param2 > 19 and pnode.param2 < 24) and (pos.x ~= ppos.x or pos.z ~= ppos.z) then return true end end, check_for_horiz_pole = function(pos, node, def, ppos, pnode, pdef) if pnode.param2 > 3 and pnode.param2 < 12 then if def.paramtype2 == "wallmounted" then if node.param2 == 2 or node.param2 == 3 -- E/W then return true end else if node.param2 == 1 or node.param2 == 3 -- E/W then return true end end elseif pnode.param2 > 11 and pnode.param2 < 20 then if def.paramtype2 == "wallmounted" then if node.param2 == 4 or node.param2 == 5 then return true end else if node.param2 == 0 or node.param2 == 2 then return true end end end end }) minetest.override_item("streets:bigpole_tjunction", { check_for_pole = function(pos, node, def, ppos, pnode, pdef) if def.paramtype2 == "wallmounted" then if (node.param2 == 4 and vtj_north[pnode.param2]) or (node.param2 == 2 and vtj_east[pnode.param2]) or (node.param2 == 5 and vtj_south[pnode.param2]) or (node.param2 == 3 and vtj_west[pnode.param2]) then return true end else if (node.param2 == 0 and vtj_north[pnode.param2]) or (node.param2 == 1 and vtj_east[pnode.param2]) or (node.param2 == 2 and vtj_south[pnode.param2]) or (node.param2 == 3 and vtj_west[pnode.param2]) then return true end end end, check_for_horiz_pole = function(pos, node, def, ppos, pnode, pdef) if def.paramtype2 == "wallmounted" then if (node.param2 == 4 and htj_north[pnode.param2]) or (node.param2 == 2 and htj_east[pnode.param2]) or (node.param2 == 5 and htj_south[pnode.param2]) or (node.param2 == 3 and htj_west[pnode.param2]) then return true end else if (node.param2 == 0 and htj_north[pnode.param2]) or (node.param2 == 1 and htj_east[pnode.param2]) or (node.param2 == 2 and htj_south[pnode.param2]) or (node.param2 == 3 and htj_west[pnode.param2]) then return true end end end }) end if minetest.get_modpath("streetlamps") then minetest.override_item("streets:streetlamp_basic_top_on", { selection_box = { type = "fixed", fixed = { {-0.3,-0.4,-0.3,0.3,0.5,0.3}, {-0.15,-0.4,-0.15,0.15,-1.55,0.15}, {-0.18,-1.55,-0.18,0.18,-2.5,0.18}, } }, check_for_pole = true }) end