diff options
author | YamaArashi <shadow962@live.com> | 2016-09-23 21:10:10 -0700 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-09-23 21:10:10 -0700 |
commit | 003e25a603fb0ccfd1170c49a3e63f482c2e70da (patch) | |
tree | d840bf40aa7bba66a199f3e9b3436b81613456c0 | |
parent | c8a1dc2c365842bea2888449275c5e482a24d969 (diff) |
rename field message box functions
-rw-r--r-- | asm/rom4.s | 2 | ||||
-rw-r--r-- | asm/rom5.s | 82 | ||||
-rw-r--r-- | include/field_message_box.h | 7 | ||||
-rw-r--r-- | src/field_message_box.c | 51 | ||||
-rw-r--r-- | src/scrcmd.c | 19 |
5 files changed, 84 insertions, 77 deletions
diff --git a/asm/rom4.s b/asm/rom4.s index 0580d04bd..4f310a3ba 100644 --- a/asm/rom4.s +++ b/asm/rom4.s @@ -4212,7 +4212,7 @@ sub_8054D4C: @ 8054D4C movs r0, 0 bl sub_805C7C4 bl FieldEffectActiveListClear - bl sub_8064A74 + bl InitFieldMessageBox bl sub_807C828 bl sub_8080750 cmp r4, 0 diff --git a/asm/rom5.s b/asm/rom5.s index f4dda2c3f..5315327db 100644 --- a/asm/rom5.s +++ b/asm/rom5.s @@ -15607,7 +15607,7 @@ _080826D4: .4byte do_choose_name_or_words_screen sub_80826D8: @ 80826D8 push {lr} bl sub_808281C - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 thumb_func_end sub_80826D8 @@ -15648,7 +15648,7 @@ _08082714: .4byte gUnknown_081C6C02 sub_8082718: @ 8082718 push {lr} bl sub_8082880 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 thumb_func_end sub_8082718 @@ -16861,7 +16861,7 @@ sub_8082F68: @ 8082F68 movs r0, 0x15 bl audio_play ldr r0, _08082FC4 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r0, _08082FC8 b _08082FDA .align 2, 0 @@ -16872,7 +16872,7 @@ _08082FCC: movs r0, 0x16 bl audio_play ldr r0, _08082FE4 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r0, _08082FE8 _08082FDA: str r0, [r4] @@ -16902,7 +16902,7 @@ sub_8082FEC: @ 8082FEC bl sub_8082DF4 cmp r0, 0x1 beq _0808302C - bl textbox_any_visible + bl GetFieldMessageBoxMode lsls r0, 24 lsrs r2, r0, 24 cmp r2, 0 @@ -16978,7 +16978,7 @@ sub_808303C: @ 808303C movs r3, 0x1 bl ConvertIntToDecimalStringN ldr r0, _080830DC - bl box_related_two__3 + bl ShowFieldAutoScrollMessage mov r0, r9 subs r0, 0x8 add r0, r8 @@ -17017,7 +17017,7 @@ sub_80830E4: @ 80830E4 bl sub_8082DF4 cmp r0, 0x1 beq _08083178 - bl textbox_any_visible + bl GetFieldMessageBoxMode lsls r0, 24 cmp r0, 0 bne _08083178 @@ -17036,7 +17036,7 @@ sub_80830E4: @ 80830E4 beq _08083158 _08083132: ldr r0, _0808314C - bl box_related_two__3 + bl ShowFieldAutoScrollMessage ldr r1, _08083150 lsls r0, r5, 2 adds r0, r5 @@ -17161,7 +17161,7 @@ sub_80831F8: @ 80831F8 cmp r0, 0x3 bne _08083250 bl sub_800832C - bl textbox_close + bl HideFieldMessageBox ldr r0, _0808324C b _0808326E .align 2, 0 @@ -17208,7 +17208,7 @@ sub_8083288: @ 8083288 cmp r0, 0x3 bne _080832C8 bl sub_800832C - bl textbox_close + bl HideFieldMessageBox ldr r0, _080832C0 lsls r1, r4, 2 adds r1, r4 @@ -17296,7 +17296,7 @@ _0808335A: movs r0, 0 bl SetSuppressLinkErrorMessage bl ResetBlockReceivedFlags - bl textbox_close + bl HideFieldMessageBox ldr r0, _08083398 ldrh r0, [r0] cmp r0, 0x1 @@ -17363,7 +17363,7 @@ sub_80833EC: @ 80833EC movs r0, 0x5 strh r0, [r1] bl sub_8082D4C - bl textbox_close + bl HideFieldMessageBox bl EnableBothScriptContexts adds r0, r4, 0 bl DestroyTask @@ -17384,7 +17384,7 @@ sub_8083418: @ 8083418 movs r0, 0x6 strh r0, [r1] bl sub_8082D4C - bl textbox_close + bl HideFieldMessageBox bl EnableBothScriptContexts adds r0, r4, 0 bl DestroyTask @@ -18151,14 +18151,14 @@ _08083A04: b _08083A7E _08083A0E: ldr r0, _08083A1C - bl box_related_two__2 + bl ShowFieldMessage movs r0, 0x1 strh r0, [r5, 0x8] b _08083A7E .align 2, 0 _08083A1C: .4byte gUnknown_081A490C _08083A20: - bl sub_8064C84 + bl IsFieldMessageBoxHidden lsls r0, 24 cmp r0, 0 beq _08083A7E @@ -18181,7 +18181,7 @@ _08083A40: beq _08083A62 b _08083A7E _08083A52: - bl textbox_close + bl HideFieldMessageBox movs r0, 0 strh r0, [r5, 0x8] adds r0, r4, 0 @@ -18193,7 +18193,7 @@ _08083A62: b _08083A7E _08083A68: bl sub_8055588 - bl textbox_close + bl HideFieldMessageBox bl MenuZeroFillScreen adds r0, r4, 0 bl DestroyTask @@ -139431,7 +139431,7 @@ _080BED44: lsls r0, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage b _080BED82 .align 2, 0 _080BED54: .4byte gUnknown_083D1454 @@ -139453,7 +139453,7 @@ _080BED5C: lsls r0, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage _080BED82: ldr r1, _080BEDA0 movs r0, 0x1 @@ -143343,7 +143343,7 @@ _080C0B7A: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4,r5} pop {r0} bx r0 @@ -143616,7 +143616,7 @@ _080C0DDE: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4,r5} pop {r0} bx r0 @@ -143871,7 +143871,7 @@ _080C1014: lsls r1, r6, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r6} pop {r0} bx r0 @@ -144255,7 +144255,7 @@ _080C138A: lsls r1, r7, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage add sp, 0x8 pop {r4-r7} pop {r0} @@ -144511,7 +144511,7 @@ _080C15DC: lsls r1, r6, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r6} pop {r0} bx r0 @@ -144668,7 +144668,7 @@ _080C173C: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4,r5} pop {r0} bx r0 @@ -144851,7 +144851,7 @@ _080C1916: movs r3, 0x2 bl ConvertEasyChatWordsToString adds r0, r4, 0 - bl box_related_two__2 + bl ShowFieldMessage ldr r1, _080C1938 movs r0, 0x1 strb r0, [r1] @@ -144867,7 +144867,7 @@ _080C193C: movs r3, 0x2 bl ConvertEasyChatWordsToString adds r0, r4, 0 - bl box_related_two__2 + bl ShowFieldMessage ldr r1, _080C195C movs r0, 0x3 strb r0, [r1] @@ -144880,7 +144880,7 @@ _080C1960: lsls r1, r7, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage _080C196C: pop {r4-r7} pop {r0} @@ -145014,7 +145014,7 @@ _080C1ACC: movs r3, 0x2 bl ConvertEasyChatWordsToString adds r0, r4, 0 - bl box_related_two__2 + bl ShowFieldMessage ldr r1, _080C1AEC movs r0, 0x1 strb r0, [r1] @@ -145027,7 +145027,7 @@ _080C1AF0: lsls r1, r6, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage _080C1AFC: pop {r4-r7} pop {r0} @@ -145131,7 +145131,7 @@ _080C1BD6: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r6} pop {r0} bx r0 @@ -145175,7 +145175,7 @@ DoTVShowPokemonNewsMassOutbreak: @ 80C1BF8 lsls r0, 2 adds r0, r1 ldr r0, [r0] - bl box_related_two__2 + bl ShowFieldMessage pop {r4} pop {r0} bx r0 @@ -145380,7 +145380,7 @@ _080C1DF8: lsls r1, r7, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r7} pop {r0} bx r0 @@ -145481,7 +145481,7 @@ _080C1EE4: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4,r5} pop {r0} bx r0 @@ -145577,7 +145577,7 @@ _080C1FB6: lsls r1, r5, 2 adds r1, r0 ldr r0, [r1] - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r6} pop {r0} bx r0 @@ -152766,7 +152766,7 @@ _080C57C4: strh r0, [r4] b _080C581A _080C57CA: - bl sub_8064C84 + bl IsFieldMessageBoxHidden lsls r0, 24 cmp r0, 0 beq _080C581A @@ -152789,7 +152789,7 @@ _080C57F4: ldrb r0, [r4, 0x2] bl sub_80C56DC ldr r0, _080C5808 - bl box_related_two__2 + bl ShowFieldMessage ldrh r0, [r4] adds r0, 0x1 strh r0, [r4] @@ -231563,7 +231563,7 @@ _080EB81E: adds r1, r5, 0 bl ConvertEasyChatWordsToString adds r0, r4, 0 - bl box_related_two__3 + bl ShowFieldAutoScrollMessage _080EB82E: pop {r4,r5} pop {r0} @@ -257775,7 +257775,7 @@ sub_80F8700: @ 80F8700 bl sub_80F8534 adds r0, r6, 0 bl sub_80F8484 - bl box_related_two__2 + bl ShowFieldMessage pop {r4-r6} pop {r0} bx r0 @@ -301676,7 +301676,7 @@ sub_810D600: @ 810D600 ldr r0, _0810D614 ldrh r0, [r0] bl sub_810D488 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 .align 2, 0 @@ -303218,7 +303218,7 @@ _0810E248: .4byte gUnknown_083F8376 sub_810E24C: @ 810E24C push {lr} ldr r0, _0810E258 - bl box_related_two__2 + bl ShowFieldMessage pop {r0} bx r0 .align 2, 0 diff --git a/include/field_message_box.h b/include/field_message_box.h index 9d5e3a037..072a9fd66 100644 --- a/include/field_message_box.h +++ b/include/field_message_box.h @@ -9,4 +9,11 @@ enum FIELD_MESSAGE_BOX_AUTO_SCROLL, }; +void InitFieldMessageBox(void); +bool8 ShowFieldMessage(u8 *message); +bool8 ShowFieldAutoScrollMessage(u8 *message); +void HideFieldMessageBox(void); +u8 GetFieldMessageBoxMode(void); +bool8 IsFieldMessageBoxHidden(void); + #endif // GUARD_FIELD_MESSAGE_BOX_H diff --git a/src/field_message_box.c b/src/field_message_box.c index 9873f3cd1..b516866f4 100644 --- a/src/field_message_box.c +++ b/src/field_message_box.c @@ -12,17 +12,20 @@ extern u16 gMenuTextTileOffset; static u8 sMessageBoxMode; -void textbox_fdecode_auto_and_task_add(u8 *); -void textbox_auto_and_task_add(void); +static void Task_FieldMessageBox(u8 taskId); +static void CreateFieldMessageBoxTask(void); +static void DestroyFieldMessageBoxTask(void); +static void PrintFieldMessage(u8 *message); +static void PrintFieldMessageFromStringVar4(void); -void sub_8064A74(void) +void InitFieldMessageBox(void) { sMessageBoxMode = FIELD_MESSAGE_BOX_HIDDEN; SetMessageBoxBaseTileNum(gFieldMessageBoxBaseTileNum); InitWindowFromConfig(&gFieldMessageBoxWindow, (struct WindowConfig *)&gWindowConfig_81E6CE4); } -void sub_8064AA0(u8 taskId) +static void Task_FieldMessageBox(u8 taskId) { struct Task *task = &gTasks[taskId]; switch (task->data[0]) @@ -52,19 +55,19 @@ void sub_8064AA0(u8 taskId) } } -void task_add_textbox(void) +static void CreateFieldMessageBoxTask(void) { - CreateTask(sub_8064AA0, 80); + CreateTask(Task_FieldMessageBox, 80); } -void task_del_textbox() +static void DestroyFieldMessageBoxTask(void) { - u8 taskId = FindTaskIdByFunc(sub_8064AA0); + u8 taskId = FindTaskIdByFunc(Task_FieldMessageBox); if (taskId != 0xFF) DestroyTask(taskId); } -bool8 box_related_two__2(u8 *message) +bool8 ShowFieldMessage(u8 *message) { if (sMessageBoxMode != FIELD_MESSAGE_BOX_HIDDEN) { @@ -72,13 +75,13 @@ bool8 box_related_two__2(u8 *message) } else { - textbox_fdecode_auto_and_task_add(message); + PrintFieldMessage(message); sMessageBoxMode = FIELD_MESSAGE_BOX_NORMAL; return TRUE; } } -bool8 box_related_two__3(u8 *message) +bool8 ShowFieldAutoScrollMessage(u8 *message) { if (sMessageBoxMode != FIELD_MESSAGE_BOX_HIDDEN) { @@ -87,7 +90,7 @@ bool8 box_related_two__3(u8 *message) else { sMessageBoxMode = FIELD_MESSAGE_BOX_AUTO_SCROLL; - textbox_fdecode_auto_and_task_add(message); + PrintFieldMessage(message); return TRUE; } } @@ -95,7 +98,7 @@ bool8 box_related_two__3(u8 *message) bool8 unref_sub_8064BB8(u8 *message) { sMessageBoxMode = FIELD_MESSAGE_BOX_AUTO_SCROLL; - textbox_fdecode_auto_and_task_add(message); + PrintFieldMessage(message); return TRUE; } @@ -108,37 +111,37 @@ bool8 unref_sub_8064BD0(u8 *message) else { sMessageBoxMode = FIELD_MESSAGE_BOX_NORMAL; - textbox_auto_and_task_add(); + PrintFieldMessageFromStringVar4(); return TRUE; } } -void textbox_fdecode_auto_and_task_add(u8 *message) +static void PrintFieldMessage(u8 *message) { StringExpandPlaceholders(gStringVar4, message); sub_8002EB0(&gFieldMessageBoxWindow, gStringVar4, gMenuTextTileOffset, 2, 15); - task_add_textbox(); + CreateFieldMessageBoxTask(); } -void textbox_auto_and_task_add(void) +static void PrintFieldMessageFromStringVar4(void) { sub_8002EB0(&gFieldMessageBoxWindow, gStringVar4, gMenuTextTileOffset, 2, 15); - task_add_textbox(); + CreateFieldMessageBoxTask(); } -void textbox_close() +void HideFieldMessageBox(void) { - task_del_textbox(); + DestroyFieldMessageBoxTask(); sub_806536C(&gFieldMessageBoxWindow); sMessageBoxMode = FIELD_MESSAGE_BOX_HIDDEN; } -u8 textbox_any_visible() +u8 GetFieldMessageBoxMode(void) { return sMessageBoxMode; } -bool8 sub_8064C84() +bool8 IsFieldMessageBoxHidden(void) { if (sMessageBoxMode == FIELD_MESSAGE_BOX_HIDDEN) return TRUE; @@ -146,9 +149,9 @@ bool8 sub_8064C84() return FALSE; } -void unref_sub_8064CA0() +void unref_sub_8064CA0(void) { - task_del_textbox(); + DestroyFieldMessageBoxTask(); DrawStandardMessageBox(&gFieldMessageBoxWindow); sMessageBoxMode = FIELD_MESSAGE_BOX_HIDDEN; } diff --git a/src/scrcmd.c b/src/scrcmd.c index 29c227146..f9b64926c 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -7,6 +7,7 @@ #include "fieldmap.h" #include "main.h" #include "decoration.h" +#include "field_message_box.h" extern void ClearRamScript(void); extern u16 *GetVarPointer(u16); @@ -80,14 +81,10 @@ extern void sub_8064D20(void); extern bool8 sub_8064CFC(void); extern void sub_8064DD8(void); extern bool8 sub_8064DB4(void); -extern void textbox_close(void); extern u8 GetFieldObjectIdByLocalIdAndMap(u8, u8, u8); extern u8 FieldObjectClearAnimIfSpecialAnimFinished(void *); extern void sub_80A2178(void); extern void sub_806451C(void); -extern bool8 box_related_two__2(u8 *); -extern bool8 box_related_two__3(u8 *); -extern bool8 sub_8064C84(void); extern bool8 yes_no_box(u8, u8); extern bool8 sub_80B5054(u8, u8, u8, u8); extern bool8 sub_80B50B0(u8, u8, u8, u8, u8); @@ -1227,7 +1224,7 @@ bool8 ScrCmd_releaseall(struct ScriptContext *ctx) { u8 objectId; - textbox_close(); + HideFieldMessageBox(); objectId = GetFieldObjectIdByLocalIdAndMap(0xFF, 0, 0); FieldObjectClearAnimIfSpecialAnimFinished(&gMapObjects[objectId]); sub_80A2178(); @@ -1239,7 +1236,7 @@ bool8 ScrCmd_release(struct ScriptContext *ctx) { u8 objectId; - textbox_close(); + HideFieldMessageBox(); if (gMapObjects[gSelectedMapObject].active) FieldObjectClearAnimIfSpecialAnimFinished(&gMapObjects[gSelectedMapObject]); objectId = GetFieldObjectIdByLocalIdAndMap(0xFF, 0, 0); @@ -1254,7 +1251,7 @@ bool8 ScrCmd_message(struct ScriptContext *ctx) u8 *msg = (u8 *)ScriptReadWord(ctx); if (!msg) msg = (u8 *)ctx->data[0]; - box_related_two__2(msg); + ShowFieldMessage(msg); return FALSE; } @@ -1263,19 +1260,19 @@ bool8 ScrCmd_message2(struct ScriptContext *ctx) u8 *msg = (u8 *)ScriptReadWord(ctx); if (!msg) msg = (u8 *)ctx->data[0]; - box_related_two__3(msg); + ShowFieldAutoScrollMessage(msg); return FALSE; } bool8 ScrCmd_waittext(struct ScriptContext *ctx) { - SetupNativeScript(ctx, sub_8064C84); + SetupNativeScript(ctx, IsFieldMessageBoxHidden); return TRUE; } bool8 ScrCmd_closebutton(struct ScriptContext *ctx) { - textbox_close(); + HideFieldMessageBox(); return FALSE; } @@ -1446,7 +1443,7 @@ bool8 ScrCmd_braillemsg(struct ScriptContext *ctx) bool8 ScrCmd_vtext(struct ScriptContext *ctx) { u32 v1 = ScriptReadWord(ctx); - box_related_two__2((u8 *)(v1 - gUnknown_0202E8B0)); + ShowFieldMessage((u8 *)(v1 - gUnknown_0202E8B0)); return FALSE; } |