mirror of
https://github.com/mt-mods/homedecor_modpack.git
synced 2024-12-28 18:50:21 +01:00
0d5cab9455
* switch existing to xcompat textures * replace the rest of the hard coded texture conversions to use homedecor.textures
255 lines
7.4 KiB
Lua
255 lines
7.4 KiB
Lua
local S = minetest.get_translator("building_blocks")
|
|
|
|
local function building_blocks_stairs(nodename, def)
|
|
|
|
if def.groups and (def.groups.crumbly or def.groups.oddly_breakable_by_hand) then
|
|
def.groups["handy"]=1
|
|
def._mcl_hardness=0.6
|
|
elseif def.groups and (def.groups.snappy or def.groups.choppy) then
|
|
def.groups["axey"]=5
|
|
def._mcl_hardness=1.6
|
|
elseif def.groups and (def.groups.cracky or def.groups.crumbly) then
|
|
def.groups["pickaxey"]=5
|
|
def._mcl_hardness=1.6
|
|
end
|
|
|
|
def.is_ground_content = def.is_ground_content == true
|
|
|
|
minetest.register_node(nodename, def)
|
|
if minetest.get_modpath("moreblocks") then
|
|
local mod, name = nodename:match("(.*):(.*)")
|
|
stairsplus:register_all(mod, name, nodename, def)
|
|
|
|
minetest.register_alias("stairs:slab_" .. name, mod .. ":slab_" .. name)
|
|
minetest.register_alias("stairs:stair_" .. name, mod .. ":stair_" .. name)
|
|
minetest.register_alias("stairs:stair_inner_" .. name, mod .. ":stair_" .. name .. "_inner")
|
|
minetest.register_alias("stairs:stair_outer_" .. name, mod .. ":stair_" .. name .. "_outer")
|
|
end
|
|
end
|
|
|
|
building_blocks_stairs("building_blocks:grate", {
|
|
drawtype = "glasslike",
|
|
description = S("Grate"),
|
|
tiles = {"building_blocks_grate.png"},
|
|
paramtype = "light",
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
use_texture_alpha = "clip",
|
|
groups = {cracky=1, dig_generic=3},
|
|
_sound_def = {
|
|
key = "node_sound_metal_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:smoothglass", {
|
|
drawtype = "glasslike",
|
|
description = S("Streak Free Glass"),
|
|
tiles = {"building_blocks_sglass.png"},
|
|
paramtype = "light",
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
use_texture_alpha = "clip",
|
|
groups = {snappy=3,cracky=3,oddly_breakable_by_hand=3},
|
|
_sound_def = {
|
|
key = "node_sound_glass_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:woodglass", {
|
|
drawtype = "glasslike",
|
|
description = S("Wood Framed Glass"),
|
|
tiles = {"building_blocks_wglass.png"},
|
|
paramtype = "light",
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
use_texture_alpha = "clip",
|
|
groups = {snappy=3,cracky=3,oddly_breakable_by_hand=3},
|
|
_sound_def = {
|
|
key = "node_sound_glass_defaults",
|
|
},
|
|
})
|
|
|
|
building_blocks_stairs("building_blocks:Adobe", {
|
|
tiles = {"building_blocks_Adobe.png"},
|
|
description = S("Adobe"),
|
|
is_ground_content = false,
|
|
groups = {crumbly=3, dig_stone=2},
|
|
_sound_def = {
|
|
key = "node_sound_stone_defaults",
|
|
},
|
|
})
|
|
local grasstex = {
|
|
homedecor.textures.grass.top,
|
|
homedecor.textures.grass.dirt,
|
|
homedecor.textures.grass.side
|
|
}
|
|
building_blocks_stairs("building_blocks:fakegrass", {
|
|
tiles = grasstex,
|
|
description = S("Fake Grass"),
|
|
is_ground_content = false,
|
|
groups = {crumbly=3, dig_sand=3},
|
|
_sound_def = {
|
|
key = "node_sound_dirt_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:hardwood", {
|
|
tiles = {"building_blocks_hardwood.png"},
|
|
is_ground_content = false,
|
|
description = S("Hardwood"),
|
|
groups = {choppy=1,flammable=1, dig_tree=1},
|
|
_sound_def = {
|
|
key = "node_sound_wood_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:Roofing", {
|
|
tiles = {"building_blocks_Roofing.png"},
|
|
is_ground_content = false,
|
|
description = S("Roof block"),
|
|
groups = {snappy=3, dig_generic=4},
|
|
_sound_def = {
|
|
key = "node_sound_stone_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:Tar", {
|
|
description = S("Tar"),
|
|
tiles = {"building_blocks_tar.png"},
|
|
is_ground_content = false,
|
|
groups = {crumbly=1, tar_block = 1, dig_generic=4},
|
|
_sound_def = {
|
|
key = "node_sound_stone_defaults",
|
|
},
|
|
})
|
|
building_blocks_stairs("building_blocks:Marble", {
|
|
description = S("Marble"),
|
|
tiles = {"building_blocks_marble.png"},
|
|
is_ground_content = false,
|
|
groups = {cracky=3, marble = 1, dig_stone=2},
|
|
_sound_def = {
|
|
key = "node_sound_stone_defaults",
|
|
},
|
|
})
|
|
|
|
minetest.register_node("building_blocks:brobble_spread", {
|
|
drawtype = "raillike",
|
|
-- Translators: "Brobble" is a portmanteau of "Brick" and "Cobble".
|
|
-- Translate however you see fit.
|
|
description = S("Brobble Spread"),
|
|
tiles = {"building_blocks_brobble.png"},
|
|
inventory_image = "building_blocks_brobble_spread_inv.png",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
selection_box = {
|
|
type = "fixed",
|
|
-- but how to specify the dimensions for curved and sideways rails?
|
|
fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
|
|
},
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {crumbly=3, dig_generic=4, handy=1},
|
|
_mcl_hardness=0.6
|
|
})
|
|
|
|
if not minetest.get_modpath("moreblocks") or not minetest.get_modpath("gloopblocks") then
|
|
local graveltex = homedecor.textures.gravel
|
|
minetest.register_node("building_blocks:gravel_spread", {
|
|
drawtype = "raillike",
|
|
description = S("Gravel Spread"),
|
|
tiles = {graveltex},
|
|
inventory_image = "building_blocks_gravel_spread_inv.png",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
selection_box = {
|
|
type = "fixed",
|
|
-- but how to specify the dimensions for curved and sideways rails?
|
|
fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
|
|
},
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {crumbly=2, dig_generic=4, handy=1},
|
|
_mcl_hardness=0.6,
|
|
_sound_def = {
|
|
key = "node_sound_dirt_defaults",
|
|
},
|
|
})
|
|
end
|
|
|
|
minetest.register_node("building_blocks:Tarmac_spread", {
|
|
drawtype = "raillike",
|
|
description = S("Tarmac Spread"),
|
|
tiles = {"building_blocks_tar.png"},
|
|
inventory_image = "building_blocks_tar_spread_inv.png",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
selection_box = {
|
|
type = "fixed",
|
|
-- but how to specify the dimensions for curved and sideways rails?
|
|
fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
|
|
},
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {cracky=3, dig_generic=4, pickaxey=5},
|
|
_mcl_hardness=1.6,
|
|
_sound_def = {
|
|
key = "node_sound_dirt_defaults",
|
|
},
|
|
})
|
|
minetest.register_node("building_blocks:terrycloth_towel", {
|
|
drawtype = "raillike",
|
|
description = S("Terrycloth towel"),
|
|
tiles = {"building_blocks_towel.png"},
|
|
inventory_image = "building_blocks_towel_inv.png",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
selection_box = {
|
|
type = "fixed",
|
|
-- but how to specify the dimensions for curved and sideways rails?
|
|
fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
|
|
},
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {crumbly=3, dig_generic=4, handy=1},
|
|
_mcl_hardness=0.6
|
|
})
|
|
|
|
minetest.register_node("building_blocks:BWtile", {
|
|
drawtype = "nodebox",
|
|
description = S("Chess board tiling"),
|
|
tiles = {
|
|
"building_blocks_BWtile.png",
|
|
"building_blocks_BWtile.png^[transformR90",
|
|
"building_blocks_BWtile.png^[transformR90",
|
|
"building_blocks_BWtile.png^[transformR90",
|
|
"building_blocks_BWtile.png",
|
|
"building_blocks_BWtile.png"
|
|
},
|
|
inventory_image = "building_blocks_bwtile_inv.png",
|
|
paramtype = "light",
|
|
walkable = false,
|
|
node_box = {
|
|
type = "fixed",
|
|
fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2},
|
|
},
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {crumbly=3, dig_generic=4, handy=1},
|
|
_mcl_hardness=0.6
|
|
})
|
|
|
|
minetest.register_node("building_blocks:Fireplace", {
|
|
description = S("Fireplace"),
|
|
tiles = {
|
|
"building_blocks_cast_iron.png",
|
|
"building_blocks_cast_iron.png",
|
|
"building_blocks_cast_iron.png",
|
|
"building_blocks_cast_iron_fireplace.png"
|
|
},
|
|
paramtype = "light",
|
|
paramtype2 = "facedir",
|
|
light_source = minetest.LIGHT_MAX,
|
|
sunlight_propagates = true,
|
|
is_ground_content = false,
|
|
groups = {cracky=2, dig_generic=4, pickaxey=5},
|
|
_mcl_hardness=1.6,
|
|
_sound_def = {
|
|
key = "node_sound_stone_defaults",
|
|
},
|
|
})
|