metaforce/Runtime/MP1/CPreFrontEnd.cpp

33 lines
950 B
C++
Raw Normal View History

#include "Runtime/MP1/CPreFrontEnd.hpp"
#include "Runtime/Factory/CResLoader.hpp"
#include "Runtime/GameGlobalObjects.hpp"
#include "Runtime/MP1/MP1.hpp"
2021-04-10 01:42:06 -07:00
namespace metaforce::MP1 {
2018-12-07 21:30:43 -08:00
CPreFrontEnd::CPreFrontEnd() : CIOWin("Pre front-end window") {}
2018-12-07 21:30:43 -08:00
CIOWin::EMessageReturn CPreFrontEnd::OnMessage(const CArchitectureMessage& msg, CArchitectureQueue&) {
if (msg.GetType() != EArchMsgType::TimerTick)
return EMessageReturn::Normal;
2017-01-19 19:53:32 -08:00
2018-12-07 21:30:43 -08:00
CMain* m = static_cast<CMain*>(g_Main);
if (CResLoader* loader = g_ResFactory->GetResLoader())
if (!loader->AreAllPaksLoaded())
return EMessageReturn::Exit;
if (!x14_resourceTweaksRegistered) {
m->RegisterResourceTweaks();
x14_resourceTweaksRegistered = true;
}
m->MemoryCardInitializePump();
if (!g_MemoryCardSys)
return EMessageReturn::Exit;
if (!m->LoadAudio())
return EMessageReturn::Exit;
return EMessageReturn::RemoveIOWinAndExit;
}
2021-04-10 01:42:06 -07:00
} // namespace metaforce::MP1