D00Med commit 21/08/17

>finished apple changes
>change coconut drop style
>gunpowder now lights fireworks
>Npc messages
master
D00Med 2017-08-21 20:36:01 +10:00
parent 5de698aa2b
commit e2a5060317
6 changed files with 43 additions and 26 deletions

View File

@ -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
})

View File

@ -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,

View File

@ -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,
})

View File

@ -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
})

View File

@ -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)

View File

@ -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