mirror of https://github.com/PrimeDecomp/prime.git
58 lines
1.5 KiB
C++
58 lines
1.5 KiB
C++
|
#ifndef _CGAMEGLOBALOBJECTS_HPP
|
||
|
#define _CGAMEGLOBALOBJECTS_HPP
|
||
|
|
||
|
#include "types.h"
|
||
|
|
||
|
#include "rstl/optional_object.hpp"
|
||
|
#include "rstl/single_ptr.hpp"
|
||
|
|
||
|
#include "CAiFuncMap.hpp"
|
||
|
#include "CCharacterFactoryBuilder.hpp"
|
||
|
#include "CGameState.hpp"
|
||
|
#include "CGraphicsSys.hpp"
|
||
|
#include "CInGameTweakManager.hpp"
|
||
|
#include "CMemoryCardSys.hpp"
|
||
|
#include "CMemorySys.hpp"
|
||
|
#include "COsContext.hpp"
|
||
|
#include "CRasterFont.hpp"
|
||
|
#include "CResFactory.hpp"
|
||
|
#include "CSimplePool.hpp"
|
||
|
#include "CToken.hpp"
|
||
|
#include "TOneStatic.hpp"
|
||
|
|
||
|
class CGameGlobalObjects : public TOneStatic< CGameGlobalObjects > {
|
||
|
public:
|
||
|
CGameGlobalObjects(COsContext&, CMemorySys&);
|
||
|
|
||
|
void PostInitialize(COsContext&, CMemorySys&);
|
||
|
|
||
|
CGameState* GameState() { return x134_gameState.get(); }
|
||
|
|
||
|
void SetGameState(CGameState* gameState) {
|
||
|
x134_gameState = gameState;
|
||
|
gpGameState = x134_gameState.get();
|
||
|
}
|
||
|
|
||
|
private:
|
||
|
rstl::single_ptr< CMemoryCardSys > x0_memoryCardSys;
|
||
|
CResFactory x4_resFactory;
|
||
|
CSimplePool xcc_simplePool;
|
||
|
CCharacterFactoryBuilder xec_characterFactoryBuilder;
|
||
|
CAiFuncMap x110_aiFuncMap;
|
||
|
CGraphicsSys x130_graphicsSys;
|
||
|
rstl::single_ptr< CGameState > x134_gameState;
|
||
|
u32 x138_;
|
||
|
rstl::optional_object< TCachedToken< unkptr > > x13c_;
|
||
|
u32 x14c_;
|
||
|
rstl::single_ptr< CInGameTweakManager > x150_inGameTweakManager;
|
||
|
TToken< CRasterFont > x154_defaultFont;
|
||
|
};
|
||
|
|
||
|
// TODO move to related headers
|
||
|
extern unkptr gGuiSystem;
|
||
|
extern unkptr gpStringTable;
|
||
|
extern unkptr gpController;
|
||
|
extern unkptr gpDefaultFont;
|
||
|
|
||
|
#endif
|