I can do that with a hook like this, but it's not exactly clean-
Code: Select all
script.on_event(defines.events.on_entity_died, function(event)
if(event.entity.name == 'my_entity') then
local ent = event.entity
local surface = ent.surface
local pos = ent.position
local corpse = ent.prototype.corpses
ent.destroy()
-- this isn't available to prototype information at runtime
surface.create_entity({
name='medium-explosion',
position=pos,
})
for corpse_name, _ in pairs(corpse) do
surface.create_entity({
name=corpse_name,
position=pos,
})
end
return
end
end)