1
0
mirror of https://github.com/pyrollo/display_modpack.git synced 2024-07-01 15:40:22 +02:00

don't let explosions destroy sign entities

This commit is contained in:
flux 2022-10-26 10:23:06 -07:00
parent e0e0305836
commit 4d483563f6
No known key found for this signature in database
GPG Key ID: 9333B27816848A15
2 changed files with 23 additions and 9 deletions

View File

@ -81,9 +81,16 @@ end
-- Detect rotation restriction -- Detect rotation restriction
local rotation_restricted = nil local rotation_restricted = nil
minetest.register_entity('display_api:dummy_entity', { minetest.register_entity('display_api:dummy_entity', {
initial_properties = {
collisionbox = {0, 0, 0, 0, 0, 0}, collisionbox = {0, 0, 0, 0, 0, 0},
visual = "upright_sprite", visual = "upright_sprite",
textures = {} }) is_visible = false,
textures = {"blank.png"}
},
on_blast = function(self, damage)
return false, false, {}
end,
})
function display_api.is_rotation_restricted() function display_api.is_rotation_restricted()
if rotation_restricted == nil then if rotation_restricted == nil then
@ -304,13 +311,18 @@ end
function display_api.register_display_entity(entity_name) function display_api.register_display_entity(entity_name)
if not minetest.registered_entities[entity_name] then if not minetest.registered_entities[entity_name] then
minetest.register_entity(':'..entity_name, { minetest.register_entity(':'..entity_name, {
initial_properties = {
collisionbox = {0, 0, 0, 0, 0, 0}, collisionbox = {0, 0, 0, 0, 0, 0},
visual = "upright_sprite", visual = "upright_sprite",
textures = {}, textures = {},
},
on_activate = display_api.on_activate, on_activate = display_api.on_activate,
get_staticdata = function(self) get_staticdata = function(self)
return minetest.serialize({ nodepos = self.nodepos }) return minetest.serialize({ nodepos = self.nodepos })
end, end,
on_blast = function(self, damage)
return false, false, {}
end,
}) })
end end
end end

View File

@ -61,9 +61,11 @@ minetest.register_lbm({ name = "signs:conpatibility_1",
-- We need to have this entity registered to be able to remove it. -- We need to have this entity registered to be able to remove it.
if minetest.registered_entities["signs:text"] == nil then if minetest.registered_entities["signs:text"] == nil then
minetest.register_entity("signs:text", { minetest.register_entity("signs:text", {
collisionbox = { 0, 0, 0, 0, 0, 0 }, on_activate = function(self)
visual = "upright_sprite", if self.object then
textures = {}, self.object:remove()
end
end
}) })
end end