add 'pie.quarters' setting (thx Slightly)

This commit is contained in:
tenplus1 2023-04-08 07:57:28 +01:00
parent ee728d3f95
commit ceb3b8ff13
3 changed files with 52 additions and 16 deletions

View File

@ -33,5 +33,6 @@ Change log:
- 0.7 - Added aliases for older pie mod by Mitroman - 0.7 - Added aliases for older pie mod by Mitroman
- 0.8 - Redo textures, make default optional, initial mineclone2 support - 0.8 - Redo textures, make default optional, initial mineclone2 support
- 0.9 - Added API for mods to create their own cakes, added more milk replacements - 0.9 - Added API for mods to create their own cakes, added more milk replacements
- 1.0 - Added 'pie.quarters' setting to show pie quarters while eating instead of slices (thanks Slightly)
Lucky Blocks: 12 Lucky Blocks: 12

View File

@ -7,6 +7,7 @@ local stmod = minetest.global_exists("stamina")
local defmod = minetest.get_modpath("default") local defmod = minetest.get_modpath("default")
local mclhunger = minetest.get_modpath("mcl_hunger") local mclhunger = minetest.get_modpath("mcl_hunger")
local screwdriver_exists = minetest.get_modpath("screwdriver") local screwdriver_exists = minetest.get_modpath("screwdriver")
local quarters = minetest.settings:get_bool("pie.quarters")
-- sound support -- sound support
local cake_sound = defmod and default.node_sound_dirt_defaults() local cake_sound = defmod and default.node_sound_dirt_defaults()
@ -119,6 +120,11 @@ end
-- register pie bits -- register pie bits
pie.register_pie = function(pie, desc) pie.register_pie = function(pie, desc)
local nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, -0.45, 0.45, 0, 0.45}
}
-- full pie -- full pie
minetest.register_node(":pie:" .. pie .. "_0", { minetest.register_node(":pie:" .. pie .. "_0", {
description = desc, description = desc,
@ -133,10 +139,7 @@ pie.register_pie = function(pie, desc)
inventory_image = pie .. "_inv.png", inventory_image = pie .. "_inv.png",
wield_image = pie .. "_inv.png", wield_image = pie .. "_inv.png",
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = nodebox,
type = "fixed",
fixed = {-0.45, -0.5, -0.45, 0.45, 0, 0.45}
},
sounds = cake_sound, sounds = cake_sound,
on_rotate = screwdriver_exists and screwdriver.rotate_simple, on_rotate = screwdriver_exists and screwdriver.rotate_simple,
@ -146,6 +149,21 @@ pie.register_pie = function(pie, desc)
end end
}) })
if quarters then
nodebox = {
type = "fixed",
fixed = {
{-0.45, -0.5, -0.45, 0, 0, 0.45},
{-0.45, -0.5, 0, 0.45, 0, 0.45}
}
}
else
nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, -0.25, 0.45, 0, 0.45}
}
end
-- 3/4 pie -- 3/4 pie
minetest.register_node(":pie:" .. pie .. "_1", { minetest.register_node(":pie:" .. pie .. "_1", {
description = "3/4 " .. desc, description = "3/4 " .. desc,
@ -160,10 +178,7 @@ pie.register_pie = function(pie, desc)
groups = {not_in_creative_inventory = 1}, groups = {not_in_creative_inventory = 1},
drop = {}, drop = {},
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = nodebox,
type = "fixed",
fixed = {-0.45, -0.5, -0.25, 0.45, 0, 0.45}
},
sounds = cake_sound, sounds = cake_sound,
on_rotate = screwdriver_exists and screwdriver.rotate_simple, on_rotate = screwdriver_exists and screwdriver.rotate_simple,
@ -173,6 +188,18 @@ pie.register_pie = function(pie, desc)
end end
}) })
if quarters then
nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, -.45, 0, 0, 0.45}
}
else
nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, 0.0, 0.45, 0, 0.45}
}
end
-- 1/2 pie -- 1/2 pie
minetest.register_node(":pie:" .. pie .. "_2", { minetest.register_node(":pie:" .. pie .. "_2", {
description = "Half " .. desc, description = "Half " .. desc,
@ -187,10 +214,7 @@ pie.register_pie = function(pie, desc)
groups = {not_in_creative_inventory = 1}, groups = {not_in_creative_inventory = 1},
drop = {}, drop = {},
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = nodebox,
type = "fixed",
fixed = {-0.45, -0.5, 0.0, 0.45, 0, 0.45}
},
sounds = cake_sound, sounds = cake_sound,
on_rotate = screwdriver_exists and screwdriver.rotate_simple, on_rotate = screwdriver_exists and screwdriver.rotate_simple,
@ -200,6 +224,18 @@ pie.register_pie = function(pie, desc)
end end
}) })
if quarters then
nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, 0.0, 0.0, 0, 0.45}
}
else
nodebox = {
type = "fixed",
fixed = {-0.45, -0.5, 0.25, 0.45, 0, 0.45}
}
end
-- 1/4 pie -- 1/4 pie
minetest.register_node(":pie:" .. pie .. "_3", { minetest.register_node(":pie:" .. pie .. "_3", {
description = "Piece of " .. desc, description = "Piece of " .. desc,
@ -214,10 +250,7 @@ pie.register_pie = function(pie, desc)
groups = {not_in_creative_inventory = 1}, groups = {not_in_creative_inventory = 1},
drop = {}, drop = {},
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = nodebox,
type = "fixed",
fixed = {-0.45, -0.5, 0.25, 0.45, 0, 0.45}
},
sounds = cake_sound, sounds = cake_sound,
on_rotate = screwdriver_exists and screwdriver.rotate_simple, on_rotate = screwdriver_exists and screwdriver.rotate_simple,

2
settingtypes.txt Normal file
View File

@ -0,0 +1,2 @@
# Use pie quarters when eating instead of slices
pie.quarters (Pie quarters) bool false