cleanup d_meter2_info / little JMessage work (#2460)

* d_meter2_info cleanup

* parseBlock_next matching
This commit is contained in:
TakaRikka
2025-05-28 14:04:30 +03:00
committed by GitHub
parent 9a98863aff
commit e8e36445ba
15 changed files with 1243 additions and 744 deletions
+1 -7
View File
@@ -166,15 +166,9 @@ public:
/* 0xC0 */ f32 field_0xc0;
/* 0xC4 */ f32 field_0xc4;
};
#include "f_op/f_op_actor_mng.h"
class JMSMesgEntry_c : public fopEn_enemy_c {
private:
/* 0x5ac */ u8 field_0x5ac[0x748 - 0x5ac];
};
STATIC_ASSERT(sizeof(JMSMesgEntry_c) == 0x748);
struct JKRExpHeap {};
+208 -202
View File
File diff suppressed because it is too large Load Diff
+28 -25
View File
@@ -2,37 +2,40 @@
#define D_MSG_D_MSG_CLASS_H
#include "JSystem/JMessage/control.h"
#include "JSystem/JMessage/JMessage.h"
#include "SSystem/SComponent/c_xyz.h"
class JMSMesgEntry_c {
public:
/* 0x0 */ u32 string_offset;
// Attributes
/* 0x04 */ u16 message_id;
/* 0x06 */ u16 unk_0x6;
/* 0x08 */ u8 unk_0x8;
/* 0x09 */ u8 display_style;
/* 0x0A */ u8 print_style;
/* 0x0B */ u8 position;
/* 0x0C */ u8 unk_0xc;
/* 0x0D */ u8 unk_0xd;
/* 0x0E */ u8 unk_0xe;
/* 0x0F */ u8 camera_id;
/* 0x10 */ u32 unk_0x10;
};
class JMSMesgInfo_c {
public:
/* 0x00 */ bmg_section_t header; // section header
/* 0x08 */ u16 entry_num; // number of entries in this section
/* 0x0A */ u16 entry_size; // size of an entry
/* 0x0C */ u8 padding[4]; // padding
/* 0x10 */ JMSMesgEntry_c entries[0];
};
class COutFont_c;
class J2DTextBox;
class JUTFont;
struct JMSMesgEntry_c {
/* 0x00 */ u32 mStringOffset;
/* 0x04 */ u16 mStringId;
/* 0x06 */ u16 field_0x06;
/* 0x08 */ u8 field_0x08;
/* 0x09 */ u8 field_0x09;
/* 0x0A */ u8 field_0x0a;
/* 0x0B */ u8 field_0x0b;
/* 0x0C */ u8 field_0x0c;
/* 0x0D */ u8 field_0x0d;
/* 0x0E */ u8 field_0x0e;
/* 0x0F */ u8 field_0x0f;
/* 0x10 */ u32 field_0x10;
}; // Size: 0x14
struct JMSMesgHeader_c {
/* 0x00 */ u32 magic;
/* 0x04 */ u32 sectionSize;
/* 0x08 */ u16 entryCount;
/* 0x0A */ u16 entrySize;
/* 0x0C */ u16 field_0xc;
/* 0x0E */ u16 field_0xe;
/* 0x10 */ JMSMesgEntry_c entries[0];
}; // Size: 0x10
class STControl;
class dMsgObject_c;
struct jmessage_tReference : public JMessage::TReference {
+1 -42
View File
@@ -1,48 +1,7 @@
#ifndef D_MSG_D_MSG_UNIT_H
#define D_MSG_D_MSG_UNIT_H
#include "global.h"
// Struct definitions might be wrong
typedef struct bmg_section_t {
u32 msgType; // sectionType
u32 size; // total size of the section
u8 data[0]; // section data
} bmg_section_t;
typedef struct bmg_header_t {
/* 0x00 */ char magic[8]; // = BMG_MAGIC
/* 0x08 */ u32 size; // total size of file
/* 0x0c */ u32 n_sections; // number of sections
/* 0x10 */ u32 encoding; // text encoding
/* 0x11 */ u8 unknown[12]; // unknown data
/* 0x20 */ bmg_section_t section[0]; // first section header
} bmg_header_t;
typedef struct inf1_entry_t {
u32 dat1EntryOffset;
u16 startFrame;
u16 endFrame;
} inf1_entry_t;
typedef struct inf1_section_t {
/* 0x00 */ u32 msgType; // sectionType
/* 0x04 */ u32 size; // total size of the section
/* 0x08 */ u16 entryCount;
/* 0x0A */ u16 entryLength;
/* 0x0C */ u16 msgArchiveId;
/* 0x0E */ inf1_entry_t entries[0];
} inf1_section_t;
typedef struct str1_entry_t {
char str[0];
} str1_entry_t;
typedef struct str1_section_t {
/* 0x00 */ u32 msgType; // sectionType
/* 0x04 */ u32 size; // total size of the section
/* 0x08 */ str1_entry_t entries[0];
} str1_section_t;
#include "JSystem/JMessage/JMessage.h"
class dMsgUnit_c {
public: