summaryrefslogtreecommitdiff
path: root/homedecor
diff options
context:
space:
mode:
Diffstat (limited to 'homedecor')
-rw-r--r--homedecor/books.lua2
-rw-r--r--homedecor/crafts.lua22
-rw-r--r--homedecor/exterior.lua7
-rw-r--r--homedecor/gastronomy.lua10
-rw-r--r--homedecor/handlers/expansion.lua2
-rw-r--r--homedecor/init.lua8
-rw-r--r--homedecor/misc-nodes.lua2
7 files changed, 36 insertions, 17 deletions
diff --git a/homedecor/books.lua b/homedecor/books.lua
index 639ba8d..a480d68 100644
--- a/homedecor/books.lua
+++ b/homedecor/books.lua
@@ -89,7 +89,7 @@ for _, c in ipairs(bookcolors) do
if data.title and data.title ~= "" then
meta:set_string("infotext", data.title)
end
- if not homedecor.expect_infinite_stacks then
+ if not creative.is_enabled_for(plname) then
itemstack:take_item()
end
return itemstack
diff --git a/homedecor/crafts.lua b/homedecor/crafts.lua
index 7df8695..a0b9bfb 100644
--- a/homedecor/crafts.lua
+++ b/homedecor/crafts.lua
@@ -3014,10 +3014,28 @@ minetest.register_craft({
})
minetest.register_craft({
- output = "homedecor:stained_glass",
+ output = "homedecor:stained_glass 3",
recipe = {
{"", "dye:blue", ""},
- {"dye:red", "xpanes:pane", "dye:green"},
+ {"dye:red", "xpanes:pane_flat", "dye:green"},
+ {"", "dye:yellow", ""},
+ },
+})
+
+minetest.register_craft({
+ output = "homedecor:stained_glass 2",
+ recipe = {
+ {"", "dye:blue", ""},
+ {"dye:red", "cottages:glass_pane_side", "dye:green"},
+ {"", "dye:yellow", ""},
+ },
+})
+
+minetest.register_craft({
+ output = "homedecor:stained_glass 2",
+ recipe = {
+ {"", "dye:blue", ""},
+ {"dye:red", "cottages:glass_pane", "dye:green"},
{"", "dye:yellow", ""},
},
})
diff --git a/homedecor/exterior.lua b/homedecor/exterior.lua
index 074fa95..4eed35c 100644
--- a/homedecor/exterior.lua
+++ b/homedecor/exterior.lua
@@ -251,6 +251,7 @@ homedecor.register("swing", {
place_on = "bottom"
},
on_place = function(itemstack, placer, pointed_thing)
+ local placer_name = placer:get_player_name() or ""
local isceiling, pos = homedecor.find_ceiling(itemstack, placer, pointed_thing)
if isceiling then
local height = 0
@@ -263,7 +264,7 @@ homedecor.register("swing", {
if not testreg or not testreg.buildable_to then
if i < 1 then
- minetest.chat_send_player(placer:get_player_name(), "No room under there to hang a swing.")
+ minetest.chat_send_player(placer_name, "No room under there to hang a swing.")
return itemstack
else
break
@@ -279,11 +280,11 @@ homedecor.register("swing", {
minetest.set_node({ x=pos.x, y=pos.y-height, z=pos.z }, { name = "homedecor:swing", param2 = fdir })
- if not homedecor.expect_infinite_stacks then
+ if not creative.is_enabled_for(placer_name) then
itemstack:take_item()
end
else
- minetest.chat_send_player(placer:get_player_name(), "You have to point at the bottom side of an overhanging object to place a swing.")
+ minetest.chat_send_player(placer_name, "You have to point at the bottom side of an overhanging object to place a swing.")
end
return itemstack
end,
diff --git a/homedecor/gastronomy.lua b/homedecor/gastronomy.lua
index 51f6526..d261700 100644
--- a/homedecor/gastronomy.lua
+++ b/homedecor/gastronomy.lua
@@ -213,20 +213,24 @@ homedecor.register("soda_machine", {
sounds = default.node_sound_wood_defaults(),
on_rotate = screwdriver.rotate_simple,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
+ local playername = clicker:get_player_name()
local wielditem = clicker:get_wielded_item()
local wieldname = wielditem:get_name()
local fdir_to_fwd = { {0, -1}, {-1, 0}, {0, 1}, {1, 0} }
local fdir = node.param2
local pos_drop = { x=pos.x+fdir_to_fwd[fdir+1][1], y=pos.y, z=pos.z+fdir_to_fwd[fdir+1][2] }
if wieldname == "homedecor:coin" then
- wielditem:take_item()
- clicker:set_wielded_item(wielditem)
minetest.spawn_item(pos_drop, "homedecor:soda_can")
minetest.sound_play("insert_coin", {
pos=pos, max_hear_distance = 5
})
+ if not creative.is_enabled_for(playername) then
+ wielditem:take_item()
+ clicker:set_wielded_item(wielditem)
+ return wielditem
+ end
else
- minetest.chat_send_player(clicker:get_player_name(), S("Please insert a coin in the machine."))
+ minetest.chat_send_player(playername, S("Please insert a coin in the machine."))
end
end
})
diff --git a/homedecor/handlers/expansion.lua b/homedecor/handlers/expansion.lua
index 2c9b7dd..c010bf4 100644
--- a/homedecor/handlers/expansion.lua
+++ b/homedecor/handlers/expansion.lua
@@ -104,7 +104,7 @@ local function stack(itemstack, placer, fdir, pos, def, pos2, node1, node2, poin
ctrl_node_def.after_place_node(pos, placer, itemstack, pointed_thing)
end
- if not homedecor.expect_infinite_stacks then
+ if not creative.is_enabled_for(placer_name) then
itemstack:take_item()
end
end
diff --git a/homedecor/init.lua b/homedecor/init.lua
index f845c79..e38cd81 100644
--- a/homedecor/init.lua
+++ b/homedecor/init.lua
@@ -11,12 +11,8 @@ local modpath = minetest.get_modpath("homedecor")
local S = homedecor_i18n.gettext
-homedecor = {
- modpath = modpath,
-
- -- infinite stacks
- expect_infinite_stacks = minetest.settings:get_bool("creative_mode") and not minetest.get_modpath("unified_inventory")
-}
+homedecor = {}
+homedecor.modpath = modpath
-- Determine if the item being pointed at is the underside of a node (e.g a ceiling)
function homedecor.find_ceiling(itemstack, placer, pointed_thing)
diff --git a/homedecor/misc-nodes.lua b/homedecor/misc-nodes.lua
index 3eb4240..72830d5 100644
--- a/homedecor/misc-nodes.lua
+++ b/homedecor/misc-nodes.lua
@@ -396,7 +396,7 @@ local n = { 1, 2 }
for _, i in ipairs(n) do
homedecor.register("picture_frame"..i, {
- description = S("Picture Frame"),
+ description = S("Picture Frame "..i),
mesh = "homedecor_picture_frame.obj",
tiles = {
"homedecor_picture_frame_image"..i..".png",