Files
ph/include/Save/AdventureFlags.hpp
T
2025-01-25 14:35:02 +01:00

147 lines
4.2 KiB
C++

#pragma once
#include "global.h"
#include "types.h"
#include "Cutscene/CutsceneHandler.hpp"
#include "Render/FadeControl.hpp"
#include "System/SysNew.hpp"
typedef u32 AdventureFlag;
enum AdventureFlag_ {
/* 0x09 */ AdventureFlag_SWSeaChart = 9,
/* 0x0a */ AdventureFlag_NWSeaChart = 10,
/* 0x0b */ AdventureFlag_SESeaChart = 11,
/* 0x0c */ AdventureFlag_NESeaChart = 12,
/* 0x13 */ AdventureFlag_Hourglass = 19,
/* 0x16 */ AdventureFlag_SunKey = 22,
/* 0x17 */ AdventureFlag_Unk_23 = 23,
/* 0x2b */ AdventureFlag_FishingRod = 43,
/* 0x30 */ AdventureFlag_Cannon = 48,
/* 0x7d */ AdventureFlag_Azurine = 125,
/* 0x7e */ AdventureFlag_Crimsonine = 126,
/* 0x7f */ AdventureFlag_Aquanine = 127,
/* 0x80 */ AdventureFlag_Unk_128 = 128,
/* 0x8c */ AdventureFlag_SalvageArm = 140,
/* 0x126 */ AdventureFlag_ReceivedGoldenChimney = 294,
/* 0x127 */ AdventureFlag_ReceivedGoldenHandrail = 295,
/* 0x128 */ AdventureFlag_ReceivedGoldenCannon = 296,
/* 0x129 */ AdventureFlag_ReceivedGoldenHull = 297,
/* 0x187 */ AdventureFlag_COUNT = 391,
};
struct FlagsUnk2 {
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk16 mUnk_10;
/* 12 */ unk8 mUnk_12;
/* 13 */ unk8 mUnk_13;
/* 14 */ unk8 mUnk_14;
/* 15 */ unk8 mUnk_15;
/* 16 */ unk8 mUnk_16;
/* 17 */ unk8 mUnk_17;
/* 18 */
~FlagsUnk2();
};
struct FlagsUnk {
/* 00 */ FlagsUnk2 mUnk_00;
/* 18 */ FlagsUnk2 mUnk_18;
/* 30 */ unk32 mUnk_30;
/* 34 */ unk32 mUnk_34;
/* 38 */ unk32 mUnk_38;
/* 3c */ unk16 mUnk_3c;
/* 3e */ unk16 mUnk_3e;
/* 40 */ unk16 mUnk_40;
/* 42 */ unk16 mUnk_42;
/* 44 */ unk32 mUnk_44;
/* 48 */ unk8 mUnk_48;
/* 49 */ unk8 mUnk_49;
/* 4a */ unk8 mUnk_4a;
/* 4b */ unk8 mUnk_4b;
/* 4c */
~FlagsUnk();
void func_ov000_020980f8();
};
class AdventureFlags : public SysObject {
public:
/* 00 */ unk32 mFlags[16];
/* 40 */ CutsceneHandler *mCutsceneHandler;
/* 44 */ void *mUnk_44;
/* 48 */
static bool Exists();
void CopyTo(unk32 *flags);
void func_ov00_02097674();
s32 func_ov00_02097684();
void Load();
void func_ov00_020976c8();
void func_ov00_02097700();
bool func_ov00_02097738();
unk8 func_ov00_02097750();
bool Get(AdventureFlag flag);
void Set(AdventureFlag flag, bool value);
void func_Ov00_02097810(s32 param1);
unk32 func_ov00_02097968(unk32 param1);
unk32 func_ov00_02097a44(unk32 param1, s32 param2);
bool func_ov00_02097b9c(s32 param1);
bool func_ov00_02097bac();
bool func_ov00_02097bbc();
bool func_ov00_02097bcc();
bool func_ov00_02097bcc(s32 param2);
s32 func_ov00_02097c08();
bool Get_FlagsUnk_30_Flag(int index);
unk8 Get_FlagsUnk_49(int index);
unk8 Get_FlagsUnk_48(int index);
unk8 Get_FlagsUnk_4a(int index);
unk16 Get_FlagsUnk_42(int index);
unk16 Get_FlagsUnk_40(int index);
unk32 Get_FlagsUnk_38(int index);
unk32 Get_FlagsUnk_34(int index);
unk32 Get_FlagsUnk_44(int index);
static unk32 Get_FlagsUnk_30(int index);
static bool Get_FlagsUnk_00(int index, FlagsUnk2 *result);
bool Get_FlagsUnk_18(int index, FlagsUnk2 *result);
FlagsUnk *Get_FlagsUnk(int index);
bool func_ov00_02097e6c();
bool func_ov00_02097e7c();
bool func_ov00_02097ea4();
static unk32 func_ov00_02097ecc();
void *func_ov00_02097f8c();
void *func_ov00_02097fac();
void *func_ov00_02097fd0();
void func_ov00_02097ff4(bool param1, bool param2);
unk32 func_ov00_02098058();
bool func_ov00_02098064(unk32 param1);
bool func_ov00_02098074(unk32 param1, unk16 param2, unk32 param3, unk32 param4, bool param5);
bool func_ov00_0209809c();
bool func_ov00_020980ac();
void func_ov00_020980bc(s32 param1);
AdventureFlags();
~AdventureFlags();
static void Create();
static void Destroy();
void func_ov004_021044f8(s32 param1);
void func_ov004_0210453c();
bool func_ov004_0210455c(s32 param1);
void func_ov004_021046c8(unk32 param1);
void func_ov004_021046d4();
};
extern AdventureFlags *gAdventureFlags;