diff --git a/homedecor/crafts.lua b/homedecor/crafts.lua index a31603e9..4e48a046 100644 --- a/homedecor/crafts.lua +++ b/homedecor/crafts.lua @@ -2619,3 +2619,12 @@ minetest.register_craft({ }, }) +minetest.register_craft({ + output = "homedecor:toaster", + recipe = { + { "default:steel_ingot", "homedecor:heating_element", "default:steel_ingot" }, + { "default:steel_ingot", "homedecor:heating_element", "default:steel_ingot" } + }, +}) + + diff --git a/homedecor/misc-nodes.lua b/homedecor/misc-nodes.lua index 6941e087..5f2b7cd7 100644 --- a/homedecor/misc-nodes.lua +++ b/homedecor/misc-nodes.lua @@ -1405,3 +1405,63 @@ minetest.register_node("homedecor:piano_right", { fixed = { 0, 0, 0, 0, 0, 0 } } }) + +minetest.register_node("homedecor:toaster", { + description = "Toaster", + tiles = { + "homedecor_toaster_top.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png" + }, + inventory_image = "homedecor_toaster_inv.png", + drawtype = "nodebox", + paramtype = "light", + paramtype2 = "facedir", + groups = { snappy=3 }, + node_box = { + type = "fixed", + fixed = { + {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 + }, + }, + on_rightclick = function(pos, node, clicker) + local fdir = node.param2 + minetest.set_node(pos, { name = "homedecor:toaster_loaf", param2 = fdir }) + minetest.sound_play("toaster", { + pos = pos, + gain = 1.0, + max_hear_distance = 5 + }) + end +}) + +minetest.register_node("homedecor:toaster_loaf", { + tiles = { + "homedecor_toaster_toploaf.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png" + }, + drawtype = "nodebox", + paramtype = "light", + paramtype2 = "facedir", + groups = { snappy=3, not_in_creative_inventory=1 }, + node_box = { + type = "fixed", + fixed = { + {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 + {-0.03125, -0.3125, -0.0935, 0, -0.25, 0.0935}, -- NodeBox2 + {0.0625, -0.3125, -0.0935, 0.0935, -0.25, 0.0935}, -- NodeBox3 + }, + }, + on_rightclick = function(pos, node, clicker) + local fdir = node.param2 + minetest.set_node(pos, { name = "homedecor:toaster", param2 = fdir }) + end +}) + diff --git a/homedecor/sounds/toaster.ogg b/homedecor/sounds/toaster.ogg new file mode 100644 index 00000000..c3d5a80b Binary files /dev/null and b/homedecor/sounds/toaster.ogg differ diff --git a/homedecor/textures/homedecor_toaster_inv.png b/homedecor/textures/homedecor_toaster_inv.png new file mode 100644 index 00000000..f5df038d Binary files /dev/null and b/homedecor/textures/homedecor_toaster_inv.png differ diff --git a/homedecor/textures/homedecor_toaster_sides.png b/homedecor/textures/homedecor_toaster_sides.png new file mode 100644 index 00000000..33729b82 Binary files /dev/null and b/homedecor/textures/homedecor_toaster_sides.png differ diff --git a/homedecor/textures/homedecor_toaster_top.png b/homedecor/textures/homedecor_toaster_top.png new file mode 100644 index 00000000..7f6b198c Binary files /dev/null and b/homedecor/textures/homedecor_toaster_top.png differ diff --git a/homedecor/textures/homedecor_toaster_toploaf.png b/homedecor/textures/homedecor_toaster_toploaf.png new file mode 100644 index 00000000..fbcdd7ce Binary files /dev/null and b/homedecor/textures/homedecor_toaster_toploaf.png differ