diff --git a/README.md b/README.md index 409da86..1b84a1e 100644 --- a/README.md +++ b/README.md @@ -33,5 +33,6 @@ Change log: - 0.7 - Added aliases for older pie mod by Mitroman - 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 +- 1.0 - Added 'pie.quarters' setting to show pie quarters while eating instead of slices (thanks Slightly) Lucky Blocks: 12 diff --git a/init.lua b/init.lua index cf28036..90b019d 100644 --- a/init.lua +++ b/init.lua @@ -7,6 +7,7 @@ local stmod = minetest.global_exists("stamina") local defmod = minetest.get_modpath("default") local mclhunger = minetest.get_modpath("mcl_hunger") local screwdriver_exists = minetest.get_modpath("screwdriver") +local quarters = minetest.settings:get_bool("pie.quarters") -- sound support local cake_sound = defmod and default.node_sound_dirt_defaults() @@ -119,6 +120,11 @@ end -- register pie bits pie.register_pie = function(pie, desc) + local nodebox = { + type = "fixed", + fixed = {-0.45, -0.5, -0.45, 0.45, 0, 0.45} + } + -- full pie minetest.register_node(":pie:" .. pie .. "_0", { description = desc, @@ -133,10 +139,7 @@ pie.register_pie = function(pie, desc) inventory_image = pie .. "_inv.png", wield_image = pie .. "_inv.png", drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = {-0.45, -0.5, -0.45, 0.45, 0, 0.45} - }, + node_box = nodebox, sounds = cake_sound, on_rotate = screwdriver_exists and screwdriver.rotate_simple, @@ -146,6 +149,21 @@ pie.register_pie = function(pie, desc) 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 minetest.register_node(":pie:" .. pie .. "_1", { description = "3/4 " .. desc, @@ -160,10 +178,7 @@ pie.register_pie = function(pie, desc) groups = {not_in_creative_inventory = 1}, drop = {}, drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = {-0.45, -0.5, -0.25, 0.45, 0, 0.45} - }, + node_box = nodebox, sounds = cake_sound, on_rotate = screwdriver_exists and screwdriver.rotate_simple, @@ -173,6 +188,18 @@ pie.register_pie = function(pie, desc) 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 minetest.register_node(":pie:" .. pie .. "_2", { description = "Half " .. desc, @@ -187,10 +214,7 @@ pie.register_pie = function(pie, desc) groups = {not_in_creative_inventory = 1}, drop = {}, drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = {-0.45, -0.5, 0.0, 0.45, 0, 0.45} - }, + node_box = nodebox, sounds = cake_sound, on_rotate = screwdriver_exists and screwdriver.rotate_simple, @@ -200,6 +224,18 @@ pie.register_pie = function(pie, desc) 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 minetest.register_node(":pie:" .. pie .. "_3", { description = "Piece of " .. desc, @@ -214,10 +250,7 @@ pie.register_pie = function(pie, desc) groups = {not_in_creative_inventory = 1}, drop = {}, drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = {-0.45, -0.5, 0.25, 0.45, 0, 0.45} - }, + node_box = nodebox, sounds = cake_sound, on_rotate = screwdriver_exists and screwdriver.rotate_simple, diff --git a/settingtypes.txt b/settingtypes.txt new file mode 100644 index 0000000..a5a66bc --- /dev/null +++ b/settingtypes.txt @@ -0,0 +1,2 @@ +# Use pie quarters when eating instead of slices +pie.quarters (Pie quarters) bool false