Move ov000 documentation from Ghidra

This commit is contained in:
Aetias
2025-01-20 20:09:15 +01:00
parent a5fd54fe70
commit 7a2009cab9
21 changed files with 555 additions and 220 deletions
+17 -3
View File
@@ -21,8 +21,22 @@ public:
/* 20 */ unk32 mFlags0[1];
/* 24 */ unk32 mFlags1[8];
/* 44 */ unk32 mFlags2[2];
/* 4c */ unk32 mFlags3[1];
/* 50 */ unk32 mUnk_50;
/* 54 */ unk32 mUnk_54;
/* 4c */ unk32 mFlags3[2];
/* 54 */ unk32 mFlags4[1];
/* 58 */
MapData(u8 *map, unk8 param2, unk8 param3, unk32 param4, unk32 param5);
~MapData();
void func_ov000_020972e4(u16 *param1, unk32 *param2, bool param3);
void func_ov000_02097354();
void SetFlag0(u32 index, bool value);
bool GetFlag0(u32 index);
void SetFlag1(u32 index, bool value);
bool GetFlag1(u32 index);
void SetFlag2(u32 index, bool value);
bool GetFlag2(u32 index);
void SetFlag3(u32 index, bool value);
bool GetFlag3(u32 index);
void SetFlag4(u32 index, bool value);
bool GetFlag4(u32 index);
};
+9
View File
@@ -7,7 +7,16 @@
#include "Physics/AABB.hpp"
class TriggerAABB : public TriggerBase {
public:
/* 00 (base) */
/* 14 */ AABB mAABB;
/* 2c */
/* 00 */ virtual ~TriggerAABB() override;
/* 14 */ virtual bool Overlaps(Vec3p *point) override;
/* 18 */ virtual bool GetBoundingBox(AABB *bbox) override;
/* 1c */
TriggerAABB(TriggerParams *params);
TriggerAABB(u8 id, u32 param2, u32 param3, u32 param4);
};
+7
View File
@@ -6,6 +6,7 @@
#include "Map/TriggerAABB.hpp"
class TriggerAABB_Unk1 : public TriggerAABB {
public:
/* 00 (base) */
/* 2c */ unk8 mUnk_2c;
/* 2d */ unk8 mUnk_2d[3];
@@ -17,4 +18,10 @@ class TriggerAABB_Unk1 : public TriggerAABB {
/* 3c */ unk32 mUnk_3c;
/* 40 */ unk32 mUnk_40;
/* 44 */
/* 00 */ virtual ~TriggerAABB_Unk1() override;
/* 08 */ virtual void vfunc_08() override;
/* 1c */
TriggerAABB_Unk1(TriggerParams *params);
};
+38 -1
View File
@@ -4,10 +4,47 @@
#include "types.h"
#include "Map/TriggerAABB.hpp"
#include "Unknown/UnkStruct_ov000_020e2f04.hpp"
class TriggerAABB_Unk2_Unk1 : public UnkStruct_ov000_020e2f04 {
public:
/* 00 (base) */
/* 10 */ unk32 mUnk_10;
/* 14 */ AABB mUnk_14;
/* 2c */
/* 00 */ ~TriggerAABB_Unk2_Unk1() override;
/* 08 */ unk32 vfunc_08() override;
/* 14 */ void vfunc_14(AABB *param1, unk32 param2, unk32 param3, unk32 param4) override;
/* 20 */ void SetBoundingBox(AABB *param1) override;
/* 2c */ void GetBoundingBox(AABB *bbox) override;
/* 30 */ void SetPosition(Vec3p *pos) override;
/* 34 */ void vfunc_34() override;
/* 38 */ void vfunc_38() override;
/* 3c */ void GetPosition(Vec3p *pos) override;
/* 40 */ q20 GetSizeXZ() override;
/* 44 */ q20 GetHeight() override;
/* 48 */ bool ContainsInXZ(Vec3p *pos) override;
/* 4c */ bool Contains(Vec3p *pos) override;
/* 50 */ bool IntersectsCube(Cube *cube) override;
/* 54 */ void vfunc_54(Cube *param1, Vec3p *param2, u32 *param3) override;
/* 5c */
TriggerAABB_Unk2_Unk1();
};
class TriggerAABB_Unk2 : public TriggerAABB {
public:
/* 00 (base) */
/* 2c */ unk32 mUnk_2c;
/* 30 */ unk8 mUnk_30[0x2c][4]; // non-documented class which inherits from base class
/* 30 */ TriggerAABB_Unk2_Unk1 mUnk_30[4];
/* e0 */
/* 00 */ virtual ~TriggerAABB_Unk2() override;
/* 08 */ virtual void vfunc_08() override;
/* 0c */ virtual unk32 vfunc_0c() override;
/* 10 */ virtual unk32 vfunc_10() override;
/* 1c */
TriggerAABB_Unk2(TriggerParams *params);
};
+12 -5
View File
@@ -3,6 +3,9 @@
#include "global.h"
#include "types.h"
#include "nds/math.h"
#include "Physics/AABB.hpp"
#include "System/SysNew.hpp"
struct TriggerParams {
@@ -21,6 +24,7 @@ struct TriggerParams {
};
class TriggerBase : public SysObject {
public:
/* 00 (vtable) */
/* 04 */ unk8 mUnk_04;
/* 05 */ u8 mId;
@@ -31,10 +35,13 @@ class TriggerBase : public SysObject {
/* 14 */
/* 00 */ virtual ~TriggerBase();
/* 08 */ void vfunc_08();
/* 0c */ unk32 vfunc_0c();
/* 10 */ unk32 vfunc_10();
/* 14 */ bool Overlaps();
/* 18 */ bool GetBoundingBox();
/* 08 */ virtual void vfunc_08();
/* 0c */ virtual unk32 vfunc_0c();
/* 10 */ virtual unk32 vfunc_10();
/* 14 */ virtual bool Overlaps(Vec3p *point);
/* 18 */ virtual bool GetBoundingBox(AABB *bbox);
/* 1c */
TriggerBase(TriggerParams *params);
TriggerBase(u8 id, u32 param2, u32 param3, u32 param4);
};
+8
View File
@@ -11,4 +11,12 @@ class TriggerSphere : public TriggerBase {
/* 14 */ Sphere mSphere;
/* 24 */ s32 mHeight;
/* 28 */
/* 00 */ virtual ~TriggerSphere() override;
/* 14 */ virtual bool Overlaps(Vec3p *point) override;
/* 18 */ virtual bool GetBoundingBox(AABB *bbox) override;
/* 1c */
TriggerSphere(TriggerParams *params);
TriggerSphere(u8 id, u32 param2, u32 param3, u32 param4);
};