Files
ph/include/Message/MessageManager.hpp
Yanis cf8f5a80b1 Decompile more of AdventureFlags.cpp (#118)
* fix flags getters and associated relocs

* explicit ARM and improve existing matches

* match CopyTo

* document a bit the flag system and progress on unmatched functions

* remaining bottom functions

* func_ov00_02097810 params and name fix

* fix build issues

* move flag base definition to its own file

* document item flags

---------

Co-authored-by: Yanis002 <Yanis002@users.noreply.github.com>
Co-authored-by: Aetias <aetias@outlook.com>
2025-07-22 16:17:02 +02:00

79 lines
2.8 KiB
C++

#pragma once
#include "global.h"
#include "types.h"
#include "Debug/DebugHierarchy.hpp"
#include "Message/BMG.hpp"
#include "Message/MsgProc.hpp"
#include "System/SysNew.hpp"
#include "nds/math.h"
#include "Unknown/UnkStruct_0202e1a0.hpp"
#include "Unknown/UnkStruct_02032f0c.hpp"
#include "Unknown/UnkStruct_02035064.hpp"
#include "Unknown/UnkStruct_02037750.hpp"
#include "Unknown/UnkStruct_02038aa0.hpp"
#include "Unknown/UnkStruct_020397f8.hpp"
#include "Unknown/UnkStruct_0203dae0.hpp"
class MessageManager : public SysObject {
public:
/* 0x00 */ u8 mUnk_00[2];
/* 0x02 */ u8 mUnk_02;
/* 0x03 */ u8 mUnk_03;
/* 0x04 */ bool mUnk_04; // halts actors and hides the item menu
/* 0x05 */ u8 mUnk_05;
/* 0x06 */ unk16 mUnk_06;
/* 0x08 */ UnkStruct_020397f8 *mUnk_08;
/* 0x0C */ u8 mUnk_0c;
/* 0x0C */ u8 mUnk_0d;
/* 0x0C */ unk16 mUnk_0e;
/* 0x10 */ unk16 mUnk_10;
/* 0x10 */ unk16 mUnk_12;
/* 0x14 */ BMGGroups *pGroups;
/* 0x18 */ UnkStruct_020386d8 *mUnk_18[2];
/* 0x20 */ UnkStruct_02037750 *mUnk_20[2];
/* 0x28 */ UnkStruct_02038aa0 *mUnk_28[6]; //! TODO: is it the right type?
/* 0x40 */ UnkStruct_020397f8 *mUnk_40[2]; // is array size 6?
/* 0x48 */ DebugHierarchy *mDebug;
/* 0x4C */
static void func_0203643c(u32 *param_1, MessageManager *param_2, u32 param_3);
void func_02036490();
void func_0203665c(void);
MessageManager();
~MessageManager();
UnkStruct_020397f8 *func_020366c4(void);
UnkStruct_020397f8 *func_02036700(void);
UnkStruct_020386d8 *func_0203673c(void);
bool func_02036770(u32 param_2);
unk32 func_02036798(void);
bool func_020367dc(int param_2);
bool MessageManager::func_020367ec(void);
bool func_02036808(void);
bool func_02036824(void);
bool func_02036850(void);
void func_02036888(UnkStruct_020386d8 *param_2);
bool func_020368f4(UnkStruct_02037750 *param_2);
void func_0203690c(unk32 param_2);
void func_02036bbc(void);
void func_02036c50(u16 *param_2);
void func_02036ca4(unk32 param_2);
bool func_02036ce4(UnkStruct_020386d8 *param_2, unk32 param_3);
bool func_02036d30(UnkStruct_02037750 *param_2);
bool func_02036d4c(UnkStruct_02037750 *param_2);
void func_02036d6c(void);
UnkStruct_02038aa0 *func_02036da8(u32 param_2, s16 *param_3);
void func_02036edc(u32 param_2, u8 param_3);
UnkStruct_020397f8 *func_02036f68(u32 param_2, u8 *param_3);
UnkStruct_020386d8 *func_020370d0(unk32 param_2, unk32 param_3);
UnkStruct_020386d8 *func_020370e8(unk32 param_2, unk16 param_3, unk16 param_4, unk32 param_5);
void func_02037158(UnkSubClass1_02256FF8 *param_2);
UnkStruct_02038aa0 *func_02037178(UnkSubClass1_02256FF8 *param_2);
void func_ov004_021069c4(void);
};
extern MessageManager gMessageManager;