diff --git a/crafts.lua b/crafts.lua index 04d5157..c637dd8 100644 --- a/crafts.lua +++ b/crafts.lua @@ -834,11 +834,6 @@ minetest.register_craft( { }, }) -minetest.register_craftitem("homedecor:utility_table_legs", { - description = S("Legs for Small Utility table"), - inventory_image = "homedecor_utility_table_legs.png", -}) - minetest.register_craft( { output = 'homedecor:utility_table_legs', recipe = { diff --git a/electronics.lua b/electronics.lua new file mode 100644 index 0000000..19acd23 --- /dev/null +++ b/electronics.lua @@ -0,0 +1,114 @@ +-- Various home electronics + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) +else + S = function ( s ) return s end +end + +minetest.register_node('homedecor:speaker', { + description = S("Large Stereo Speaker"), + tiles = { 'homedecor_speaker_top.png', + 'homedecor_speaker_bottom.png', + 'homedecor_speaker_right.png', + 'homedecor_speaker_left.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 = S("Small Surround Speaker"), + drawtype = "nodebox", + tiles = { + 'homedecor_speaker_top.png', + 'homedecor_speaker_bottom.png', + 'homedecor_speaker_right.png', + 'homedecor_speaker_left.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(), +}) + +minetest.register_node('homedecor:stereo', { + description = S("Stereo Receiver"), + tiles = { 'homedecor_stereo_top.png', + 'homedecor_stereo_bottom.png', + 'homedecor_stereo_right.png', + 'homedecor_stereo_left.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:projection_screen', { + description = S("Projection Screen Material"), + drawtype = 'signlike', + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:television', { + description = S("Small CRT Television"), + tiles = { 'homedecor_television_top.png', + 'homedecor_television_bottom.png', + 'homedecor_television_right.png', + 'homedecor_television_left.png', + 'homedecor_television_back.png', + { name="homedecor_television_front_animated.png", + animation={ + type="vertical_frames", + aspect_w=16, + aspect_h=16, + length=80.0 + } + } + }, + sunlight_propagates = false, + paramtype = "light", + paramtype2 = "facedir", + walkable = true, + light_source = LIGHT_MAX - 1, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), +}) + diff --git a/init.lua b/init.lua index 43c4fa7..fcfe507 100644 --- a/init.lua +++ b/init.lua @@ -1,5 +1,5 @@ -- Home Decor mod by VanessaE --- 2012-09-30 +-- 2013-03-17 -- -- Mostly my own code, with bits and pieces lifted from Minetest's default -- lua files and from ironzorg's flowers mod. Many thanks to GloopMaster @@ -8,7 +8,7 @@ -- The code for ovens, nightstands, refrigerators are basically modified -- copies of the code for chests and furnaces. -- --- License: LGPL +-- License: LGPL 2.0 or higher -- local DEBUG = 0 @@ -59,774 +59,11 @@ function homedecor_node_is_owned(pos, placer) end end --- Nodes - -minetest.register_node('homedecor:shingles_wood', { - description = S("Wood Shingles"), - drawtype = 'raillike', - tiles = { '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 = S("Glass Skylight"), - drawtype = 'raillike', - tiles = { 'default_glass.png' }, - wield_image = 'default_glass.png', - inventory_image = 'default_glass.png', - paramtype = 'light', - sunlight_propagates = true, - walkable = true, - groups = { snappy = 3 }, - sounds = default.node_sound_leaves_defaults(), -}) - -minetest.register_node('homedecor:shingles_asphalt', { - description = S("Asphalt Shingles"), - drawtype = 'raillike', - tiles = { '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 = S("Terracotta Roofing"), - drawtype = 'raillike', - tiles = { '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 = S("Projection Screen Material"), - drawtype = 'signlike', - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:ceiling_paint', { - description = S("Textured Ceiling Paint"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:ceiling_tile', { - description = S("Drop-Ceiling Tile"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:rug_small', { - description = S("Small Throw Rug"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:rug_large', { - description = S("Large Area Rug"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, - }) - -minetest.register_node('homedecor:glass_table_large', { - description = S("Large Glass Table Piece"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:glass_table_small_round', { - description = S("Glass Table (Small, Round)"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:glass_table_small_square', { - description = S("Glass Table (Small, Square)"), - drawtype = 'signlike', - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node("homedecor:table_legs_brass", { - description = S("Brass Table Legs"), - drawtype = "plantlike", - tiles = {"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 = S("Brass Table Legs"), - drawtype = "plantlike", - tiles = {"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:stereo', { - description = S("Stereo Receiver"), - tiles = { 'homedecor_stereo_top.png', - 'homedecor_stereo_bottom.png', - 'homedecor_stereo_right.png', - 'homedecor_stereo_left.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:utility_table_top', { - description = S("Utility Table"), - tiles = { '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 = - --wall_bottom = - --wall_side = - }, - -}) - -minetest.register_node('homedecor:utility_table_legs', { - description = S("Legs for Utility Table"), - tiles = { '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 = S("Terracotta Flower Pot"), - tiles = { '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 = S("Black Plastic Flower Pot"), - tiles = { '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 = S("Green Plastic Flower Pot"), - tiles = { '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 = S("Wooden Tabletop piece"), - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:wood_table_small_round', { - description = S("Wooden Tabletop (Small, Round)"), - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:wood_table_small_square', { - description = S("Wooden Tabletop (Small, Square)"), - tiles = { '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 = - --wall_bottom = - --wall_side = - }, -}) - -minetest.register_node('homedecor:shutter_black', { - description = S("Wooden Shutter (Black)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_mahogany', { - description = S("Wooden Shutter (Unpainted Mahogany)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_oak', { - description = S("Wooden Shutter (Unpainted Oak)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_dark_grey', { - description = S("Wooden Shutter (Dark Grey)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_forest_green', { - description = S("Wooden Shutter (Forest Green)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_grey', { - description = S("Wooden Shutter (Grey)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_light_blue', { - description = S("Wooden Shutter (Light Blue)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_purple', { - description = S("Wooden Shutter (Purple)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_red', { - description = S("Wooden Shutter (Red)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_white', { - description = S("Wooden Shutter (White)"), - tiles = { '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 = = - }, -}) - -minetest.register_node('homedecor:shutter_yellow', { - description = S("Wooden Shutter (Yellow)"), - tiles = { '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 = = - }, -}) - - -minetest.register_node('homedecor:utilitytable2', { - description = S("Utility table mk2"), - tiles = { '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(), -}) - --- 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 = S("Brass Pole"), - drawtype = "nodebox", - tiles = {"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 = S("Wrought Iron Pole"), - drawtype = "nodebox", - tiles = {"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:speaker', { - description = S("Large Stereo Speaker"), - tiles = { 'homedecor_speaker_top.png', - 'homedecor_speaker_bottom.png', - 'homedecor_speaker_right.png', - 'homedecor_speaker_left.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 = S("Small Surround Speaker"), - drawtype = "nodebox", - tiles = { - 'homedecor_speaker_top.png', - 'homedecor_speaker_bottom.png', - 'homedecor_speaker_right.png', - 'homedecor_speaker_left.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(), -}) - --- - -local curtaincolors = { - "red", - "green", - "blue", - "white", - "pink", - "violet" -} - -for c in ipairs(curtaincolors) do - local color = S(curtaincolors[c]) - -minetest.register_node("homedecor:curtain_"..color, { - description = S("Curtains (%s)"):format(color), - tiles = { "homedecor_curtain_"..color..".png" }, - inventory_image = "homedecor_curtain_"..color..".png", - wield_image = "homedecor_curtain_"..color..".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 = = - }, -}) - -end +dofile(minetest.get_modpath("homedecor").."/nodes.lua") -- the catch-all for all misc nodes +dofile(minetest.get_modpath("homedecor").."/tables.lua") +dofile(minetest.get_modpath("homedecor").."/electronics.lua") +dofile(minetest.get_modpath("homedecor").."/shutters.lua") +dofile(minetest.get_modpath("homedecor").."/shingles.lua") dofile(minetest.get_modpath("homedecor").."/door_models.lua") dofile(minetest.get_modpath("homedecor").."/door_nodes.lua") @@ -839,7 +76,6 @@ dofile(minetest.get_modpath("homedecor").."/kitchen_cabinet.lua") dofile(minetest.get_modpath("homedecor").."/refrigerator.lua") dofile(minetest.get_modpath("homedecor").."/oven.lua") dofile(minetest.get_modpath("homedecor").."/nightstands.lua") -dofile(minetest.get_modpath("homedecor").."/television.lua") dofile(minetest.get_modpath("homedecor").."/crafts.lua") diff --git a/nodes.lua b/nodes.lua new file mode 100644 index 0000000..0b0411c --- /dev/null +++ b/nodes.lua @@ -0,0 +1,228 @@ +-- Various misc. nodes + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) +else + S = function ( s ) return s end +end + +minetest.register_node('homedecor:ceiling_paint', { + description = S("Textured Ceiling Paint"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:ceiling_tile', { + description = S("Drop-Ceiling Tile"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:rug_small', { + description = S("Small Throw Rug"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:rug_large', { + description = S("Large Area Rug"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, + }) + +minetest.register_node('homedecor:flower_pot_terracotta', { + description = S("Terracotta Flower Pot"), + tiles = { '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 = S("Black Plastic Flower Pot"), + tiles = { '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 = S("Green Plastic Flower Pot"), + tiles = { '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(), +}) + +-- 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 = S("Brass Pole"), + drawtype = "nodebox", + tiles = {"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 = S("Wrought Iron Pole"), + drawtype = "nodebox", + tiles = {"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, +}) + +-- + +local curtaincolors = { + "red", + "green", + "blue", + "white", + "pink", + "violet" +} + +for c in ipairs(curtaincolors) do + local color = S(curtaincolors[c]) + +minetest.register_node("homedecor:curtain_"..color, { + description = S("Curtains (%s)"):format(color), + tiles = { "homedecor_curtain_"..color..".png" }, + inventory_image = "homedecor_curtain_"..color..".png", + wield_image = "homedecor_curtain_"..color..".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 = = + }, +}) + +end + diff --git a/shingles.lua b/shingles.lua new file mode 100644 index 0000000..ae92f9b --- /dev/null +++ b/shingles.lua @@ -0,0 +1,65 @@ +-- Various kidns of shingles + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) +else + S = function ( s ) return s end +end + +minetest.register_node('homedecor:shingles_wood', { + description = S("Wood Shingles"), + drawtype = 'raillike', + tiles = { '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 = S("Glass Skylight"), + drawtype = 'raillike', + tiles = { 'default_glass.png' }, + wield_image = 'default_glass.png', + inventory_image = 'default_glass.png', + paramtype = 'light', + sunlight_propagates = true, + walkable = true, + groups = { snappy = 3 }, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node('homedecor:shingles_asphalt', { + description = S("Asphalt Shingles"), + drawtype = 'raillike', + tiles = { '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 = S("Terracotta Roofing"), + drawtype = 'raillike', + tiles = { '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', + +}) + diff --git a/shutters.lua b/shutters.lua new file mode 100644 index 0000000..8deff28 --- /dev/null +++ b/shutters.lua @@ -0,0 +1,219 @@ +-- Various kinds of window shutters + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) +else + S = function ( s ) return s end +end + +minetest.register_node('homedecor:shutter_black', { + description = S("Wooden Shutter (Black)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_mahogany', { + description = S("Wooden Shutter (Unpainted Mahogany)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_oak', { + description = S("Wooden Shutter (Unpainted Oak)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_dark_grey', { + description = S("Wooden Shutter (Dark Grey)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_forest_green', { + description = S("Wooden Shutter (Forest Green)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_grey', { + description = S("Wooden Shutter (Grey)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_light_blue', { + description = S("Wooden Shutter (Light Blue)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_purple', { + description = S("Wooden Shutter (Purple)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_red', { + description = S("Wooden Shutter (Red)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_white', { + description = S("Wooden Shutter (White)"), + tiles = { '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 = = + }, +}) + +minetest.register_node('homedecor:shutter_yellow', { + description = S("Wooden Shutter (Yellow)"), + tiles = { '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 = = + }, +}) diff --git a/tables.lua b/tables.lua new file mode 100644 index 0000000..fa0868b --- /dev/null +++ b/tables.lua @@ -0,0 +1,204 @@ +-- Various kinds of tables + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if (minetest.get_modpath("intllib")) then + dofile(minetest.get_modpath("intllib").."/intllib.lua") + S = intllib.Getter(minetest.get_current_modname()) +else + S = function ( s ) return s end +end + +minetest.register_node('homedecor:glass_table_large', { + description = S("Large Glass Table Piece"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:glass_table_small_round', { + description = S("Glass Table (Small, Round)"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:glass_table_small_square', { + description = S("Glass Table (Small, Square)"), + drawtype = 'signlike', + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:utility_table_top', { + description = S("Utility Table"), + tiles = { '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 = + --wall_bottom = + --wall_side = + }, + +}) + +minetest.register_node('homedecor:wood_table_large', { + description = S("Wooden Tabletop piece"), + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:wood_table_small_round', { + description = S("Wooden Tabletop (Small, Round)"), + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +minetest.register_node('homedecor:wood_table_small_square', { + description = S("Wooden Tabletop (Small, Square)"), + tiles = { '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 = + --wall_bottom = + --wall_side = + }, +}) + +-- Various kinds of table legs + +minetest.register_node("homedecor:table_legs_brass", { + description = S("Brass Table Legs"), + drawtype = "plantlike", + tiles = {"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 = S("Brass Table Legs"), + drawtype = "plantlike", + tiles = {"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:utility_table_legs', { + description = S("Legs for Utility Table"), + drawtype = "plantlike", + tiles = { '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", + walkable = false, + groups = { snappy = 3 }, + sounds = default.node_sound_leaves_defaults(), +}) + diff --git a/television.lua b/television.lua deleted file mode 100644 index f95823b..0000000 --- a/television.lua +++ /dev/null @@ -1,36 +0,0 @@ --- This file provides a semi-animated television. - --- Boilerplate to support localized strings if intllib mod is installed. -local S -if (minetest.get_modpath("intllib")) then - dofile(minetest.get_modpath("intllib").."/intllib.lua") - S = intllib.Getter(minetest.get_current_modname()) -else - S = function ( s ) return s end -end - -minetest.register_node('homedecor:television', { - description = S("Small CRT Television"), - tiles = { 'homedecor_television_top.png', - 'homedecor_television_bottom.png', - 'homedecor_television_right.png', - 'homedecor_television_left.png', - 'homedecor_television_back.png', - { name="homedecor_television_front_animated.png", - animation={ - type="vertical_frames", - aspect_w=16, - aspect_h=16, - length=80.0 - } - } - }, - sunlight_propagates = false, - paramtype = "light", - paramtype2 = "facedir", - walkable = true, - light_source = LIGHT_MAX - 1, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), -}) -