From e2a506031784cc91dcceee3495c8a839b266665d Mon Sep 17 00:00:00 2001 From: D00Med Date: Mon, 21 Aug 2017 20:36:01 +1000 Subject: [PATCH] D00Med commit 21/08/17 >finished apple changes >change coconut drop style >gunpowder now lights fireworks >Npc messages --- mods/fireworks/init.lua | 40 ++++++++++++++++++++-------------------- mods/fruit/init.lua | 18 +++++++++++++++--- mods/mapgen/nodes.lua | 3 +-- mods/mobs_npc/init.lua | 2 ++ mods/mobs_npc/npc.lua | 3 ++- mods/tnt/init.lua | 3 +++ 6 files changed, 43 insertions(+), 26 deletions(-) diff --git a/mods/fireworks/init.lua b/mods/fireworks/init.lua index cca5efe..afd6507 100644 --- a/mods/fireworks/init.lua +++ b/mods/fireworks/init.lua @@ -306,9 +306,9 @@ minetest.register_tool("fireworks:gun", { end }) -local function firework_launch(pos, number) +function firework_launch(pos, name) minetest.remove_node(pos) -local obj = minetest.env:add_entity({x=pos.x, y=pos.y, z=pos.z}, "fireworks:firework_"..number.."_rocket") +local obj = minetest.env:add_entity({x=pos.x, y=pos.y, z=pos.z}, name.."_rocket") minetest.sound_play("firework_whistle", {pos = pos, gain = 0.2, max_hear_distance = 15}) obj:setvelocity({x=0, y=15, z=0}) obj:setacceleration({x=0, y=2, z=0}) @@ -352,11 +352,11 @@ minetest.register_node("fireworks:firework_1", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=255,g=100,b=100}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_1") end end }) @@ -376,11 +376,11 @@ minetest.register_node("fireworks:firework_2", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=100,g=255,b=100}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_2") end end }) @@ -400,11 +400,11 @@ minetest.register_node("fireworks:firework_3", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=100,g=100,b=255}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_3") end end }) @@ -424,11 +424,11 @@ minetest.register_node("fireworks:firework_4", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=255,g=80,b=255}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_4") end end }) @@ -448,11 +448,11 @@ minetest.register_node("fireworks:firework_5", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=225,g=225,b=100}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_5") end end }) @@ -472,11 +472,11 @@ minetest.register_node("fireworks:firework_6", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=255,g=100,b=100}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_6") end end }) @@ -496,11 +496,11 @@ minetest.register_node("fireworks:firework_7", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=100,g=255,b=100}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_7") end end }) @@ -520,11 +520,11 @@ minetest.register_node("fireworks:firework_8", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=100,g=100,b=255}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_8") end end }) @@ -544,11 +544,11 @@ minetest.register_node("fireworks:firework_9", { type = "fixed", fixed = {{-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}}, }, - groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3}, + groups = {snappy=1, oddly_breakable_by_hand=1, dig_immediate=3, firework=1}, color = {r=255,g=80,b=255}, on_rightclick = function(pos, node, clicker) if clicker:get_wielded_item():get_name() == "fire:flint_and_steel" then - firework_launch(pos, "1") + firework_launch(pos, "fireworks:firework_9") end end }) \ No newline at end of file diff --git a/mods/fruit/init.lua b/mods/fruit/init.lua index a438a46..0c264d1 100644 --- a/mods/fruit/init.lua +++ b/mods/fruit/init.lua @@ -14,7 +14,7 @@ minetest.register_node("fruit:leaves_with_mango", { sounds = default.node_sound_leaves_defaults() }) -minetest.register_node("fruit:leaves_with_apple", { +minetest.override_item("default:apple", { description = "Leaves with Apple", drawtype = "allfaces", tiles = { @@ -24,11 +24,23 @@ minetest.register_node("fruit:leaves_with_apple", { groups = {snappy=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1}, drop = "default:leaves", on_destruct = function(pos) - minetest.add_item(pos, "default:apple") + minetest.add_item(pos, "fruit:apple") end, sounds = default.node_sound_leaves_defaults() }) +minetest.register_node("fruit:apple", { + description = "Apple", + drawtype = "plantlike", + tiles = { + "default_apple.png", + }, + paramtype = "light", + groups = {snappy=1, oddly_breakable_by_hand=1}, + on_use = minetest.item_eat(2), + sounds = default.node_sound_leaves_defaults() +}) + minetest.register_node("fruit:cactus_fruit", { description = "Cactus Fruit", @@ -249,7 +261,7 @@ function fruit.register_ores() minetest.register_ore({ ore_type = "scatter", - ore = "fruit:leaves_with_apple", + ore = "default:apple", wherein = "default:leaves", clust_scarcity = 15 * 15 * 15, clust_num_ores = 6, diff --git a/mods/mapgen/nodes.lua b/mods/mapgen/nodes.lua index 6e491d3..d90d36d 100644 --- a/mods/mapgen/nodes.lua +++ b/mods/mapgen/nodes.lua @@ -642,8 +642,7 @@ minetest.register_node("mapgen:palm_leaves_coconut", { }, groups = {snappy = 1, oddly_breakable_by_hand = 1, flammable = 1, dig_immediate = 1, leaves = 1, leafdecay = 3}, sounds = default.node_sound_leaves_defaults(), - on_rightclick = function(pos, node) - minetest.env:set_node(pos, {name="mapgen:palm_leaves"}) + on_destruct = function(pos, oldnode) minetest.env:add_item(pos, "mapgen:coconut") end, }) diff --git a/mods/mobs_npc/init.lua b/mods/mobs_npc/init.lua index 2905557..e676c12 100644 --- a/mods/mobs_npc/init.lua +++ b/mods/mobs_npc/init.lua @@ -89,6 +89,8 @@ minetest.register_abm({ chance = 25, action = function(pos, node) minetest.add_entity({x=pos.x+math.random(-5,5), y=pos.y+0.5, z=pos.z+math.random(-5,5)}, "mobs_npc:npc") + local position = minetest.pos_to_string(pos, 0) + minetest.chat_send_all("And npc spawned at:"..position) end }) diff --git a/mods/mobs_npc/npc.lua b/mods/mobs_npc/npc.lua index fdace1a..9c321d8 100644 --- a/mods/mobs_npc/npc.lua +++ b/mods/mobs_npc/npc.lua @@ -41,7 +41,8 @@ local npc_make_home = function(self, dtime) elseif minetest.get_node({x=pos1.x, y=pos1.y, z=pos1.z+1}).name ~= "air" then minetest.set_node({x=pos1.x, y=pos1.y, z=pos1.z}, {name="villages:colony_deed", param2=4}) end - minetest.chat_send_all("NPC home set!") + local position = minetest.pos_to_string(pos, 0) + minetest.chat_send_all("An NPC found a home at:"..position) end end local npc_go_home = function(self, dtime) diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 8ad1726..6af7740 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -298,10 +298,13 @@ end function tnt.burn(pos, nodename) local name = nodename or minetest.get_node(pos).name local group = minetest.get_item_group(name, "tnt") + local group2 = minetest.get_item_group(name, "firework") if group > 0 then minetest.sound_play("tnt_ignite", {pos = pos}) minetest.set_node(pos, {name = name .. "_burning"}) minetest.get_node_timer(pos):start(1) + elseif group2 > 0 then + firework_launch(pos, name) elseif name == "tnt:gunpowder" then minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) end