Update nodes.lua

Added nodes for suspension bridge
This commit is contained in:
Mavori 2025-04-11 15:11:00 +02:00
commit 1794e0325b

262
nodes.lua
View file

@ -69,7 +69,7 @@ if core.settings:get_bool("vlbridger_enable_trusses", true) then
groups = {cracky=3}, groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
}) })
--[[
if core.get_modpath("moreblocks") then if core.get_modpath("moreblocks") then
stairsplus:register_all("vlbridger", "block_" .. bridge_color, "vlbridger:block_" .. bridge_color, { stairsplus:register_all("vlbridger", "block_" .. bridge_color, "vlbridger:block_" .. bridge_color, {
description = bridge_desc, description = bridge_desc,
@ -112,30 +112,31 @@ if core.settings:get_bool("vlbridger_enable_trusses", true) then
end, end,
}) })
end end
]]
core.register_node("vlbridger:suspension_top_" .. bridge_color, {
description = bridge_desc .. " Cable Top", --[[Steps ]]
drawtype = "nodebox", core.register_node("vlbridger:step_" .. bridge_color, {
tiles = {"bridges_" .. bridge_color .. ".png"}, description = bridge_desc .. " Step",
paramtype = "light", drawtype = "nodebox",
paramtype2 = "facedir", tiles = {"bridges_" .. bridge_color .. ".png"},
node_box = { paramtype = "light",
type = "fixed", paramtype2 = "facedir",
fixed = { node_box = {
{-0.5, -0.5, -0.5, 0.5, 0, 0.5}, type = "fixed",
{-0.125, -0.5, -0.125, 0.125, 0.5, 0.125}, fixed = {
{-0.5, -0.5, 0, 0.5, 0, 0.5},
},
}, },
}, groups = {cracky=3},
groups = {cracky=3}, sounds = mcl_sounds.node_sound_metal_defaults(),
sounds = mcl_sounds.node_sound_metal_defaults(), on_place = function(itemstack, placer, pointed_thing)
on_place = function(itemstack, placer, pointed_thing) if pointed_thing.type ~= "node" then
if pointed_thing.type ~= "node" then return itemstack
return itemstack end
end return rotate_and_place(itemstack, placer, pointed_thing)
return rotate_and_place(itemstack, placer, pointed_thing) end,
end, })
})
core.register_node("vlbridger:suspension_cable_" .. bridge_color, { core.register_node("vlbridger:suspension_cable_" .. bridge_color, {
description = bridge_desc .. " Cable", description = bridge_desc .. " Cable",
drawtype = "nodebox", drawtype = "nodebox",
@ -150,6 +151,183 @@ if core.settings:get_bool("vlbridger_enable_trusses", true) then
groups = {cracky=3}, groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
}) })
core.register_node("vlbridger:suspension_top_" .. bridge_color, {
description = bridge_desc .. " Cable Top",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.25, 0.25, 0, 0.25},
{-0.125, -0.5, -0.125, 0.125, 0.5, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
on_place = function(itemstack, placer, pointed_thing)
if pointed_thing.type ~= "node" then
return itemstack
end
return rotate_and_place(itemstack, placer, pointed_thing)
end,
})
core.register_node("vlbridger:main_cable_bottom" .. bridge_color, {
description = bridge_desc .. " Main Cable bottom",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, 0.25, -0.25, 0.5, 0.5, 0.25},
{-0.25, -0.5, -0.25, 0.25, 0, 0.25},
{-0.125, -0.5, -0.125, 0.125, 0.5, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_low1" .. bridge_color, {
description = bridge_desc .. " Main Cable bottom",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.25, 0.5, -0.25, 0.25},
{-0.125, -0.5, -0.125, 0.125, -0.25, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_low2" .. bridge_color, {
description = bridge_desc .. " Main Cable bottom",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.25, -0.25, 0.5, 0.0, 0.25},
{-0.125, -0.5, -0.125, 0.125, 0.0, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_low3" .. bridge_color, {
description = bridge_desc .. " Main Cable bottom",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, 0.0, -0.25, 0.5, 0.25, 0.25},
{-0.125, -0.5, -0.125, 0.125, 0.25, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_low4" .. bridge_color, {
description = bridge_desc .. " Main Cable bottom",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, 0.25, -0.25, 0.5, 0.5, 0.25},
{-0.125, -0.5, -0.125, 0.125, 0.5, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_" .. bridge_color, {
description = bridge_desc .. " Main Cable",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
--[[diagonaler Teil]]
{-0.5, -0.5, -0.25, -0.25, -0.25, 0.25},
{-0.25, -0.25, -0.25, 0.0, 0.0, 0.25},
{0.0, 0.0, -0.25, 0.25, 0.25, 0.25},
{0.25, 0.25, -0.25, 0.5, 0.5, 0.25},
--[[ vertikaler Teil]]
{-0.125, -0.5, -0.125, 0.125, 0.0, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_lowerhalf" .. bridge_color, {
description = bridge_desc .. " Main Cable lower half",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
--[[diagonaler Teil]]
{-0.5, -0.5, -0.25, 0.0, -0.25, 0.25},
{0.0, -0.25, -0.25, 0.5, 0.0, 0.25},
--[[ vertikaler Teil]]
{-0.125, -0.5, -0.125, 0.125, -0.25, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:main_cable_upperhalf" .. bridge_color, {
description = bridge_desc .. " Main Cable upper half",
drawtype = "nodebox",
tiles = {"bridges_" .. bridge_color .. ".png"},
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
--[[diagonaler Teil]]
{-0.5, 0, -0.25, 0.0, 0.25, 0.25},
{0.0, 0.25, -0.25, 0.5, 0.5, 0.25},
--[[ vertikaler Teil]]
{-0.125, -0.5, -0.125, 0.125, 0.25, 0.125},
},
},
groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(),
})
core.register_node("vlbridger:deck_" .. bridge_color, { core.register_node("vlbridger:deck_" .. bridge_color, {
description = bridge_desc .. " Deck", description = bridge_desc .. " Deck",
@ -3703,9 +3881,15 @@ if core.settings:get_bool("vlbridger_enable_trusses", true) then
selection_box = { selection_box = {
type = "fixed", type = "fixed",
fixed = { fixed = {
{-0.5, -0.5, 0, 0.5, 0.5, 0.5}, {-0.5, -0.5, 0.375, 0.5, 0.5, 0.5},
}, },
}, },
collision_box = {
type = "fixed",
fixed = {
{-0.5, 0, -0.5, 0.5, 0.5, 0.5},
},
},
groups = {cracky=3}, groups = {cracky=3},
sounds = mcl_sounds.node_sound_metal_defaults(), sounds = mcl_sounds.node_sound_metal_defaults(),
}) })
@ -3713,7 +3897,7 @@ if core.settings:get_bool("vlbridger_enable_trusses", true) then
core.register_node("vlbridger:corrugated_steel_ceiling_" .. bridge_color, { core.register_node("vlbridger:corrugated_steel_ceiling_" .. bridge_color, {
description = bridge_desc .. " Corrugated Steel Deck", description = bridge_desc .. " Corrugated Steel Deck",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"bridges_corrugated_steel_" .. bridge_color .. ".png^[transformR90"}, tiles = {"bridges_corrugated_steel_" .. bridge_color .. ".png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4144,7 +4328,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam", { core.register_node("vlbridger:small_beam", {
description = "Small Wooden Beam Bridge", description = "Small Wooden Beam Bridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4173,7 +4357,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_mid", { core.register_node("vlbridger:small_beam_mid", {
description = "Small Wooden Beam Bridge Middle", description = "Small Wooden Beam Bridge Middle",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4198,7 +4382,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_end", { core.register_node("vlbridger:small_beam_end", {
description = "Small Wooden Beam Bridge End", description = "Small Wooden Beam Bridge End",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4228,7 +4412,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_corner", { core.register_node("vlbridger:small_beam_corner", {
description = "Small Wooden Beam Bridge Corner", description = "Small Wooden Beam Bridge Corner",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4257,7 +4441,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_3", { core.register_node("vlbridger:small_beam_3", {
description = "Small Wooden Beam Bridge Crossing", description = "Small Wooden Beam Bridge Crossing",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4285,7 +4469,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_4", { core.register_node("vlbridger:small_beam_4", {
description = "Small Wooden Beam Bridge Crossing", description = "Small Wooden Beam Bridge Crossing",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4312,7 +4496,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:small_beam_stair", { core.register_node("vlbridger:small_beam_stair", {
description = "Small Wooden Beam Bridge Stair", description = "Small Wooden Beam Bridge Stair",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4402,7 +4586,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:large_beam", { core.register_node("vlbridger:large_beam", {
description = "Large Wooden Beam Bridge", description = "Large Wooden Beam Bridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4431,7 +4615,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:large_fancy_beam", { core.register_node("vlbridger:large_fancy_beam", {
description = "Large Fancy Wooden Beam Bridge", description = "Large Fancy Wooden Beam Bridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4538,7 +4722,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:large_beam_swivel_open", { core.register_node("vlbridger:large_beam_swivel_open", {
description = "Large Wooden Swivel Bridge", description = "Large Wooden Swivel Bridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png^[transformR90"}, tiles = {"default_wood.png^[transformR90"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4576,7 +4760,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:large_drawbridge_normal", { core.register_node("vlbridger:large_drawbridge_normal", {
description = "Large Wooden Drawbridge", description = "Large Wooden Drawbridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4613,7 +4797,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:large_drawbridge_open", { core.register_node("vlbridger:large_drawbridge_open", {
description = "Large Wooden Drawbridge", description = "Large Wooden Drawbridge",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -4690,7 +4874,7 @@ if core.settings:get_bool("vlbridger_enable_wooden_bridges", true) then
core.register_node("vlbridger:deck_wood", { core.register_node("vlbridger:deck_wood", {
description = "Wooden Deck", description = "Wooden Deck",
drawtype = "nodebox", drawtype = "nodebox",
tiles = {"def_wood.png"}, tiles = {"default_wood.png"},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
node_box = { node_box = {