mirror of
https://github.com/zeldaret/tmc
synced 2026-07-10 07:06:52 -04:00
entity changes, textbox changes
This commit is contained in:
+1
-1
@@ -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 {
|
||||
|
||||
@@ -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
@@ -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*);
|
||||
|
||||
@@ -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
@@ -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;
|
||||
|
||||
@@ -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
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user