55 lines
1.7 KiB
Lua
55 lines
1.7 KiB
Lua
-- this is the first file executed when the application starts
|
|
-- we have to load the first modules form here
|
|
|
|
-- setup logger
|
|
g_logger.setLogFile(g_resources.getWorkDir() .. g_app.getCompactName() .. ".log")
|
|
g_logger.info(os.date("== application started at %b %d %Y %X"))
|
|
|
|
-- print first terminal message
|
|
g_logger.info(g_app.getName() .. ' ' .. g_app.getVersion() .. ' rev ' .. g_app.getBuildRevision() .. ' (' .. g_app.getBuildCommit() .. ') built on ' .. g_app.getBuildDate() .. ' for arch ' .. g_app.getBuildArch())
|
|
|
|
-- add data directory to the search path
|
|
if not g_resources.addSearchPath(g_resources.getWorkDir() .. "data", true) then
|
|
g_logger.fatal("Unable to add data directory to the search path.")
|
|
end
|
|
|
|
-- add modules directory to the search path
|
|
if not g_resources.addSearchPath(g_resources.getWorkDir() .. "modules", true) then
|
|
g_logger.fatal("Unable to add modules directory to the search path.")
|
|
end
|
|
|
|
-- try to add mods path too
|
|
g_resources.addSearchPath(g_resources.getWorkDir() .. "mods", true)
|
|
|
|
-- setup directory for saving configurations
|
|
g_resources.setupUserWriteDir(g_app.getCompactName())
|
|
|
|
-- search all packages
|
|
g_resources.searchAndAddPackages('/', '.otpkg', true)
|
|
|
|
-- load settings
|
|
g_configs.loadSettings("/config.otml")
|
|
|
|
g_modules.discoverModules()
|
|
|
|
-- libraries modules 0-99
|
|
g_modules.autoLoadModules(99)
|
|
g_modules.ensureModuleLoaded("corelib")
|
|
g_modules.ensureModuleLoaded("gamelib")
|
|
|
|
-- client modules 100-499
|
|
g_modules.autoLoadModules(499)
|
|
g_modules.ensureModuleLoaded("client")
|
|
|
|
-- game modules 500-999
|
|
g_modules.autoLoadModules(999)
|
|
g_modules.ensureModuleLoaded("game_interface")
|
|
|
|
-- mods 1000-9999
|
|
g_modules.autoLoadModules(9999)
|
|
|
|
local script = '/' .. g_app.getCompactName() .. 'rc.lua'
|
|
|
|
if g_resources.fileExists(script) then
|
|
dofile(script)
|
|
end |