diff options
author | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-11-23 08:09:06 +0800 |
---|---|---|
committer | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2019-11-23 08:09:23 +0800 |
commit | 5c1bdd0eb54b4159e4d66d9f733b0f66697a2436 (patch) | |
tree | 4f424d1f724867ead5bd9341f531f19ec0c3b0ba /asm | |
parent | 49eb3504620af68314628eb945c14be4afd441cf (diff) |
party_menu third quarter
Diffstat (limited to 'asm')
-rw-r--r-- | asm/item_menu.s | 4 | ||||
-rw-r--r-- | asm/naming_screen.s | 20 | ||||
-rw-r--r-- | asm/overworld.s | 6 | ||||
-rw-r--r-- | asm/party_menu.s | 5102 | ||||
-rw-r--r-- | asm/pokedex_screen.s | 4 | ||||
-rw-r--r-- | asm/region_map.s | 6 |
6 files changed, 25 insertions, 5117 deletions
diff --git a/asm/item_menu.s b/asm/item_menu.s index 6967a7876..c2c1925f2 100644 --- a/asm/item_menu.s +++ b/asm/item_menu.s @@ -141,14 +141,14 @@ _08107EB4: .4byte gUnknown_203ACFC thumb_func_start CB2_BagMenuFromStartMenu CB2_BagMenuFromStartMenu: @ 8107EB8 push {lr} - ldr r2, _08107EC8 @ =CB2_ReturnToStartMenu + ldr r2, _08107EC8 @ =CB2_ReturnToFieldWithOpenMenu movs r0, 0 movs r1, 0x3 bl GoToBagMenu pop {r0} bx r0 .align 2, 0 -_08107EC8: .4byte CB2_ReturnToStartMenu +_08107EC8: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end CB2_BagMenuFromStartMenu thumb_func_start sub_8107ECC diff --git a/asm/naming_screen.s b/asm/naming_screen.s index a42d6e4ab..49ab9164f 100644 --- a/asm/naming_screen.s +++ b/asm/naming_screen.s @@ -4490,7 +4490,7 @@ sub_809FC90: @ 809FC90 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FCB4 @ =CB2_ReturnToStartMenu + ldr r0, _0809FCB4 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0 movs r3, 0 @@ -4500,7 +4500,7 @@ sub_809FC90: @ 809FC90 bx r0 .align 2, 0 _0809FCB0: .4byte gSaveBlock2Ptr -_0809FCB4: .4byte CB2_ReturnToStartMenu +_0809FCB4: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FC90 thumb_func_start sub_809FCB8 @@ -4512,7 +4512,7 @@ sub_809FCB8: @ 809FCB8 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FCDC @ =CB2_ReturnToStartMenu + ldr r0, _0809FCDC @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x1 movs r3, 0 @@ -4522,7 +4522,7 @@ sub_809FCB8: @ 809FCB8 bx r0 .align 2, 0 _0809FCD8: .4byte gSaveBlock2Ptr -_0809FCDC: .4byte CB2_ReturnToStartMenu +_0809FCDC: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FCB8 thumb_func_start sub_809FCE0 @@ -4534,7 +4534,7 @@ sub_809FCE0: @ 809FCE0 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD04 @ =CB2_ReturnToStartMenu + ldr r0, _0809FD04 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x2 movs r3, 0 @@ -4544,7 +4544,7 @@ sub_809FCE0: @ 809FCE0 bx r0 .align 2, 0 _0809FD00: .4byte gSaveBlock2Ptr -_0809FD04: .4byte CB2_ReturnToStartMenu +_0809FD04: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FCE0 thumb_func_start sub_809FD08 @@ -4556,7 +4556,7 @@ sub_809FD08: @ 809FD08 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD2C @ =CB2_ReturnToStartMenu + ldr r0, _0809FD2C @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x3 movs r3, 0 @@ -4566,7 +4566,7 @@ sub_809FD08: @ 809FD08 bx r0 .align 2, 0 _0809FD28: .4byte gSaveBlock2Ptr -_0809FD2C: .4byte CB2_ReturnToStartMenu +_0809FD2C: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FD08 thumb_func_start sub_809FD30 @@ -4578,7 +4578,7 @@ sub_809FD30: @ 809FD30 ldrb r2, [r1, 0x8] movs r0, 0 str r0, [sp] - ldr r0, _0809FD54 @ =CB2_ReturnToStartMenu + ldr r0, _0809FD54 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x4] movs r0, 0x4 movs r3, 0 @@ -4588,7 +4588,7 @@ sub_809FD30: @ 809FD30 bx r0 .align 2, 0 _0809FD50: .4byte gSaveBlock2Ptr -_0809FD54: .4byte CB2_ReturnToStartMenu +_0809FD54: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_809FD30 .align 2, 0 @ Don't pad with nop. diff --git a/asm/overworld.s b/asm/overworld.s index 29c676060..370aa054d 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -3754,8 +3754,8 @@ _080568A0: .4byte gFieldCallback _080568A4: .4byte sub_807DDD0 thumb_func_end c2_8056854 - thumb_func_start CB2_ReturnToStartMenu -CB2_ReturnToStartMenu: @ 80568A8 + thumb_func_start CB2_ReturnToFieldWithOpenMenu +CB2_ReturnToFieldWithOpenMenu: @ 80568A8 push {lr} bl sub_80569BC ldr r1, _080568BC @ =gFieldCallback2 @@ -3767,7 +3767,7 @@ CB2_ReturnToStartMenu: @ 80568A8 .align 2, 0 _080568BC: .4byte gFieldCallback2 _080568C0: .4byte FieldCB2_ReturnToStartMenuInit - thumb_func_end CB2_ReturnToStartMenu + thumb_func_end CB2_ReturnToFieldWithOpenMenu thumb_func_start sub_80568C4 sub_80568C4: @ 80568C4 diff --git a/asm/party_menu.s b/asm/party_menu.s index 32674fea2..0e68a23b2 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -5,5098 +5,6 @@ .text - thumb_func_start Task_SwitchHoldItemsPrompt -Task_SwitchHoldItemsPrompt: @ 81238A4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081238E4 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _081238DC - ldr r0, _081238E8 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081238EC @ =gPlayerParty - adds r0, r1 - ldr r1, _081238F0 @ =sPartyMenuItemId - ldrh r1, [r1] - movs r2, 0x1 - bl DisplayAlreadyHoldingItemSwitchMessage - ldr r1, _081238F4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081238F8 @ =Task_SwitchItemsYesNo - str r1, [r0] -_081238DC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081238E4: .4byte gPaletteFade -_081238E8: .4byte gPartyMenu -_081238EC: .4byte gPlayerParty -_081238F0: .4byte sPartyMenuItemId -_081238F4: .4byte gTasks -_081238F8: .4byte Task_SwitchItemsYesNo - thumb_func_end Task_SwitchHoldItemsPrompt - - thumb_func_start Task_SwitchItemsYesNo -Task_SwitchItemsYesNo: @ 81238FC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123920 - bl PartyMenuDisplayYesNoMenu - ldr r0, _08123928 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812392C @ =Task_HandleSwitchItemsYesNoInput - str r0, [r1] -_08123920: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123928: .4byte gTasks -_0812392C: .4byte Task_HandleSwitchItemsYesNoInput - thumb_func_end Task_SwitchItemsYesNo - - thumb_func_start Task_HandleSwitchItemsYesNoInput -Task_HandleSwitchItemsYesNoInput: @ 8123930 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123956 - cmp r1, 0 - bgt _08123950 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08123A2C - b _08123A40 -_08123950: - cmp r1, 0x1 - beq _08123A32 - b _08123A40 -_08123956: - ldr r5, _08123998 @ =gSpecialVar_ItemId - ldrh r0, [r5] - movs r1, 0x1 - bl RemoveBagItem - ldr r6, _0812399C @ =sPartyMenuItemId - ldrh r0, [r6] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - cmp r0, 0 - bne _081239AC - ldrh r0, [r5] - movs r1, 0x1 - bl AddBagItem - ldrh r0, [r6] - bl BufferBagFullCantTakeItemMessage - ldr r0, _081239A0 @ =gStringVar4 - movs r1, 0 - bl DisplayPartyMenuMessage - ldr r1, _081239A4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081239A8 @ =Task_ReturnToChooseMonAfterText - str r1, [r0] - b _08123A40 - .align 2, 0 -_08123998: .4byte gSpecialVar_ItemId -_0812399C: .4byte sPartyMenuItemId -_081239A0: .4byte gStringVar4 -_081239A4: .4byte gTasks -_081239A8: .4byte Task_ReturnToChooseMonAfterText -_081239AC: - ldrh r0, [r5] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _081239EC - ldr r0, _081239DC @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081239E0 @ =gPlayerParty - adds r0, r1 - ldrh r1, [r5] - bl GiveItemToMon - ldr r1, _081239E4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081239E8 @ =Task_WriteMailToGiveMonAfterText - str r1, [r0] - b _08123A40 - .align 2, 0 -_081239DC: .4byte gPartyMenu -_081239E0: .4byte gPlayerParty -_081239E4: .4byte gTasks -_081239E8: .4byte Task_WriteMailToGiveMonAfterText -_081239EC: - ldr r0, _08123A1C @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123A20 @ =gPlayerParty - adds r0, r1 - ldrh r1, [r5] - bl GiveItemToMon - ldrh r0, [r5] - ldrh r1, [r6] - movs r2, 0x1 - bl DisplaySwitchedHeldItemMessage - ldr r1, _08123A24 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123A28 @ =Task_UpdateHeldItemSprite - str r1, [r0] - b _08123A40 - .align 2, 0 -_08123A1C: .4byte gPartyMenu -_08123A20: .4byte gPlayerParty -_08123A24: .4byte gTasks -_08123A28: .4byte Task_UpdateHeldItemSprite -_08123A2C: - movs r0, 0x5 - bl PlaySE -_08123A32: - ldr r0, _08123A48 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123A4C @ =Task_ReturnToChooseMonAfterText - str r0, [r1] -_08123A40: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08123A48: .4byte gTasks -_08123A4C: .4byte Task_ReturnToChooseMonAfterText - thumb_func_end Task_HandleSwitchItemsYesNoInput - - thumb_func_start Task_WriteMailToGiveMonAfterText -Task_WriteMailToGiveMonAfterText: @ 8123A50 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123A70 - ldr r0, _08123A78 @ =sPartyMenuInternal - ldr r1, [r0] - ldr r0, _08123A7C @ =CB2_WriteMailToGiveMon - str r0, [r1, 0x4] - adds r0, r4, 0 - bl Task_ClosePartyMenu -_08123A70: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123A78: .4byte sPartyMenuInternal -_08123A7C: .4byte CB2_WriteMailToGiveMon - thumb_func_end Task_WriteMailToGiveMonAfterText - - thumb_func_start CB2_WriteMailToGiveMon -CB2_WriteMailToGiveMon: @ 8123A80 - push {lr} - ldr r0, _08123AB8 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123ABC @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08123AC0 @ =gSaveBlock1Ptr - lsls r2, r0, 3 - adds r2, r0 - lsls r2, 2 - ldr r0, _08123AC4 @ =0x00002cd0 - adds r2, r0 - ldr r1, [r1] - adds r1, r2 - ldr r2, _08123AC8 @ =CB2_ReturnToPartyMenuFromWritingMail - movs r0, 0x4 - bl DoEasyChatScreen - pop {r0} - bx r0 - .align 2, 0 -_08123AB8: .4byte gPartyMenu -_08123ABC: .4byte gPlayerParty -_08123AC0: .4byte gSaveBlock1Ptr -_08123AC4: .4byte 0x00002cd0 -_08123AC8: .4byte CB2_ReturnToPartyMenuFromWritingMail - thumb_func_end CB2_WriteMailToGiveMon - - thumb_func_start CB2_ReturnToPartyMenuFromWritingMail -CB2_ReturnToPartyMenuFromWritingMail: @ 8123ACC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r6, _08123B38 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r6, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08123B3C @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - ldr r0, _08123B40 @ =gSpecialVar_Result - ldrh r7, [r0] - cmp r7, 0 - bne _08123B4C - adds r0, r5, 0 - bl TakeMailFromMon - ldr r4, _08123B44 @ =sPartyMenuItemId - adds r0, r5, 0 - movs r1, 0xC - adds r2, r4, 0 - bl SetMonData - ldrh r0, [r4] - movs r1, 0x1 - bl RemoveBagItem - mov r0, r8 - movs r1, 0x1 - bl AddBagItem - ldrb r0, [r6, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r6, 0xB] - str r7, [sp] - ldr r1, _08123B48 @ =Task_TryCreateSelectionWindow - str r1, [sp, 0x4] - ldr r1, [r6] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl InitPartyMenu - b _08123B68 - .align 2, 0 -_08123B38: .4byte gPartyMenu -_08123B3C: .4byte gPlayerParty -_08123B40: .4byte gSpecialVar_Result -_08123B44: .4byte sPartyMenuItemId -_08123B48: .4byte Task_TryCreateSelectionWindow -_08123B4C: - ldrb r0, [r6, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r6, 0xB] - movs r1, 0 - str r1, [sp] - ldr r1, _08123B74 @ =Task_DisplayGaveMailFromPartyMessage - str r1, [sp, 0x4] - ldr r1, [r6] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl InitPartyMenu -_08123B68: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123B74: .4byte Task_DisplayGaveMailFromPartyMessage - thumb_func_end CB2_ReturnToPartyMenuFromWritingMail - - thumb_func_start Task_DisplayGaveMailFromPartyMessage -Task_DisplayGaveMailFromPartyMessage: @ 8123B78 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08123BB0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08123BDE - ldr r1, _08123BB4 @ =sPartyMenuItemId - ldrh r0, [r1] - cmp r0, 0 - bne _08123BC4 - ldr r0, _08123BB8 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123BBC @ =gPlayerParty - adds r0, r1 - ldr r1, _08123BC0 @ =gSpecialVar_ItemId - ldrh r1, [r1] - movs r2, 0 - movs r3, 0 - bl DisplayGaveHeldItemMessage - b _08123BD0 - .align 2, 0 -_08123BB0: .4byte gPaletteFade -_08123BB4: .4byte sPartyMenuItemId -_08123BB8: .4byte gPartyMenu -_08123BBC: .4byte gPlayerParty -_08123BC0: .4byte gSpecialVar_ItemId -_08123BC4: - ldr r0, _08123BE4 @ =gSpecialVar_ItemId - ldrh r0, [r0] - ldrh r1, [r1] - movs r2, 0 - bl DisplaySwitchedHeldItemMessage -_08123BD0: - ldr r0, _08123BE8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123BEC @ =Task_UpdateHeldItemSprite - str r0, [r1] -_08123BDE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123BE4: .4byte gSpecialVar_ItemId -_08123BE8: .4byte gTasks -_08123BEC: .4byte Task_UpdateHeldItemSprite - thumb_func_end Task_DisplayGaveMailFromPartyMessage - - thumb_func_start Task_UpdateHeldItemSprite -Task_UpdateHeldItemSprite: @ 8123BF0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _08123C2C @ =gPartyMenu - ldrb r4, [r0, 0x9] - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123C24 - lsls r2, r4, 24 - asrs r2, 24 - movs r0, 0x64 - muls r0, r2 - ldr r1, _08123C30 @ =gPlayerParty - adds r0, r1 - ldr r1, _08123C34 @ =sPartyMenuBoxes - lsls r2, 4 - ldr r1, [r1] - adds r1, r2 - bl UpdatePartyMonHeldItemSprite - adds r0, r5, 0 - bl Task_ReturnToChooseMonAfterText -_08123C24: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123C2C: .4byte gPartyMenu -_08123C30: .4byte gPlayerParty -_08123C34: .4byte sPartyMenuBoxes - thumb_func_end Task_UpdateHeldItemSprite - - thumb_func_start CursorCB_TakeItem -CursorCB_TakeItem: @ 8123C38 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08123C90 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08123C94 @ =gPlayerParty - adds r5, r1, r0 - adds r0, r5, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - movs r0, 0x5 - bl PlaySE - ldr r4, _08123C98 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - adds r0, r5, 0 - bl TryTakeMonItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08123C9C - cmp r0, 0x1 - beq _08123CC0 - adds r0, r5, 0 - adds r1, r6, 0 - movs r2, 0x1 - bl DisplayTookHeldItemMessage - b _08123CCE - .align 2, 0 -_08123C90: .4byte gPartyMenu -_08123C94: .4byte gPlayerParty -_08123C98: .4byte sPartyMenuInternal -_08123C9C: - ldr r1, _08123CB4 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r4, _08123CB8 @ =gStringVar4 - ldr r1, _08123CBC @ =gUnknown_8416C8F - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - b _08123CC8 - .align 2, 0 -_08123CB4: .4byte gStringVar1 -_08123CB8: .4byte gStringVar4 -_08123CBC: .4byte gUnknown_8416C8F -_08123CC0: - adds r0, r6, 0 - bl BufferBagFullCantTakeItemMessage - ldr r0, _08123CE8 @ =gStringVar4 -_08123CC8: - movs r1, 0x1 - bl DisplayPartyMenuMessage -_08123CCE: - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r0, _08123CEC @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123CF0 @ =Task_UpdateHeldItemSprite - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08123CE8: .4byte gStringVar4 -_08123CEC: .4byte gTasks -_08123CF0: .4byte Task_UpdateHeldItemSprite - thumb_func_end CursorCB_TakeItem - - thumb_func_start CursorCB_Mail -CursorCB_Mail: @ 8123CF4 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _08123D44 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - ldr r0, _08123D48 @ =gPlayerParty - ldr r1, _08123D4C @ =gPartyMenu - ldrb r1, [r1, 0x9] - movs r2, 0x9 - bl SetPartyMonSelectionActions - movs r0, 0x2 - bl DisplaySelectionWindow - movs r0, 0x1A - bl DisplayPartyMenuStdMessage - ldr r1, _08123D50 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _08123D54 @ =Task_HandleSelectionMenuInput - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123D44: .4byte sPartyMenuInternal -_08123D48: .4byte gPlayerParty -_08123D4C: .4byte gPartyMenu -_08123D50: .4byte gTasks -_08123D54: .4byte Task_HandleSelectionMenuInput - thumb_func_end CursorCB_Mail - - thumb_func_start CursorCB_Read -CursorCB_Read: @ 8123D58 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r0, _08123D7C @ =sPartyMenuInternal - ldr r1, [r0] - ldr r0, _08123D80 @ =CB2_ReadHeldMail - str r0, [r1, 0x4] - adds r0, r4, 0 - bl Task_ClosePartyMenu - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123D7C: .4byte sPartyMenuInternal -_08123D80: .4byte CB2_ReadHeldMail - thumb_func_end CursorCB_Read - - thumb_func_start CB2_ReadHeldMail -CB2_ReadHeldMail: @ 8123D84 - push {lr} - ldr r0, _08123DB8 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123DBC @ =gPlayerParty - adds r0, r1 - movs r1, 0x40 - bl GetMonData - ldr r2, _08123DC0 @ =gSaveBlock1Ptr - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _08123DC4 @ =0x00002cd0 - adds r1, r0 - ldr r0, [r2] - adds r0, r1 - ldr r1, _08123DC8 @ =CB2_ReturnToPartyMenuFromReadingMail - movs r2, 0x1 - bl ReadMail - pop {r0} - bx r0 - .align 2, 0 -_08123DB8: .4byte gPartyMenu -_08123DBC: .4byte gPlayerParty -_08123DC0: .4byte gSaveBlock1Ptr -_08123DC4: .4byte 0x00002cd0 -_08123DC8: .4byte CB2_ReturnToPartyMenuFromReadingMail - thumb_func_end CB2_ReadHeldMail - - thumb_func_start CB2_ReturnToPartyMenuFromReadingMail -CB2_ReturnToPartyMenuFromReadingMail: @ 8123DCC - push {lr} - sub sp, 0xC - ldr r2, _08123E00 @ =gPaletteFade - ldrb r0, [r2, 0x8] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x8] - ldr r3, _08123E04 @ =gPartyMenu - ldrb r0, [r3, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r3, 0xB] - movs r1, 0x16 - str r1, [sp] - ldr r1, _08123E08 @ =Task_TryCreateSelectionWindow - str r1, [sp, 0x4] - ldr r1, [r3] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r3, 0x1 - bl InitPartyMenu - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08123E00: .4byte gPaletteFade -_08123E04: .4byte gPartyMenu -_08123E08: .4byte Task_TryCreateSelectionWindow - thumb_func_end CB2_ReturnToPartyMenuFromReadingMail - - thumb_func_start CursorCB_TakeMail -CursorCB_TakeMail: @ 8123E0C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r5, _08123E48 @ =sPartyMenuInternal - ldr r0, [r5] - adds r0, 0xD - bl PartyMenuRemoveWindow - ldr r0, [r5] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, _08123E4C @ =gText_SendMailToPC - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _08123E50 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123E54 @ =Task_SendMailToPCYesNo - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08123E48: .4byte sPartyMenuInternal -_08123E4C: .4byte gText_SendMailToPC -_08123E50: .4byte gTasks -_08123E54: .4byte Task_SendMailToPCYesNo - thumb_func_end CursorCB_TakeMail - - thumb_func_start Task_SendMailToPCYesNo -Task_SendMailToPCYesNo: @ 8123E58 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123E7C - bl PartyMenuDisplayYesNoMenu - ldr r0, _08123E84 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123E88 @ =Task_HandleSendMailToPCYesNoInput - str r0, [r1] -_08123E7C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123E84: .4byte gTasks -_08123E88: .4byte Task_HandleSendMailToPCYesNoInput - thumb_func_end Task_SendMailToPCYesNo - - thumb_func_start Task_HandleSendMailToPCYesNoInput -Task_HandleSendMailToPCYesNoInput: @ 8123E8C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123EB2 - cmp r1, 0 - bgt _08123EAC - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08123F1C - b _08123F38 -_08123EAC: - cmp r1, 0x1 - beq _08123F22 - b _08123F38 -_08123EB2: - ldr r0, _08123EE4 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08123EE8 @ =gPlayerParty - adds r0, r1 - bl TakeMailFromMon2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08123EF8 - ldr r0, _08123EEC @ =gText_MailSentToPC - movs r1, 0 - bl DisplayPartyMenuMessage - ldr r1, _08123EF0 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123EF4 @ =Task_UpdateHeldItemSprite - b _08123F36 - .align 2, 0 -_08123EE4: .4byte gPartyMenu -_08123EE8: .4byte gPlayerParty -_08123EEC: .4byte gText_MailSentToPC -_08123EF0: .4byte gTasks -_08123EF4: .4byte Task_UpdateHeldItemSprite -_08123EF8: - ldr r0, _08123F10 @ =gText_PCMailboxFull - movs r1, 0 - bl DisplayPartyMenuMessage - ldr r1, _08123F14 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123F18 @ =Task_ReturnToChooseMonAfterText - b _08123F36 - .align 2, 0 -_08123F10: .4byte gText_PCMailboxFull -_08123F14: .4byte gTasks -_08123F18: .4byte Task_ReturnToChooseMonAfterText -_08123F1C: - movs r0, 0x5 - bl PlaySE -_08123F22: - ldr r0, _08123F40 @ =gText_MailMessageWillBeLost - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _08123F44 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08123F48 @ =Task_LoseMailMessageYesNo -_08123F36: - str r1, [r0] -_08123F38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123F40: .4byte gText_MailMessageWillBeLost -_08123F44: .4byte gTasks -_08123F48: .4byte Task_LoseMailMessageYesNo - thumb_func_end Task_HandleSendMailToPCYesNoInput - - thumb_func_start Task_LoseMailMessageYesNo -Task_LoseMailMessageYesNo: @ 8123F4C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08123F70 - bl PartyMenuDisplayYesNoMenu - ldr r0, _08123F78 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08123F7C @ =Task_HandleLoseMailMessageYesNoInput - str r0, [r1] -_08123F70: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08123F78: .4byte gTasks -_08123F7C: .4byte Task_HandleLoseMailMessageYesNoInput - thumb_func_end Task_LoseMailMessageYesNo - - thumb_func_start Task_HandleLoseMailMessageYesNoInput -Task_HandleLoseMailMessageYesNoInput: @ 8123F80 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r5, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08123FAA - cmp r1, 0 - bgt _08123FA4 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0812403C - b _08124050 -_08123FA4: - cmp r1, 0x1 - beq _08124042 - b _08124050 -_08123FAA: - ldr r0, _08123FFC @ =gPartyMenu - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r7, 0x64 - muls r0, r7 - ldr r6, _08124000 @ =gPlayerParty - adds r0, r6 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r4, 0 - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124010 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r7 - adds r0, r6 - bl TakeMailFromMon - ldr r0, _08124004 @ =gText_MailTakenFromPkmn - movs r1, 0 - bl DisplayPartyMenuMessage - ldr r1, _08124008 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812400C @ =Task_UpdateHeldItemSprite - str r1, [r0] - b _08124050 - .align 2, 0 -_08123FFC: .4byte gPartyMenu -_08124000: .4byte gPlayerParty -_08124004: .4byte gText_MailTakenFromPkmn -_08124008: .4byte gTasks -_0812400C: .4byte Task_UpdateHeldItemSprite -_08124010: - adds r0, r4, 0 - bl BufferBagFullCantTakeItemMessage - ldr r0, _08124030 @ =gStringVar4 - movs r1, 0 - bl DisplayPartyMenuMessage - ldr r1, _08124034 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124038 @ =Task_ReturnToChooseMonAfterText - str r1, [r0] - b _08124050 - .align 2, 0 -_08124030: .4byte gStringVar4 -_08124034: .4byte gTasks -_08124038: .4byte Task_ReturnToChooseMonAfterText -_0812403C: - movs r0, 0x5 - bl PlaySE -_08124042: - ldr r0, _0812405C @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124060 @ =Task_ReturnToChooseMonAfterText - str r0, [r1] -_08124050: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0812405C: .4byte gTasks -_08124060: .4byte Task_ReturnToChooseMonAfterText - thumb_func_end Task_HandleLoseMailMessageYesNoInput - - thumb_func_start CursorCB_Cancel2 -CursorCB_Cancel2: @ 8124064 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _081240E0 @ =gPartyMenu - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _081240E4 @ =gPlayerParty - mov r9, r0 - add r5, r9 - movs r0, 0x5 - bl PlaySE - ldr r4, _081240E8 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - mov r0, r8 - ldrb r4, [r0, 0x9] - adds r0, r5, 0 - bl GetPartyMenuActionsType - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r0, r9 - adds r1, r4, 0 - bl SetPartyMonSelectionActions - movs r0, 0 - bl DisplaySelectionWindow - movs r0, 0x16 - bl DisplayPartyMenuStdMessage - ldr r1, _081240EC @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - movs r1, 0xFF - strh r1, [r0, 0x8] - ldr r1, _081240F0 @ =Task_HandleSelectionMenuInput - str r1, [r0] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081240E0: .4byte gPartyMenu -_081240E4: .4byte gPlayerParty -_081240E8: .4byte sPartyMenuInternal -_081240EC: .4byte gTasks -_081240F0: .4byte Task_HandleSelectionMenuInput - thumb_func_end CursorCB_Cancel2 - - thumb_func_start CursorCB_SendMon -CursorCB_SendMon: @ 81240F4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r5, _08124120 @ =sPartyMenuInternal - ldr r0, [r5] - adds r0, 0xC - bl PartyMenuRemoveWindow - bl TrySwitchInPokemon - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124124 - adds r0, r4, 0 - bl Task_ClosePartyMenu - b _08124142 - .align 2, 0 -_08124120: .4byte sPartyMenuInternal -_08124124: - ldr r0, [r5] - adds r0, 0xD - bl PartyMenuRemoveWindow - ldr r0, _08124148 @ =gStringVar4 - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _0812414C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124150 @ =Task_ReturnToChooseMonAfterText - str r1, [r0] -_08124142: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08124148: .4byte gStringVar4 -_0812414C: .4byte gTasks -_08124150: .4byte Task_ReturnToChooseMonAfterText - thumb_func_end CursorCB_SendMon - - thumb_func_start CursorCB_Enter -CursorCB_Enter: @ 8124154 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _0812417C @ =gPartyMenu - ldrb r1, [r0, 0x8] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0x80 - bne _08124184 - movs r0, 0x2 - mov r8, r0 - ldr r1, _08124180 @ =gUnknown_8416B3E - str r1, [sp] - b _0812418C - .align 2, 0 -_0812417C: .4byte gPartyMenu -_08124180: .4byte gUnknown_8416B3E -_08124184: - movs r2, 0x3 - mov r8, r2 - ldr r0, _081241FC @ =gUnknown_8416B16 - str r0, [sp] -_0812418C: - ldr r4, _08124200 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - movs r5, 0 - lsls r1, r7, 2 - mov r9, r1 - cmp r5, r8 - bcs _08124222 - ldr r6, _08124204 @ =gPartyMenu - ldr r1, _08124208 @ =gTasks - mov r2, r9 - adds r0, r2, r7 - lsls r0, 3 - adds r0, r1 - mov r10, r0 -_081241B6: - ldr r0, _0812420C @ =gSelectedOrderFromParty - adds r4, r5, r0 - ldrb r0, [r4] - cmp r0, 0 - bne _08124218 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r6, 0x9] - adds r0, 0x1 - strb r0, [r4] - adds r0, r5, 0x2 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08124210 @ =sPartyMenuBoxes - movs r2, 0x9 - ldrsb r2, [r6, r2] - lsls r2, 4 - ldr r1, [r1] - adds r1, r2 - movs r2, 0x1 - bl DisplayPartyPokemonDescriptionText - mov r0, r8 - subs r0, 0x1 - cmp r5, r0 - bne _081241F0 - bl MoveCursorToConfirm -_081241F0: - movs r0, 0 - bl DisplayPartyMenuStdMessage - ldr r0, _08124214 @ =Task_HandleChooseMonInput - mov r1, r10 - b _0812423C - .align 2, 0 -_081241FC: .4byte gUnknown_8416B16 -_08124200: .4byte sPartyMenuInternal -_08124204: .4byte gPartyMenu -_08124208: .4byte gTasks -_0812420C: .4byte gSelectedOrderFromParty -_08124210: .4byte sPartyMenuBoxes -_08124214: .4byte Task_HandleChooseMonInput -_08124218: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r8 - bcc _081241B6 -_08124222: - movs r0, 0x1A - bl PlaySE - ldr r0, [sp] - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r0, _08124250 @ =gTasks - mov r2, r9 - adds r1, r2, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124254 @ =Task_ReturnToChooseMonAfterText -_0812423C: - str r0, [r1] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124250: .4byte gTasks -_08124254: .4byte Task_ReturnToChooseMonAfterText - thumb_func_end CursorCB_Enter - - thumb_func_start MoveCursorToConfirm -MoveCursorToConfirm: @ 8124258 - push {r4,lr} - ldr r4, _08124274 @ =gPartyMenu - ldrb r0, [r4, 0x9] - movs r1, 0 - bl AnimatePartySlot - movs r0, 0x6 - strb r0, [r4, 0x9] - movs r1, 0x1 - bl AnimatePartySlot - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124274: .4byte gPartyMenu - thumb_func_end MoveCursorToConfirm - - thumb_func_start CursorCB_NoEntry -CursorCB_NoEntry: @ 8124278 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r4, _081242BC @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - movs r4, 0 - ldr r3, _081242C0 @ =gSelectedOrderFromParty - ldr r6, _081242C4 @ =gPartyMenu - adds r5, r6, 0 -_0812429E: - adds r2, r4, r3 - ldrb r1, [r2] - movs r0, 0x9 - ldrsb r0, [r5, r0] - adds r0, 0x1 - cmp r1, r0 - bne _081242DC - movs r1, 0 - strb r1, [r2] - cmp r4, 0 - beq _081242C8 - cmp r4, 0x1 - beq _081242D4 - b _081242E6 - .align 2, 0 -_081242BC: .4byte sPartyMenuInternal -_081242C0: .4byte gSelectedOrderFromParty -_081242C4: .4byte gPartyMenu -_081242C8: - ldrb r0, [r3, 0x1] - strb r0, [r3] - ldrb r0, [r3, 0x2] - strb r0, [r3, 0x1] - strb r4, [r3, 0x2] - b _081242E6 -_081242D4: - ldrb r0, [r3, 0x2] - strb r0, [r3, 0x1] - strb r1, [r3, 0x2] - b _081242E6 -_081242DC: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _0812429E -_081242E6: - ldr r5, _08124344 @ =sPartyMenuBoxes - movs r0, 0x9 - ldrsb r0, [r6, r0] - lsls r0, 4 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x1 - movs r2, 0x1 - bl DisplayPartyPokemonDescriptionText - ldr r4, _08124348 @ =gSelectedOrderFromParty - ldrb r0, [r4] - cmp r0, 0 - beq _08124312 - lsls r0, 4 - subs r0, 0x10 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x2 - movs r2, 0x1 - bl DisplayPartyPokemonDescriptionText -_08124312: - ldrb r0, [r4, 0x1] - cmp r0, 0 - beq _08124328 - lsls r0, 4 - subs r0, 0x10 - ldr r1, [r5] - adds r1, r0 - movs r0, 0x3 - movs r2, 0x1 - bl DisplayPartyPokemonDescriptionText -_08124328: - movs r0, 0 - bl DisplayPartyMenuStdMessage - ldr r0, _0812434C @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124350 @ =Task_HandleChooseMonInput - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124344: .4byte sPartyMenuBoxes -_08124348: .4byte gSelectedOrderFromParty -_0812434C: .4byte gTasks -_08124350: .4byte Task_HandleChooseMonInput - thumb_func_end CursorCB_NoEntry - - thumb_func_start CursorCB_Store -CursorCB_Store: @ 8124354 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - ldr r1, _0812437C @ =gSpecialVar_0x8004 - ldr r0, _08124380 @ =gPartyMenu - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - strh r0, [r1] - adds r0, r4, 0 - bl Task_ClosePartyMenu - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0812437C: .4byte gSpecialVar_0x8004 -_08124380: .4byte gPartyMenu - thumb_func_end CursorCB_Store - - thumb_func_start CursorCB_Register -CursorCB_Register: @ 8124384 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08124410 @ =gPartyMenu - mov r9, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r4, _08124414 @ =gPlayerParty - adds r0, r4 - movs r1, 0x41 - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - mov r1, r9 - movs r0, 0x9 - ldrsb r0, [r1, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r9 - movs r0, 0x9 - ldrsb r0, [r1, r0] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r4 - movs r1, 0x50 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80F9800 - ldr r0, [r0] - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl Trade_CanTradeSelectedMon - cmp r0, 0x1 - beq _08124418 - cmp r0, 0x2 - beq _0812442C - movs r0, 0x5 - bl PlaySE - adds r0, r7, 0 - bl Task_ClosePartyMenu - b _0812446C - .align 2, 0 -_08124410: .4byte gPartyMenu -_08124414: .4byte gPlayerParty -_08124418: - ldr r0, _08124424 @ =gStringVar4 - ldr r1, _08124428 @ =gText_PkmnCantBeTradedNow - bl StringExpandPlaceholders - b _08124434 - .align 2, 0 -_08124424: .4byte gStringVar4 -_08124428: .4byte gText_PkmnCantBeTradedNow -_0812442C: - ldr r0, _08124478 @ =gStringVar4 - ldr r1, _0812447C @ =gText_EggCantBeTradedNow - bl StringExpandPlaceholders -_08124434: - movs r0, 0x1A - bl PlaySE - ldr r4, _08124480 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - ldr r4, _08124478 @ =gStringVar4 - ldr r1, _08124484 @ =gText_PauseUntilPress - adds r0, r4, 0 - bl StringAppend - adds r0, r4, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _08124488 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812448C @ =Task_ReturnToChooseMonAfterText - str r1, [r0] -_0812446C: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124478: .4byte gStringVar4 -_0812447C: .4byte gText_EggCantBeTradedNow -_08124480: .4byte sPartyMenuInternal -_08124484: .4byte gText_PauseUntilPress -_08124488: .4byte gTasks -_0812448C: .4byte Task_ReturnToChooseMonAfterText - thumb_func_end CursorCB_Register - - thumb_func_start CursorCB_Trade1 -CursorCB_Trade1: @ 8124490 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08124558 @ =gPartyMenu - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - muls r0, r6 - ldr r4, _0812455C @ =gPlayerParty - adds r0, r4 - movs r1, 0x41 - bl GetMonData - mov r9, r0 - mov r1, r9 - lsls r1, 16 - lsrs r1, 16 - mov r9, r1 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r4 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r4 - movs r1, 0x50 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80F9800 - ldr r0, [r0] - ldr r1, _08124560 @ =gUnknown_203B064 - ldr r1, [r1] - ldr r2, _08124564 @ =gUnionRoomOfferedSpecies - ldrh r3, [r2] - ldr r2, _08124568 @ =gUnionRoomRequestedMonType - ldrb r2, [r2] - str r2, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - mov r2, r9 - bl GetUnionRoomTradeMessageId - cmp r0, 0 - beq _08124584 - ldr r5, _0812456C @ =gStringVar4 - ldr r1, _08124570 @ =sUnionRoomTradeMessages - subs r0, 0x1 - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r5, 0 - bl StringExpandPlaceholders - movs r0, 0x1A - bl PlaySE - ldr r4, _08124574 @ =sPartyMenuInternal - ldr r0, [r4] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r4] - adds r0, 0xD - bl PartyMenuRemoveWindow - ldr r1, _08124578 @ =gText_PauseUntilPress - adds r0, r5, 0 - bl StringAppend - adds r0, r5, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _0812457C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124580 @ =Task_ReturnToChooseMonAfterText - str r1, [r0] - b _08124590 - .align 2, 0 -_08124558: .4byte gPartyMenu -_0812455C: .4byte gPlayerParty -_08124560: .4byte gUnknown_203B064 -_08124564: .4byte gUnionRoomOfferedSpecies -_08124568: .4byte gUnionRoomRequestedMonType -_0812456C: .4byte gStringVar4 -_08124570: .4byte sUnionRoomTradeMessages -_08124574: .4byte sPartyMenuInternal -_08124578: .4byte gText_PauseUntilPress -_0812457C: .4byte gTasks -_08124580: .4byte Task_ReturnToChooseMonAfterText -_08124584: - movs r0, 0x5 - bl PlaySE - adds r0, r7, 0 - bl Task_ClosePartyMenu -_08124590: - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end CursorCB_Trade1 - - thumb_func_start CursorCB_Trade2 -CursorCB_Trade2: @ 81245A0 - bx lr - thumb_func_end CursorCB_Trade2 - - thumb_func_start CursorCB_FieldMove -CursorCB_FieldMove: @ 81245A4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl Menu_GetCursorPos - ldr r5, _08124610 @ =sPartyMenuInternal - ldr r1, [r5] - lsls r0, 24 - lsrs r0, 24 - adds r1, 0xF - adds r1, r0 - ldrb r0, [r1] - subs r0, 0x12 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r1, _08124614 @ =sFieldMoveCursorCallbacks - lsls r0, r4, 3 - adds r7, r0, r1 - ldr r0, [r7] - cmp r0, 0 - bne _081245D6 - b _081247B4 -_081245D6: - ldr r0, [r5] - adds r0, 0xC - bl PartyMenuRemoveWindow - ldr r0, [r5] - adds r0, 0xD - bl PartyMenuRemoveWindow - bl MenuHelpers_LinkSomething - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081245FA - bl InUnionRoom - cmp r0, 0x1 - bne _0812461C -_081245FA: - adds r0, r4, 0 - subs r0, 0x9 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08124618 - movs r0, 0xD - bl DisplayPartyMenuStdMessage - b _081247A6 - .align 2, 0 -_08124610: .4byte sPartyMenuInternal -_08124614: .4byte sFieldMoveCursorCallbacks -_08124618: - ldrb r0, [r7, 0x4] - b _081247A2 -_0812461C: - cmp r4, 0x6 - bhi _08124658 - movs r1, 0x82 - lsls r1, 4 - adds r0, r4, r1 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124658 - ldr r0, _0812464C @ =gText_CantUseUntilNewBadge - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _08124650 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08124654 @ =Task_ReturnToChooseMonAfterText - str r1, [r0] - b _081247B4 - .align 2, 0 -_0812464C: .4byte gText_CantUseUntilNewBadge -_08124650: .4byte gTasks -_08124654: .4byte Task_ReturnToChooseMonAfterText -_08124658: - ldr r1, _08124680 @ =sFieldMoveCursorCallbacks - lsls r0, r4, 3 - adds r5, r0, r1 - ldr r0, [r5] - bl _call_via_r0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0812466E - b _0812478C -_0812466E: - subs r0, r4, 0x2 - cmp r0, 0x8 - bhi _0812475C - lsls r0, 2 - ldr r1, _08124684 @ =_08124688 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08124680: .4byte sFieldMoveCursorCallbacks -_08124684: .4byte _08124688 - .align 2, 0 -_08124688: - .4byte _0812474C - .4byte _0812475C - .4byte _0812475C - .4byte _0812475C - .4byte _0812475C - .4byte _081246B4 - .4byte _081246F0 - .4byte _081246AC - .4byte _081246AC -_081246AC: - adds r0, r6, 0 - bl ChooseMonForSoftboiled - b _081247B4 -_081246B4: - ldr r0, _081246E0 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x1C - ldrsb r0, [r1, r0] - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1, 0x1D] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl Overworld_GetMapHeaderByGroupAndId - adds r1, r0, 0 - ldr r0, _081246E4 @ =gStringVar1 - ldrb r1, [r1, 0x14] - bl GetMapNameGeneric - ldr r0, _081246E8 @ =gStringVar4 - ldr r1, _081246EC @ =gUnknown_8417640 - b _08124720 - .align 2, 0 -_081246E0: .4byte gSaveBlock1Ptr -_081246E4: .4byte gStringVar1 -_081246E8: .4byte gStringVar4 -_081246EC: .4byte gUnknown_8417640 -_081246F0: - ldr r0, _08124738 @ =gSaveBlock1Ptr - ldr r1, [r0] - adds r0, r1, 0 - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r0, 16 - lsrs r0, 16 - adds r1, 0x25 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl Overworld_GetMapHeaderByGroupAndId - adds r1, r0, 0 - ldr r0, _0812473C @ =gStringVar1 - ldrb r1, [r1, 0x14] - bl GetMapNameGeneric - ldr r0, _08124740 @ =gStringVar4 - ldr r1, _08124744 @ =gUnknown_8417615 -_08124720: - bl StringExpandPlaceholders - adds r0, r6, 0 - bl DisplayFieldMoveExitAreaMessage - ldr r0, _08124748 @ =sPartyMenuInternal - ldr r0, [r0] - movs r1, 0x86 - lsls r1, 2 - adds r0, r1 - strh r4, [r0] - b _081247B4 - .align 2, 0 -_08124738: .4byte gSaveBlock1Ptr -_0812473C: .4byte gStringVar1 -_08124740: .4byte gStringVar4 -_08124744: .4byte gUnknown_8417615 -_08124748: .4byte sPartyMenuInternal -_0812474C: - ldr r1, _08124754 @ =gPartyMenu - ldr r0, _08124758 @ =sub_80C4EF8 - str r0, [r1] - b _08124778 - .align 2, 0 -_08124754: .4byte gPartyMenu -_08124758: .4byte sub_80C4EF8 -_0812475C: - ldr r1, _08124780 @ =gPartyMenu - ldr r0, _08124784 @ =CB2_ReturnToField - str r0, [r1] - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124788 @ =gPlayerParty - adds r0, r1 - adds r1, r4, 0 - bl sub_8124BB0 -_08124778: - adds r0, r6, 0 - bl Task_ClosePartyMenu - b _081247B4 - .align 2, 0 -_08124780: .4byte gPartyMenu -_08124784: .4byte CB2_ReturnToField -_08124788: .4byte gPlayerParty -_0812478C: - cmp r4, 0 - beq _0812479A - cmp r4, 0x4 - bne _081247A0 - bl DisplayCantUseSurfMessage - b _081247A6 -_0812479A: - bl DisplayCantUseFlashMessage - b _081247A6 -_081247A0: - ldrb r0, [r5, 0x4] -_081247A2: - bl DisplayPartyMenuStdMessage -_081247A6: - ldr r0, _081247BC @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _081247C0 @ =Task_CancelAfterAorBPress - str r0, [r1] -_081247B4: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081247BC: .4byte gTasks -_081247C0: .4byte Task_CancelAfterAorBPress - thumb_func_end CursorCB_FieldMove - - thumb_func_start DisplayFieldMoveExitAreaMessage -DisplayFieldMoveExitAreaMessage: @ 81247C4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _081247E8 @ =gStringVar4 - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _081247EC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _081247F0 @ =Task_FieldMoveExitAreaYesNo - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081247E8: .4byte gStringVar4 -_081247EC: .4byte gTasks -_081247F0: .4byte Task_FieldMoveExitAreaYesNo - thumb_func_end DisplayFieldMoveExitAreaMessage - - thumb_func_start Task_FieldMoveExitAreaYesNo -Task_FieldMoveExitAreaYesNo: @ 81247F4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124818 - bl PartyMenuDisplayYesNoMenu - ldr r0, _08124820 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08124824 @ =Task_HandleFieldMoveExitAreaYesNoInput - str r0, [r1] -_08124818: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124820: .4byte gTasks -_08124824: .4byte Task_HandleFieldMoveExitAreaYesNoInput - thumb_func_end Task_FieldMoveExitAreaYesNo - - thumb_func_start Task_HandleFieldMoveExitAreaYesNoInput -Task_HandleFieldMoveExitAreaYesNoInput: @ 8124828 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _0812484E - cmp r1, 0 - bgt _08124848 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _0812488C - b _081248A2 -_08124848: - cmp r1, 0x1 - beq _08124892 - b _081248A2 -_0812484E: - ldr r1, _0812487C @ =gPartyMenu - ldr r0, _08124880 @ =CB2_ReturnToField - str r0, [r1] - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124884 @ =gPlayerParty - adds r0, r1 - ldr r1, _08124888 @ =sPartyMenuInternal - ldr r1, [r1] - movs r2, 0x86 - lsls r2, 2 - adds r1, r2 - ldrb r1, [r1] - bl sub_8124BB0 - adds r0, r4, 0 - bl Task_ClosePartyMenu - b _081248A2 - .align 2, 0 -_0812487C: .4byte gPartyMenu -_08124880: .4byte CB2_ReturnToField -_08124884: .4byte gPlayerParty -_08124888: .4byte sPartyMenuInternal -_0812488C: - movs r0, 0x5 - bl PlaySE -_08124892: - ldr r0, _081248A8 @ =gFieldCallback2 - movs r1, 0 - str r1, [r0] - ldr r0, _081248AC @ =gPostMenuFieldCallback - str r1, [r0] - adds r0, r4, 0 - bl Task_ReturnToChooseMonAfterText -_081248A2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081248A8: .4byte gFieldCallback2 -_081248AC: .4byte gPostMenuFieldCallback - thumb_func_end Task_HandleFieldMoveExitAreaYesNoInput - - thumb_func_start FieldCallback_PrepareFadeInFromMenu -FieldCallback_PrepareFadeInFromMenu: @ 81248B0 - push {lr} - bl sub_807DC00 - ldr r0, _081248C4 @ =Task_FieldMoveWaitForFade - movs r1, 0x8 - bl CreateTask - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_081248C4: .4byte Task_FieldMoveWaitForFade - thumb_func_end FieldCallback_PrepareFadeInFromMenu - - thumb_func_start Task_FieldMoveWaitForFade -Task_FieldMoveWaitForFade: @ 81248C8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsWeatherNotFadingIn - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _081248F4 - bl GetFieldMoveMonSpecies - ldr r1, _081248FC @ =gFieldEffectArguments - lsls r0, 16 - lsrs r0, 16 - str r0, [r1] - ldr r0, _08124900 @ =gPostMenuFieldCallback - ldr r0, [r0] - bl _call_via_r0 - adds r0, r4, 0 - bl DestroyTask -_081248F4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081248FC: .4byte gFieldEffectArguments -_08124900: .4byte gPostMenuFieldCallback - thumb_func_end Task_FieldMoveWaitForFade - - thumb_func_start GetFieldMoveMonSpecies -GetFieldMoveMonSpecies: @ 8124904 - push {lr} - ldr r0, _08124924 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08124928 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_08124924: .4byte gPartyMenu -_08124928: .4byte gPlayerParty - thumb_func_end GetFieldMoveMonSpecies - - thumb_func_start Task_CancelAfterAorBPress -Task_CancelAfterAorBPress: @ 812492C - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _08124950 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08124946 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0812494C -_08124946: - adds r0, r2, 0 - bl CursorCB_Cancel1 -_0812494C: - pop {r0} - bx r0 - .align 2, 0 -_08124950: .4byte gMain - thumb_func_end Task_CancelAfterAorBPress - - thumb_func_start DisplayCantUseFlashMessage -DisplayCantUseFlashMessage: @ 8124954 - push {lr} - ldr r0, _0812496C @ =0x00000806 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124970 - movs r0, 0xC - bl DisplayPartyMenuStdMessage - b _08124976 - .align 2, 0 -_0812496C: .4byte 0x00000806 -_08124970: - movs r0, 0xD - bl DisplayPartyMenuStdMessage -_08124976: - pop {r0} - bx r0 - thumb_func_end DisplayCantUseFlashMessage - - thumb_func_start FieldCallback_Surf -FieldCallback_Surf: @ 812497C - push {lr} - bl GetCursorSelectionMonId - ldr r1, _08124994 @ =gFieldEffectArguments - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x9 - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08124994: .4byte gFieldEffectArguments - thumb_func_end FieldCallback_Surf - - thumb_func_start SetUpFieldMove_Surf -SetUpFieldMove_Surf: @ 8124998 - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsSemiDeepWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124A00 - bl PartyHasMonWithSurf - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A00 - bl IsPlayerFacingSurfableFishableWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A00 - ldr r1, _081249F0 @ =gFieldCallback2 - ldr r0, _081249F4 @ =FieldCallback_PrepareFadeInFromMenu - str r0, [r1] - ldr r1, _081249F8 @ =gPostMenuFieldCallback - ldr r0, _081249FC @ =FieldCallback_Surf - str r0, [r1] - movs r0, 0x1 - b _08124A02 - .align 2, 0 -_081249F0: .4byte gFieldCallback2 -_081249F4: .4byte FieldCallback_PrepareFadeInFromMenu -_081249F8: .4byte gPostMenuFieldCallback -_081249FC: .4byte FieldCallback_Surf -_08124A00: - movs r0, 0 -_08124A02: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Surf - - thumb_func_start DisplayCantUseSurfMessage -DisplayCantUseSurfMessage: @ 8124A0C - push {r4,lr} - sub sp, 0x4 - movs r0, 0x8 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - beq _08124A24 - movs r0, 0x9 - bl DisplayPartyMenuStdMessage - b _08124A82 -_08124A24: - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsSemiDeepWater - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124A56 - movs r0, 0xA - bl DisplayPartyMenuStdMessage - b _08124A82 -_08124A56: - ldr r0, _08124A78 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x3 - bne _08124A7C - ldrb r0, [r1, 0x5] - subs r0, 0x23 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08124A7C - movs r0, 0xB - bl DisplayPartyMenuStdMessage - b _08124A82 - .align 2, 0 -_08124A78: .4byte gSaveBlock1Ptr -_08124A7C: - movs r0, 0x8 - bl DisplayPartyMenuStdMessage -_08124A82: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end DisplayCantUseSurfMessage - - thumb_func_start SetUpFieldMove_Fly -SetUpFieldMove_Fly: @ 8124A8C - push {lr} - ldr r0, _08124AA4 @ =gMapHeader - ldrb r0, [r0, 0x17] - bl Overworld_MapTypeAllowsTeleportAndFly - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08124AA8 - movs r0, 0 - b _08124AAA - .align 2, 0 -_08124AA4: .4byte gMapHeader -_08124AA8: - movs r0, 0x1 -_08124AAA: - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Fly - - thumb_func_start CB2_ReturnToPartyMenuFromFlyMap -CB2_ReturnToPartyMenuFromFlyMap: @ 8124AB0 - push {lr} - sub sp, 0xC - movs r0, 0 - str r0, [sp] - ldr r0, _08124AD4 @ =Task_HandleChooseMonInput - str r0, [sp, 0x4] - ldr r0, _08124AD8 @ =CB2_ReturnToStartMenu - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl InitPartyMenu - add sp, 0xC - pop {r0} - bx r0 - .align 2, 0 -_08124AD4: .4byte Task_HandleChooseMonInput -_08124AD8: .4byte CB2_ReturnToStartMenu - thumb_func_end CB2_ReturnToPartyMenuFromFlyMap - - thumb_func_start FieldCallback_Waterfall -FieldCallback_Waterfall: @ 8124ADC - push {lr} - bl GetCursorSelectionMonId - ldr r1, _08124AF4 @ =gFieldEffectArguments - lsls r0, 24 - lsrs r0, 24 - str r0, [r1] - movs r0, 0x2B - bl FieldEffectStart - pop {r0} - bx r0 - .align 2, 0 -_08124AF4: .4byte gFieldEffectArguments - thumb_func_end FieldCallback_Waterfall - - thumb_func_start SetUpFieldMove_Waterfall -SetUpFieldMove_Waterfall: @ 8124AF8 - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x2 - mov r0, sp - adds r1, r4, 0 - bl GetXYCoordsOneStepInFrontOfPlayer - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - movs r2, 0 - ldrsh r1, [r4, r2] - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - bl MetatileBehavior_IsWaterfall - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124B54 - bl IsPlayerSurfingNorth - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124B54 - ldr r1, _08124B44 @ =gFieldCallback2 - ldr r0, _08124B48 @ =FieldCallback_PrepareFadeInFromMenu - str r0, [r1] - ldr r1, _08124B4C @ =gPostMenuFieldCallback - ldr r0, _08124B50 @ =FieldCallback_Waterfall - str r0, [r1] - movs r0, 0x1 - b _08124B56 - .align 2, 0 -_08124B44: .4byte gFieldCallback2 -_08124B48: .4byte FieldCallback_PrepareFadeInFromMenu -_08124B4C: .4byte gPostMenuFieldCallback -_08124B50: .4byte FieldCallback_Waterfall -_08124B54: - movs r0, 0 -_08124B56: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end SetUpFieldMove_Waterfall - - thumb_func_start sub_8124B60 -sub_8124B60: @ 8124B60 - push {r4-r7,lr} - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - movs r0, 0x8 - bl Alloc - adds r7, r0, 0 - adds r0, r6, 0 - movs r1, 0x41 - bl GetMonData - strh r0, [r7, 0x4] - strh r4, [r7] - strh r5, [r7, 0x2] - ldr r0, _08124B98 @ =gPartyMenu - ldrb r0, [r0, 0xB] - cmp r0, 0x6 - bne _08124B9C - movs r0, 0xA - adds r1, r7, 0 - bl sub_8113550 - b _08124BA4 - .align 2, 0 -_08124B98: .4byte gPartyMenu -_08124B9C: - movs r0, 0x9 - adds r1, r7, 0 - bl sub_8113550 -_08124BA4: - adds r0, r7, 0 - bl Free - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8124B60 - - thumb_func_start sub_8124BB0 -sub_8124BB0: @ 8124BB0 - push {r4-r6,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - movs r0, 0x4 - bl Alloc - adds r6, r0, 0 - adds r0, r5, 0 - movs r1, 0x41 - bl GetMonData - strh r0, [r6] - strb r4, [r6, 0x2] - ldrb r0, [r6, 0x2] - cmp r0, 0x7 - beq _08124BDA - cmp r0, 0x8 - beq _08124BFC - movs r0, 0xFF - b _08124C00 -_08124BDA: - ldr r0, _08124BF8 @ =gSaveBlock1Ptr - ldr r1, [r0] - movs r0, 0x1C - ldrsb r0, [r1, r0] - lsls r0, 16 - lsrs r0, 16 - ldrb r1, [r1, 0x1D] - lsls r1, 24 - asrs r1, 24 - lsls r1, 16 - lsrs r1, 16 - bl Overworld_GetMapHeaderByGroupAndId - b _08124BFE - .align 2, 0 -_08124BF8: .4byte gSaveBlock1Ptr -_08124BFC: - ldr r0, _08124C18 @ =gMapHeader -_08124BFE: - ldrb r0, [r0, 0x14] -_08124C00: - strb r0, [r6, 0x3] - movs r0, 0x24 - adds r1, r6, 0 - bl sub_8113550 - adds r0, r6, 0 - bl Free - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08124C18: .4byte gMapHeader - thumb_func_end sub_8124BB0 - - thumb_func_start sub_8124C1C -sub_8124C1C: @ 8124C1C - push {r4,r5,lr} - adds r5, r0, 0 - movs r0, 0x8 - bl Alloc - adds r4, r0, 0 - ldrb r0, [r5] - strb r0, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r4, 0x1] - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ldrsb r1, [r4, r1] - lsls r1, 16 - lsrs r1, 16 - bl Overworld_GetMapHeaderByGroupAndId - adds r5, r0, 0 - adds r0, r4, 0 - bl Free - movs r0, 0x4 - bl Alloc - adds r4, r0, 0 - bl GetCursorSelectionMonId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _08124C88 @ =gPlayerParty - adds r0, r1 - movs r1, 0x41 - bl GetMonData - strh r0, [r4] - movs r0, 0x2 - strb r0, [r4, 0x2] - ldrb r0, [r5, 0x14] - strb r0, [r4, 0x3] - movs r0, 0x24 - adds r1, r4, 0 - bl sub_8113550 - adds r0, r4, 0 - bl Free - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08124C88: .4byte gPlayerParty - thumb_func_end sub_8124C1C - - thumb_func_start CB2_ShowPartyMenuForItemUse -CB2_ShowPartyMenuForItemUse: @ 8124C8C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r6, _08124CB4 @ =CB2_ReturnToBagMenu - ldr r0, _08124CB8 @ =gMain - ldr r1, _08124CBC @ =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08124CCC - movs r0, 0x1 - mov r8, r0 - bl GetPartyLayoutFromBattleType - lsls r0, 24 - lsrs r7, r0, 24 - b _08124CD2 - .align 2, 0 -_08124CB4: .4byte CB2_ReturnToBagMenu -_08124CB8: .4byte gMain -_08124CBC: .4byte 0x00000439 -_08124CC0: - ldr r0, _08124CC8 @ =gPartyMenu - strb r5, [r0, 0x9] - b _08124D16 - .align 2, 0 -_08124CC8: .4byte gPartyMenu -_08124CCC: - movs r1, 0 - mov r8, r1 - movs r7, 0 -_08124CD2: - ldr r4, _08124D30 @ =gSpecialVar_ItemId - ldrh r0, [r4] - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xA - bne _08124D44 - ldr r1, _08124D34 @ =gPartyMenu - movs r0, 0 - strb r0, [r1, 0x9] - movs r5, 0 -_08124CEA: - movs r0, 0x64 - adds r1, r5, 0 - muls r1, r0 - ldr r0, _08124D38 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _08124D0C - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _08124CC0 -_08124D0C: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _08124CEA -_08124D16: - ldr r0, _08124D30 @ =gSpecialVar_ItemId - ldrh r0, [r0] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _08124D28 - ldr r6, _08124D3C @ =sub_8124DB0 -_08124D28: - ldr r1, _08124D40 @ =Task_SetSacredAshCB - movs r0, 0x7F - b _08124D6A - .align 2, 0 -_08124D30: .4byte gSpecialVar_ItemId -_08124D34: .4byte gPartyMenu -_08124D38: .4byte gPlayerParty -_08124D3C: .4byte sub_8124DB0 -_08124D40: .4byte Task_SetSacredAshCB -_08124D44: - ldrh r0, [r4] - bl GetPocketByItemId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08124D5A - cmp r0, 0x5 - beq _08124D64 - movs r0, 0x5 - b _08124D68 -_08124D5A: - movs r0, 0x4 - ldr r6, _08124D60 @ =sub_8124DA0 - b _08124D68 - .align 2, 0 -_08124D60: .4byte sub_8124DA0 -_08124D64: - movs r0, 0x5 - ldr r6, _08124D88 @ =sub_8124DB0 -_08124D68: - ldr r1, _08124D8C @ =Task_HandleChooseMonInput -_08124D6A: - str r0, [sp] - str r1, [sp, 0x4] - str r6, [sp, 0x8] - mov r0, r8 - adds r1, r7, 0 - movs r2, 0x3 - movs r3, 0x1 - bl InitPartyMenu - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124D88: .4byte sub_8124DB0 -_08124D8C: .4byte Task_HandleChooseMonInput - thumb_func_end CB2_ShowPartyMenuForItemUse - - thumb_func_start CB2_ReturnToBagMenu -CB2_ReturnToBagMenu: @ 8124D90 - push {lr} - movs r0, 0xB - movs r1, 0x3 - movs r2, 0 - bl GoToBagMenu - pop {r0} - bx r0 - thumb_func_end CB2_ReturnToBagMenu - - thumb_func_start sub_8124DA0 -sub_8124DA0: @ 8124DA0 - push {lr} - movs r0, 0x5 - movs r1, 0 - movs r2, 0xFF - bl InitTMCase - pop {r0} - bx r0 - thumb_func_end sub_8124DA0 - - thumb_func_start sub_8124DB0 -sub_8124DB0: @ 8124DB0 - push {lr} - movs r0, 0x6 - movs r1, 0 - movs r2, 0xFF - bl InitBerryPouch - pop {r0} - bx r0 - thumb_func_end sub_8124DB0 - - thumb_func_start sub_8124DC0 -sub_8124DC0: @ 8124DC0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _08124DD8 @ =sPartyMenuInternal - ldr r2, [r1] - ldr r1, _08124DDC @ =sub_8124DE0 - str r1, [r2, 0x4] - bl Task_ClosePartyMenu - pop {r0} - bx r0 - .align 2, 0 -_08124DD8: .4byte sPartyMenuInternal -_08124DDC: .4byte sub_8124DE0 - thumb_func_end sub_8124DC0 - - thumb_func_start sub_8124DE0 -sub_8124DE0: @ 8124DE0 - push {r4,lr} - ldr r4, _08124E0C @ =gSpecialVar_ItemId - ldrh r0, [r4] - bl CheckIfItemIsTMHMOrEvolutionStone - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08124E2C - bl sub_8126C24 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08124E18 - ldr r0, _08124E10 @ =gPartyMenu - ldrb r0, [r0, 0x9] - ldrh r1, [r4] - ldr r2, _08124E14 @ =ItemUseCB_EvolutionStone - bl sub_811C540 - b _08124E38 - .align 2, 0 -_08124E0C: .4byte gSpecialVar_ItemId -_08124E10: .4byte gPartyMenu -_08124E14: .4byte ItemUseCB_EvolutionStone -_08124E18: - ldr r2, _08124E28 @ =gPartyMenu - ldrb r0, [r2, 0x9] - ldrh r1, [r4] - ldr r2, [r2] - bl sub_811C5AC - b _08124E38 - .align 2, 0 -_08124E28: .4byte gPartyMenu -_08124E2C: - ldr r0, _08124E40 @ =gPartyMenu - ldrb r0, [r0, 0x9] - ldrh r1, [r4] - ldr r2, _08124E44 @ =sub_8124E48 - bl sub_811C540 -_08124E38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08124E40: .4byte gPartyMenu -_08124E44: .4byte sub_8124E48 - thumb_func_end sub_8124DE0 - - thumb_func_start sub_8124E48 -sub_8124E48: @ 8124E48 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - ldr r7, _08124EBC @ =gSpecialVar_ItemId - ldrh r0, [r7] - bl ItemId_GetPocket - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _08124EC8 - bl sub_811D178 - cmp r0, 0x1 - bne _08124EC8 - ldr r0, _08124EC0 @ =gPartyMenu - mov r8, r0 - ldrb r0, [r0, 0x9] - lsls r0, 24 - asrs r0, 24 - movs r6, 0x64 - adds r4, r0, 0 - muls r4, r6 - ldr r5, _08124EC4 @ =gPlayerParty - adds r4, r5 - ldrh r0, [r7] - bl ItemIdToBattleMoveId - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl GiveMoveToMon - mov r1, r8 - movs r0, 0x9 - ldrsb r0, [r1, r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x4 - bl AdjustFriendship - ldrh r1, [r7] - movs r0, 0xA9 - lsls r0, 1 - cmp r1, r0 - bhi _08124EB0 - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_08124EB0: - mov r1, r8 - ldr r0, [r1] - bl SetMainCallback2 - b _08124EE6 - .align 2, 0 -_08124EBC: .4byte gSpecialVar_ItemId -_08124EC0: .4byte gPartyMenu -_08124EC4: .4byte gPlayerParty -_08124EC8: - ldr r2, _08124EF4 @ =gPartyMenu - ldrb r0, [r2, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r3, [r2, 0x9] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08124EF8 @ =Task_SetSacredAshCB - str r1, [sp, 0x4] - ldr r1, [r2] - str r1, [sp, 0x8] - movs r1, 0xFF - movs r2, 0 - bl InitPartyMenu -_08124EE6: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124EF4: .4byte gPartyMenu -_08124EF8: .4byte Task_SetSacredAshCB - thumb_func_end sub_8124E48 - - thumb_func_start sub_8124EFC -sub_8124EFC: @ 8124EFC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - bl sub_811D178 - cmp r0, 0x1 - bne _08124F94 - ldr r0, _08124F88 @ =gPartyMenu - mov r8, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _08124F8C @ =gPlayerParty - adds r5, r0 - bl GetMoveSlotToReplace - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r1, r4, 0 - adds r1, 0xD - adds r0, r5, 0 - bl GetMonData - adds r6, r0, 0 - lsls r6, 16 - lsrs r6, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl RemoveMonPPBonus - ldr r7, _08124F90 @ =gSpecialVar_ItemId - ldrh r0, [r7] - bl ItemIdToBattleMoveId - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - adds r0, r5, 0 - adds r2, r4, 0 - bl SetMonMoveSlot - adds r0, r5, 0 - movs r1, 0x4 - bl AdjustFriendship - ldrh r2, [r7] - movs r0, 0x4 - adds r1, r5, 0 - adds r3, r6, 0 - bl ItemUse_SetQuestLogEvent - ldrh r1, [r7] - movs r0, 0xA9 - lsls r0, 1 - cmp r1, r0 - bhi _08124F7C - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_08124F7C: - mov r1, r8 - ldr r0, [r1] - bl SetMainCallback2 - b _08124FB2 - .align 2, 0 -_08124F88: .4byte gPartyMenu -_08124F8C: .4byte gPlayerParty -_08124F90: .4byte gSpecialVar_ItemId -_08124F94: - ldr r4, _08124FC0 @ =gPartyMenu - ldrb r0, [r4, 0x8] - lsls r0, 28 - lsrs r0, 28 - ldrb r2, [r4, 0xB] - ldrb r3, [r4, 0x9] - movs r1, 0x7F - str r1, [sp] - ldr r1, _08124FC4 @ =Task_SetSacredAshCB - str r1, [sp, 0x4] - ldr r1, [r4] - str r1, [sp, 0x8] - movs r1, 0xFF - bl InitPartyMenu -_08124FB2: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08124FC0: .4byte gPartyMenu -_08124FC4: .4byte Task_SetSacredAshCB - thumb_func_end sub_8124EFC - - thumb_func_start Task_SetSacredAshCB -Task_SetSacredAshCB: @ 8124FC8 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _08125000 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08124FFA - ldr r0, _08125004 @ =gPartyMenu - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08124FEE - ldr r0, _08125008 @ =sPartyMenuInternal - ldr r1, [r0] - ldr r0, _0812500C @ =CB2_SetUpExitToBattleScreen - str r0, [r1, 0x4] -_08124FEE: - ldr r0, _08125010 @ =gItemUseCB - ldr r1, _08125014 @ =Task_ClosePartyMenuAfterText - ldr r2, [r0] - adds r0, r3, 0 - bl _call_via_r2 -_08124FFA: - pop {r0} - bx r0 - .align 2, 0 -_08125000: .4byte gPaletteFade -_08125004: .4byte gPartyMenu -_08125008: .4byte sPartyMenuInternal -_0812500C: .4byte CB2_SetUpExitToBattleScreen -_08125010: .4byte gItemUseCB -_08125014: .4byte Task_ClosePartyMenuAfterText - thumb_func_end Task_SetSacredAshCB - - thumb_func_start IsHPRecoveryItem -IsHPRecoveryItem: @ 8125018 - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _08125034 - ldr r0, _0812502C @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _08125030 @ =0x00003108 - adds r0, r1 - b _0812503E - .align 2, 0 -_0812502C: .4byte gSaveBlock1Ptr -_08125030: .4byte 0x00003108 -_08125034: - ldr r1, _0812504C @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_0812503E: - ldrb r1, [r0, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _08125050 - movs r0, 0 - b _08125052 - .align 2, 0 -_0812504C: .4byte gItemEffectTable -_08125050: - movs r0, 0x1 -_08125052: - pop {r1} - bx r1 - thumb_func_end IsHPRecoveryItem - - thumb_func_start GetMedicineItemEffectMessage -GetMedicineItemEffectMessage: @ 8125058 - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x3 - cmp r0, 0x12 - bls _0812506E - b _08125204 -_0812506E: - lsls r0, 2 - ldr r1, _08125078 @ =_0812507C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08125078: .4byte _0812507C - .align 2, 0 -_0812507C: - .4byte _081250C8 - .4byte _081250DC - .4byte _081250F0 - .4byte _08125104 - .4byte _08125118 - .4byte _0812512C - .4byte _08125140 - .4byte _08125204 - .4byte _08125154 - .4byte _08125178 - .4byte _08125168 - .4byte _081251A8 - .4byte _081251B8 - .4byte _08125198 - .4byte _08125188 - .4byte _08125204 - .4byte _081251DC - .4byte _081251DC - .4byte _081251F0 -_081250C8: - ldr r0, _081250D4 @ =gStringVar4 - ldr r1, _081250D8 @ =gText_PkmnCuredOfPoison - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250D4: .4byte gStringVar4 -_081250D8: .4byte gText_PkmnCuredOfPoison -_081250DC: - ldr r0, _081250E8 @ =gStringVar4 - ldr r1, _081250EC @ =gText_PkmnWokeUp2 - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250E8: .4byte gStringVar4 -_081250EC: .4byte gText_PkmnWokeUp2 -_081250F0: - ldr r0, _081250FC @ =gStringVar4 - ldr r1, _08125100 @ =gText_PkmnBurnHealed - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081250FC: .4byte gStringVar4 -_08125100: .4byte gText_PkmnBurnHealed -_08125104: - ldr r0, _08125110 @ =gStringVar4 - ldr r1, _08125114 @ =gText_PkmnThawedOut - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125110: .4byte gStringVar4 -_08125114: .4byte gText_PkmnThawedOut -_08125118: - ldr r0, _08125124 @ =gStringVar4 - ldr r1, _08125128 @ =gText_PkmnCuredOfParalysis - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125124: .4byte gStringVar4 -_08125128: .4byte gText_PkmnCuredOfParalysis -_0812512C: - ldr r0, _08125138 @ =gStringVar4 - ldr r1, _0812513C @ =gText_PkmnSnappedOutOfConfusion - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125138: .4byte gStringVar4 -_0812513C: .4byte gText_PkmnSnappedOutOfConfusion -_08125140: - ldr r0, _0812514C @ =gStringVar4 - ldr r1, _08125150 @ =gText_PkmnGotOverInfatuation - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_0812514C: .4byte gStringVar4 -_08125150: .4byte gText_PkmnGotOverInfatuation -_08125154: - ldr r0, _08125160 @ =gStringVar4 - ldr r1, _08125164 @ =gText_PkmnBecameHealthy - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_08125160: .4byte gStringVar4 -_08125164: .4byte gText_PkmnBecameHealthy -_08125168: - ldr r0, _08125170 @ =gStringVar2 - ldr r1, _08125174 @ =gText_HP3 - b _081251BC - .align 2, 0 -_08125170: .4byte gStringVar2 -_08125174: .4byte gText_HP3 -_08125178: - ldr r0, _08125180 @ =gStringVar2 - ldr r1, _08125184 @ =gText_Attack3 - b _081251BC - .align 2, 0 -_08125180: .4byte gStringVar2 -_08125184: .4byte gText_Attack3 -_08125188: - ldr r0, _08125190 @ =gStringVar2 - ldr r1, _08125194 @ =gText_Defense3 - b _081251BC - .align 2, 0 -_08125190: .4byte gStringVar2 -_08125194: .4byte gText_Defense3 -_08125198: - ldr r0, _081251A0 @ =gStringVar2 - ldr r1, _081251A4 @ =gText_Speed2 - b _081251BC - .align 2, 0 -_081251A0: .4byte gStringVar2 -_081251A4: .4byte gText_Speed2 -_081251A8: - ldr r0, _081251B0 @ =gStringVar2 - ldr r1, _081251B4 @ =gText_SpAtk3 - b _081251BC - .align 2, 0 -_081251B0: .4byte gStringVar2 -_081251B4: .4byte gText_SpAtk3 -_081251B8: - ldr r0, _081251CC @ =gStringVar2 - ldr r1, _081251D0 @ =gText_SpDef3 -_081251BC: - bl StringCopy - ldr r0, _081251D4 @ =gStringVar4 - ldr r1, _081251D8 @ =gText_PkmnBaseVar2StatIncreased - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251CC: .4byte gStringVar2 -_081251D0: .4byte gText_SpDef3 -_081251D4: .4byte gStringVar4 -_081251D8: .4byte gText_PkmnBaseVar2StatIncreased -_081251DC: - ldr r0, _081251E8 @ =gStringVar4 - ldr r1, _081251EC @ =gText_MovesPPIncreased - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251E8: .4byte gStringVar4 -_081251EC: .4byte gText_MovesPPIncreased -_081251F0: - ldr r0, _081251FC @ =gStringVar4 - ldr r1, _08125200 @ =gText_PPWasRestored - bl StringExpandPlaceholders - b _0812520C - .align 2, 0 -_081251FC: .4byte gStringVar4 -_08125200: .4byte gText_PPWasRestored -_08125204: - ldr r0, _08125210 @ =gStringVar4 - ldr r1, _08125214 @ =gText_WontHaveEffect - bl StringExpandPlaceholders -_0812520C: - pop {r0} - bx r0 - .align 2, 0 -_08125210: .4byte gStringVar4 -_08125214: .4byte gText_WontHaveEffect - thumb_func_end GetMedicineItemEffectMessage - - thumb_func_start NotUsingHPEVItemOnShedinja -NotUsingHPEVItemOnShedinja: @ 8125218 - push {r4,lr} - adds r4, r0, 0 - lsls r0, r1, 16 - lsrs r0, 16 - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xD - bne _08125244 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldr r1, _08125240 @ =0x0000012f - cmp r0, r1 - bne _08125244 - movs r0, 0 - b _08125246 - .align 2, 0 -_08125240: .4byte 0x0000012f -_08125244: - movs r0, 0x1 -_08125246: - pop {r4} - pop {r1} - bx r1 - thumb_func_end NotUsingHPEVItemOnShedinja - - thumb_func_start IsItemFlute -IsItemFlute: @ 812524C - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x27 - beq _0812525E - cmp r0, 0x29 - beq _0812525E - cmp r0, 0x28 - bne _08125262 -_0812525E: - movs r0, 0x1 - b _08125264 -_08125262: - movs r0, 0 -_08125264: - pop {r1} - bx r1 - thumb_func_end IsItemFlute - - thumb_func_start ExecuteTableBasedItemEffect_ -ExecuteTableBasedItemEffect_: @ 8125268 - push {r4-r6,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 16 - lsrs r5, r1, 16 - lsls r2, 24 - lsrs r6, r2, 24 - ldr r0, _08125294 @ =gMain - ldr r1, _08125298 @ =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _081252A0 - movs r0, 0x64 - muls r0, r3 - ldr r1, _0812529C @ =gPlayerParty - adds r0, r1 - adds r1, r5, 0 - adds r2, r3, 0 - b _081252BA - .align 2, 0 -_08125294: .4byte gMain -_08125298: .4byte 0x00000439 -_0812529C: .4byte gPlayerParty -_081252A0: - movs r0, 0x64 - adds r4, r3, 0 - muls r4, r0 - ldr r0, _081252CC @ =gPlayerParty - adds r4, r0 - adds r0, r3, 0 - bl GetPartyIdFromBattleSlot - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 -_081252BA: - adds r3, r6, 0 - bl ExecuteTableBasedItemEffect - lsls r0, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_081252CC: .4byte gPlayerParty - thumb_func_end ExecuteTableBasedItemEffect_ - - thumb_func_start sub_81252D0 -sub_81252D0: @ 81252D0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r1 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _08125300 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125304 @ =gPlayerParty - adds r5, r1, r0 - ldr r0, _08125308 @ =gSpecialVar_ItemId - ldrh r6, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl NotUsingHPEVItemOnShedinja - lsls r0, 24 - cmp r0, 0 - bne _0812530C - movs r4, 0x1 - b _08125342 - .align 2, 0 -_08125300: .4byte gPartyMenu -_08125304: .4byte gPlayerParty -_08125308: .4byte gSpecialVar_ItemId -_0812530C: - adds r0, r6, 0 - bl IsHPRecoveryItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08125330 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData -_08125330: - ldr r0, _08125370 @ =gPartyMenu - ldrb r2, [r0, 0x9] - adds r0, r5, 0 - adds r1, r6, 0 - movs r3, 0 - bl PokemonUseItemEffects2 - lsls r0, 24 - lsrs r4, r0, 24 -_08125342: - movs r0, 0x5 - bl PlaySE - cmp r4, 0 - beq _08125380 - ldr r1, _08125374 @ =gPartyMenuUseExitCallback - movs r0, 0 - strb r0, [r1] - ldr r0, _08125378 @ =gText_WontHaveEffect - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _0812537C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - mov r1, r8 - str r1, [r0] - b _08125398 - .align 2, 0 -_08125370: .4byte gPartyMenu -_08125374: .4byte gPartyMenuUseExitCallback -_08125378: .4byte gText_WontHaveEffect -_0812537C: .4byte gTasks -_08125380: - ldr r3, _081253A4 @ =0x0000ffff - movs r0, 0x4 - adds r1, r5, 0 - adds r2, r6, 0 - bl ItemUse_SetQuestLogEvent - adds r0, r7, 0 - bl sub_8124DC0 - ldr r1, _081253A8 @ =gItemUseCB - ldr r0, _081253AC @ =ItemUseCB_Medicine - str r0, [r1] -_08125398: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081253A4: .4byte 0x0000ffff -_081253A8: .4byte gItemUseCB -_081253AC: .4byte ItemUseCB_Medicine - thumb_func_end sub_81252D0 - - thumb_func_start ItemUseCB_Medicine -ItemUseCB_Medicine: @ 81253B0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - str r1, [sp, 0x4] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r0, 0 - mov r10, r0 - ldr r0, _08125438 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _0812543C @ =gPlayerParty - adds r5, r1, r0 - ldr r0, _08125440 @ =gSpecialVar_ItemId - ldrh r6, [r0] - adds r0, r5, 0 - adds r1, r6, 0 - bl NotUsingHPEVItemOnShedinja - lsls r0, 24 - cmp r0, 0 - beq _08125428 - adds r0, r6, 0 - bl IsHPRecoveryItem - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0x1 - bne _08125416 - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - adds r0, r5, 0 - movs r1, 0x3A - bl GetMonData - cmp r10, r0 - bne _08125416 - movs r1, 0 - mov r8, r1 -_08125416: - ldr r4, _08125438 @ =gPartyMenu - ldrb r0, [r4, 0x9] - adds r1, r6, 0 - movs r2, 0 - bl ExecuteTableBasedItemEffect_ - lsls r0, 24 - cmp r0, 0 - beq _0812544C -_08125428: - ldr r1, _08125444 @ =gPartyMenuUseExitCallback - movs r0, 0 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldr r0, _08125448 @ =gText_WontHaveEffect - b _0812551C - .align 2, 0 -_08125438: .4byte gPartyMenu -_0812543C: .4byte gPlayerParty -_08125440: .4byte gSpecialVar_ItemId -_08125444: .4byte gPartyMenuUseExitCallback -_08125448: .4byte gText_WontHaveEffect -_0812544C: - ldr r1, _08125474 @ =gPartyMenuUseExitCallback - movs r0, 0x1 - strb r0, [r1] - adds r0, r6, 0 - bl IsItemFlute - lsls r0, 24 - cmp r0, 0 - bne _08125478 - movs r0, 0x1 - bl PlaySE - ldrb r0, [r4, 0xB] - cmp r0, 0xE - beq _0812547E - adds r0, r6, 0 - movs r1, 0x1 - bl RemoveBagItem - b _0812547E - .align 2, 0 -_08125474: .4byte gPartyMenuUseExitCallback -_08125478: - movs r0, 0x6E - bl PlaySE -_0812547E: - ldr r4, _081254FC @ =sPartyMenuBoxes - ldr r7, _08125500 @ =gPartyMenu - movs r0, 0x9 - ldrsb r0, [r7, r0] - lsls r0, 4 - ldr r1, [r4] - adds r1, r0 - adds r0, r5, 0 - bl SetPartyMonAilmentGfx - ldr r2, _08125504 @ =gSprites - movs r0, 0x9 - ldrsb r0, [r7, r0] - ldr r1, [r4] - lsls r0, 4 - adds r3, r0, r1 - ldrb r1, [r3, 0xC] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - bge _081254BC - adds r0, r5, 0 - adds r1, r3, 0 - movs r2, 0x1 - bl DisplayPartyPokemonLevelCheck -_081254BC: - mov r2, r8 - cmp r2, 0x1 - bne _0812550C - mov r0, r10 - cmp r0, 0 - bne _081254D0 - ldrb r0, [r7, 0x9] - movs r1, 0x1 - bl AnimatePartySlot -_081254D0: - adds r0, r5, 0 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - mov r1, r10 - subs r3, r1 - lsls r3, 16 - asrs r3, 16 - ldrb r1, [r7, 0x9] - ldr r0, _08125508 @ =Task_DisplayHPRestoredMessage - str r0, [sp] - mov r0, r9 - movs r2, 0x1 - bl PartyMenuModifyHP - mov r0, r9 - movs r1, 0 - mov r2, r10 - bl ResetHPTaskData - b _08125538 - .align 2, 0 -_081254FC: .4byte sPartyMenuBoxes -_08125500: .4byte gPartyMenu -_08125504: .4byte gSprites -_08125508: .4byte Task_DisplayHPRestoredMessage -_0812550C: - ldr r1, _08125548 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - adds r0, r6, 0 - bl GetMedicineItemEffectMessage - ldr r0, _0812554C @ =gStringVar4 -_0812551C: - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125550 @ =gTasks - mov r2, r9 - lsls r0, r2, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - ldr r1, [sp, 0x4] - str r1, [r0] -_08125538: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125548: .4byte gStringVar1 -_0812554C: .4byte gStringVar4 -_08125550: .4byte gTasks - thumb_func_end ItemUseCB_Medicine - - thumb_func_start Task_DisplayHPRestoredMessage -Task_DisplayHPRestoredMessage: @ 8125554 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _081255A0 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _081255A4 @ =gPlayerParty - adds r0, r1 - ldr r1, _081255A8 @ =gStringVar1 - bl GetMonNickname - ldr r4, _081255AC @ =gStringVar4 - ldr r1, _081255B0 @ =gText_PkmnHPRestoredByVar2 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - bl HandleBattleLowHpMusicChange - ldr r1, _081255B4 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _081255B8 @ =Task_ClosePartyMenuAfterText - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_081255A0: .4byte gPartyMenu -_081255A4: .4byte gPlayerParty -_081255A8: .4byte gStringVar1 -_081255AC: .4byte gStringVar4 -_081255B0: .4byte gText_PkmnHPRestoredByVar2 -_081255B4: .4byte gTasks -_081255B8: .4byte Task_ClosePartyMenuAfterText - thumb_func_end Task_DisplayHPRestoredMessage - - thumb_func_start Task_ClosePartyMenuAfterText -Task_ClosePartyMenuAfterText: @ 81255BC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081255E2 - ldr r0, _081255E8 @ =gPartyMenuUseExitCallback - ldrb r1, [r0] - cmp r1, 0 - bne _081255DC - ldr r0, _081255EC @ =sPartyMenuInternal - ldr r0, [r0] - str r1, [r0, 0x4] -_081255DC: - adds r0, r4, 0 - bl Task_ClosePartyMenu -_081255E2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081255E8: .4byte gPartyMenuUseExitCallback -_081255EC: .4byte sPartyMenuInternal - thumb_func_end Task_ClosePartyMenuAfterText - - thumb_func_start ShowMoveSelectWindow -ShowMoveSelectWindow: @ 81255F0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - mov r10, r0 - movs r1, 0x2 - mov r8, r1 - movs r0, 0x3 - bl DisplaySelectionWindow - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r6, 0 - movs r0, 0x64 - adds r2, r4, 0 - muls r2, r0 - str r2, [sp, 0xC] -_08125620: - ldr r0, _081256B8 @ =gPlayerParty - adds r1, r6, 0 - adds r1, 0xD - ldr r2, [sp, 0xC] - adds r0, r2, r0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r0, r8 - movs r1, 0 - bl GetFontAttribute - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x2 - bl GetFontAttribute - adds r4, r0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0xD - adds r2, r5, 0 - muls r2, r0 - ldr r0, _081256BC @ =gMoveNames - adds r2, r0 - lsls r0, r6, 4 - adds r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0xFF - str r0, [sp, 0x4] - movs r7, 0 - str r7, [sp, 0x8] - mov r0, r9 - mov r1, r8 - adds r3, r4, 0 - bl AddTextPrinterParameterized - cmp r5, 0 - beq _08125680 - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 -_08125680: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bls _08125620 - movs r0, 0x10 - str r0, [sp] - mov r0, r10 - str r0, [sp, 0x4] - str r7, [sp, 0x8] - mov r0, r9 - mov r1, r8 - movs r2, 0 - movs r3, 0x2 - bl Menu_InitCursor - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_081256B8: .4byte gPlayerParty -_081256BC: .4byte gMoveNames - thumb_func_end ShowMoveSelectWindow - - thumb_func_start Task_HandleWhichMoveInput -Task_HandleWhichMoveInput: @ 81256C0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl Menu_ProcessInput - lsls r0, 24 - asrs r1, r0, 24 - movs r0, 0x2 - negs r0, r0 - cmp r1, r0 - beq _081256F2 - adds r0, 0x1 - cmp r1, r0 - bne _081256EC - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl ReturnToUseOnWhichMon - b _081256F2 -_081256EC: - adds r0, r5, 0 - bl SetSelectedMoveForPPItem -_081256F2: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end Task_HandleWhichMoveInput - - thumb_func_start ItemUseCB_PPRecovery -ItemUseCB_PPRecovery: @ 81256F8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _08125710 @ =gSpecialVar_ItemId - ldrh r0, [r0] - cmp r0, 0xAF - bne _0812571C - ldr r0, _08125714 @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _08125718 @ =0x00003108 - adds r0, r1 - b _08125726 - .align 2, 0 -_08125710: .4byte gSpecialVar_ItemId -_08125714: .4byte gSaveBlock1Ptr -_08125718: .4byte 0x00003108 -_0812571C: - ldr r1, _0812574C @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_08125726: - ldrb r1, [r0, 0x4] - movs r0, 0x10 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0812575C - ldr r0, _08125750 @ =gPartyMenu - strh r1, [r0, 0xE] - ldrb r1, [r0, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _08125754 - adds r0, r4, 0 - bl TryUsePPItem - b _0812577E - .align 2, 0 -_0812574C: .4byte gItemEffectTable -_08125750: .4byte gPartyMenu -_08125754: - adds r0, r4, 0 - bl sub_812580C - b _0812577E -_0812575C: - movs r0, 0x5 - bl PlaySE - movs r0, 0x17 - bl DisplayPartyMenuStdMessage - ldr r0, _08125784 @ =gPartyMenu - ldrb r0, [r0, 0x9] - bl ShowMoveSelectWindow - ldr r1, _08125788 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0812578C @ =Task_HandleWhichMoveInput - str r1, [r0] -_0812577E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125784: .4byte gPartyMenu -_08125788: .4byte gTasks -_0812578C: .4byte Task_HandleWhichMoveInput - thumb_func_end ItemUseCB_PPRecovery - - thumb_func_start SetSelectedMoveForPPItem -SetSelectedMoveForPPItem: @ 8125790 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _081257C0 @ =sPartyMenuInternal - ldr r0, [r0] - adds r0, 0xC - bl PartyMenuRemoveWindow - bl Menu_GetCursorPos - ldr r1, _081257C4 @ =gPartyMenu - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0xE] - ldrb r1, [r1, 0x8] - movs r0, 0xF - ands r0, r1 - cmp r0, 0x1 - bne _081257C8 - adds r0, r4, 0 - bl TryUsePPItem - b _081257CE - .align 2, 0 -_081257C0: .4byte sPartyMenuInternal -_081257C4: .4byte gPartyMenu -_081257C8: - adds r0, r4, 0 - bl sub_812580C -_081257CE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end SetSelectedMoveForPPItem - - thumb_func_start ReturnToUseOnWhichMon -ReturnToUseOnWhichMon: @ 81257D4 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _08125800 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _08125804 @ =Task_HandleChooseMonInput - str r0, [r1] - ldr r0, _08125808 @ =sPartyMenuInternal - ldr r0, [r0] - movs r1, 0 - str r1, [r0, 0x4] - adds r0, 0xC - bl PartyMenuRemoveWindow - movs r0, 0x5 - bl DisplayPartyMenuStdMessage - pop {r0} - bx r0 - .align 2, 0 -_08125800: .4byte gTasks -_08125804: .4byte Task_HandleChooseMonInput -_08125808: .4byte sPartyMenuInternal - thumb_func_end ReturnToUseOnWhichMon - - thumb_func_start sub_812580C -sub_812580C: @ 812580C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r3, _08125860 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r3, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08125864 @ =gPlayerParty - adds r0, r1 - ldr r1, _08125868 @ =gSpecialVar_ItemId - ldrh r1, [r1] - ldrb r2, [r3, 0x9] - ldrb r3, [r3, 0xE] - bl PokemonUseItemEffects2 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - cmp r4, 0 - beq _0812587C - ldr r1, _0812586C @ =gPartyMenuUseExitCallback - movs r0, 0 - strb r0, [r1] - ldr r0, _08125870 @ =gText_WontHaveEffect - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125874 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125878 @ =Task_ClosePartyMenuAfterText - str r1, [r0] - b _08125888 - .align 2, 0 -_08125860: .4byte gPartyMenu -_08125864: .4byte gPlayerParty -_08125868: .4byte gSpecialVar_ItemId -_0812586C: .4byte gPartyMenuUseExitCallback -_08125870: .4byte gText_WontHaveEffect -_08125874: .4byte gTasks -_08125878: .4byte Task_ClosePartyMenuAfterText -_0812587C: - adds r0, r5, 0 - bl sub_8124DC0 - ldr r1, _08125890 @ =gItemUseCB - ldr r0, _08125894 @ =sub_8125898 - str r0, [r1] -_08125888: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125890: .4byte gItemUseCB -_08125894: .4byte sub_8125898 - thumb_func_end sub_812580C - - thumb_func_start sub_8125898 -sub_8125898: @ 8125898 - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r5, _08125930 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r5, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _08125934 @ =gPlayerParty - adds r4, r0 - ldrb r0, [r5, 0x9] - ldr r6, _08125938 @ =gSpecialVar_ItemId - ldrh r1, [r6] - ldrb r2, [r5, 0xE] - bl ExecuteTableBasedItemEffect_ - ldr r1, _0812593C @ =gPartyMenuUseExitCallback - movs r0, 0x1 - strb r0, [r1] - ldrh r2, [r6] - ldr r3, _08125940 @ =0x0000ffff - movs r0, 0x4 - adds r1, r4, 0 - bl ItemUse_SetQuestLogEvent - movs r0, 0x1 - bl PlaySE - ldrh r0, [r6] - movs r1, 0x1 - bl RemoveBagItem - movs r2, 0xE - ldrsh r1, [r5, r2] - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - ldr r2, _08125944 @ =gStringVar1 - movs r1, 0xD - muls r1, r0 - ldr r0, _08125948 @ =gMoveNames - adds r1, r0 - adds r0, r2, 0 - bl StringCopy - ldrh r0, [r6] - bl GetMedicineItemEffectMessage - ldr r0, _0812594C @ =gStringVar4 - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125950 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125954 @ =Task_ClosePartyMenuAfterText - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08125930: .4byte gPartyMenu -_08125934: .4byte gPlayerParty -_08125938: .4byte gSpecialVar_ItemId -_0812593C: .4byte gPartyMenuUseExitCallback -_08125940: .4byte 0x0000ffff -_08125944: .4byte gStringVar1 -_08125948: .4byte gMoveNames -_0812594C: .4byte gStringVar4 -_08125950: .4byte gTasks -_08125954: .4byte Task_ClosePartyMenuAfterText - thumb_func_end sub_8125898 - - thumb_func_start TryUsePPItem -TryUsePPItem: @ 8125958 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - movs r4, 0 - ldr r7, _08125990 @ =gPartyMenu + 14 - ldr r0, _08125994 @ =gSpecialVar_ItemId - ldrh r5, [r0] - movs r0, 0xE - negs r0, r0 - adds r0, r7 - mov r8, r0 - ldrb r0, [r0, 0x9] - ldrb r2, [r7] - adds r1, r5, 0 - bl ExecuteTableBasedItemEffect_ - lsls r0, 24 - cmp r0, 0 - beq _081259A0 - ldr r0, _08125998 @ =gPartyMenuUseExitCallback - strb r4, [r0] - movs r0, 0x5 - bl PlaySE - ldr r0, _0812599C @ =gText_WontHaveEffect - b _081259F6 - .align 2, 0 -_08125990: .4byte gPartyMenu + 14 -_08125994: .4byte gSpecialVar_ItemId -_08125998: .4byte gPartyMenuUseExitCallback -_0812599C: .4byte gText_WontHaveEffect -_081259A0: - ldr r1, _08125A1C @ =gPartyMenuUseExitCallback - movs r0, 0x1 - strb r0, [r1] - mov r0, r8 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _08125A20 @ =gPlayerParty - adds r4, r0 - ldr r3, _08125A24 @ =0x0000ffff - movs r0, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl ItemUse_SetQuestLogEvent - movs r0, 0x1 - bl PlaySE - adds r0, r5, 0 - movs r1, 0x1 - bl RemoveBagItem - movs r0, 0 - ldrsh r1, [r7, r0] - adds r1, 0xD - adds r0, r4, 0 - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _08125A28 @ =gStringVar1 - movs r1, 0xD - muls r1, r4 - ldr r2, _08125A2C @ =gMoveNames - adds r1, r2 - bl StringCopy - adds r0, r5, 0 - bl GetMedicineItemEffectMessage - ldr r0, _08125A30 @ =gStringVar4 -_081259F6: - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125A34 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125A38 @ =Task_ClosePartyMenuAfterText - str r1, [r0] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125A1C: .4byte gPartyMenuUseExitCallback -_08125A20: .4byte gPlayerParty -_08125A24: .4byte 0x0000ffff -_08125A28: .4byte gStringVar1 -_08125A2C: .4byte gMoveNames -_08125A30: .4byte gStringVar4 -_08125A34: .4byte gTasks -_08125A38: .4byte Task_ClosePartyMenuAfterText - thumb_func_end TryUsePPItem - - thumb_func_start ItemUseCB_PPUp -ItemUseCB_PPUp: @ 8125A3C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x5 - bl PlaySE - movs r0, 0x18 - bl DisplayPartyMenuStdMessage - ldr r0, _08125A6C @ =gPartyMenu - ldrb r0, [r0, 0x9] - bl ShowMoveSelectWindow - ldr r1, _08125A70 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125A74 @ =Task_HandleWhichMoveInput - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125A6C: .4byte gPartyMenu -_08125A70: .4byte gTasks -_08125A74: .4byte Task_HandleWhichMoveInput - thumb_func_end ItemUseCB_PPUp - - thumb_func_start ItemIdToBattleMoveId -ItemIdToBattleMoveId: @ 8125A78 - lsls r0, 16 - ldr r1, _08125A88 @ =0xfedf0000 - adds r0, r1 - ldr r1, _08125A8C @ =sTMHMMoves - lsrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - bx lr - .align 2, 0 -_08125A88: .4byte 0xfedf0000 -_08125A8C: .4byte sTMHMMoves - thumb_func_end ItemIdToBattleMoveId - - thumb_func_start IsMoveHm -IsMoveHm: @ 8125A90 - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - ldr r3, _08125AAC @ =sTMHMMoves -_08125A9A: - adds r0, r1, 0 - adds r0, 0x32 - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - cmp r0, r2 - bne _08125AB0 - movs r0, 0x1 - b _08125ABC - .align 2, 0 -_08125AAC: .4byte sTMHMMoves -_08125AB0: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x6 - bls _08125A9A - movs r0, 0 -_08125ABC: - pop {r1} - bx r1 - thumb_func_end IsMoveHm - - thumb_func_start MonKnowsMove -MonKnowsMove: @ 8125AC0 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 16 - lsrs r5, r1, 16 - movs r4, 0 -_08125ACA: - adds r1, r4, 0 - adds r1, 0xD - adds r0, r6, 0 - bl GetMonData - cmp r0, r5 - bne _08125ADC - movs r0, 0x1 - b _08125AE8 -_08125ADC: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _08125ACA - movs r0, 0 -_08125AE8: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end MonKnowsMove - - thumb_func_start DisplayLearnMoveMessage -DisplayLearnMoveMessage: @ 8125AF0 - push {r4,lr} - adds r1, r0, 0 - ldr r4, _08125B10 @ =gStringVar4 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125B10: .4byte gStringVar4 - thumb_func_end DisplayLearnMoveMessage - - thumb_func_start DisplayLearnMoveMessageAndClose -DisplayLearnMoveMessageAndClose: @ 8125B14 - push {r4,lr} - adds r4, r0, 0 - adds r0, r1, 0 - lsls r4, 24 - lsrs r4, 24 - bl DisplayLearnMoveMessage - ldr r1, _08125B38 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125B3C @ =Task_ClosePartyMenuAfterText - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125B38: .4byte gTasks -_08125B3C: .4byte Task_ClosePartyMenuAfterText - thumb_func_end DisplayLearnMoveMessageAndClose - - thumb_func_start ItemUseCB_TMHM -ItemUseCB_TMHM: @ 8125B40 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x5 - bl PlaySE - ldr r7, _08125BD0 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125BD4 @ =gPlayerParty - adds r4, r1, r0 - movs r0, 0xE - adds r0, r7 - mov r8, r0 - ldr r0, _08125BD8 @ =gSpecialVar_ItemId - ldrh r5, [r0] - ldr r1, _08125BDC @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - adds r0, r5, 0 - bl ItemIdToBattleMoveId - strh r0, [r7, 0xE] - ldr r0, _08125BE0 @ =gStringVar2 - movs r1, 0xE - ldrsh r2, [r7, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _08125BE4 @ =gMoveNames - adds r1, r2 - bl StringCopy - movs r0, 0 - mov r1, r8 - strh r0, [r1, 0x2] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0 - bl CanMonLearnTMTutor - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125BF4 - cmp r0, 0x2 - beq _08125BFC - ldrh r1, [r7, 0xE] - adds r0, r4, 0 - bl GiveMoveToMon - lsls r0, 16 - lsrs r0, 16 - ldr r3, _08125BE8 @ =0x0000ffff - cmp r0, r3 - beq _08125C0C - movs r0, 0x4 - adds r1, r4, 0 - adds r2, r5, 0 - bl ItemUse_SetQuestLogEvent - adds r0, r6, 0 - bl sub_8124DC0 - ldr r1, _08125BEC @ =gItemUseCB - ldr r0, _08125BF0 @ =Task_LearnedMove_ - str r0, [r1] - b _08125C20 - .align 2, 0 -_08125BD0: .4byte gPartyMenu -_08125BD4: .4byte gPlayerParty -_08125BD8: .4byte gSpecialVar_ItemId -_08125BDC: .4byte gStringVar1 -_08125BE0: .4byte gStringVar2 -_08125BE4: .4byte gMoveNames -_08125BE8: .4byte 0x0000ffff -_08125BEC: .4byte gItemUseCB -_08125BF0: .4byte Task_LearnedMove_ -_08125BF4: - ldr r1, _08125BF8 @ =gText_PkmnCantLearnMove - b _08125BFE - .align 2, 0 -_08125BF8: .4byte gText_PkmnCantLearnMove -_08125BFC: - ldr r1, _08125C08 @ =gText_PkmnAlreadyKnows -_08125BFE: - adds r0, r6, 0 - bl DisplayLearnMoveMessageAndClose - b _08125C20 - .align 2, 0 -_08125C08: .4byte gText_PkmnAlreadyKnows -_08125C0C: - ldr r0, _08125C2C @ =gText_PkmnNeedsToReplaceMove - bl DisplayLearnMoveMessage - ldr r1, _08125C30 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125C34 @ =Task_ReplaceMoveYesNo - str r1, [r0] -_08125C20: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125C2C: .4byte gText_PkmnNeedsToReplaceMove -_08125C30: .4byte gTasks -_08125C34: .4byte Task_ReplaceMoveYesNo - thumb_func_end ItemUseCB_TMHM - - thumb_func_start Task_LearnedMove_ -Task_LearnedMove_: @ 8125C38 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl Task_LearnedMove - pop {r0} - bx r0 - thumb_func_end Task_LearnedMove_ - - thumb_func_start Task_LearnedMove -Task_LearnedMove: @ 8125C48 - push {r4-r7,lr} - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, _08125CCC @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r2, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _08125CD0 @ =gPlayerParty - adds r5, r1, r0 - adds r6, r2, 0 - adds r6, 0xE - ldr r0, _08125CD4 @ =gSpecialVar_ItemId - ldrh r4, [r0] - movs r1, 0x2 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _08125C84 - adds r0, r5, 0 - movs r1, 0x4 - bl AdjustFriendship - movs r0, 0xA9 - lsls r0, 1 - cmp r4, r0 - bhi _08125C84 - adds r0, r4, 0 - movs r1, 0x1 - bl RemoveBagItem -_08125C84: - ldr r1, _08125CD8 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r0, _08125CDC @ =gStringVar2 - movs r1, 0 - ldrsh r2, [r6, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _08125CE0 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08125CE4 @ =gStringVar4 - ldr r1, _08125CE8 @ =gText_PkmnLearnedMove3 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08125CEC @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125CF0 @ =Task_DoLearnedMoveFanfareAfterText - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08125CCC: .4byte gPartyMenu -_08125CD0: .4byte gPlayerParty -_08125CD4: .4byte gSpecialVar_ItemId -_08125CD8: .4byte gStringVar1 -_08125CDC: .4byte gStringVar2 -_08125CE0: .4byte gMoveNames -_08125CE4: .4byte gStringVar4 -_08125CE8: .4byte gText_PkmnLearnedMove3 -_08125CEC: .4byte gTasks -_08125CF0: .4byte Task_DoLearnedMoveFanfareAfterText - thumb_func_end Task_LearnedMove - - thumb_func_start Task_DoLearnedMoveFanfareAfterText -Task_DoLearnedMoveFanfareAfterText: @ 8125CF4 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125D1A - ldr r0, _08125D20 @ =0x00000101 - bl PlayFanfare - ldr r1, _08125D24 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125D28 @ =Task_LearnNextMoveOrClosePartyMenu - str r1, [r0] -_08125D1A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125D20: .4byte 0x00000101 -_08125D24: .4byte gTasks -_08125D28: .4byte Task_LearnNextMoveOrClosePartyMenu - thumb_func_end Task_DoLearnedMoveFanfareAfterText - - thumb_func_start Task_LearnNextMoveOrClosePartyMenu -Task_LearnNextMoveOrClosePartyMenu: @ 8125D2C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _08125D7E - ldr r0, _08125D68 @ =gMain - ldrh r1, [r0, 0x2E] - movs r2, 0x1 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08125D54 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08125D7E -_08125D54: - ldr r0, _08125D6C @ =gPartyMenu - movs r1, 0x10 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _08125D70 - adds r0, r4, 0 - bl Task_TryLearningNextMove - b _08125D7E - .align 2, 0 -_08125D68: .4byte gMain -_08125D6C: .4byte gPartyMenu -_08125D70: - cmp r0, 0x2 - bne _08125D78 - ldr r0, _08125D84 @ =gSpecialVar_Result - strh r2, [r0] -_08125D78: - adds r0, r5, 0 - bl Task_ClosePartyMenu -_08125D7E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125D84: .4byte gSpecialVar_Result - thumb_func_end Task_LearnNextMoveOrClosePartyMenu - - thumb_func_start Task_ReplaceMoveYesNo -Task_ReplaceMoveYesNo: @ 8125D88 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125DAC - bl PartyMenuDisplayYesNoMenu - ldr r0, _08125DB4 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08125DB8 @ =Task_HandleReplaceMoveYesNoInput - str r0, [r1] -_08125DAC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125DB4: .4byte gTasks -_08125DB8: .4byte Task_HandleReplaceMoveYesNoInput - thumb_func_end Task_ReplaceMoveYesNo - - thumb_func_start Task_HandleReplaceMoveYesNoInput -Task_HandleReplaceMoveYesNoInput: @ 8125DBC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _08125DE2 - cmp r1, 0 - bgt _08125DDC - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - beq _08125E08 - b _08125E14 -_08125DDC: - cmp r1, 0x1 - beq _08125E0E - b _08125E14 -_08125DE2: - ldr r0, _08125DFC @ =gText_WhichMoveToForget - movs r1, 0x1 - bl DisplayPartyMenuMessage - ldr r1, _08125E00 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _08125E04 @ =Task_ShowSummaryScreenToForgetMove - str r1, [r0] - b _08125E14 - .align 2, 0 -_08125DFC: .4byte gText_WhichMoveToForget -_08125E00: .4byte gTasks -_08125E04: .4byte Task_ShowSummaryScreenToForgetMove -_08125E08: - movs r0, 0x5 - bl PlaySE -_08125E0E: - adds r0, r4, 0 - bl StopLearningMovePrompt -_08125E14: - pop {r4} - pop {r0} - bx r0 - thumb_func_end Task_HandleReplaceMoveYesNoInput - - thumb_func_start Task_ShowSummaryScreenToForgetMove -Task_ShowSummaryScreenToForgetMove: @ 8125E1C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08125E3C - ldr r0, _08125E44 @ =sPartyMenuInternal - ldr r1, [r0] - ldr r0, _08125E48 @ =CB2_ShowSummaryScreenToForgetMove - str r0, [r1, 0x4] - adds r0, r4, 0 - bl Task_ClosePartyMenu -_08125E3C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125E44: .4byte sPartyMenuInternal -_08125E48: .4byte CB2_ShowSummaryScreenToForgetMove - thumb_func_end Task_ShowSummaryScreenToForgetMove - - thumb_func_start CB2_ShowSummaryScreenToForgetMove -CB2_ShowSummaryScreenToForgetMove: @ 8125E4C - push {r4,lr} - sub sp, 0x4 - ldr r0, _08125E74 @ =gPlayerParty - ldr r4, _08125E78 @ =gPartyMenu - ldrb r1, [r4, 0x9] - ldr r2, _08125E7C @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _08125E80 @ =CB2_ReturnToPartyMenuWhileLearningMove - ldrh r4, [r4, 0xE] - str r4, [sp] - bl ShowSelectMovePokemonSummaryScreen - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08125E74: .4byte gPlayerParty -_08125E78: .4byte gPartyMenu -_08125E7C: .4byte gPlayerPartyCount -_08125E80: .4byte CB2_ReturnToPartyMenuWhileLearningMove - thumb_func_end CB2_ShowSummaryScreenToForgetMove - - thumb_func_start CB2_ReturnToPartyMenuWhileLearningMove -CB2_ReturnToPartyMenuWhileLearningMove: @ 8125E84 - push {r4,r5,lr} - sub sp, 0xC - bl GetMoveSlotToReplace - lsls r0, 24 - lsrs r2, r0, 24 - ldr r4, _08125ED0 @ =gPartyMenu - movs r0, 0x10 - ldrsh r5, [r4, r0] - cmp r5, 0 - bne _08125EE8 - cmp r2, 0x4 - beq _08125EE8 - movs r1, 0x9 - ldrsb r1, [r4, r1] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08125ED4 @ =gPlayerParty - adds r0, r1 - adds r1, r2, 0 - adds r1, 0xD - bl GetMonData - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - ldrb r0, [r4, 0x9] - ldr r1, _08125ED8 @ =gSpecialVar_ItemId - ldrh r1, [r1] - ldr r3, _08125EDC @ =sub_8124EFC - bl sub_811C568 - ldr r1, _08125EE0 @ =gItemUseCB - ldr r0, _08125EE4 @ =sub_8125F4C - str r0, [r1] - strb r5, [r4, 0xB] - b _08125F02 - .align 2, 0 -_08125ED0: .4byte gPartyMenu -_08125ED4: .4byte gPlayerParty -_08125ED8: .4byte gSpecialVar_ItemId -_08125EDC: .4byte sub_8124EFC -_08125EE0: .4byte gItemUseCB -_08125EE4: .4byte sub_8125F4C -_08125EE8: - movs r0, 0x7F - str r0, [sp] - ldr r0, _08125F0C @ =Task_ReturnToPartyMenuWhileLearningMove - str r0, [sp, 0x4] - ldr r0, _08125F10 @ =gPartyMenu - ldr r0, [r0] - str r0, [sp, 0x8] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl InitPartyMenu -_08125F02: - add sp, 0xC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08125F0C: .4byte Task_ReturnToPartyMenuWhileLearningMove -_08125F10: .4byte gPartyMenu - thumb_func_end CB2_ReturnToPartyMenuWhileLearningMove - - thumb_func_start Task_ReturnToPartyMenuWhileLearningMove -Task_ReturnToPartyMenuWhileLearningMove: @ 8125F14 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - ldr r0, _08125F3C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08125F46 - bl GetMoveSlotToReplace - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - beq _08125F40 - adds r0, r4, 0 - bl DisplayPartyMenuForgotMoveMessage - b _08125F46 - .align 2, 0 -_08125F3C: .4byte gPaletteFade -_08125F40: - adds r0, r5, 0 - bl StopLearningMovePrompt -_08125F46: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end Task_ReturnToPartyMenuWhileLearningMove - - thumb_func_start sub_8125F4C -sub_8125F4C: @ 8125F4C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl sub_8125F5C - pop {r0} - bx r0 - thumb_func_end sub_8125F4C - - thumb_func_start sub_8125F5C -sub_8125F5C: @ 8125F5C - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - mov r8, r0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, _08125FE4 @ =gPartyMenu - mov r9, r0 - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r6, r1, 0 - muls r6, r0 - ldr r0, _08125FE8 @ =gPlayerParty - adds r6, r0 - bl GetMoveSlotToReplace - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - adds r1, r5, 0 - adds r1, 0xD - adds r0, r6, 0 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, _08125FEC @ =gSpecialVar_ItemId - ldrh r2, [r0] - movs r0, 0x4 - adds r1, r6, 0 - adds r3, r4, 0 - bl ItemUse_SetQuestLogEvent - ldr r1, _08125FF0 @ =gStringVar1 - adds r0, r6, 0 - bl GetMonNickname - ldr r0, _08125FF4 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _08125FF8 @ =gMoveNames - adds r1, r2 - bl StringCopy - adds r0, r6, 0 - adds r1, r5, 0 - bl RemoveMonPPBonus - mov r0, r9 - ldrh r1, [r0, 0xE] - adds r0, r6, 0 - adds r2, r5, 0 - bl SetMonMoveSlot - mov r0, r8 - bl Task_LearnedMove - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08125FE4: .4byte gPartyMenu -_08125FE8: .4byte gPlayerParty -_08125FEC: .4byte gSpecialVar_ItemId -_08125FF0: .4byte gStringVar1 -_08125FF4: .4byte gStringVar2 -_08125FF8: .4byte gMoveNames - thumb_func_end sub_8125F5C - - thumb_func_start DisplayPartyMenuForgotMoveMessage -DisplayPartyMenuForgotMoveMessage: @ 8125FFC - push {r4-r6,lr} - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r0, _0812605C @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r0, r1] - movs r0, 0x64 - adds r5, r1, 0 - muls r5, r0 - ldr r0, _08126060 @ =gPlayerParty - adds r5, r0 - bl GetMoveSlotToReplace - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r1, 0xD - adds r0, r5, 0 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r1, _08126064 @ =gStringVar1 - adds r0, r5, 0 - bl GetMonNickname - ldr r0, _08126068 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _0812606C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, _08126070 @ =gUnknown_8416EC6 - bl DisplayLearnMoveMessage - ldr r1, _08126074 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126078 @ =Task_PartyMenuReplaceMove - str r1, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0812605C: .4byte gPartyMenu -_08126060: .4byte gPlayerParty -_08126064: .4byte gStringVar1 -_08126068: .4byte gStringVar2 -_0812606C: .4byte gMoveNames -_08126070: .4byte gUnknown_8416EC6 -_08126074: .4byte gTasks -_08126078: .4byte Task_PartyMenuReplaceMove - thumb_func_end DisplayPartyMenuForgotMoveMessage - - thumb_func_start Task_PartyMenuReplaceMove -Task_PartyMenuReplaceMove: @ 812607C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _081260C8 - ldr r5, _081260D0 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r5, r1] - movs r0, 0x64 - adds r4, r1, 0 - muls r4, r0 - ldr r0, _081260D4 @ =gPlayerParty - adds r4, r0 - bl GetMoveSlotToReplace - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl RemoveMonPPBonus - ldrh r5, [r5, 0xE] - bl GetMoveSlotToReplace - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl SetMonMoveSlot - adds r0, r6, 0 - bl Task_LearnedMove -_081260C8: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_081260D0: .4byte gPartyMenu -_081260D4: .4byte gPlayerParty - thumb_func_end Task_PartyMenuReplaceMove - - thumb_func_start StopLearningMovePrompt -StopLearningMovePrompt: @ 81260D8 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _08126120 @ =gStringVar2 - ldr r1, _08126124 @ =gPartyMenu - movs r3, 0xE - ldrsh r2, [r1, r3] - movs r1, 0xD - muls r1, r2 - ldr r2, _08126128 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0812612C @ =gStringVar4 - ldr r1, _08126130 @ =gText_StopLearningMove2 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r0, 0x2 - bl ScheduleBgCopyTilemapToVram - ldr r1, _08126134 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126138 @ =Task_StopLearningMoveYesNo - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08126120: .4byte gStringVar2 -_08126124: .4byte gPartyMenu -_08126128: .4byte gMoveNames -_0812612C: .4byte gStringVar4 -_08126130: .4byte gText_StopLearningMove2 -_08126134: .4byte gTasks -_08126138: .4byte Task_StopLearningMoveYesNo - thumb_func_end StopLearningMovePrompt - - thumb_func_start Task_StopLearningMoveYesNo -Task_StopLearningMoveYesNo: @ 812613C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl IsPartyMenuTextPrinterActive - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08126160 - bl PartyMenuDisplayYesNoMenu - ldr r0, _08126168 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812616C @ =Task_HandleStopLearningMoveYesNoInput - str r0, [r1] -_08126160: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08126168: .4byte gTasks -_0812616C: .4byte Task_HandleStopLearningMoveYesNoInput - thumb_func_end Task_StopLearningMoveYesNo - - thumb_func_start Task_HandleStopLearningMoveYesNoInput -Task_HandleStopLearningMoveYesNoInput: @ 8126170 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _081261A0 @ =gPartyMenu - movs r1, 0x9 - ldrsb r1, [r7, r1] - movs r0, 0x64 - muls r1, r0 - ldr r0, _081261A4 @ =gPlayerParty - adds r4, r1, r0 - bl Menu_ProcessInputNoWrapClearOnChoose - lsls r0, 24 - asrs r5, r0, 24 - cmp r5, 0 - beq _081261AE - cmp r5, 0 - bgt _081261A8 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _08126234 - b _0812626A - .align 2, 0 -_081261A0: .4byte gPartyMenu -_081261A4: .4byte gPlayerParty -_081261A8: - cmp r5, 0x1 - beq _0812623A - b _0812626A -_081261AE: - ldr r1, _081261F4 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _081261F8 @ =gStringVar2 - movs r1, 0xE - ldrsh r2, [r7, r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _081261FC @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _08126200 @ =gStringVar4 - ldr r1, _08126204 @ =gText_MoveNotLearned - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl DisplayPartyMenuMessage - movs r3, 0x10 - ldrsh r0, [r7, r3] - cmp r0, 0x1 - bne _08126210 - ldr r0, _08126208 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _0812620C @ =Task_TryLearningNextMoveAfterText - str r0, [r1] - b _0812626A - .align 2, 0 -_081261F4: .4byte gStringVar1 -_081261F8: .4byte gStringVar2 -_081261FC: .4byte gMoveNames -_08126200: .4byte gStringVar4 -_08126204: .4byte gText_MoveNotLearned -_08126208: .4byte gTasks -_0812620C: .4byte Task_TryLearningNextMoveAfterText -_08126210: - cmp r0, 0x2 - bne _08126218 - ldr r0, _08126228 @ =gSpecialVar_Result - strh r5, [r0] -_08126218: - ldr r0, _0812622C @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _08126230 @ =Task_ClosePartyMenuAfterText - str r0, [r1] - b _0812626A - .align 2, 0 -_08126228: .4byte gSpecialVar_Result -_0812622C: .4byte gTasks -_08126230: .4byte Task_ClosePartyMenuAfterText -_08126234: - movs r0, 0x5 - bl PlaySE -_0812623A: - ldr r1, _08126270 @ =gStringVar1 - adds r0, r4, 0 - bl GetMonNickname - ldr r0, _08126274 @ =gStringVar2 - ldr r1, _08126278 @ =gPartyMenu - movs r3, 0xE - ldrsh r2, [r1, r3] - movs r1, 0xD - muls r1, r2 - ldr r2, _0812627C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, _08126280 @ =gText_PkmnNeedsToReplaceMove - bl DisplayLearnMoveMessage - ldr r1, _08126284 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _08126288 @ =Task_ReplaceMoveYesNo - str r1, [r0] -_0812626A: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08126270: .4byte gStringVar1 -_08126274: .4byte gStringVar2 -_08126278: .4byte gPartyMenu -_0812627C: .4byte gMoveNames -_08126280: .4byte gText_PkmnNeedsToReplaceMove -_08126284: .4byte gTasks -_08126288: .4byte Task_ReplaceMoveYesNo - thumb_func_end Task_HandleStopLearningMoveYesNoInput - thumb_func_start Task_TryLearningNextMoveAfterText Task_TryLearningNextMoveAfterText: @ 812628C push {r4,lr} @@ -6211,8 +1119,8 @@ _08126BCE: bx r0 thumb_func_end sub_8126B60 - thumb_func_start ItemUseCB_EvolutionStone -ItemUseCB_EvolutionStone: @ 8126BD4 + thumb_func_start sub_8126BD4 +sub_8126BD4: @ 8126BD4 push {r4,r5,lr} ldr r1, _08126C10 @ =gCB2_AfterEvolution ldr r4, _08126C14 @ =gPartyMenu @@ -6245,7 +1153,7 @@ _08126C14: .4byte gPartyMenu _08126C18: .4byte gSpecialVar_ItemId _08126C1C: .4byte gPlayerParty _08126C20: .4byte 0x0000ffff - thumb_func_end ItemUseCB_EvolutionStone + thumb_func_end sub_8126BD4 thumb_func_start sub_8126C24 sub_8126C24: @ 8126C24 @@ -6600,7 +1508,7 @@ CB2_PartyMenuFromStartMenu: @ 8126EB0 str r0, [sp] ldr r0, _08126ED4 @ =Task_HandleChooseMonInput str r0, [sp, 0x4] - ldr r0, _08126ED8 @ =CB2_ReturnToStartMenu + ldr r0, _08126ED8 @ =CB2_ReturnToFieldWithOpenMenu str r0, [sp, 0x8] movs r0, 0 movs r1, 0 @@ -6612,7 +1520,7 @@ CB2_PartyMenuFromStartMenu: @ 8126EB0 bx r0 .align 2, 0 _08126ED4: .4byte Task_HandleChooseMonInput -_08126ED8: .4byte CB2_ReturnToStartMenu +_08126ED8: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end CB2_PartyMenuFromStartMenu thumb_func_start CB2_ChooseMonToGiveItem diff --git a/asm/pokedex_screen.s b/asm/pokedex_screen.s index 8320c5809..9c57cff88 100644 --- a/asm/pokedex_screen.s +++ b/asm/pokedex_screen.s @@ -428,13 +428,13 @@ sub_8102858: @ 8102858 lsls r1, 7 movs r0, 0 bl SetGpuRegBits - ldr r0, _08102878 @ =CB2_ReturnToStartMenu + ldr r0, _08102878 @ =CB2_ReturnToFieldWithOpenMenu bl SetMainCallback2 _08102874: pop {r0} bx r0 .align 2, 0 -_08102878: .4byte CB2_ReturnToStartMenu +_08102878: .4byte CB2_ReturnToFieldWithOpenMenu thumb_func_end sub_8102858 thumb_func_start sub_810287C diff --git a/asm/region_map.s b/asm/region_map.s index 7b23cf1e3..662c65fa7 100644 --- a/asm/region_map.s +++ b/asm/region_map.s @@ -9893,15 +9893,15 @@ _080C4EF2: bx r0 thumb_func_end sub_80C4ED0 - thumb_func_start sub_80C4EF8 -sub_80C4EF8: @ 80C4EF8 + thumb_func_start MCB2_FlyMap +MCB2_FlyMap: @ 80C4EF8 push {lr} bl sub_80C51E8 movs r0, 0x2 bl sub_80BFEDC pop {r0} bx r0 - thumb_func_end sub_80C4EF8 + thumb_func_end MCB2_FlyMap thumb_func_start sub_80C4F08 sub_80C4F08: @ 80C4F08 |