diff options
| author | Aetias <aetias@outlook.com> | 2024-04-22 23:57:26 +0200 |
|---|---|---|
| committer | Aetias <aetias@outlook.com> | 2024-04-22 23:57:26 +0200 |
| commit | b9e9392f29130451cf2c7d13b720260d8022c812 (patch) | |
| tree | 46240f6ec5c3f53e0d02e1c7bf0254e576b7f6b0 /include/Map | |
| parent | bfe10f43d2ccb43e42197a2e11e2159d3f156a6f (diff) | |
Mangle `Course`
Diffstat (limited to 'include/Map')
| -rw-r--r-- | include/Map/Course.hpp | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/include/Map/Course.hpp b/include/Map/Course.hpp new file mode 100644 index 00000000..847296ef --- /dev/null +++ b/include/Map/Course.hpp @@ -0,0 +1,114 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Physics/AABB.hpp" +#include "System/SysNew.hpp" + +typedef unk32 CourseType; +enum CourseType_ { + CourseType_Normal = 0, + CourseType_Dungeon = 1, + CourseType_Sea = 2, + CourseType_TempleOfTheOceanKing = 3, + CourseType_Battle = 4, +}; + +struct CourseProgress { + /* 0 */ unk32 flags; + /* 4 */ s8 numKeys; + /* 5 */ bool blueWarpOpen; + /* 6 */ +}; + +class Course : public SysObject { + /* 000 */ unk32 mIndex; + /* 004 */ CourseType mType; + /* 008 */ unk32 mUnk_008; + /* 00c */ char mName[0x10]; + /* 01c */ unk8 mUnk_01c; + /* 01d */ unk8 mUnk_01d; + /* 01e */ unk8 mUnk_01e; + /* 01f */ unk8 mUnk_01f; + /* 020 */ unk8 mUnk_020[0x64]; + /* 084 */ s8 mUnk_084; + /* 084 */ s8 mUnk_085; + /* 084 */ s8 mUnk_086; + /* 084 */ s8 mUnk_087; + /* 088 */ unk32 mUnk_088; + /* 08c */ unk32 mUnk_08c; + /* 090 */ unk32 mUnk_090; + /* 094 */ unk32 mUnk_094; + /* 098 */ AABB mBounds; + /* 0b0 */ s8 mUnk_0b0; + /* 0b1 */ unk8 mUnk_0b1; + /* 0b2 */ unk8 mUnk_0b2; + /* 0b3 */ unk8 mUnk_0b3; + /* 0b4 */ unk32 mUnk_0b4; + /* 0b8 */ unk32 mUnk_0b8; + /* 0bc */ unk32 mUnk_0bc; + /* 0c0 */ unk32 mUnk_0c0; + /* 0c4 */ unk32 mUnk_0c4; + /* 0c8 */ void *mUnk_0c8; + /* 0cc */ unk32 mUnk_0cc; + /* 0d0 */ unk8 mUnk_0d0[0x18c]; + /* 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 + /* 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 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_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(); + 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(); +}; |
