feat: component script reloading

This commit is contained in:
MihailRis
2025-03-16 22:03:37 +03:00
parent 267aebe7bd
commit 4761c520d5
6 changed files with 42 additions and 22 deletions
+9 -9
View File
@@ -7,19 +7,19 @@ local function collect_components(dirname, dest)
if file.ext(filename) == "lua" then
table.insert(dest, filename)
export.classification[filename] = {
type="entity",
unit=file.prefix(filename)..":"..file.name(filename)
type="component",
unit=file.prefix(filename)..":"..file.stem(filename)
}
end
end
end
end
local function collect_scripts(dirname, dest)
local function collect_scripts(dirname, dest, ismodule)
if file.isdir(dirname) then
local files = file.list(dirname)
for i, filename in ipairs(files) do
if file.name(filename) == "components" then
if file.name(filename) == "components" and not ismodule then
collect_components(filename, dest)
elseif file.isdir(filename) then
collect_scripts(filename, dest)
@@ -33,18 +33,18 @@ end
local function load_scripts_list()
local packs = pack.get_installed()
for _, packid in ipairs(packs) do
collect_scripts(packid..":modules", export.filenames)
collect_scripts(packid..":modules", export.filenames, true)
end
for _, filename in ipairs(export.filenames) do
export.classification[filename] = {
type="module",
unit=file.prefix(filename)..":"..filename:sub(filename:find("/")+1)
unit=file.join(file.parent(file.prefix(filename)..":"..
filename:sub(filename:find("/")+1)),
file.stem(filename))
}
end
for _, packid in ipairs(packs) do
collect_scripts(packid..":scripts", export.filenames)
collect_scripts(packid..":scripts", export.filenames, false)
end
end