metaforce/Runtime/CGameState.hpp

32 lines
722 B
C++

#ifndef __PSHAG_CGAMESTATE_HPP__
#define __PSHAG_CGAMESTATE_HPP__
#include <memory>
#include "CBasics.hpp"
#include "CPlayerState.hpp"
#include "CGameOptions.hpp"
#include "CWorldTransManager.hpp"
namespace urde
{
class CGameState
{
int m_stateFlag = -1;
TOneStatic<CPlayerState> m_playerState;
CWorldTransManager m_transManager;
float m_gameTime = 0.0;
CGameOptions m_gameOpts;
double xa0_playTime;
public:
CGameState() {}
CGameState(CBitStreamReader& stream);
void SetCurrentWorldId(unsigned int id, const std::string& name);
CWorldTransManager& WorldTransitionManager() {return m_transManager;}
void SetTotalPlayTime(float time);
};
}
#endif // __PSHAG_CGAMESTATE_HPP__