From e2ac3809856cb1c97ddea0269857b30c8346b10c Mon Sep 17 00:00:00 2001 From: LoneWolfHT Date: Fri, 22 May 2020 18:37:54 -0700 Subject: [PATCH] Add workaround to prevent "swapping" items into team chest (#645) --- mods/ctf/ctf_map/ctf_map_core/chest.lua | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/mods/ctf/ctf_map/ctf_map_core/chest.lua b/mods/ctf/ctf_map/ctf_map_core/chest.lua index b0e86d4..109413f 100644 --- a/mods/ctf/ctf_map/ctf_map_core/chest.lua +++ b/mods/ctf/ctf_map/ctf_map_core/chest.lua @@ -214,6 +214,14 @@ for _, chest_color in pairs(colors) do end function def.on_metadata_inventory_take(pos, listname, index, stack, player) + local chestinv = minetest.get_inventory({type = "node", pos = pos}) + local swapped_item = chestinv:get_stack(listname, index) + + if not ctf_map.is_item_allowed_in_team_chest(listname, swapped_item, player) then + chestinv:remove_item(listname, swapped_item) + player:get_inventory():add_item(listname, swapped_item) + end + minetest.log("action", player:get_player_name() .. " takes " .. (stack:get_name() or "stuff") .. " " .. (stack:get_count() or 0) .. " from chest at " ..