diff options
| author | Aetias <aetias@outlook.com> | 2024-04-28 16:38:58 +0200 |
|---|---|---|
| committer | Aetias <aetias@outlook.com> | 2024-04-28 16:38:58 +0200 |
| commit | dfea2bd522f9122e3fb7b3d3e778b80b0c7bbe3c (patch) | |
| tree | cd304d3cca15e17a35fb57977c63629ea867b367 /include/Map/Course.hpp | |
| parent | 04b3812395e96ca9e113d5b928b61a5648168c82 (diff) | |
Remangle `Course`
Diffstat (limited to 'include/Map/Course.hpp')
| -rw-r--r-- | include/Map/Course.hpp | 117 |
1 files changed, 58 insertions, 59 deletions
diff --git a/include/Map/Course.hpp b/include/Map/Course.hpp index 3b51529b..917a5d09 100644 --- a/include/Map/Course.hpp +++ b/include/Map/Course.hpp @@ -3,6 +3,8 @@ #include "global.h" #include "types.h" +#include "Map/Course_Unk_c8.hpp" +#include "Map/Course_Unk_cc.hpp" #include "Physics/AABB.hpp" #include "System/SysNew.hpp" @@ -27,21 +29,18 @@ class Course : public SysObject { /* 004 */ CourseType mType; /* 008 */ unk32 mUnk_008; /* 00c */ char mName[0x10]; - /* 01c */ unk8 mUnk_01c; - /* 01d */ unk8 mUnk_01d; + /* 01c */ Vec2b mCurrMapPos; // position in the map grid /* 01e */ unk8 mUnk_01e; /* 01f */ unk8 mUnk_01f; - /* 020 */ unk8 mUnk_020[10][10]; - /* 084 */ s8 mUnk_084; - /* 084 */ s8 mUnk_085; - /* 084 */ s8 mUnk_086; - /* 084 */ s8 mUnk_087; - /* 088 */ unk32 mUnk_088; - /* 08c */ unk32 mUnk_08c; + /* 020 */ unk8 mMapGrid[10][10]; + /* 084 */ Vec2b mMainGrid; // part of the grid where you can walk off screen to another map + /* 086 */ Vec2b mMainGridSize; + /* 088 */ s32 mScreenMapOffsetX; + /* 08c */ s32 mScreenMapOffsetY; /* 090 */ unk32 mUnk_090; /* 094 */ unk32 mUnk_094; /* 098 */ AABB mBounds; - /* 0b0 */ s8 mUnk_0b0; + /* 0b0 */ s8 mNumMaps; /* 0b1 */ unk8 mUnk_0b1; /* 0b2 */ unk8 mUnk_0b2; /* 0b3 */ unk8 mUnk_0b3; @@ -50,64 +49,64 @@ class Course : public SysObject { /* 0bc */ unk32 mUnk_0bc; /* 0c0 */ unk32 mUnk_0c0; /* 0c4 */ unk32 mUnk_0c4; - /* 0c8 */ void *mUnk_0c8; - /* 0cc */ unk32 mUnk_0cc[100]; + /* 0c8 */ Course_Unk_c8 *mUnk_0c8; + /* 0cc */ Course_Unk_cc *mUnk_0cc[100]; /* 25c */ bool mUnk_25c; /* 25d */ bool mBlueWarpOpen; /* 25e */ unk8 mUnk_25e; /* 25f */ unk8 mUnk_25f; /* 260 */ unk32 mNumKeys; - /* 264 */ unk32 mUnk_264; - /* 268 */ unk32 mFlags; // knows which doors are open in a dungeon + /* 260 */ unk32 mFlags0[1]; + /* 268 */ unk32 mFlags1[1]; // knows which doors are open in a dungeon /* 26c */ - unk8 GetDungeonProgress(CourseProgress *param_2); - unk8 func_ov00_0207ca28(unk32 param_2, unk32 param_3, unk32 param_4); - char * SetCourseName(char *src); - static unk8 func_ov00_0207ca78(); - bool func_ov00_0207caa8(unk32 param_2, unk32 param_3, unk32 param_4); - unk32 func_ov00_0207cb30(unk32 param_2); - static unk8 func_ov00_0207cb7c(unk32 param_1, Course *param_2, unk32 param_3); - Vec3p * func_ov00_0207cbd8(unk32 param_2); - void func_ov00_0207cbe8(unk32 param_2); - unk8 func_ov00_0207cc24(unk32 param_2); - unk32 func_ov00_0207cc6c(); + void GetDungeonProgress(CourseProgress *param_2); + void func_ov00_0207ca28(s32 param_2, unk32 param_3, unk32 param_4); + char* SetCourseName(char *src); + void func_ov00_0207ca78(unk32 param_2, unk8 param_3, unk32 param_4); + bool func_ov00_0207caa8(s32 param_2, unk32 *param_3, unk8 *param_4); + unk32 func_ov00_0207cb30(s32 param_2); + static void FindMapGridPos(Vec2b *pos, Course *param_2, u32 map); + Vec3p* Find_Unk_cc_14(unk32 param_2); + void func_ov00_0207cbe8(s32 param_2); + unk8 func_ov00_0207cc24(s32 param_2); + unk32 Find_Unk_cc_08(); void GetMCSFilePath(unk32 buf, s32 fileIndex, unk32 fileType); void GetMRCFilePath(unk32 param_2, unk32 buf, unk32 param_4); - unk8 func_ov00_0207ce20(unk32 param_2, unk32 param_3, unk32 param_4, unk32 param_5); - static unk8 func_ov00_0207ce4c(unk8 param_1, unk8 param_2, unk8 param_3, unk8 param_4, unk32 param_5, unk32 param_6); - bool func_ov00_0207d404(unk32 param_2, unk32 param_3, unk32 param_4); - bool func_ov00_0207d47c(); - bool func_ov00_0207d490(unk32 param_2, unk32 param_3); - bool func_ov00_0207d4e4(unk32 param_2); - bool func_ov00_0207d518(s32 param_2, s32 *param_3, s32 *param_4); - unk8 func_ov00_0207d5c4(); - unk8 func_ov00_0207d5f0(); - unk8 func_ov00_0207d61c(); - unk8 GetUnk_c8_Unk_4(); - bool func_ov00_0207d634(unk32 param_2); - unk8 func_ov00_0207d6ac(unk32 param_2, unk32 param_3); - static unk8 func_ov00_0207d6ec(); - unk8 func_ov00_0207d738(unk32 param_2); - unk8 func_ov00_0207d758(unk32 param_2); - static unk8 func_ov00_0207d778(); - static unk8 func_ov00_0207d788(); - static unk8 func_ov00_0207d7a4(); + 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 IsCurrentMapInMainGrid(); + bool IsInMainGrid(s32 x, s32 y); + bool IsMapInMainGrid(u32 map); + bool GetMapScreenPos(s32 map, s32 *x, s32 *y); + u32 GetScreenMapCellSizeX(); + u32 GetScreenMapCellSizeY(); + unk32 Get_Unk_c8_00(); + unk32 Get_Unk_c8_04(); + bool IsAdjacentMapOnMainGrid(unk32 dir); + bool HasGridMap(s32 x, s32 y); + unk8 GetAdjacentMap(unk32 dir); + u32 GetAdjacentMapX(s32 ir); + u32 GetAdjacentMapY(s32 dir); + u16 FindCurrent_Unk_cc_04(); + u32 Find_Unk_cc_04(unk32 param_2); + unk32 Find_Unk_cc_0c(unk32 map); void func_ov00_0207d7bc(); - unk8 func_ov00_0207d7dc(unk32 param_2, unk32 param_3); - unk8 func_ov00_0207d828(unk32 param_2); - unk8 func_ov00_0207d848(unk32 param_2, unk32 param_3); - unk8 func_ov00_0207d894(unk32 param_2); - static unk8 func_ov00_0207d8b4(); - bool func_ov00_0207d8d4(unk32 param_2); - static unk8 func_ov00_0207d8ec(); - bool func_ov00_0207d90c(unk32 param_2); - static unk8 func_ov00_0207d924(); - bool func_ov00_0207d944(unk32 param_2); - static unk8 func_ov00_0207d95c(); + void SetFlag0(u32 index, bool value); + bool GetFlag0(u32 index); + void SetFlag1(u32 index, bool value); + bool SetFlag1(u32 index); + void SetFlag0_Unk_cc(unk32 index, bool value); + bool GetFlag0_Unk_cc(unk32 param_2); + void SetFlag1_Unk_cc(unk32 param_2, bool param_3); + bool GetFlag1_Unk_cc(unk32 param_2); + void SetFlag2_Unk_cc(unk32 param_2, bool param_3); + bool GetFlag2_Unk_cc(unk32 param_2); + void SetFlag3_Unk_cc(unk32 param_2, bool param_3); bool func_ov00_0207d97c(unk32 param_2); - static unk8 func_ov00_0207d994(); - bool func_ov00_0207d9b4(unk32 param_2); - unk32 func_ov00_0207d9cc(unk32 param_2); - s32 func_ov00_0207da14(); + void func_ov00_0207d994(unk32 param_2, unk32 param_3); + bool GetFlag3_Unk_cc(unk32 param_2); + Course_Unk_cc* Find_Unk_cc(u32 map); + Course_Unk_cc* FindCurrent_Unk_cc(); }; |
