diff --git a/bedroom.lua b/bedroom.lua index ffff7d4..7b7cd56 100644 --- a/bedroom.lua +++ b/bedroom.lua @@ -184,25 +184,6 @@ minetest.register_craft({ {"default:stick", "", ""} } }) - - -local rgb_colors = { - ["black"] = "#000000", - ["red"] = "#FF0000", - ["green"] = "#00FF00", - ["white"] = "#FFFFFF", - ["blue"] = "#0000FF", - ["yellow"] = "#FFFF00", - ["magenta"] = "#FF00FF", - ["cyan"] = "#00FFFF", - ["dark_green"] = "#008000", - ["dark_grey"] = "#808080", - ["grey"] = "#C0C0C0", - ["brown"] = "#A52A2A", - ["orange"] = "#FF4500", - ["pink"] = "#F08080", - ["violet"] = "#4B0082" -} for color, rgb_code in pairs(rgb_colors) do diff --git a/init.lua b/init.lua index fe49597..40b2fb2 100644 --- a/init.lua +++ b/init.lua @@ -1,4 +1,23 @@ cabs_table = {} + +rgb_colors = { + ["black"] = "#000000", + ["red"] = "#FF0000", + ["green"] = "#00FF00", + ["white"] = "#FFFFFF", + ["blue"] = "#0000FF", + ["yellow"] = "#FFFF00", + ["magenta"] = "#FF00FF", + ["cyan"] = "#00FFFF", + ["dark_green"] = "#008000", + ["dark_grey"] = "#808080", + ["grey"] = "#C0C0C0", + ["brown"] = "#A52A2A", + ["orange"] = "#FF4500", + ["pink"] = "#F08080", + ["violet"] = "#4B0082" +} + local modpath = minetest.get_modpath("luxury_decor") dofile(modpath.."/api/sitting.lua") diff --git a/kitchen_furniture.lua b/kitchen_furniture.lua index 10f7ad7..c95f1c0 100644 --- a/kitchen_furniture.lua +++ b/kitchen_furniture.lua @@ -44,7 +44,6 @@ cabinets.open = function (pos, node_replace, clicked_button_name, formspec, soun cabs_table[general_name].inv_list[depart_num][str_pos] = list end if type(depart_data) == "table" and depart_data.button == clicked_button_name then - minetest.debug("TRUE") minetest.sound_play(sounds_play[depart_num], { pos = pos, max_hear_distance = 15 @@ -71,14 +70,13 @@ cabinets.close = function (pos, node_replace, clicked_button_name, formspec, sou local list = inv:get_list(depart_data.listname) local str_pos = tostring(pos.x) .. ", " .. tostring(pos.y) .. ", " .. tostring(pos.z) cabs_table[general_name].inv_list[depart_num][str_pos] = list - if depart_data.button == clicked_button_name then - minetest.sound_play(sounds_play[depart_num], { - pos = pos, - max_hear_distance = 15 - }) - end end - + if type(depart_data) == "table" and depart_data.button == clicked_button_name then + minetest.sound_play(sounds_play[depart_num], { + pos = pos, + max_hear_distance = 15 + }) + end end minetest.remove_node(pos) minetest.set_node(pos, {name=node_replace, param1=node.param1, param2=node.param2}) @@ -335,11 +333,11 @@ cabs_table["kitchen_wooden_cabinet_with_sink"] = { cabs_table["fridge"] = { ["fridge_1"] = { - {mode="closed", button = "fridge1", img_button = "open_button.png"} + {mode="closed", button = "fridge_closed", img_button = "open_button.png"} }, ["fridge_2"] = { - {mode="opened", button = "fridge2", img_button = "close_button.png", listname = "fridge2", inv_size=6*6}, + {mode="opened", button = "fridge_opened", img_button = "close_button.png", listname = "fridge_opened", inv_size=6*6}, not_in_creative_inventory=1 }, diff --git a/lighting.lua b/lighting.lua index 5f8e6f5..26bf588 100644 --- a/lighting.lua +++ b/lighting.lua @@ -295,26 +295,8 @@ minetest.register_node("luxury_decor:luxury_steel_chandelier_on", { end }) - -local plastic_chands_colors = { - ["black"] = "#000000", - ["red"] = "#FF0000", - ["green"] = "#00FF00", - ["white"] = "#FFFFFF", - ["blue"] = "#0000FF", - ["yellow"] = "#FFFF00", - ["magenta"] = "#FF00FF", - ["cyan"] = "#00FFFF", - ["dark_green"] = "#008000", - ["dark_grey"] = "#808080", - ["grey"] = "#C0C0C0", - ["brown"] = "#A52A2A", - ["orange"] = "#FF4500", - ["pink"] = "#F08080", - ["violet"] = "#4B0082" -} -for color, rgb_code in pairs(plastic_chands_colors) do +for color, rgb_code in pairs(rgb_colors) do minetest.register_node("luxury_decor:simple_plastic_"..color.."_chandelier_off", { description = "Simple Plastic Chandelier (with ".. color .. " plastic shades)", visual_scale = 0.5, diff --git a/living_room.lua b/living_room.lua index 22ac43e..700fbac 100644 --- a/living_room.lua +++ b/living_room.lua @@ -503,7 +503,7 @@ for color, rgb_color in pairs(sofas_rgb_colors) do end, after_dig_node = function (pos, oldnode, oldmetadata, digger) local seat = minetest.deserialize(oldmetadata.fields.seat) - if seat then + if seat.busy_by then local player = minetest.get_player_by_name(seat.busy_by) chairs.standup_player(player, pos, seat) end @@ -580,7 +580,7 @@ for ind, sofa_count in pairs({"1", "2", "3", "4", "5"}) do end, after_dig_node = function (pos, oldnode, oldmetadata, digger) local seat = minetest.deserialize(oldmetadata.fields.seat) - if seat then + if seat.busy_by then local player = minetest.get_player_by_name(seat.busy_by) chairs.standup_player(player, pos, seat) end @@ -835,7 +835,7 @@ for ind, footstool_type in pairs({"small", "middle", "long"}) do end, after_dig_node = function (pos, oldnode, oldmetadata, digger) local seat = minetest.deserialize(oldmetadata.fields.seat) - if seat then + if seat.busy_by then local player = minetest.get_player_by_name(seat.busy_by) chairs.standup_player(player, pos, seat) end diff --git a/materials.lua b/materials.lua index d516478..5cba116 100644 --- a/materials.lua +++ b/materials.lua @@ -13,35 +13,26 @@ for _, material in ipairs({"", "jungle_", "pine_"}) do stack_max = 99 }) + minetest.register_craftitem("luxury_decor:" .. material .. "wooden_board", { + description = string.upper(string.sub(material, 1, 1)) .. string.sub(material, 2, -2) .. " Wooden Board", + inventory_image = material .. "wooden_board.png" + }) + minetest.register_craft({ + type = "shapeless", + output = "luxury_decor:" .. material .. "wooden_plank 2", + recipe = {"luxury_decor:" .. material .. "wooden_board", "luxury_decor:saw"}, + replacements = { + {"", "luxury_decor:saw"} + } + }) + minetest.register_craft({ + type = "shapeless", + output = "default:stick 2", + recipe = {"luxury_decor:" .. material .. "wooden_plank", "luxury_decor:saw"}, + replacements = {{"", "luxury_decor:saw"}} + }) end -minetest.register_craft({ - type = "shapeless", - output = "luxury_decor:wooden_plank 2", - recipe = {"luxury_decor:wooden_board", "luxury_decor:saw"}, - replacements = { - {"", "luxury_decor:saw"} - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "luxury_decor:jungle_wooden_plank 2", - recipe = {"luxury_decor:jungle_wooden_board", "luxury_decor:saw"}, - replacements = { - {"", "luxury_decor:saw"} - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "luxury_decor:pine_wooden_plank 2", - recipe = {"luxury_decor:pine_wooden_board", "luxury_decor:saw"}, - replacements = { - {"", "luxury_decor:saw"} - } -}) - minetest.register_craftitem("luxury_decor:bucket_oil", { description = "Bucket Oil", inventory_image = "bucket_oil.png", @@ -208,24 +199,6 @@ minetest.register_craftitem("luxury_decor:copper_and_zinc", { stack_max = 99 }) -minetest.register_craftitem("luxury_decor:wooden_board", { - description = "Wooden Board", - inventory_image = "wooden_board.png", - stack_max = 99 -}) - -minetest.register_craftitem("luxury_decor:jungle_wooden_board", { - description = "Jungle Board", - inventory_image = "jungle_board.png", - stack_max = 99 -}) - -minetest.register_craftitem("luxury_decor:pine_wooden_board", { - description = "Pine Board", - inventory_image = "pine_board.png", - stack_max = 99 -}) - minetest.register_craftitem("luxury_decor:plastic_sheet", { description = "Plastic Sheet", inventory_image = "plastic_sheet.png", @@ -448,21 +421,38 @@ minetest.register_craftitem("luxury_decor:saw", { minetest.register_craft({ type = "shapeless", output = "luxury_decor:wooden_board 3", - recipe = {"stairs:slab_wood", "luxury_decor:saw"} + recipe = {"stairs:slab_wood", "luxury_decor:saw"}, + replacements = {{"", "luxury_decor:saw"}} }) minetest.register_craft({ type = "shapeless", output = "luxury_decor:jungle_wooden_board 3", - recipe = {"stairs:slab_junglewood", "luxury_decor:saw"} + recipe = {"stairs:slab_junglewood", "luxury_decor:saw"}, + replacements = {{"", "luxury_decor:saw"}} }) minetest.register_craft({ type = "shapeless", output = "luxury_decor:pine_wooden_board 3", - recipe = {"stairs:slab_pine_wood", "luxury_decor:saw"} + recipe = {"stairs:slab_pine_wood", "luxury_decor:saw"}, + replacements = {{"", "luxury_decor:saw"}} }) +minetest.register_on_craft(function (itemstack, player, old_craft_grid, craft_inv) + minetest.debug(dump(old_craft_grid)) + for i = 1, #old_craft_grid do + local ud = old_craft_grid[i] + local name = ud:get_name() + if name == "luxury_decor:saw" then + minetest.sound_play("wood_sawing", { + to_player = player:get_player_name() + }) + return + end + end +end) + minetest.register_craft({ type = "shapeless", output = "luxury_decor:saw", diff --git a/sounds/wood_sawing.ogg b/sounds/wood_sawing.ogg new file mode 100644 index 0000000..06c626a Binary files /dev/null and b/sounds/wood_sawing.ogg differ diff --git a/textures/jungle_board.png b/textures/jungle_wooden_board.png similarity index 100% rename from textures/jungle_board.png rename to textures/jungle_wooden_board.png diff --git a/textures/pine_board.png b/textures/pine_wooden_board.png similarity index 100% rename from textures/pine_board.png rename to textures/pine_wooden_board.png