move files panel to separate document
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
local export = {
|
||||
filenames = {},
|
||||
classification = {}
|
||||
registry = {}
|
||||
}
|
||||
|
||||
local function collect_components(dirname, dest)
|
||||
@@ -9,7 +9,7 @@ local function collect_components(dirname, dest)
|
||||
for i, filename in ipairs(files) do
|
||||
if file.ext(filename) == "lua" then
|
||||
table.insert(dest, filename)
|
||||
export.classification[filename] = {
|
||||
export.registry[filename] = {
|
||||
type="component",
|
||||
unit=file.prefix(filename)..":"..file.stem(filename)
|
||||
}
|
||||
@@ -33,13 +33,13 @@ local function collect_scripts(dirname, dest, ismodule)
|
||||
end
|
||||
end
|
||||
|
||||
local function load_scripts_list()
|
||||
local packs = pack.get_installed()
|
||||
local function load_scripts_list(packs)
|
||||
local registry = export.registry
|
||||
for _, packid in ipairs(packs) do
|
||||
collect_scripts(packid..":modules", export.filenames, true)
|
||||
end
|
||||
for _, filename in ipairs(export.filenames) do
|
||||
export.classification[filename] = {
|
||||
registry[filename] = {
|
||||
type="module",
|
||||
unit=file.join(file.parent(file.prefix(filename)..":"..
|
||||
filename:sub(filename:find("/")+1)),
|
||||
@@ -51,27 +51,39 @@ local function load_scripts_list()
|
||||
end
|
||||
end
|
||||
|
||||
function export.build_classification()
|
||||
local classification = {}
|
||||
local function load_models_list(packs)
|
||||
local registry = export.registry
|
||||
for _, filename in ipairs(file.list("models")) do
|
||||
local ext = file.ext(filename)
|
||||
if ext == "xml" then
|
||||
registry[filename] = {type="model"}
|
||||
table.insert(export.filenames, filename)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function export.build_registry()
|
||||
local registry = {}
|
||||
for id, props in pairs(block.properties) do
|
||||
classification[props["script-file"]] = {type="block", unit=block.name(id)}
|
||||
registry[props["script-file"]] = {type="block", unit=block.name(id)}
|
||||
end
|
||||
for id, props in pairs(item.properties) do
|
||||
classification[props["script-file"]] = {type="item", unit=item.name(id)}
|
||||
registry[props["script-file"]] = {type="item", unit=item.name(id)}
|
||||
end
|
||||
local packs = pack.get_installed()
|
||||
for _, packid in ipairs(packs) do
|
||||
classification[packid..":scripts/world.lua"] = {type="world", unit=packid}
|
||||
classification[packid..":scripts/hud.lua"] = {type="hud", unit=packid}
|
||||
registry[packid..":scripts/world.lua"] = {type="world", unit=packid}
|
||||
registry[packid..":scripts/hud.lua"] = {type="hud", unit=packid}
|
||||
end
|
||||
export.classification = classification
|
||||
export.registry = registry
|
||||
export.filenames = {}
|
||||
|
||||
load_scripts_list()
|
||||
load_scripts_list(packs)
|
||||
load_models_list(packs)
|
||||
end
|
||||
|
||||
function export.get_info(filename)
|
||||
return export.classification[filename]
|
||||
return export.registry[filename]
|
||||
end
|
||||
|
||||
return export
|
||||
|
||||
Reference in New Issue
Block a user