mirror of
https://github.com/encounter/Petari.git
synced 2026-03-30 11:34:15 -07:00
57 lines
1.6 KiB
C++
57 lines
1.6 KiB
C++
#include "Game/Scene/SceneDataInitializer.hpp"
|
|
#include "Game/Scene/SceneObjHolder.hpp"
|
|
#include "Game/Screen/LuigiLetter.hpp"
|
|
|
|
SceneDataInitializer::SceneDataInitializer() : NameObj("SceneDataInitializer") {
|
|
mFileLoader = nullptr;
|
|
mDataHolder = nullptr;
|
|
}
|
|
|
|
void SceneDataInitializer::startStageFileLoad() {
|
|
mFileLoader = new StageFileLoader(MR::getCurrentStageName());
|
|
mFileLoader->startLoadingStageFile();
|
|
|
|
if (!MR::isStageDisablePauseMenu()) {
|
|
MR::mountAsyncArchive("/LayoutData/PauseMenu.arc", MR::getAproposHeapForSceneArchive(0.029999999f));
|
|
}
|
|
}
|
|
|
|
void SceneDataInitializer::startStageFileLoadAfterScenarioSelected() {
|
|
NameObjArchiveListCollector collector;
|
|
JMapInfoIter iter;
|
|
iter.mInfo = nullptr;
|
|
iter._4 = -1;
|
|
LuigiLetter::makeArchiveListForMenu(&collector, iter);
|
|
|
|
s32 curArchive = 0;
|
|
while (curArchive < collector.mCount) {
|
|
MR::mountAsyncArchiveByObjectOrLayoutName(collector.getArchive(curArchive), nullptr);
|
|
curArchive++;
|
|
}
|
|
}
|
|
|
|
void SceneDataInitializer::waitDoneStageFileLoad() {
|
|
mFileLoader->waitLoadedStageFile();
|
|
mDataHolder = reinterpret_cast<StageDataHolder*>(MR::createSceneObj(SceneObj_StageDataHolder));
|
|
}
|
|
|
|
void SceneDataInitializer::startActorFileLoadCommon() {
|
|
mDataHolder->requestFileLoadCommon();
|
|
}
|
|
|
|
void SceneDataInitializer::startActorFileLoadScenario() {
|
|
mDataHolder->requestFileLoadScenario();
|
|
}
|
|
|
|
void SceneDataInitializer::startActorPlacement() {
|
|
mDataHolder->initPlacement();
|
|
}
|
|
|
|
void SceneDataInitializer::initAfterScenarioSelected() {
|
|
mDataHolder->initAfterScenarioSelected();
|
|
}
|
|
|
|
SceneDataInitializer::~SceneDataInitializer() {
|
|
|
|
}
|