homedecor_modpack/init.lua

986 lines
31 KiB
Lua

-- Home Decor mod by VanessaE
-- 2012-06-12
--
-- Mostly my own code, with bits and pieces lifted from Minetest's default
-- lua files, from ironzorg's flowers mod
--
-- See also, foldingdoors.lua (borrowed heavily from Minetest's default
-- doors mod)
--
-- This mod requires the presence of the "unifieddyes" mod, which also
-- supplies ironzorg's flowers mod.
--
-- License: GPL
--
dofile(minetest.get_modpath("homedecor").."/foldingdoors_oak.lua")
dofile(minetest.get_modpath("homedecor").."/foldingdoors_mahogany.lua")
dofile(minetest.get_modpath("homedecor").."/exterior_door_fancy.lua")
dofile(minetest.get_modpath("homedecor").."/crafts.lua")
local DEBUG = 1
-- Local Functions
local dbg = function(s)
if DEBUG == 1 then
print('[HomeDecor] ' .. s)
end
end
-- Nodes
minetest.register_node('homedecor:shingles_wood', {
description = "Wood Shingles",
drawtype = 'raillike',
tile_images = { 'homedecor_shingles_wood.png' },
wield_image = 'homedecor_shingles_wood.png',
inventory_image = 'homedecor_shingles_wood.png',
paramtype = 'light',
sunlight_propagates = false,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:skylight', {
description = "Glass Skylight",
drawtype = 'raillike',
tile_images = { 'default_glass.png' },
wield_image = 'default_glass.png',
inventory_image = 'default_glass.png',
paramtype = 'light',
sunlight_propagates = true,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:shingles_asphalt', {
description = "Asphalt Shingles",
drawtype = 'raillike',
tile_images = { 'homedecor_shingles_asphalt.png' },
wield_image = 'homedecor_shingles_asphalt.png',
inventory_image = 'homedecor_shingles_asphalt.png',
paramtype = 'light',
sunlight_propagates = false,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:shingles_terracotta', {
description = "Terracotta Roofing",
drawtype = 'raillike',
tile_images = { 'homedecor_shingles_terracotta.png' },
wield_image = 'homedecor_shingles_terracotta.png',
inventory_image = 'homedecor_shingles_terracotta.png',
paramtype = 'light',
sunlight_propagates = false,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
drop = 'homedecor:roof_tile_terracotta 4',
})
minetest.register_node('homedecor:projection_screen', {
description = "Projection Screen Material",
drawtype = 'signlike',
tile_images = { 'homedecor_projection_screen.png' },
wield_image = 'homedecor_projection_screen_inv.png',
inventory_image = 'homedecor_projection_screen_inv.png',
sunlight_propagates = false,
paramtype = 'light',
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:ceiling_paint', {
description = "Textured Ceiling Paint",
drawtype = 'signlike',
tile_images = { 'homedecor_ceiling_paint.png' },
inventory_image = 'homedecor_ceiling_paint_roller.png',
wield_image = 'homedecor_ceiling_paint_roller.png',
sunlight_propagates = true,
paramtype = 'light',
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:ceiling_tile', {
description = "Drop-Ceiling Tile",
drawtype = 'signlike',
tile_images = { 'homedecor_ceiling_tile.png' },
wield_image = 'homedecor_ceiling_tile.png',
inventory_image = 'homedecor_ceiling_tile.png',
sunlight_propagates = true,
paramtype = 'light',
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:rug_small', {
description = "Small Throw Rug",
drawtype = 'signlike',
tile_images = { 'homedecor_rug_small.png' },
wield_image = 'homedecor_rug_small.png',
inventory_image = 'homedecor_rug_small.png',
sunlight_propagates = true,
paramtype = 'light',
paramtype2 = "wallmounted",
is_ground_content = true,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:rug_large', {
description = "Large Area Rug",
drawtype = 'signlike',
tile_images = { 'homedecor_rug_large.png' },
wield_image = 'homedecor_rug_large.png',
inventory_image = 'homedecor_rug_large.png',
sunlight_propagates = true,
paramtype = 'light',
paramtype2 = "wallmounted",
is_ground_content = true,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:glass_table_large', {
description = "Large Glass Table Piece",
drawtype = 'signlike',
tile_images = { 'homedecor_glass_table_large.png' },
wield_image = 'homedecor_glass_table_large.png',
inventory_image = 'homedecor_glass_table_large.png',
sunlight_propagates = true,
paramtype = 'light',
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = "wallmounted",
is_ground_content = true,
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:glass_table_small_round', {
description = "Glass Table (Small, Round)",
drawtype = 'signlike',
tile_images = { 'homedecor_glass_table_small_round.png' },
wield_image = 'homedecor_glass_table_small_round.png',
inventory_image = 'homedecor_glass_table_small_round.png',
sunlight_propagates = true,
paramtype = 'light',
paramtype2 = "wallmounted",
is_ground_content = true,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:glass_table_small_square', {
description = "Glass Table (Small, Square)",
drawtype = 'signlike',
tile_images = { 'homedecor_glass_table_small_square.png' },
wield_image = 'homedecor_glass_table_small_square.png',
inventory_image = 'homedecor_glass_table_small_square.png',
sunlight_propagates = true,
paramtype = 'light',
paramtype2 = "wallmounted",
is_ground_content = true,
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node("homedecor:table_legs_brass", {
description = "Brass Table Legs",
drawtype = "plantlike",
tile_images = {"homedecor_table_legs_brass.png"},
inventory_image = "homedecor_table_legs_brass.png",
wield_image = "homedecor_table_legs_brass.png",
visual_scale = 1.04,
paramtype = "light",
walkable = false,
groups = {snappy=3},
sounds = default.node_sound_leaves_defaults(),
walkable = true,
})
minetest.register_node("homedecor:table_legs_wrought_iron", {
description = "Brass Table Legs",
drawtype = "plantlike",
tile_images = {"homedecor_table_legs_wrought_iron.png"},
inventory_image = "homedecor_table_legs_wrought_iron.png",
wield_image = "homedecor_table_legs_wrought_iron.png",
visual_scale = 1.04,
paramtype = "light",
walkable = false,
groups = {snappy=3},
sounds = default.node_sound_leaves_defaults(),
walkable = true,
})
minetest.register_node('homedecor:television', {
description = "Small CRT Television",
tile_images = { 'homedecor_television_top.png',
'homedecor_television_bottom.png',
'homedecor_television_left.png',
'homedecor_television_right.png',
'homedecor_television_back.png',
'homedecor_television_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
light_source = LIGHT_MAX - 1,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:stereo', {
description = "Stereo Receiver",
tile_images = { 'homedecor_stereo_top.png',
'homedecor_stereo_bottom.png',
'homedecor_stereo_left.png',
'homedecor_stereo_right.png',
'homedecor_stereo_back.png',
'homedecor_stereo_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:nightstand_oak_one_drawer', {
description = "Oak Nightstand with One Drawer",
tile_images = { 'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_1_drawer_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:nightstand_oak_two_drawers', {
description = "Oak Nightstand with One Drawer",
tile_images = { 'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_sides.png',
'homedecor_nightstand_oak_2_drawer_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:nightstand_mahogany_one_drawer', {
description = "Oak Nightstand with One Drawer",
tile_images = { 'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_1_drawer_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:nightstand_mahogany_two_drawers', {
description = "Oak Nightstand with One Drawer",
tile_images = { 'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_sides.png',
'homedecor_nightstand_mahogany_2_drawer_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:utility_table_top', {
description = "Utility Table",
tile_images = { 'homedecor_utility_table_top.png' },
inventory_image = 'homedecor_utility_table_top.png',
wield_image = 'homedecor_utility_table_top.png',
drawtype = "signlike",
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = "wallmounted",
is_ground_content = true,
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:utility_table_legs', {
description = "Legs for Utility Table",
tile_images = { 'homedecor_utility_table_legs.png' },
inventory_image = 'homedecor_utility_table_legs_inv.png',
wield_image = 'homedecor_utility_table_legs.png',
visual_scale = 1.04,
sunlight_propagates = true,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
drawtype = "plantlike",
})
minetest.register_node('homedecor:flower_pot_terracotta', {
description = "Terracotta Flower Pot",
tile_images = { 'homedecor_flower_pot_terracotta_top.png',
'homedecor_flower_pot_terracotta_bottom.png',
'homedecor_flower_pot_terracotta_sides.png',
'homedecor_flower_pot_terracotta_sides.png',
'homedecor_flower_pot_terracotta_sides.png',
'homedecor_flower_pot_terracotta_sides.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:flower_pot_black', {
description = "Black Plastic Flower Pot",
tile_images = { 'homedecor_flower_pot_black_top.png',
'homedecor_flower_pot_black_bottom.png',
'homedecor_flower_pot_black_sides.png',
'homedecor_flower_pot_black_sides.png',
'homedecor_flower_pot_black_sides.png',
'homedecor_flower_pot_black_sides.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:flower_pot_green', {
description = "Green Plastic Flower Pot",
tile_images = { 'homedecor_flower_pot_green_top.png',
'homedecor_flower_pot_green_bottom.png',
'homedecor_flower_pot_green_sides.png',
'homedecor_flower_pot_green_sides.png',
'homedecor_flower_pot_green_sides.png',
'homedecor_flower_pot_green_sides.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:wood_table_large', {
description = "Wooden Tabletop piece",
tile_images = { 'homedecor_wood_table_large.png' },
inventory_image = 'homedecor_wood_table_large.png',
wield_image = 'homedecor_wood_table_large.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = "wallmounted",
is_ground_content = true,
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:wood_table_small_round', {
description = "Wooden Tabletop (Small, Round)",
tile_images = { 'homedecor_wood_table_small_round.png' },
inventory_image = 'homedecor_wood_table_small_round.png',
wield_image = 'homedecor_wood_table_small_round.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = "wallmounted",
is_ground_content = true,
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:wood_table_small_square', {
description = "Wooden Tabletop (Small, Square)",
tile_images = { 'homedecor_wood_table_small_square.png' },
inventory_image = 'homedecor_wood_table_small_square.png',
wield_image = 'homedecor_wood_table_small_square.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = "wallmounted",
is_ground_content = true,
selection_box = {
type = "wallmounted",
--wall_top = <default>
--wall_bottom = <default>
--wall_side = <default>
},
})
minetest.register_node('homedecor:folding_door_mahogany', {
description = "Mahogany Folding Door",
tile_images = { 'homedecor_folding_door_mahogany.png' },
inventory_image = 'homedecor_folding_door_mahogany.png',
wield_image = 'homedecor_folding_door_mahogany.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:folding_door_oak', {
description = "Oak Folding Door",
tile_images = { 'homedecor_folding_door_oak.png' },
inventory_image = 'homedecor_folding_door_oak.png',
wield_image = 'homedecor_folding_door_oak.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:dresser_mahogany_left_side', {
description = "Mahogany Dresser (Left Half)",
tile_images = { 'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_front_left.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:dresser_mahogany_right_side', {
description = "Mahogany Dresser (Right Half)",
tile_images = { 'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_sides.png',
'homedecor_dresser_mahogany_front_right.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:dresser_oak_left_side', {
description = "Oak Dresser (Left Half)",
tile_images = { 'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_front_left.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:dresser_oak_right_side', {
description = "Oak Dresser (Right Half)",
tile_images = { 'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_sides.png',
'homedecor_dresser_oak_front_right.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:shutter_black', {
description = "Wooden Shutter (Black)",
tile_images = { 'homedecor_window_shutter_black.png' },
inventory_image = 'homedecor_window_shutter_black.png',
wield_image = 'homedecor_window_shutter_black.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_mahogany', {
description = "Wooden Shutter (Unpainted Mahogany)",
tile_images = { 'homedecor_window_shutter_mahogany.png' },
inventory_image = 'homedecor_window_shutter_mahogany.png',
wield_image = 'homedecor_window_shutter_mahogany.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_oak', {
description = "Wooden Shutter (Unpainted Oak)",
tile_images = { 'homedecor_window_shutter_oak.png' },
inventory_image = 'homedecor_window_shutter_oak.png',
wield_image = 'homedecor_window_shutter_oak.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_dark_grey', {
description = "Wooden Shutter (Dark Grey)",
tile_images = { 'homedecor_window_shutter_dark_grey.png' },
inventory_image = 'homedecor_window_shutter_dark_grey.png',
wield_image = 'homedecor_window_shutter_dark_grey.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_forest_green', {
description = "Wooden Shutter (Forest Green)",
tile_images = { 'homedecor_window_shutter_forest_green.png' },
inventory_image = 'homedecor_window_shutter_forest_green.png',
wield_image = 'homedecor_window_shutter_forest_green.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_grey', {
description = "Wooden Shutter (Grey)",
tile_images = { 'homedecor_window_shutter_grey.png' },
inventory_image = 'homedecor_window_shutter_grey.png',
wield_image = 'homedecor_window_shutter_grey.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_light_blue', {
description = "Wooden Shutter (Light Blue)",
tile_images = { 'homedecor_window_shutter_light_blue.png' },
inventory_image = 'homedecor_window_shutter_light_blue.png',
wield_image = 'homedecor_window_shutter_light_blue.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_purple', {
description = "Wooden Shutter (Purple)",
tile_images = { 'homedecor_window_shutter_purple.png' },
inventory_image = 'homedecor_window_shutter_purple.png',
wield_image = 'homedecor_window_shutter_purple.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_red', {
description = "Wooden Shutter (Red)",
tile_images = { 'homedecor_window_shutter_red.png' },
inventory_image = 'homedecor_window_shutter_red.png',
wield_image = 'homedecor_window_shutter_red.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_white', {
description = "Wooden Shutter (White)",
tile_images = { 'homedecor_window_shutter_white.png' },
inventory_image = 'homedecor_window_shutter_white.png',
wield_image = 'homedecor_window_shutter_white.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:shutter_yellow', {
description = "Wooden Shutter (Yellow)",
tile_images = { 'homedecor_window_shutter_yellow.png' },
inventory_image = 'homedecor_window_shutter_yellow.png',
wield_image = 'homedecor_window_shutter_yellow.png',
drawtype = 'signlike',
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
paramtype2 = 'wallmounted',
selection_box = {
type = "wallmounted",
--wall_side = = <default>
},
})
minetest.register_node('homedecor:utilitytable2', {
description = "Utility table mk2",
tile_images = { 'homedecor_utility_table_top.png',
'homedecor_blanktile.png',
'homedecor_utility_table_legs.png',
'homedecor_utility_table_legs.png',
'homedecor_utility_table_legs.png',
'homedecor_utility_table_legs.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
-- ===================================================
-- everything after this line is for testing purposes.
-- ===================================================
-- cylinder-shaped objects courtesy Jeija
local cylbox = {}
local detail = 50
local sehne
local size = 0.2
for i = 1, detail-1 do
sehne = math.sqrt(0.25 - (((i/detail)-0.5)^2))
cylbox[i]={((i/detail)-0.5)*size, -0.5, -sehne*size, ((i/detail)+(1/detail)-0.5)*size, 0.5, sehne*size}
end
minetest.register_node("homedecor:pole_brass", {
description = "Brass Pole",
drawtype = "nodebox",
tile_images = {"homedecor_tile_brass2.png"},
inventory_image = "homedecor_pole_brass2.png",
wield_image = "homedecor_pole_brass2.png",
paramtype = "light",
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-size/2, -0.5, -size/2, size/2, 0.5, size/2},
},
groups = {snappy=3},
sounds = default.node_sound_wood_defaults(),
walkable = true,
node_box = {
type = "fixed",
fixed = cylbox,
}
})
minetest.register_node("homedecor:pole_wrought_iron", {
description = "Wrought Iron Pole",
drawtype = "nodebox",
tile_images = {"homedecor_tile_wrought_iron2.png"},
inventory_image = "homedecor_pole_wrought_iron.png",
wield_image = "homedecor_pole_wrought_iron.png",
paramtype = "light",
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-0.0625, -0.5, -0.0625, 0.0625, 0.5, 0.0625}
},
node_box = {
type = "fixed",
fixed = {-0.0625, -0.5, -0.0625, 0.0625, 0.5, 0.0625}
},
groups = {snappy=3},
sounds = default.node_sound_wood_defaults(),
walkable = true,
})
minetest.register_node("homedecor:fence_brass", {
description = "Brass Fence/railing",
drawtype = "fencelike",
tile_images = {"homedecor_tile_brass.png"},
inventory_image = "homedecor_fence_brass.png",
wield_image = "homedecor_pole_brass.png",
paramtype = "light",
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7},
},
groups = {snappy=3},
sounds = default.node_sound_wood_defaults(),
walkable = true,
})
minetest.register_node("homedecor:fence_wrought_iron", {
description = "Wrought Iron Fence/railing",
drawtype = "fencelike",
tile_images = {"homedecor_tile_wrought_iron.png"},
inventory_image = "homedecor_fence_wrought_iron.png",
wield_image = "homedecor_pole_wrought_iron.png",
paramtype = "light",
is_ground_content = true,
selection_box = {
type = "fixed",
fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7},
},
groups = {snappy=3},
sounds = default.node_sound_wood_defaults(),
walkable = true,
})
minetest.register_node('homedecor:speaker', {
description = "Large Stereo Speaker",
tile_images = { 'homedecor_speaker_top.png',
'homedecor_speaker_bottom.png',
'homedecor_speaker_left.png',
'homedecor_speaker_right.png',
'homedecor_speaker_back.png',
'homedecor_speaker_front.png'},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
minetest.register_node('homedecor:speaker_small', {
description = "Small Surround Speaker",
drawtype = "nodebox",
tile_images = { 'homedecor_speaker_top.png',
'homedecor_speaker_bottom.png',
'homedecor_speaker_left.png',
'homedecor_speaker_right.png',
'homedecor_speaker_back.png',
'homedecor_speaker_front.png'},
selection_box = {
type = "fixed",
fixed = { -0.2, -0.5, 0, 0.2, 0, 0.4 }
},
node_box = {
type = "fixed",
fixed = { -0.2, -0.5, 0, 0.2, 0, 0.4 }
},
sunlight_propagates = false,
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = { snappy = 3 },
sounds = default.node_sound_leaves_defaults(),
})
print("[HomeDecor] Loaded!")