| 2373 | } |
| 2374 | |
| 2375 | void UniverseServer::startLuaScripts() { |
| 2376 | auto assets = Root::singleton().assets(); |
| 2377 | auto universeConfig = assets->json("/universe_server.config"); |
| 2378 | |
| 2379 | m_luaRoot = make_shared<LuaRoot>(); |
| 2380 | m_luaRoot->tuneAutoGarbageCollection(universeConfig.getFloat("luaGcPause"), universeConfig.getFloat("luaGcStepMultiplier")); |
| 2381 | |
| 2382 | |
| 2383 | for (auto& p : universeConfig.getObject("scriptContexts")) { |
| 2384 | auto scriptComponent = make_shared<ScriptComponent>(); |
| 2385 | scriptComponent->setLuaRoot(m_luaRoot); |
| 2386 | scriptComponent->addCallbacks("universe", LuaBindings::makeUniverseServerCallbacks(this)); |
| 2387 | scriptComponent->setScripts(jsonToStringList(p.second.toArray())); |
| 2388 | |
| 2389 | m_scriptContexts.set(p.first, scriptComponent); |
| 2390 | scriptComponent->init(); |
| 2391 | } |
| 2392 | } |
| 2393 | |
| 2394 | void UniverseServer::updateLua() { |
| 2395 | for (auto& p : m_scriptContexts) |
nothing calls this directly
no test coverage detected