MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / initScript

Method initScript

source/game/StarQuests.cpp:569–592  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

567}
568
569void Quest::initScript() {
570 if (!m_player || !m_world || m_inited)
571 return;
572
573 auto questTemplate = getTemplate();
574 if (questTemplate->script.isValid())
575 m_scriptComponent.setScript(*questTemplate->script);
576 else
577 m_scriptComponent.setScripts(StringList{});
578 m_scriptComponent.setUpdateDelta(questTemplate->updateDelta);
579
580 m_scriptComponent.addCallbacks("quest", makeQuestCallbacks(m_player));
581 m_scriptComponent.addCallbacks("celestial", LuaBindings::makeCelestialCallbacks(m_client));
582 m_scriptComponent.addCallbacks("player", LuaBindings::makePlayerCallbacks(m_player));
583 m_scriptComponent.addCallbacks("config", LuaBindings::makeConfigCallbacks([this](String const& name, Json const& def) {
584 return Json(getTemplate()->scriptConfig).query(name, def);
585 }));
586 m_scriptComponent.addCallbacks("entity", LuaBindings::makeEntityCallbacks(m_player));
587 m_scriptComponent.addCallbacks("status", LuaBindings::makeStatusControllerCallbacks(m_player->statusController()));
588 m_scriptComponent.addActorMovementCallbacks(m_player->movementController());
589 m_inited = true;
590
591 m_scriptComponent.init(m_world);
592}
593
594void Quest::uninitScript() {
595 m_scriptComponent.uninit();

Callers

nothing calls this directly

Calls 12

getTemplateFunction · 0.85
JsonClass · 0.85
isValidMethod · 0.80
setScriptMethod · 0.80
setScriptsMethod · 0.80
setUpdateDeltaMethod · 0.80
addCallbacksMethod · 0.45
queryMethod · 0.45
statusControllerMethod · 0.45
movementControllerMethod · 0.45
initMethod · 0.45

Tested by

no test coverage detected