28 lines
1.0 KiB
Lua
28 lines
1.0 KiB
Lua
--[[
|
|
Addon loader - Addons are either:
|
|
* A folder with at least two files:
|
|
- meta.lua - contains load order information
|
|
- init.lua - entrypoint that gets run to load the addon
|
|
* A zip file with the same
|
|
* A sqlite3 database with a table "files" that has at least the columns
|
|
* name :: TEXT - The filename
|
|
* data :: BINARY - The file data
|
|
And there are at least 2 rows with filenames `meta.lua` and `init.lua`
|
|
as described above. Addons should be placed in $SMR_ADDONS, defined in config.lua
|
|
|
|
The `meta.lua` file is run at worker init time (i.e. it will be run once for
|
|
each worker), and should return a table with at least the following information
|
|
{
|
|
name :: string - A name for the addon (all addons must have unique names)
|
|
desc :: string - A description for the addon.
|
|
entry :: table[number -> string] - Describes the load order for this
|
|
addon. Each addon's meta.lua is run, and sorted to get a load
|
|
order for entrypoints (the strings are the names files)
|
|
]]
|
|
|
|
local oldconfigure = configure
|
|
function configure(...)
|
|
|
|
return oldconfigure(...)
|
|
end
|