2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 09:47:43 +00:00

Various imps

This commit is contained in:
2016-05-03 01:27:28 -07:00
parent 7085549a42
commit 4101ea78a2
21 changed files with 371 additions and 70 deletions

View File

@@ -12,29 +12,7 @@ class CResFactory;
class CWorld
{
ResId xc_worldId = -1;
ResId x10_ = -1;
ResId x24_ = -1;
std::vector<std::unique_ptr<CGameArea>> x18_areas;
std::unique_ptr<u8[]> x40_;
std::unique_ptr<u8[]> x44_;
IObjectStore* x60_objectStore;
CResFactory* x64_resFactory;
union
{
struct
{
bool x70_24_ : 1;
bool x70_25_ : 1;
bool x70_26_ : 1;
};
};
public:
class CRelay
{
TEditorId x0_relay = kInvalidEditorId;
@@ -50,6 +28,36 @@ public:
s16 GetMessage() const { return x8_msg; }
bool GetActive() const { return xa_active; }
};
private:
ResId xc_worldId = -1;
ResId x10_ = -1;
std::vector<std::unique_ptr<CGameArea>> x18_areas;
ResId x24_ = -1;
std::vector<CRelay> x2c_relays;
std::unique_ptr<u8[]> x40_;
std::unique_ptr<u8[]> x44_;
IObjectStore* x60_objectStore;
CResFactory* x64_resFactory;
TAreaId x68_ = kInvalidAreaId;
u32 x6c_ = 0;
union
{
struct
{
bool x70_24_ : 1;
bool x70_25_ : 1;
bool x70_26_ : 1;
bool x70_27_ : 1;
};
};
u32 x78_;
u32 x7c_;
public:
CWorld(IObjectStore& objStore, CResFactory& resFactory, ResId);
bool DoesAreaExist(TAreaId area) const;