diff --git a/init.lua b/init.lua index 41b4d76..da7eb29 100644 --- a/init.lua +++ b/init.lua @@ -46,7 +46,34 @@ core.register_abm({ end, }) + +-- Populate entities list from file in world path +local e_list = nil +local e_path = core.get_worldpath() .. '/clean_entities.txt' +local e_file = io.open(e_path, 'r') +if e_file then + e_list = e_file:read('*a') + e_file:close() +else + -- Create empty file + e_file = io.open(e_path, 'w') + if e_file then + e_file:close() + end +end + +if e_list then + logDebug('Loading entities to clean from file ...') + + e_list = string.split(e_list, '\n') + for _, entity_name in ipairs(e_list) do + table.insert(old_entities, entity_name) + end +end + for _, entity_name in ipairs(old_entities) do + logDebug('Cleaning entity: ' .. entity_name) + core.register_entity(':' .. entity_name, { on_activate = function(self, staticdata) self.object:remove()