mirror of
https://codeberg.org/AntumLuanti/mod-cleaner.git
synced 2025-03-21 15:41:22 +00:00
Move node & entity functions into segregated modules
This commit is contained in:
parent
5c58fd8f5d
commit
839c32f5c0
3 changed files with 88 additions and 81 deletions
37
entities.lua
Normal file
37
entities.lua
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
|
||||||
|
local old_entities = {}
|
||||||
|
|
||||||
|
-- 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
|
||||||
|
cleaner.log("debug", "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
|
||||||
|
cleaner.log("debug", "Cleaning entity: " .. entity_name)
|
||||||
|
|
||||||
|
core.register_entity(":" .. entity_name, {
|
||||||
|
on_activate = function(self, staticdata)
|
||||||
|
self.object:remove()
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
end
|
88
init.lua
88
init.lua
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
cleaner = {}
|
cleaner = {}
|
||||||
cleaner.modname = core.get_current_modname()
|
cleaner.modname = core.get_current_modname()
|
||||||
|
cleaner.modpath = core.get_modpath(cleaner.modname)
|
||||||
|
|
||||||
local cleaner_debug = core.settings:get_bool("enable_debug_mods", false)
|
local cleaner_debug = core.settings:get_bool("enable_debug_mods", false)
|
||||||
|
|
||||||
|
@ -21,86 +22,11 @@ function cleaner.log(lvl, msg)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
-- ENTITIES
|
local scripts = {
|
||||||
|
"entities",
|
||||||
|
"nodes",
|
||||||
|
}
|
||||||
|
|
||||||
local old_entities = {}
|
for _, script in ipairs(scripts) do
|
||||||
|
dofile(cleaner.modpath .. "/" .. script .. ".lua")
|
||||||
-- 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
|
end
|
||||||
|
|
||||||
if e_list then
|
|
||||||
cleaner.log("debug", "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
|
|
||||||
cleaner.log("debug", "Cleaning entity: " .. entity_name)
|
|
||||||
|
|
||||||
core.register_entity(":" .. entity_name, {
|
|
||||||
on_activate = function(self, staticdata)
|
|
||||||
self.object:remove()
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
-- NODES
|
|
||||||
|
|
||||||
local old_nodes = {}
|
|
||||||
|
|
||||||
-- Populate nodes list from file in world path
|
|
||||||
local n_list = nil
|
|
||||||
local n_path = core.get_worldpath() .. "/clean_nodes.txt"
|
|
||||||
local n_file = io.open(n_path, "r")
|
|
||||||
if n_file then
|
|
||||||
n_list = n_file:read("*a")
|
|
||||||
n_file:close()
|
|
||||||
else
|
|
||||||
-- Create empty file
|
|
||||||
n_file = io.open(n_path, "w")
|
|
||||||
if n_file then
|
|
||||||
n_file:close()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if n_list then
|
|
||||||
cleaner.log("debug", "Loading nodes to clean from file ...")
|
|
||||||
|
|
||||||
n_list = string.split(n_list, "\n")
|
|
||||||
for _, node_name in ipairs(n_list) do
|
|
||||||
table.insert(old_nodes, node_name)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for _, node_name in ipairs(old_nodes) do
|
|
||||||
cleaner.log("debug", "Cleaning node: " .. node_name)
|
|
||||||
|
|
||||||
core.register_node(":" .. node_name, {
|
|
||||||
groups = {old=1},
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
core.register_abm({
|
|
||||||
nodenames = {"group:old"},
|
|
||||||
interval = 1,
|
|
||||||
chance = 1,
|
|
||||||
action = function(pos, node)
|
|
||||||
core.remove_node(pos)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
44
nodes.lua
Normal file
44
nodes.lua
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
|
||||||
|
local old_nodes = {}
|
||||||
|
|
||||||
|
-- Populate nodes list from file in world path
|
||||||
|
local n_list = nil
|
||||||
|
local n_path = core.get_worldpath() .. "/clean_nodes.txt"
|
||||||
|
local n_file = io.open(n_path, "r")
|
||||||
|
|
||||||
|
if n_file then
|
||||||
|
n_list = n_file:read("*a")
|
||||||
|
n_file:close()
|
||||||
|
else
|
||||||
|
-- Create empty file
|
||||||
|
n_file = io.open(n_path, "w")
|
||||||
|
if n_file then
|
||||||
|
n_file:close()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if n_list then
|
||||||
|
cleaner.log("debug", "Loading nodes to clean from file ...")
|
||||||
|
|
||||||
|
n_list = string.split(n_list, "\n")
|
||||||
|
for _, node_name in ipairs(n_list) do
|
||||||
|
table.insert(old_nodes, node_name)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
for _, node_name in ipairs(old_nodes) do
|
||||||
|
cleaner.log("debug", "Cleaning node: " .. node_name)
|
||||||
|
|
||||||
|
core.register_node(":" .. node_name, {
|
||||||
|
groups = {old=1},
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
core.register_abm({
|
||||||
|
nodenames = {"group:old"},
|
||||||
|
interval = 1,
|
||||||
|
chance = 1,
|
||||||
|
action = function(pos, node)
|
||||||
|
core.remove_node(pos)
|
||||||
|
end,
|
||||||
|
})
|
Loading…
Add table
Reference in a new issue