entity changes, textbox changes

This commit is contained in:
theo3
2021-11-04 20:56:03 -07:00
parent 9ef31544e2
commit 9cfbb3a27a
321 changed files with 1765 additions and 1716 deletions
+1 -1
View File
@@ -91,7 +91,7 @@ typedef struct Entity {
/*0x1d*/ u8 field_0x1d;
/*0x1e*/ u8 frameIndex;
/*0x1f*/ u8 lastFrameIndex;
/*0x20*/ s32 field_0x20;
/*0x20*/ s32 hVelocity;
/*0x24*/ s16 speed;
/*0x26*/ u8 spriteAnimation[3];
/*0x29*/ struct {
+2 -2
View File
@@ -54,7 +54,7 @@ extern struct_02019EE0 gUnk_02019EE0;
extern void sub_08056FEC(u32, struct_020227E8*);
extern void sub_0805F46C(u32, void*);
extern void sub_0801C4A0(u32, u32);
extern void RecoverUI(u32 bottomPt, u32 topPt);
extern void sub_08080668(void);
extern void sub_0805194C(u32);
extern void LoadPalettes(const u8*, int, int);
@@ -70,7 +70,7 @@ extern void (*const gUnk_080FC908[])(void);
extern const u8 gGlobalGfxAndPalettes[];
extern void (*const gUnk_080FC93C[])();
extern u32 gUsedPalettes;
extern u8 gUnk_02000D00[];
extern u8 gTextGfxBuffer[];
extern u8 gUnk_02001B40;
extern u8 gUnk_02022030;
+1 -5
View File
@@ -260,7 +260,7 @@ extern u32 sub_08079D48();
extern u32 sub_08008B22();
extern void sub_080791BC9();
extern void sub_080791BC();
extern void sub_08056360();
extern void MessageClose();
extern u32 sub_080542AC(u32);
extern u32 sub_08079FC4(u32);
extern void sub_0800455E(Entity*);
@@ -269,10 +269,6 @@ extern void sub_0804ACF8();
extern void sub_08073904(Entity*);
extern u32 sub_08056134(void);
extern void sub_08004484(Entity*, Entity*);
extern void sub_080564C8(u32);
extern void sub_0805EEB4(u8*, u32);
extern void sub_08056BDC(u32);
extern void sub_08056F88(u32, u32);
extern void sub_0805F8E4(u32 r0, WStruct* r1);
extern u32 sub_08002632(Entity*);
extern void sub_0807879C(Entity*);
-1
View File
@@ -88,7 +88,6 @@ extern void sub_080ADD30(void);
extern void DoSoftReset(void);
extern void sub_08056260(void);
extern void VBlankIntrWait();
extern void MessageUpdate(void);
extern void UpdateFade(void);
extern u8 gUnk_03003DE4;
+14 -18
View File
@@ -67,24 +67,20 @@ typedef struct {
/*0x26*/ u8 swimState;
/*0x27*/ u8 field_0x27[5];
/*0x2c*/ u8* field_0x2c;
/*0x30*/ union {
/* */ u32 all;
/* */ struct {
/* */ u32 unk1 : 1;
/* */ u32 unk2 : 1;
/* */ u32 unk4 : 1;
/* */ u32 noMinishCap : 1;
/* */ u32 pullingState : 1;
/* */ u32 windyState : 1;
/* */ u32 filler6 : 1;
/* */ u32 unk7 : 1;
/* */ u32 unk8 : 1;
/* */ u32 unk9 : 1;
/* */ u32 slipperyState : 1;
/* */ u32 filler11 : 5;
/* */ u32 filler11b : 16;
/* */ } PACKED b;
/* */ } flags;
/*0x30*/ u32 flags;
/* unk1 : 1; */
/* unk2 : 1; */
/* unk4 : 1; */
/* noMinishCap : 1; */
/* pullingState : 1; */
/* windyState : 1; */
/* filler6 : 1; */
/* unk7 : 1; */
/* unk8 : 1; */
/* unk9 : 1; */
/* slipperyState : 1; */
/* filler11 : 5; */
/* filler11b : 16; */
/*0x34*/ u8 field_0x34[2];
/*0x36*/ s16 field_0x36;
/*0x38*/ u8 field_0x38;
+2 -2
View File
@@ -15,8 +15,8 @@ typedef struct {
u8 _e;
u8 _f;
} struct_02000000;
#define gUnk_02000000 ((struct_02000000*)(0x2000000))
// extern struct_02000000 gUnk_02000000;
#define gSaveHeader ((struct_02000000*)(0x2000000))
// extern struct_02000000 gSaveHeader;
typedef struct {
u8 unk_00;
+40 -33
View File
@@ -16,34 +16,36 @@ typedef struct {
u8 textWindowPosY;
u16 textIndex;
u16 unk2; // HI?
u16 field_0xc;
u16 field_0xe;
u32 field_0xc;
u32 field_0x10;
u32 field_0x14;
u32 field_0x18;
u32 field_0x1c;
} TextBox;
extern TextBox gTextBox;
} Message;
extern Message gMessage;
typedef struct {
TextBox textBox;
u8 _20;
u8 _21;
u16 _22;
u16 _24;
u16 _26;
u16 _28;
u8 _2a[0x2];
void* _2c;
u8 _30[0x20];
u8 flags;
u8 code; // first byte read
u16 param; // second byte read
u16 extended; // ascii adjusted for jp chars
u16 _6;
u16 textIndex;
void* _c;
u8 buf[32];
} Token;
typedef struct {
Message message;
Token curToken;
WStruct _50;
char playerName[0xa];
char playerName[10];
u8 _66[0x10];
u8 _76;
u8 _77[0x11];
u8 _88;
u8 state;
u8 _8a;
u8 msgStatus;
u8 renderStatus;
u8 newlineDelay;
u8 _8b;
u8 _8c;
u8 _8d;
@@ -51,43 +53,46 @@ typedef struct {
u8 _8f;
u8 _90;
u8 _91;
s8 _92;
s8 typeSpeed;
u8 _93;
u8 _94;
u8 _95;
u8 delay;
u8 _96;
u8 _97;
union {
u32 word;
struct {
u8 b0;
u8 lineNo;
u8 b1;
u8 b2;
s8 sizeScale;
} bytes;
} _98;
u8 _9c;
u8 _9d;
u16 _9e;
u16 _a0;
u16 _a2;
u16 _a4;
u8 updateDraw;
u16 beginTiles[4];
u16 _a6;
} CurrentTextBox;
extern CurrentTextBox gCurrentTextBox;
static_assert(sizeof(CurrentTextBox) == 0xa8);
} TextRender;
extern TextRender gTextRender;
static_assert(sizeof(TextRender) == 0xa8);
/**
* @brief Initialize the message system.
*/
void MessageInitialize(void);
/**
* @brief Update the message system.
*
*/
void MessageMain(void);
/**
* @brief Show a message on screen.
*
* @param index u32 Message index
*/
void ShowTextbox(u32 index);
void MessageRequest(u32 index);
/**
* @brief Show a message at screen posiiton.
@@ -96,7 +101,7 @@ void ShowTextbox(u32 index);
* @param x u32 Screen x
* @param y u32 Screen y
*/
void TextboxAtPosition(u32 index, u32 x, u32 y);
void MessageAtPos(u32 index, u32 x, u32 y);
/**
* @brief Show a message that attempts not to obscure the entity.
@@ -104,13 +109,15 @@ void TextboxAtPosition(u32 index, u32 x, u32 y);
* @param index u32 Message index
* @param entity Entity* Your important entity
*/
void TextboxNoOverlap(u32 index, Entity* entity);
void MessageNoOverlap(u32 index, Entity* entity);
/**
* @brief Show a message that attempts not to obscure the camera target.
*
* @param index u32 Message index
*/
void TextboxNoOverlapFollow(u32 index);
void MessageFromTarget(u32 index);
void DispMessageFrame(u16*, u32, u32, u32);
#endif