mirror of
https://github.com/minetest-mods/jumping.git
synced 2024-11-16 06:50:17 +01:00
Use on_punch instead of register_on_punchnode
This commit is contained in:
parent
ec5e0d1b8a
commit
002f408185
118
jumping/init.lua
118
jumping/init.lua
|
@ -17,103 +17,29 @@ local cushionbox = {
|
|||
}
|
||||
}
|
||||
|
||||
minetest.register_node("jumping:trampoline1", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay1.png"
|
||||
},
|
||||
groups = {dig_immediate=2, bouncy=30, fall_damage_add_percent=-70},
|
||||
})
|
||||
local trampoline_punch = function(pos, node)
|
||||
local id = string.sub(node.name, #node.name)
|
||||
id = id + 1
|
||||
if id == 7 then id = 1 end
|
||||
minetest.env:add_node(pos, {name = string.sub(node.name, 1, #node.name - 1)..id})
|
||||
end
|
||||
|
||||
minetest.register_node("jumping:trampoline2", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay2.png"
|
||||
},
|
||||
drop = "jumping:trampoline1",
|
||||
groups = {not_in_creative_inventory = 1, dig_immediate=2, bouncy=50, fall_damage_add_percent=-70},
|
||||
})
|
||||
|
||||
minetest.register_node("jumping:trampoline3", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay3.png"
|
||||
},
|
||||
drop = "jumping:trampoline1",
|
||||
groups = {not_in_creative_inventory = 1, dig_immediate=2, bouncy=70, fall_damage_add_percent=-70},
|
||||
})
|
||||
|
||||
minetest.register_node("jumping:trampoline4", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay4.png"
|
||||
},
|
||||
drop = "jumping:trampoline1",
|
||||
groups = {not_in_creative_inventory = 1, dig_immediate=2, bouncy=90, fall_damage_add_percent=-70},
|
||||
})
|
||||
|
||||
minetest.register_node("jumping:trampoline5", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay5.png"
|
||||
},
|
||||
drop = "jumping:trampoline1",
|
||||
groups = {not_in_creative_inventory = 1, dig_immediate=2, bouncy=100, fall_damage_add_percent=-70},
|
||||
})
|
||||
|
||||
minetest.register_node("jumping:trampoline6", {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay6.png"
|
||||
},
|
||||
drop = "jumping:trampoline1",
|
||||
groups = {not_in_creative_inventory = 1, dig_immediate=2, bouncy=110, fall_damage_add_percent=-70},
|
||||
})
|
||||
|
||||
minetest.register_on_punchnode(function (pos, node)
|
||||
if string.find(node.name, "jumping:trampoline") then
|
||||
local id = string.sub(node.name, #node.name) --get number
|
||||
id = id + 1
|
||||
if id == 7 then id = 1 end
|
||||
minetest.env:add_node(pos, {name = string.sub(node.name, 1, #node.name - 1)..id})
|
||||
end
|
||||
end)
|
||||
for i = 1, 6 do
|
||||
minetest.register_node("jumping:trampoline"..i, {
|
||||
description = "Trampoline",
|
||||
drawtype = "nodebox",
|
||||
node_box = trampolinebox,
|
||||
selection_box = trampolinebox,
|
||||
paramtype = "light",
|
||||
on_punch = trampoline_punch,
|
||||
tiles = {
|
||||
"jumping_trampoline_top.png",
|
||||
"jumping_trampoline_bottom.png",
|
||||
"jumping_trampoline_sides.png^jumping_trampoline_sides_overlay"..i..".png"
|
||||
},
|
||||
groups = {dig_immediate=2, bouncy=20+i*20, fall_damage_add_percent=-70},
|
||||
})
|
||||
end
|
||||
|
||||
minetest.register_node("jumping:cushion", {
|
||||
description = "Cushion",
|
||||
|
|
Loading…
Reference in New Issue
Block a user