#include "Runtime/MP1/CPreFrontEnd.hpp" #include "Runtime/CResLoader.hpp" #include "Runtime/GameGlobalObjects.hpp" #include "Runtime/MP1/MP1.hpp" namespace metaforce::MP1 { CPreFrontEnd::CPreFrontEnd() : CIOWin("Pre front-end window") {} CIOWin::EMessageReturn CPreFrontEnd::OnMessage(const CArchitectureMessage& msg, CArchitectureQueue&) { if (msg.GetType() != EArchMsgType::TimerTick) return EMessageReturn::Normal; CMain* m = static_cast(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; } } // namespace metaforce::MP1