2025-01-23 19:24:03 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "global.h"
|
|
|
|
|
#include "types.h"
|
|
|
|
|
|
2025-07-01 00:24:41 +02:00
|
|
|
#include "Debug/DebugHierarchy.hpp"
|
2025-01-23 19:24:03 +01:00
|
|
|
#include "Message/BMG.hpp"
|
2025-01-30 17:54:54 +01:00
|
|
|
#include "Message/MsgProc.hpp"
|
2025-02-12 20:20:34 +01:00
|
|
|
#include "System/SysNew.hpp"
|
2025-02-05 00:46:13 +01:00
|
|
|
#include "nds/math.h"
|
2025-02-05 12:43:34 +01:00
|
|
|
|
|
|
|
|
#include "Unknown/UnkStruct_0202e1a0.hpp"
|
|
|
|
|
#include "Unknown/UnkStruct_02032f0c.hpp"
|
|
|
|
|
#include "Unknown/UnkStruct_02035064.hpp"
|
2025-02-04 20:02:58 +01:00
|
|
|
#include "Unknown/UnkStruct_02037750.hpp"
|
2025-02-12 20:20:34 +01:00
|
|
|
#include "Unknown/UnkStruct_02038aa0.hpp"
|
|
|
|
|
#include "Unknown/UnkStruct_020397f8.hpp"
|
|
|
|
|
#include "Unknown/UnkStruct_0203dae0.hpp"
|
2025-01-23 21:54:51 +01:00
|
|
|
|
2025-02-17 12:01:41 +01:00
|
|
|
class MessageManager : public SysObject {
|
2025-01-24 15:16:58 +01:00
|
|
|
public:
|
2025-02-05 12:28:21 +01:00
|
|
|
/* 0x00 */ u8 mUnk_00[2];
|
2025-02-05 00:46:13 +01:00
|
|
|
/* 0x02 */ u8 mUnk_02;
|
|
|
|
|
/* 0x03 */ u8 mUnk_03;
|
2025-07-22 16:17:02 +02:00
|
|
|
/* 0x04 */ bool mUnk_04; // halts actors and hides the item menu
|
2025-02-05 00:46:13 +01:00
|
|
|
/* 0x05 */ u8 mUnk_05;
|
|
|
|
|
/* 0x06 */ unk16 mUnk_06;
|
2025-02-12 20:20:34 +01:00
|
|
|
/* 0x08 */ UnkStruct_020397f8 *mUnk_08;
|
2025-02-05 00:46:13 +01:00
|
|
|
/* 0x0C */ u8 mUnk_0c;
|
|
|
|
|
/* 0x0C */ u8 mUnk_0d;
|
|
|
|
|
/* 0x0C */ unk16 mUnk_0e;
|
|
|
|
|
/* 0x10 */ unk16 mUnk_10;
|
|
|
|
|
/* 0x10 */ unk16 mUnk_12;
|
2025-02-12 20:20:34 +01:00
|
|
|
/* 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?
|
2025-07-01 00:24:41 +02:00
|
|
|
/* 0x48 */ DebugHierarchy *mDebug;
|
2025-02-17 12:01:41 +01:00
|
|
|
/* 0x4C */
|
2025-01-23 19:24:03 +01:00
|
|
|
|
2025-02-17 12:01:41 +01:00
|
|
|
static void func_0203643c(u32 *param_1, MessageManager *param_2, u32 param_3);
|
2025-07-06 14:47:44 +02:00
|
|
|
void func_02036490();
|
2025-01-24 15:16:58 +01:00
|
|
|
void func_0203665c(void);
|
2025-02-17 12:01:41 +01:00
|
|
|
MessageManager();
|
|
|
|
|
~MessageManager();
|
2025-02-12 20:20:34 +01:00
|
|
|
UnkStruct_020397f8 *func_020366c4(void);
|
|
|
|
|
UnkStruct_020397f8 *func_02036700(void);
|
|
|
|
|
UnkStruct_020386d8 *func_0203673c(void);
|
2025-01-24 15:16:58 +01:00
|
|
|
bool func_02036770(u32 param_2);
|
2025-01-24 03:37:43 +01:00
|
|
|
unk32 func_02036798(void);
|
|
|
|
|
bool func_020367dc(int param_2);
|
2025-02-17 12:01:41 +01:00
|
|
|
bool MessageManager::func_020367ec(void);
|
2025-01-24 02:24:14 +01:00
|
|
|
bool func_02036808(void);
|
|
|
|
|
bool func_02036824(void);
|
|
|
|
|
bool func_02036850(void);
|
2025-02-12 20:20:34 +01:00
|
|
|
void func_02036888(UnkStruct_020386d8 *param_2);
|
|
|
|
|
bool func_020368f4(UnkStruct_02037750 *param_2);
|
2025-07-19 18:51:07 +02:00
|
|
|
void func_0203690c(unk32 param_2);
|
2025-01-24 19:21:26 +01:00
|
|
|
void func_02036bbc(void);
|
2025-07-22 15:54:46 +02:00
|
|
|
void func_02036c50(u16 *param_2);
|
2025-01-23 21:54:51 +01:00
|
|
|
void func_02036ca4(unk32 param_2);
|
2025-02-12 20:20:34 +01:00
|
|
|
bool func_02036ce4(UnkStruct_020386d8 *param_2, unk32 param_3);
|
|
|
|
|
bool func_02036d30(UnkStruct_02037750 *param_2);
|
|
|
|
|
bool func_02036d4c(UnkStruct_02037750 *param_2);
|
2025-01-23 19:24:03 +01:00
|
|
|
void func_02036d6c(void);
|
2025-02-12 20:20:34 +01:00
|
|
|
UnkStruct_02038aa0 *func_02036da8(u32 param_2, s16 *param_3);
|
2025-01-23 19:24:03 +01:00
|
|
|
void func_02036edc(u32 param_2, u8 param_3);
|
2025-02-12 20:20:34 +01:00
|
|
|
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);
|
2025-02-17 12:01:41 +01:00
|
|
|
|
|
|
|
|
void func_ov004_021069c4(void);
|
2025-01-23 19:24:03 +01:00
|
|
|
};
|
2025-01-24 03:46:27 +01:00
|
|
|
|
2025-02-17 12:01:41 +01:00
|
|
|
extern MessageManager gMessageManager;
|