1
0
mirror of https://github.com/sys4-fr/server-nalc.git synced 2025-06-28 14:16:06 +02:00

Move minetest.rotate_node override to a pre-default _misc init

This commit is contained in:
Dorian Wouters
2016-08-14 15:11:40 +02:00
parent 947b301456
commit a61cd3bc3d
4 changed files with 11 additions and 5 deletions

View File

@ -0,0 +1,9 @@
----------------------------------------
-- Server Misc Mod - pre-default init --
----------------------------------------
local cwd = minetest.get_modpath(minetest.get_current_modname())
-- Inventory refill function override
-- see https://github.com/MinetestForFun/server-minetestforfun/issues/462
dofile(cwd.."/inventory_rotate_node.lua")

View File

@ -0,0 +1,22 @@
--rewrite function minetest.rotate_node(itemstack, placer, pointed_thing) to refill inventory
local old_rotate_node = minetest.rotate_node
function minetest.rotate_node(itemstack, placer, pointed_thing)
local stack_name = itemstack:get_name()
local ret = old_rotate_node(itemstack, placer, pointed_thing)
if ret:get_count() == 0 and not minetest.setting_getbool("creative_mode") then
local index = placer:get_wield_index()
local inv = placer:get_inventory()
if inv:get_list("main") then
for i, stack in ipairs(inv:get_list("main")) do
if i ~= index and stack:get_name() == stack_name then
ret:add_item(stack)
stack:clear()
inv:set_stack("main", i, stack)
minetest.log("action", "Inventory Tweaks: refilled stack("..stack_name..") of " .. placer:get_player_name())
break
end
end
end
end
return ret
end