mirror of
https://github.com/minetest/minetest.git
synced 2024-11-23 16:13:46 +01:00
Allow redefining minetest.item_place and the like
This commit is contained in:
parent
f8c2f1cf54
commit
07a5e59ae7
@ -276,6 +276,13 @@ function minetest.node_dig(pos, node, digger)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- This is used to allow mods to redefine minetest.item_place and so on
|
||||||
|
local function redef_wrapper(table, name)
|
||||||
|
return function(...)
|
||||||
|
return table[name](...)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Item definition defaults
|
-- Item definition defaults
|
||||||
--
|
--
|
||||||
@ -295,12 +302,12 @@ minetest.nodedef_default = {
|
|||||||
tool_capabilities = nil,
|
tool_capabilities = nil,
|
||||||
|
|
||||||
-- Interaction callbacks
|
-- Interaction callbacks
|
||||||
on_place = minetest.item_place,
|
on_place = redef_wrapper(minetest, 'item_place'), -- minetest.item_place
|
||||||
on_drop = minetest.item_drop,
|
on_drop = redef_wrapper(minetest, 'item_drop'), -- minetest.item_drop
|
||||||
on_use = nil,
|
on_use = nil,
|
||||||
|
|
||||||
on_punch = minetest.node_punch,
|
on_punch = redef_wrapper(minetest, 'node_punch'), -- minetest.node_punch
|
||||||
on_dig = minetest.node_dig,
|
on_dig = redef_wrapper(minetest, 'node_dig'), -- minetest.node_dig
|
||||||
|
|
||||||
-- Node properties
|
-- Node properties
|
||||||
drawtype = "normal",
|
drawtype = "normal",
|
||||||
@ -346,8 +353,8 @@ minetest.craftitemdef_default = {
|
|||||||
tool_capabilities = nil,
|
tool_capabilities = nil,
|
||||||
|
|
||||||
-- Interaction callbacks
|
-- Interaction callbacks
|
||||||
on_place = minetest.item_place,
|
on_place = redef_wrapper(minetest, 'item_place'), -- minetest.item_place
|
||||||
on_drop = minetest.item_drop,
|
on_drop = redef_wrapper(minetest, 'item_drop'), -- minetest.item_drop
|
||||||
on_use = nil,
|
on_use = nil,
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -364,8 +371,8 @@ minetest.tooldef_default = {
|
|||||||
tool_capabilities = nil,
|
tool_capabilities = nil,
|
||||||
|
|
||||||
-- Interaction callbacks
|
-- Interaction callbacks
|
||||||
on_place = minetest.item_place,
|
on_place = redef_wrapper(minetest, 'item_place'), -- minetest.item_place
|
||||||
on_drop = minetest.item_drop,
|
on_drop = redef_wrapper(minetest, 'item_drop'), -- minetest.item_drop
|
||||||
on_use = nil,
|
on_use = nil,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user