mirror of
https://github.com/zeldaret/st
synced 2026-08-16 21:17:34 -04:00
Decompile overlay 0 map objects (#49)
* add missing scratch link * ActorUnk_ov000_020a8bb0_a4_00 -> UnkSystem4 * match mapobj switch step * SWST -> SwitchStep * dsd format * fix playerget regression * fix fake match * BLCM -> MiniBlocks * match mapobj miniblocks * minor improvement * fix regressions
This commit is contained in:
@@ -1,10 +1,9 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "types.h"
|
||||
|
||||
typedef void (*ActorUnk_ov000_020a8bb0_a4UnkCallback)(void);
|
||||
|
||||
class ActorUnk_vfunc_b0 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
@@ -44,17 +43,9 @@ public:
|
||||
~ActorUnk_ov000_020a8bb0_94();
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_a4_00 {
|
||||
public:
|
||||
ActorUnk_ov000_020a8bb0_a4_00();
|
||||
~ActorUnk_ov000_020a8bb0_a4_00();
|
||||
void func_ov000_02057c38(unk32 param1, unk32 param2);
|
||||
void func_ov000_0209a7b8(void *param1, ActorUnk_ov000_020a8bb0_a4UnkCallback param2);
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_a4 {
|
||||
public:
|
||||
/* 00 */ ActorUnk_ov000_020a8bb0_a4_00 *mUnk_00;
|
||||
/* 00 */ UnkSystem4 *mUnk_00;
|
||||
/* 08 */ unk16 mUnk_04;
|
||||
/* 08 */ unk16 mUnk_06;
|
||||
/* 0a */ unk32 mUnk_08;
|
||||
@@ -144,7 +135,7 @@ public:
|
||||
/* bc */
|
||||
|
||||
void func_ov000_020a8ae0(q20 param1);
|
||||
ActorUnk_ov000_020a8bb0(ActorUnk_ov000_020a8bb0_a4_00 *param1, unk32 param2);
|
||||
ActorUnk_ov000_020a8bb0(UnkSystem4 *param1, unk32 param2);
|
||||
unk32 func_ov000_020a8db0();
|
||||
unk32 func_ov000_020a8dd0();
|
||||
void func_ov000_020a8df0(ActorRef param1, unk32 param2);
|
||||
|
||||
@@ -10,7 +10,7 @@ DEFINE_MAP_OBJECT_TYPE('BFSP', BFSP)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCC', BLCC)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCE', BLCE)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCK', BLCK)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCM', BLCM)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCM', MiniBlocks)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLCT', BLCT)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLHL', BLHL)
|
||||
DEFINE_MAP_OBJECT_TYPE('BLRB', BLRB)
|
||||
@@ -173,7 +173,7 @@ DEFINE_MAP_OBJECT_TYPE('SWFS', SWFS)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWHT', SWHT)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWRA', SWRA)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWRB', SWRB)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWST', SWST)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWST', SwitchStep)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWSW', SWSW)
|
||||
DEFINE_MAP_OBJECT_TYPE('SWWN', SWWN)
|
||||
DEFINE_MAP_OBJECT_TYPE('TATZ', TATZ)
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#include "nitro/math.h"
|
||||
#include "types.h"
|
||||
|
||||
typedef u32 MapObjFlags;
|
||||
typedef u16 MapObjFlags;
|
||||
enum MapObjFlag_ {
|
||||
MapObjFlag_Alive = FLAG(0, 0),
|
||||
MapObjFlag_1 = FLAG(0, 1),
|
||||
@@ -57,28 +57,33 @@ public:
|
||||
/* 1A */ unk8 mUnk_1A;
|
||||
/* 1B */ unk8 mUnk_1B;
|
||||
/* 1C */ MapObjFlags mFlags[1];
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 20 */ unk32 mUnk_24;
|
||||
/* 20 */ unk32 mUnk_28;
|
||||
/* 20 */ unk32 mUnk_2C;
|
||||
/* 20 */ unk32 mUnk_30;
|
||||
/* 20 */ unk32 mUnk_34;
|
||||
/* 38 */ unk32 mUnk_38;
|
||||
/* 1E */ unk16 mUnk_1E;
|
||||
/* 20 */ u16 mUnk_20;
|
||||
/* 22 */ u16 mUnk_22;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ unk32 mUnk_28;
|
||||
/* 2C */ unk32 mUnk_2C;
|
||||
/* 30 */ unk32 mUnk_30;
|
||||
/* 34 */ unk32 mUnk_34;
|
||||
/* 38 */ unk8 mUnk_38;
|
||||
/* 38 */ unk8 mUnk_39;
|
||||
/* 3A */ Vec2b mUnk_3A;
|
||||
/* 3C */ MapObjectProfile *mpProfile;
|
||||
/* 40 */
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
// data_ov000_020b3590
|
||||
/* 00 */ virtual bool vfunc_00();
|
||||
/* 04 */ virtual bool vfunc_04();
|
||||
/* 08 */ virtual unk16 vfunc_08();
|
||||
/* 0c */ virtual unk8 vfunc_0c();
|
||||
/* 0C */ virtual unk8 vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
/* 18 */ virtual bool vfunc_18();
|
||||
/* 1c */ virtual void vfunc_1c();
|
||||
/* 18 */ virtual void vfunc_18();
|
||||
/* 1C */ virtual void vfunc_1C();
|
||||
/* 20 */ virtual void vfunc_20();
|
||||
/* 24 */ virtual void vfunc_24();
|
||||
/* 28 */ virtual void vfunc_28();
|
||||
/* 2c */ virtual void vfunc_2c();
|
||||
/* 2C */ virtual void vfunc_2C();
|
||||
/* 30 */ virtual ~MapObject();
|
||||
/* 38 */
|
||||
|
||||
@@ -86,6 +91,23 @@ public:
|
||||
|
||||
MapObjectId GetMapObjectId();
|
||||
|
||||
void func_ov000_0209d0bc();
|
||||
void func_ov000_0209d114();
|
||||
void func_ov000_0209d12c();
|
||||
void func_ov000_0209d144();
|
||||
void func_ov000_0209d22c();
|
||||
void func_ov000_0209d274();
|
||||
unk32 func_ov000_0209d29c(unk32 param1);
|
||||
void func_ov000_0209d2c4(unk32 param1, unk32 param2);
|
||||
void func_ov000_0209d2f0();
|
||||
void func_ov000_0209d3b4();
|
||||
void func_ov000_0209d434();
|
||||
void func_ov000_0209d518();
|
||||
void func_ov000_0209d54c();
|
||||
void func_ov000_0209d5c8();
|
||||
void func_ov000_0209d614();
|
||||
void func_ov000_0209d668();
|
||||
void func_ov000_0209d6ac(Vec3p *param1);
|
||||
|
||||
void func_ov031_02103878();
|
||||
};
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
#pragma once
|
||||
|
||||
#include "MapObject/MapObject.hpp"
|
||||
#include "MapObject/MapObjectProfile.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class MapObjectMiniBlocks : public MapObject {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 40 */ UnkSystem6 mUnk_40;
|
||||
/* 44 */ unk32 mUnk_44;
|
||||
/* 48 */ unk8 mUnk_48;
|
||||
/* 49 */ unk8 mUnk_49; // pad?
|
||||
/* 4A */ unk16 mUnk_4A; // pad?
|
||||
/* 4C */
|
||||
|
||||
MapObjectMiniBlocks();
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 30 */ virtual ~MapObjectMiniBlocks() override;
|
||||
};
|
||||
|
||||
class MapObjectProfileMiniBlocks : public MapObjectProfile_Derived1 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
|
||||
MapObjectProfileMiniBlocks();
|
||||
|
||||
/* 00 */ virtual MapObject *Create();
|
||||
/* 1C */ virtual ~MapObjectProfileMiniBlocks() override;
|
||||
|
||||
static MapObjectProfileMiniBlocks *GetProfile();
|
||||
};
|
||||
@@ -40,6 +40,7 @@ public:
|
||||
/* 0C */
|
||||
|
||||
MapObjectProfile_D4() {}
|
||||
~MapObjectProfile_D4() {}
|
||||
|
||||
/* 00 */ virtual void vfunc_00(void);
|
||||
/* 04 */ virtual void vfunc_04(void);
|
||||
@@ -55,7 +56,7 @@ class MapObjectProfile : public SysObject {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ unk8 mUnk_04[2];
|
||||
/* 06 */ u8 mUnk_06;
|
||||
/* 06 */ s8 mUnk_06;
|
||||
/* 07 */ unk8 mUnk_07;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ unk16 mUnk_0C;
|
||||
@@ -66,10 +67,11 @@ public:
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1C */ unk8 mUnk_1C;
|
||||
/* 1D */ unk8 mUnk_1D;
|
||||
/* 1E */ unk16 mUnk_1E;
|
||||
/* 1E */ u16 mUnk_1E;
|
||||
/* 20 */
|
||||
|
||||
MapObjectProfile(MapObjectId mapObjId); // func_ov000_0209c828
|
||||
~MapObjectProfile();
|
||||
|
||||
// data_ov000_020b3524
|
||||
/* 00 */ virtual MapObject *Create() = 0;
|
||||
@@ -80,12 +82,14 @@ public:
|
||||
/* 14 */
|
||||
};
|
||||
|
||||
class MapObjectProfile_Derived2_20;
|
||||
|
||||
class MapObjectProfile_Derived1_20 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 00 */ MapObjectProfile_Derived2_20 *mUnk_00;
|
||||
|
||||
MapObjectProfile_Derived1_20() {
|
||||
this->mUnk_00 = 0;
|
||||
this->mUnk_00 = NULL;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -96,15 +100,19 @@ public:
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk16 mUnk_64;
|
||||
/* 66 */ unk16 mUnk_66;
|
||||
/* 68 */ MapObjectProfile_D4 mUnk_68;
|
||||
/* 74 */ unk32 mUnk_74;
|
||||
/* 78 */ unk32 mUnk_78;
|
||||
/* 7C */ unk32 mUnk_7C;
|
||||
/* 80 */ unk32 mUnk_80;
|
||||
/* 84 */ unk32 mUnk_84;
|
||||
/* 88 */
|
||||
/* 68 */
|
||||
|
||||
MapObjectProfile_Derived1(MapObjectId mapObjId); // func_ov000_0209cb4c
|
||||
MapObjectProfile_Derived1(MapObjectId mapObjId, unk32 param2, unk32 param3); // func_ov000_0209cb4c
|
||||
|
||||
// data_ov000_020b3540
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual ~MapObjectProfile_Derived1();
|
||||
/* 1C */ virtual MapObjectProfile_Derived2_20 *vfunc_1C(unk32 param1);
|
||||
|
||||
void func_ov000_0209ccd8(unk32 param1, u32 param2);
|
||||
};
|
||||
|
||||
class MapObjectProfile_Derived2_20_Base_18 {
|
||||
@@ -118,8 +126,8 @@ public:
|
||||
|
||||
class MapObjectProfile_Derived2_20_Base_20 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 00 */ void *mUnk_00;
|
||||
/* 04 */ void *mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */
|
||||
|
||||
@@ -127,6 +135,23 @@ public:
|
||||
unk32 param5); // func_020153fc
|
||||
};
|
||||
|
||||
class MapObjectProfile_Derived2_20_Base_50 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ u8 mUnk_08;
|
||||
/* 08 */ u8 mUnk_09;
|
||||
/* 08 */ u8 mUnk_0A;
|
||||
/* 08 */ u8 mUnk_0B;
|
||||
/* 0C */ unk8 mUnk_0C;
|
||||
/* 0C */ unk8 mUnk_0D;
|
||||
/* 0C */ u16 mUnk_0E;
|
||||
/* 10 */
|
||||
|
||||
MapObjectProfile_Derived2_20_Base_50();
|
||||
~MapObjectProfile_Derived2_20_Base_50();
|
||||
};
|
||||
|
||||
class MapObjectProfile_Derived2_20_Base_54 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
@@ -142,10 +167,10 @@ public:
|
||||
class MapObjectProfile_Derived2_20_Base {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 04 */ const char *mUnk_04;
|
||||
/* 08 */ void *mUnk_08;
|
||||
/* 0C */ void *mUnk_0C;
|
||||
/* 10 */ void *mUnk_10;
|
||||
/* 14 */ unk8 mUnk_14; // bool?
|
||||
/* 15 */ unk8 mUnk_15; // bool?
|
||||
/* 16 */ unk8 mUnk_16; // bool?
|
||||
@@ -154,7 +179,7 @@ public:
|
||||
/* 20 */ MapObjectProfile_Derived2_20_Base_20 mUnk_20;
|
||||
/* 2C */ UnkFileSystem3 mUnk_2C;
|
||||
/* 3C */ UnkFileSystem5 mUnk_3C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 50 */ MapObjectProfile_Derived2_20_Base_50 *mUnk_50;
|
||||
/* 54 */ MapObjectProfile_Derived2_20_Base_54 mUnk_54[4];
|
||||
/* 94 */
|
||||
|
||||
@@ -184,23 +209,25 @@ public:
|
||||
|
||||
// data_ov000_020b3568
|
||||
/* 00 */ virtual ~MapObjectProfile_Derived2_20() override;
|
||||
|
||||
unk32 func_ov000_02058a24();
|
||||
unk32 func_ov000_02058a84(unk32 param1, const char *param2);
|
||||
};
|
||||
|
||||
class MapObjectProfile_Derived2 : public MapObjectProfile {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 20 */ MapObjectProfile_Derived2_20 mUnk_20;
|
||||
/* D4 */ MapObjectProfile_D4 mUnk_D4;
|
||||
/* E0 */ Vec3p mUnk_E0;
|
||||
/* EC */ Vec3p mUnk_EC;
|
||||
/* F8 */
|
||||
/* D4 */
|
||||
|
||||
MapObjectProfile_Derived2(MapObjectId mapObjId1, MapObjectId mapObjId2); // func_ov000_0209c9a8
|
||||
~MapObjectProfile_Derived2();
|
||||
|
||||
// data_ov000_020b3508
|
||||
/* 04 */ virtual void vfunc_04() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 10 */ virtual void vfunc_10() override;
|
||||
};
|
||||
|
||||
typedef MapObjectProfile *(*GetMapObjectProfile)();
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
#pragma once
|
||||
|
||||
#include "MapObject/MapObject.hpp"
|
||||
#include "MapObject/MapObjectProfile.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class MapObjectSwitchStep_40 : public UnkSystem4 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 60 */ unk16 mUnk_60;
|
||||
/* 62 */ bool mUnk_62;
|
||||
/* 63 */ unk8 mUnk_63;
|
||||
/* 64 */
|
||||
|
||||
MapObjectSwitchStep_40();
|
||||
|
||||
// data_ov000_020b36e0
|
||||
/* 00 */ virtual ~MapObjectSwitchStep_40() override {}
|
||||
/* 1C */ virtual void vfunc_1C(UnkSystem4_vfunc_1C *param1) override;
|
||||
|
||||
void func_ov000_0209dde0(void);
|
||||
};
|
||||
|
||||
class MapObjectSwitchStep : public MapObject {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 40 */ MapObjectSwitchStep_40 mUnk_40;
|
||||
/* A4 */ UnkSystem5 mUnk_A4;
|
||||
/* C4 */ unk32 mUnk_C4;
|
||||
/* C8 */ STRUCT_PAD(0xC8, 0xE4);
|
||||
/* E4 */ u16 mUnk_E4;
|
||||
/* E6 */ u16 mUnk_E6;
|
||||
/* E8 */ unk16 mUnk_E8;
|
||||
/* EA */ unk8 mUnk_EA;
|
||||
/* EB */ unk8 mUnk_EB;
|
||||
/* EC */
|
||||
|
||||
MapObjectSwitchStep();
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual unk16 vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18() override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 30 */ virtual ~MapObjectSwitchStep() override;
|
||||
|
||||
void func_ov000_0209dda4(void);
|
||||
|
||||
void func_ov000_0209e11c(unk32 param1, unk32 param2);
|
||||
void func_ov000_0209e38c(void);
|
||||
};
|
||||
|
||||
class MapObjectProfileSwitchStep_Base : public MapObjectProfile_Derived2 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* D4 */ MapObjectProfile_D4 mUnk_D4;
|
||||
|
||||
MapObjectProfileSwitchStep_Base(MapObjectId mapObjId) :
|
||||
MapObjectProfile_Derived2(mapObjId, mapObjId) {}
|
||||
|
||||
// data_ov000_020b369c (vtable)
|
||||
};
|
||||
|
||||
class MapObjectProfileSwitchStep : public MapObjectProfileSwitchStep_Base {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* E0 */ Vec3p mUnk_E0;
|
||||
/* EC */ Vec3p mUnk_EC;
|
||||
/* F8 */
|
||||
|
||||
MapObjectProfileSwitchStep();
|
||||
~MapObjectProfileSwitchStep() {}
|
||||
|
||||
/* 00 */ virtual MapObject *Create();
|
||||
|
||||
static MapObjectProfileSwitchStep *GetProfile();
|
||||
};
|
||||
@@ -1,33 +0,0 @@
|
||||
//! TODO: This file was generated automatically and might contain errors
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "MapObject/MapObject.hpp"
|
||||
#include "MapObject/MapObjectProfile.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class MapObjectUnkBLCM : public MapObject {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 40 */
|
||||
|
||||
MapObjectUnkBLCM();
|
||||
|
||||
/* 30 */ virtual ~MapObjectUnkBLCM() override;
|
||||
|
||||
void func_ov000_0209e4b0(void);
|
||||
void func_ov000_0209e6ac(void);
|
||||
};
|
||||
|
||||
class MapObjectProfileUnkBLCM : public MapObjectProfile {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
|
||||
MapObjectProfileUnkBLCM();
|
||||
~MapObjectProfileUnkBLCM();
|
||||
|
||||
/* 0C */ virtual MapObject *Create();
|
||||
|
||||
static MapObjectProfileUnkBLCM *GetProfile();
|
||||
};
|
||||
@@ -1,41 +0,0 @@
|
||||
//! TODO: This file was generated automatically and might contain errors
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "MapObject/MapObject.hpp"
|
||||
#include "MapObject/MapObjectProfile.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class MapObjectUnkSWST : public MapObject {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 40 */
|
||||
|
||||
MapObjectUnkSWST();
|
||||
|
||||
/* 30 */ virtual ~MapObjectUnkSWST() override;
|
||||
|
||||
void func_ov000_0209dda4(void);
|
||||
void func_ov000_0209dde0(void);
|
||||
void func_ov000_0209de10(void);
|
||||
void func_ov000_0209df9c(void);
|
||||
void func_ov000_0209e068(void);
|
||||
void func_ov000_0209e11c(void);
|
||||
void func_ov000_0209e280(void);
|
||||
void func_ov000_0209e2b4(void);
|
||||
void func_ov000_0209e38c(void);
|
||||
void func_ov000_0209e3c8(void);
|
||||
};
|
||||
|
||||
class MapObjectProfileUnkSWST : public MapObjectProfile {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
|
||||
MapObjectProfileUnkSWST();
|
||||
~MapObjectProfileUnkSWST();
|
||||
|
||||
/* 0C */ virtual MapObject *Create();
|
||||
|
||||
static MapObjectProfileUnkSWST *GetProfile();
|
||||
};
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "types.h"
|
||||
#include "versions.h"
|
||||
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "Unknown/UnkStruct_027e0ce0.hpp"
|
||||
#include "Unknown/UnkStruct_ov000_0208f820.hpp"
|
||||
#include "nitro/math.h"
|
||||
@@ -50,22 +51,6 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class UnkStruct_PlayerGet_8c {
|
||||
public:
|
||||
// /* 00 */ unk32 *mUnk_00;
|
||||
|
||||
/* 00 */ virtual ~UnkStruct_PlayerGet_8c();
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1); //! TODO: name symbol func_ov000_02057bf4
|
||||
/* 0c */ virtual void vfunc_0c(); //! TODO: name symbol func_01ffc57c
|
||||
/* 10 */ virtual void vfunc_10(); //! TODO: name symbol func_ov000_02057dc8
|
||||
/* 14 */ virtual void vfunc_14(); //! TODO: name symbol func_ov000_02057e44
|
||||
/* 18 */ virtual void vfunc_18(); //! TODO: name symbol func_ov000_02057ea8
|
||||
/* 1c */ virtual void vfunc_1c(); //! TODO: name symbol func_ov000_02057c34
|
||||
/* 20 */ virtual void vfunc_20(); //! TODO: name symbol func_ov000_02057d84
|
||||
|
||||
UnkStruct_PlayerGet_8c(unk32 param1);
|
||||
};
|
||||
|
||||
class UnkStruct_PlayerGet_ec {
|
||||
public:
|
||||
/* 00 */ unk32 *mUnk_00;
|
||||
@@ -122,30 +107,7 @@ public:
|
||||
/* 070 */ u8 mUnk_72; // probably bools
|
||||
/* 070 */ u8 mUnk_73; // probably bools
|
||||
/* 074 */ UnkStruct_PlayerGet_74 mUnk_74;
|
||||
/* 08c */ UnkStruct_PlayerGet_8c mUnk_8c;
|
||||
/* 090 */ unk32 *mUnk_90;
|
||||
/* 094 */ unk32 mUnk_94;
|
||||
/* 098 */ unk32 *mUnk_98;
|
||||
/* 09c */ unk32 mUnk_9c;
|
||||
/* 0a0 */ unk32 *mUnk_a0;
|
||||
/* 0a4 */ unk32 mUnk_a4;
|
||||
/* 0a8 */ unk32 *mUnk_a8;
|
||||
/* 0ac */ unk32 mUnk_ac;
|
||||
/* 0b0 */ unk32 *mUnk_b0;
|
||||
/* 0b4 */ unk32 mUnk_b4;
|
||||
/* 0b8 */ unk32 mUnk_b8;
|
||||
/* 0bc */ unk32 mUnk_bc;
|
||||
/* 0c0 */ unk32 mUnk_c0;
|
||||
/* 0c4 */ unk32 mUnk_c4;
|
||||
/* 0c8 */ unk32 mUnk_c8;
|
||||
/* 0cc */ unk32 mUnk_cc;
|
||||
/* 0d0 */ unk32 mUnk_d0;
|
||||
/* 0d4 */ unk32 mUnk_d4;
|
||||
/* 0d8 */ unk32 mUnk_d8;
|
||||
/* 0dc */ unk32 mUnk_dc;
|
||||
/* 0e0 */ unk32 mUnk_e0;
|
||||
/* 0e4 */ unk32 mUnk_e4;
|
||||
/* 0e8 */ unk32 mUnk_e8;
|
||||
/* 08c */ UnkSystem4 mUnk_8c;
|
||||
/* 0ec */ UnkStruct_PlayerGet_ec mUnk_ec[4];
|
||||
/* 0fc */ void *mUnk_fc;
|
||||
/* 100 */
|
||||
|
||||
@@ -867,3 +867,105 @@ struct UnkStruct_StackTitleScreen {
|
||||
void func_ov000_02059270(unk32 param1, char *param2, unk32 param3);
|
||||
void func_ov000_02059288(unk32 param1, char *param2, unk32 param3);
|
||||
};
|
||||
|
||||
typedef void (*UnkSystem4_UnkCallback)(void);
|
||||
|
||||
class UnkSystem4_vfunc_1C_B4 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 00 */ STRUCT_PAD(0x04, 0x4C);
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
};
|
||||
|
||||
class UnkSystem4_vfunc_1C {
|
||||
public:
|
||||
/* 00 */ u8 *mUnk_00;
|
||||
/* 04 */ unk32 *mUnk_04;
|
||||
/* 08 */ STRUCT_PAD(0x08, 0xB4);
|
||||
/* B4 */ UnkSystem4_vfunc_1C_B4 *mUnk_B4;
|
||||
/* 00 */ unk32 *mUnk_B8;
|
||||
};
|
||||
|
||||
class UnkSystem4 {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 *mUnk_08;
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
/* 10 */ unk32 *mUnk_10;
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
/* 18 */ unk32 *mUnk_18;
|
||||
/* 1C */ unk32 mUnk_1C;
|
||||
/* 20 */ unk32 *mUnk_20;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ unk32 *mUnk_28;
|
||||
/* 2C */ unk32 mUnk_2C;
|
||||
/* 30 */ unk32 mUnk_30;
|
||||
/* 34 */ unk32 mUnk_34;
|
||||
/* 38 */ unk32 mUnk_38;
|
||||
/* 3C */ unk32 mUnk_3C;
|
||||
/* 40 */ unk32 mUnk_40;
|
||||
/* 44 */ unk32 mUnk_44;
|
||||
/* 48 */ unk32 mUnk_48;
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58;
|
||||
/* 5C */ unk32 mUnk_5C;
|
||||
/* 60 */
|
||||
|
||||
UnkSystem4(unk32 param1); // func_ov000_02057b54
|
||||
|
||||
// data_ov000_020b1a6c
|
||||
/* 00 */ virtual ~UnkSystem4();
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1);
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
/* 18 */ virtual void vfunc_18();
|
||||
/* 1C */ virtual void vfunc_1C(UnkSystem4_vfunc_1C *param1);
|
||||
/* 20 */ virtual void vfunc_20();
|
||||
|
||||
void func_ov000_02057c38(unk32 param1, unk32 param2);
|
||||
void func_ov000_0209a7b8(void *param1, UnkSystem4_UnkCallback param2);
|
||||
};
|
||||
|
||||
class UnkSystem5 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1C */ unk32 mUnk_1C;
|
||||
/* 20 */
|
||||
|
||||
UnkSystem5(void *param1, unk32 param2); // func_ov000_0205778c
|
||||
|
||||
void func_01ffc3b4();
|
||||
|
||||
void func_ov000_020577a4(unk32 param1, unk32 param2, unk32 param3);
|
||||
void func_ov000_020577f8(unk32 param1);
|
||||
};
|
||||
|
||||
// related to UnkSystem5?
|
||||
class UnkSystem6 {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */
|
||||
|
||||
UnkSystem6() {}
|
||||
|
||||
// data_ov000_020b1968
|
||||
/* 00 */ virtual ~UnkSystem6();
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1);
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14(Mat3p *param1, Vec3p *param2);
|
||||
/* 18 */ virtual void vfunc_18();
|
||||
/* 1C */
|
||||
};
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "nitro/math.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0998 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
|
||||
UnkStruct_027e0998();
|
||||
~UnkStruct_027e0998();
|
||||
|
||||
/* 00 */ virtual bool vfunc_00(Vec3p *pPos, void *param2, void *param3);
|
||||
/* 04 */
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0998 *data_027e0998;
|
||||
@@ -80,6 +80,7 @@ public:
|
||||
/* 28 */ virtual q20 vfunc_28(Vec3p *param1, unk32 param2, unk32 param3);
|
||||
/* 2c */ virtual void vfunc_2c();
|
||||
|
||||
q20 func_01ffedf4(Vec2b *pPos);
|
||||
unk32 func_ov000_02080180(void *param1);
|
||||
bool func_ov000_02080658(unk32 param1, UnkStruct_SceneChange1 *param2);
|
||||
void func_ov000_020808f4(void *param1, void *param2, unk32 param3);
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
#pragma once
|
||||
|
||||
#define GET_PROFILE(T) (&ProfileInstance<T>::sProfile)
|
||||
#define GET_PROFILE_20(T) (&ProfileInstance<T>::sProfile.mUnk_20)
|
||||
#define GET_PROFILE_20_50(T) (ProfileInstance<T>::sProfile.mUnk_20.mUnk_50)
|
||||
#define GET_PROFILE_D4(T) (&ProfileInstance<T>::sProfile.mUnk_D4)
|
||||
|
||||
#define DECL_PROFILE(T) \
|
||||
T ProfileInstance<T>::sProfile; \
|
||||
T *T::GetProfile() { \
|
||||
|
||||
Reference in New Issue
Block a user