mirror of
https://github.com/minefaco/stripped_tree.git
synced 2024-07-04 15:05:17 +02:00
Optional chisel or axes.
This commit is contained in:
parent
173a8e7468
commit
4549fad86e
@ -15,53 +15,60 @@ function stripped_tree.register_trunk(mod_name,trunk_names)
|
|||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
on_place = minetest.rotate_node,
|
on_place = minetest.rotate_node,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = mod_name..":"..name,
|
||||||
|
recipe = {{"","default:tree_bark",""},
|
||||||
|
{"default:tree_bark",mod_name..":stripped_" .. name,"default:tree_bark"},
|
||||||
|
{"","default:tree_bark",""}}
|
||||||
|
})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--function to override axes
|
--function to override axes
|
||||||
function stripped_tree.register_axes(mod_n,axe_types)
|
if ENABLE_CHISEL ~= true then
|
||||||
for _, axe_name in ipairs(axe_types) do
|
function stripped_tree.register_axes(mod_n,axe_types)
|
||||||
minetest.override_item(mod_n..":" .. axe_name, {
|
for _, axe_name in ipairs(axe_types) do
|
||||||
on_place = function(itemstack, user, pointed_thing)
|
minetest.override_item(mod_n..":" .. axe_name, {
|
||||||
if pointed_thing.type ~= "node" then
|
on_place = function(itemstack, user, pointed_thing)
|
||||||
return
|
if pointed_thing.type ~= "node" then
|
||||||
end
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local pos = pointed_thing.under
|
local pos = pointed_thing.under
|
||||||
local pname = user:get_player_name()
|
local pname = user:get_player_name()
|
||||||
|
|
||||||
if minetest.is_protected(pos, pname) then
|
if minetest.is_protected(pos, pname) then
|
||||||
minetest.record_protection_violation(pos, pname)
|
minetest.record_protection_violation(pos, pname)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local node = minetest.get_node(pos).name
|
local node = minetest.get_node(pos).name
|
||||||
local mod_name, node_name = unpack(node:split(":"))
|
local mod_name, node_name = unpack(node:split(":"))
|
||||||
local has_stripped = minetest.registered_nodes[mod_name..":".."stripped_"..node_name]
|
local has_stripped = minetest.registered_nodes[mod_name..":".."stripped_"..node_name]
|
||||||
|
|
||||||
|
|
||||||
if has_stripped then
|
if has_stripped then
|
||||||
local old_node = minetest.get_node(pos)
|
local old_node = minetest.get_node(pos)
|
||||||
local stripped =mod_name..":".."stripped_"..node_name
|
local stripped =mod_name..":".."stripped_"..node_name
|
||||||
minetest.swap_node(pos,{name=stripped,param2=old_node.param2})
|
minetest.swap_node(pos,{name=stripped,param2=old_node.param2})
|
||||||
--itemstack:add_wear(65535 / 299) this is not useful at moment.
|
--itemstack:add_wear(65535 / 299) this is not useful at moment.
|
||||||
|
|
||||||
if not creative_mode then
|
if not creative_mode then
|
||||||
local inv = user:get_inventory()
|
local inv = user:get_inventory()
|
||||||
--check for room in inv, if not, drop item
|
--check for room in inv, if not, drop item
|
||||||
if inv:room_for_item("main", "default:tree_bark") then
|
if inv:room_for_item("main", "default:tree_bark") then
|
||||||
inv:add_item("main", {name="default:tree_bark"})
|
inv:add_item("main", {name="default:tree_bark"})
|
||||||
else
|
else
|
||||||
minetest.add_item(pos, "default:tree_bark")
|
minetest.add_item(pos, "default:tree_bark")
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
||||||
return itemstack
|
end,
|
||||||
end
|
})
|
||||||
|
end
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
--register alias to support old tool
|
|
||||||
minetest.register_alias("chisel_tree:chisel", "default:axe_steel")
|
|
||||||
|
Loading…
Reference in New Issue
Block a user