From 82344b7a0d3908036497577e82cc36e066d3d52d Mon Sep 17 00:00:00 2001 From: TenPlus1 Date: Sat, 9 Jan 2016 18:22:37 +0000 Subject: [PATCH] violation drop after delay to stop stack doubling --- init.lua | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/init.lua b/init.lua index e3108be..3c641fe 100644 --- a/init.lua +++ b/init.lua @@ -228,16 +228,18 @@ function minetest.is_protected(pos, digger) if holding:to_string() ~= "" then + -- take stack local sta = holding:take_item(holding:get_count()) - local obj = minetest.add_item(player:getpos(), sta) + player:set_wielded_item(holding) - if obj then - obj:setvelocity({x = 0, y = 5, z = 0}) + -- incase of lag, reset stack + minetest.after(0.1, function() player:set_wielded_item(holding) - minetest.after(0.2, function() - player:set_wielded_item(holding) - end) - end + + -- drop stack + local obj = minetest.add_item(player:getpos(), sta) + obj:setvelocity({x = 0, y = 5, z = 0}) + end) end