Match but don't link CAudioStateWin

Former-commit-id: 2313ccfa1d
This commit is contained in:
Henrique Gemignani Passos Lima
2022-10-14 02:31:53 +03:00
parent e869267b6c
commit 18de83f2e4
6 changed files with 52 additions and 8 deletions

View File

@@ -0,0 +1,30 @@
#include "MetroidPrime/CAudioStateWin.hpp"
#include "MetroidPrime/CMain.hpp"
#include "Kyoto/Audio/CSfxManager.hpp"
CAudioStateWin::CAudioStateWin() : CIOWin(rstl::string_l("CAudioStateWin")) {}
CAudioStateWin::~CAudioStateWin(){};
CIOWin::EMessageReturn CAudioStateWin::OnMessage(const CArchitectureMessage& msg,
CArchitectureQueue&) {
const EArchMsgType msgType = msg.GetType();
switch (msgType) {
case kAM_SetGameState:
CSfxManager::KillAll(CSfxManager::kSC_Game);
CSfxManager::SetChannel(CSfxManager::kSC_Game);
break;
case kAM_QuitGameplay:
if (gpGameState->WorldTransitionManager()->GetTransType() == CWorldTransManager::kTT_Disabled ||
gpMain->GetRestartMode() != CMain::kRM_None) {
CSfxManager::SetChannel(CSfxManager::kSC_Default);
CSfxManager::KillAll(CSfxManager::kSC_Game);
}
break;
}
return CIOWin::kMR_Normal;
}