2023-08-23 11:20:57 +00:00
|
|
|
#ifndef _CWORLD
|
|
|
|
#define _CWORLD
|
|
|
|
|
|
|
|
#include "MetroidPrime/TGameTypes.hpp"
|
|
|
|
|
|
|
|
#include "rstl/auto_ptr.hpp"
|
2023-08-26 19:45:41 +00:00
|
|
|
#include "rstl/vector.hpp"
|
|
|
|
|
2023-08-23 11:20:57 +00:00
|
|
|
|
|
|
|
class CGameArea;
|
|
|
|
|
|
|
|
class CWorld {
|
|
|
|
public:
|
|
|
|
const CGameArea& GetAreaAlways(TAreaId id) const { return *m_areas[id.Value()]; }
|
|
|
|
CGameArea* Area(TAreaId id) { return m_areas[id.Value()].get(); }
|
|
|
|
const CGameArea* GetArea(TAreaId id) const { return m_areas[id.Value()].get(); }
|
|
|
|
|
2023-08-26 19:45:41 +00:00
|
|
|
void SetLoadPauseState(bool);
|
|
|
|
|
|
|
|
private:
|
2023-08-23 11:20:57 +00:00
|
|
|
char pad1[0x18];
|
|
|
|
rstl::vector< rstl::auto_ptr< CGameArea > > m_areas; // x18
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _CWORLD
|