From: danielmeek32 Date: Wed, 20 Sep 2017 18:08:17 +0000 (+0100) Subject: Chests: Fix locked chest protection against explosions (#1886) X-Git-Tag: 0.4.17.1~20 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=09e3505ea1fc622b00461765456cc5b1c8de8d7e;p=oweals%2Fminetest_game.git Chests: Fix locked chest protection against explosions (#1886) Fixes #1885 --- diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index d31a34b1..36d58340 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1973,6 +1973,13 @@ function default.register_chest(name, d) open_chests[clicker:get_player_name()] = { pos = pos, sound = def.sound_close, swap = name } end + def.on_blast = function(pos) + local drops = {} + default.get_inventory_drops(pos, "main", drops) + drops[#drops+1] = "default:" .. name + minetest.remove_node(pos) + return drops + end end def.on_metadata_inventory_move = function(pos, from_list, from_index, @@ -1990,13 +1997,6 @@ function default.register_chest(name, d) " takes " .. stack:get_name() .. " from chest at " .. minetest.pos_to_string(pos)) end - def.on_blast = function(pos) - local drops = {} - default.get_inventory_drops(pos, "main", drops) - drops[#drops+1] = "default:chest" - minetest.remove_node(pos) - return drops - end local def_opened = table.copy(def) local def_closed = table.copy(def) @@ -2018,6 +2018,7 @@ function default.register_chest(name, d) def_opened.can_dig = function() return false end + def_opened.on_blast = function() end def_closed.mesh = nil def_closed.drawtype = nil