2022-10-09 05:13:17 +00:00
|
|
|
#ifndef _CMAINFLOW
|
|
|
|
#define _CMAINFLOW
|
2022-10-01 06:19:09 +00:00
|
|
|
|
|
|
|
#include "types.h"
|
|
|
|
|
|
|
|
#include "MetroidPrime/CIOWin.hpp"
|
|
|
|
|
2022-10-24 01:44:54 +00:00
|
|
|
enum EClientFlowStates {
|
|
|
|
kCFS_Unspecified = -1,
|
|
|
|
kCFS_None = 0,
|
|
|
|
kCFS_WinBad = 1,
|
|
|
|
kCFS_WinGood = 2,
|
|
|
|
kCFS_WinBest = 3,
|
|
|
|
kCFS_LoseGame = 4,
|
|
|
|
kCFS_Default = 5,
|
|
|
|
kCFS_StateSetter = 6,
|
|
|
|
kCFS_PreFrontEnd = 7,
|
|
|
|
kCFS_FrontEnd = 8,
|
|
|
|
kCFS_Game = 14,
|
|
|
|
kCFS_GameExit = 15
|
|
|
|
};
|
|
|
|
|
2022-10-01 06:19:09 +00:00
|
|
|
class CMainFlow : public CIOWin {
|
|
|
|
public:
|
|
|
|
CMainFlow();
|
|
|
|
|
2023-02-06 07:21:28 +00:00
|
|
|
~CMainFlow();
|
|
|
|
EMessageReturn OnMessage(const CArchitectureMessage&, CArchitectureQueue&);
|
|
|
|
bool GetIsContinueDraw() const;
|
|
|
|
void Draw() const;
|
2022-10-24 01:44:54 +00:00
|
|
|
|
|
|
|
void AdvanceGameState(CArchitectureQueue& queue);
|
|
|
|
void SetGameState(EClientFlowStates state, CArchitectureQueue& queue);
|
|
|
|
private:
|
|
|
|
EClientFlowStates x14_gameState;
|
2022-10-01 06:19:09 +00:00
|
|
|
};
|
|
|
|
|
2022-10-09 05:13:17 +00:00
|
|
|
#endif // _CMAINFLOW
|