Merge branch 'decomp/MapManager' of github-aetias-hax:SammygoodTunes/ph into decomp/MapManager

This commit is contained in:
Aetias
2025-07-01 22:22:36 +02:00
22 changed files with 858 additions and 957 deletions
+3 -1
View File
@@ -6,7 +6,9 @@
struct UnkStruct_027e0d38_Unk28 {
/* 00 */ unk8 mUnk_00[0x34];
/* 34 */ bool mUnk_34;
/* 35 */
/* 35 */ unk8 mUnk_35[0x27];
/* 5c */ unk32 mUnk_5c[3];
/* 68 */
};
struct UnkStruct_027e0d38 {
+4 -1
View File
@@ -3,7 +3,10 @@
#include "global.h"
#include "types.h"
struct UnkStruct_027e0f64 {
#include "Debug/DebugHierarchy.hpp"
class UnkStruct_027e0f64 {
public:
/* 0 */ DebugHierarchyBase *mUnk_0;
/* 4 */ void *mUnk_4;
/* 8 */ void *mUnk_8;
+3 -3
View File
@@ -59,7 +59,7 @@ public:
/* 25e */ unk8 mUnk_25e;
/* 25f */ unk8 mUnk_25f;
/* 260 */ unk32 mNumKeys;
/* 260 */ unk32 mFlags0[1];
/* 264 */ unk32 mFlags0[1];
/* 268 */ unk32 mFlags1[1]; // knows which doors are open in a dungeon
/* 26c */
@@ -78,7 +78,7 @@ public:
void GetMRCFilePath(unk32 param_2, unk32 buf, unk32 param_4);
void func_ov00_0207ce20(unk32 param_2, unk32 param_3, char *param_4, unk32 param_5);
void func_ov00_0207ce4c(s32 param_2, s32 param_3, unk32 param_4, char *param_5, unk32 param_6);
bool func_ov00_0207d404(s32 param_2, unk32 param_3, unk32 param_4);
bool func_ov00_0207d404(s32 param_2, unk32 param_3, unk32 param_4, unk32 param_5);
bool IsCurrentMapInMainGrid();
bool IsInMainGrid(s32 x, s32 y);
bool IsMapInMainGrid(u32 map);
@@ -108,7 +108,7 @@ public:
bool GetMapDataFlag2(unk32 param_2);
void SetMapDataFlag3(unk32 param_2, bool param_3);
bool GetMapDataFlag3(unk32 param_2);
void SetMapDataFlag4(unk32 param_2, unk32 param_3);
void SetMapDataFlag4(unk32 param_2, bool param_3);
bool GetMapDataFlag4(unk32 param_2);
MapData *FindMapData(u32 map);
MapData *FindCurrentMapData();
+1 -1
View File
@@ -12,7 +12,7 @@ public:
/* 00 */ Vec3p mPos;
/* 0c */ unk16 mAngle;
/* 0e */ u8 mId;
/* 0f */ unk8 mUnk_0f;
/* 0f */ // unk8 mUnk_0f;
/* 10 */ s32 mUnk_10;
/* 14 */
};
+8 -8
View File
@@ -112,7 +112,7 @@ public:
/* 188 */ unk8 mUnk_188[0x14];
/* 19c */ unk32 mUnk_19c;
/* 1a0 */ Vec3p mUnk_1a0;
/* 1ac */ unk32 mUnk_1ac;
/* 1ac */ s16 mUnk_1ac;
/* 1b0 */
/* 00 */ virtual ~MapBase();
@@ -133,24 +133,24 @@ public:
/* 40 */ virtual void vfunc_40();
/* 44 */ virtual void vfunc_44();
/* 48 */ virtual void vfunc_48();
/* 4c */ virtual s32 vfunc_4c() = 0;
/* 4c */ virtual s32 vfunc_4c();
/* 50 */ virtual unk32 vfunc_50();
/* 54 */ virtual unk32 vfunc_54(Vec2b *param_1);
/* 58 */ virtual unk32 vfunc_58(Vec2b *param_1, int param_2);
/* 5c */ virtual unk32 vfunc_5c();
/* 60 */ virtual unk32 vfunc_60(u8 *param_1);
/* 60 */ virtual unk32 vfunc_60(Vec2b *param_1);
/* 64 */ virtual unk32 vfunc_64();
/* 68 */ virtual unk8 vfunc_68(Vec3p *param_1, bool param_2);
/* 68 */ virtual unk32 vfunc_68(Vec3p *param_1, bool param_2);
/* 6c */ virtual unk8 vfunc_6c(unk32 param_2, unk32 param_3, unk32 param_4);
/* 70 */ virtual unk32 vfunc_70(Vec3p *param_2);
/* 74 */ virtual s32 vfunc_74(Vec3p *param_2);
/* 78 */ virtual unk32 vfunc_78(Vec2b *param_1);
/* 74 */ virtual unk32 *vfunc_74(Vec3p *param_2);
/* 78 */ virtual unk32 *vfunc_78(Vec2b *param_1);
/* 7c */ virtual s32 vfunc_7c(s32 param_1, unk32 *param_2, s32 param_3, short param_4[4]);
/* 80 */ virtual unk32 vfunc_80();
/* 84 */ virtual void vfunc_84(unk32 param_2);
/* 88 */ virtual unk32 vfunc_88();
/* 8c */ virtual unk32 vfunc_8c();
/* 90 */ virtual unk8 vfunc_90(unk32 param_2, unk32 param_3, unk32 param_4);
/* 90 */ virtual unk8 vfunc_90(Vec2b *param_2, unk32 param_3);
/* 94 */ virtual void vfunc_94();
/* 98 */ virtual void vfunc_98(unk32 param_2, unk32 param_3, unk32 param_4);
/* 9c */ virtual void vfunc_9c();
@@ -204,7 +204,7 @@ public:
s32 GetTriggerBoundingBox(s32 param_2, AABB *param_3);
s32 GetTriggerBoundingBoxes(s32 param_2, AABB *param_3, s32 param_4);
bool GetOverlappingTrigger(Vec3p *param_2);
unk8 FindTrigger(unk32 type);
TriggerBase *FindTrigger(unk32 type);
unk8 GetOverlappingTriggers(Vec3p *param_2, TriggerBase **triggers, unk32 capacity);
bool IsTriggerTypeOverlapped(unk32 type, Vec3p *param_3);
bool AnyTrigger_func_0c(unk32 type);
+32 -32
View File
@@ -30,10 +30,10 @@ class MapManager : public SysObject {
public:
/* 00 */ Course *mCourse;
/* 04 */ MapBase *mMap;
/* 08 */ unk8 mUnk_08;
/* 09 */ unk8 mUnk_09;
/* 0a */ unk8 mUnk_0a;
/* 0b */ unk8 mUnk_0b;
/* 08 */ bool mUnk_08;
/* 09 */ bool mUnk_09;
/* 0a */ bool mUnk_0a;
/* 0b */ bool mUnk_0b;
/* 0c */ u8 mUnk_0c;
/* 0d */ unk8 mUnk_0d;
/* 0e */ unk8 mUnk_0e;
@@ -47,7 +47,7 @@ public:
void GetCourseDungeonProgress(CourseProgress *param_2);
void func_ov00_020820fc(s32 param_2, unk32 param_3, unk32 param_4);
unk8 func_ov00_0208210c(unk32 param_2, unk32 *param_3);
void func_ov00_0208210c(unk32 param_2, unk32 *param_3);
void func_ov00_0208230c(s32 *param_2);
void func_ov00_02082348(unk32 *param_2);
void func_ov00_020823a4(unk32 param_2);
@@ -73,11 +73,11 @@ public:
void func_ov00_02082660(s32 param_2, s32 param_3);
void func_ov00_02082670(unk32 param_2, s32 param_3);
void func_ov00_02082680(unk32 param_2, unk32 param_3);
void func_ov00_020826a0(unk32 param_2, unk32 param_3, unk32 param_4);
void func_ov00_020826a0(unk32 param_2, unk32 param_3);
void CreateMap(unk32 mapType, unk32 param_3, unk32 param_4);
void DestroyMap();
void MapData_vfunc_44();
void func_ov00_02082808(s32 param_2);
void func_ov00_02082808(bool param_2);
s32 MapData_vfunc_7c(s32 param_1, unk32 *param_2, s32 param_3, short param_4[4]);
void MapData_vfunc_84(unk32 param_2);
bool func_ov00_020828f8(s32 *param_2);
@@ -86,17 +86,17 @@ public:
void func_ov00_02082acc();
unk32 *func_ov00_02082adc();
void func_ov00_02082af4();
bool func_ov00_02082b3c(s32 param_2);
void func_ov00_02082b3c(unk32 *param_2, Vec2b *param3);
u8 func_ov00_02082d08();
u8 GetCurrentMapPosX();
u8 GetCurrentMapPosY();
u8 func_ov00_02082d40();
u32 func_ov00_02082d74(unk32 param_2);
void func_ov00_02082d84(unk8 *param_2, s32 *param_3, s32 *param_4);
void func_ov00_02082d84(Vec2b *param_2, s32 *param_3, s32 *param_4);
bool func_ov00_02082e1c(s32 *param_2, s32 *param_3);
void func_ov00_0208306c(s32 *param_2, s32 *param_3);
void func_ov00_0208315c(s32 *param_2, s32 *param_3);
void func_ov00_02083244(u32 param_2, s32 *param_3, s32 *param_4, s32 *param_5);
void func_ov00_02083244(u32 param_2, Vec3p *param_3, s32 *param_4, s32 *param_5);
void func_ov00_02083298(u32 param_2, Vec3p *param_3, s32 *param_4, s32 *param_5);
bool GetCourseData_Unk_25c();
bool IsMapInMainGrid(u32 map);
@@ -124,11 +124,11 @@ public:
void func_ov00_020834bc(Vec3p *param_2, unk32 param_3, unk32 param_4);
void func_ov00_02083524(Vec3p *param_2, unk32 param_3, unk32 param_4);
static void func_ov00_02083560(Vec2b *param_1, MapManager *param_2, u32 param_3);
u8 func_ov00_02083570(unk32 param_2, unk32 param_3);
u8 func_ov00_02083570(u8 param_2, u8 param_3);
unk32 func_ov00_02083588();
unk32 func_ov00_020835a4();
unk32 func_ov00_020835b4();
unk8 func_ov00_020835c4(MapManager *param_1, s32 param_2, unk32 param_3);
bool func_ov00_020835c4(s32 param_2, unk32 param_3);
bool func_ov00_020835e4(s32 param_2, unk32 *param_3, unk8 *param_4);
unk32 func_ov00_020835f4(s32 param_2);
void func_ov00_02083604(s32 param_2);
@@ -167,44 +167,44 @@ public:
s32 func_ov00_02083c24(unk32 x);
s32 func_ov00_02083c50(unk32 z);
void func_ov00_02083c7c(Vec3p *param_2, Vec2b param_3);
static void func_ov00_02083ce8(MapManager *param_1, s32 *param_2, u32 param_3, s32 param_4, u32 param_5);
void func_ov00_02083ce8(Vec3p *param_2, u32 param_3, s32 param_4, u32 param_5);
s32 func_ov00_02083e34(unk8 param_2, unk8 param_3, unk32 param_4);
unk32 MapData_vfunc_60(u8 *param_1);
bool func_ov00_02083e70();
unk32 MapData_vfunc_60(Vec2b *param_1);
bool func_ov00_02083e70(Vec2b *param_2);
unk32 MapData_vfunc_68(Vec3p *param_1, bool param_2);
s32 func_ov00_02083ef8(Vec3p *param_2, Vec3p *param_3);
void func_ov00_02083f44(Vec3p *param_2);
s32 func_ov00_02083ef8(Vec3p *param_2, Vec3p *param_3, bool param_4);
unk32 func_ov00_02083f44(Vec3p *param_2, bool param_3);
unk8 MapData_vfunc_6c(unk32 param_2, unk32 param_3, unk32 param_4);
unk32 MapData_vfunc_70(Vec3p *param_2);
static void func_ov00_02083fb0(u32 *param_1, MapManager *param_2, Vec3p *param_3);
void GetTileWorldBounds(Vec2b *tile, AABB *tileBounds);
unk32 MapData_vfunc_54(Vec2b *a);
unk32 func_ov00_020840a0(unk8 param_2, unk8 param_3);
unk32 MapData_vfunc_78(Vec2b *param_1);
unk8 func_ov00_020840dc();
unk32 *MapData_vfunc_78(Vec2b *param_1);
unk32 func_ov00_020840dc(Vec2b *param_1);
static unk8 func_ov00_02084100(unk32 *param_1, MapManager *param_2);
u32 GetMapData_Unk_48();
unk32 GetMapData_Unk_4c();
unk32 func_ov00_0208412c();
void func_ov00_0208413c(unk32 param_2);
unk8 MapData_vfunc_58(Vec2b *param_1, int param_2);
unk8 func_ov00_02084164(Vec2b *param_2);
s32 func_ov00_02084164(Vec2b *param_2);
u8 GetMapData_Unk_0a();
u8 GetMapData_Unk_0b();
unk8 MapData_vfunc_a4(unk8 *param_1);
unk8 func_ov00_0208433c(Vec3p *param_2, Vec3p *param_3);
void func_ov00_0208433c(Vec3p *param_2, Vec2s *param_3);
unk8 func_ov00_0208439c(Vec2s *param_2, Vec3p *param_3);
void func_ov00_020843ec(s32 *param_2);
unk32 GetMapData_Unk_38();
s32 func_ov00_020846a4();
static s32 func_ov00_02084700(MapManager *pMapManager);
unk8 func_ov00_02084740();
s32 func_ov00_02084700();
unk32 func_ov00_02084740();
unk32 func_ov00_020847e0();
unk8 func_ov00_020847f0();
unk32 func_ov00_020847f0(unk32 type);
bool func_ov00_02084838();
bool func_ov00_020848b8();
void func_ov00_02084924(u32 param_2);
bool func_ov00_02084934(s32 *param_2);
bool func_ov00_02084934(Vec3p *param_2);
u8 GetMapData_Unk_06();
u8 GetMapData_Unk_07();
bool func_ov00_0208499c();
@@ -218,18 +218,18 @@ public:
unk32 GetNumKeys();
void SetBlueWarpOpen(bool state);
bool GetBlueWarpOpen();
unk8 func_ov00_02084b38(unk32 param_2, unk32 param_3, unk32 param_4);
void func_ov00_02084b38(u32 param_2, unk32 param_3, bool param_4);
bool func_ov00_02084be0(u32 param_2, unk32 param_3);
void SetMapDataFlag1(unk32 param_2, bool param_3);
bool GetMapDataFlag1(unk32 param_2);
void func_ov00_02084c7c(unk32 param_2);
void func_ov00_02084c7c(unk32 param_2, bool param_3);
bool func_ov00_02084c94(unk32 param_2);
void func_ov00_02084cb0(unk32 param_2);
void func_ov00_02084cb0(unk32 param_2, bool param_3);
bool func_ov00_02084cc8(unk32 param_2);
void func_ov00_02084ce4(unk32 param_2);
void func_ov00_02084ce4(unk32 param_2, bool param_3);
bool func_ov00_02084cfc(unk32 param_2);
u8 GetMapData_Unk_09();
unk8 func_ov00_02084d24(unk8 param_2, unk8 param_3, unk32 param_4);
void func_ov00_02084d24(unk8 param_2, unk8 param_3, unk16 param_4);
s32 func_ov00_02084d4c(unk32 param_2, unk32 param_3, Vec3p *param_4);
unk32 func_ov00_02084ebc(Vec3p *param_2);
s32 func_ov00_02085108(Vec3p *param_2);
@@ -237,7 +237,7 @@ public:
static s32 func_ov00_020853fc(MapManager *param_1, Vec3p *param_2, s32 *param_3);
unk32 func_ov00_02085594(Vec3p *param_2);
static void func_ov00_0208583c(MapManager *param_1, Vec3p *param_2, unk32 param_3);
static unk8 func_ov00_020858b0(MapManager *param_1, Vec3p *param_2, s32 param_3);
static unk32 func_ov00_020858b0(MapManager *param_1, Vec3p *param_2, s32 param_3);
s32 func_ov00_02085a34(Vec3p *param_2, unk32 param_3);
unk8 func_ov00_02085c60(Vec3p *param_2, unk32 *param_3, unk32 *param_4, u32 param_5);
unk8 func_ov00_02086044(Vec3p *param_2, Vec3p *param_3, unk32 param_4);
@@ -253,7 +253,7 @@ public:
static void LoadMapTexSprites(s32 param1);
void func_ov004_02102260();
void func_ov004_02102264(unk32 *param1, char *param2);
void func_ov004_021024c4(s32 param1, unk32 param2, unk32 param3);
void func_ov004_021024c4(unk32 *param1, unk32 param2, bool param3);
void func_ov004_021025d8();
};
+1 -1
View File
@@ -52,7 +52,7 @@ public:
/* 5c */ virtual unk32 vfunc_5c() override;
/* 60 */ virtual unk32 vfunc_60() override;
/* 64 */ virtual unk32 vfunc_64() override;
/* 78 */ virtual unk32 vfunc_78() override;
/* 78 */ virtual unk32 *vfunc_78() override;
/* 7c */ virtual unk32 vfunc_7c() override;
/* 80 */ virtual unk32 vfunc_80() override;
/* 94 */ virtual void vfunc_94() override;
+2 -1
View File
@@ -4,7 +4,8 @@
struct UnkStruct_0202e894 {
/* 00 */ u32 mId;
/* 04 */ unk8 mUnk_04[0x28];
/* 04 */ u32 *mUnk_04;
/* 08 */ unk8 mUnk_08[0x24];
/* 2c */
};