mirror of
https://github.com/pyrollo/display_modpack.git
synced 2025-10-15 08:35:35 +02:00
handle interactions w/ explosions (#3)
* don't let explosions destroy sign entities * destroy sign entities if sign node is exploded * remove redundant destructor call * make sure other things don't try to interact w/ the signs entity * name will be "" for non-players or unknown players. * remove default value from initial values --------- Co-authored-by: Niklp <89982526+Niklp09@users.noreply.github.com>
This commit is contained in:
@@ -251,6 +251,15 @@ function display_api.on_destruct(pos)
|
||||
end
|
||||
end
|
||||
|
||||
function display_api.on_blast(pos, intensity)
|
||||
if not minetest.is_protected(pos, "") then
|
||||
local node = minetest.get_node(pos)
|
||||
local drops = minetest.get_node_drops(node, "tnt:blast")
|
||||
minetest.remove_node(pos)
|
||||
return drops
|
||||
end
|
||||
end
|
||||
|
||||
-- On_rotate (screwdriver) callback for display_api items. Prevents invalid
|
||||
-- rotations and reorients entities.
|
||||
function display_api.on_rotate(pos, node, user, _, new_param2)
|
||||
@@ -272,12 +281,17 @@ function display_api.register_display_entity(entity_name)
|
||||
initial_properties = {
|
||||
collisionbox = {0, 0, 0, 0, 0, 0},
|
||||
visual = "upright_sprite",
|
||||
textures = {}
|
||||
textures = {},
|
||||
collide_with_objects = false,
|
||||
pointable = false
|
||||
},
|
||||
on_activate = display_api.on_activate,
|
||||
get_staticdata = function(self)
|
||||
return minetest.serialize({ nodepos = self.nodepos })
|
||||
end,
|
||||
on_blast = function(self, damage)
|
||||
return false, false, {}
|
||||
end,
|
||||
})
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user