Fix problems with TNT

This commit is contained in:
Novatux 2015-05-12 16:53:04 +02:00
parent 8bc8dd64c5
commit 4bd1094619
2 changed files with 10 additions and 11 deletions

@ -121,15 +121,15 @@ function doors.register_door(name, def)
else else
if door_type == "_b_1" or door_type == "_b_2" then if door_type == "_b_1" or door_type == "_b_2" then
return function(pos, intensity) return function(pos, intensity)
check_and_blast(pos, name..door_type) check_and_blast(pos, base_name .. door_type)
pos.y = pos.y + 1 pos.y = pos.y + 1
check_and_blast(pos, name..other_door_type) check_and_blast(pos, base_name .. other_door_type)
end end
elseif door_type == "_t_1" or door_type == "_t_2" then elseif door_type == "_t_1" or door_type == "_t_2" then
return function(pos, intensity) return function(pos, intensity)
check_and_blast(pos, name..door_type) check_and_blast(pos, base_name .. door_type)
pos.y = pos.y - 1 pos.y = pos.y - 1
check_and_blast(pos, name..other_door_type) check_and_blast(pos, base_name .. other_door_type)
end end
end end
end end

@ -80,16 +80,15 @@ local function destroy(drops, pos, cid)
return return
end end
local def = cid_data[cid] local def = cid_data[cid]
if def and def.on_blast then
def.on_blast(pos, 1)
return
end
if def and def.flammable then if def and def.flammable then
print(dump(def), dump(pos), cid)
minetest.set_node(pos, fire_node) minetest.set_node(pos, fire_node)
else
local on_blast = def.on_blast
if on_blast ~= nil then
on_blast(pos, 1)
return
else else
minetest.remove_node(pos) minetest.remove_node(pos)
end
if def then if def then
local node_drops = minetest.get_node_drops(def.name, "") local node_drops = minetest.get_node_drops(def.name, "")
for _, item in ipairs(node_drops) do for _, item in ipairs(node_drops) do