diff options
306 files changed, 9938 insertions, 21387 deletions
diff --git a/asm-de/contest_link_80C2020.s b/asm-de/contest_link_80C2020.s index ee555287a..209a1bb24 100644 --- a/asm-de/contest_link_80C2020.s +++ b/asm-de/contest_link_80C2020.s @@ -1086,7 +1086,7 @@ _080C2904: adds r1, r0 lsls r1, 3 adds r1, r7 - ldr r0, _080C2934 @ =gUnknown_02038690 + ldr r0, _080C2934 @ =gContestFinalStandings adds r0, r4, r0 ldrb r0, [r0] strh r0, [r1, 0x8] @@ -1098,7 +1098,7 @@ _080C2904: .align 2, 0 _080C292C: .4byte gTasks _080C2930: .4byte sub_80C3A5C -_080C2934: .4byte gUnknown_02038690 +_080C2934: .4byte gContestFinalStandings _080C2938: ldr r0, _080C2990 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x5] @@ -1128,7 +1128,7 @@ _080C295A: adds r0, 0x1 strh r0, [r4, 0x8] movs r4, 0 - ldr r1, _080C2998 @ =gUnknown_02038690 + ldr r1, _080C2998 @ =gContestFinalStandings ldrb r0, [r1] cmp r0, 0 beq _080C2984 @@ -1149,7 +1149,7 @@ _080C2984: .align 2, 0 _080C2990: .4byte gSharedMem + 0x18000 _080C2994: .4byte sub_80C3B30 -_080C2998: .4byte gUnknown_02038690 +_080C2998: .4byte gContestFinalStandings _080C299C: lsls r1, r5, 2 adds r0, r1, r5 @@ -1166,7 +1166,7 @@ _080C299C: movs r0, 0 strh r0, [r2, 0xA] movs r4, 0 - ldr r2, _080C29F4 @ =gUnknown_02038690 + ldr r2, _080C29F4 @ =gContestFinalStandings ldrb r0, [r2] ldr r1, _080C29F8 @ =gIsLinkContest ldr r3, _080C29FC @ =gStringVar1 @@ -1196,7 +1196,7 @@ _080C29D4: lsls r4, 6 b _080C2A10 .align 2, 0 -_080C29F4: .4byte gUnknown_02038690 +_080C29F4: .4byte gContestFinalStandings _080C29F8: .4byte gIsLinkContest _080C29FC: .4byte gStringVar1 _080C2A00: .4byte gLinkPlayers + 0x8 @@ -1310,7 +1310,7 @@ _080C2ADC: adds r0, r3, 0 strh r0, [r1] movs r1, 0 - ldr r3, _080C2BD0 @ =gUnknown_02038690 + ldr r3, _080C2BD0 @ =gContestFinalStandings ldrb r0, [r3] lsls r4, r7, 2 mov r10, r4 @@ -1416,7 +1416,7 @@ _080C2B14: _080C2BC4: .4byte gUnknown_030042C4 _080C2BC8: .4byte gUnknown_03004240 _080C2BCC: .4byte 0x00005050 -_080C2BD0: .4byte gUnknown_02038690 +_080C2BD0: .4byte gContestFinalStandings _080C2BD4: .4byte gContestMons _080C2BD8: .4byte gMonFrontPicTable _080C2BDC: .4byte gMonFrontPicCoords @@ -1705,7 +1705,7 @@ sub_80C2E14: @ 80C2E14 adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r1, _080C2E80 @ =gUnknown_02038690 + ldr r1, _080C2E80 @ =gContestFinalStandings ldr r0, _080C2E84 @ =gContestPlayerMonIndex ldrb r0, [r0] adds r0, r1 @@ -1713,11 +1713,11 @@ sub_80C2E14: @ 80C2E14 bl sub_80BE284 movs r0, 0x2 bl sub_810FB10 - ldr r0, _080C2E88 @ =gScriptContestRank + ldr r0, _080C2E88 @ =gSpecialVar_ContestRank ldrb r0, [r0] - bl sub_80B2A7C + bl Contest_SaveWinner movs r0, 0xFE - bl sub_80B2A7C + bl Contest_SaveWinner ldr r4, _080C2E8C @ =gSharedMem ldr r0, _080C2E90 @ =0x00015ddf adds r1, r4, r0 @@ -1748,9 +1748,9 @@ sub_80C2E14: @ 80C2E14 pop {r0} bx r0 .align 2, 0 -_080C2E80: .4byte gUnknown_02038690 +_080C2E80: .4byte gContestFinalStandings _080C2E84: .4byte gContestPlayerMonIndex -_080C2E88: .4byte gScriptContestRank +_080C2E88: .4byte gSpecialVar_ContestRank _080C2E8C: .4byte gSharedMem _080C2E90: .4byte 0x00015ddf _080C2E94: .4byte 0x00015dde @@ -2978,7 +2978,7 @@ _de_080C39DC: .4byte gIsLinkContest _de_080C39E0: .4byte 0x0600e000 _de_080C39E4: .4byte gUnknown_08E964B8 _de_080C39E8: - ldr r0, _de_080C3A08 @ =gScriptContestRank + ldr r0, _de_080C3A08 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r0, 0 bne _de_080C3A14 @@ -2994,7 +2994,7 @@ _de_080C39E8: str r2, [sp, 0xC] b _de_080C3A6C .align 2, 0 -_de_080C3A08: .4byte gScriptContestRank +_de_080C3A08: .4byte gSpecialVar_ContestRank _de_080C3A0C: .4byte 0x0600e000 _de_080C3A10: .4byte gUnknown_08E964B8 _de_080C3A14: @@ -3061,7 +3061,7 @@ de_sub_80C3A84: @ 80C3A84 push {r4,lr} sub sp, 0x10 adds r2, r0, 0 - ldr r0, _de_080C3AAC @ =gScriptContestCategory + ldr r0, _de_080C3AAC @ =gSpecialVar_ContestCategory ldrh r4, [r0] cmp r4, 0 bne _de_080C3AB8 @@ -3079,7 +3079,7 @@ de_sub_80C3A84: @ 80C3A84 str r4, [sp, 0xC] b _de_080C3AD6 .align 2, 0 -_de_080C3AAC: .4byte gScriptContestCategory +_de_080C3AAC: .4byte gSpecialVar_ContestCategory _de_080C3AB0: .4byte 0x0600e000 _de_080C3AB4: .4byte gUnknown_08E964B8 _de_080C3AB8: @@ -3444,7 +3444,7 @@ sub_80C3B30: @ 80C3B30 lsrs r0, 24 mov r12, r0 movs r5, 0 - ldr r1, _080C3BC0 @ =gUnknown_02038690 + ldr r1, _080C3BC0 @ =gContestFinalStandings ldrb r0, [r1] ldr r2, _080C3BC4 @ =gTasks mov r10, r2 @@ -3512,7 +3512,7 @@ _080C3B82: pop {r0} bx r0 .align 2, 0 -_080C3BC0: .4byte gUnknown_02038690 +_080C3BC0: .4byte gContestFinalStandings _080C3BC4: .4byte gTasks _080C3BC8: .4byte 0x00000fff _080C3BCC: .4byte 0x0600e100 @@ -4117,7 +4117,7 @@ _080C403A: negs r0, r0 _080C4060: strb r0, [r5, 0x12] - ldr r0, _080C40A8 @ =gUnknown_02038690 + ldr r0, _080C40A8 @ =gContestFinalStandings add r0, r8 ldrb r0, [r0] cmp r0, 0 @@ -4150,7 +4150,7 @@ _080C4098: .4byte gUnknown_02038678 _080C409C: .4byte gUnknown_02038670 _080C40A0: .4byte gSharedMem + 0x18018 _080C40A4: .4byte gUnknown_02038688 -_080C40A8: .4byte gUnknown_02038690 +_080C40A8: .4byte gContestFinalStandings _080C40AC: cmp r2, 0 ble _080C40B4 @@ -4604,15 +4604,15 @@ sub_80C43F4: @ 80C43F4 adds r5, r0, 0 cmp r5, 0 beq _080C4422 - ldr r4, _080C4434 @ =gScriptContestCategory + ldr r4, _080C4434 @ =gSpecialVar_ContestCategory ldrb r0, [r4] - ldr r1, _080C4438 @ =gScriptContestRank + ldr r1, _080C4438 @ =gSpecialVar_ContestRank ldrb r1, [r1] - bl sub_80AE398 + bl Contest_InitAllPokemon ldrb r0, [r4] bl sub_80AE82C _080C4422: - ldr r0, _080C443C @ =gScriptResult + ldr r0, _080C443C @ =gSpecialVar_Result strh r5, [r0] pop {r4,r5} pop {r0} @@ -4620,9 +4620,9 @@ _080C4422: .align 2, 0 _080C442C: .4byte gUnknown_02038694 _080C4430: .4byte gPlayerParty -_080C4434: .4byte gScriptContestCategory -_080C4438: .4byte gScriptContestRank -_080C443C: .4byte gScriptResult +_080C4434: .4byte gSpecialVar_ContestCategory +_080C4438: .4byte gSpecialVar_ContestRank +_080C443C: .4byte gSpecialVar_Result thumb_func_end sub_80C43F4 thumb_func_start sub_80C4440 @@ -4635,7 +4635,7 @@ sub_80C4440: @ 80C4440 muls r1, r0 ldr r0, _080C4468 @ =gPlayerParty adds r2, r1, r0 - ldr r0, _080C446C @ =gScriptContestCategory + ldr r0, _080C446C @ =gSpecialVar_ContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080C44B2 @@ -4647,7 +4647,7 @@ sub_80C4440: @ 80C4440 .align 2, 0 _080C4464: .4byte gUnknown_02038694 _080C4468: .4byte gPlayerParty -_080C446C: .4byte gScriptContestCategory +_080C446C: .4byte gSpecialVar_ContestCategory _080C4470: .4byte _080C4474 .align 2, 0 _080C4474: @@ -4677,7 +4677,7 @@ _080C44A0: movs r1, 0x36 _080C44A4: bl GetMonData - ldr r1, _080C44BC @ =gScriptContestRank + ldr r1, _080C44BC @ =gSpecialVar_ContestRank ldrh r1, [r1] cmp r0, r1 bls _080C44B2 @@ -4688,14 +4688,14 @@ _080C44B2: pop {r1} bx r1 .align 2, 0 -_080C44BC: .4byte gScriptContestRank +_080C44BC: .4byte gSpecialVar_ContestRank thumb_func_end sub_80C4440 thumb_func_start sub_80C44C0 sub_80C44C0: @ 80C44C0 push {r4-r7,lr} sub sp, 0x4 - ldr r1, _080C44E8 @ =gUnknown_02038690 + ldr r1, _080C44E8 @ =gContestFinalStandings ldr r0, _080C44EC @ =gContestPlayerMonIndex ldrb r0, [r0] adds r0, r1 @@ -4704,7 +4704,7 @@ sub_80C44C0: @ 80C44C0 beq _080C44D4 b _080C465E _080C44D4: - ldr r0, _080C44F0 @ =gScriptContestCategory + ldr r0, _080C44F0 @ =gSpecialVar_ContestCategory ldrh r0, [r0] cmp r0, 0x4 bls _080C44DE @@ -4716,9 +4716,9 @@ _080C44DE: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080C44E8: .4byte gUnknown_02038690 +_080C44E8: .4byte gContestFinalStandings _080C44EC: .4byte gContestPlayerMonIndex -_080C44F0: .4byte gScriptContestCategory +_080C44F0: .4byte gSpecialVar_ContestCategory _080C44F4: .4byte _080C44F8 .align 2, 0 _080C44F8: @@ -4740,7 +4740,7 @@ _080C450C: lsrs r1, r0, 24 mov r0, sp strb r1, [r0] - ldr r0, _080C4550 @ =gScriptContestRank + ldr r0, _080C4550 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r1, r0 bls _080C4530 @@ -4762,7 +4762,7 @@ _080C4538: .align 2, 0 _080C4548: .4byte gUnknown_02038694 _080C454C: .4byte gPlayerParty -_080C4550: .4byte gScriptContestRank +_080C4550: .4byte gSpecialVar_ContestRank _080C4554: mov r4, sp ldr r7, _080C458C @ =gUnknown_02038694 @@ -4776,7 +4776,7 @@ _080C4554: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4594 @ =gScriptContestRank + ldr r0, _080C4594 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4793,7 +4793,7 @@ _080C4554: .align 2, 0 _080C458C: .4byte gUnknown_02038694 _080C4590: .4byte gPlayerParty -_080C4594: .4byte gScriptContestRank +_080C4594: .4byte gSpecialVar_ContestRank _080C4598: mov r4, sp ldr r7, _080C45D0 @ =gUnknown_02038694 @@ -4807,7 +4807,7 @@ _080C4598: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C45D8 @ =gScriptContestRank + ldr r0, _080C45D8 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4824,7 +4824,7 @@ _080C4598: .align 2, 0 _080C45D0: .4byte gUnknown_02038694 _080C45D4: .4byte gPlayerParty -_080C45D8: .4byte gScriptContestRank +_080C45D8: .4byte gSpecialVar_ContestRank _080C45DC: mov r4, sp ldr r7, _080C4618 @ =gUnknown_02038694 @@ -4838,7 +4838,7 @@ _080C45DC: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4620 @ =gScriptContestRank + ldr r0, _080C4620 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4858,7 +4858,7 @@ _080C4610: .align 2, 0 _080C4618: .4byte gUnknown_02038694 _080C461C: .4byte gPlayerParty -_080C4620: .4byte gScriptContestRank +_080C4620: .4byte gSpecialVar_ContestRank _080C4624: mov r4, sp ldr r7, _080C4668 @ =gUnknown_02038694 @@ -4872,7 +4872,7 @@ _080C4624: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4670 @ =gScriptContestRank + ldr r0, _080C4670 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4895,7 +4895,7 @@ _080C465E: .align 2, 0 _080C4668: .4byte gUnknown_02038694 _080C466C: .4byte gPlayerParty -_080C4670: .4byte gScriptContestRank +_080C4670: .4byte gSpecialVar_ContestRank thumb_func_end sub_80C44C0 thumb_func_start sub_80C4674 @@ -5075,7 +5075,7 @@ _080C47BC: .4byte gSpecialVar_0x8006 sub_80C47C0: @ 80C47C0 push {lr} movs r1, 0 - ldr r2, _080C47E8 @ =gUnknown_02038690 + ldr r2, _080C47E8 @ =gContestFinalStandings ldrb r0, [r2] ldr r3, _080C47EC @ =gSpecialVar_0x8005 cmp r0, 0 @@ -5095,7 +5095,7 @@ _080C47E0: pop {r0} bx r0 .align 2, 0 -_080C47E8: .4byte gUnknown_02038690 +_080C47E8: .4byte gContestFinalStandings _080C47EC: .4byte gSpecialVar_0x8005 thumb_func_end sub_80C47C0 @@ -5103,7 +5103,7 @@ _080C47EC: .4byte gSpecialVar_0x8005 sub_80C47F0: @ 80C47F0 push {r4,lr} movs r2, 0 - ldr r3, _080C4830 @ =gUnknown_02038690 + ldr r3, _080C4830 @ =gContestFinalStandings ldrb r0, [r3] ldr r1, _080C4834 @ =gIsLinkContest ldr r4, _080C4838 @ =gStringVar3 @@ -5134,7 +5134,7 @@ _080C4812: bl sub_80C4674 b _080C484C .align 2, 0 -_080C4830: .4byte gUnknown_02038690 +_080C4830: .4byte gContestFinalStandings _080C4834: .4byte gIsLinkContest _080C4838: .4byte gStringVar3 _080C483C: .4byte gLinkPlayers + 0x8 @@ -5156,7 +5156,7 @@ _080C4854: .4byte gUnknown_0203857D sub_80C4858: @ 80C4858 push {lr} movs r1, 0 - ldr r2, _080C4884 @ =gUnknown_02038690 + ldr r2, _080C4884 @ =gContestFinalStandings ldrb r0, [r2] ldr r3, _080C4888 @ =gStringVar1 cmp r0, 0 @@ -5177,19 +5177,19 @@ _080C4878: pop {r0} bx r0 .align 2, 0 -_080C4884: .4byte gUnknown_02038690 +_080C4884: .4byte gContestFinalStandings _080C4888: .4byte gStringVar1 thumb_func_end sub_80C4858 thumb_func_start sub_80C488C sub_80C488C: @ 80C488C push {lr} - ldr r0, _080C4898 @ =sub_80AB47C + ldr r0, _080C4898 @ =CB2_StartContest bl SetMainCallback2 pop {r0} bx r0 .align 2, 0 -_080C4898: .4byte sub_80AB47C +_080C4898: .4byte CB2_StartContest thumb_func_end sub_80C488C thumb_func_start sub_80C489C @@ -5352,7 +5352,7 @@ sub_80C49C4: @ 80C49C4 lsrs r4, 24 ldr r0, _080C49E4 @ =gUnknown_02038694 ldrb r0, [r0] - bl sub_80AE098 + bl Contest_CreatePlayerMon ldr r1, _080C49E8 @ =sub_80C8734 ldr r2, _080C49EC @ =sub_80C49F0 adds r0, r4, 0 @@ -5491,7 +5491,7 @@ _080C4AB8: bl sub_80C4B34 ldr r1, _080C4AFC @ =gUnknown_0203869B strb r0, [r1] - ldr r0, _080C4B00 @ =gScriptContestCategory + ldr r0, _080C4B00 @ =gSpecialVar_ContestCategory ldrb r0, [r0] bl sub_80AE82C ldr r1, _080C4B04 @ =sub_80C8EBC @@ -5507,7 +5507,7 @@ _080C4AB8: .align 2, 0 _080C4AF8: .4byte gTasks + 0x8 _080C4AFC: .4byte gUnknown_0203869B -_080C4B00: .4byte gScriptContestCategory +_080C4B00: .4byte gSpecialVar_ContestCategory _080C4B04: .4byte sub_80C8EBC _080C4B08: .4byte sub_80C4B0C thumb_func_end sub_80C4A44 diff --git a/asm-de/contest_link_80C857C.s b/asm-de/contest_link_80C857C.s index cf1ef216d..e3a8b674d 100644 --- a/asm-de/contest_link_80C857C.s +++ b/asm-de/contest_link_80C857C.s @@ -924,18 +924,18 @@ _080C8C18: lsls r0, 24 cmp r0, 0 beq _080C8C7A - ldr r0, _080C8C2C @ =gUnknown_02038690 + ldr r0, _080C8C2C @ =gContestFinalStandings movs r1, 0x4 bl sub_80C857C b _080C8C4C .align 2, 0 -_080C8C2C: .4byte gUnknown_02038690 +_080C8C2C: .4byte gContestFinalStandings _080C8C30: bl sub_80C85D8 lsls r0, 24 cmp r0, 0 beq _080C8C7A - ldr r0, _080C8C60 @ =gUnknown_02038690 + ldr r0, _080C8C60 @ =gContestFinalStandings ldr r1, _080C8C64 @ =gUnknown_0203869B ldrb r1, [r1] lsls r1, 8 @@ -955,7 +955,7 @@ _080C8C4C: strh r1, [r0, 0x8] b _080C8C7A .align 2, 0 -_080C8C60: .4byte gUnknown_02038690 +_080C8C60: .4byte gContestFinalStandings _080C8C64: .4byte gUnknown_0203869B _080C8C68: .4byte gBlockRecvBuffer _080C8C6C: .4byte gTasks diff --git a/asm-de/easy_chat.s b/asm-de/easy_chat.s index 795713490..89ea03b69 100644 --- a/asm-de/easy_chat.s +++ b/asm-de/easy_chat.s @@ -1578,13 +1578,13 @@ _080E6D3E: beq _080E6D58 b _080E6D72 _080E6D44: - ldr r0, _080E6D50 @ =gScriptResult + ldr r0, _080E6D50 @ =gSpecialVar_Result strh r1, [r0] ldr r0, _080E6D54 @ =sub_80E752C bl sub_80E682C b _080E6D72 .align 2, 0 -_080E6D50: .4byte gScriptResult +_080E6D50: .4byte gSpecialVar_Result _080E6D54: .4byte sub_80E752C _080E6D58: ldr r1, _080E6D60 @ =gSharedMem + 0x1000 @@ -1722,7 +1722,7 @@ _080E6E56: beq _080E6EDC b _080E6F5E _080E6E5C: - ldr r7, _080E6EC8 @ =gScriptResult + ldr r7, _080E6EC8 @ =gSpecialVar_Result bl sub_80E7FA8 lsls r0, 24 lsrs r0, 24 @@ -1774,7 +1774,7 @@ _080E6EBE: bl sub_80E682C b _080E6F5E .align 2, 0 -_080E6EC8: .4byte gScriptResult +_080E6EC8: .4byte gSpecialVar_Result _080E6ECC: .4byte gSpecialVar_0x8004 _080E6ED0: .4byte 0x00009fa8 _080E6ED4: .4byte 0x0000ffff diff --git a/asm/battle_2.s b/asm/battle_2.s index c8f8eb0f4..dd720ec79 100644 --- a/asm/battle_2.s +++ b/asm/battle_2.s @@ -3336,7 +3336,7 @@ _08013ECE: cmp r0, 0 bne _08013F2A _08013EE0: - ldr r1, _08013F3C @ =gScriptResult + ldr r1, _08013F3C @ =gSpecialVar_Result ldr r5, _08013F40 @ =gBattleOutcome ldrb r0, [r5] strh r0, [r1] @@ -3379,7 +3379,7 @@ _08013F2A: _08013F30: .4byte gBattleTypeFlags _08013F34: .4byte gPlayerParty _08013F38: .4byte gReceivedRemoteLinkPlayers -_08013F3C: .4byte gScriptResult +_08013F3C: .4byte gSpecialVar_Result _08013F40: .4byte gBattleOutcome _08013F44: .4byte gMain _08013F48: .4byte 0x0000043d diff --git a/asm/beta_beat_up.s b/asm/beta_beat_up.s deleted file mode 100755 index d6e1ba675..000000000 --- a/asm/beta_beat_up.s +++ /dev/null @@ -1,63 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ beta_beat_up - - thumb_func_start sub_80D6234 -sub_80D6234: @ 80D6234 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080D6254 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D625C - ldr r0, _080D6258 @ =gBattleAnimArgs - ldrh r1, [r4, 0x20] - ldrh r0, [r0] - subs r1, r0 - strh r1, [r4, 0x20] - b _080D6266 - .align 2, 0 -_080D6254: .4byte gBattleAnimBankAttacker -_080D6258: .4byte gBattleAnimArgs -_080D625C: - ldr r0, _080D6270 @ =gBattleAnimArgs - ldrh r0, [r0] - ldrh r1, [r4, 0x20] - adds r0, r1 - strh r0, [r4, 0x20] -_080D6266: - ldr r0, _080D6274 @ =sub_80D6278 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D6270: .4byte gBattleAnimArgs -_080D6274: .4byte sub_80D6278 - thumb_func_end sub_80D6234 - - thumb_func_start sub_80D6278 -sub_80D6278: @ 80D6278 - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080D628E - adds r0, r2, 0 - bl move_anim_8074EE0 -_080D628E: - pop {r0} - bx r0 - thumb_func_end sub_80D6278 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/bubble.s b/asm/bubble.s deleted file mode 100755 index 466e31b0d..000000000 --- a/asm/bubble.s +++ /dev/null @@ -1,248 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ bubble - - thumb_func_start sub_80D31C8 -sub_80D31C8: @ 80D31C8 - push {r4-r6,lr} - adds r6, r0, 0 - ldr r5, _080D31F0 @ =gBattleAnimBankAttacker - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D31F8 - ldrb r0, [r5] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - ldr r4, _080D31F4 @ =gBattleAnimArgs - ldrh r1, [r4] - subs r0, r1 - b _080D320A - .align 2, 0 -_080D31F0: .4byte gBattleAnimBankAttacker -_080D31F4: .4byte gBattleAnimArgs -_080D31F8: - ldrb r0, [r5] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - ldr r4, _080D32D0 @ =gBattleAnimArgs - lsrs r0, 24 - ldrh r1, [r4] - adds r0, r1 -_080D320A: - strh r0, [r6, 0x20] - ldrb r0, [r5] - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - ldrh r4, [r4, 0x2] - adds r0, r4 - strh r0, [r6, 0x22] - adds r2, r6, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080D32D4 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D3240 - ldr r1, _080D32D0 @ =gBattleAnimArgs - ldrh r0, [r1, 0x4] - negs r0, r0 - strh r0, [r1, 0x4] -_080D3240: - ldr r5, _080D32D0 @ =gBattleAnimArgs - ldrh r0, [r5, 0xC] - strh r0, [r6, 0x2E] - ldrh r0, [r6, 0x20] - strh r0, [r6, 0x30] - ldr r4, _080D32D8 @ =gBattleAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0x32] - ldrh r0, [r6, 0x22] - strh r0, [r6, 0x34] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0x36] - adds r0, r6, 0 - bl obj_translate_based_on_private_1_2_3_4 - ldr r0, _080D32DC @ =SpriteCallbackDummy - bl CreateInvisibleSpriteWithCallback - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - strh r4, [r6, 0x38] - ldrb r0, [r5, 0x8] - movs r2, 0x4 - ldrsh r1, [r5, r2] - bl Sin - ldrh r1, [r6, 0x20] - subs r1, r0 - strh r1, [r6, 0x20] - ldrb r0, [r5, 0x8] - movs r2, 0x6 - ldrsh r1, [r5, r2] - bl Cos - ldrh r1, [r6, 0x22] - subs r1, r0 - strh r1, [r6, 0x22] - ldr r0, _080D32E0 @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r5, 0x4] - strh r0, [r1, 0x2E] - ldrh r0, [r5, 0x6] - strh r0, [r1, 0x30] - ldrh r0, [r5, 0xA] - strh r0, [r1, 0x32] - ldrb r0, [r5, 0x8] - lsls r0, 8 - strh r0, [r1, 0x34] - ldrh r0, [r5, 0xC] - strh r0, [r1, 0x36] - ldr r1, _080D32E4 @ =sub_80D32E8 - str r1, [r6, 0x1C] - adds r0, r6, 0 - bl _call_via_r1 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D32D0: .4byte gBattleAnimArgs -_080D32D4: .4byte gBattleAnimBankAttacker -_080D32D8: .4byte gBattleAnimBankTarget -_080D32DC: .4byte SpriteCallbackDummy -_080D32E0: .4byte gSprites -_080D32E4: .4byte sub_80D32E8 - thumb_func_end sub_80D31C8 - - thumb_func_start sub_80D32E8 -sub_80D32E8: @ 80D32E8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r5, r0, 0 - ldrh r1, [r5, 0x38] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _080D3350 @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r7, r0, r2 - ldrh r4, [r7, 0x36] - lsls r4, 24 - lsrs r4, 24 - ldrh r0, [r7, 0x34] - mov r8, r0 - movs r0, 0x1 - strh r0, [r5, 0x2E] - adds r0, r5, 0 - bl sub_8078B5C - mov r1, r8 - lsrs r6, r1, 8 - movs r0, 0x2E - ldrsh r1, [r7, r0] - adds r0, r6, 0 - bl Sin - ldrh r1, [r5, 0x24] - adds r0, r1 - strh r0, [r5, 0x24] - movs r0, 0x30 - ldrsh r1, [r7, r0] - adds r0, r6, 0 - bl Cos - ldrh r1, [r5, 0x26] - adds r0, r1 - strh r0, [r5, 0x26] - ldrh r0, [r7, 0x32] - mov r1, r8 - adds r1, r0 - strh r1, [r7, 0x34] - subs r4, 0x1 - lsls r4, 24 - lsrs r4, 24 - cmp r4, 0 - beq _080D3354 - strh r4, [r7, 0x36] - b _080D335E - .align 2, 0 -_080D3350: .4byte gSprites -_080D3354: - ldr r0, _080D336C @ =sub_80D3370 - str r0, [r5, 0x1C] - adds r0, r7, 0 - bl DestroySprite -_080D335E: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D336C: .4byte sub_80D3370 - thumb_func_end sub_80D32E8 - - thumb_func_start sub_80D3370 -sub_80D3370: @ 80D3370 - push {lr} - adds r3, r0, 0 - adds r3, 0x2C - ldrb r2, [r3] - movs r1, 0x41 - negs r1, r1 - ands r1, r2 - strb r1, [r3] - ldr r1, _080D3390 @ =sub_8078600 - str r1, [r0, 0x1C] - ldr r1, _080D3394 @ =sub_80D3398 - bl StoreSpriteCallbackInData - pop {r0} - bx r0 - .align 2, 0 -_080D3390: .4byte sub_8078600 -_080D3394: .4byte sub_80D3398 - thumb_func_end sub_80D3370 - - thumb_func_start sub_80D3398 -sub_80D3398: @ 80D3398 - push {lr} - movs r1, 0xA - strh r1, [r0, 0x2E] - ldr r1, _080D33AC @ =sub_80782D8 - str r1, [r0, 0x1C] - ldr r1, _080D33B0 @ =move_anim_8074EE0 - bl StoreSpriteCallbackInData - pop {r0} - bx r0 - .align 2, 0 -_080D33AC: .4byte sub_80782D8 -_080D33B0: .4byte move_anim_8074EE0 - thumb_func_end sub_80D3398 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/contest.s b/asm/contest.s deleted file mode 100644 index 2f048fbc3..000000000 --- a/asm/contest.s +++ /dev/null @@ -1,15731 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start nullsub_89 -nullsub_89: @ 80AB1AC - bx lr - thumb_func_end nullsub_89 - - thumb_func_start ResetLinkContestBoolean -ResetLinkContestBoolean: @ 80AB1B0 - ldr r1, _080AB1B8 @ =gIsLinkContest - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_080AB1B8: .4byte gIsLinkContest - thumb_func_end ResetLinkContestBoolean - - thumb_func_start sub_80AB1BC -sub_80AB1BC: @ 80AB1BC - push {r4-r6,lr} - movs r6, 0x80 - lsls r6, 19 - movs r0, 0x40 - strh r0, [r6] - ldr r4, _080AB260 @ =0x04000208 - ldrh r3, [r4] - movs r2, 0 - strh r2, [r4] - ldr r5, _080AB264 @ =0x04000200 - ldrh r0, [r5] - movs r1, 0x1 - orrs r0, r1 - strh r0, [r5] - strh r3, [r4] - ldr r1, _080AB268 @ =REG_DISPSTAT - movs r0, 0x8 - strh r0, [r1] - adds r1, 0x4 - movs r3, 0x98 - lsls r3, 8 - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r3, _080AB26C @ =0x00009e09 - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - movs r3, 0x9C - lsls r3, 8 - adds r0, r3, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r3, _080AB270 @ =0x00003a03 - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _080AB274 @ =REG_BLDCNT - strh r2, [r0] - adds r0, 0x2 - strh r2, [r0] - adds r0, 0x2 - strh r2, [r0] - subs r0, 0xC - ldr r3, _080AB278 @ =0x00003f3f - adds r1, r3, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldrh r0, [r6] - movs r3, 0xFE - lsls r3, 7 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r6] - ldr r0, _080AB27C @ =gUnknown_030042A4 - strh r2, [r0] - ldr r0, _080AB280 @ =gUnknown_030042A0 - strh r2, [r0] - ldr r0, _080AB284 @ =gUnknown_030042C0 - strh r2, [r0] - ldr r0, _080AB288 @ =gUnknown_030041B4 - strh r2, [r0] - ldr r0, _080AB28C @ =gUnknown_03004288 - strh r2, [r0] - ldr r0, _080AB290 @ =gUnknown_03004280 - strh r2, [r0] - ldr r0, _080AB294 @ =gUnknown_030041B0 - strh r2, [r0] - ldr r0, _080AB298 @ =gUnknown_030041B8 - strh r2, [r0] - ldr r0, _080AB29C @ =gUnknown_030042C4 - strh r2, [r0] - ldr r0, _080AB2A0 @ =gUnknown_03004240 - strh r2, [r0] - ldr r0, _080AB2A4 @ =gUnknown_03004200 - strh r2, [r0] - ldr r0, _080AB2A8 @ =gUnknown_03004244 - strh r2, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AB260: .4byte 0x04000208 -_080AB264: .4byte 0x04000200 -_080AB268: .4byte REG_DISPSTAT -_080AB26C: .4byte 0x00009e09 -_080AB270: .4byte 0x00003a03 -_080AB274: .4byte REG_BLDCNT -_080AB278: .4byte 0x00003f3f -_080AB27C: .4byte gUnknown_030042A4 -_080AB280: .4byte gUnknown_030042A0 -_080AB284: .4byte gUnknown_030042C0 -_080AB288: .4byte gUnknown_030041B4 -_080AB28C: .4byte gUnknown_03004288 -_080AB290: .4byte gUnknown_03004280 -_080AB294: .4byte gUnknown_030041B0 -_080AB298: .4byte gUnknown_030041B8 -_080AB29C: .4byte gUnknown_030042C4 -_080AB2A0: .4byte gUnknown_03004240 -_080AB2A4: .4byte gUnknown_03004200 -_080AB2A8: .4byte gUnknown_03004244 - thumb_func_end sub_80AB1BC - - thumb_func_start sub_80AB2AC -sub_80AB2AC: @ 80AB2AC - push {r4,r5,lr} - ldr r0, _080AB300 @ =gContestMiscGfx - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - ldr r0, _080AB304 @ =gContestAudienceGfx - ldr r1, _080AB308 @ =0x06002000 - bl LZDecompressVram - ldr r0, _080AB30C @ =gUnknown_08D1725C - ldr r1, _080AB310 @ =0x0600d000 - bl LZDecompressVram - ldr r0, _080AB314 @ =gUnknown_08D17144 - movs r2, 0x80 - lsls r2, 2 - movs r1, 0 - bl LoadCompressedPalette - bl sub_80AB350 - movs r4, 0 - movs r5, 0xA0 -_080AB2DC: - ldr r0, _080AB318 @ =gSharedMem + 0x18004 - adds r0, r5, r0 - ldr r1, _080AB31C @ =gUnknown_02038696 - adds r1, r4, r1 - ldrb r1, [r1] - adds r1, 0x5 - lsls r1, 4 - movs r2, 0x20 - bl LoadPalette - adds r5, 0x20 - adds r4, 0x1 - cmp r4, 0x3 - ble _080AB2DC - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AB300: .4byte gContestMiscGfx -_080AB304: .4byte gContestAudienceGfx -_080AB308: .4byte 0x06002000 -_080AB30C: .4byte gUnknown_08D1725C -_080AB310: .4byte 0x0600d000 -_080AB314: .4byte gUnknown_08D17144 -_080AB318: .4byte gSharedMem + 0x18004 -_080AB31C: .4byte gUnknown_02038696 - thumb_func_end sub_80AB2AC - - thumb_func_start sub_80AB320 -sub_80AB320: @ 80AB320 - push {r4,lr} - ldr r4, _080AB340 @ =gWindowConfig_81E6FD8 - adds r0, r4, 0 - bl SetUpWindowConfig - ldr r0, _080AB344 @ =gUnknown_03004210 - adds r1, r4, 0 - bl InitWindowFromConfig - ldr r0, _080AB348 @ =gMenuWindow - ldr r1, _080AB34C @ =gWindowConfig_81E6FF4 - bl InitWindowFromConfig - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AB340: .4byte gWindowConfig_81E6FD8 -_080AB344: .4byte gUnknown_03004210 -_080AB348: .4byte gMenuWindow -_080AB34C: .4byte gWindowConfig_81E6FF4 - thumb_func_end sub_80AB320 - - thumb_func_start sub_80AB350 -sub_80AB350: @ 80AB350 - push {r4,lr} - ldr r0, _080AB38C @ =gWindowConfig_81E6FD8 - bl LoadFontDefaultPalette - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - bl FillPalette - movs r4, 0xA -_080AB364: - adds r1, r4, 0 - adds r1, 0xF0 - ldr r0, _080AB390 @ =gPlttBufferUnfaded + 0x1E2 - movs r2, 0x2 - bl LoadPalette - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xD - bls _080AB364 - ldr r0, _080AB394 @ =0x00007e3f - movs r1, 0xF3 - movs r2, 0x2 - bl FillPalette - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AB38C: .4byte gWindowConfig_81E6FD8 -_080AB390: .4byte gPlttBufferUnfaded + 0x1E2 -_080AB394: .4byte 0x00007e3f - thumb_func_end sub_80AB350 - - thumb_func_start sub_80AB398 -sub_80AB398: @ 80AB398 - push {r4-r6,lr} - ldr r4, _080AB468 @ =gSharedMem + 0x19204 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x5C - bl memset - movs r5, 0 - adds r4, 0x2 - movs r2, 0xFF -_080AB3AC: - adds r1, r5, r4 - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - adds r5, 0x1 - cmp r5, 0x3 - ble _080AB3AC - ldr r4, _080AB46C @ =gSharedMem + 0x19260 - movs r5, 0x3 -_080AB3BE: - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x1C - bl memset - adds r4, 0x1C - subs r5, 0x1 - cmp r5, 0 - bge _080AB3BE - ldr r4, _080AB470 @ =gSharedMem + 0x192D0 - movs r6, 0x4 - negs r6, r6 - movs r3, 0xFF - adds r2, r4, 0 - subs r2, 0x65 - movs r5, 0x3 -_080AB3DE: - ldrb r1, [r2] - adds r0, r6, 0 - ands r0, r1 - strb r0, [r2] - ldrb r0, [r2, 0x8] - orrs r0, r3 - strb r0, [r2, 0x8] - ldrb r0, [r2, 0x9] - orrs r0, r3 - strb r0, [r2, 0x9] - adds r2, 0x1C - subs r5, 0x1 - cmp r5, 0 - bge _080AB3DE - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x14 - bl memset - adds r0, r4, 0 - adds r0, 0x14 - movs r1, 0 - movs r2, 0x44 - bl memset - adds r0, r4, 0 - adds r0, 0x58 - movs r1, 0 - movs r2, 0x4 - bl memset - adds r0, r4, 0 - adds r0, 0x68 - movs r1, 0 - movs r2, 0x10 - bl memset - ldr r0, _080AB474 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080AB43A - movs r0, 0 - bl sub_80B0F28 -_080AB43A: - movs r5, 0 - movs r6, 0xFF - adds r3, r4, 0 - subs r3, 0xB8 - adds r2, r4, 0 - subs r2, 0x57 - ldr r4, _080AB478 @ =gUnknown_02038696 -_080AB448: - ldrb r0, [r2] - orrs r0, r6 - strb r0, [r2] - adds r1, r3, r5 - adds r0, r5, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1C - adds r5, 0x1 - cmp r5, 0x3 - ble _080AB448 - bl sub_80B159C - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AB468: .4byte gSharedMem + 0x19204 -_080AB46C: .4byte gSharedMem + 0x19260 -_080AB470: .4byte gSharedMem + 0x192D0 -_080AB474: .4byte gIsLinkContest -_080AB478: .4byte gUnknown_02038696 - thumb_func_end sub_80AB398 - - thumb_func_start sub_80AB47C -sub_80AB47C: @ 80AB47C - push {r4-r7,lr} - sub sp, 0x4 - ldr r0, _080AB498 @ =gMain - ldr r1, _080AB49C @ =0x0000043c - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0x1 - beq _080AB554 - cmp r0, 0x1 - bgt _080AB4A0 - cmp r0, 0 - beq _080AB4AA - b _080AB5AE - .align 2, 0 -_080AB498: .4byte gMain -_080AB49C: .4byte 0x0000043c -_080AB4A0: - cmp r0, 0x2 - beq _080AB55A - cmp r0, 0x3 - beq _080AB578 - b _080AB5AE -_080AB4AA: - movs r0, 0 - bl SetVBlankCallback - bl sub_80AB320 - bl sub_80AB1BC - bl dp12_8087EA4 - bl ResetPaletteFade - ldr r0, _080AB538 @ =gPaletteFade - ldrb r1, [r0, 0x8] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0, 0x8] - movs r2, 0xC0 - lsls r2, 19 - movs r3, 0xC0 - lsls r3, 9 - movs r5, 0 - ldr r1, _080AB53C @ =0x040000d4 - movs r4, 0x80 - lsls r4, 5 - ldr r6, _080AB540 @ =0x85000400 - movs r7, 0x85 - lsls r7, 24 -_080AB4E0: - str r5, [sp] - mov r0, sp - str r0, [r1] - str r2, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r2, r4 - subs r3, r4 - cmp r3, r4 - bhi _080AB4E0 - str r5, [sp] - mov r0, sp - str r0, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 2 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - bl ResetSpriteData - bl ResetTasks - bl FreeAllSpritePalettes - ldr r1, _080AB544 @ =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, _080AB548 @ =gSharedMem - movs r1, 0xC0 - lsls r1, 9 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bl ClearBattleMonForms - bl sub_80AB398 - ldr r1, _080AB54C @ =gMain - ldr r0, _080AB550 @ =0x0000043c - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - b _080AB5AE - .align 2, 0 -_080AB538: .4byte gPaletteFade -_080AB53C: .4byte 0x040000d4 -_080AB540: .4byte 0x85000400 -_080AB544: .4byte gReservedSpritePaletteCount -_080AB548: .4byte gSharedMem -_080AB54C: .4byte gMain -_080AB550: .4byte 0x0000043c -_080AB554: - bl sub_80AB350 - b _080AB56C -_080AB55A: - ldr r5, _080AB574 @ =gSharedMem + 0x1925D - adds r0, r5, 0 - bl sub_80AB70C - lsls r0, 24 - cmp r0, 0 - beq _080AB5AE - movs r0, 0 - strb r0, [r5] -_080AB56C: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _080AB5AE - .align 2, 0 -_080AB574: .4byte gSharedMem + 0x1925D -_080AB578: - bl sub_80B2184 - ldr r0, _080AB5B8 @ =gUnknown_030042C0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080AB5BC @ =gUnknown_030041B4 - strh r1, [r0] - movs r0, 0x2 - bl BeginFastPaletteFade - ldr r2, _080AB5C0 @ =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - ldr r0, _080AB5C4 @ =sub_80ABAC4 - bl SetVBlankCallback - ldr r0, _080AB5C8 @ =sub_80AB5D4 - movs r1, 0xA - bl CreateTask - ldr r1, _080AB5CC @ =gSharedMem + 0x19204 - strb r0, [r1, 0x8] - ldr r0, _080AB5D0 @ =sub_80ABAAC - bl SetMainCallback2 -_080AB5AE: - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AB5B8: .4byte gUnknown_030042C0 -_080AB5BC: .4byte gUnknown_030041B4 -_080AB5C0: .4byte gPaletteFade -_080AB5C4: .4byte sub_80ABAC4 -_080AB5C8: .4byte sub_80AB5D4 -_080AB5CC: .4byte gSharedMem + 0x19204 -_080AB5D0: .4byte sub_80ABAAC - thumb_func_end sub_80AB47C - - thumb_func_start sub_80AB5D4 -sub_80AB5D4: @ 80AB5D4 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _080AB5F8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080AB5F4 - ldr r0, _080AB5FC @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _080AB600 @ =sub_80AB604 - str r0, [r1] -_080AB5F4: - pop {r0} - bx r0 - .align 2, 0 -_080AB5F8: .4byte gPaletteFade -_080AB5FC: .4byte gTasks -_080AB600: .4byte sub_80AB604 - thumb_func_end sub_80AB5D4 - - thumb_func_start sub_80AB604 -sub_80AB604: @ 80AB604 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080AB648 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AB65C - ldr r2, _080AB64C @ =gPaletteFade - ldrb r1, [r2, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080AB66A - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - bl sub_80AF860 - ldr r0, _080AB650 @ =sub_80AB678 - movs r1, 0 - bl CreateTask - ldr r1, _080AB654 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080AB658 @ =nullsub_89 - str r1, [r0] - b _080AB66A - .align 2, 0 -_080AB648: .4byte gIsLinkContest -_080AB64C: .4byte gPaletteFade -_080AB650: .4byte sub_80AB678 -_080AB654: .4byte gTasks -_080AB658: .4byte nullsub_89 -_080AB65C: - ldr r0, _080AB670 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080AB674 @ =sub_80AB960 - str r0, [r1] -_080AB66A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AB670: .4byte gTasks -_080AB674: .4byte sub_80AB960 - thumb_func_end sub_80AB604 - - thumb_func_start sub_80AB678 -sub_80AB678: @ 80AB678 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080AB68C @ =sub_80C89DC - ldr r2, _080AB690 @ =sub_80AB694 - bl SetTaskFuncWithFollowupFunc - pop {r0} - bx r0 - .align 2, 0 -_080AB68C: .4byte sub_80C89DC -_080AB690: .4byte sub_80AB694 - thumb_func_end sub_80AB678 - - thumb_func_start sub_80AB694 -sub_80AB694: @ 80AB694 - lsls r0, 24 - lsrs r0, 24 - movs r3, 0x1 - ldr r2, _080AB6AC @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r3, [r1, 0x8] - ldr r0, _080AB6B0 @ =sub_80AB6B4 - str r0, [r1] - bx lr - .align 2, 0 -_080AB6AC: .4byte gTasks -_080AB6B0: .4byte sub_80AB6B4 - thumb_func_end sub_80AB694 - - thumb_func_start sub_80AB6B4 -sub_80AB6B4: @ 80AB6B4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r5, _080AB6F8 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r5 - ldrh r1, [r0, 0x8] - subs r1, 0x1 - strh r1, [r0, 0x8] - lsls r1, 16 - cmp r1, 0 - bgt _080AB6F2 - bl GetMultiplayerId - adds r0, r4, 0 - bl DestroyTask - ldr r0, _080AB6FC @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x8] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r5 - ldr r1, _080AB700 @ =sub_80AB960 - str r1, [r0] - ldr r1, _080AB704 @ =gRngValue - ldr r0, _080AB708 @ =gUnknown_03005D28 - ldr r0, [r0] - str r0, [r1] -_080AB6F2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AB6F8: .4byte gTasks -_080AB6FC: .4byte gSharedMem + 0x19204 -_080AB700: .4byte sub_80AB960 -_080AB704: .4byte gRngValue -_080AB708: .4byte gUnknown_03005D28 - thumb_func_end sub_80AB6B4 - - thumb_func_start sub_80AB70C -sub_80AB70C: @ 80AB70C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x44 - mov r10, r0 - ldrb r0, [r0] - cmp r0, 0x6 - bls _080AB722 - b _080AB93C -_080AB722: - lsls r0, 2 - ldr r1, _080AB72C @ =_080AB730 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AB72C: .4byte _080AB730 - .align 2, 0 -_080AB730: - .4byte _080AB74C - .4byte _080AB7A0 - .4byte _080AB7B0 - .4byte _080AB800 - .4byte _080AB814 - .4byte _080AB844 - .4byte _080AB8CC -_080AB74C: - ldr r0, _080AB794 @ =gPaletteFade - ldrb r1, [r0, 0x8] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0, 0x8] - movs r2, 0xC0 - lsls r2, 19 - movs r3, 0xC0 - lsls r3, 9 - add r5, sp, 0x40 - movs r6, 0 - ldr r1, _080AB798 @ =0x040000d4 - movs r4, 0x80 - lsls r4, 5 - mov r8, r5 - ldr r7, _080AB79C @ =0x85000400 - movs r0, 0x85 - lsls r0, 24 - mov r9, r0 -_080AB772: - str r6, [sp, 0x40] - mov r0, r8 - str r0, [r1] - str r2, [r1, 0x4] - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r2, r4 - subs r3, r4 - cmp r3, r4 - bhi _080AB772 - str r6, [sp, 0x40] - str r5, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 2 - mov r2, r9 - orrs r0, r2 - b _080AB7E6 - .align 2, 0 -_080AB794: .4byte gPaletteFade -_080AB798: .4byte 0x040000d4 -_080AB79C: .4byte 0x85000400 -_080AB7A0: - ldr r0, _080AB7AC @ =gContestMiscGfx - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram - b _080AB946 - .align 2, 0 -_080AB7AC: .4byte gContestMiscGfx -_080AB7B0: - ldr r0, _080AB7EC @ =gContestAudienceGfx - ldr r4, _080AB7F0 @ =0x06002000 - adds r1, r4, 0 - bl LZDecompressVram - ldr r3, _080AB7F4 @ =gSharedMem + 0x15800 - movs r5, 0x80 - lsls r5, 6 - ldr r1, _080AB7F8 @ =0x040000d4 - ldr r6, _080AB7FC @ =0x84000400 - movs r2, 0x80 - lsls r2, 5 - movs r7, 0x84 - lsls r7, 24 -_080AB7CC: - str r4, [r1] - str r3, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r4, r2 - adds r3, r2 - subs r5, r2 - cmp r5, r2 - bhi _080AB7CC - str r4, [r1] - str r3, [r1, 0x4] - lsrs r0, r5, 2 - orrs r0, r7 -_080AB7E6: - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - b _080AB946 - .align 2, 0 -_080AB7EC: .4byte gContestAudienceGfx -_080AB7F0: .4byte 0x06002000 -_080AB7F4: .4byte gSharedMem + 0x15800 -_080AB7F8: .4byte 0x040000d4 -_080AB7FC: .4byte 0x84000400 -_080AB800: - ldr r0, _080AB80C @ =gUnknown_08D1725C - ldr r1, _080AB810 @ =0x0600d000 - bl LZDecompressVram - b _080AB946 - .align 2, 0 -_080AB80C: .4byte gUnknown_08D1725C -_080AB810: .4byte 0x0600d000 -_080AB814: - ldr r0, _080AB830 @ =gUnknown_08D17424 - ldr r4, _080AB834 @ =0x0600e000 - adds r1, r4, 0 - bl LZDecompressVram - ldr r1, _080AB838 @ =gSharedMem + 0x18A04 - ldr r0, _080AB83C @ =0x040000d4 - str r4, [r0] - str r1, [r0, 0x4] - ldr r1, _080AB840 @ =0x84000200 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _080AB946 - .align 2, 0 -_080AB830: .4byte gUnknown_08D17424 -_080AB834: .4byte 0x0600e000 -_080AB838: .4byte gSharedMem + 0x18A04 -_080AB83C: .4byte 0x040000d4 -_080AB840: .4byte 0x84000200 -_080AB844: - ldr r0, _080AB8AC @ =gUnknown_08D17144 - movs r2, 0x80 - lsls r2, 2 - movs r1, 0 - bl LoadCompressedPalette - ldr r5, _080AB8B0 @ =gPlttBufferUnfaded + 0x100 - ldr r6, _080AB8B4 @ =REG_BG0CNT - adds r0, r5, 0 - mov r1, sp - adds r2, r6, 0 - bl CpuSet - ldr r0, _080AB8B8 @ =gContestPlayerMonIndex - mov r9, r0 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 5 - ldr r1, _080AB8BC @ =0xffffff00 - adds r1, r5 - mov r8, r1 - add r0, r8 - add r4, sp, 0x20 - adds r1, r4, 0 - adds r2, r6, 0 - bl CpuSet - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl CpuSet - mov r2, r9 - ldrb r1, [r2] - adds r1, 0x5 - lsls r1, 5 - add r1, r8 - mov r0, sp - adds r2, r6, 0 - bl CpuSet - ldr r1, _080AB8C0 @ =gSharedMem + 0x18004 - ldr r0, _080AB8C4 @ =0x040000d4 - mov r2, r8 - str r2, [r0] - str r1, [r0, 0x4] - ldr r1, _080AB8C8 @ =0x84000080 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - bl sub_80AB350 - b _080AB946 - .align 2, 0 -_080AB8AC: .4byte gUnknown_08D17144 -_080AB8B0: .4byte gPlttBufferUnfaded + 0x100 -_080AB8B4: .4byte REG_BG0CNT -_080AB8B8: .4byte gContestPlayerMonIndex -_080AB8BC: .4byte 0xffffff00 -_080AB8C0: .4byte gSharedMem + 0x18004 -_080AB8C4: .4byte 0x040000d4 -_080AB8C8: .4byte 0x84000080 -_080AB8CC: - bl sub_80B1118 - bl sub_80AFA5C - bl sub_80AEB30 - bl sub_80AE8B4 - ldr r1, _080AB924 @ =gSharedMem + 0x19204 - movs r4, 0 - strb r0, [r1, 0x12] - bl sub_80AFE30 - bl sub_80B0034 - bl sub_80B00C8 - bl sub_80B0324 - bl sub_80B0518 - ldr r1, _080AB928 @ =gBanksBySide - strb r4, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r3, 0x3 - strb r3, [r1, 0x2] - movs r2, 0x2 - strb r2, [r1, 0x3] - ldr r0, _080AB92C @ =gBattleTypeFlags - strh r4, [r0] - ldr r4, _080AB930 @ =gBankAttacker - strb r2, [r4] - ldr r0, _080AB934 @ =gBankTarget - strb r3, [r0] - bl sub_80AE858 - ldr r2, _080AB938 @ =gObjectBankIDs - ldrb r1, [r4] - adds r1, r2 - strb r0, [r1] - bl sub_80B292C - b _080AB946 - .align 2, 0 -_080AB924: .4byte gSharedMem + 0x19204 -_080AB928: .4byte gBanksBySide -_080AB92C: .4byte gBattleTypeFlags -_080AB930: .4byte gBankAttacker -_080AB934: .4byte gBankTarget -_080AB938: .4byte gObjectBankIDs -_080AB93C: - movs r0, 0 - mov r1, r10 - strb r0, [r1] - movs r0, 0x1 - b _080AB950 -_080AB946: - mov r2, r10 - ldrb r0, [r2] - adds r0, 0x1 - strb r0, [r2] - movs r0, 0 -_080AB950: - add sp, 0x44 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80AB70C - - thumb_func_start sub_80AB960 -sub_80AB960: @ 80AB960 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, _080AB994 @ =gPaletteFade - ldrb r2, [r1, 0x8] - movs r0, 0x7F - ands r0, r2 - strb r0, [r1, 0x8] - ldrb r1, [r1, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080AB990 - ldr r0, _080AB998 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - strh r2, [r1, 0x8] - strh r2, [r1, 0xA] - ldr r0, _080AB99C @ =sub_80AB9A0 - str r0, [r1] -_080AB990: - pop {r0} - bx r0 - .align 2, 0 -_080AB994: .4byte gPaletteFade -_080AB998: .4byte gTasks -_080AB99C: .4byte sub_80AB9A0 - thumb_func_end sub_80AB960 - - thumb_func_start sub_80AB9A0 -sub_80AB9A0: @ 80AB9A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080AB9C4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r2, 0x8 - ldrsh r0, [r0, r2] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _080ABA7C - lsls r0, 2 - ldr r1, _080AB9C8 @ =_080AB9CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AB9C4: .4byte gTasks -_080AB9C8: .4byte _080AB9CC - .align 2, 0 -_080AB9CC: - .4byte _080AB9E0 - .4byte _080ABA0A - .4byte _080ABA28 - .4byte _080ABA44 - .4byte _080ABA7C -_080AB9E0: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r4, r0, r2 - ldrh r0, [r4, 0xA] - adds r1, r0, 0x1 - strh r1, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x3C - ble _080ABA9C - movs r0, 0 - strh r0, [r4, 0xA] - movs r0, 0x61 - movs r1, 0 - bl PlaySE12WithPanning - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080ABA9C -_080ABA0A: - ldr r1, _080ABA24 @ =gUnknown_030041B4 - ldrh r0, [r1] - adds r0, 0x7 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA0 - ble _080ABA9C - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r2 - b _080ABA68 - .align 2, 0 -_080ABA24: .4byte gUnknown_030041B4 -_080ABA28: - bl sub_80B2280 - ldr r0, _080ABA40 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _080ABA9C - .align 2, 0 -_080ABA40: .4byte gTasks -_080ABA44: - ldr r3, _080ABA70 @ =REG_BG0CNT - ldrb r2, [r3] - movs r1, 0x4 - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - ldr r2, _080ABA74 @ =REG_BG2CNT - ldrb r0, [r2] - ands r1, r0 - strb r1, [r2] - bl sub_80B1B14 - ldr r1, _080ABA78 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 -_080ABA68: - ldrh r1, [r0, 0x8] - adds r1, 0x1 - strh r1, [r0, 0x8] - b _080ABA9C - .align 2, 0 -_080ABA70: .4byte REG_BG0CNT -_080ABA74: .4byte REG_BG2CNT -_080ABA78: .4byte gTasks -_080ABA7C: - ldr r0, _080ABAA4 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x6] - movs r0, 0x40 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080ABA9C - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r2 - strh r1, [r0, 0x8] - strh r1, [r0, 0xA] - ldr r1, _080ABAA8 @ =sub_80ABB70 - str r1, [r0] -_080ABA9C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ABAA4: .4byte gSharedMem + 0x19204 -_080ABAA8: .4byte sub_80ABB70 - thumb_func_end sub_80AB9A0 - - thumb_func_start sub_80ABAAC -sub_80ABAAC: @ 80ABAAC - push {lr} - bl AnimateSprites - bl RunTasks - bl BuildOamBuffer - bl UpdatePaletteFade - pop {r0} - bx r0 - thumb_func_end sub_80ABAAC - - thumb_func_start sub_80ABAC4 -sub_80ABAC4: @ 80ABAC4 - push {lr} - ldr r1, _080ABB3C @ =REG_BG0HOFS - ldr r0, _080ABB40 @ =gUnknown_030042A4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB44 @ =gUnknown_030042A0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB48 @ =gUnknown_030042C0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB4C @ =gUnknown_030041B4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB50 @ =gUnknown_03004288 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB54 @ =gUnknown_03004280 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB58 @ =gUnknown_030041B0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _080ABB5C @ =gUnknown_030041B8 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x22 - ldr r0, _080ABB60 @ =gUnknown_030042C4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x4 - ldr r0, _080ABB64 @ =gUnknown_03004240 - ldrh r0, [r0] - strh r0, [r1] - subs r1, 0x2 - ldr r0, _080ABB68 @ =gUnknown_03004200 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x4 - ldr r0, _080ABB6C @ =gUnknown_03004244 - ldrh r0, [r0] - strh r0, [r1] - bl TransferPlttBuffer - bl LoadOam - bl ProcessSpriteCopyRequests - bl sub_8089668 - pop {r0} - bx r0 - .align 2, 0 -_080ABB3C: .4byte REG_BG0HOFS -_080ABB40: .4byte gUnknown_030042A4 -_080ABB44: .4byte gUnknown_030042A0 -_080ABB48: .4byte gUnknown_030042C0 -_080ABB4C: .4byte gUnknown_030041B4 -_080ABB50: .4byte gUnknown_03004288 -_080ABB54: .4byte gUnknown_03004280 -_080ABB58: .4byte gUnknown_030041B0 -_080ABB5C: .4byte gUnknown_030041B8 -_080ABB60: .4byte gUnknown_030042C4 -_080ABB64: .4byte gUnknown_03004240 -_080ABB68: .4byte gUnknown_03004200 -_080ABB6C: .4byte gUnknown_03004244 - thumb_func_end sub_80ABAC4 - - thumb_func_start sub_80ABB70 -sub_80ABB70: @ 80ABB70 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _080ABBB0 @ =gUnknown_030042A0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080ABBB4 @ =gUnknown_03004280 - strh r1, [r0] - bl sub_80B0D7C - ldr r1, _080ABBB8 @ =gPlttBufferUnfaded - ldr r2, _080ABBBC @ =gSharedMem + 0x18204 - ldr r0, _080ABBC0 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080ABBC4 @ =0x84000100 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _080ABBC8 @ =gContestPlayerMonIndex - ldrb r0, [r0] - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - bne _080ABBD4 - ldr r0, _080ABBCC @ =gDisplayedStringBattle - ldr r1, _080ABBD0 @ =gUnknown_083CAF84 - bl StringCopy - b _080ABBDC - .align 2, 0 -_080ABBB0: .4byte gUnknown_030042A0 -_080ABBB4: .4byte gUnknown_03004280 -_080ABBB8: .4byte gPlttBufferUnfaded -_080ABBBC: .4byte gSharedMem + 0x18204 -_080ABBC0: .4byte 0x040000d4 -_080ABBC4: .4byte 0x84000100 -_080ABBC8: .4byte gContestPlayerMonIndex -_080ABBCC: .4byte gDisplayedStringBattle -_080ABBD0: .4byte gUnknown_083CAF84 -_080ABBD4: - ldr r0, _080ABC20 @ =gDisplayedStringBattle - ldr r1, _080ABC24 @ =gUnknown_083CAFAE - bl StringCopy -_080ABBDC: - ldr r5, _080ABC20 @ =gDisplayedStringBattle - ldr r0, _080ABC28 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x1] - adds r1, 0x1 - adds r0, r5, 0 - bl sub_80AE020 - bl sub_80AF138 - ldr r4, _080ABC2C @ =gStringVar4 - adds r0, r4, 0 - adds r1, r5, 0 - bl StringExpandPlaceholders - ldr r0, _080ABC30 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080ABC34 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ABC38 @ =sub_80ABC3C - str r1, [r0] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ABC20: .4byte gDisplayedStringBattle -_080ABC24: .4byte gUnknown_083CAFAE -_080ABC28: .4byte gSharedMem + 0x19204 -_080ABC2C: .4byte gStringVar4 -_080ABC30: .4byte gMenuWindow -_080ABC34: .4byte gTasks -_080ABC38: .4byte sub_80ABC3C - thumb_func_end sub_80ABB70 - - thumb_func_start sub_80ABC3C -sub_80ABC3C: @ 80ABC3C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080ABC64 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080ABC5E - ldr r0, _080ABC68 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ABC6C @ =sub_80ABC70 - str r0, [r1] -_080ABC5E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ABC64: .4byte gMenuWindow -_080ABC68: .4byte gTasks -_080ABC6C: .4byte sub_80ABC70 - thumb_func_end sub_80ABC3C - - thumb_func_start sub_80ABC70 -sub_80ABC70: @ 80ABC70 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - ldr r0, _080ABCB0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080ABC88 - cmp r1, 0x2 - bne _080ABCCE -_080ABC88: - movs r0, 0x5 - bl PlaySE - ldr r0, _080ABCB4 @ =gContestPlayerMonIndex - ldrb r0, [r0] - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - bne _080ABCC0 - movs r0, 0x1 - bl sub_80AFFE0 - ldr r0, _080ABCB8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ABCBC @ =sub_80ABCDC - b _080ABCCC - .align 2, 0 -_080ABCB0: .4byte gMain -_080ABCB4: .4byte gContestPlayerMonIndex -_080ABCB8: .4byte gTasks -_080ABCBC: .4byte sub_80ABCDC -_080ABCC0: - ldr r0, _080ABCD4 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ABCD8 @ =sub_80AC0C8 -_080ABCCC: - str r0, [r1] -_080ABCCE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ABCD4: .4byte gTasks -_080ABCD8: .4byte sub_80AC0C8 - thumb_func_end sub_80ABC70 - - thumb_func_start sub_80ABCDC -sub_80ABCDC: @ 80ABCDC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x2C - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x28] - ldr r0, _080ABD80 @ =gUnknown_030042A0 - movs r1, 0xA0 - strh r1, [r0] - ldr r0, _080ABD84 @ =gUnknown_03004280 - strh r1, [r0] - ldr r5, _080ABD88 @ =gUnknown_03004210 - ldr r4, _080ABD8C @ =gUnknown_083CA340 - ldrb r2, [r4] - ldrb r3, [r4, 0x1] - ldrb r0, [r4, 0x2] - str r0, [sp] - ldrb r0, [r4, 0x3] - str r0, [sp, 0x4] - adds r0, r5, 0 - movs r1, 0 - bl FillWindowRect_DefaultPalette - movs r6, 0 - ldr r0, _080ABD90 @ =gContestPlayerMonIndex - mov r8, r0 - ldr r7, _080ABD94 @ =gSharedMem + 0x19260 - mov r9, r5 - mov r10, r4 -_080ABD1C: - lsls r1, r6, 1 - mov r3, r8 - ldrb r2, [r3] - lsls r0, r2, 6 - adds r1, r0 - ldr r0, _080ABD98 @ =gUnknown_0203858E - adds r1, r0 - ldrh r4, [r1] - add r5, sp, 0x8 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r7 - ldrh r0, [r0, 0x8] - cmp r0, 0 - beq _080ABDA0 - adds r0, r2, 0 - bl sub_80B214C - lsls r0, 24 - cmp r0, 0 - beq _080ABDA0 - mov r2, r8 - ldrb r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r7 - ldrh r0, [r0, 0x8] - adds r1, r4, 0 - bl AreMovesContestCombo - lsls r0, 24 - cmp r0, 0 - beq _080ABDA0 - mov r3, r8 - ldrb r1, [r3] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r7 - ldrb r1, [r0, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080ABDA0 - add r0, sp, 0x8 - ldr r1, _080ABD9C @ =gUnknownText_UnknownFormatting2 - b _080ABDC6 - .align 2, 0 -_080ABD80: .4byte gUnknown_030042A0 -_080ABD84: .4byte gUnknown_03004280 -_080ABD88: .4byte gUnknown_03004210 -_080ABD8C: .4byte gUnknown_083CA340 -_080ABD90: .4byte gContestPlayerMonIndex -_080ABD94: .4byte gSharedMem + 0x19260 -_080ABD98: .4byte gUnknown_0203858E -_080ABD9C: .4byte gUnknownText_UnknownFormatting2 -_080ABDA0: - cmp r4, 0 - beq _080ABDCC - mov r1, r8 - ldrb r0, [r1] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r7 - ldrh r0, [r1, 0x8] - cmp r0, r4 - bne _080ABDCC - ldr r0, _080ABE74 @ =gContestMoves - lsls r1, r4, 3 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x3 - beq _080ABDCC - add r0, sp, 0x8 - ldr r1, _080ABE78 @ =gUnknownText_UnknownFormatting3 -_080ABDC6: - bl StringCopy - adds r5, r0, 0 -_080ABDCC: - movs r0, 0xD - adds r1, r4, 0 - muls r1, r0 - ldr r0, _080ABE7C @ =gMoveNames - adds r1, r0 - adds r0, r5, 0 - bl StringCopy - lsls r1, r6, 2 - adds r2, r1, r6 - lsls r2, 18 - movs r3, 0xC2 - lsls r3, 18 - adds r2, r3 - lsrs r2, 16 - mov r3, r10 - adds r0, r1, r3 - ldrb r3, [r0] - lsls r3, 3 - adds r3, 0x4 - lsls r3, 24 - lsrs r3, 24 - ldr r0, _080ABE80 @ =gUnknown_083CA340 + 0x1 - adds r1, r0 - ldrb r0, [r1] - lsls r0, 3 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - mov r0, r9 - add r1, sp, 0x8 - bl sub_8002E4C - mov r0, r9 - bl sub_8002F44 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bhi _080ABE20 - b _080ABD1C -_080ABE20: - ldr r1, _080ABE84 @ =0x0000ffff - ldr r3, _080ABE88 @ =0x00002d9f - movs r0, 0x48 - str r0, [sp] - movs r0, 0 - movs r2, 0xC - bl sub_814A5C0 - ldr r4, _080ABE8C @ =gSharedMem + 0x19204 - movs r0, 0 - ldrsb r0, [r4, r0] - bl sub_80AC0AC - ldr r2, _080ABE90 @ =gContestMons - ldrb r1, [r4] - lsls r1, 1 - ldr r0, _080ABE94 @ =gContestPlayerMonIndex - ldrb r0, [r0] - lsls r0, 6 - adds r1, r0 - adds r2, 0x1E - adds r1, r2 - ldrh r0, [r1] - bl sub_80AEBEC - ldr r1, _080ABE98 @ =gTasks - ldr r2, [sp, 0x28] - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ABE9C @ =sub_80ABEA0 - str r1, [r0] - add sp, 0x2C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080ABE74: .4byte gContestMoves -_080ABE78: .4byte gUnknownText_UnknownFormatting3 -_080ABE7C: .4byte gMoveNames -_080ABE80: .4byte gUnknown_083CA340 + 0x1 -_080ABE84: .4byte 0x0000ffff -_080ABE88: .4byte 0x00002d9f -_080ABE8C: .4byte gSharedMem + 0x19204 -_080ABE90: .4byte gContestMons -_080ABE94: .4byte gContestPlayerMonIndex -_080ABE98: .4byte gTasks -_080ABE9C: .4byte sub_80ABEA0 - thumb_func_end sub_80ABCDC - - thumb_func_start sub_80ABEA0 -sub_80ABEA0: @ 80ABEA0 - push {r4-r7,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r7, r0, 24 - movs r6, 0 - ldr r3, _080ABEF4 @ =gMain - ldr r1, _080ABEF8 @ =gContestMons - ldr r0, _080ABEFC @ =gContestPlayerMonIndex - ldrb r0, [r0] - lsls r0, 6 - adds r1, 0x1E - adds r1, r0, r1 - movs r2, 0x3 -_080ABEBA: - ldrh r0, [r1] - cmp r0, 0 - beq _080ABEC6 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_080ABEC6: - adds r1, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080ABEBA - ldrh r0, [r3, 0x2E] - movs r5, 0x1 - ands r5, r0 - cmp r5, 0 - beq _080ABF08 - bl DestroyMenuCursor - movs r0, 0x5 - bl PlaySE - ldr r0, _080ABF00 @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ABF04 @ =sub_80AC0C8 - str r0, [r1] - b _080AC098 - .align 2, 0 -_080ABEF4: .4byte gMain -_080ABEF8: .4byte gContestMons -_080ABEFC: .4byte gContestPlayerMonIndex -_080ABF00: .4byte gTasks -_080ABF04: .4byte sub_80AC0C8 -_080ABF08: - ldrh r0, [r3, 0x30] - cmp r0, 0x20 - bne _080ABF10 - b _080AC098 -_080ABF10: - cmp r0, 0x20 - bgt _080ABF1A - cmp r0, 0x2 - beq _080ABF26 - b _080AC098 -_080ABF1A: - cmp r0, 0x40 - beq _080ABFEC - cmp r0, 0x80 - bne _080ABF24 - b _080AC048 -_080ABF24: - b _080AC098 -_080ABF26: - bl sub_814A904 - movs r0, 0x5 - bl PlaySE - movs r0, 0 - bl sub_80AFFE0 - ldr r0, _080ABF64 @ =gUnknown_03004210 - ldr r1, _080ABF68 @ =gUnknown_083CA340 - ldrb r2, [r1] - ldrb r3, [r1, 0x1] - ldrb r4, [r1, 0x2] - str r4, [sp] - ldrb r1, [r1, 0x3] - str r1, [sp, 0x4] - movs r1, 0 - bl FillWindowRect_DefaultPalette - ldr r0, _080ABF6C @ =gContestPlayerMonIndex - ldrb r0, [r0] - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - bne _080ABF78 - ldr r0, _080ABF70 @ =gDisplayedStringBattle - ldr r1, _080ABF74 @ =gUnknown_083CAF84 - bl StringCopy - b _080ABF80 - .align 2, 0 -_080ABF64: .4byte gUnknown_03004210 -_080ABF68: .4byte gUnknown_083CA340 -_080ABF6C: .4byte gContestPlayerMonIndex -_080ABF70: .4byte gDisplayedStringBattle -_080ABF74: .4byte gUnknown_083CAF84 -_080ABF78: - ldr r0, _080ABFC8 @ =gDisplayedStringBattle - ldr r1, _080ABFCC @ =gUnknown_083CAFAE - bl StringCopy -_080ABF80: - ldr r5, _080ABFC8 @ =gDisplayedStringBattle - ldr r0, _080ABFD0 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x1] - adds r1, 0x1 - adds r0, r5, 0 - bl sub_80AE020 - bl sub_80AF138 - ldr r4, _080ABFD4 @ =gStringVar4 - adds r0, r4, 0 - adds r1, r5, 0 - bl StringExpandPlaceholders - ldr r0, _080ABFD8 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8003460 - ldr r0, _080ABFDC @ =gUnknown_030042A0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080ABFE0 @ =gUnknown_03004280 - strh r1, [r0] - ldr r1, _080ABFE4 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ABFE8 @ =sub_80ABC70 - str r1, [r0] - b _080AC098 - .align 2, 0 -_080ABFC8: .4byte gDisplayedStringBattle -_080ABFCC: .4byte gUnknown_083CAFAE -_080ABFD0: .4byte gSharedMem + 0x19204 -_080ABFD4: .4byte gStringVar4 -_080ABFD8: .4byte gMenuWindow -_080ABFDC: .4byte gUnknown_030042A0 -_080ABFE0: .4byte gUnknown_03004280 -_080ABFE4: .4byte gTasks -_080ABFE8: .4byte sub_80ABC70 -_080ABFEC: - ldr r4, _080AC000 @ =gSharedMem + 0x19204 - movs r0, 0 - ldrsb r0, [r4, r0] - bl nullsub_17 - ldrb r0, [r4] - cmp r0, 0 - bne _080AC004 - subs r0, r6, 0x1 - b _080AC006 - .align 2, 0 -_080AC000: .4byte gSharedMem + 0x19204 -_080AC004: - subs r0, 0x1 -_080AC006: - strb r0, [r4] - ldr r4, _080AC03C @ =gSharedMem + 0x19204 - movs r0, 0 - ldrsb r0, [r4, r0] - bl sub_80AC0AC - bl sub_80AED58 - ldr r2, _080AC040 @ =gContestMons - ldrb r1, [r4] - lsls r1, 1 - ldr r0, _080AC044 @ =gContestPlayerMonIndex - ldrb r0, [r0] - lsls r0, 6 - adds r1, r0 - adds r2, 0x1E - adds r1, r2 - ldrh r0, [r1] - bl sub_80AEBEC - cmp r6, 0x1 - bls _080AC098 - movs r0, 0x5 - bl PlaySE - b _080AC098 - .align 2, 0 -_080AC03C: .4byte gSharedMem + 0x19204 -_080AC040: .4byte gContestMons -_080AC044: .4byte gContestPlayerMonIndex -_080AC048: - ldr r4, _080AC060 @ =gSharedMem + 0x19204 - movs r0, 0 - ldrsb r0, [r4, r0] - bl nullsub_17 - ldrb r1, [r4] - subs r0, r6, 0x1 - cmp r1, r0 - bne _080AC064 - strb r5, [r4] - b _080AC068 - .align 2, 0 -_080AC060: .4byte gSharedMem + 0x19204 -_080AC064: - adds r0, r1, 0x1 - strb r0, [r4] -_080AC068: - ldr r4, _080AC0A0 @ =gSharedMem + 0x19204 - movs r0, 0 - ldrsb r0, [r4, r0] - bl sub_80AC0AC - bl sub_80AED58 - ldr r2, _080AC0A4 @ =gContestMons - ldrb r1, [r4] - lsls r1, 1 - ldr r0, _080AC0A8 @ =gContestPlayerMonIndex - ldrb r0, [r0] - lsls r0, 6 - adds r1, r0 - adds r2, 0x1E - adds r1, r2 - ldrh r0, [r1] - bl sub_80AEBEC - cmp r6, 0x1 - bls _080AC098 - movs r0, 0x5 - bl PlaySE -_080AC098: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AC0A0: .4byte gSharedMem + 0x19204 -_080AC0A4: .4byte gContestMons -_080AC0A8: .4byte gContestPlayerMonIndex - thumb_func_end sub_80ABEA0 - - thumb_func_start sub_80AC0AC -sub_80AC0AC: @ 80AC0AC - push {lr} - adds r1, r0, 0 - lsls r1, 28 - movs r0, 0xB0 - lsls r0, 23 - adds r1, r0 - lsrs r1, 24 - movs r0, 0x4 - bl sub_814A880 - pop {r0} - bx r0 - thumb_func_end sub_80AC0AC - - thumb_func_start nullsub_17 -nullsub_17: @ 80AC0C4 - bx lr - thumb_func_end nullsub_17 - - thumb_func_start sub_80AC0C8 -sub_80AC0C8: @ 80AC0C8 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _080AC120 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AC13C - ldr r4, _080AC124 @ =gContestPlayerMonIndex - ldrb r0, [r4] - bl sub_80AF15C - ldrb r2, [r4] - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r2, _080AC128 @ =gSharedMem + 0x19260 - adds r1, r2 - strh r0, [r1, 0x6] - ldr r4, _080AC12C @ =sub_80C8A38 - adds r0, r4, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AC130 @ =sub_80AC15C - adds r1, r4, 0 - bl SetTaskFuncWithFollowupFunc - ldr r1, _080AC134 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _080AC138 @ =nullsub_89 - str r1, [r0] - bl sub_80AF860 - movs r0, 0 - bl sub_80AFFE0 - b _080AC14E - .align 2, 0 -_080AC120: .4byte gIsLinkContest -_080AC124: .4byte gContestPlayerMonIndex -_080AC128: .4byte gSharedMem + 0x19260 -_080AC12C: .4byte sub_80C8A38 -_080AC130: .4byte sub_80AC15C -_080AC134: .4byte gTasks -_080AC138: .4byte nullsub_89 -_080AC13C: - bl sub_80AF1B8 - ldr r0, _080AC154 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _080AC158 @ =sub_80AC188 - str r0, [r1] -_080AC14E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AC154: .4byte gTasks -_080AC158: .4byte sub_80AC188 - thumb_func_end sub_80AC0C8 - - thumb_func_start sub_80AC15C -sub_80AC15C: @ 80AC15C - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - ldr r2, _080AC17C @ =gTasks - ldr r0, _080AC180 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x8] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, _080AC184 @ =sub_80AC188 - str r1, [r0] - pop {r0} - bx r0 - .align 2, 0 -_080AC17C: .4byte gTasks -_080AC180: .4byte gSharedMem + 0x19204 -_080AC184: .4byte sub_80AC188 - thumb_func_end sub_80AC15C - - thumb_func_start sub_80AC188 -sub_80AC188: @ 80AC188 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - bl sub_80AF138 - ldr r0, _080AC1E4 @ =gUnknown_030042A0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080AC1E8 @ =gUnknown_03004280 - strh r1, [r0] - movs r0, 0 - bl sub_80AFFE0 - ldr r1, _080AC1EC @ =gPlttBufferFaded - ldr r0, _080AC1F0 @ =gSharedMem + 0x18604 - movs r2, 0x80 - lsls r2, 3 - ldr r4, _080AC1F4 @ =0x040000d4 - str r1, [r4] - str r0, [r4, 0x4] - lsrs r1, r2, 2 - movs r3, 0x84 - lsls r3, 24 - orrs r1, r3 - str r1, [r4, 0x8] - ldr r1, [r4, 0x8] - ldr r1, _080AC1F8 @ =0xfffffc00 - adds r0, r1 - movs r1, 0 - bl LoadPalette - ldr r1, _080AC1FC @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] - strh r1, [r0, 0xA] - ldr r1, _080AC200 @ =sub_80AC204 - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AC1E4: .4byte gUnknown_030042A0 -_080AC1E8: .4byte gUnknown_03004280 -_080AC1EC: .4byte gPlttBufferFaded -_080AC1F0: .4byte gSharedMem + 0x18604 -_080AC1F4: .4byte 0x040000d4 -_080AC1F8: .4byte 0xfffffc00 -_080AC1FC: .4byte gTasks -_080AC200: .4byte sub_80AC204 - thumb_func_end sub_80AC188 - - thumb_func_start sub_80AC204 -sub_80AC204: @ 80AC204 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AC248 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _080AC242 - movs r0, 0 - strh r0, [r4, 0x8] - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - bne _080AC242 - bl sub_80B1BDC - movs r0, 0x1 - bl sub_80B25E4 - ldr r0, _080AC24C @ =sub_80AC250 - str r0, [r4] -_080AC242: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AC248: .4byte gTasks -_080AC24C: .4byte sub_80AC250 - thumb_func_end sub_80AC204 - - thumb_func_start sub_80AC250 -sub_80AC250: @ 80AC250 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _080AC278 @ =gSharedMem + 0x19204 - ldrh r1, [r0, 0x6] - movs r0, 0x90 - lsls r0, 2 - ands r0, r1 - cmp r0, 0 - bne _080AC272 - ldr r0, _080AC27C @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _080AC280 @ =sub_80AC284 - str r0, [r1] -_080AC272: - pop {r0} - bx r0 - .align 2, 0 -_080AC278: .4byte gSharedMem + 0x19204 -_080AC27C: .4byte gTasks -_080AC280: .4byte sub_80AC284 - thumb_func_end sub_80AC250 - - thumb_func_start sub_80AC284 -sub_80AC284: @ 80AC284 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AC2BC @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r2, r1, r2 - ldrh r0, [r2, 0x8] - adds r0, 0x1 - strh r0, [r2, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080AC2B6 - ldr r1, _080AC2C0 @ =gSharedMem + 0x19204 - movs r0, 0 - strb r0, [r1, 0x10] - ldr r0, _080AC2C4 @ =gRngValue - ldr r0, [r0] - str r0, [r1, 0x18] - movs r0, 0 - strh r0, [r2, 0x8] - ldr r0, _080AC2C8 @ =sub_80AC2CC - str r0, [r2] -_080AC2B6: - pop {r0} - bx r0 - .align 2, 0 -_080AC2BC: .4byte gTasks -_080AC2C0: .4byte gSharedMem + 0x19204 -_080AC2C4: .4byte gRngValue -_080AC2C8: .4byte sub_80AC2CC - thumb_func_end sub_80AC284 - - thumb_func_start sub_80AC2CC -sub_80AC2CC: @ 80AC2CC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r2, _080AC308 @ =gSharedMem + 0x19204 - ldrb r7, [r2, 0x11] - ldr r1, _080AC30C @ =gTasks - lsls r0, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r3, 0x8 - ldrsh r0, [r0, r3] - adds r6, r2, 0 - mov r12, r1 - cmp r0, 0x3B - bls _080AC2FC - bl _080AD8CA -_080AC2FC: - lsls r0, 2 - ldr r1, _080AC310 @ =_080AC314 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AC308: .4byte gSharedMem + 0x19204 -_080AC30C: .4byte gTasks -_080AC310: .4byte _080AC314 - .align 2, 0 -_080AC314: - .4byte _080AC404 - .4byte _080AC4B4 - .4byte _080AC4D4 - .4byte _080AC534 - .4byte _080AC5E8 - .4byte _080AC638 - .4byte _080AC6F8 - .4byte _080AC730 - .4byte _080AC77C - .4byte _080AC7F4 - .4byte _080AD750 - .4byte _080AD77C - .4byte _080AC98C - .4byte _080AC9C0 - .4byte _080ACEC0 - .4byte _080ACFD4 - .4byte _080AD040 - .4byte _080AD070 - .4byte _080AD168 - .4byte _080AD11A - .4byte _080AD7B8 - .4byte _080AD868 - .4byte _080AD88C - .4byte _080AC81E - .4byte _080AC8CC - .4byte _080ACAD8 - .4byte _080ACAEE - .4byte _080ACBB0 - .4byte _080ACBDC - .4byte _080ACC44 - .4byte _080ACD2A - .4byte _080AD7E8 - .4byte _080AD840 - .4byte _080AD648 - .4byte _080AD6D8 - .4byte _080AC9EC - .4byte _080ACA24 - .4byte _080ACA44 - .4byte _080ACA84 - .4byte _080ACC98 - .4byte _080ACD00 - .4byte _080AD1A4 - .4byte _080AD8CA - .4byte _080AD514 - .4byte _080AD8CA - .4byte _080ACFA8 - .4byte _080AD0FA - .4byte _080AC96C - .4byte _080AC8F8 - .4byte _080AC94C - .4byte _080ACAAE - .4byte _080ACDC8 - .4byte _080ACE64 - .4byte _080AD316 - .4byte _080AD3D0 - .4byte _080AD700 - .4byte _080AD71C - .4byte _080AD53C - .4byte _080AD5D0 - .4byte _080AD624 -_080AC404: - bl sub_80B0D7C - movs r6, 0 - ldr r0, _080AC484 @ =gSharedMem + 0x19204 - adds r1, r0, 0 - adds r1, 0xCC - ldrb r0, [r0, 0x10] - mov r4, r8 - lsls r4, 2 - mov r9, r4 - ldrb r5, [r1] - cmp r0, r5 - beq _080AC42C - adds r2, r1, 0 - adds r1, r0, 0 -_080AC422: - adds r6, 0x1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r1, r0 - bne _080AC422 -_080AC42C: - ldr r4, _080AC484 @ =gSharedMem + 0x19204 - strb r6, [r4, 0x11] - ldrb r7, [r4, 0x11] - ldr r0, _080AC488 @ =gIsLinkContest - ldrb r1, [r0] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080AC498 - ldrb r0, [r4, 0x7] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4, 0x7] - bl sub_80AE074 - lsls r0, 24 - cmp r0, 0 - beq _080AC458 - ldrb r0, [r4, 0x11] - bl sub_80B114C -_080AC458: - ldr r4, _080AC48C @ =sub_80C8C80 - adds r0, r4, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AC490 @ =sub_80AD8DC - adds r1, r4, 0 - bl SetTaskFuncWithFollowupFunc - bl sub_80AF860 - ldr r1, _080AC494 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - strh r5, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC484: .4byte gSharedMem + 0x19204 -_080AC488: .4byte gIsLinkContest -_080AC48C: .4byte sub_80C8C80 -_080AC490: .4byte sub_80AD8DC -_080AC494: .4byte gTasks -_080AC498: - adds r0, r7, 0 - bl sub_80B114C - ldr r0, _080AC4B0 @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x2 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC4B0: .4byte gTasks -_080AC4B4: - ldrb r1, [r6, 0x7] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080AC4C2 - bl _080AD8CA -_080AC4C2: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x2 - strh r1, [r0, 0x8] - bl _080AD8CA -_080AC4D4: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AC508 @ =gSharedMem + 0x19260 - adds r2, r0, r1 - ldrb r1, [r2, 0xC] - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - bne _080AC4F6 - ldrb r1, [r2, 0xB] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _080AC50C -_080AC4F6: - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x1F - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC508: .4byte gSharedMem + 0x19260 -_080AC50C: - bl sub_80AF138 - adds r0, r7, 0 - movs r1, 0 - bl sub_80B0CDC - ldr r0, _080AC530 @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - strh r6, [r1, 0x1C] - movs r0, 0x3 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC530: .4byte gTasks -_080AC534: - mov r4, r8 - lsls r4, 2 - mov r9, r4 - ldr r4, _080AC5C4 @ =gSharedMem + 0x19348 - ldr r1, _080AC5C8 @ =gBattleMonForms - movs r2, 0 - adds r0, r1, 0x3 -_080AC542: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _080AC542 - movs r6, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x14 - bl memset - ldr r5, _080AC5CC @ =0xfffffebc - adds r7, r4, r5 - ldrb r0, [r7, 0x11] - bl sub_80B28F0 - ldr r3, _080AC5D0 @ =gContestMons - ldrb r2, [r7, 0x11] - lsls r2, 6 - adds r0, r2, r3 - ldrh r0, [r0] - adds r1, r3, 0 - adds r1, 0x3C - adds r1, r2, r1 - ldr r1, [r1] - adds r3, 0x38 - adds r2, r3 - ldr r2, [r2] - bl sub_80AE9FC - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, _080AC5D4 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r3, r0, r2 - movs r1, 0x78 - strh r1, [r3, 0x24] - adds r2, 0x1C - adds r0, r2 - ldr r1, _080AC5D8 @ =sub_80AD8FC - str r1, [r0] - ldr r0, _080AC5DC @ =gTasks - mov r4, r9 - add r4, r8 - lsls r4, 3 - adds r4, r0 - strh r5, [r4, 0xC] - ldr r1, _080AC5E0 @ =gObjectBankIDs - ldr r0, _080AC5E4 @ =gBankAttacker - ldrb r0, [r0] - adds r0, r1 - strb r5, [r0] - ldrb r0, [r7, 0x11] - bl sub_80B09E4 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - bl sub_80B0BC4 - strh r6, [r4, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC5C4: .4byte gSharedMem + 0x19348 -_080AC5C8: .4byte gBattleMonForms -_080AC5CC: .4byte 0xfffffebc -_080AC5D0: .4byte gContestMons -_080AC5D4: .4byte gSprites -_080AC5D8: .4byte sub_80AD8FC -_080AC5DC: .4byte gTasks -_080AC5E0: .4byte gObjectBankIDs -_080AC5E4: .4byte gBankAttacker -_080AC5E8: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - mov r3, r12 - adds r2, r0, r3 - ldrb r5, [r2, 0xC] - ldr r1, _080AC62C @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r1, 0x1C - adds r0, r1 - ldr r1, [r0] - ldr r0, _080AC630 @ =SpriteCallbackDummy - cmp r1, r0 - beq _080AC60E - bl _080AD8CA -_080AC60E: - lsls r0, r7, 2 - ldr r1, _080AC634 @ =gSharedMem + 0x19338 - adds r0, r1 - ldrb r1, [r0, 0x2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080AC622 - bl _080AD8CA -_080AC622: - movs r0, 0x5 - strh r0, [r2, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC62C: .4byte gSprites -_080AC630: .4byte SpriteCallbackDummy -_080AC634: .4byte gSharedMem + 0x19338 -_080AC638: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AC660 @ =gSharedMem + 0x19260 - adds r5, r0, r1 - ldrb r1, [r5, 0xC] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AC664 - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x21 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC660: .4byte gSharedMem + 0x19260 -_080AC664: - bl sub_80AF138 - ldr r0, _080AC690 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080AC694 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldrh r1, [r5, 0x6] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bhi _080AC6A0 - ldr r0, _080AC698 @ =gStringVar2 - adds r2, r1, 0 - movs r1, 0xD - muls r1, r2 - ldr r2, _080AC69C @ =gMoveNames - adds r1, r2 - bl StringCopy - b _080AC6B0 - .align 2, 0 -_080AC690: .4byte gStringVar1 -_080AC694: .4byte gContestMons + 0x2 -_080AC698: .4byte gStringVar2 -_080AC69C: .4byte gMoveNames -_080AC6A0: - ldr r0, _080AC6E0 @ =gStringVar2 - ldr r2, _080AC6E4 @ =gUnknown_083CC330 - ldrb r1, [r5, 0xA] - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - bl StringCopy -_080AC6B0: - ldr r4, _080AC6E8 @ =gStringVar4 - ldr r1, _080AC6EC @ =gUnknown_083CAFD7 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080AC6F0 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AC6F4 @ =gTasks - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x6 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC6E0: .4byte gStringVar2 -_080AC6E4: .4byte gUnknown_083CC330 -_080AC6E8: .4byte gStringVar4 -_080AC6EC: .4byte gUnknown_083CAFD7 -_080AC6F0: .4byte gMenuWindow -_080AC6F4: .4byte gTasks -_080AC6F8: - ldr r0, _080AC724 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AC708 - bl _080AD8CA -_080AC708: - ldr r0, _080AC728 @ =gSharedMem + 0x19204 - adds r0, 0x5A - movs r1, 0 - strb r1, [r0] - ldr r1, _080AC72C @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x7 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC724: .4byte gMenuWindow -_080AC728: .4byte gSharedMem + 0x19204 -_080AC72C: .4byte gTasks -_080AC730: - ldrb r1, [r6, 0x11] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r1, r6, 0 - adds r1, 0x5C - adds r0, r1 - ldrh r0, [r0, 0x6] - bl sub_80B2760 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldrb r0, [r6, 0x11] - bl sub_80B2790 - ldrb r0, [r6, 0x11] - bl sub_80B28F0 - adds r0, r4, 0 - bl sub_80B29B4 - adds r0, r4, 0 - bl ExecuteMoveAnim - ldr r1, _080AC778 @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x8 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC778: .4byte gTasks -_080AC77C: - ldr r0, _080AC7B8 @ =gAnimScriptCallback - ldr r0, [r0] - bl _call_via_r0 - ldr r0, _080AC7BC @ =gAnimScriptActive - ldrb r4, [r0] - cmp r4, 0 - beq _080AC790 - bl _080AD8CA -_080AC790: - adds r0, r7, 0 - bl sub_80B28CC - ldr r1, _080AC7C0 @ =gSharedMem + 0x19204 - adds r0, r1, 0 - adds r0, 0x5A - ldrb r0, [r0] - cmp r0, 0 - beq _080AC7C8 - ldr r0, _080AC7C4 @ =gTasks - mov r5, r8 - lsls r1, r5, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - strh r4, [r1, 0x1C] - movs r0, 0x9 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC7B8: .4byte gAnimScriptCallback -_080AC7BC: .4byte gAnimScriptActive -_080AC7C0: .4byte gSharedMem + 0x19204 -_080AC7C4: .4byte gTasks -_080AC7C8: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r1, 0x5C - adds r0, r1 - ldrb r1, [r0, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _080AC7E2 - adds r0, r7, 0 - bl sub_80B03A8 -_080AC7E2: - bl sub_80B20C4 - ldr r0, _080AC7F0 @ =gTasks - mov r2, r8 - lsls r1, r2, 2 - b _080AC8E2 - .align 2, 0 -_080AC7F0: .4byte gTasks -_080AC7F4: - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - mov r4, r12 - adds r2, r0, r4 - ldrh r0, [r2, 0x1C] - adds r1, r0, 0x1 - strh r1, [r2, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1E - bgt _080AC812 - bl _080AD8CA -_080AC812: - movs r0, 0 - strh r0, [r2, 0x1C] - movs r0, 0x7 - strh r0, [r2, 0x8] - bl _080AD8CA -_080AC81E: - mov r5, r8 - lsls r3, r5, 2 - adds r0, r3, r5 - lsls r0, 3 - mov r1, r12 - adds r4, r0, r1 - movs r0, 0 - strh r0, [r4, 0xA] - lsls r2, r7, 3 - subs r0, r2, r7 - lsls r0, 2 - ldr r1, _080AC858 @ =gSharedMem + 0x19260 - adds r6, r0, r1 - ldrb r0, [r6, 0x13] - mov r9, r3 - mov r10, r2 - adds r3, r1, 0 - cmp r0, 0xFF - beq _080AC85C - adds r1, r0, 0 - adds r0, r7, 0 - bl sub_80B146C - movs r0, 0xFF - strb r0, [r6, 0x13] - movs r0, 0x18 - strh r0, [r4, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC858: .4byte gSharedMem + 0x19260 -_080AC85C: - ldrb r0, [r6, 0x14] - cmp r0, 0xFF - beq _080AC8C4 - movs r6, 0 - cmp r6, r7 - beq _080AC86E - ldrb r0, [r3, 0x13] - cmp r0, 0xFF - bne _080AC886 -_080AC86E: - adds r6, 0x1 - cmp r6, 0x3 - bgt _080AC886 - cmp r6, r7 - beq _080AC86E - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - adds r0, r3 - ldrb r0, [r0, 0x13] - cmp r0, 0xFF - beq _080AC86E -_080AC886: - cmp r6, 0x4 - bne _080AC8B4 - mov r2, r10 - subs r4, r2, r7 - lsls r4, 2 - adds r4, r3 - ldrb r1, [r4, 0x14] - adds r0, r7, 0 - bl sub_80B146C - movs r0, 0xFF - strb r0, [r4, 0x14] - ldr r1, _080AC8B0 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x18 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC8B0: .4byte gTasks -_080AC8B4: - mov r0, r9 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x30 - strh r1, [r0, 0x8] - bl _080AD8CA -_080AC8C4: - movs r0, 0x30 - strh r0, [r4, 0x8] - bl _080AD8CA -_080AC8CC: - ldr r0, _080AC8F0 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AC8DC - bl _080AD8CA -_080AC8DC: - ldr r0, _080AC8F4 @ =gTasks - mov r3, r8 - lsls r1, r3, 2 -_080AC8E2: - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x17 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC8F0: .4byte gMenuWindow -_080AC8F4: .4byte gTasks -_080AC8F8: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AC914 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r0, [r0, 0x11] - movs r3, 0x3 - ands r3, r0 - cmp r3, 0x1 - bne _080AC918 - movs r0, 0x5 - bl sub_80B1710 - b _080AC934 - .align 2, 0 -_080AC914: .4byte gSharedMem + 0x19260 -_080AC918: - cmp r3, 0x2 - bne _080AC924 - movs r0, 0x6 - bl sub_80B1710 - b _080AC934 -_080AC924: - cmp r3, 0x3 - beq _080AC92E - mov r4, r8 - lsls r0, r4, 2 - b _080AC95E -_080AC92E: - movs r0, 0x7 - bl sub_80B1710 -_080AC934: - ldr r0, _080AC948 @ =gTasks - mov r5, r8 - lsls r1, r5, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x31 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC948: .4byte gTasks -_080AC94C: - ldrb r1, [r6, 0x6] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080AC95A - bl _080AD8CA -_080AC95A: - mov r1, r8 - lsls r0, r1, 2 -_080AC95E: - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x2F - strh r1, [r0, 0x8] - bl _080AD8CA -_080AC96C: - movs r0, 0x1 - bl sub_80B1FD0 - ldr r0, _080AC988 @ =gTasks - mov r2, r8 - lsls r1, r2, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0xC - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC988: .4byte gTasks -_080AC98C: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AC9B8 @ =gSharedMem + 0x19260 - adds r0, r1 - movs r3, 0x2 - ldrsh r1, [r0, r3] - movs r0, 0 - adds r2, r7, 0 - bl sub_80AFBA0 - ldr r1, _080AC9BC @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0xD - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AC9B8: .4byte gSharedMem + 0x19260 -_080AC9BC: .4byte gTasks -_080AC9C0: - ldrb r0, [r6, 0x11] - lsls r0, 2 - movs r5, 0x9A - lsls r5, 1 - adds r1, r6, r5 - adds r0, r1 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080AC9DA - bl _080AD8CA -_080AC9DA: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x23 - strh r1, [r0, 0x8] - bl _080AD8CA -_080AC9EC: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080ACA1C @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0x10] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0x10 - bne _080ACA06 - movs r0, 0x8 - bl sub_80B1710 -_080ACA06: - ldr r0, _080ACA20 @ =gTasks - mov r2, r8 - lsls r1, r2, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x24 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACA1C: .4byte gSharedMem + 0x19260 -_080ACA20: .4byte gTasks -_080ACA24: - ldrb r1, [r6, 0x6] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080ACA32 - bl _080AD8CA -_080ACA32: - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x25 - strh r1, [r0, 0x8] - bl _080AD8CA -_080ACA44: - adds r0, r7, 0 - movs r1, 0x1 - bl sub_80AEE54 - lsls r0, 24 - cmp r0, 0 - beq _080ACA70 - ldr r1, _080ACA6C @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - movs r1, 0x26 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACA6C: .4byte gTasks -_080ACA70: - ldr r0, _080ACA80 @ =gTasks - mov r5, r8 - lsls r1, r5, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - b _080ACAA6 - .align 2, 0 -_080ACA80: .4byte gTasks -_080ACA84: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - mov r2, r12 - adds r1, r0, r2 - ldrh r0, [r1, 0x1C] - adds r0, 0x1 - strh r0, [r1, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - bgt _080ACAA2 - bl _080AD8CA -_080ACAA2: - movs r0, 0 - strh r0, [r1, 0x1C] -_080ACAA6: - movs r0, 0x32 - strh r0, [r1, 0x8] - bl _080AD8CA -_080ACAAE: - adds r0, r7, 0 - bl sub_80AF038 - lsls r0, 24 - cmp r0, 0 - beq _080ACAC0 - movs r0, 0x63 - bl PlaySE -_080ACAC0: - ldr r0, _080ACAD4 @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x19 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACAD4: .4byte gTasks -_080ACAD8: - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0 - strh r1, [r0, 0xA] - movs r1, 0x1A - strh r1, [r0, 0x8] - bl _080AD8CA -_080ACAEE: - movs r2, 0 - movs r4, 0 - mov r5, r8 - lsls r1, r5, 2 - adds r0, r1, r5 - lsls r0, 3 - add r0, r12 - movs r3, 0xA - ldrsh r6, [r0, r3] - mov r9, r1 - cmp r6, 0x3 - bgt _080ACB58 - ldr r3, _080ACB24 @ =gUnknown_02038696 - ldr r1, _080ACB28 @ =gSharedMem + 0x19260 -_080ACB0A: - movs r4, 0 - movs r2, 0 - cmp r4, r7 - beq _080ACB2C - ldrb r0, [r3] - cmp r0, r6 - bne _080ACB2C - ldrb r0, [r1, 0x13] - cmp r0, 0xFF - beq _080ACB2C - movs r4, 0x1 - b _080ACB60 - .align 2, 0 -_080ACB24: .4byte gUnknown_02038696 -_080ACB28: .4byte gSharedMem + 0x19260 -_080ACB2C: - adds r2, 0x1 - cmp r2, 0x3 - bgt _080ACB4E - cmp r2, r7 - beq _080ACB2C - adds r0, r2, r3 - ldrb r0, [r0] - cmp r0, r6 - bne _080ACB2C - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x13] - cmp r0, 0xFF - beq _080ACB2C - movs r4, 0x1 -_080ACB4E: - cmp r4, 0 - bne _080ACB60 - adds r6, 0x1 - cmp r6, 0x3 - ble _080ACB0A -_080ACB58: - lsls r0, r4, 24 - asrs r1, r0, 24 - cmp r1, 0 - beq _080ACB98 -_080ACB60: - mov r5, r9 - add r5, r8 - lsls r5, 3 - add r5, r12 - ldr r0, _080ACB90 @ =gUnknown_02038696 - adds r0, r2, r0 - ldrb r0, [r0] - strh r0, [r5, 0xA] - lsls r0, r2, 24 - lsrs r0, 24 - lsls r4, r2, 3 - subs r4, r2 - lsls r4, 2 - ldr r1, _080ACB94 @ =gSharedMem + 0x19260 - adds r4, r1 - ldrb r1, [r4, 0x13] - bl sub_80B146C - movs r0, 0xFF - strb r0, [r4, 0x13] - movs r0, 0x1B - strh r0, [r5, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACB90: .4byte gUnknown_02038696 -_080ACB94: .4byte gSharedMem + 0x19260 -_080ACB98: - mov r0, r9 - add r0, r8 - lsls r0, 3 - add r0, r12 - strh r1, [r0, 0xA] - strh r1, [r0, 0x1C] - movs r1, 0x33 - strh r1, [r0, 0x8] - bl sub_80AF120 - bl _080AD8CA -_080ACBB0: - ldr r0, _080ACBD4 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080ACBC0 - bl _080AD8CA -_080ACBC0: - ldr r0, _080ACBD8 @ =gTasks - mov r4, r8 - lsls r1, r4, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x1C - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACBD4: .4byte gMenuWindow -_080ACBD8: .4byte gTasks -_080ACBDC: - movs r6, 0 - mov r5, r8 - lsls r0, r5, 2 - adds r1, r0, r5 - lsls r1, 3 - add r1, r12 - movs r3, 0xA - ldrsh r2, [r1, r3] - ldr r1, _080ACC38 @ =gUnknown_02038696 - mov r9, r0 - ldr r3, _080ACC3C @ =gSharedMem + 0x19260 - adds r5, r1, 0 - ldrb r4, [r5] - cmp r2, r4 - beq _080ACC08 - adds r1, r2, 0 - adds r2, r5, 0 -_080ACBFE: - adds r6, 0x1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r1, r0 - bne _080ACBFE -_080ACC08: - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - adds r0, r3 - ldrb r1, [r0, 0xE] - ldrh r0, [r0, 0x2] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - negs r1, r1 - lsls r2, r6, 24 - lsrs r2, 24 - bl sub_80AFBA0 - ldr r1, _080ACC40 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x1D - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACC38: .4byte gUnknown_02038696 -_080ACC3C: .4byte gSharedMem + 0x19260 -_080ACC40: .4byte gTasks -_080ACC44: - movs r6, 0 - mov r5, r8 - lsls r0, r5, 2 - adds r1, r0, r5 - lsls r1, 3 - add r1, r12 - movs r2, 0xA - ldrsh r3, [r1, r2] - ldr r1, _080ACC90 @ =gUnknown_02038696 - mov r9, r0 - ldr r2, _080ACC94 @ =gSharedMem + 0x19338 - adds r5, r1, 0 - ldrb r4, [r5] - cmp r3, r4 - beq _080ACC6C -_080ACC62: - adds r6, 0x1 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r3, r0 - bne _080ACC62 -_080ACC6C: - lsls r0, r6, 2 - adds r0, r2 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080ACC7E - bl _080AD8CA -_080ACC7E: - mov r0, r9 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x27 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACC90: .4byte gUnknown_02038696 -_080ACC94: .4byte gSharedMem + 0x19338 -_080ACC98: - movs r6, 0 - mov r5, r8 - lsls r0, r5, 2 - adds r1, r0, r5 - lsls r1, 3 - add r1, r12 - movs r3, 0xA - ldrsh r2, [r1, r3] - ldr r1, _080ACCE8 @ =gUnknown_02038696 - mov r9, r0 - adds r5, r1, 0 - ldrb r4, [r5] - cmp r2, r4 - beq _080ACCC2 - adds r1, r2, 0 - adds r2, r5, 0 -_080ACCB8: - adds r6, 0x1 - adds r0, r6, r2 - ldrb r0, [r0] - cmp r1, r0 - bne _080ACCB8 -_080ACCC2: - lsls r0, r6, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_80AEE54 - lsls r0, 24 - cmp r0, 0 - beq _080ACCF0 - ldr r1, _080ACCEC @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - movs r1, 0x28 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACCE8: .4byte gUnknown_02038696 -_080ACCEC: .4byte gTasks -_080ACCF0: - ldr r0, _080ACCFC @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - b _080ACD22 - .align 2, 0 -_080ACCFC: .4byte gTasks -_080ACD00: - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - mov r2, r12 - adds r1, r0, r2 - ldrh r0, [r1, 0x1C] - adds r0, 0x1 - strh r0, [r1, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - bgt _080ACD1E - bl _080AD8CA -_080ACD1E: - movs r0, 0 - strh r0, [r1, 0x1C] -_080ACD22: - movs r0, 0x1E - strh r0, [r1, 0x8] - bl _080AD8CA -_080ACD2A: - movs r6, 0 - ldr r2, _080ACD78 @ =gUnknown_02038696 - ldrb r3, [r2] - mov r4, r8 - lsls r1, r4, 2 - adds r0, r1, r4 - lsls r0, 3 - mov r5, r12 - adds r4, r0, r5 - movs r5, 0xA - ldrsh r0, [r4, r5] - mov r9, r1 - adds r5, r2, 0 - cmp r3, r0 - beq _080ACD5E - adds r3, r5, 0 - adds r2, r4, 0 -_080ACD4C: - adds r6, 0x1 - cmp r6, 0x3 - bgt _080ACD5E - adds r0, r6, r3 - ldrb r1, [r0] - movs r4, 0xA - ldrsh r0, [r2, r4] - cmp r1, r0 - bne _080ACD4C -_080ACD5E: - lsls r4, r6, 24 - lsrs r0, r4, 24 - bl sub_80AF038 - lsls r0, 24 - adds r5, r4, 0 - cmp r0, 0 - beq _080ACD7C - movs r0, 0x63 - bl PlaySE - b _080ACD82 - .align 2, 0 -_080ACD78: .4byte gUnknown_02038696 -_080ACD7C: - movs r0, 0x64 - bl PlaySE -_080ACD82: - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r1, _080ACDC0 @ =gSharedMem + 0x19260 - adds r4, r0, r1 - ldrb r1, [r4, 0x15] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080ACDA6 - lsrs r0, r5, 24 - bl sub_80B03A8 - ldrb r1, [r4, 0x15] - movs r0, 0x21 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x15] -_080ACDA6: - ldr r0, _080ACDC4 @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0xA] - adds r0, 0x1 - strh r0, [r1, 0xA] - movs r0, 0x1A - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACDC0: .4byte gSharedMem + 0x19260 -_080ACDC4: .4byte gTasks -_080ACDC8: - mov r5, r8 - lsls r2, r5, 2 - adds r0, r2, r5 - lsls r0, 3 - mov r1, r12 - adds r3, r0, r1 - ldrh r0, [r3, 0x1C] - adds r1, r0, 0x1 - strh r1, [r3, 0x1C] - lsls r0, 16 - asrs r0, 16 - mov r9, r2 - cmp r0, 0x9 - bgt _080ACDE8 - bl _080AD8CA -_080ACDE8: - movs r0, 0 - strh r0, [r3, 0x1C] - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080ACE48 @ =gSharedMem + 0x19260 - adds r2, r0, r1 - ldrb r1, [r2, 0xC] - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - bne _080ACE0A - ldrb r1, [r2, 0x11] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080ACE36 -_080ACE0A: - bl sub_80AF138 - ldr r0, _080ACE4C @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080ACE50 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r4, _080ACE54 @ =gStringVar4 - ldr r1, _080ACE58 @ =gUnknown_083CC103 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080ACE5C @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 -_080ACE36: - ldr r0, _080ACE60 @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x34 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACE48: .4byte gSharedMem + 0x19260 -_080ACE4C: .4byte gStringVar1 -_080ACE50: .4byte gContestMons + 0x2 -_080ACE54: .4byte gStringVar4 -_080ACE58: .4byte gUnknown_083CC103 -_080ACE5C: .4byte gMenuWindow -_080ACE60: .4byte gTasks -_080ACE64: - ldr r0, _080ACE9C @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080ACE74 - bl _080AD8CA -_080ACE74: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080ACEA0 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0x15] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080ACEA8 - ldr r0, _080ACEA4 @ =gTasks - mov r2, r8 - lsls r1, r2, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x11 - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACE9C: .4byte gMenuWindow -_080ACEA0: .4byte gSharedMem + 0x19260 -_080ACEA4: .4byte gTasks -_080ACEA8: - ldr r0, _080ACEBC @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0xE - strh r0, [r1, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACEBC: .4byte gTasks -_080ACEC0: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080ACEE4 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r4, [r0, 0x16] - lsls r4, 24 - lsrs r5, r4, 24 - cmp r5, 0 - beq _080ACF48 - bl sub_80AF138 - asrs r0, r4, 24 - cmp r0, 0x1 - bne _080ACEF0 - ldr r0, _080ACEE8 @ =gMenuWindow - ldr r1, _080ACEEC @ =gUnknown_083CBD79 - b _080ACEF8 - .align 2, 0 -_080ACEE4: .4byte gSharedMem + 0x19260 -_080ACEE8: .4byte gMenuWindow -_080ACEEC: .4byte gUnknown_083CBD79 -_080ACEF0: - cmp r0, 0x2 - bne _080ACF10 - ldr r0, _080ACF08 @ =gMenuWindow - ldr r1, _080ACF0C @ =gUnknown_083CBD9D -_080ACEF8: - movs r2, 0xC2 - lsls r2, 2 - movs r3, 0xF - str r3, [sp] - movs r3, 0x1 - bl sub_8002EB0 - b _080ACF22 - .align 2, 0 -_080ACF08: .4byte gMenuWindow -_080ACF0C: .4byte gUnknown_083CBD9D -_080ACF10: - ldr r0, _080ACF3C @ =gMenuWindow - ldr r1, _080ACF40 @ =gUnknown_083CBDC6 - movs r2, 0xC2 - lsls r2, 2 - movs r3, 0xF - str r3, [sp] - movs r3, 0x1 - bl sub_8002EB0 -_080ACF22: - movs r0, 0x3 - bl sub_80B1710 - ldr r1, _080ACF44 @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - b _080ACF88 - .align 2, 0 -_080ACF3C: .4byte gMenuWindow -_080ACF40: .4byte gUnknown_083CBDC6 -_080ACF44: .4byte gTasks -_080ACF48: - bl sub_80AF138 - ldr r0, _080ACF90 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080ACF94 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r4, _080ACF98 @ =gStringVar4 - ldr r1, _080ACF9C @ =gUnknown_083CBD52 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080ACFA0 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - movs r0, 0x2 - bl sub_80B1710 - ldr r1, _080ACFA4 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - strh r5, [r0, 0x1C] -_080ACF88: - movs r1, 0x2D - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACF90: .4byte gStringVar1 -_080ACF94: .4byte gContestMons + 0x2 -_080ACF98: .4byte gStringVar4 -_080ACF9C: .4byte gUnknown_083CBD52 -_080ACFA0: .4byte gMenuWindow -_080ACFA4: .4byte gTasks -_080ACFA8: - ldrb r1, [r6, 0x6] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080ACFB6 - bl _080AD8CA -_080ACFB6: - ldrb r0, [r6, 0x11] - bl sub_80B09B0 - ldr r1, _080ACFD0 @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0xF - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080ACFD0: .4byte gTasks -_080ACFD4: - ldr r0, _080AD034 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080ACFE4 - bl _080AD8CA -_080ACFE4: - ldr r1, _080AD038 @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r4, r0, r1 - ldrh r0, [r4, 0x1C] - adds r0, 0x1 - strh r0, [r4, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x32 - bgt _080AD002 - bl _080AD8CA -_080AD002: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AD03C @ =gSharedMem + 0x19260 - adds r6, r0, r1 - ldrb r1, [r6, 0x15] - movs r5, 0x10 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _080AD02C - movs r1, 0x2 - ldrsh r0, [r6, r1] - ldrb r1, [r6, 0x17] - adds r2, r7, 0 - bl sub_80AFBA0 - ldrh r0, [r6, 0x2] - ldrb r2, [r6, 0x17] - adds r0, r2 - strh r0, [r6, 0x2] -_080AD02C: - strh r5, [r4, 0x8] - bl _080AD8CA - .align 2, 0 -_080AD034: .4byte gMenuWindow -_080AD038: .4byte gTasks -_080AD03C: .4byte gSharedMem + 0x19260 -_080AD040: - lsls r0, r7, 2 - ldr r1, _080AD06C @ =gSharedMem + 0x19338 - adds r0, r1 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080AD058 - bl _080AD8CA -_080AD058: - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - strh r1, [r0, 0x1C] - movs r1, 0x11 - strh r1, [r0, 0x8] - bl _080AD8CA - .align 2, 0 -_080AD06C: .4byte gSharedMem + 0x19338 -_080AD070: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AD0CC @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0x15] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AD0E8 - bl sub_80AF138 - ldr r0, _080AD0D0 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080AD0D4 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r4, _080AD0D8 @ =gStringVar4 - ldr r1, _080AD0DC @ =gUnknown_083CC075 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080AD0E0 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r0, _080AD0E4 @ =gTasks - mov r5, r8 - lsls r4, r5, 2 - add r4, r8 - lsls r4, 3 - adds r4, r0 - movs r0, 0 - strh r0, [r4, 0x1C] - bl sub_80B1710 - movs r0, 0x2E - strh r0, [r4, 0x8] - bl _080AD8CA - .align 2, 0 -_080AD0CC: .4byte gSharedMem + 0x19260 -_080AD0D0: .4byte gStringVar1 -_080AD0D4: .4byte gContestMons + 0x2 -_080AD0D8: .4byte gStringVar4 -_080AD0DC: .4byte gUnknown_083CC075 -_080AD0E0: .4byte gMenuWindow -_080AD0E4: .4byte gTasks -_080AD0E8: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x29 - strh r1, [r0, 0x8] - bl _080AD8CA -_080AD0FA: - ldrb r1, [r6, 0x6] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080AD108 - bl _080AD8CA -_080AD108: - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x13 - strh r1, [r0, 0x8] - bl _080AD8CA -_080AD11A: - ldr r0, _080AD15C @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD12A - bl _080AD8CA -_080AD12A: - lsls r4, r7, 3 - subs r4, r7 - lsls r4, 2 - ldr r0, _080AD160 @ =gSharedMem + 0x19260 - adds r4, r0 - movs r3, 0x2 - ldrsh r0, [r4, r3] - ldrb r1, [r4, 0x18] - negs r1, r1 - adds r2, r7, 0 - bl sub_80AFBA0 - ldrb r1, [r4, 0x18] - ldrh r0, [r4, 0x2] - subs r0, r1 - strh r0, [r4, 0x2] - ldr r1, _080AD164 @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x12 - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD15C: .4byte gMenuWindow -_080AD160: .4byte gSharedMem + 0x19260 -_080AD164: .4byte gTasks -_080AD168: - bl sub_80B0D7C - lsls r0, r7, 2 - ldr r1, _080AD19C @ =gSharedMem + 0x19338 - adds r0, r1 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - beq _080AD182 - b _080AD8CA -_080AD182: - ldr r0, _080AD1A0 @ =gTasks - mov r5, r8 - lsls r4, r5, 2 - add r4, r8 - lsls r4, 3 - adds r4, r0 - strh r6, [r4, 0x1C] - bl sub_80AF138 - movs r0, 0x29 - strh r0, [r4, 0x8] - b _080AD8CA - .align 2, 0 -_080AD19C: .4byte gSharedMem + 0x19338 -_080AD1A0: .4byte gTasks -_080AD1A4: - ldr r2, _080AD1CC @ =gSharedMem + 0x19328 - ldrb r1, [r2, 0x1] - movs r0, 0x1 - ands r0, r1 - adds r1, r2, 0 - cmp r0, 0 - beq _080AD1D0 - ldr r0, [r1] - lsls r0, 20 - lsrs r0, 29 - cmp r7, r0 - beq _080AD1D0 - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - movs r1, 0x39 - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD1CC: .4byte gSharedMem + 0x19328 -_080AD1D0: - ldrb r4, [r1] - lsls r2, r7, 3 - subs r0, r2, r7 - lsls r0, 2 - subs r1, 0xC8 - adds r5, r0, r1 - ldrb r1, [r5, 0x11] - movs r0, 0x10 - ands r0, r1 - mov r10, r2 - cmp r0, 0 - beq _080AD204 - movs r4, 0x1 - ldr r0, _080AD1FC @ =gStringVar3 - ldrh r2, [r5, 0x6] - movs r1, 0xD - muls r1, r2 - ldr r2, _080AD200 @ =gMoveNames - adds r1, r2 - bl StringCopy - b _080AD21E - .align 2, 0 -_080AD1FC: .4byte gStringVar3 -_080AD200: .4byte gMoveNames -_080AD204: - ldr r0, _080AD270 @ =gStringVar3 - ldr r3, _080AD274 @ =gUnknown_083CC2D8 - ldr r2, _080AD278 @ =gContestMoves - ldrh r1, [r5, 0x6] - lsls r1, 3 - adds r1, r2 - ldrb r1, [r1, 0x1] - lsls r1, 29 - lsrs r1, 27 - adds r1, r3 - ldr r1, [r1] - bl StringCopy -_080AD21E: - lsls r0, r4, 24 - cmp r0, 0 - ble _080AD23A - mov r2, r10 - subs r0, r2, r7 - lsls r0, 2 - ldr r1, _080AD27C @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0x15] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AD23A - movs r4, 0 -_080AD23A: - bl sub_80AF138 - ldr r0, _080AD280 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080AD284 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r3, _080AD288 @ =gSharedMem + 0x19204 - ldrb r0, [r3, 0x13] - lsls r1, r4, 24 - asrs r2, r1, 24 - adds r0, r2, r0 - strb r0, [r3, 0x13] - lsls r0, 24 - adds r4, r1, 0 - cmp r0, 0 - bge _080AD262 - movs r0, 0 - strb r0, [r3, 0x13] -_080AD262: - cmp r2, 0 - bne _080AD290 - ldr r0, _080AD28C @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - b _080AD6EC - .align 2, 0 -_080AD270: .4byte gStringVar3 -_080AD274: .4byte gUnknown_083CC2D8 -_080AD278: .4byte gContestMoves -_080AD27C: .4byte gSharedMem + 0x19260 -_080AD280: .4byte gStringVar1 -_080AD284: .4byte gContestMons + 0x2 -_080AD288: .4byte gSharedMem + 0x19204 -_080AD28C: .4byte gTasks -_080AD290: - cmp r2, 0 - bge _080AD2A8 - ldr r0, _080AD2A0 @ =gStringVar4 - ldr r1, _080AD2A4 @ =gUnknown_083CC0BC - bl StringExpandPlaceholders - b _080AD2D0 - .align 2, 0 -_080AD2A0: .4byte gStringVar4 -_080AD2A4: .4byte gUnknown_083CC0BC -_080AD2A8: - cmp r2, 0 - ble _080AD2C8 - movs r0, 0x13 - ldrsb r0, [r3, r0] - cmp r0, 0x4 - bgt _080AD2C8 - ldr r0, _080AD2C0 @ =gStringVar4 - ldr r1, _080AD2C4 @ =gUnknown_083CC0A0 - bl StringExpandPlaceholders - b _080AD2D0 - .align 2, 0 -_080AD2C0: .4byte gStringVar4 -_080AD2C4: .4byte gUnknown_083CC0A0 -_080AD2C8: - ldr r0, _080AD300 @ =gStringVar4 - ldr r1, _080AD304 @ =gUnknown_083CC0E3 - bl StringExpandPlaceholders -_080AD2D0: - ldr r0, _080AD308 @ =gMenuWindow - ldr r1, _080AD300 @ =gStringVar4 - movs r2, 0xC2 - lsls r2, 2 - movs r3, 0xF - str r3, [sp] - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AD30C @ =gTasks - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - adds r1, r0, r1 - movs r0, 0 - strh r0, [r1, 0x1C] - strh r0, [r1, 0x1E] - cmp r4, 0 - bge _080AD310 - movs r0, 0x35 - strh r0, [r1, 0x8] - b _080AD8CA - .align 2, 0 -_080AD300: .4byte gStringVar4 -_080AD304: .4byte gUnknown_083CC0E3 -_080AD308: .4byte gMenuWindow -_080AD30C: .4byte gTasks -_080AD310: - movs r0, 0x36 - strh r0, [r1, 0x8] - b _080AD8CA -_080AD316: - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - mov r2, r12 - adds r4, r0, r2 - movs r3, 0x1C - ldrsh r2, [r4, r3] - cmp r2, 0x1 - beq _080AD354 - cmp r2, 0x1 - bgt _080AD334 - cmp r2, 0 - beq _080AD33E - b _080AD8CA -_080AD334: - cmp r2, 0x2 - beq _080AD37C - cmp r2, 0x3 - beq _080AD3B0 - b _080AD8CA -_080AD33E: - movs r0, 0x1 - negs r0, r0 - movs r1, 0x1 - bl sub_80B1EA8 - ldr r0, _080AD350 @ =0x00000187 - bl PlayFanfare - b _080AD3A8 - .align 2, 0 -_080AD350: .4byte 0x00000187 -_080AD354: - ldrb r0, [r6, 0x7] - ands r2, r0 - cmp r2, 0 - beq _080AD35E - b _080AD8CA -_080AD35E: - ldr r0, _080AD378 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD36C - b _080AD8CA -_080AD36C: - movs r0, 0x1 - negs r0, r0 - bl sub_80B1CBC - b _080AD3A8 - .align 2, 0 -_080AD378: .4byte gMenuWindow -_080AD37C: - ldrb r1, [r6, 0x6] - movs r0, 0x20 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080AD38C - b _080AD8CA -_080AD38C: - ldrh r0, [r4, 0x1E] - adds r1, r0, 0x1 - strh r1, [r4, 0x1E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - bgt _080AD39C - b _080AD8CA -_080AD39C: - strh r2, [r4, 0x1E] - movs r1, 0x1 - negs r1, r1 - adds r0, r1, 0 - bl sub_80B1EA8 -_080AD3A8: - ldrh r0, [r4, 0x1C] - adds r0, 0x1 - strh r0, [r4, 0x1C] - b _080AD8CA -_080AD3B0: - ldr r0, _080AD3CC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _080AD3C2 - b _080AD8CA -_080AD3C2: - strh r0, [r4, 0x1C] - strh r0, [r4, 0x1E] - movs r0, 0x2B - strh r0, [r4, 0x8] - b _080AD8CA - .align 2, 0 -_080AD3CC: .4byte gPaletteFade -_080AD3D0: - mov r4, r8 - lsls r1, r4, 2 - adds r0, r1, r4 - lsls r0, 3 - add r0, r12 - movs r5, 0x1C - ldrsh r0, [r0, r5] - mov r9, r1 - cmp r0, 0x4 - bls _080AD3E6 - b _080AD8CA -_080AD3E6: - lsls r0, 2 - ldr r1, _080AD3F0 @ =_080AD3F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AD3F0: .4byte _080AD3F4 - .align 2, 0 -_080AD3F4: - .4byte _080AD408 - .4byte _080AD420 - .4byte _080AD43E - .4byte _080AD4A0 - .4byte _080AD4EC -_080AD408: - ldr r0, _080AD41C @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD416 - b _080AD8CA -_080AD416: - movs r0, 0x1 - movs r1, 0x1 - b _080AD4C8 - .align 2, 0 -_080AD41C: .4byte gMenuWindow -_080AD420: - ldrb r1, [r6, 0x7] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AD42C - b _080AD8CA -_080AD42C: - bl sub_80B1DDC - movs r0, 0xDF - bl PlaySE - movs r0, 0x1 - bl sub_80B1CBC - b _080AD4CC -_080AD43E: - ldrb r1, [r6, 0x6] - movs r0, 0x20 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080AD44E - b _080AD8CA -_080AD44E: - mov r0, r9 - add r0, r8 - lsls r0, 3 - mov r1, r12 - adds r3, r0, r1 - ldrh r0, [r3, 0x1E] - adds r1, r0, 0x1 - strh r1, [r3, 0x1E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - bgt _080AD468 - b _080AD8CA -_080AD468: - strh r2, [r3, 0x1E] - lsls r4, r7, 3 - subs r4, r7 - lsls r4, 2 - adds r0, r6, 0 - adds r0, 0x5C - adds r4, r0 - movs r2, 0x2 - ldrsh r0, [r4, r2] - movs r1, 0x92 - lsls r1, 1 - adds r5, r6, r1 - movs r1, 0x2 - ldrsb r1, [r5, r1] - adds r2, r7, 0 - str r3, [sp, 0x4] - bl sub_80AFBA0 - movs r0, 0x2 - ldrsb r0, [r5, r0] - ldrh r2, [r4, 0x2] - adds r0, r2 - strh r0, [r4, 0x2] - ldr r3, [sp, 0x4] - ldrh r0, [r3, 0x1C] - adds r0, 0x1 - strh r0, [r3, 0x1C] - b _080AD8CA -_080AD4A0: - lsls r0, r7, 2 - ldr r2, _080AD4E0 @ =gSharedMem + 0x19338 - adds r0, r2 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080AD4B2 - b _080AD8CA -_080AD4B2: - ldr r3, _080AD4E4 @ =0xfffffecc - adds r0, r2, r3 - ldrb r1, [r0, 0x6] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080AD4C2 - b _080AD8CA -_080AD4C2: - movs r1, 0x1 - negs r1, r1 - movs r0, 0x1 -_080AD4C8: - bl sub_80B1EA8 -_080AD4CC: - ldr r0, _080AD4E8 @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0x1C] - adds r0, 0x1 - strh r0, [r1, 0x1C] - b _080AD8CA - .align 2, 0 -_080AD4E0: .4byte gSharedMem + 0x19338 -_080AD4E4: .4byte 0xfffffecc -_080AD4E8: .4byte gTasks -_080AD4EC: - ldr r0, _080AD510 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080AD4FE - b _080AD8CA -_080AD4FE: - mov r0, r9 - add r0, r8 - lsls r0, 3 - add r0, r12 - strh r1, [r0, 0x1C] - strh r1, [r0, 0x1E] - movs r1, 0x2B - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD510: .4byte gPaletteFade -_080AD514: - lsls r0, r7, 2 - ldr r1, _080AD534 @ =gSharedMem + 0x19338 - adds r0, r1 - ldrb r1, [r0, 0x2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080AD526 - b _080AD8CA -_080AD526: - bl sub_80AF138 - ldr r0, _080AD538 @ =gTasks - mov r4, r8 - lsls r1, r4, 2 - b _080AD6EC - .align 2, 0 -_080AD534: .4byte gSharedMem + 0x19338 -_080AD538: .4byte gTasks -_080AD53C: - bl sub_80AF138 - ldr r0, _080AD5A8 @ =gStringVar3 - ldr r4, _080AD5AC @ =gSharedMem + 0x19328 - ldr r1, [r4] - lsls r1, 20 - lsrs r1, 29 - lsls r1, 6 - ldr r5, _080AD5B0 @ =gContestMons + 0x2 - adds r1, r5 - bl StringCopy - ldr r0, _080AD5B4 @ =gStringVar1 - lsls r1, r7, 6 - adds r1, r5 - bl StringCopy - ldr r0, _080AD5B8 @ =gStringVar2 - lsls r1, r7, 3 - subs r1, r7 - lsls r1, 2 - subs r4, 0xC8 - adds r1, r4 - ldrh r2, [r1, 0x6] - movs r1, 0xD - muls r1, r2 - ldr r2, _080AD5BC @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _080AD5C0 @ =gStringVar4 - ldr r1, _080AD5C4 @ =gUnknown_083CC14A - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080AD5C8 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AD5CC @ =gTasks - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x3A - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD5A8: .4byte gStringVar3 -_080AD5AC: .4byte gSharedMem + 0x19328 -_080AD5B0: .4byte gContestMons + 0x2 -_080AD5B4: .4byte gStringVar1 -_080AD5B8: .4byte gStringVar2 -_080AD5BC: .4byte gMoveNames -_080AD5C0: .4byte gStringVar4 -_080AD5C4: .4byte gUnknown_083CC14A -_080AD5C8: .4byte gMenuWindow -_080AD5CC: .4byte gTasks -_080AD5D0: - ldr r5, _080AD614 @ =gMenuWindow - adds r0, r5, 0 - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD5E0 - b _080AD8CA -_080AD5E0: - bl sub_80AF138 - ldr r4, _080AD618 @ =gStringVar4 - ldr r1, _080AD61C @ =gUnknown_083CC16E - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r2, 0xC2 - lsls r2, 2 - movs r0, 0xF - str r0, [sp] - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AD620 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x3B - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD614: .4byte gMenuWindow -_080AD618: .4byte gStringVar4 -_080AD61C: .4byte gUnknown_083CC16E -_080AD620: .4byte gTasks -_080AD624: - ldr r0, _080AD640 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD632 - b _080AD8CA -_080AD632: - bl sub_80AF138 - ldr r0, _080AD644 @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - b _080AD6EC - .align 2, 0 -_080AD640: .4byte gMenuWindow -_080AD644: .4byte gTasks -_080AD648: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, _080AD6B4 @ =gSharedMem + 0x19260 - adds r4, r0, r1 - ldrb r1, [r4, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080AD664 - movs r0, 0x11 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x15] -_080AD664: - adds r0, r7, 0 - bl sub_80B09B0 - ldr r0, _080AD6B8 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080AD6BC @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r0, _080AD6C0 @ =gStringVar2 - ldrh r2, [r4, 0x6] - movs r1, 0xD - muls r1, r2 - ldr r2, _080AD6C4 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _080AD6C8 @ =gStringVar4 - ldr r1, _080AD6CC @ =gUnknown_083CBF60 - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080AD6D0 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AD6D4 @ =gTasks - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x22 - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD6B4: .4byte gSharedMem + 0x19260 -_080AD6B8: .4byte gStringVar1 -_080AD6BC: .4byte gContestMons + 0x2 -_080AD6C0: .4byte gStringVar2 -_080AD6C4: .4byte gMoveNames -_080AD6C8: .4byte gStringVar4 -_080AD6CC: .4byte gUnknown_083CBF60 -_080AD6D0: .4byte gMenuWindow -_080AD6D4: .4byte gTasks -_080AD6D8: - ldr r0, _080AD6F8 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - bne _080AD6E6 - b _080AD8CA -_080AD6E6: - ldr r0, _080AD6FC @ =gTasks - mov r5, r8 - lsls r1, r5, 2 -_080AD6EC: - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x37 - strh r0, [r1, 0x8] - b _080AD8CA - .align 2, 0 -_080AD6F8: .4byte gMenuWindow -_080AD6FC: .4byte gTasks -_080AD700: - bl sub_80B1BDC - ldr r0, _080AD718 @ =gTasks - mov r2, r8 - lsls r1, r2, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x38 - strh r0, [r1, 0x8] - b _080AD8CA - .align 2, 0 -_080AD718: .4byte gTasks -_080AD71C: - ldrb r1, [r6, 0x6] - movs r0, 0x40 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _080AD72C - b _080AD8CA -_080AD72C: - movs r0, 0x13 - ldrsb r0, [r6, r0] - cmp r0, 0x4 - ble _080AD73A - strb r1, [r6, 0x13] - bl sub_80B1928 -_080AD73A: - ldr r0, _080AD74C @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0xA - strh r0, [r1, 0x8] - b _080AD8CA - .align 2, 0 -_080AD74C: .4byte gTasks -_080AD750: - mov r4, r8 - lsls r2, r4, 2 - add r2, r8 - lsls r2, 3 - add r2, r12 - ldrb r5, [r2, 0xC] - ldr r1, _080AD774 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r1, 0x1C - adds r0, r1 - ldr r1, _080AD778 @ =sub_80AD92C - str r1, [r0] - movs r0, 0xB - strh r0, [r2, 0x8] - b _080AD8CA - .align 2, 0 -_080AD774: .4byte gSprites -_080AD778: .4byte sub_80AD92C -_080AD77C: - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - mov r1, r12 - adds r4, r0, r1 - ldrb r5, [r4, 0xC] - ldr r1, _080AD7B4 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r6, r0, r1 - adds r0, r6, 0 - adds r0, 0x3E - ldrb r0, [r0] - lsls r0, 29 - cmp r0, 0 - blt _080AD7A2 - b _080AD8CA -_080AD7A2: - adds r0, r6, 0 - bl FreeSpriteOamMatrix - adds r0, r6, 0 - bl DestroySprite - movs r0, 0x14 - strh r0, [r4, 0x8] - b _080AD8CA - .align 2, 0 -_080AD7B4: .4byte gSprites -_080AD7B8: - movs r6, 0 - mov r2, r8 - lsls r2, 2 - mov r9, r2 -_080AD7C0: - lsls r0, r6, 24 - lsrs r0, 24 - movs r1, 0x1 - bl sub_80B0CDC - adds r6, 0x1 - cmp r6, 0x3 - ble _080AD7C0 - ldr r1, _080AD7E4 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x1C] - movs r1, 0x15 - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD7E4: .4byte gTasks -_080AD7E8: - bl sub_80AF138 - ldr r0, _080AD828 @ =gStringVar1 - lsls r1, r7, 6 - ldr r2, _080AD82C @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r4, _080AD830 @ =gStringVar4 - ldr r1, _080AD834 @ =gUnknown_083CB00D - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080AD838 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080AD83C @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x20 - strh r1, [r0, 0x8] - b _080AD8CA - .align 2, 0 -_080AD828: .4byte gStringVar1 -_080AD82C: .4byte gContestMons + 0x2 -_080AD830: .4byte gStringVar4 -_080AD834: .4byte gUnknown_083CB00D -_080AD838: .4byte gMenuWindow -_080AD83C: .4byte gTasks -_080AD840: - ldr r0, _080AD860 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - cmp r0, 0 - beq _080AD8CA - ldr r0, _080AD864 @ =gTasks - mov r4, r8 - lsls r1, r4, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0x15 - strh r0, [r1, 0x8] - b _080AD8CA - .align 2, 0 -_080AD860: .4byte gMenuWindow -_080AD864: .4byte gTasks -_080AD868: - mov r5, r8 - lsls r0, r5, 2 - add r0, r8 - lsls r0, 3 - mov r2, r12 - adds r1, r0, r2 - ldrh r0, [r1, 0x1C] - adds r0, 0x1 - strh r0, [r1, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - ble _080AD8CA - movs r0, 0 - strh r0, [r1, 0x1C] - movs r0, 0x16 - strh r0, [r1, 0x8] - b _080AD8CA -_080AD88C: - ldrb r0, [r6, 0x10] - adds r0, 0x1 - movs r1, 0 - strb r0, [r6, 0x10] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _080AD8B8 - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - strh r1, [r0, 0x8] - strh r1, [r0, 0xA] - strh r1, [r0, 0xC] - ldr r1, _080AD8B4 @ =sub_80AD960 - str r1, [r0] - b _080AD8C4 - .align 2, 0 -_080AD8B4: .4byte sub_80AD960 -_080AD8B8: - mov r4, r8 - lsls r0, r4, 2 - add r0, r8 - lsls r0, 3 - add r0, r12 - strh r1, [r0, 0x8] -_080AD8C4: - movs r0, 0 - bl nullsub_18 -_080AD8CA: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80AC2CC - - thumb_func_start sub_80AD8DC -sub_80AD8DC: @ 80AD8DC - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _080AD8F8 @ =gSharedMem + 0x19204 - ldrb r2, [r3, 0x7] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r3, 0x7] - bl DestroyTask - pop {r0} - bx r0 - .align 2, 0 -_080AD8F8: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80AD8DC - - thumb_func_start sub_80AD8FC -sub_80AD8FC: @ 80AD8FC - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x24] - movs r3, 0x24 - ldrsh r2, [r1, r3] - cmp r2, 0 - beq _080AD910 - subs r0, 0x2 - strh r0, [r1, 0x24] - b _080AD924 -_080AD910: - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - bne _080AD924 - strh r2, [r1, 0x2E] - ldr r0, _080AD928 @ =SpriteCallbackDummy - str r0, [r1, 0x1C] -_080AD924: - pop {r0} - bx r0 - .align 2, 0 -_080AD928: .4byte SpriteCallbackDummy - thumb_func_end sub_80AD8FC - - thumb_func_start sub_80AD92C -sub_80AD92C: @ 80AD92C - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x24] - subs r0, 0x6 - strh r0, [r2, 0x24] - movs r1, 0x20 - ldrsh r0, [r2, r1] - movs r3, 0x24 - ldrsh r1, [r2, r3] - adds r0, r1 - movs r1, 0x20 - negs r1, r1 - cmp r0, r1 - bge _080AD956 - ldr r0, _080AD95C @ =SpriteCallbackDummy - str r0, [r2, 0x1C] - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_080AD956: - pop {r0} - bx r0 - .align 2, 0 -_080AD95C: .4byte SpriteCallbackDummy - thumb_func_end sub_80AD92C - - thumb_func_start sub_80AD960 -sub_80AD960: @ 80AD960 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AD984 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r5, r1, r2 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080AD9F2 - cmp r0, 0x1 - bgt _080AD988 - cmp r0, 0 - beq _080AD98E - b _080ADA10 - .align 2, 0 -_080AD984: .4byte gTasks -_080AD988: - cmp r0, 0x2 - beq _080ADA08 - b _080ADA10 -_080AD98E: - ldr r0, _080AD9D8 @ =gIsLinkContest - ldrb r1, [r0] - movs r6, 0x1 - adds r0, r6, 0 - ands r0, r1 - cmp r0, 0 - beq _080AD9E8 - ldr r2, _080AD9DC @ =gSharedMem + 0x19204 - ldrb r0, [r2, 0x7] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x7] - bl sub_80AE074 - lsls r0, 24 - cmp r0, 0 - beq _080AD9B8 - bl sub_80AF2FC - bl sub_80AF3C0 -_080AD9B8: - ldr r4, _080AD9E0 @ =sub_80C8C80 - adds r0, r4, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080AD9E4 @ =sub_80AD8DC - adds r1, r4, 0 - bl SetTaskFuncWithFollowupFunc - bl sub_80AF860 - strh r6, [r5, 0x8] - b _080ADA10 - .align 2, 0 -_080AD9D8: .4byte gIsLinkContest -_080AD9DC: .4byte gSharedMem + 0x19204 -_080AD9E0: .4byte sub_80C8C80 -_080AD9E4: .4byte sub_80AD8DC -_080AD9E8: - bl sub_80AF2FC - bl sub_80AF3C0 - b _080AD9FE -_080AD9F2: - ldr r0, _080ADA04 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x7] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080ADA10 -_080AD9FE: - movs r0, 0x2 - strh r0, [r5, 0x8] - b _080ADA10 - .align 2, 0 -_080ADA04: .4byte gSharedMem + 0x19204 -_080ADA08: - movs r0, 0 - strh r0, [r5, 0x8] - ldr r0, _080ADA18 @ =sub_80ADA1C - str r0, [r5] -_080ADA10: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ADA18: .4byte sub_80ADA1C - thumb_func_end sub_80AD960 - - thumb_func_start sub_80ADA1C -sub_80ADA1C: @ 80ADA1C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - bl sub_80B1FD0 - ldr r1, _080ADA44 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] - strh r1, [r0, 0xA] - ldr r1, _080ADA48 @ =sub_80ADA4C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADA44: .4byte gTasks -_080ADA48: .4byte sub_80ADA4C - thumb_func_end sub_80ADA1C - - thumb_func_start sub_80ADA4C -sub_80ADA4C: @ 80ADA4C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADA70 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - movs r0, 0x8 - ldrsh r5, [r4, r0] - cmp r5, 0x1 - beq _080ADA92 - cmp r5, 0x1 - bgt _080ADA74 - cmp r5, 0 - beq _080ADA7A - b _080ADACE - .align 2, 0 -_080ADA70: .4byte gTasks -_080ADA74: - cmp r5, 0x2 - beq _080ADAC0 - b _080ADACE -_080ADA7A: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _080ADACE - movs r0, 0x2 - bl sub_80B25E4 - strh r5, [r4, 0xA] - b _080ADAB2 -_080ADA92: - ldr r0, _080ADABC @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x7] - movs r0, 0x2 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _080ADACE - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _080ADACE - strh r1, [r4, 0xA] -_080ADAB2: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080ADACE - .align 2, 0 -_080ADABC: .4byte gSharedMem + 0x19204 -_080ADAC0: - bl sub_80AFF10 - movs r0, 0 - strh r0, [r4, 0x8] - strh r0, [r4, 0xA] - ldr r0, _080ADAD4 @ =sub_80ADAD8 - str r0, [r4] -_080ADACE: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ADAD4: .4byte sub_80ADAD8 - thumb_func_end sub_80ADA4C - - thumb_func_start sub_80ADAD8 -sub_80ADAD8: @ 80ADAD8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_80AFF28 - lsls r0, 24 - cmp r0, 0 - beq _080ADAF6 - ldr r0, _080ADAFC @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ADB00 @ =sub_80ADB04 - str r0, [r1] -_080ADAF6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADAFC: .4byte gTasks -_080ADB00: .4byte sub_80ADB04 - thumb_func_end sub_80ADAD8 - - thumb_func_start sub_80ADB04 -sub_80ADB04: @ 80ADB04 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADB30 @ =gSharedMem + 0x18204 - ldr r3, _080ADB34 @ =gPlttBufferUnfaded - ldr r1, _080ADB38 @ =0x040000d4 - str r2, [r1] - str r3, [r1, 0x4] - ldr r2, _080ADB3C @ =0x84000100 - str r2, [r1, 0x8] - ldr r1, [r1, 0x8] - ldr r2, _080ADB40 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x8] - movs r0, 0x2 - strh r0, [r1, 0xA] - ldr r0, _080ADB44 @ =sub_80ADB48 - str r0, [r1] - bx lr - .align 2, 0 -_080ADB30: .4byte gSharedMem + 0x18204 -_080ADB34: .4byte gPlttBufferUnfaded -_080ADB38: .4byte 0x040000d4 -_080ADB3C: .4byte 0x84000100 -_080ADB40: .4byte gTasks -_080ADB44: .4byte sub_80ADB48 - thumb_func_end sub_80ADB04 - - thumb_func_start sub_80ADB48 -sub_80ADB48: @ 80ADB48 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADB80 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _080ADB7A - movs r0, 0 - strh r0, [r1, 0x8] - ldrh r0, [r1, 0xA] - subs r0, 0x1 - strh r0, [r1, 0xA] - lsls r0, 16 - cmp r0, 0 - bne _080ADB7A - ldr r0, _080ADB84 @ =sub_80ADB88 - str r0, [r1] -_080ADB7A: - pop {r0} - bx r0 - .align 2, 0 -_080ADB80: .4byte gTasks -_080ADB84: .4byte sub_80ADB88 - thumb_func_end sub_80ADB48 - - thumb_func_start sub_80ADB88 -sub_80ADB88: @ 80ADB88 - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _080ADBEC @ =gContestPlayerMonIndex - ldrb r1, [r6] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _080ADBF0 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r4, [r0, 0x1A] - bl sub_80AF138 - ldr r0, _080ADBF4 @ =gStringVar1 - ldrb r1, [r6] - lsls r1, 6 - ldr r2, _080ADBF8 @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r6, _080ADBFC @ =gStringVar4 - ldr r0, _080ADC00 @ =gUnknown_083CB2F0 - lsls r4, 2 - adds r4, r0 - ldr r1, [r4] - adds r0, r6, 0 - bl StringExpandPlaceholders - ldr r0, _080ADC04 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r6, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080ADC08 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ADC0C @ =sub_80ADC10 - str r1, [r0] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ADBEC: .4byte gContestPlayerMonIndex -_080ADBF0: .4byte gSharedMem + 0x19260 -_080ADBF4: .4byte gStringVar1 -_080ADBF8: .4byte gContestMons + 0x2 -_080ADBFC: .4byte gStringVar4 -_080ADC00: .4byte gUnknown_083CB2F0 -_080ADC04: .4byte gMenuWindow -_080ADC08: .4byte gTasks -_080ADC0C: .4byte sub_80ADC10 - thumb_func_end sub_80ADB88 - - thumb_func_start sub_80ADC10 -sub_80ADC10: @ 80ADC10 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080ADC40 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080ADC3A - ldr r1, _080ADC44 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] - ldr r1, _080ADC48 @ =sub_80ADC4C - str r1, [r0] - bl sub_80B0D7C -_080ADC3A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADC40: .4byte gMenuWindow -_080ADC44: .4byte gTasks -_080ADC48: .4byte sub_80ADC4C - thumb_func_end sub_80ADC10 - - thumb_func_start sub_80ADC4C -sub_80ADC4C: @ 80ADC4C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADC7C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x8] - adds r1, r0, 0x1 - strh r1, [r4, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - ble _080ADC76 - movs r0, 0 - strh r0, [r4, 0x8] - bl sub_80AFF10 - ldr r0, _080ADC80 @ =sub_80ADC84 - str r0, [r4] -_080ADC76: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADC7C: .4byte gTasks -_080ADC80: .4byte sub_80ADC84 - thumb_func_end sub_80ADC4C - - thumb_func_start sub_80ADC84 -sub_80ADC84: @ 80ADC84 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_80AFF28 - lsls r0, 24 - cmp r0, 0 - beq _080ADCA6 - ldr r1, _080ADCAC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] - ldr r1, _080ADCB0 @ =sub_80ADCB4 - str r1, [r0] -_080ADCA6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADCAC: .4byte gTasks -_080ADCB0: .4byte sub_80ADCB4 - thumb_func_end sub_80ADC84 - - thumb_func_start sub_80ADCB4 -sub_80ADCB4: @ 80ADCB4 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80B2184 - ldr r1, _080ADCD4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ADCD8 @ =sub_80B237C - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADCD4: .4byte gTasks -_080ADCD8: .4byte sub_80B237C - thumb_func_end sub_80ADCB4 - - thumb_func_start sub_80ADCDC -sub_80ADCDC: @ 80ADCDC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80B2280 - ldr r1, _080ADCFC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ADD00 @ =sub_80ADD04 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADCFC: .4byte gTasks -_080ADD00: .4byte sub_80ADD04 - thumb_func_end sub_80ADCDC - - thumb_func_start sub_80ADD04 -sub_80ADD04: @ 80ADD04 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, _080ADD40 @ =REG_BG0CNT - ldrb r2, [r3] - movs r1, 0x4 - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r3] - ldr r2, _080ADD44 @ =REG_BG2CNT - ldrb r0, [r2] - ands r1, r0 - strb r1, [r2] - ldr r1, _080ADD48 @ =gSharedMem + 0x19204 - ldrb r0, [r1, 0x1] - adds r0, 0x1 - strb r0, [r1, 0x1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x5 - bne _080ADD54 - ldr r0, _080ADD4C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ADD50 @ =sub_80ADDA4 - b _080ADD64 - .align 2, 0 -_080ADD40: .4byte REG_BG0CNT -_080ADD44: .4byte REG_BG2CNT -_080ADD48: .4byte gSharedMem + 0x19204 -_080ADD4C: .4byte gTasks -_080ADD50: .4byte sub_80ADDA4 -_080ADD54: - bl sub_80B1B14 - ldr r0, _080ADD6C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ADD70 @ =sub_80ADD74 -_080ADD64: - str r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADD6C: .4byte gTasks -_080ADD70: .4byte sub_80ADD74 - thumb_func_end sub_80ADD04 - - thumb_func_start sub_80ADD74 -sub_80ADD74: @ 80ADD74 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _080ADD98 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x6] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080ADD94 - ldr r0, _080ADD9C @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ADDA0 @ =sub_80ABB70 - str r0, [r1] -_080ADD94: - pop {r0} - bx r0 - .align 2, 0 -_080ADD98: .4byte gSharedMem + 0x19204 -_080ADD9C: .4byte gTasks -_080ADDA0: .4byte sub_80ABB70 - thumb_func_end sub_80ADD74 - - thumb_func_start sub_80ADDA4 -sub_80ADDA4: @ 80ADDA4 - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _080ADE24 @ =gUnknown_030042A0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080ADE28 @ =gUnknown_03004280 - strh r1, [r0] - ldr r3, _080ADE2C @ =gSharedMem + 0x19260 - ldr r2, _080ADE30 @ =gUnknown_02038680 - movs r1, 0x3 -_080ADDBC: - ldrh r0, [r3, 0x4] - strh r0, [r2] - adds r3, 0x1C - adds r2, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _080ADDBC - movs r5, 0 - bl sub_80AF668 - bl sub_80AF138 - ldr r0, _080ADE34 @ =gContestPlayerMonIndex - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _080ADE2C @ =gSharedMem + 0x19260 - adds r0, r1 - ldrh r0, [r0, 0x8] - bl sub_80BE23C - ldr r1, _080ADE38 @ =gUnknown_03005D28 - ldr r0, _080ADE3C @ =gRngValue - ldr r0, [r0] - str r0, [r1] - ldr r4, _080ADE40 @ =gStringVar4 - ldr r1, _080ADE44 @ =gUnknown_083CB02C - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r0, _080ADE48 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - ldr r1, _080ADE4C @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - strh r5, [r0, 0xC] - ldr r1, _080ADE50 @ =sub_80ADE54 - str r1, [r0] - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080ADE24: .4byte gUnknown_030042A0 -_080ADE28: .4byte gUnknown_03004280 -_080ADE2C: .4byte gSharedMem + 0x19260 -_080ADE30: .4byte gUnknown_02038680 -_080ADE34: .4byte gContestPlayerMonIndex -_080ADE38: .4byte gUnknown_03005D28 -_080ADE3C: .4byte gRngValue -_080ADE40: .4byte gStringVar4 -_080ADE44: .4byte gUnknown_083CB02C -_080ADE48: .4byte gMenuWindow -_080ADE4C: .4byte gTasks -_080ADE50: .4byte sub_80ADE54 - thumb_func_end sub_80ADDA4 - - thumb_func_start sub_80ADE54 -sub_80ADE54: @ 80ADE54 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080ADE98 @ =gMenuWindow - bl sub_80037A0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080ADE92 - bl sub_80B2184 - ldr r1, _080ADE9C @ =gUnknown_030042C0 - movs r0, 0 - strh r0, [r1] - ldr r1, _080ADEA0 @ =gUnknown_030041B4 - movs r0, 0xA0 - strh r0, [r1] - movs r0, 0x62 - movs r1, 0 - bl PlaySE12WithPanning - ldr r1, _080ADEA4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x8] - ldr r1, _080ADEA8 @ =sub_80ADEAC - str r1, [r0] -_080ADE92: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADE98: .4byte gMenuWindow -_080ADE9C: .4byte gUnknown_030042C0 -_080ADEA0: .4byte gUnknown_030041B4 -_080ADEA4: .4byte gTasks -_080ADEA8: .4byte sub_80ADEAC - thumb_func_end sub_80ADE54 - - thumb_func_start sub_80ADEAC -sub_80ADEAC: @ 80ADEAC - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, _080ADEE0 @ =gUnknown_030041B4 - ldrh r0, [r1] - subs r0, 0x7 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bge _080ADEC4 - movs r0, 0 - strh r0, [r1] -_080ADEC4: - ldrh r2, [r1] - cmp r2, 0 - bne _080ADEDA - ldr r0, _080ADEE4 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - ldr r0, _080ADEE8 @ =sub_80ADEEC - str r0, [r1] - strh r2, [r1, 0x8] -_080ADEDA: - pop {r0} - bx r0 - .align 2, 0 -_080ADEE0: .4byte gUnknown_030041B4 -_080ADEE4: .4byte gTasks -_080ADEE8: .4byte sub_80ADEEC - thumb_func_end sub_80ADEAC - - thumb_func_start sub_80ADEEC -sub_80ADEEC: @ 80ADEEC - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADF20 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r0, [r4, 0x8] - adds r1, r0, 0x1 - strh r1, [r4, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x31 - ble _080ADF40 - movs r0, 0 - strh r0, [r4, 0x8] - ldr r0, _080ADF24 @ =gIsLinkContest - ldrb r0, [r0] - movs r1, 0x1 - ands r1, r0 - cmp r1, 0 - beq _080ADF2C - ldr r0, _080ADF28 @ =sub_80ADF4C - b _080ADF3E - .align 2, 0 -_080ADF20: .4byte gTasks -_080ADF24: .4byte gIsLinkContest -_080ADF28: .4byte sub_80ADF4C -_080ADF2C: - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r0, _080ADF48 @ =sub_80ADFD8 -_080ADF3E: - str r0, [r4] -_080ADF40: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ADF48: .4byte sub_80ADFD8 - thumb_func_end sub_80ADEEC - - thumb_func_start sub_80ADF4C -sub_80ADF4C: @ 80ADF4C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _080ADF88 @ =sub_80C8AD0 - adds r0, r5, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080ADF8C @ =sub_80ADF98 - adds r1, r5, 0 - bl SetTaskFuncWithFollowupFunc - ldr r1, _080ADF90 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080ADF94 @ =nullsub_89 - str r1, [r0] - bl sub_80AF860 - movs r0, 0 - bl sub_80AFFE0 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080ADF88: .4byte sub_80C8AD0 -_080ADF8C: .4byte sub_80ADF98 -_080ADF90: .4byte gTasks -_080ADF94: .4byte nullsub_89 - thumb_func_end sub_80ADF4C - - thumb_func_start sub_80ADF98 -sub_80ADF98: @ 80ADF98 - push {lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - bl DestroyTask - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r2, _080ADFCC @ =gTasks - ldr r0, _080ADFD0 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x8] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, _080ADFD4 @ =sub_80ADFD8 - str r1, [r0] - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080ADFCC: .4byte gTasks -_080ADFD0: .4byte gSharedMem + 0x19204 -_080ADFD4: .4byte sub_80ADFD8 - thumb_func_end sub_80ADF98 - - thumb_func_start sub_80ADFD8 -sub_80ADFD8: @ 80ADFD8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, _080AE000 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ADFFC - adds r0, r2, 0 - bl DestroyTask - ldr r0, _080AE004 @ =gFieldCallback - ldr r1, _080AE008 @ =sub_80AE010 - str r1, [r0] - ldr r0, _080AE00C @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 -_080ADFFC: - pop {r0} - bx r0 - .align 2, 0 -_080AE000: .4byte gPaletteFade -_080AE004: .4byte gFieldCallback -_080AE008: .4byte sub_80AE010 -_080AE00C: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_80ADFD8 - - thumb_func_start sub_80AE010 -sub_80AE010: @ 80AE010 - push {lr} - bl ScriptContext2_Disable - bl EnableBothScriptContexts - pop {r0} - bx r0 - thumb_func_end sub_80AE010 - - thumb_func_start sub_80AE020 -sub_80AE020: @ 80AE020 - push {r4,lr} - adds r4, r0, 0 - b _080AE028 -_080AE026: - adds r4, 0x1 -_080AE028: - ldrb r0, [r4] - cmp r0, 0xFF - beq _080AE04C - cmp r0, 0xFC - bne _080AE026 - ldrb r0, [r4, 0x1] - cmp r0, 0 - bne _080AE026 - adds r0, r4, 0 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - movs r1, 0xFF - strb r1, [r0] - adds r1, r4, 0x2 - bl StringAppend -_080AE04C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AE020 - - thumb_func_start sub_80AE054 -sub_80AE054: @ 80AE054 - push {lr} - ldr r0, _080AE06C @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080AE068 - ldr r1, _080AE070 @ =gContestPlayerMonIndex - movs r0, 0x3 - strb r0, [r1] -_080AE068: - pop {r0} - bx r0 - .align 2, 0 -_080AE06C: .4byte gIsLinkContest -_080AE070: .4byte gContestPlayerMonIndex - thumb_func_end sub_80AE054 - - thumb_func_start sub_80AE074 -sub_80AE074: @ 80AE074 - push {lr} - ldr r0, _080AE088 @ =gContestPlayerMonIndex - ldr r1, _080AE08C @ =gUnknown_0203869B - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _080AE090 - movs r0, 0 - b _080AE092 - .align 2, 0 -_080AE088: .4byte gContestPlayerMonIndex -_080AE08C: .4byte gUnknown_0203869B -_080AE090: - movs r0, 0x1 -_080AE092: - pop {r1} - bx r1 - thumb_func_end sub_80AE074 - - thumb_func_start sub_80AE098 -sub_80AE098: @ 80AE098 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r6, _080AE0F0 @ =gSaveBlock2 - mov r0, sp - adds r1, r6, 0 - bl StringCopy - mov r0, sp - bl StripExtCtrlCodes - ldr r0, _080AE0F4 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AE0CE - mov r0, sp - ldrb r2, [r0, 0x5] - mov r1, sp - movs r0, 0xFF - strb r0, [r1, 0x5] - mov r0, sp - strb r2, [r0, 0x7] -_080AE0CE: - ldr r5, _080AE0F8 @ =gContestPlayerMonIndex - ldrb r0, [r5] - lsls r0, 6 - ldr r4, _080AE0FC @ =gUnknown_0203857D - adds r0, r4 - mov r1, sp - movs r2, 0x8 - bl memcpy - ldrb r0, [r6, 0x8] - cmp r0, 0 - bne _080AE100 - ldrb r0, [r5] - lsls r0, 6 - adds r0, r4, r0 - movs r1, 0xD8 - b _080AE108 - .align 2, 0 -_080AE0F0: .4byte gSaveBlock2 -_080AE0F4: .4byte gIsLinkContest -_080AE0F8: .4byte gContestPlayerMonIndex -_080AE0FC: .4byte gUnknown_0203857D -_080AE100: - ldrb r0, [r5] - lsls r0, 6 - adds r0, r4, r0 - movs r1, 0xD9 -_080AE108: - strb r1, [r0, 0x8] - ldr r5, _080AE17C @ =gContestMons - ldr r4, _080AE180 @ =gContestPlayerMonIndex - ldrb r0, [r4] - lsls r0, 6 - adds r1, r5, 0 - adds r1, 0x18 - adds r0, r1 - movs r1, 0 - str r1, [r0] - ldrb r0, [r4] - lsls r0, 6 - adds r0, r5 - adds r0, 0x2C - strb r1, [r0] - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _080AE184 @ =gPlayerParty - adds r6, r1, r0 - adds r0, r6, 0 - movs r1, 0xB - bl GetMonData - ldrb r1, [r4] - lsls r1, 6 - adds r1, r5 - strh r0, [r1] - adds r0, r6, 0 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - ldr r0, _080AE188 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AE19A - mov r0, sp - bl StripExtCtrlCodes - adds r0, r6, 0 - movs r1, 0x3 - bl GetMonData - cmp r0, 0x1 - bne _080AE18C - mov r1, sp - movs r0, 0xFF - strb r0, [r1, 0x5] - movs r0, 0xFC - strb r0, [r1, 0xA] - b _080AE19A - .align 2, 0 -_080AE17C: .4byte gContestMons -_080AE180: .4byte gContestPlayerMonIndex -_080AE184: .4byte gPlayerParty -_080AE188: .4byte gIsLinkContest -_080AE18C: - mov r0, sp - ldrb r2, [r0, 0x5] - mov r1, sp - movs r0, 0xFF - strb r0, [r1, 0x5] - mov r0, sp - strb r2, [r0, 0xA] -_080AE19A: - ldr r5, _080AE2C4 @ =gContestPlayerMonIndex - ldrb r0, [r5] - lsls r0, 6 - ldr r1, _080AE2C8 @ =gContestMons + 0x2 - mov r8, r1 - add r0, r8 - mov r1, sp - movs r2, 0xB - bl memcpy - movs r0, 0x64 - adds r4, r7, 0 - muls r4, r0 - ldr r0, _080AE2CC @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x16 - bl GetMonData - mov r6, r8 - subs r6, 0x2 - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x26 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x17 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x27 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x18 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x28 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x21 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x29 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x2F - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x2A - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0x30 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - adds r1, 0x2B - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0xD - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - strh r0, [r1, 0x1E] - adds r0, r4, 0 - movs r1, 0xE - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - strh r0, [r1, 0x20] - adds r0, r4, 0 - movs r1, 0xF - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - strh r0, [r1, 0x22] - adds r0, r4, 0 - movs r1, 0x10 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - adds r1, r6 - strh r0, [r1, 0x24] - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - mov r2, r8 - adds r2, 0x36 - adds r1, r2 - str r0, [r1] - adds r0, r4, 0 - movs r1, 0x1 - bl GetMonData - ldrb r1, [r5] - lsls r1, 6 - movs r2, 0x3A - add r8, r2 - add r1, r8 - str r0, [r1] - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r2, r0, 16 - mov r8, r2 - ldrb r0, [r5] - lsls r0, 6 - adds r1, r0, r6 - adds r0, r1, 0 - adds r0, 0x26 - ldrb r3, [r0] - adds r0, 0x1 - ldrb r4, [r0] - adds r0, 0x1 - ldrb r5, [r0] - adds r0, 0x1 - ldrb r6, [r0] - adds r0, 0x1 - ldrb r7, [r0] - cmp r2, 0xFE - bne _080AE2D0 - adds r3, 0x14 - b _080AE31E - .align 2, 0 -_080AE2C4: .4byte gContestPlayerMonIndex -_080AE2C8: .4byte gContestMons + 0x2 -_080AE2CC: .4byte gPlayerParty -_080AE2D0: - cmp r2, 0xFF - bne _080AE2E0 - lsls r0, r4, 16 - movs r1, 0xA0 - lsls r1, 13 - adds r0, r1 - lsrs r4, r0, 16 - b _080AE31E -_080AE2E0: - movs r0, 0x80 - lsls r0, 1 - cmp r2, r0 - bne _080AE2F4 - lsls r0, r5, 16 - movs r2, 0xA0 - lsls r2, 13 - adds r0, r2 - lsrs r5, r0, 16 - b _080AE31E -_080AE2F4: - ldr r0, _080AE308 @ =0x00000101 - cmp r2, r0 - bne _080AE30C - lsls r0, r6, 16 - movs r1, 0xA0 - lsls r1, 13 - adds r0, r1 - lsrs r6, r0, 16 - b _080AE31E - .align 2, 0 -_080AE308: .4byte 0x00000101 -_080AE30C: - movs r0, 0x81 - lsls r0, 1 - cmp r8, r0 - bne _080AE31E - lsls r0, r7, 16 - movs r2, 0xA0 - lsls r2, 13 - adds r0, r2 - lsrs r7, r0, 16 -_080AE31E: - cmp r3, 0xFF - ble _080AE324 - movs r3, 0xFF -_080AE324: - lsls r0, r4, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _080AE32E - movs r4, 0xFF -_080AE32E: - lsls r0, r5, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _080AE338 - movs r5, 0xFF -_080AE338: - lsls r0, r6, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _080AE342 - movs r6, 0xFF -_080AE342: - lsls r0, r7, 16 - asrs r0, 16 - cmp r0, 0xFF - ble _080AE34C - movs r7, 0xFF -_080AE34C: - ldr r2, _080AE390 @ =gContestMons - ldr r1, _080AE394 @ =gContestPlayerMonIndex - ldrb r0, [r1] - lsls r0, 6 - adds r0, r2 - adds r0, 0x26 - strb r3, [r0] - ldrb r0, [r1] - lsls r0, 6 - adds r0, r2 - adds r0, 0x27 - strb r4, [r0] - ldrb r0, [r1] - lsls r0, 6 - adds r0, r2 - adds r0, 0x28 - strb r5, [r0] - ldrb r0, [r1] - lsls r0, 6 - adds r0, r2 - adds r0, 0x29 - strb r6, [r0] - ldrb r0, [r1] - lsls r0, 6 - adds r0, r2 - adds r0, 0x2A - strb r7, [r0] - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AE390: .4byte gContestMons -_080AE394: .4byte gContestPlayerMonIndex - thumb_func_end sub_80AE098 - - thumb_func_start sub_80AE398 -sub_80AE398: @ 80AE398 - push {r4-r7,lr} - sub sp, 0x40 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r7, r1, 24 - movs r6, 0 - bl sub_80AE054 - movs r5, 0 - ldr r2, _080AE470 @ =gUnknown_083C9408 -_080AE3AE: - ldrb r1, [r2, 0x1C] - lsls r0, r1, 30 - lsrs r0, 30 - cmp r7, r0 - bne _080AE3FE - cmp r4, 0 - bne _080AE3C2 - lsls r0, r1, 29 - cmp r0, 0 - blt _080AE3F2 -_080AE3C2: - cmp r4, 0x1 - bne _080AE3CE - ldrb r0, [r2, 0x1C] - lsls r0, 28 - cmp r0, 0 - blt _080AE3F2 -_080AE3CE: - cmp r4, 0x2 - bne _080AE3DA - ldrb r0, [r2, 0x1C] - lsls r0, 27 - cmp r0, 0 - blt _080AE3F2 -_080AE3DA: - cmp r4, 0x3 - bne _080AE3E6 - ldrb r0, [r2, 0x1C] - lsls r0, 26 - cmp r0, 0 - blt _080AE3F2 -_080AE3E6: - cmp r4, 0x4 - bne _080AE3FE - ldrb r0, [r2, 0x1C] - lsls r0, 25 - cmp r0, 0 - bge _080AE3FE -_080AE3F2: - adds r0, r6, 0 - adds r1, r0, 0x1 - lsls r1, 24 - lsrs r6, r1, 24 - add r0, sp - strb r5, [r0] -_080AE3FE: - adds r2, 0x40 - adds r5, 0x1 - cmp r5, 0x3B - ble _080AE3AE - mov r0, sp - adds r1, r0, r6 - movs r0, 0xFF - strb r0, [r1] - movs r5, 0 - ldr r7, _080AE470 @ =gUnknown_083C9408 -_080AE412: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - bl __modsi3 - lsls r0, 16 - lsrs r0, 16 - ldr r1, _080AE474 @ =gContestMons - lsls r2, r5, 6 - adds r2, r1 - mov r1, sp - adds r4, r1, r0 - ldrb r1, [r4] - lsls r1, 6 - adds r1, r7 - adds r0, r2, 0 - movs r2, 0x40 - bl memcpy - ldrb r0, [r4] - adds r2, r5, 0x1 - subs r1, r6, 0x1 - cmp r0, 0xFF - beq _080AE454 - adds r3, r4, 0 -_080AE448: - ldrb r0, [r3, 0x1] - strb r0, [r3] - adds r3, 0x1 - ldrb r0, [r3] - cmp r0, 0xFF - bne _080AE448 -_080AE454: - lsls r0, r1, 24 - lsrs r6, r0, 24 - adds r5, r2, 0 - cmp r5, 0x2 - ble _080AE412 - ldr r0, _080AE478 @ =gUnknown_02038694 - ldrb r0, [r0] - bl sub_80AE098 - add sp, 0x40 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AE470: .4byte gUnknown_083C9408 -_080AE474: .4byte gContestMons -_080AE478: .4byte gUnknown_02038694 - thumb_func_end sub_80AE398 - - thumb_func_start sub_80AE47C -sub_80AE47C: @ 80AE47C - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - beq _080AE48E - movs r0, 0x3 - b _080AE50A -_080AE48E: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080AE49E - movs r0, 0x4 - b _080AE50A -_080AE49E: - ldr r0, _080AE4B0 @ =gScriptContestCategory - ldrh r0, [r0] - cmp r0, 0x4 - bhi _080AE4F2 - lsls r0, 2 - ldr r1, _080AE4B4 @ =_080AE4B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AE4B0: .4byte gScriptContestCategory -_080AE4B4: .4byte _080AE4B8 - .align 2, 0 -_080AE4B8: - .4byte _080AE4CC - .4byte _080AE4D2 - .4byte _080AE4D8 - .4byte _080AE4DE - .4byte _080AE4E4 -_080AE4CC: - adds r0, r4, 0 - movs r1, 0x32 - b _080AE4E8 -_080AE4D2: - adds r0, r4, 0 - movs r1, 0x33 - b _080AE4E8 -_080AE4D8: - adds r0, r4, 0 - movs r1, 0x34 - b _080AE4E8 -_080AE4DE: - adds r0, r4, 0 - movs r1, 0x35 - b _080AE4E8 -_080AE4E4: - adds r0, r4, 0 - movs r1, 0x36 -_080AE4E8: - bl GetMonData - lsls r0, 24 - lsrs r1, r0, 24 - b _080AE4F6 -_080AE4F2: - movs r0, 0 - b _080AE50A -_080AE4F6: - ldr r0, _080AE510 @ =gScriptContestRank - adds r2, r1, 0 - ldrh r1, [r0] - movs r0, 0x2 - cmp r2, r1 - bhi _080AE50A - movs r0, 0 - cmp r2, r1 - bcc _080AE50A - movs r0, 0x1 -_080AE50A: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080AE510: .4byte gScriptContestRank - thumb_func_end sub_80AE47C - - thumb_func_start sub_80AE514 -sub_80AE514: @ 80AE514 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - movs r5, 0 - ldr r7, _080AE588 @ =gUnknown_083CA308 - adds r0, r7, 0x1 - mov r9, r0 - ldr r6, _080AE58C @ =gUnknown_083CA310 - adds r3, r6, 0x1 - mov r8, r3 -_080AE52C: - ldr r4, _080AE590 @ =gUnknown_02038696 - adds r4, r5, r4 - ldrb r0, [r4] - lsls r0, 1 - adds r1, r0, r7 - ldrb r2, [r1] - mov r3, r9 - adds r1, r0, r3 - ldrb r3, [r1] - adds r0, r6 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - ldrb r0, [r4] - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, _080AE594 @ =gUnknown_03004210 - movs r1, 0 - bl FillWindowRect_DefaultPalette - adds r0, r5, 0 - bl sub_80AE5BC - adds r0, r5, 0 - bl sub_80AE6CC - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080AE52C - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AE588: .4byte gUnknown_083CA308 -_080AE58C: .4byte gUnknown_083CA310 -_080AE590: .4byte gUnknown_02038696 -_080AE594: .4byte gUnknown_03004210 - thumb_func_end sub_80AE514 - - thumb_func_start sub_80AE598 -sub_80AE598: @ 80AE598 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r4, r2, 24 - lsrs r4, 24 - ldr r1, _080AE5B8 @ =gUnknown_083CC59C - bl StringCopy - strb r4, [r0] - adds r0, 0x1 - adds r1, r5, 0 - bl StringCopy - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AE5B8: .4byte gUnknown_083CC59C - thumb_func_end sub_80AE598 - - thumb_func_start sub_80AE5BC -sub_80AE5BC: @ 80AE5BC - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r0, r1, 24 - movs r2, 0xA0 - lsls r2, 20 - adds r1, r2 - lsrs r1, 24 - bl sub_80AE5D4 - pop {r0} - bx r0 - thumb_func_end sub_80AE5BC - - thumb_func_start sub_80AE5D4 -sub_80AE5D4: @ 80AE5D4 - push {r4-r7,lr} - sub sp, 0x8 - adds r2, r1, 0 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _080AE660 @ =gDisplayedStringBattle - ldr r1, _080AE664 @ =gEmptyString_81E72B0 - adds r0, r3, 0 - bl sub_80AE598 - adds r3, r0, 0 - movs r0, 0xFC - strb r0, [r3] - movs r0, 0x6 - strb r0, [r3, 0x1] - movs r0, 0x4 - strb r0, [r3, 0x2] - adds r3, 0x3 - movs r0, 0xBA - strb r0, [r3] - adds r3, 0x1 - ldr r0, _080AE668 @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080AE67C - ldr r1, _080AE66C @ =gLinkPlayers - lsls r0, r4, 3 - subs r0, r4 - lsls r2, r0, 2 - adds r0, r2, r1 - ldrh r6, [r0, 0x1A] - cmp r6, 0x1 - bne _080AE67C - adds r1, 0x8 - adds r1, r2, r1 - adds r0, r3, 0 - bl StringCopy - ldr r0, _080AE670 @ =gUnknown_03004210 - ldr r1, _080AE660 @ =gDisplayedStringBattle - ldr r2, _080AE674 @ =gUnknown_02038696 - adds r2, r4, r2 - ldrb r4, [r2] - movs r2, 0x16 - muls r2, r4 - movs r3, 0x94 - lsls r3, 2 - adds r2, r3 - ldr r5, _080AE678 @ =gUnknown_083CA310 - lsls r4, 1 - adds r3, r4, r5 - ldrb r3, [r3] - lsls r3, 27 - movs r7, 0xFB - lsls r7, 24 - adds r3, r7 - lsrs r3, 24 - adds r5, 0x1 - adds r4, r5 - ldrb r4, [r4] - lsls r4, 3 - str r4, [sp] - str r6, [sp, 0x4] - bl sub_8004D04 - b _080AE6B0 - .align 2, 0 -_080AE660: .4byte gDisplayedStringBattle -_080AE664: .4byte gEmptyString_81E72B0 -_080AE668: .4byte gIsLinkContest -_080AE66C: .4byte gLinkPlayers -_080AE670: .4byte gUnknown_03004210 -_080AE674: .4byte gUnknown_02038696 -_080AE678: .4byte gUnknown_083CA310 -_080AE67C: - lsls r1, r4, 6 - ldr r0, _080AE6B8 @ =gUnknown_0203857D - adds r1, r0 - adds r0, r3, 0 - bl StringCopy - ldr r0, _080AE6BC @ =gUnknown_03004210 - ldr r1, _080AE6C0 @ =gDisplayedStringBattle - ldr r2, _080AE6C4 @ =gUnknown_02038696 - adds r2, r4, r2 - ldrb r4, [r2] - movs r2, 0x16 - muls r2, r4 - movs r3, 0x94 - lsls r3, 2 - adds r2, r3 - ldr r5, _080AE6C8 @ =gUnknown_083CA310 - lsls r4, 1 - adds r3, r4, r5 - ldrb r3, [r3] - adds r5, 0x1 - adds r4, r5 - ldrb r4, [r4] - str r4, [sp] - bl sub_8003460 -_080AE6B0: - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AE6B8: .4byte gUnknown_0203857D -_080AE6BC: .4byte gUnknown_03004210 -_080AE6C0: .4byte gDisplayedStringBattle -_080AE6C4: .4byte gUnknown_02038696 -_080AE6C8: .4byte gUnknown_083CA310 - thumb_func_end sub_80AE5D4 - - thumb_func_start sub_80AE6CC -sub_80AE6CC: @ 80AE6CC - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r0, r1, 24 - movs r2, 0xA0 - lsls r2, 20 - adds r1, r2 - lsrs r1, 24 - bl sub_80AE6E4 - pop {r0} - bx r0 - thumb_func_end sub_80AE6CC - - thumb_func_start sub_80AE6E4 -sub_80AE6E4: @ 80AE6E4 - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r2, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _080AE75C @ =gDisplayedStringBattle - movs r0, 0xFC - strb r0, [r3] - movs r0, 0x6 - strb r0, [r3, 0x1] - movs r0, 0x4 - strb r0, [r3, 0x2] - adds r3, 0x3 - lsls r1, r4, 6 - ldr r0, _080AE760 @ =gContestMons + 0x2 - adds r1, r0 - adds r0, r3, 0 - bl sub_80AE598 - adds r3, r0, 0 - movs r0, 0xFF - strb r0, [r3] - ldr r0, _080AE764 @ =gUnknown_03004210 - ldr r1, _080AE75C @ =gDisplayedStringBattle - ldr r2, _080AE768 @ =gUnknown_02038696 - adds r4, r2 - ldrb r4, [r4] - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 18 - movs r3, 0x80 - lsls r3, 18 - adds r2, r3 - lsrs r2, 16 - ldr r5, _080AE76C @ =gUnknown_083CA308 - lsls r4, 1 - adds r3, r4, r5 - ldrb r3, [r3] - lsls r3, 27 - movs r6, 0xFD - lsls r6, 24 - adds r3, r6 - lsrs r3, 24 - adds r5, 0x1 - adds r4, r5 - ldrb r4, [r4] - lsls r4, 3 - str r4, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - bl sub_8004D04 - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AE75C: .4byte gDisplayedStringBattle -_080AE760: .4byte gContestMons + 0x2 -_080AE764: .4byte gUnknown_03004210 -_080AE768: .4byte gUnknown_02038696 -_080AE76C: .4byte gUnknown_083CA308 - thumb_func_end sub_80AE6E4 - - thumb_func_start sub_80AE770 -sub_80AE770: @ 80AE770 - push {r4,r5,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, 0x4 - bhi _080AE7FC - lsls r0, 2 - ldr r1, _080AE788 @ =_080AE78C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AE788: .4byte _080AE78C - .align 2, 0 -_080AE78C: - .4byte _080AE7A0 - .4byte _080AE7B8 - .4byte _080AE7D0 - .4byte _080AE7E0 - .4byte _080AE7FC -_080AE7A0: - ldr r0, _080AE7B4 @ =gContestMons - lsls r2, 6 - adds r1, r2, r0 - adds r3, r1, 0 - adds r3, 0x26 - ldrb r5, [r3] - adds r3, 0x4 - ldrb r4, [r3] - adds r1, 0x27 - b _080AE80E - .align 2, 0 -_080AE7B4: .4byte gContestMons -_080AE7B8: - ldr r0, _080AE7CC @ =gContestMons - lsls r2, 6 - adds r1, r2, r0 - adds r3, r1, 0 - adds r3, 0x27 - ldrb r5, [r3] - subs r3, 0x1 - ldrb r4, [r3] - adds r1, 0x28 - b _080AE80E - .align 2, 0 -_080AE7CC: .4byte gContestMons -_080AE7D0: - ldr r1, _080AE7DC @ =gContestMons - lsls r2, 6 - adds r3, r2, r1 - adds r0, r3, 0 - adds r0, 0x28 - b _080AE7EA - .align 2, 0 -_080AE7DC: .4byte gContestMons -_080AE7E0: - ldr r1, _080AE7F8 @ =gContestMons - lsls r2, 6 - adds r3, r2, r1 - adds r0, r3, 0 - adds r0, 0x29 -_080AE7EA: - ldrb r5, [r0] - subs r0, 0x1 - ldrb r4, [r0] - adds r0, 0x2 - ldrb r3, [r0] - adds r0, r1, 0 - b _080AE810 - .align 2, 0 -_080AE7F8: .4byte gContestMons -_080AE7FC: - ldr r0, _080AE828 @ =gContestMons - lsls r2, 6 - adds r1, r2, r0 - adds r3, r1, 0 - adds r3, 0x2A - ldrb r5, [r3] - subs r3, 0x1 - ldrb r4, [r3] - adds r1, 0x26 -_080AE80E: - ldrb r3, [r1] -_080AE810: - adds r1, r2, r0 - adds r1, 0x2B - adds r0, r4, r3 - ldrb r1, [r1] - adds r0, r1 - asrs r0, 1 - adds r0, r5, r0 - lsls r0, 16 - lsrs r0, 16 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AE828: .4byte gContestMons - thumb_func_end sub_80AE770 - - thumb_func_start sub_80AE82C -sub_80AE82C: @ 80AE82C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r6, _080AE854 @ =gUnknown_02038670 -_080AE836: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80AE770 - lsls r1, r4, 1 - adds r1, r6 - strh r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AE836 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AE854: .4byte gUnknown_02038670 - thumb_func_end sub_80AE82C - - thumb_func_start sub_80AE858 -sub_80AE858: @ 80AE858 - push {r4,r5,lr} - ldr r0, _080AE8A0 @ =gUnknown_083CA4BC - bl LoadCompressedObjectPic - ldr r0, _080AE8A4 @ =gContest2Pal - movs r1, 0x88 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r0, _080AE8A8 @ =gSpriteTemplate_83CA4A4 - movs r1, 0x70 - movs r2, 0x24 - movs r3, 0x1E - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r4, _080AE8AC @ =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r5, r2, r4 - ldrb r3, [r5, 0x5] - movs r1, 0xF - ands r1, r3 - movs r3, 0x10 - orrs r1, r3 - strb r1, [r5, 0x5] - adds r4, 0x1C - adds r2, r4 - ldr r1, _080AE8B0 @ =SpriteCallbackDummy - str r1, [r2] - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AE8A0: .4byte gUnknown_083CA4BC -_080AE8A4: .4byte gContest2Pal -_080AE8A8: .4byte gSpriteTemplate_83CA4A4 -_080AE8AC: .4byte gSprites -_080AE8B0: .4byte SpriteCallbackDummy - thumb_func_end sub_80AE858 - - thumb_func_start sub_80AE8B4 -sub_80AE8B4: @ 80AE8B4 - push {lr} - ldr r0, _080AE8F8 @ =gUnknown_083CA4C4 - bl LoadCompressedObjectPic - ldr r0, _080AE8FC @ =gUnknown_083CA4CC - bl LoadCompressedObjectPalette - ldr r0, _080AE900 @ =gUnknown_083CA4D4 - movs r1, 0x60 - movs r2, 0xA - movs r3, 0x1D - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080AE904 @ =gSprites - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r1 - movs r1, 0x3E - adds r1, r2 - mov r12, r1 - ldrb r1, [r1] - movs r3, 0x4 - orrs r1, r3 - mov r3, r12 - strb r1, [r3] - ldrh r1, [r2, 0x4] - lsls r1, 22 - lsrs r1, 22 - strh r1, [r2, 0x2E] - pop {r1} - bx r1 - .align 2, 0 -_080AE8F8: .4byte gUnknown_083CA4C4 -_080AE8FC: .4byte gUnknown_083CA4CC -_080AE900: .4byte gUnknown_083CA4D4 -_080AE904: .4byte gSprites - thumb_func_end sub_80AE8B4 - - thumb_func_start unref_sub_80AE908 -unref_sub_80AE908: @ 80AE908 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - ldr r0, _080AE9D4 @ =gContestMons - mov r9, r0 - ldr r1, _080AE9D8 @ =gContestPlayerMonIndex - mov r8, r1 - ldrb r0, [r1] - lsls r0, 6 - add r0, r9 - ldrh r5, [r0] - lsls r6, r5, 3 - ldr r0, _080AE9DC @ =gMonFrontPicTable - adds r0, r6, r0 - ldr r2, _080AE9E0 @ =gMonFrontPicCoords - mov r10, r2 - lsls r2, r5, 2 - add r2, r10 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - movs r3, 0x80 - lsls r3, 18 - ldr r4, _080AE9E4 @ =gUnknown_081FAF4C - ldr r4, [r4, 0x4] - str r4, [sp] - str r5, [sp, 0x4] - bl DecompressPicFromTable_2 - ldr r0, _080AE9E8 @ =gMonPaletteTable - adds r6, r0 - ldr r0, [r6] - movs r1, 0x88 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - mov r1, r8 - ldrb r0, [r1] - lsls r0, 6 - add r0, r9 - ldrh r0, [r0] - movs r1, 0x1 - bl GetMonSpriteTemplate_803C56C - ldr r0, _080AE9EC @ =gUnknown_02024E8C - mov r2, r8 - ldrb r1, [r2] - lsls r1, 6 - add r1, r9 - ldrh r1, [r1] - lsls r1, 2 - add r1, r10 - ldrb r1, [r1] - movs r2, 0x8 - subs r2, r1 - lsls r2, 18 - movs r1, 0xA0 - lsls r1, 15 - adds r2, r1 - asrs r2, 16 - movs r1, 0x70 - movs r3, 0x1E - bl CreateSprite - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _080AE9F0 @ =gSprites - lsls r3, r4, 4 - adds r3, r4 - lsls r3, 2 - adds r0, r3, r5 - ldrb r2, [r0, 0x5] - movs r1, 0xF - ands r1, r2 - movs r2, 0x10 - orrs r1, r2 - strb r1, [r0, 0x5] - adds r1, r5, 0 - adds r1, 0x1C - adds r1, r3, r1 - ldr r2, _080AE9F4 @ =SpriteCallbackDummy - str r2, [r1] - adds r5, 0x10 - adds r3, r5 - ldr r1, _080AE9F8 @ =gSpriteAffineAnimTable_81E7C18 - str r1, [r3] - movs r1, 0 - bl StartSpriteAffineAnim - adds r0, r4, 0 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080AE9D4: .4byte gContestMons -_080AE9D8: .4byte gContestPlayerMonIndex -_080AE9DC: .4byte gMonFrontPicTable -_080AE9E0: .4byte gMonFrontPicCoords -_080AE9E4: .4byte gUnknown_081FAF4C -_080AE9E8: .4byte gMonPaletteTable -_080AE9EC: .4byte gUnknown_02024E8C -_080AE9F0: .4byte gSprites -_080AE9F4: .4byte SpriteCallbackDummy -_080AE9F8: .4byte gSpriteAffineAnimTable_81E7C18 - thumb_func_end unref_sub_80AE908 - - thumb_func_start sub_80AE9FC -sub_80AE9FC: @ 80AE9FC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0xC - mov r8, r1 - adds r6, r2, 0 - lsls r0, 16 - lsrs r0, 16 - bl sub_80B2778 - mov r9, r0 - mov r5, r9 - lsls r0, r5, 3 - ldr r1, _080AEACC @ =gMonBackPicTable - adds r0, r1 - ldr r1, _080AEAD0 @ =gMonBackPicCoords - lsls r2, r5, 2 - adds r2, r1 - ldrb r1, [r2] - ldrb r2, [r2, 0x1] - movs r3, 0x80 - lsls r3, 18 - ldr r4, _080AEAD4 @ =gUnknown_081FAF4C - ldr r4, [r4] - str r4, [sp] - str r5, [sp, 0x4] - str r6, [sp, 0x8] - bl HandleLoadSpecialPokePic - adds r0, r5, 0 - mov r1, r8 - adds r2, r6, 0 - bl GetMonSpritePalFromOtIdPersonality - movs r1, 0x90 - lsls r1, 1 - movs r2, 0x20 - bl LoadCompressedPalette - adds r0, r5, 0 - movs r1, 0 - bl GetMonSpriteTemplate_803C56C - ldr r4, _080AEAD8 @ =gUnknown_02024E8C - movs r0, 0x2 - adds r1, r5, 0 - movs r2, 0 - bl sub_8077E44 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - movs r1, 0x70 - movs r3, 0x1E - bl CreateSprite - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _080AEADC @ =gSprites - mov r8, r0 - lsls r0, r7, 4 - adds r0, r7 - lsls r6, r0, 2 - mov r0, r8 - adds r4, r6, r0 - ldrb r1, [r4, 0x5] - movs r0, 0xF - ands r0, r1 - movs r1, 0x20 - orrs r0, r1 - movs r1, 0xD - negs r1, r1 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r4, 0x5] - movs r0, 0x2 - bl sub_8079E90 - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - mov r0, r8 - adds r0, 0x1C - adds r0, r6, r0 - ldr r1, _080AEAE0 @ =SpriteCallbackDummy - str r1, [r0] - ldrb r0, [r4, 0x5] - lsrs r0, 4 - strh r0, [r4, 0x2E] - strh r5, [r4, 0x32] - adds r0, r5, 0 - bl sub_80AEB1C - lsls r0, 24 - cmp r0, 0 - beq _080AEAE8 - mov r0, r8 - adds r0, 0x10 - adds r0, r6, r0 - ldr r1, _080AEAE4 @ =gSpriteAffineAnimTable_81E7C18 - b _080AEAF0 - .align 2, 0 -_080AEACC: .4byte gMonBackPicTable -_080AEAD0: .4byte gMonBackPicCoords -_080AEAD4: .4byte gUnknown_081FAF4C -_080AEAD8: .4byte gUnknown_02024E8C -_080AEADC: .4byte gSprites -_080AEAE0: .4byte SpriteCallbackDummy -_080AEAE4: .4byte gSpriteAffineAnimTable_81E7C18 -_080AEAE8: - mov r0, r8 - adds r0, 0x10 - adds r0, r6, r0 - ldr r1, _080AEB14 @ =gSpriteAffineAnimTable_81E7BEC -_080AEAF0: - str r1, [r0] - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - ldr r1, _080AEB18 @ =gSprites - adds r0, r1 - movs r1, 0 - bl StartSpriteAffineAnim - adds r0, r7, 0 - add sp, 0xC - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AEB14: .4byte gSpriteAffineAnimTable_81E7BEC -_080AEB18: .4byte gSprites - thumb_func_end sub_80AE9FC - - thumb_func_start sub_80AEB1C -sub_80AEB1C: @ 80AEB1C - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xC9 - beq _080AEB2A - movs r0, 0x1 - b _080AEB2C -_080AEB2A: - movs r0, 0 -_080AEB2C: - pop {r1} - bx r1 - thumb_func_end sub_80AEB1C - - thumb_func_start sub_80AEB30 -sub_80AEB30: @ 80AEB30 - push {lr} - ldr r0, _080AEB44 @ =0x0600c000 - bl sub_80AEB4C - ldr r0, _080AEB48 @ =0x0600e000 - bl sub_80AEB4C - pop {r0} - bx r0 - .align 2, 0 -_080AEB44: .4byte 0x0600c000 -_080AEB48: .4byte 0x0600e000 - thumb_func_end sub_80AEB30 - - thumb_func_start sub_80AEB4C -sub_80AEB4C: @ 80AEB4C - movs r1, 0xA0 - lsls r1, 3 - adds r2, r0, r1 - ldr r1, _080AEB60 @ =0x040000d4 - str r0, [r1] - str r2, [r1, 0x4] - ldr r0, _080AEB64 @ =0x80000140 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - bx lr - .align 2, 0 -_080AEB60: .4byte 0x040000d4 -_080AEB64: .4byte 0x80000140 - thumb_func_end sub_80AEB4C - - thumb_func_start sub_80AEB68 -sub_80AEB68: @ 80AEB68 - push {lr} - lsls r0, 16 - lsls r1, 24 - lsrs r3, r1, 24 - ldr r2, _080AEB90 @ =gContestEffects - ldr r1, _080AEB94 @ =gContestMoves - lsrs r0, 13 - adds r0, r1 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0x8 - bhi _080AEBD0 - lsls r0, 2 - ldr r1, _080AEB98 @ =_080AEB9C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AEB90: .4byte gContestEffects -_080AEB94: .4byte gContestMoves -_080AEB98: .4byte _080AEB9C - .align 2, 0 -_080AEB9C: - .4byte _080AEBC0 - .4byte _080AEBC0 - .4byte _080AEBC8 - .4byte _080AEBC8 - .4byte _080AEBD0 - .4byte _080AEBD0 - .4byte _080AEBD0 - .4byte _080AEBD0 - .4byte _080AEBC0 -_080AEBC0: - ldr r0, _080AEBC4 @ =0x00009082 - b _080AEBD2 - .align 2, 0 -_080AEBC4: .4byte 0x00009082 -_080AEBC8: - ldr r0, _080AEBCC @ =0x00009088 - b _080AEBD2 - .align 2, 0 -_080AEBCC: .4byte 0x00009088 -_080AEBD0: - ldr r0, _080AEBE8 @ =0x00009086 -_080AEBD2: - lsls r1, r3, 12 - movs r2, 0x90 - lsls r2, 8 - adds r1, r2 - lsls r0, 16 - asrs r0, 16 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_080AEBE8: .4byte 0x00009086 - thumb_func_end sub_80AEB68 - - thumb_func_start sub_80AEBEC -sub_80AEBEC: @ 80AEBEC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _080AEC74 @ =gUnknown_03004210 - movs r1, 0x10 - str r1, [sp] - movs r1, 0x22 - str r1, [sp, 0x4] - movs r1, 0 - movs r2, 0xB - movs r3, 0x1F - bl FillWindowRect_DefaultPalette - ldr r1, _080AEC78 @ =gContestMoves - lsls r0, r4, 3 - adds r0, r1 - ldrb r0, [r0, 0x1] - lsls r0, 29 - lsrs r0, 29 - ldr r1, _080AEC7C @ =0x00004040 - cmp r0, 0 - beq _080AEC34 - adds r1, 0x5 - cmp r0, 0x1 - beq _080AEC34 - adds r1, 0x5 - cmp r0, 0x2 - beq _080AEC34 - adds r1, 0x40 - cmp r0, 0x3 - bne _080AEC34 - subs r1, 0x20 -_080AEC34: - ldr r0, _080AEC74 @ =gUnknown_03004210 - mov r8, r0 - ldr r6, _080AEC78 @ =gContestMoves - lsls r5, r4, 3 - ldr r7, _080AEC80 @ =gContestEffects - ldr r0, _080AEC84 @ =gContestEffectStrings - mov r9, r0 - ldr r4, _080AEC88 @ =0x0600c816 - ldr r3, _080AEC8C @ =0x0600c7d6 - movs r2, 0x4 -_080AEC48: - strh r1, [r3] - adds r0, r1, 0 - adds r0, 0x10 - strh r0, [r4] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - adds r4, 0x2 - adds r3, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _080AEC48 - adds r0, r5, r6 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0, r7 - ldrb r0, [r1, 0x1] - cmp r0, 0xFF - bne _080AEC90 - movs r0, 0 - b _080AEC9C - .align 2, 0 -_080AEC74: .4byte gUnknown_03004210 -_080AEC78: .4byte gContestMoves -_080AEC7C: .4byte 0x00004040 -_080AEC80: .4byte gContestEffects -_080AEC84: .4byte gContestEffectStrings -_080AEC88: .4byte 0x0600c816 -_080AEC8C: .4byte 0x0600c7d6 -_080AEC90: - ldrb r0, [r1, 0x1] - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 -_080AEC9C: - cmp r0, 0x8 - bls _080AECA2 - movs r0, 0x8 -_080AECA2: - movs r2, 0 - ldr r1, _080AECB8 @ =0x00005012 - adds r4, r1, 0 - adds r1, 0x23 - adds r3, r1, 0 - ldr r1, _080AECBC @ =0x0600c7ea -_080AECAE: - cmp r2, r0 - bge _080AECC0 - strh r4, [r1] - b _080AECC2 - .align 2, 0 -_080AECB8: .4byte 0x00005012 -_080AECBC: .4byte 0x0600c7ea -_080AECC0: - strh r3, [r1] -_080AECC2: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x7 - ble _080AECAE - adds r0, r5, r6 - ldrb r0, [r0] - lsls r0, 2 - adds r1, r0, r7 - ldrb r0, [r1, 0x2] - cmp r0, 0xFF - bne _080AECDC - movs r0, 0 - b _080AECE8 -_080AECDC: - ldrb r0, [r1, 0x2] - movs r1, 0xA - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 -_080AECE8: - cmp r0, 0x8 - bls _080AECEE - movs r0, 0x8 -_080AECEE: - movs r2, 0 - ldr r1, _080AED04 @ =0x00005014 - adds r4, r1, 0 - adds r1, 0x22 - adds r3, r1, 0 - ldr r1, _080AED08 @ =0x0600c82a -_080AECFA: - cmp r2, r0 - bge _080AED0C - strh r4, [r1] - b _080AED0E - .align 2, 0 -_080AED04: .4byte 0x00005014 -_080AED08: .4byte 0x0600c82a -_080AED0C: - strh r3, [r1] -_080AED0E: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0x7 - ble _080AECFA - adds r0, r5, r6 - ldrb r0, [r0] - lsls r0, 2 - add r0, r9 - ldr r1, [r0] - movs r2, 0xD9 - lsls r2, 2 - movs r0, 0x23 - str r0, [sp] - mov r0, r8 - movs r3, 0xB - bl sub_8003460 - ldr r1, _080AED50 @ =gUnknown_083CC5A2 - ldr r2, _080AED54 @ =0x00000362 - movs r0, 0x1F - str r0, [sp] - mov r0, r8 - movs r3, 0x10 - bl sub_8003460 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AED50: .4byte gUnknown_083CC5A2 -_080AED54: .4byte 0x00000362 - thumb_func_end sub_80AEBEC - - thumb_func_start sub_80AED58 -sub_80AED58: @ 80AED58 - push {lr} - sub sp, 0x8 - ldr r0, _080AED78 @ =gUnknown_03004210 - movs r1, 0x1C - str r1, [sp] - movs r1, 0x28 - str r1, [sp, 0x4] - movs r1, 0 - movs r2, 0xB - movs r3, 0x23 - bl FillWindowRect_DefaultPalette - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_080AED78: .4byte gUnknown_03004210 - thumb_func_end sub_80AED58 - - thumb_func_start sub_80AED7C -sub_80AED7C: @ 80AED7C - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r0, _080AEDD8 @ =gUnknown_02038696 - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - adds r0, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r4, 0 - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - bne _080AEDEC - cmp r6, 0 - beq _080AEDEC - adds r0, r6, 0 - adds r1, r4, 0 - bl sub_80AEB68 - lsls r0, 16 - lsrs r0, 16 - lsls r3, r5, 6 - ldr r1, _080AEDDC @ =0x0600c028 - adds r1, r3, r1 - strh r0, [r1] - ldr r1, _080AEDE0 @ =0x0600c02a - adds r1, r3, r1 - adds r2, r0, 0x1 - strh r2, [r1] - ldr r1, _080AEDE4 @ =0x0600c068 - adds r2, r3, r1 - adds r1, r0, 0 - adds r1, 0x10 - strh r1, [r2] - ldr r1, _080AEDE8 @ =0x0600c06a - adds r3, r1 - adds r0, 0x11 - strh r0, [r3] - b _080AEE08 - .align 2, 0 -_080AEDD8: .4byte gUnknown_02038696 -_080AEDDC: .4byte 0x0600c028 -_080AEDE0: .4byte 0x0600c02a -_080AEDE4: .4byte 0x0600c068 -_080AEDE8: .4byte 0x0600c06a -_080AEDEC: - lsls r1, r5, 6 - ldr r0, _080AEE10 @ =0x0600c028 - adds r0, r1, r0 - movs r2, 0 - strh r2, [r0] - ldr r0, _080AEE14 @ =0x0600c02a - adds r0, r1, r0 - strh r2, [r0] - ldr r3, _080AEE18 @ =0x0600c068 - adds r0, r1, r3 - strh r2, [r0] - ldr r0, _080AEE1C @ =0x0600c06a - adds r1, r0 - strh r2, [r1] -_080AEE08: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AEE10: .4byte 0x0600c028 -_080AEE14: .4byte 0x0600c02a -_080AEE18: .4byte 0x0600c068 -_080AEE1C: .4byte 0x0600c06a - thumb_func_end sub_80AED7C - - thumb_func_start unref_sub_80AEE20 -unref_sub_80AEE20: @ 80AEE20 - push {r4,lr} - movs r4, 0 -_080AEE24: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, _080AEE48 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrh r0, [r0, 0x6] - adds r1, r4, 0 - bl sub_80AED7C - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AEE24 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AEE48: .4byte gSharedMem + 0x19260 - thumb_func_end unref_sub_80AEE20 - - thumb_func_start sub_80AEE4C -sub_80AEE4C: @ 80AEE4C - ldr r0, _080AEE50 @ =0x00002034 - bx lr - .align 2, 0 -_080AEE50: .4byte 0x00002034 - thumb_func_end sub_80AEE4C - - thumb_func_start sub_80AEE54 -sub_80AEE54: @ 80AEE54 - 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 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp] - lsls r5, r7, 3 - subs r0, r5, r7 - lsls r0, 2 - ldr r1, _080AEE84 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r0, [r0, 0x10] - movs r2, 0x30 - ands r2, r0 - mov r10, r1 - cmp r2, 0 - bne _080AEE88 - movs r0, 0 - b _080AEF3C - .align 2, 0 -_080AEE84: .4byte gSharedMem + 0x19260 -_080AEE88: - ldr r0, _080AEEB0 @ =gUnknown_02038696 - adds r0, r7, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - adds r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r2, 0x10 - bne _080AEEF0 - adds r0, r7, 0 - bl sub_80AEE4C - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - movs r4, 0 - adds r6, r5, 0 - b _080AEEC4 - .align 2, 0 -_080AEEB0: .4byte gUnknown_02038696 -_080AEEB4: - mov r1, r9 - adds r0, r1, r4 - lsls r0, 6 - ldr r1, _080AEEE8 @ =0x0600c026 - adds r0, r1 - mov r1, r8 - strh r1, [r0] - adds r4, 0x1 -_080AEEC4: - subs r0, r6, r7 - lsls r0, 2 - ldr r1, _080AEEEC @ =gSharedMem + 0x19260 - adds r5, r0, r1 - movs r0, 0xD - ldrsb r0, [r5, r0] - movs r1, 0xA - bl __divsi3 - lsls r0, 24 - asrs r0, 24 - cmp r0, r4 - bgt _080AEEB4 - ldr r0, [sp] - cmp r0, 0 - beq _080AEF3A - movs r0, 0x5B - b _080AEF2C - .align 2, 0 -_080AEEE8: .4byte 0x0600c026 -_080AEEEC: .4byte gSharedMem + 0x19260 -_080AEEF0: - movs r1, 0 - mov r8, r1 - movs r4, 0x3 - adds r6, r5, 0 - b _080AEF0A -_080AEEFA: - mov r1, r9 - adds r0, r1, r4 - lsls r0, 6 - ldr r1, _080AEF4C @ =0x0600bfe6 - adds r0, r1 - mov r1, r8 - strh r1, [r0] - subs r4, 0x1 -_080AEF0A: - subs r0, r6, r7 - lsls r0, 2 - mov r1, r10 - adds r5, r0, r1 - movs r0, 0xD - ldrsb r0, [r5, r0] - movs r1, 0xA - bl __divsi3 - lsls r0, 24 - asrs r0, 24 - cmp r0, r4 - blt _080AEEFA - ldr r0, [sp] - cmp r0, 0 - beq _080AEF3A - movs r0, 0x26 -_080AEF2C: - bl PlaySE - ldrb r1, [r5, 0x10] - movs r0, 0x31 - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x10] -_080AEF3A: - movs r0, 0x1 -_080AEF3C: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AEF4C: .4byte 0x0600bfe6 - thumb_func_end sub_80AEE54 - - thumb_func_start sub_80AEF50 -sub_80AEF50: @ 80AEF50 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - movs r5, 0 -_080AEF5A: - ldr r0, _080AEF80 @ =gUnknown_02038696 - adds r0, r5, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - adds r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_80AEE4C - lsls r0, 16 - lsrs r6, r0, 16 - movs r4, 0 - lsls r7, r5, 3 - adds r2, r5, 0x1 - b _080AEF92 - .align 2, 0 -_080AEF80: .4byte gUnknown_02038696 -_080AEF84: - mov r1, r8 - adds r0, r1, r4 - lsls r0, 6 - ldr r3, _080AEFE0 @ =0x0600c026 - adds r0, r3 - strh r6, [r0] - adds r4, 0x1 -_080AEF92: - subs r0, r7, r5 - lsls r0, 2 - ldr r1, _080AEFE4 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r0, [r0, 0xD] - lsls r0, 24 - asrs r0, 24 - movs r1, 0xA - str r2, [sp] - bl __divsi3 - lsls r0, 24 - asrs r0, 24 - ldr r2, [sp] - cmp r4, r0 - blt _080AEF84 - movs r6, 0 - cmp r4, 0x2 - bgt _080AEFCE - lsls r0, r4, 6 - ldr r1, _080AEFE0 @ =0x0600c026 - adds r0, r1 - mov r3, r8 - lsls r1, r3, 6 - adds r0, r1 -_080AEFC4: - strh r6, [r0] - adds r0, 0x40 - adds r4, 0x1 - cmp r4, 0x2 - ble _080AEFC4 -_080AEFCE: - adds r5, r2, 0 - cmp r5, 0x3 - ble _080AEF5A - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AEFE0: .4byte 0x0600c026 -_080AEFE4: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80AEF50 - - thumb_func_start sub_80AEFE8 -sub_80AEFE8: @ 80AEFE8 - push {lr} - lsls r1, 24 - lsrs r1, 24 - movs r0, 0 - cmp r1, 0x4 - bhi _080AF02A - lsls r0, r1, 2 - ldr r1, _080AF000 @ =_080AF004 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080AF000: .4byte _080AF004 - .align 2, 0 -_080AF004: - .4byte _080AF018 - .4byte _080AF01C - .4byte _080AF020 - .4byte _080AF024 - .4byte _080AF028 -_080AF018: - movs r0, 0x80 - b _080AF02A -_080AF01C: - movs r0, 0x84 - b _080AF02A -_080AF020: - movs r0, 0x86 - b _080AF02A -_080AF024: - movs r0, 0x88 - b _080AF02A -_080AF028: - movs r0, 0x82 -_080AF02A: - movs r1, 0x90 - lsls r1, 8 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - thumb_func_end sub_80AEFE8 - - thumb_func_start sub_80AF038 -sub_80AF038: @ 80AF038 - push {r4-r6,lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r5, 0x1 - movs r4, 0 - ldr r0, _080AF074 @ =gUnknown_02038696 - adds r0, r3, r0 - ldrb r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - adds r0, 0x2 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r3, 3 - subs r0, r3 - lsls r0, 2 - ldr r1, _080AF078 @ =gSharedMem + 0x19260 - adds r2, r0, r1 - ldr r0, [r2, 0x10] - ldr r1, _080AF07C @ =0x00ff0003 - ands r0, r1 - cmp r0, 0 - bne _080AF06C - ldrb r0, [r2, 0xF] - cmp r0, 0 - beq _080AF080 -_080AF06C: - adds r0, r3, 0 - movs r1, 0 - b _080AF0A6 - .align 2, 0 -_080AF074: .4byte gUnknown_02038696 -_080AF078: .4byte gSharedMem + 0x19260 -_080AF07C: .4byte 0x00ff0003 -_080AF080: - ldrb r1, [r2, 0xC] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080AF090 - adds r0, r3, 0 - movs r1, 0x1 - b _080AF0A6 -_080AF090: - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - bne _080AF0A2 - ldrb r1, [r2, 0xB] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080AF0B0 -_080AF0A2: - adds r0, r3, 0 - movs r1, 0x2 -_080AF0A6: - bl sub_80AEFE8 - lsls r0, 16 - lsrs r4, r0, 16 - b _080AF0B2 -_080AF0B0: - movs r5, 0 -_080AF0B2: - cmp r5, 0 - beq _080AF0EC - lsls r2, r6, 6 - ldr r0, _080AF0DC @ =0x0600c028 - adds r0, r2, r0 - strh r4, [r0] - ldr r0, _080AF0E0 @ =0x0600c02a - adds r0, r2, r0 - adds r1, r4, 0x1 - strh r1, [r0] - ldr r0, _080AF0E4 @ =0x0600c068 - adds r1, r2, r0 - adds r0, r4, 0 - adds r0, 0x10 - strh r0, [r1] - ldr r0, _080AF0E8 @ =0x0600c06a - adds r2, r0 - adds r0, r4, 0 - adds r0, 0x11 - strh r0, [r2] - b _080AF106 - .align 2, 0 -_080AF0DC: .4byte 0x0600c028 -_080AF0E0: .4byte 0x0600c02a -_080AF0E4: .4byte 0x0600c068 -_080AF0E8: .4byte 0x0600c06a -_080AF0EC: - lsls r1, r6, 6 - ldr r0, _080AF110 @ =0x0600c028 - adds r0, r1, r0 - strh r5, [r0] - ldr r0, _080AF114 @ =0x0600c02a - adds r0, r1, r0 - strh r5, [r0] - ldr r2, _080AF118 @ =0x0600c068 - adds r0, r1, r2 - strh r5, [r0] - ldr r0, _080AF11C @ =0x0600c06a - adds r1, r0 - strh r5, [r1] -_080AF106: - adds r0, r5, 0 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080AF110: .4byte 0x0600c028 -_080AF114: .4byte 0x0600c02a -_080AF118: .4byte 0x0600c068 -_080AF11C: .4byte 0x0600c06a - thumb_func_end sub_80AF038 - - thumb_func_start sub_80AF120 -sub_80AF120: @ 80AF120 - push {r4,lr} - movs r4, 0 -_080AF124: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80AF038 - adds r4, 0x1 - cmp r4, 0x3 - ble _080AF124 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AF120 - - thumb_func_start sub_80AF138 -sub_80AF138: @ 80AF138 - push {lr} - sub sp, 0x8 - ldr r0, _080AF158 @ =gUnknown_03004210 - movs r1, 0x11 - str r1, [sp] - movs r1, 0x12 - str r1, [sp, 0x4] - movs r1, 0 - movs r2, 0x1 - movs r3, 0xF - bl FillWindowRect_DefaultPalette - add sp, 0x8 - pop {r0} - bx r0 - .align 2, 0 -_080AF158: .4byte gUnknown_03004210 - thumb_func_end sub_80AF138 - - thumb_func_start sub_80AF15C -sub_80AF15C: @ 80AF15C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - adds r0, r4, 0 - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - beq _080AF174 - movs r0, 0 - b _080AF1AA -_080AF174: - ldr r0, _080AF190 @ =gContestPlayerMonIndex - ldrb r0, [r0] - cmp r4, r0 - beq _080AF198 - adds r0, r4, 0 - bl sub_81288F4 - bl sub_8128944 - lsls r0, 24 - ldr r2, _080AF194 @ =gContestMons - lsrs r0, 23 - lsls r1, r4, 6 - b _080AF1A2 - .align 2, 0 -_080AF190: .4byte gContestPlayerMonIndex -_080AF194: .4byte gContestMons -_080AF198: - ldr r2, _080AF1B0 @ =gContestMons - ldr r0, _080AF1B4 @ =gSharedMem + 0x19204 - ldrb r0, [r0] - lsls r0, 1 - lsls r1, r5, 6 -_080AF1A2: - adds r0, r1 - adds r2, 0x1E - adds r0, r2 - ldrh r0, [r0] -_080AF1AA: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AF1B0: .4byte gContestMons -_080AF1B4: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80AF15C - - thumb_func_start sub_80AF1B8 -sub_80AF1B8: @ 80AF1B8 - push {r4,lr} - movs r4, 0 -_080AF1BC: - adds r0, r4, 0 - bl sub_80AF15C - lsls r1, r4, 3 - subs r1, r4 - lsls r1, 2 - ldr r2, _080AF1E0 @ =gSharedMem + 0x19260 - adds r1, r2 - strh r0, [r1, 0x6] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF1BC - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AF1E0: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80AF1B8 - - thumb_func_start sub_80AF1E4 -sub_80AF1E4: @ 80AF1E4 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 24 - cmp r1, 0 - bne _080AF1FC - adds r0, r5, 0 - adds r0, 0xA - lsls r0, 24 - lsrs r3, r0, 24 - b _080AF1FE -_080AF1FC: - movs r3, 0xE -_080AF1FE: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - ldr r1, _080AF21C @ =gSharedMem + 0x19260 - adds r1, r0, r1 - ldrh r0, [r1, 0x6] - cmp r0, 0 - bne _080AF228 - ldr r0, _080AF220 @ =gDisplayedStringBattle - ldr r1, _080AF224 @ =gUnknownText_MissedTurn - adds r2, r3, 0 - bl sub_80AE598 - b _080AF23A - .align 2, 0 -_080AF21C: .4byte gSharedMem + 0x19260 -_080AF220: .4byte gDisplayedStringBattle -_080AF224: .4byte gUnknownText_MissedTurn -_080AF228: - ldr r0, _080AF270 @ =gDisplayedStringBattle - ldrh r2, [r1, 0x6] - movs r1, 0xD - muls r1, r2 - ldr r2, _080AF274 @ =gMoveNames - adds r1, r2 - adds r2, r3, 0 - bl sub_80AE598 -_080AF23A: - adds r0, r5, 0 - bl sub_80AF2A0 - ldr r0, _080AF278 @ =gUnknown_03004210 - ldr r1, _080AF270 @ =gDisplayedStringBattle - lsls r2, r5, 2 - adds r2, r5 - lsls r2, 18 - movs r3, 0xAE - lsls r3, 18 - adds r2, r3 - lsrs r2, 16 - ldr r4, _080AF27C @ =gUnknown_083CA318 - lsls r5, 1 - adds r3, r5, r4 - ldrb r3, [r3] - adds r4, 0x1 - adds r5, r4 - ldrb r4, [r5] - str r4, [sp] - bl sub_8003460 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AF270: .4byte gDisplayedStringBattle -_080AF274: .4byte gMoveNames -_080AF278: .4byte gUnknown_03004210 -_080AF27C: .4byte gUnknown_083CA318 - thumb_func_end sub_80AF1E4 - - thumb_func_start unref_sub_80AF280 -unref_sub_80AF280: @ 80AF280 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 -_080AF288: - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80AF1E4 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF288 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end unref_sub_80AF280 - - thumb_func_start sub_80AF2A0 -sub_80AF2A0: @ 80AF2A0 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - ldr r4, _080AF2D8 @ =gUnknown_03004210 - ldr r1, _080AF2DC @ =gUnknown_083CA318 - lsrs r0, 23 - adds r2, r0, r1 - ldrb r2, [r2] - adds r1, 0x1 - adds r0, r1 - ldrb r3, [r0] - adds r0, r2, 0x7 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - adds r0, r4, 0 - movs r1, 0 - bl FillWindowRect_DefaultPalette - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AF2D8: .4byte gUnknown_03004210 -_080AF2DC: .4byte gUnknown_083CA318 - thumb_func_end sub_80AF2A0 - - thumb_func_start unref_sub_80AF2E0 -unref_sub_80AF2E0: @ 80AF2E0 - push {r4,lr} - movs r4, 0 -_080AF2E4: - adds r0, r4, 0 - bl sub_80AF2A0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF2E4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end unref_sub_80AF2E0 - - thumb_func_start sub_80AF2FC -sub_80AF2FC: @ 80AF2FC - push {r4-r7,lr} - sub sp, 0x8 - movs r4, 0 - ldr r2, _080AF398 @ =gSharedMem + 0x19260 -_080AF304: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x2] - ldrh r3, [r0, 0x4] - adds r1, r3 - strh r1, [r0, 0x4] - lsls r0, r4, 1 - add r0, sp - strh r1, [r0] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF304 - movs r4, 0 -_080AF326: - movs r2, 0x3 - cmp r2, r4 - bls _080AF354 -_080AF32C: - subs r5, r2, 0x1 - lsls r0, r5, 1 - mov r7, sp - adds r3, r7, r0 - lsls r0, r2, 1 - adds r2, r7, r0 - ldrh r6, [r3] - movs r0, 0 - ldrsh r1, [r3, r0] - movs r7, 0 - ldrsh r0, [r2, r7] - cmp r1, r0 - bge _080AF34C - ldrh r0, [r2] - strh r6, [r2] - strh r0, [r3] -_080AF34C: - lsls r0, r5, 24 - lsrs r2, r0, 24 - cmp r2, r4 - bhi _080AF32C -_080AF354: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _080AF326 - movs r4, 0 - ldr r0, _080AF398 @ =gSharedMem + 0x19260 - mov r12, r0 - movs r7, 0x4 - negs r7, r7 - movs r6, 0x3 -_080AF36A: - movs r2, 0 - lsls r0, r4, 3 - adds r5, r4, 0x1 - subs r0, r4 - lsls r0, 2 - mov r1, r12 - adds r3, r0, r1 - movs r4, 0x4 - ldrsh r1, [r3, r4] -_080AF37C: - lsls r0, r2, 1 - add r0, sp - movs r4, 0 - ldrsh r0, [r0, r4] - cmp r1, r0 - bne _080AF39C - ands r2, r6 - ldrb r1, [r3, 0xB] - adds r0, r7, 0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3, 0xB] - b _080AF3A6 - .align 2, 0 -_080AF398: .4byte gSharedMem + 0x19260 -_080AF39C: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080AF37C -_080AF3A6: - lsls r0, r5, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF36A - movs r0, 0x1 - bl sub_80B0F28 - bl sub_80B159C - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80AF2FC - - thumb_func_start sub_80AF3C0 -sub_80AF3C0: @ 80AF3C0 - push {lr} - ldr r2, _080AF3D0 @ =gSharedMem + 0x19260 - adds r3, r2, 0 -_080AF3C6: - ldrh r0, [r2, 0x6] - cmp r0, 0 - bne _080AF3D4 - movs r1, 0x5 - b _080AF3F2 - .align 2, 0 -_080AF3D0: .4byte gSharedMem + 0x19260 -_080AF3D4: - movs r1, 0x2 - ldrsh r0, [r2, r1] - movs r1, 0 - cmp r0, 0 - ble _080AF3F2 - movs r1, 0x1 - cmp r0, 0x1D - ble _080AF3F2 - movs r1, 0x2 - cmp r0, 0x3B - ble _080AF3F2 - movs r1, 0x4 - cmp r0, 0x4F - bgt _080AF3F2 - movs r1, 0x3 -_080AF3F2: - strb r1, [r2, 0x1A] - adds r2, 0x1C - adds r0, r3, 0 - adds r0, 0x54 - cmp r2, r0 - ble _080AF3C6 - pop {r0} - bx r0 - thumb_func_end sub_80AF3C0 - - thumb_func_start sub_80AF404 -sub_80AF404: @ 80AF404 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080AF42C @ =gSharedMem + 0x19260 - adds r2, r1, r0 - ldrb r1, [r2, 0xC] - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - bne _080AF428 - ldrb r1, [r2, 0xB] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080AF430 -_080AF428: - movs r0, 0 - b _080AF432 - .align 2, 0 -_080AF42C: .4byte gSharedMem + 0x19260 -_080AF430: - movs r0, 0x1 -_080AF432: - pop {r1} - bx r1 - thumb_func_end sub_80AF404 - - thumb_func_start sub_80AF438 -sub_80AF438: @ 80AF438 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - ldr r0, _080AF594 @ =gSharedMem + 0x19260 - mov r10, r0 - movs r1, 0 - mov r12, r1 - movs r0, 0x7 - negs r0, r0 - mov r9, r0 - movs r1, 0x2 - negs r1, r1 - mov r8, r1 -_080AF458: - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - mov r1, r10 - adds r3, r0, r1 - movs r0, 0 - strh r0, [r3, 0x2] - strh r0, [r3] - mov r0, r12 - strb r0, [r3, 0x12] - ldrb r2, [r3, 0xC] - movs r0, 0x6 - ands r0, r2 - cmp r0, 0 - beq _080AF48A - lsls r0, r2, 29 - lsrs r0, 30 - subs r0, 0x1 - movs r1, 0x3 - ands r0, r1 - lsls r0, 1 - mov r1, r9 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0xC] -_080AF48A: - mov r1, r12 - strb r1, [r3, 0xE] - ldrb r0, [r3, 0x10] - mov r1, r8 - ands r1, r0 - mov r0, r12 - strb r0, [r3, 0xF] - movs r0, 0x3 - negs r0, r0 - ands r1, r0 - movs r6, 0x5 - negs r6, r6 - ands r1, r6 - movs r7, 0x9 - negs r7, r7 - ands r1, r7 - ldrb r0, [r3, 0xC] - mov r4, r8 - ands r4, r0 - strb r4, [r3, 0xC] - movs r0, 0xFF - strb r0, [r3, 0x13] - movs r0, 0x1 - negs r0, r0 - strb r0, [r3, 0x14] - subs r0, 0x30 - ands r1, r0 - strb r1, [r3, 0x10] - ldrb r2, [r3, 0x15] - lsls r1, r2, 31 - lsrs r1, 31 - lsls r1, 2 - adds r0, r6, 0 - ands r0, r2 - orrs r0, r1 - mov r1, r8 - ands r0, r1 - strb r0, [r3, 0x15] - ldrb r0, [r3, 0x11] - movs r2, 0x4 - negs r2, r2 - ands r2, r0 - movs r0, 0x21 - negs r0, r0 - ands r2, r0 - strb r2, [r3, 0x11] - movs r0, 0x4 - ands r0, r2 - cmp r0, 0 - beq _080AF500 - adds r0, r4, 0 - mov r1, r9 - ands r0, r1 - movs r1, 0x2 - orrs r0, r1 - strb r0, [r3, 0xC] - adds r0, r2, 0 - ands r0, r6 - strb r0, [r3, 0x11] -_080AF500: - ldrb r2, [r3, 0x11] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _080AF518 - ldrb r0, [r3, 0xB] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r3, 0xB] - adds r0, r7, 0 - ands r0, r2 - strb r0, [r3, 0x11] -_080AF518: - ldrb r0, [r3, 0x11] - movs r1, 0x11 - negs r1, r1 - ands r1, r0 - strb r1, [r3, 0x11] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080AF458 - movs r5, 0 - mov r6, r10 - mov r9, r5 - adds r7, r6, 0 - subs r7, 0x5C - movs r0, 0x18 - negs r0, r0 - adds r0, r6 - mov r8, r0 -_080AF53E: - lsls r4, r5, 3 - subs r4, r5 - lsls r4, 2 - adds r4, r6 - ldrh r2, [r4, 0x6] - strh r2, [r4, 0x8] - lsls r1, r5, 1 - ldrb r0, [r7, 0x1] - lsls r0, 3 - adds r1, r0 - adds r0, r6, 0 - subs r0, 0x40 - adds r0, r1 - strh r2, [r0] - ldrh r0, [r4, 0x6] - bl contest_get_move_excitement - ldrb r1, [r7, 0x1] - lsls r1, 2 - adds r1, r5, r1 - add r1, r8 - strb r0, [r1] - mov r1, r9 - strh r1, [r4, 0x6] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080AF53E - ldr r2, _080AF598 @ =gSharedMem + 0x19328 - ldrb r1, [r2, 0x1] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x1] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AF594: .4byte gSharedMem + 0x19260 -_080AF598: .4byte gSharedMem + 0x19328 - thumb_func_end sub_80AF438 - - thumb_func_start sub_80AF59C -sub_80AF59C: @ 80AF59C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080AF5C4 @ =gSharedMem + 0x19260 - adds r2, r1, r0 - ldrb r1, [r2, 0xC] - movs r0, 0x6 - ands r0, r1 - cmp r0, 0 - bne _080AF5C0 - ldrb r1, [r2, 0xB] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080AF5C8 -_080AF5C0: - movs r0, 0x1 - b _080AF5CA - .align 2, 0 -_080AF5C4: .4byte gSharedMem + 0x19260 -_080AF5C8: - movs r0, 0 -_080AF5CA: - pop {r1} - bx r1 - thumb_func_end sub_80AF59C - - thumb_func_start unref_sub_80AF5D0 -unref_sub_80AF5D0: @ 80AF5D0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - ldr r1, _080AF5E8 @ =gContestPlayerMonIndex - ldrb r1, [r1] - cmp r0, r1 - beq _080AF600 -_080AF5E2: - movs r0, 0x1 - b _080AF626 - .align 2, 0 -_080AF5E8: .4byte gContestPlayerMonIndex -_080AF5EC: - ldrb r0, [r4, 0x6] - movs r1, 0x1 - b _080AF5F6 -_080AF5F2: - ldrb r0, [r4, 0x6] - movs r1, 0x2 -_080AF5F6: - orrs r0, r1 - strb r0, [r4, 0x6] - b _080AF5E2 -_080AF5FC: - strb r3, [r2] - b _080AF5E2 -_080AF600: - movs r0, 0 - ldr r4, _080AF62C @ =gSharedMem + 0x19204 - adds r5, r4, 0x2 -_080AF606: - cmp r3, 0x3 - beq _080AF5EC - cmp r3, 0x4 - beq _080AF5F2 - adds r2, r0, r5 - ldrb r1, [r2] - cmp r1, r3 - beq _080AF5E2 - cmp r1, 0xFF - beq _080AF5FC - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _080AF606 - movs r0, 0 -_080AF626: - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080AF62C: .4byte gSharedMem + 0x19204 - thumb_func_end unref_sub_80AF5D0 - - thumb_func_start sub_80AF630 -sub_80AF630: @ 80AF630 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_80AF688 - ldr r1, _080AF65C @ =gUnknown_02038688 - lsls r4, 1 - adds r1, r4, r1 - strh r0, [r1] - ldr r2, _080AF660 @ =gUnknown_02038678 - adds r2, r4, r2 - ldr r1, _080AF664 @ =gUnknown_02038670 - adds r4, r1 - ldrh r4, [r4] - adds r0, r4 - strh r0, [r2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080AF65C: .4byte gUnknown_02038688 -_080AF660: .4byte gUnknown_02038678 -_080AF664: .4byte gUnknown_02038670 - thumb_func_end sub_80AF630 - - thumb_func_start sub_80AF668 -sub_80AF668: @ 80AF668 - push {r4,lr} - movs r4, 0 -_080AF66C: - adds r0, r4, 0 - bl sub_80AF630 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080AF66C - bl sub_80AF6A0 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AF668 - - thumb_func_start sub_80AF688 -sub_80AF688: @ 80AF688 - lsls r0, 24 - ldr r1, _080AF69C @ =gUnknown_02038680 - lsrs r0, 23 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - lsls r0, 17 - asrs r0, 16 - bx lr - .align 2, 0 -_080AF69C: .4byte gUnknown_02038680 - thumb_func_end sub_80AF688 - - thumb_func_start sub_80AF6A0 -sub_80AF6A0: @ 80AF6A0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x70 - mov r0, sp - movs r1, 0 - movs r2, 0x8 - bl memset - movs r0, 0 - mov r9, r0 - mov r1, sp - adds r1, 0x8 - str r1, [sp, 0x64] - mov r3, sp - adds r3, 0xC - str r3, [sp, 0x68] - mov r6, sp - adds r6, 0x14 - str r6, [sp, 0x6C] - mov r4, sp -_080AF6CE: - bl Random - strh r0, [r4] - movs r2, 0 - cmp r2, r9 - bge _080AF70C - mov r1, sp - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1] - cmp r0, r1 - bne _080AF6F0 - subs r4, 0x2 - movs r7, 0x1 - negs r7, r7 - add r9, r7 - b _080AF70C -_080AF6F0: - adds r2, 0x1 - cmp r2, r9 - bge _080AF70C - lsls r0, r2, 1 - mov r3, sp - adds r1, r3, r0 - ldrh r0, [r4] - ldrh r1, [r1] - cmp r0, r1 - bne _080AF6F0 - subs r4, 0x2 - movs r6, 0x1 - negs r6, r6 - add r9, r6 -_080AF70C: - adds r4, 0x2 - movs r7, 0x1 - add r9, r7 - mov r0, r9 - cmp r0, 0x3 - ble _080AF6CE - movs r1, 0 - mov r9, r1 - mov r4, sp - ldr r6, _080AF81C @ =gUnknown_02038678 - ldr r2, [sp, 0x64] - ldr r5, _080AF820 @ =gUnknown_02038670 - ldr r3, [sp, 0x68] -_080AF726: - mov r7, r9 - lsls r1, r7, 4 - movs r7, 0 - ldrsh r0, [r6, r7] - str r0, [r2] - movs r7, 0 - ldrsh r0, [r5, r7] - str r0, [r3] - ldrh r0, [r4] - str r0, [r2, 0x8] - ldr r0, [sp, 0x6C] - adds r1, r0, r1 - mov r7, r9 - str r7, [r1] - adds r4, 0x2 - adds r6, 0x2 - adds r2, 0x10 - adds r5, 0x2 - adds r3, 0x10 - movs r0, 0x1 - add r9, r0 - mov r1, r9 - cmp r1, 0x3 - ble _080AF726 - movs r3, 0 - mov r9, r3 -_080AF75A: - movs r4, 0x3 - cmp r4, r9 - ble _080AF7E4 - add r7, sp, 0x48 - ldr r6, [sp, 0x68] - str r6, [sp, 0x58] - ldr r0, [sp, 0x64] - adds r0, 0x8 - str r0, [sp, 0x5C] - ldr r1, [sp, 0x6C] - str r1, [sp, 0x60] -_080AF770: - subs r3, r4, 0x1 - mov r10, r3 - mov r0, r10 - adds r1, r4, 0 - ldr r2, [sp, 0x64] - bl sub_80AF828 - lsls r0, 24 - cmp r0, 0 - beq _080AF7DE - mov r6, r10 - lsls r2, r6, 4 - ldr r0, [sp, 0x64] - adds r3, r0, r2 - ldr r0, [r3] - str r0, [sp, 0x48] - ldr r1, [sp, 0x58] - adds r6, r1, r2 - ldr r0, [r6] - str r0, [r7, 0x4] - ldr r0, [sp, 0x5C] - adds r0, r2 - mov r8, r0 - ldr r0, [r0] - str r0, [r7, 0x8] - ldr r1, [sp, 0x60] - adds r2, r1, r2 - ldr r0, [r2] - str r0, [r7, 0xC] - lsls r1, r4, 4 - ldr r0, [sp, 0x64] - adds r5, r0, r1 - ldr r0, [r5] - str r0, [r3] - ldr r3, [sp, 0x58] - adds r4, r3, r1 - ldr r0, [r4] - str r0, [r6] - ldr r6, [sp, 0x5C] - adds r3, r6, r1 - ldr r0, [r3] - mov r6, r8 - str r0, [r6] - ldr r0, [sp, 0x60] - adds r1, r0, r1 - ldr r0, [r1] - str r0, [r2] - ldr r0, [sp, 0x48] - str r0, [r5] - ldr r0, [r7, 0x4] - str r0, [r4] - ldr r0, [r7, 0x8] - str r0, [r3] - ldr r0, [r7, 0xC] - str r0, [r1] -_080AF7DE: - mov r4, r10 - cmp r4, r9 - bgt _080AF770 -_080AF7E4: - movs r1, 0x1 - add r9, r1 - mov r3, r9 - cmp r3, 0x2 - ble _080AF75A - movs r6, 0 - mov r9, r6 - ldr r2, _080AF824 @ =gUnknown_02038690 - ldr r1, [sp, 0x6C] -_080AF7F6: - ldr r0, [r1] - adds r0, r2 - mov r7, r9 - strb r7, [r0] - adds r1, 0x10 - movs r0, 0x1 - add r9, r0 - mov r3, r9 - cmp r3, 0x3 - ble _080AF7F6 - add sp, 0x70 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AF81C: .4byte gUnknown_02038678 -_080AF820: .4byte gUnknown_02038670 -_080AF824: .4byte gUnknown_02038690 - thumb_func_end sub_80AF6A0 - - thumb_func_start sub_80AF828 -sub_80AF828: @ 80AF828 - push {lr} - lsls r0, 4 - adds r0, r2 - lsls r1, 4 - adds r3, r1, r2 - ldr r2, [r0] - ldr r1, [r3] - cmp r2, r1 - blt _080AF858 - cmp r2, r1 - bgt _080AF84A - ldr r2, [r0, 0x4] - ldr r1, [r3, 0x4] - cmp r2, r1 - blt _080AF858 - cmp r2, r1 - ble _080AF84E -_080AF84A: - movs r2, 0 - b _080AF85A -_080AF84E: - ldr r1, [r0, 0x8] - ldr r0, [r3, 0x8] - movs r2, 0 - cmp r1, r0 - bge _080AF85A -_080AF858: - movs r2, 0x1 -_080AF85A: - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end sub_80AF828 - - thumb_func_start sub_80AF860 -sub_80AF860: @ 80AF860 - push {lr} - sub sp, 0x4 - ldr r0, _080AF88C @ =gUnknown_030042A0 - movs r1, 0 - strh r1, [r0] - ldr r0, _080AF890 @ =gUnknown_03004280 - strh r1, [r0] - bl sub_80AF138 - ldr r0, _080AF894 @ =gMenuWindow - ldr r1, _080AF898 @ =gUnknownText_LinkStandbyAndWinner - movs r2, 0xC2 - lsls r2, 2 - movs r3, 0xF - str r3, [sp] - movs r3, 0x1 - bl sub_8003460 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080AF88C: .4byte gUnknown_030042A0 -_080AF890: .4byte gUnknown_03004280 -_080AF894: .4byte gMenuWindow -_080AF898: .4byte gUnknownText_LinkStandbyAndWinner - thumb_func_end sub_80AF860 - - thumb_func_start unref_sub_80AF89C -unref_sub_80AF89C: @ 80AF89C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - adds r6, r1, 0 - mov r8, r2 - lsls r4, 16 - lsrs r4, 16 - lsls r6, 16 - lsrs r6, 16 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r3, 24 - lsrs r3, 24 - mov r9, r3 - lsls r2, r3, 2 - ldr r0, _080AF940 @ =gSharedMem + 0x19338 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r0, _080AF944 @ =sub_80AF94C - movs r1, 0x14 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - adds r7, r0, 0 - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - bl sub_80AFB74 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - lsls r6, 16 - asrs r6, 16 - adds r4, r6 - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - bl sub_80AFB74 - adds r4, r0, 0 - subs r4, r5 - lsls r4, 24 - lsrs r4, 24 - mov r0, r9 - bl sub_80AFB40 - lsls r0, 16 - lsrs r0, 16 - ldr r2, _080AF948 @ =gTasks - lsls r1, r7, 2 - adds r1, r7 - lsls r1, 3 - adds r1, r2 - strh r5, [r1, 0x8] - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0xA] - add r0, r8 - strh r0, [r1, 0xC] - mov r0, r9 - strh r0, [r1, 0xE] - cmp r6, 0 - bge _080AF932 - mov r0, r9 - bl nullsub_19 -_080AF932: - adds r0, r7, 0 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AF940: .4byte gSharedMem + 0x19338 -_080AF944: .4byte sub_80AF94C -_080AF948: .4byte gTasks - thumb_func_end unref_sub_80AF89C - - thumb_func_start sub_80AF94C -sub_80AF94C: @ 80AF94C - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080AF988 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r2, r0, r1 - ldrb r5, [r2, 0xE] - ldrh r3, [r2, 0xA] - movs r0, 0xA - ldrsh r1, [r2, r0] - cmp r1, 0 - bne _080AF990 - adds r0, r5, 0 - bl nullsub_19 - adds r0, r4, 0 - bl DestroyTask - lsls r1, r5, 2 - ldr r0, _080AF98C @ =gSharedMem + 0x19338 - adds r1, r0 - ldrb r2, [r1, 0x2] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x2] - b _080AFA56 - .align 2, 0 -_080AF988: .4byte gTasks -_080AF98C: .4byte gSharedMem + 0x19338 -_080AF990: - ldrh r0, [r2, 0x1C] - adds r0, 0x1 - strh r0, [r2, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1D - ble _080AFA56 - movs r0, 0 - strh r0, [r2, 0x1C] - cmp r1, 0 - bge _080AF9BC - ldrh r0, [r2, 0x8] - subs r1, r0, 0x1 - strh r1, [r2, 0x8] - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r3, 0x1 - strh r0, [r2, 0xA] - movs r0, 0x16 - bl PlaySE - b _080AF9D0 -_080AF9BC: - ldrh r0, [r2, 0x8] - adds r0, 0x1 - strh r0, [r2, 0x8] - lsls r0, 24 - lsrs r6, r0, 24 - subs r0, r3, 0x1 - strh r0, [r2, 0xA] - movs r0, 0x15 - bl PlaySE -_080AF9D0: - ldr r3, _080AFA00 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r2, r0, 3 - adds r0, r2, r3 - ldrh r1, [r0, 0xC] - ldr r0, _080AFA04 @ =0x0000ffff - cmp r1, r0 - beq _080AFA38 - adds r0, r3, r2 - adds r0, 0xC - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 5 - adds r1, 0x93 - adds r1, r6, r1 - lsls r1, 1 - ldr r2, _080AFA08 @ =0x0600c000 - adds r1, r2 - movs r2, 0x2 - bl RequestSpriteCopy - b _080AFA56 - .align 2, 0 -_080AFA00: .4byte gTasks -_080AFA04: .4byte 0x0000ffff -_080AFA08: .4byte 0x0600c000 -_080AFA0C: - adds r0, r2, r3 - lsls r1, 1 - adds r1, 0xE - adds r0, r1 - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 5 - adds r1, 0x93 - adds r1, r6, r1 - lsls r1, 1 - ldr r7, _080AFA34 @ =0x0600c000 - adds r1, r7 - movs r2, 0x2 - bl RequestSpriteCopy - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080AFA56 - .align 2, 0 -_080AFA34: .4byte 0x0600c000 -_080AFA38: - movs r1, 0 - adds r3, 0x8 -_080AFA3C: - adds r0, r1, 0x4 - lsls r0, 1 - adds r0, r2 - adds r4, r0, r3 - movs r7, 0 - ldrsh r0, [r4, r7] - cmp r0, 0 - blt _080AFA0C - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x2 - bls _080AFA3C -_080AFA56: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80AF94C - - thumb_func_start sub_80AFA5C -sub_80AFA5C: @ 80AFA5C - push {r4-r7,lr} - sub sp, 0x4 - movs r3, 0 - ldr r0, _080AFAAC @ =0x0600c000 - mov r12, r0 - mov r4, sp - movs r6, 0 - ldr r2, _080AFAB0 @ =0x040000d4 - ldr r5, _080AFAB4 @ =0x81000008 -_080AFA6E: - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 5 - adds r0, r1, 0 - adds r0, 0x56 - lsls r0, 1 - add r0, r12 - strh r6, [r4] - mov r7, sp - str r7, [r2] - str r0, [r2, 0x4] - str r5, [r2, 0x8] - ldr r0, [r2, 0x8] - adds r1, 0x76 - lsls r1, 1 - add r1, r12 - strh r6, [r4] - str r7, [r2] - str r1, [r2, 0x4] - str r5, [r2, 0x8] - ldr r0, [r2, 0x8] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3 - bls _080AFA6E - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AFAAC: .4byte 0x0600c000 -_080AFAB0: .4byte 0x040000d4 -_080AFAB4: .4byte 0x81000008 - thumb_func_end sub_80AFA5C - - thumb_func_start unref_sub_80AFAB8 -unref_sub_80AFAB8: @ 80AFAB8 - push {r4-r6,lr} - sub sp, 0x14 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r0, 16 - asrs r0, 16 - bl sub_80AFB74 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, _080AFAF4 @ =0x000050a2 - cmp r4, 0 - beq _080AFAE0 - ldr r2, _080AFAF8 @ =0x000060a2 - cmp r4, 0x1 - beq _080AFAE0 - ldr r2, _080AFAFC @ =0x000080a2 - cmp r4, 0x2 - bne _080AFAE0 - ldr r2, _080AFB00 @ =0x000070a2 -_080AFAE0: - movs r1, 0 - lsls r3, r4, 2 - movs r6, 0 -_080AFAE6: - cmp r1, r5 - bcs _080AFB04 - lsls r0, r1, 1 - add r0, sp - strh r2, [r0] - b _080AFB0A - .align 2, 0 -_080AFAF4: .4byte 0x000050a2 -_080AFAF8: .4byte 0x000060a2 -_080AFAFC: .4byte 0x000080a2 -_080AFB00: .4byte 0x000070a2 -_080AFB04: - lsls r0, r1, 1 - add r0, sp - strh r6, [r0] -_080AFB0A: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x8 - bls _080AFAE6 - adds r0, r3, r4 - lsls r0, 6 - ldr r1, _080AFB34 @ =0x0600c128 - adds r0, r1 - ldr r1, _080AFB38 @ =0x040000d4 - mov r2, sp - str r2, [r1] - str r0, [r1, 0x4] - ldr r0, _080AFB3C @ =0x80000009 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - add sp, 0x14 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AFB34: .4byte 0x0600c128 -_080AFB38: .4byte 0x040000d4 -_080AFB3C: .4byte 0x80000009 - thumb_func_end unref_sub_80AFAB8 - - thumb_func_start sub_80AFB40 -sub_80AFB40: @ 80AFB40 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080AFB64 @ =0x00005011 - cmp r0, 0 - beq _080AFB5A - ldr r1, _080AFB68 @ =0x00006011 - cmp r0, 0x1 - beq _080AFB5A - ldr r1, _080AFB6C @ =0x00008011 - cmp r0, 0x2 - bne _080AFB5A - ldr r1, _080AFB70 @ =0x00007011 -_080AFB5A: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_080AFB64: .4byte 0x00005011 -_080AFB68: .4byte 0x00006011 -_080AFB6C: .4byte 0x00008011 -_080AFB70: .4byte 0x00007011 - thumb_func_end sub_80AFB40 - - thumb_func_start sub_80AFB74 -sub_80AFB74: @ 80AFB74 - push {lr} - lsls r0, 16 - asrs r0, 16 - movs r1, 0xA - bl __divsi3 - lsls r0, 24 - lsrs r1, r0, 24 - asrs r2, r0, 24 - cmp r2, 0x10 - ble _080AFB8E - movs r1, 0x10 - b _080AFB98 -_080AFB8E: - movs r0, 0x10 - negs r0, r0 - cmp r2, r0 - bge _080AFB98 - movs r1, 0xF0 -_080AFB98: - lsls r0, r1, 24 - asrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80AFB74 - - thumb_func_start sub_80AFBA0 -sub_80AFBA0: @ 80AFBA0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - lsls r1, 16 - lsrs r1, 16 - mov r8, r1 - lsls r2, 24 - lsrs r7, r2, 24 - lsls r2, r7, 2 - ldr r0, _080AFC30 @ =gSharedMem + 0x19338 - adds r2, r0 - ldrb r0, [r2, 0x2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x2] - ldr r0, _080AFC34 @ =sub_80AFC74 - movs r1, 0x14 - bl CreateTask - lsls r0, 24 - lsrs r6, r0, 24 - lsls r5, 16 - asrs r5, 16 - adds r0, r5, 0 - bl sub_80AFB74 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r1, r8 - lsls r0, r1, 16 - asrs r0, 16 - adds r5, r0 - lsls r5, 16 - asrs r5, 16 - adds r0, r5, 0 - bl sub_80AFB74 - lsls r4, 24 - asrs r4, 24 - subs r0, r4 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r7, 0 - bl sub_80AFB40 - ldr r2, _080AFC38 @ =gTasks - lsls r3, r6, 2 - adds r0, r3, r6 - lsls r0, 3 - adds r1, r0, r2 - adds r0, r4, 0 - cmp r4, 0 - bge _080AFC14 - negs r0, r4 -_080AFC14: - strh r0, [r1, 0x8] - lsls r0, r5, 24 - asrs r0, 24 - strh r0, [r1, 0xA] - cmp r4, 0 - bgt _080AFC28 - cmp r4, 0 - bne _080AFC3C - cmp r0, 0 - ble _080AFC3C -_080AFC28: - movs r0, 0x1 - strh r0, [r1, 0xC] - b _080AFC4A - .align 2, 0 -_080AFC30: .4byte gSharedMem + 0x19338 -_080AFC34: .4byte sub_80AFC74 -_080AFC38: .4byte gTasks -_080AFC3C: - ldr r2, _080AFC6C @ =gTasks - lsls r3, r6, 2 - adds r0, r3, r6 - lsls r0, 3 - adds r0, r2 - ldr r1, _080AFC70 @ =0x0000ffff - strh r1, [r0, 0xC] -_080AFC4A: - adds r0, r3, r6 - lsls r0, 3 - adds r0, r2 - strh r7, [r0, 0xE] - mov r1, r8 - lsls r0, r1, 16 - cmp r0, 0 - bge _080AFC60 - adds r0, r7, 0 - bl nullsub_19 -_080AFC60: - adds r0, r6, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080AFC6C: .4byte gTasks -_080AFC70: .4byte 0x0000ffff - thumb_func_end sub_80AFBA0 - - thumb_func_start sub_80AFC74 -sub_80AFC74: @ 80AFC74 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r1, _080AFCD4 @ =gTasks - lsls r0, 2 - add r0, r8 - lsls r0, 3 - adds r4, r0, r1 - ldrb r7, [r4, 0xE] - ldrh r3, [r4, 0x8] - ldrh r1, [r4, 0xA] - ldrh r0, [r4, 0x1C] - adds r0, 0x1 - strh r0, [r4, 0x1C] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xE - bgt _080AFCA6 - b _080AFE1C -_080AFCA6: - movs r0, 0 - strh r0, [r4, 0x1C] - ldrh r2, [r4, 0xA] - movs r5, 0xA - ldrsh r0, [r4, r5] - cmp r0, 0 - bne _080AFCDC - adds r0, r7, 0 - bl nullsub_19 - mov r0, r8 - bl DestroyTask - lsls r1, r7, 2 - ldr r0, _080AFCD8 @ =gSharedMem + 0x19338 - adds r1, r0 - ldrb r2, [r1, 0x2] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x2] - b _080AFE1C - .align 2, 0 -_080AFCD4: .4byte gTasks -_080AFCD8: .4byte gSharedMem + 0x19338 -_080AFCDC: - cmp r3, 0 - bne _080AFD28 - lsls r0, r1, 16 - mov r9, r0 - cmp r0, 0 - bge _080AFCFA - adds r0, r7, 0 - bl sub_80AFB40 - adds r0, 0x2 - lsls r0, 16 - lsrs r6, r0, 16 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - b _080AFD08 -_080AFCFA: - adds r0, r7, 0 - bl sub_80AFB40 - lsls r0, 16 - lsrs r6, r0, 16 - ldrh r0, [r4, 0xA] - subs r0, 0x1 -_080AFD08: - strh r0, [r4, 0xA] - ldr r1, _080AFD24 @ =gTasks - mov r2, r8 - lsls r0, r2, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x8] - adds r2, r1, 0x1 - strh r2, [r0, 0x8] - lsls r1, 24 - lsrs r5, r1, 24 - b _080AFD94 - .align 2, 0 -_080AFD24: .4byte gTasks -_080AFD28: - movs r3, 0xC - ldrsh r0, [r4, r3] - cmp r0, 0 - bge _080AFD62 - lsls r0, r1, 16 - mov r9, r0 - cmp r0, 0 - bge _080AFD50 - ldrh r0, [r4, 0x8] - adds r1, r0, 0x1 - strh r1, [r4, 0x8] - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r2, 0x1 - strh r0, [r4, 0xA] - adds r0, r7, 0 - bl sub_80AFB40 - adds r0, 0x2 - b _080AFD90 -_080AFD50: - ldrh r0, [r4, 0x8] - subs r0, 0x1 - strh r0, [r4, 0x8] - lsls r0, 24 - lsrs r5, r0, 24 - movs r6, 0 - subs r0, r2, 0x1 - strh r0, [r4, 0xA] - b _080AFD94 -_080AFD62: - lsls r0, r1, 16 - mov r9, r0 - cmp r0, 0 - bge _080AFD7C - ldrh r0, [r4, 0x8] - subs r0, 0x1 - strh r0, [r4, 0x8] - lsls r0, 24 - lsrs r5, r0, 24 - movs r6, 0 - adds r0, r2, 0x1 - strh r0, [r4, 0xA] - b _080AFD94 -_080AFD7C: - ldrh r0, [r4, 0x8] - adds r1, r0, 0x1 - strh r1, [r4, 0x8] - lsls r0, 24 - lsrs r5, r0, 24 - subs r0, r2, 0x1 - strh r0, [r4, 0xA] - adds r0, r7, 0 - bl sub_80AFB40 -_080AFD90: - lsls r0, 16 - lsrs r6, r0, 16 -_080AFD94: - mov r10, r5 - cmp r5, 0x7 - bls _080AFDA2 - adds r0, r5, 0 - adds r0, 0x18 - lsls r0, 24 - lsrs r5, r0, 24 -_080AFDA2: - mov r0, sp - strh r6, [r0] - ldr r0, _080AFDE8 @ =gUnknown_02038696 - adds r0, r7, r0 - ldrb r0, [r0] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, 0x56 - adds r1, r5, r1 - lsls r1, 1 - ldr r0, _080AFDEC @ =0x0600c000 - adds r1, r0 - ldr r2, _080AFDF0 @ =0x01000001 - mov r0, sp - bl CpuSet - mov r2, r9 - cmp r2, 0 - ble _080AFDFC - movs r0, 0x60 - bl PlaySE - ldr r4, _080AFDF4 @ =gMPlay_SE1 - adds r0, r4, 0 - bl m4aMPlayImmInit - ldr r1, _080AFDF8 @ =0x0000ffff - mov r3, r10 - lsls r2, r3, 24 - asrs r2, 16 - adds r0, r4, 0 - bl m4aMPlayPitchControl - b _080AFE02 - .align 2, 0 -_080AFDE8: .4byte gUnknown_02038696 -_080AFDEC: .4byte 0x0600c000 -_080AFDF0: .4byte 0x01000001 -_080AFDF4: .4byte gMPlay_SE1 -_080AFDF8: .4byte 0x0000ffff -_080AFDFC: - movs r0, 0x16 - bl PlaySE -_080AFE02: - cmp r5, 0 - bne _080AFE1C - cmp r6, 0 - bne _080AFE1C - ldr r0, _080AFE2C @ =gTasks - mov r5, r8 - lsls r1, r5, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - ldrh r0, [r1, 0xC] - negs r0, r0 - strh r0, [r1, 0xC] -_080AFE1C: - 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 -_080AFE2C: .4byte gTasks - thumb_func_end sub_80AFC74 - - thumb_func_start sub_80AFE30 -sub_80AFE30: @ 80AFE30 - push {r4,r5,lr} - ldr r0, _080AFE64 @ =gUnknown_083CA350 - bl LoadSpriteSheet - movs r4, 0 - ldr r5, _080AFE68 @ =gUnknown_083CA338 -_080AFE3C: - ldr r0, _080AFE6C @ =gUnknown_02038696 - adds r0, r4, r0 - ldrb r0, [r0] - adds r0, r5 - ldrb r2, [r0] - ldr r0, _080AFE70 @ =gSpriteTemplate_83CA3AC - movs r1, 0xB4 - movs r3, 0x1 - bl CreateSprite - lsls r1, r4, 2 - ldr r2, _080AFE74 @ =gSharedMem + 0x19338 - adds r1, r2 - strb r0, [r1] - adds r4, 0x1 - cmp r4, 0x3 - ble _080AFE3C - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080AFE64: .4byte gUnknown_083CA350 -_080AFE68: .4byte gUnknown_083CA338 -_080AFE6C: .4byte gUnknown_02038696 -_080AFE70: .4byte gSpriteTemplate_83CA3AC -_080AFE74: .4byte gSharedMem + 0x19338 - thumb_func_end sub_80AFE30 - - thumb_func_start sub_80AFE78 -sub_80AFE78: @ 80AFE78 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, r6, 2 - ldr r3, _080AFEB0 @ =gSharedMem + 0x19338 - adds r2, r3 - ldrb r0, [r2, 0x2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2, 0x2] - ldrb r7, [r2] - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - subs r3, 0xD8 - adds r0, r3 - movs r1, 0x4 - ldrsh r0, [r0, r1] - movs r1, 0xA - bl __divsi3 - lsls r0, 17 - lsrs r5, r0, 16 - asrs r0, 16 - cmp r0, 0x38 - ble _080AFEB4 - movs r5, 0x38 - b _080AFEBA - .align 2, 0 -_080AFEB0: .4byte gSharedMem + 0x19338 -_080AFEB4: - cmp r0, 0 - bge _080AFEBA - movs r5, 0 -_080AFEBA: - ldr r2, _080AFEEC @ =gSprites - lsls r3, r7, 4 - adds r0, r3, r7 - lsls r0, 2 - adds r4, r0, r2 - movs r0, 0x3E - adds r0, r4 - mov r12, r0 - ldrb r1, [r0] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - mov r1, r12 - strb r0, [r1] - strh r6, [r4, 0x2E] - strh r5, [r4, 0x30] - lsls r0, r5, 16 - asrs r0, 16 - movs r5, 0x24 - ldrsh r1, [r4, r5] - cmp r0, r1 - ble _080AFEF0 - movs r0, 0x1 - b _080AFEF2 - .align 2, 0 -_080AFEEC: .4byte gSprites -_080AFEF0: - ldr r0, _080AFF08 @ =0x0000ffff -_080AFEF2: - strh r0, [r4, 0x32] - adds r0, r3, r7 - lsls r0, 2 - adds r1, r2, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, _080AFF0C @ =sub_80AFF60 - str r1, [r0] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080AFF08: .4byte 0x0000ffff -_080AFF0C: .4byte sub_80AFF60 - thumb_func_end sub_80AFE78 - - thumb_func_start sub_80AFF10 -sub_80AFF10: @ 80AFF10 - push {r4,lr} - movs r4, 0 -_080AFF14: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80AFE78 - adds r4, 0x1 - cmp r4, 0x3 - ble _080AFF14 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AFF10 - - thumb_func_start sub_80AFF28 -sub_80AFF28: @ 80AFF28 - push {r4,lr} - movs r3, 0 - ldr r2, _080AFF54 @ =gSharedMem + 0x19338 - ldrb r1, [r2, 0x2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080AFF4C - movs r4, 0x1 -_080AFF3A: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x3 - bgt _080AFF4C - ldrb r1, [r2, 0x2] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - beq _080AFF3A -_080AFF4C: - cmp r3, 0x4 - beq _080AFF58 - movs r0, 0 - b _080AFF5A - .align 2, 0 -_080AFF54: .4byte gSharedMem + 0x19338 -_080AFF58: - movs r0, 0x1 -_080AFF5A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80AFF28 - - thumb_func_start sub_80AFF60 -sub_80AFF60: @ 80AFF60 - push {r4,lr} - adds r3, r0, 0 - ldrh r2, [r3, 0x24] - movs r0, 0x24 - ldrsh r1, [r3, r0] - movs r4, 0x30 - ldrsh r0, [r3, r4] - cmp r1, r0 - bne _080AFF94 - movs r0, 0x2E - ldrsh r1, [r3, r0] - lsls r1, 2 - ldr r0, _080AFF8C @ =gSharedMem + 0x19338 - adds r1, r0 - ldrb r2, [r1, 0x2] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x2] - ldr r0, _080AFF90 @ =SpriteCallbackDummy - str r0, [r3, 0x1C] - b _080AFF9A - .align 2, 0 -_080AFF8C: .4byte gSharedMem + 0x19338 -_080AFF90: .4byte SpriteCallbackDummy -_080AFF94: - ldrh r0, [r3, 0x32] - adds r0, r2, r0 - strh r0, [r3, 0x24] -_080AFF9A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80AFF60 - - thumb_func_start sub_80AFFA0 -sub_80AFFA0: @ 80AFFA0 - push {r4-r6,lr} - movs r2, 0 - ldr r6, _080AFFD0 @ =gSprites - ldr r5, _080AFFD4 @ =gUnknown_083CA338 - ldr r3, _080AFFD8 @ =gSharedMem + 0x19338 - ldr r4, _080AFFDC @ =gUnknown_02038696 -_080AFFAC: - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r0, r2, r4 - ldrb r0, [r0] - adds r0, r5 - ldrb r0, [r0] - strh r0, [r1, 0x22] - adds r3, 0x4 - adds r2, 0x1 - cmp r2, 0x3 - ble _080AFFAC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080AFFD0: .4byte gSprites -_080AFFD4: .4byte gUnknown_083CA338 -_080AFFD8: .4byte gSharedMem + 0x19338 -_080AFFDC: .4byte gUnknown_02038696 - thumb_func_end sub_80AFFA0 - - thumb_func_start sub_80AFFE0 -sub_80AFFE0: @ 80AFFE0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - ldr r6, _080B0008 @ =gUnknown_02038696 - ldr r4, _080B000C @ =gSprites - ldr r2, _080B0010 @ =gSharedMem + 0x19338 -_080AFFEE: - adds r0, r3, r6 - ldrb r0, [r0] - cmp r0, 0x1 - bls _080B0024 - cmp r5, 0 - bne _080B0014 - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - movs r0, 0xB4 - b _080B0022 - .align 2, 0 -_080B0008: .4byte gUnknown_02038696 -_080B000C: .4byte gSprites -_080B0010: .4byte gSharedMem + 0x19338 -_080B0014: - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - movs r0, 0x80 - lsls r0, 1 -_080B0022: - strh r0, [r1, 0x20] -_080B0024: - adds r2, 0x4 - adds r3, 0x1 - cmp r3, 0x3 - ble _080AFFEE - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80AFFE0 - - thumb_func_start sub_80B0034 -sub_80B0034: @ 80B0034 - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _080B00A8 @ =gUnknown_083CA3E4 - bl LoadSpritePalette - movs r5, 0 - ldr r0, _080B00AC @ =gUnknown_083CA33C - mov r8, r0 - ldr r7, _080B00B0 @ =gSprites - movs r6, 0 -_080B004A: - lsls r0, r5, 3 - ldr r1, _080B00B4 @ =gUnknown_083CA3C4 - adds r0, r1 - bl LoadCompressedObjectPic - ldr r0, _080B00B8 @ =gSpriteTemplate_83CA3F4 - adds r0, r6, r0 - ldr r1, _080B00BC @ =gUnknown_02038696 - adds r1, r5, r1 - ldrb r1, [r1] - add r1, r8 - ldrb r2, [r1] - movs r1, 0xCC - movs r3, 0 - bl CreateSprite - lsls r4, r5, 2 - ldr r1, _080B00C0 @ =gSharedMem + 0x19338 - adds r4, r1 - strb r0, [r4, 0x1] - ldrb r1, [r4, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - ldr r1, _080B00C4 @ =gSubspriteTables_83CA464 - bl SetSubspriteTables - ldrb r1, [r4, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r7 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - adds r6, 0x18 - adds r5, 0x1 - cmp r5, 0x3 - ble _080B004A - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B00A8: .4byte gUnknown_083CA3E4 -_080B00AC: .4byte gUnknown_083CA33C -_080B00B0: .4byte gSprites -_080B00B4: .4byte gUnknown_083CA3C4 -_080B00B8: .4byte gSpriteTemplate_83CA3F4 -_080B00BC: .4byte gUnknown_02038696 -_080B00C0: .4byte gSharedMem + 0x19338 -_080B00C4: .4byte gSubspriteTables_83CA464 - thumb_func_end sub_80B0034 - - thumb_func_start sub_80B00C8 -sub_80B00C8: @ 80B00C8 - push {lr} - ldr r0, _080B0104 @ =gUnknown_083CA46C - bl LoadCompressedObjectPic - ldr r0, _080B0108 @ =gUnknown_083CA474 - bl LoadSpritePalette - ldr r0, _080B010C @ =gSpriteTemplate_83CA484 - movs r1, 0x1E - movs r2, 0x2C - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B0110 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x3E - ldrb r2, [r1] - movs r3, 0x4 - orrs r2, r3 - strb r2, [r1] - ldr r1, _080B0114 @ =gSharedMem + 0x19204 - adds r1, 0x58 - strb r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080B0104: .4byte gUnknown_083CA46C -_080B0108: .4byte gUnknown_083CA474 -_080B010C: .4byte gSpriteTemplate_83CA484 -_080B0110: .4byte gSprites -_080B0114: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B00C8 - - thumb_func_start nullsub_18 -nullsub_18: @ 80B0118 - bx lr - thumb_func_end nullsub_18 - - thumb_func_start unref_sub_80B011C -unref_sub_80B011C: @ 80B011C - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r0, _080B0198 @ =gUnknown_083CC3AC - bl LoadCompressedObjectPic - movs r4, 0 - ldr r5, _080B019C @ =gUnknown_083CC3B4 -_080B012C: - lsls r0, r4, 3 - adds r0, r5 - bl LoadCompressedObjectPalette - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B012C - movs r4, 0 - ldr r5, _080B01A0 @ =gUnknown_083CA330 - adds r0, r5, 0x1 - mov r8, r0 - ldr r7, _080B01A4 @ =gSprites - ldr r6, _080B01A8 @ =gSharedMem + 0x1920D -_080B014A: - lsls r2, r4, 1 - adds r0, r2, r4 - lsls r0, 3 - ldr r1, _080B01AC @ =gSpriteTemplate_83CC454 - adds r0, r1 - adds r1, r2, r5 - ldrb r1, [r1] - add r2, r8 - ldrb r2, [r2] - movs r3, 0x5 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r7 - movs r2, 0x3E - adds r2, r1 - mov r12, r2 - ldrb r2, [r2] - movs r3, 0x4 - orrs r2, r3 - mov r3, r12 - strb r2, [r3] - strh r4, [r1, 0x2E] - adds r1, r4, r6 - strb r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B014A - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0198: .4byte gUnknown_083CC3AC -_080B019C: .4byte gUnknown_083CC3B4 -_080B01A0: .4byte gUnknown_083CA330 -_080B01A4: .4byte gSprites -_080B01A8: .4byte gSharedMem + 0x1920D -_080B01AC: .4byte gSpriteTemplate_83CC454 - thumb_func_end unref_sub_80B011C - - thumb_func_start unref_sub_80B01B0 -unref_sub_80B01B0: @ 80B01B0 - push {r4,r5,lr} - movs r2, 0 - ldr r5, _080B01D4 @ =gSharedMem + 0x1920D - ldr r4, _080B01D8 @ =gSprites + 0x1C - ldr r3, _080B01DC @ =sub_80B0238 -_080B01BA: - adds r0, r2, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - str r3, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _080B01BA - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B01D4: .4byte gSharedMem + 0x1920D -_080B01D8: .4byte gSprites + 0x1C -_080B01DC: .4byte sub_80B0238 - thumb_func_end unref_sub_80B01B0 - - thumb_func_start unref_sub_80B01E0 -unref_sub_80B01E0: @ 80B01E0 - push {r4,r5,lr} - movs r3, 0 - ldr r2, _080B0224 @ =gSprites - ldr r4, _080B0228 @ =gSharedMem + 0x19204 - ldrb r1, [r4, 0x9] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r2, 0x1C - adds r0, r2 - ldr r1, [r0] - ldr r0, _080B022C @ =SpriteCallbackDummy - cmp r1, r0 - bne _080B021A - adds r5, r4, 0 - adds r5, 0x9 - adds r4, r1, 0 -_080B0202: - adds r3, 0x1 - cmp r3, 0x3 - bgt _080B021A - adds r0, r3, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r0, [r0] - cmp r0, r4 - beq _080B0202 -_080B021A: - cmp r3, 0x4 - beq _080B0230 - movs r0, 0 - b _080B0232 - .align 2, 0 -_080B0224: .4byte gSprites -_080B0228: .4byte gSharedMem + 0x19204 -_080B022C: .4byte SpriteCallbackDummy -_080B0230: - movs r0, 0x1 -_080B0232: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end unref_sub_80B01E0 - - thumb_func_start sub_80B0238 -sub_80B0238: @ 80B0238 - push {r4,lr} - adds r4, r0, 0 - ldrb r1, [r4, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r0, r4, 0 - bl InitSpriteAffineAnim - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080B0268 - ldr r0, _080B0264 @ =sub_80B02A8 - b _080B0272 - .align 2, 0 -_080B0264: .4byte sub_80B02A8 -_080B0268: - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldr r0, _080B027C @ =sub_80B0280 -_080B0272: - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B027C: .4byte sub_80B0280 - thumb_func_end sub_80B0238 - - thumb_func_start sub_80B0280 -sub_80B0280: @ 80B0280 - push {lr} - adds r3, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080B02A0 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080B02A4 @ =sub_80B02A8 - str r0, [r3, 0x1C] -_080B02A0: - pop {r0} - bx r0 - .align 2, 0 -_080B02A4: .4byte sub_80B02A8 - thumb_func_end sub_80B0280 - - thumb_func_start sub_80B02A8 -sub_80B02A8: @ 80B02A8 - push {r4,lr} - adds r4, r0, 0 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - movs r0, 0x2E - ldrsh r1, [r4, r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _080B02EC @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0xB] - lsls r1, 30 - lsrs r1, 30 - adds r0, r4, 0 - bl StartSpriteAnim - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAffineAnim - ldr r0, _080B02F0 @ =sub_80B02F4 - str r0, [r4, 0x1C] - movs r0, 0x18 - bl PlaySE - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B02EC: .4byte gSharedMem + 0x19260 -_080B02F0: .4byte sub_80B02F4 - thumb_func_end sub_80B02A8 - - thumb_func_start sub_80B02F4 -sub_80B02F4: @ 80B02F4 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080B0318 - adds r0, r4, 0 - bl FreeSpriteOamMatrix - ldrb r0, [r4, 0x1] - movs r1, 0x4 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x1] - ldr r0, _080B0320 @ =SpriteCallbackDummy - str r0, [r4, 0x1C] -_080B0318: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B0320: .4byte SpriteCallbackDummy - thumb_func_end sub_80B02F4 - - thumb_func_start sub_80B0324 -sub_80B0324: @ 80B0324 - push {r4,lr} - ldr r0, _080B035C @ =sub_80B0458 - movs r1, 0x1E - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080B0360 @ =gSharedMem + 0x19204 - strb r0, [r1, 0xD] - movs r2, 0 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r4, _080B0364 @ =gTasks + 0x8 - movs r3, 0xFF -_080B0342: - lsls r0, r2, 3 - adds r0, r1 - adds r0, r4 - strh r3, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _080B0342 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B035C: .4byte sub_80B0458 -_080B0360: .4byte gSharedMem + 0x19204 -_080B0364: .4byte gTasks + 0x8 - thumb_func_end sub_80B0324 - - thumb_func_start sub_80B0368 -sub_80B0368: @ 80B0368 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _080B03A0 @ =gTasks - ldr r5, _080B03A4 @ =gSharedMem + 0x19204 - ldrb r2, [r5, 0xD] - lsls r1, r2, 2 - adds r1, r2 - adds r1, r0 - lsls r1, 3 - adds r3, 0x8 - adds r1, r3 - movs r4, 0 - strh r4, [r1] - lsls r0, 2 - adds r0, 0x1 - lsls r0, 1 - ldrb r2, [r5, 0xD] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - adds r0, r3 - strh r4, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B03A0: .4byte gTasks -_080B03A4: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B0368 - - thumb_func_start sub_80B03A8 -sub_80B03A8: @ 80B03A8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080B03D0 @ =sub_80B03D8 - movs r1, 0x1F - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B03D4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0x8] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B03D0: .4byte sub_80B03D8 -_080B03D4: .4byte gTasks - thumb_func_end sub_80B03A8 - - thumb_func_start sub_80B03D8 -sub_80B03D8: @ 80B03D8 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r2, _080B044C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x8] - adds r4, r0, 0 - ldr r6, _080B0450 @ =gSharedMem + 0x19204 - ldrb r1, [r6, 0xD] - lsls r0, r1, 2 - adds r0, r1 - adds r0, r4 - lsls r0, 3 - adds r7, r2, 0 - adds r7, 0x8 - adds r1, r0, r7 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _080B040C - cmp r0, 0xFF - bne _080B0444 -_080B040C: - movs r3, 0 - movs r0, 0xFF - strh r0, [r1] - lsls r1, r4, 2 - adds r1, 0x1 - lsls r1, 1 - ldrb r2, [r6, 0xD] - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r7 - strh r3, [r1] - adds r0, r6, 0 - adds r0, 0x14 - adds r0, r4, r0 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 4 - adds r0, 0x6 - ldr r3, _080B0454 @ =0x00004bff - movs r1, 0x2 - movs r2, 0 - bl BlendPalette - adds r0, r5, 0 - bl DestroyTask -_080B0444: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B044C: .4byte gTasks -_080B0450: .4byte gSharedMem + 0x19204 -_080B0454: .4byte 0x00004bff - thumb_func_end sub_80B03D8 - - thumb_func_start sub_80B0458 -sub_80B0458: @ 80B0458 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - movs r6, 0 - lsls r1, r0, 2 - adds r1, r0 - mov r9, r1 - lsls r7, r1, 3 - ldr r0, _080B04A8 @ =gTasks + 0x8 - mov r8, r0 - movs r1, 0x8 - negs r1, r1 - add r1, r8 - mov r10, r1 -_080B047C: - lsls r0, r6, 26 - lsrs r3, r0, 24 - lsls r0, r3, 1 - adds r0, r7 - mov r4, r8 - adds r2, r0, r4 - ldrh r4, [r2] - movs r5, 0 - ldrsh r0, [r2, r5] - cmp r0, 0xFF - beq _080B04F6 - adds r0, r3, 0x1 - lsls r1, r0, 1 - adds r1, r7 - add r1, r8 - movs r5, 0 - ldrsh r1, [r1, r5] - adds r5, r0, 0 - cmp r1, 0 - bne _080B04AC - adds r0, r4, 0x1 - b _080B04AE - .align 2, 0 -_080B04A8: .4byte gTasks + 0x8 -_080B04AC: - subs r0, r4, 0x1 -_080B04AE: - strh r0, [r2] - lsls r1, r3, 1 - mov r0, r9 - lsls r2, r0, 3 - adds r0, r1, r2 - mov r3, r10 - adds r3, 0x8 - adds r0, r3 - movs r4, 0 - ldrsh r0, [r0, r4] - adds r4, r1, 0 - cmp r0, 0x10 - beq _080B04CC - cmp r0, 0 - bne _080B04DA -_080B04CC: - lsls r0, r5, 1 - adds r0, r2 - adds r0, r3 - ldrh r1, [r0] - movs r2, 0x1 - eors r1, r2 - strh r1, [r0] -_080B04DA: - ldr r0, _080B0510 @ =gSharedMem + 0x19204 - adds r0, 0x14 - adds r0, r6, r0 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 4 - adds r0, 0x6 - adds r1, r4, r7 - add r1, r8 - ldrb r2, [r1] - movs r1, 0x2 - ldr r3, _080B0514 @ =0x00004bff - bl BlendPalette -_080B04F6: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bls _080B047C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0510: .4byte gSharedMem + 0x19204 -_080B0514: .4byte 0x00004bff - thumb_func_end sub_80B0458 - - thumb_func_start sub_80B0518 -sub_80B0518: @ 80B0518 - push {r4,lr} - ldr r0, _080B0540 @ =sub_80B05FC - movs r1, 0x1E - bl CreateTask - ldr r1, _080B0544 @ =gSharedMem + 0x19204 - strb r0, [r1, 0xE] - movs r4, 0 -_080B0528: - adds r0, r4, 0 - bl sub_80B0548 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0528 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B0540: .4byte sub_80B05FC -_080B0544: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B0518 - - thumb_func_start sub_80B0548 -sub_80B0548: @ 80B0548 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _080B0580 @ =gTasks - ldr r4, _080B0584 @ =gSharedMem + 0x19204 - ldrb r2, [r4, 0xE] - lsls r1, r2, 2 - adds r1, r2 - adds r1, r0 - lsls r1, 3 - adds r3, 0x8 - adds r1, r3 - movs r5, 0 - movs r2, 0xFF - strh r2, [r1] - lsls r0, 2 - adds r0, 0x1 - lsls r0, 1 - ldrb r2, [r4, 0xE] - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - adds r0, r3 - strh r5, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B0580: .4byte gTasks -_080B0584: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B0548 - - thumb_func_start sub_80B0588 -sub_80B0588: @ 80B0588 - push {r4,lr} - movs r4, 0 -_080B058C: - adds r0, r4, 0 - bl sub_80B05A4 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B058C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80B0588 - - thumb_func_start sub_80B05A4 -sub_80B05A4: @ 80B05A4 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_80B0548 - adds r0, r4, 0x5 - lsls r2, r0, 5 - ldr r3, _080B05E8 @ =gPlttBufferUnfaded + 0x14 - adds r6, r2, r3 - ldr r5, _080B05EC @ =gPlttBufferFaded + 0x14 - adds r2, r5 - ldr r1, _080B05F0 @ =0x040000d4 - str r6, [r1] - str r2, [r1, 0x4] - ldr r2, _080B05F4 @ =0x80000001 - str r2, [r1, 0x8] - ldr r6, [r1, 0x8] - lsls r0, 4 - adds r4, 0xC - adds r0, r4 - lsls r0, 1 - subs r3, 0x14 - adds r3, r0, r3 - subs r5, 0x14 - adds r0, r5 - str r3, [r1] - str r0, [r1, 0x4] - str r2, [r1, 0x8] - ldr r0, [r1, 0x8] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B05E8: .4byte gPlttBufferUnfaded + 0x14 -_080B05EC: .4byte gPlttBufferFaded + 0x14 -_080B05F0: .4byte 0x040000d4 -_080B05F4: .4byte 0x80000001 - thumb_func_end sub_80B05A4 - - thumb_func_start nullsub_19 -nullsub_19: @ 80B05F8 - bx lr - thumb_func_end nullsub_19 - - thumb_func_start sub_80B05FC -sub_80B05FC: @ 80B05FC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - movs r7, 0 - lsls r1, r0, 2 - adds r1, r0 - mov r9, r1 - lsls r6, r1, 3 - ldr r0, _080B0664 @ =gTasks + 0x8 - mov r8, r0 - ldr r1, _080B0668 @ =0x00004bff - mov r10, r1 -_080B061C: - lsls r0, r7, 26 - lsrs r3, r0, 24 - lsls r0, r3, 1 - adds r0, r6 - mov r4, r8 - adds r2, r0, r4 - movs r5, 0 - ldrsh r0, [r2, r5] - cmp r0, 0xFF - beq _080B06C2 - adds r0, r3, 0x2 - lsls r0, 1 - adds r0, r6 - adds r1, r0, r4 - ldrh r0, [r1] - adds r0, 0x1 - movs r4, 0 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _080B06C2 - strh r4, [r1] - adds r0, r3, 0x1 - lsls r1, r0, 1 - adds r1, r6 - add r1, r8 - movs r4, 0 - ldrsh r1, [r1, r4] - adds r4, r0, 0 - cmp r1, 0 - bne _080B066C - ldrh r0, [r2] - adds r0, 0x1 - b _080B0670 - .align 2, 0 -_080B0664: .4byte gTasks + 0x8 -_080B0668: .4byte 0x00004bff -_080B066C: - ldrh r0, [r2] - subs r0, 0x1 -_080B0670: - strh r0, [r2] - lsls r1, r3, 1 - mov r5, r9 - lsls r2, r5, 3 - adds r0, r1, r2 - ldr r3, _080B06DC @ =gTasks - adds r3, 0x8 - adds r0, r3 - movs r5, 0 - ldrsh r0, [r0, r5] - adds r5, r1, 0 - cmp r0, 0x10 - beq _080B068E - cmp r0, 0 - bne _080B069C -_080B068E: - lsls r0, r4, 1 - adds r0, r2 - adds r0, r3 - ldrh r1, [r0] - movs r2, 0x1 - eors r1, r2 - strh r1, [r0] -_080B069C: - adds r4, r7, 0x5 - lsls r4, 4 - adds r0, r4, 0 - adds r0, 0xA - adds r5, r6 - add r5, r8 - ldrb r2, [r5] - movs r1, 0x1 - mov r3, r10 - bl BlendPalette - adds r4, 0xC - adds r4, r7 - ldrb r2, [r5] - adds r0, r4, 0 - movs r1, 0x1 - mov r3, r10 - bl BlendPalette -_080B06C2: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0x3 - bls _080B061C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B06DC: .4byte gTasks - thumb_func_end sub_80B05FC - - thumb_func_start unref_sub_80B06E0 -unref_sub_80B06E0: @ 80B06E0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - ldr r0, _080B073C @ =sub_80B0748 - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - lsls r0, r5, 2 - adds r0, r5 - lsls r6, r0, 3 - ldr r0, _080B0740 @ =gTasks + 0x8 - mov r8, r0 - ldr r1, _080B0744 @ =gSharedMem + 0x19338 - mov r12, r1 -_080B0704: - lsls r4, r3, 2 - lsls r0, r3, 26 - lsrs r0, 23 - adds r0, r6 - add r0, r8 - adds r2, r7, r3 - ldrb r1, [r2] - strh r1, [r0] - ldrb r0, [r2] - cmp r0, 0 - beq _080B0726 - mov r1, r12 - adds r0, r4, r1 - ldrb r1, [r0, 0x2] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0, 0x2] -_080B0726: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x3 - bls _080B0704 - adds r0, r5, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080B073C: .4byte sub_80B0748 -_080B0740: .4byte gTasks + 0x8 -_080B0744: .4byte gSharedMem + 0x19338 - thumb_func_end unref_sub_80B06E0 - - thumb_func_start sub_80B0748 -sub_80B0748: @ 80B0748 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - ldr r2, _080B07F4 @ =gTasks - movs r1, 0x8 - adds r1, r2 - mov r10, r1 - ldr r3, [sp] - lsls r3, 2 - str r3, [sp, 0x1C] - ldr r1, [sp] - adds r0, r3, r1 - lsls r0, 3 - str r0, [sp, 0xC] -_080B0774: - ldr r0, _080B07F8 @ =gUnknown_02038696 - ldr r3, [sp, 0x4] - adds r0, r3, r0 - ldrb r4, [r0] - lsls r0, r4, 26 - lsrs r1, r0, 24 - lsls r0, r1, 1 - str r0, [sp, 0x8] - ldr r3, [sp] - lsls r0, r3, 2 - adds r0, r3 - lsls r6, r0, 3 - ldr r3, [sp, 0x8] - adds r0, r3, r6 - add r0, r10 - mov r9, r0 - ldrb r7, [r0] - cmp r7, 0 - bne _080B079C - b _080B0910 -_080B079C: - adds r3, r1, 0x1 - lsls r0, r3, 1 - adds r0, r6 - add r0, r10 - ldrb r0, [r0] - mov r8, r0 - adds r2, r1, 0x2 - lsls r0, r2, 1 - adds r0, r6 - add r0, r10 - ldrb r5, [r0] - adds r1, 0x3 - lsls r0, r1, 1 - adds r0, r6 - add r0, r10 - ldrb r6, [r0] - str r3, [sp, 0x10] - str r2, [sp, 0x14] - str r1, [sp, 0x18] - cmp r7, 0x1 - bne _080B0818 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x1 - beq _080B07D2 - b _080B08EA -_080B07D2: - movs r6, 0 - adds r0, r4, 0x5 - lsls r0, 4 - adds r0, 0x1 - movs r1, 0x3 - adds r2, r5, 0 - ldr r3, _080B07FC @ =0x00007fff - bl BlendPalette - cmp r5, 0 - bne _080B0800 - mov r0, r8 - cmp r0, 0x4 - bne _080B0800 - mov r1, r9 - strh r6, [r1] - b _080B08EA - .align 2, 0 -_080B07F4: .4byte gTasks -_080B07F8: .4byte gUnknown_02038696 -_080B07FC: .4byte 0x00007fff -_080B0800: - adds r0, r5, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xD - bls _080B08EA - movs r5, 0 - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - b _080B08EA -_080B0818: - cmp r7, 0x2 - beq _080B0820 - cmp r7, 0x4 - bne _080B0896 -_080B0820: - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0x3 - bne _080B08EA - movs r6, 0 - adds r0, r4, 0x5 - lsls r0, 4 - adds r0, 0x1 - ldr r2, _080B0854 @ =gUnknown_083CC5A4 - lsls r1, r4, 1 - adds r1, r2 - ldrh r3, [r1] - movs r1, 0x3 - adds r2, r5, 0 - bl BlendPalette - cmp r5, 0 - bne _080B0858 - mov r2, r8 - cmp r2, 0x2 - bne _080B0858 - mov r3, r9 - strh r6, [r3] - b _080B08EA - .align 2, 0 -_080B0854: .4byte gUnknown_083CC5A4 -_080B0858: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xE - bne _080B08EA - movs r5, 0 - mov r0, r8 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r7, 0x4 - bne _080B08EA - cmp r0, 0x1 - bne _080B08EA - adds r4, 0x9 - lsls r4, 4 - adds r0, r4, 0x2 - movs r1, 0x1 - movs r2, 0x4 - movs r3, 0 - bl BlendPalette - adds r4, 0x5 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0x4 - movs r3, 0 - bl BlendPalette - b _080B08EA -_080B0896: - cmp r7, 0x3 - bne _080B08EA - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0xC - bne _080B08EA - movs r6, 0 - adds r0, r4, 0x5 - lsls r0, 4 - adds r4, r0, 0x1 - adds r0, r4, 0 - movs r1, 0x3 - adds r2, r5, 0 - movs r3, 0 - bl BlendPalette - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bne _080B08EA - ldr r0, _080B0930 @ =gPlttBufferFaded - lsls r1, r4, 1 - adds r0, r1, r0 - ldrh r2, [r0] - ldr r0, _080B0934 @ =gPlttBufferUnfaded - adds r1, r0 - ldrh r0, [r1] - ldr r1, _080B0938 @ =0x040000d4 - str r2, [r1] - str r0, [r1, 0x4] - movs r0, 0x80 - lsls r0, 24 - orrs r7, r0 - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, [sp, 0x8] - ldr r2, [sp, 0xC] - adds r0, r1, r2 - add r0, r10 - strh r6, [r0] -_080B08EA: - ldr r3, [sp, 0x10] - lsls r0, r3, 1 - ldr r1, [sp, 0xC] - adds r0, r1 - add r0, r10 - mov r2, r8 - strh r2, [r0] - ldr r3, [sp, 0x14] - lsls r0, r3, 1 - adds r0, r1 - add r0, r10 - strh r5, [r0] - ldr r1, [sp, 0x18] - lsls r0, r1, 1 - ldr r2, [sp, 0xC] - adds r0, r2 - add r0, r10 - strh r6, [r0] - ldr r2, _080B093C @ =gTasks -_080B0910: - ldr r0, [sp, 0x4] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - cmp r0, 0x3 - bhi _080B0920 - b _080B0774 -_080B0920: - movs r4, 0 - ldr r3, [sp, 0x1C] - ldr r1, [sp] - adds r0, r3, r1 - lsls r1, r0, 3 - adds r2, 0x8 - adds r0, r1, r2 - b _080B0950 - .align 2, 0 -_080B0930: .4byte gPlttBufferFaded -_080B0934: .4byte gPlttBufferUnfaded -_080B0938: .4byte 0x040000d4 -_080B093C: .4byte gTasks -_080B0940: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bhi _080B0958 - lsls r0, r4, 3 - adds r0, r1 - adds r0, r2 -_080B0950: - movs r3, 0 - ldrsh r0, [r0, r3] - cmp r0, 0 - beq _080B0940 -_080B0958: - cmp r4, 0x4 - bne _080B0980 - movs r4, 0 - ldr r3, _080B0990 @ =gSharedMem + 0x19338 - movs r5, 0x3 - negs r5, r5 -_080B0964: - lsls r1, r4, 2 - adds r1, r3 - ldrb r2, [r1, 0x2] - adds r0, r5, 0 - ands r0, r2 - strb r0, [r1, 0x2] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0964 - ldr r0, [sp] - bl DestroyTask -_080B0980: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0990: .4byte gSharedMem + 0x19338 - thumb_func_end sub_80B0748 - - thumb_func_start unref_sub_80B0994 -unref_sub_80B0994: @ 80B0994 - push {lr} - lsls r0, 24 - cmp r0, 0 - beq _080B09A6 - ldr r0, _080B09AC @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x6] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0, 0x6] -_080B09A6: - pop {r0} - bx r0 - .align 2, 0 -_080B09AC: .4byte gSharedMem + 0x19204 - thumb_func_end unref_sub_80B0994 - - thumb_func_start sub_80B09B0 -sub_80B09B0: @ 80B09B0 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r1, _080B09D4 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrb r1, [r0, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B09D8 - adds r0, r2, 0 - bl sub_80B0368 - b _080B09DE - .align 2, 0 -_080B09D4: .4byte gSharedMem + 0x19260 -_080B09D8: - adds r0, r2, 0 - bl sub_80B03A8 -_080B09DE: - pop {r0} - bx r0 - thumb_func_end sub_80B09B0 - - thumb_func_start sub_80B09E4 -sub_80B09E4: @ 80B09E4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - mov r9, r0 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, _080B0B2C @ =gUnknown_02038696 - mov r1, r9 - adds r7, r1, r0 - ldrb r0, [r7] - lsls r5, r0, 2 - adds r5, r0 - lsls r5, 27 - movs r2, 0x80 - lsls r2, 22 - adds r5, r2 - lsrs r5, 24 - lsls r4, r1, 3 - ldr r0, _080B0B30 @ =gUnknown_083CC4B4 - adds r0, r4, r0 - bl LoadCompressedObjectPic - ldr r0, _080B0B34 @ =gUnknown_083CC4D4 - adds r4, r0 - adds r0, r4, 0 - bl LoadSpritePalette - mov r3, r9 - lsls r4, r3, 1 - add r4, r9 - lsls r4, 3 - ldr r0, _080B0B38 @ =gSpriteTemplate_83CC53C - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xB8 - adds r2, r5, 0 - movs r3, 0x1D - bl CreateSprite - mov r8, r0 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - adds r0, r4, 0 - movs r1, 0xF8 - adds r2, r5, 0 - movs r3, 0x1D - bl CreateSprite - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldr r1, _080B0B3C @ =gSprites - mov r10, r1 - lsls r5, r6, 4 - adds r5, r6 - lsls r5, 2 - add r5, r10 - ldrh r2, [r5, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - adds r1, 0x40 - ldr r3, _080B0B40 @ =0x000003ff - adds r0, r3, 0 - ands r1, r0 - ldr r0, _080B0B44 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x4] - ldrb r0, [r7] - lsls r3, r0, 2 - adds r3, r0 - lsls r3, 6 - ldr r0, _080B0B48 @ =0x0600e026 - adds r3, r0 - mov r1, r8 - lsls r4, r1, 4 - add r4, r8 - lsls r4, 2 - add r4, r10 - ldrh r0, [r4, 0x4] - lsls r0, 22 - lsrs r0, 17 - ldr r2, _080B0B4C @ =0x06010000 - mov r10, r2 - add r0, r10 - str r0, [sp] - movs r0, 0 - movs r1, 0x3 - movs r2, 0xC0 - lsls r2, 19 - bl CopySpriteTiles - ldrb r0, [r7] - lsls r3, r0, 2 - adds r3, r0 - lsls r3, 6 - ldr r7, _080B0B50 @ =0x0600e036 - adds r3, r7 - ldrh r0, [r5, 0x4] - lsls r0, 22 - lsrs r0, 17 - add r0, r10 - str r0, [sp] - movs r0, 0 - movs r1, 0x3 - movs r2, 0xC0 - lsls r2, 19 - bl CopySpriteTiles - ldrh r0, [r4, 0x4] - lsls r0, 22 - lsrs r0, 17 - movs r1, 0xA0 - lsls r1, 3 - adds r0, r1 - add r0, r10 - movs r2, 0 - str r2, [sp, 0x8] - ldr r1, _080B0B54 @ =0x040000d4 - add r3, sp, 0x8 - mov r12, r3 - str r3, [r1] - str r0, [r1, 0x4] - ldr r3, _080B0B58 @ =0x850000c0 - str r3, [r1, 0x8] - ldr r0, [r1, 0x8] - add r0, sp, 0x4 - strb r2, [r0] - strb r2, [r0] - ldrh r0, [r5, 0x4] - lsls r0, 22 - lsrs r0, 17 - movs r7, 0xA0 - lsls r7, 3 - adds r0, r7 - add r0, r10 - str r2, [sp, 0x8] - mov r2, r12 - str r2, [r1] - str r0, [r1, 0x4] - str r3, [r1, 0x8] - ldr r0, [r1, 0x8] - strh r6, [r4, 0x2E] - mov r3, r8 - strh r3, [r5, 0x2E] - mov r7, r9 - strh r7, [r4, 0x30] - mov r0, r9 - strh r0, [r5, 0x30] - mov r0, r8 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080B0B2C: .4byte gUnknown_02038696 -_080B0B30: .4byte gUnknown_083CC4B4 -_080B0B34: .4byte gUnknown_083CC4D4 -_080B0B38: .4byte gSpriteTemplate_83CC53C -_080B0B3C: .4byte gSprites -_080B0B40: .4byte 0x000003ff -_080B0B44: .4byte 0xfffffc00 -_080B0B48: .4byte 0x0600e026 -_080B0B4C: .4byte 0x06010000 -_080B0B50: .4byte 0x0600e036 -_080B0B54: .4byte 0x040000d4 -_080B0B58: .4byte 0x850000c0 - thumb_func_end sub_80B09E4 - - thumb_func_start sub_80B0B5C -sub_80B0B5C: @ 80B0B5C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _080B0B94 @ =gSprites - lsls r5, r0, 4 - adds r5, r0 - lsls r5, 2 - adds r5, r1 - ldrh r0, [r5, 0x2E] - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r4, r1 - adds r0, r4, 0 - bl FreeSpriteOamMatrix - adds r0, r4, 0 - bl DestroySprite - adds r0, r5, 0 - bl DestroySpriteAndFreeResources - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B0B94: .4byte gSprites - thumb_func_end sub_80B0B5C - - thumb_func_start sub_80B0B98 -sub_80B0B98: @ 80B0B98 - ldr r1, _080B0BAC @ =REG_BLDCNT - movs r2, 0xFD - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r2, _080B0BB0 @ =0x00000907 - adds r0, r2, 0 - strh r0, [r1] - bx lr - .align 2, 0 -_080B0BAC: .4byte REG_BLDCNT -_080B0BB0: .4byte 0x00000907 - thumb_func_end sub_80B0B98 - - thumb_func_start sub_80B0BB4 -sub_80B0BB4: @ 80B0BB4 - ldr r0, _080B0BC0 @ =REG_BLDCNT - movs r1, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - bx lr - .align 2, 0 -_080B0BC0: .4byte REG_BLDCNT - thumb_func_end sub_80B0BB4 - - thumb_func_start sub_80B0BC4 -sub_80B0BC4: @ 80B0BC4 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - adds r4, r0, 0 - mov r9, r1 - lsls r4, 24 - lsrs r4, 24 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - bl sub_80B0B98 - ldr r1, _080B0C38 @ =gSprites - mov r8, r1 - lsls r6, r4, 4 - adds r6, r4 - lsls r6, 2 - adds r0, r6, r1 - movs r1, 0x30 - ldrsh r2, [r0, r1] - lsls r2, 2 - ldr r1, _080B0C3C @ =gSharedMem + 0x19338 - adds r2, r1 - ldrb r1, [r2, 0x2] - movs r3, 0x2 - orrs r1, r3 - strb r1, [r2, 0x2] - ldrh r5, [r0, 0x2E] - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x1 - bl StartSpriteAffineAnim - lsls r4, r5, 4 - adds r4, r5 - lsls r4, 2 - mov r1, r8 - adds r0, r4, r1 - movs r1, 0x1 - bl StartSpriteAffineAnim - movs r0, 0x1C - add r8, r0 - add r6, r8 - ldr r0, _080B0C40 @ =sub_80B0C5C - str r0, [r6] - add r4, r8 - ldr r0, _080B0C44 @ =SpriteCallbackDummy - str r0, [r4] - mov r1, r9 - cmp r1, 0 - bne _080B0C48 - movs r0, 0x65 - bl PlaySE - b _080B0C4E - .align 2, 0 -_080B0C38: .4byte gSprites -_080B0C3C: .4byte gSharedMem + 0x19338 -_080B0C40: .4byte sub_80B0C5C -_080B0C44: .4byte SpriteCallbackDummy -_080B0C48: - movs r0, 0x2 - bl PlaySE -_080B0C4E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80B0BC4 - - thumb_func_start sub_80B0C5C -sub_80B0C5C: @ 80B0C5C - push {lr} - mov r12, r0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080B0CA4 - mov r0, r12 - ldrh r1, [r0, 0x2E] - lsls r1, 24 - lsrs r1, 24 - ldr r2, _080B0CA8 @ =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _080B0CA4 - mov r3, r12 - adds r3, 0x3E - ldrb r0, [r3] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r3] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - ldr r0, _080B0CAC @ =sub_80B0CB0 - mov r1, r12 - str r0, [r1, 0x1C] -_080B0CA4: - pop {r0} - bx r0 - .align 2, 0 -_080B0CA8: .4byte gSprites -_080B0CAC: .4byte sub_80B0CB0 - thumb_func_end sub_80B0C5C - - thumb_func_start sub_80B0CB0 -sub_80B0CB0: @ 80B0CB0 - push {lr} - movs r1, 0x30 - ldrsh r2, [r0, r1] - lsls r2, 2 - ldr r1, _080B0CD8 @ =gSharedMem + 0x19338 - adds r2, r1 - ldrb r3, [r2, 0x2] - movs r1, 0x3 - negs r1, r1 - ands r1, r3 - strb r1, [r2, 0x2] - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r0, 24 - bl sub_80B0B5C - bl sub_80B0BB4 - pop {r0} - bx r0 - .align 2, 0 -_080B0CD8: .4byte gSharedMem + 0x19338 - thumb_func_end sub_80B0CB0 - - thumb_func_start sub_80B0CDC -sub_80B0CDC: @ 80B0CDC - lsls r0, 24 - lsrs r0, 22 - ldr r1, _080B0CF0 @ =gSharedMem + 0x19338 - adds r0, r1 - ldrb r2, [r0, 0x2] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - strb r1, [r0, 0x2] - bx lr - .align 2, 0 -_080B0CF0: .4byte gSharedMem + 0x19338 - thumb_func_end sub_80B0CDC - - thumb_func_start unref_sub_80B0CF4 -unref_sub_80B0CF4: @ 80B0CF4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - ldr r0, _080B0D5C @ =gSharedMem - movs r1, 0xC0 - lsls r1, 9 - adds r0, r1 - ldrb r1, [r0] - movs r2, 0x1 - eors r1, r2 - strb r1, [r0] - cmp r1, 0 - bne _080B0D6C - movs r4, 0 - ldr r6, _080B0D60 @ =gUnknown_083CA308 - adds r3, r6, 0x1 - mov r8, r3 - ldr r5, _080B0D64 @ =gUnknown_083CA310 - adds r7, r5, 0x1 -_080B0D1C: - lsls r1, r4, 1 - adds r0, r1, r6 - ldrb r2, [r0] - mov r3, r8 - adds r0, r1, r3 - ldrb r3, [r0] - adds r0, r1, r5 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r1, r7 - ldrb r0, [r1] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, _080B0D68 @ =gUnknown_03004210 - movs r1, 0 - bl FillWindowRect_DefaultPalette - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0D1C - bl sub_80AE514 - bl sub_80AEB30 - b _080B0D70 - .align 2, 0 -_080B0D5C: .4byte gSharedMem -_080B0D60: .4byte gUnknown_083CA308 -_080B0D64: .4byte gUnknown_083CA310 -_080B0D68: .4byte gUnknown_03004210 -_080B0D6C: - bl sub_80B0D7C -_080B0D70: - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end unref_sub_80B0CF4 - - thumb_func_start sub_80B0D7C -sub_80B0D7C: @ 80B0D7C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - movs r5, 0 - ldr r0, _080B0ED0 @ =gSharedMem - movs r1, 0xC0 - lsls r1, 9 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080B0D98 - b _080B0EC2 -_080B0D98: - movs r4, 0 - ldr r7, _080B0ED4 @ =gUnknown_083CA308 - adds r3, r7, 0x1 - mov r9, r3 - ldr r6, _080B0ED8 @ =gUnknown_083CA310 - adds r0, r6, 0x1 - mov r8, r0 -_080B0DA6: - lsls r1, r4, 1 - adds r0, r1, r7 - ldrb r2, [r0] - mov r3, r9 - adds r0, r1, r3 - ldrb r3, [r0] - adds r0, r1, r6 - ldrb r0, [r0] - adds r0, 0x5 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - add r1, r8 - ldrb r0, [r1] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - ldr r0, _080B0EDC @ =gUnknown_03004210 - movs r1, 0 - bl FillWindowRect_DefaultPalette - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0DA6 - movs r4, 0 - ldr r6, _080B0ED8 @ =gUnknown_083CA310 - adds r7, r6, 0x1 -_080B0DE2: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, _080B0EE0 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrh r2, [r0, 0x4] - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _080B0E08 - negs r0, r0 - lsls r0, 16 - lsrs r2, r0, 16 - add r1, sp, 0x8 - movs r0, 0xAE - strb r0, [r1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080B0E08: - mov r0, sp - adds r0, r5 - adds r0, 0x8 - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0 - movs r3, 0x4 - bl ConvertIntToDecimalStringN - ldr r0, _080B0EE4 @ =gUnknown_02038696 - adds r0, r4, r0 - ldrb r0, [r0] - movs r1, 0x16 - adds r2, r0, 0 - muls r2, r1 - movs r3, 0x94 - lsls r3, 2 - adds r2, r3 - lsls r0, 1 - adds r1, r0, r6 - ldrb r3, [r1] - adds r0, r7 - ldrb r0, [r0] - str r0, [sp] - ldr r0, _080B0EDC @ =gUnknown_03004210 - add r1, sp, 0x8 - bl sub_8003460 - movs r5, 0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0DE2 - movs r4, 0 - ldr r6, _080B0ED4 @ =gUnknown_083CA308 - adds r7, r6, 0x1 -_080B0E52: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, _080B0EE0 @ =gSharedMem + 0x19260 - adds r0, r1 - ldrh r2, [r0, 0x2] - movs r1, 0x2 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _080B0E78 - negs r0, r0 - lsls r0, 16 - lsrs r2, r0, 16 - add r1, sp, 0x8 - movs r0, 0xAE - strb r0, [r1] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_080B0E78: - mov r0, sp - adds r0, r5 - adds r0, 0x8 - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0 - movs r3, 0x4 - bl ConvertIntToDecimalStringN - ldr r0, _080B0EE4 @ =gUnknown_02038696 - adds r0, r4, r0 - ldrb r1, [r0] - lsls r2, r1, 2 - adds r2, r1 - lsls r2, 18 - movs r3, 0x80 - lsls r3, 18 - adds r2, r3 - lsrs r2, 16 - lsls r1, 1 - adds r0, r1, r6 - ldrb r3, [r0] - adds r1, r7 - ldrb r0, [r1] - str r0, [sp] - ldr r0, _080B0EDC @ =gUnknown_03004210 - add r1, sp, 0x8 - bl sub_8003460 - movs r5, 0 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080B0E52 - bl sub_80AEB30 -_080B0EC2: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B0ED0: .4byte gSharedMem -_080B0ED4: .4byte gUnknown_083CA308 -_080B0ED8: .4byte gUnknown_083CA310 -_080B0EDC: .4byte gUnknown_03004210 -_080B0EE0: .4byte gSharedMem + 0x19260 -_080B0EE4: .4byte gUnknown_02038696 - thumb_func_end sub_80B0D7C - - thumb_func_start unref_sub_80B0EE8 -unref_sub_80B0EE8: @ 80B0EE8 - push {r4-r7,lr} - adds r7, r0, 0 - movs r4, 0 - subs r0, r1, 0x1 - cmp r4, r0 - bge _080B0F20 - adds r6, r0, 0 -_080B0EF6: - adds r3, r0, 0 - adds r5, r4, 0x1 - cmp r0, r4 - ble _080B0F18 - lsls r0, 2 - subs r0, 0x4 - adds r0, r7 -_080B0F04: - ldr r1, [r0] - ldr r2, [r0, 0x4] - cmp r1, r2 - ble _080B0F10 - str r1, [r0, 0x4] - str r2, [r0] -_080B0F10: - subs r0, 0x4 - subs r3, 0x1 - cmp r3, r4 - bgt _080B0F04 -_080B0F18: - adds r4, r5, 0 - adds r0, r6, 0 - cmp r4, r0 - blt _080B0EF6 -_080B0F20: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end unref_sub_80B0EE8 - - thumb_func_start sub_80B0F28 -sub_80B0F28: @ 80B0F28 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - add r4, sp, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x8 - bl memset - movs r5, 0 - add r4, sp, 0x4 - adds r6, r4, 0 - movs r7, 0 -_080B0F4E: - bl Random - adds r1, r0, 0 - mov r0, sp - adds r0, r7 - adds r0, 0x4 - strh r1, [r0] - movs r2, 0 - cmp r2, r5 - bge _080B0F86 - lsls r0, r1, 16 - lsrs r0, 16 - mov r1, sp - ldrh r1, [r1, 0x4] - cmp r0, r1 - beq _080B0F80 -_080B0F6E: - adds r2, 0x1 - cmp r2, r5 - bge _080B0F86 - lsls r0, r2, 1 - adds r0, r4, r0 - ldrh r1, [r6] - ldrh r0, [r0] - cmp r1, r0 - bne _080B0F6E -_080B0F80: - subs r6, 0x2 - subs r7, 0x2 - subs r5, 0x1 -_080B0F86: - adds r6, 0x2 - adds r7, 0x2 - adds r5, 0x1 - cmp r5, 0x3 - ble _080B0F4E - mov r2, r8 - cmp r2, 0 - bne _080B1050 - movs r5, 0 - ldr r3, _080B1008 @ =gUnknown_02038696 - mov r8, r3 -_080B0F9C: - mov r6, r8 - strb r5, [r6] - movs r4, 0 - cmp r4, r5 - bge _080B1018 - ldr r7, _080B100C @ =gUnknown_02038670 - mov r9, r7 - lsls r0, r5, 1 - adds r1, r0, 0 - add r1, r9 - mov r12, r1 - mov r2, sp - adds r2, 0x4 - str r2, [sp, 0xC] - add r0, sp - adds r0, 0x4 - str r0, [sp, 0x10] - ldr r3, _080B1008 @ =gUnknown_02038696 - adds r6, r3, 0 - mov r10, r6 -_080B0FC4: - ldrb r0, [r3] - lsls r2, r0, 1 - mov r7, r9 - adds r0, r2, r7 - movs r6, 0 - ldrsh r1, [r0, r6] - mov r7, r12 - movs r6, 0 - ldrsh r0, [r7, r6] - cmp r1, r0 - blt _080B0FEC - cmp r1, r0 - bne _080B1010 - ldr r7, [sp, 0xC] - adds r0, r7, r2 - ldrh r0, [r0] - ldr r1, [sp, 0x10] - ldrh r1, [r1] - cmp r0, r1 - bcs _080B1010 -_080B0FEC: - adds r2, r5, 0 - cmp r5, r4 - ble _080B1004 - subs r0, r5, 0x1 - mov r6, r10 - adds r1, r0, r6 -_080B0FF8: - ldrb r0, [r1] - strb r0, [r1, 0x1] - subs r1, 0x1 - subs r2, 0x1 - cmp r2, r4 - bgt _080B0FF8 -_080B1004: - strb r5, [r3] - b _080B1018 - .align 2, 0 -_080B1008: .4byte gUnknown_02038696 -_080B100C: .4byte gUnknown_02038670 -_080B1010: - adds r3, 0x1 - adds r4, 0x1 - cmp r4, r5 - blt _080B0FC4 -_080B1018: - cmp r4, r5 - bne _080B1020 - mov r7, r8 - strb r5, [r7] -_080B1020: - movs r0, 0x1 - add r8, r0 - adds r5, 0x1 - cmp r5, 0x3 - ble _080B0F9C - ldr r4, _080B104C @ =gUnknown_02038696 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x4 - bl memcpy - movs r5, 0 -_080B1038: - mov r1, sp - adds r0, r1, r5 - ldrb r0, [r0] - adds r0, r4 - strb r5, [r0] - adds r5, 0x1 - cmp r5, 0x3 - ble _080B1038 - b _080B10FC - .align 2, 0 -_080B104C: .4byte gUnknown_02038696 -_080B1050: - mov r0, sp - movs r1, 0xFF - movs r2, 0x4 - bl memset - movs r5, 0 - ldr r3, _080B1070 @ =gUnknown_02038696 - movs r6, 0 -_080B1060: - ldr r0, _080B1074 @ =gSharedMem + 0x19260 - adds r0, r6, r0 - ldrb r0, [r0, 0xB] - lsls r0, 30 - lsrs r2, r0, 30 - mov r7, sp - adds r1, r7, r2 - b _080B1082 - .align 2, 0 -_080B1070: .4byte gUnknown_02038696 -_080B1074: .4byte gSharedMem + 0x19260 -_080B1078: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - mov r0, sp - adds r1, r0, r2 -_080B1082: - ldrb r0, [r1] - cmp r0, 0xFF - bne _080B1078 - strb r5, [r1] - strb r2, [r3] - adds r3, 0x1 - adds r6, 0x1C - adds r5, 0x1 - cmp r5, 0x3 - ble _080B1060 - movs r5, 0 -_080B1098: - movs r4, 0x3 - adds r1, r5, 0x1 - mov r10, r1 - cmp r4, r5 - ble _080B10F6 - mov r9, r4 - ldr r2, _080B110C @ =gUnknown_02038696 - mov r8, r2 - add r3, sp, 0x4 - mov r12, r3 -_080B10AC: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r6, _080B1110 @ =gSharedMem + 0x19244 - adds r1, r0, r6 - ldrb r2, [r1, 0xB] - ldr r7, _080B1114 @ =gSharedMem + 0x19260 - adds r0, r7 - ldrb r3, [r0, 0xB] - mov r1, r9 - ands r1, r2 - mov r0, r9 - ands r0, r3 - subs r3, r4, 0x1 - cmp r1, r0 - bne _080B10F0 - mov r0, r8 - adds r7, r3, r0 - adds r2, r4, r0 - ldrb r6, [r7] - ldrb r1, [r2] - cmp r6, r1 - bcs _080B10F0 - lsls r0, r3, 1 - add r0, r12 - lsls r1, r4, 1 - add r1, r12 - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - bcs _080B10F0 - ldrb r0, [r2] - strb r6, [r2] - strb r0, [r7] -_080B10F0: - adds r4, r3, 0 - cmp r4, r5 - bgt _080B10AC -_080B10F6: - mov r5, r10 - cmp r5, 0x2 - ble _080B1098 -_080B10FC: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B110C: .4byte gUnknown_02038696 -_080B1110: .4byte gSharedMem + 0x19244 -_080B1114: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80B0F28 - - thumb_func_start sub_80B1118 -sub_80B1118: @ 80B1118 - push {r4,r5,lr} - movs r4, 0 - movs r5, 0xA0 -_080B111E: - ldr r0, _080B1144 @ =gSharedMem + 0x18004 - adds r0, r5, r0 - ldr r1, _080B1148 @ =gUnknown_02038696 - adds r1, r4, r1 - ldrb r1, [r1] - adds r1, 0x5 - lsls r1, 4 - movs r2, 0x20 - bl LoadPalette - adds r5, 0x20 - adds r4, 0x1 - cmp r4, 0x3 - ble _080B111E - bl sub_80AE514 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1144: .4byte gSharedMem + 0x18004 -_080B1148: .4byte gUnknown_02038696 - thumb_func_end sub_80B1118 - - thumb_func_start sub_80B114C -sub_80B114C: @ 80B114C - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r7, r6, 3 - subs r0, r7, r6 - lsls r0, 2 - ldr r4, _080B11B8 @ =gSharedMem + 0x19260 - adds r5, r0, r4 - movs r0, 0 - strh r0, [r5, 0x2] - strh r0, [r5] - adds r0, r6, 0 - bl sub_80AF404 - lsls r0, 24 - mov r8, r4 - cmp r0, 0 - bne _080B1176 - b _080B13DC -_080B1176: - ldrh r0, [r5, 0x6] - ldr r1, _080B11BC @ =gContestMoves - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0] - mov r12, r1 - ldrb r0, [r0, 0x1] - lsls r0, 29 - lsrs r0, 29 - strb r0, [r5, 0xA] - ldrh r0, [r5, 0x6] - ldrh r1, [r5, 0x8] - cmp r0, r1 - bne _080B11C0 - cmp r0, 0 - beq _080B11C0 - ldrb r0, [r5, 0x15] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r5, 0x15] - ldrb r2, [r5, 0xB] - lsls r1, r2, 25 - lsrs r1, 29 - adds r1, 0x1 - movs r0, 0x7 - ands r1, r0 - lsls r1, 4 - movs r0, 0x71 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0xB] - b _080B11D8 - .align 2, 0 -_080B11B8: .4byte gSharedMem + 0x19260 -_080B11BC: .4byte gContestMoves -_080B11C0: - lsls r4, r6, 3 - subs r1, r4, r6 - lsls r1, 2 - ldr r3, _080B1264 @ =gSharedMem + 0x19260 - adds r1, r3 - ldrb r2, [r1, 0xB] - movs r0, 0x71 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0xB] - adds r7, r4, 0 - mov r8, r3 -_080B11D8: - subs r0, r7, r6 - lsls r0, 2 - add r0, r8 - ldr r2, _080B1268 @ =gContestEffects - mov r1, r12 - lsls r3, r1, 2 - adds r2, r3, r2 - ldrb r1, [r2, 0x1] - strh r1, [r0] - strh r1, [r0, 0x2] - mov r0, r8 - adds r0, 0x70 - ldrb r1, [r2, 0x2] - strh r1, [r0, 0x4] - strh r1, [r0, 0x6] - strb r6, [r0, 0x11] - movs r2, 0 - adds r4, r3, 0 - movs r1, 0 - mov r5, r8 - adds r5, 0x7D - mov r3, r8 -_080B1204: - strb r1, [r3, 0xE] - adds r0, r5, r2 - strb r1, [r0] - adds r3, 0x1C - adds r2, 0x1 - cmp r2, 0x3 - ble _080B1204 - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B1264 @ =gSharedMem + 0x19260 - adds r5, r0, r1 - ldrb r1, [r5, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B123C - ldrh r0, [r5, 0x8] - ldrh r1, [r5, 0x6] - bl AreMovesContestCombo - lsls r0, 24 - cmp r0, 0 - bne _080B123C - ldrb r1, [r5, 0x15] - movs r0, 0x11 - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x15] -_080B123C: - ldr r0, _080B126C @ =gContestEffectFuncs - adds r0, r4, r0 - ldr r0, [r0] - bl _call_via_r0 - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B1264 @ =gSharedMem + 0x19260 - adds r2, r0, r1 - ldrb r1, [r2, 0x10] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0x10 - bne _080B1270 - ldrh r1, [r2, 0x2] - subs r1, 0xA - movs r0, 0xD - ldrsb r0, [r2, r0] - b _080B128A - .align 2, 0 -_080B1264: .4byte gSharedMem + 0x19260 -_080B1268: .4byte gContestEffects -_080B126C: .4byte gContestEffectFuncs -_080B1270: - ldrb r1, [r2, 0x11] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080B1284 - movs r1, 0xD - ldrsb r1, [r2, r1] - lsls r0, r1, 1 - adds r0, r1 - b _080B1288 -_080B1284: - movs r0, 0xD - ldrsb r0, [r2, r0] -_080B1288: - ldrh r1, [r2, 0x2] -_080B128A: - adds r0, r1 - strh r0, [r2, 0x2] - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B12E8 @ =gSharedMem + 0x19260 - adds r4, r0, r1 - movs r0, 0 - strb r0, [r4, 0x16] - ldrb r1, [r4, 0x15] - subs r0, 0x41 - ands r0, r1 - strb r0, [r4, 0x15] - adds r0, r6, 0 - bl sub_80B214C - lsls r0, 24 - cmp r0, 0 - beq _080B1322 - ldrh r0, [r4, 0x8] - ldrh r1, [r4, 0x6] - bl AreMovesContestCombo - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _080B12EC - ldrb r1, [r4, 0x15] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B12EC - strb r2, [r4, 0x16] - movs r0, 0x40 - orrs r1, r0 - movs r0, 0x11 - negs r0, r0 - ands r1, r0 - movs r0, 0 - ldrsh r2, [r4, r0] - ldrb r0, [r4, 0x16] - muls r0, r2 - strb r0, [r4, 0x17] - movs r0, 0x8 - orrs r1, r0 - strb r1, [r4, 0x15] - b _080B1322 - .align 2, 0 -_080B12E8: .4byte gSharedMem + 0x19260 -_080B12EC: - ldr r2, _080B1310 @ =gContestMoves - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B1314 @ =gSharedMem + 0x19260 - adds r3, r0, r1 - ldrh r0, [r3, 0x6] - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x2] - cmp r0, 0 - beq _080B1318 - ldrb r0, [r3, 0x15] - movs r1, 0x10 - orrs r0, r1 - movs r1, 0x40 - orrs r0, r1 - b _080B1320 - .align 2, 0 -_080B1310: .4byte gContestMoves -_080B1314: .4byte gSharedMem + 0x19260 -_080B1318: - ldrb r1, [r3, 0x15] - movs r0, 0x11 - negs r0, r0 - ands r0, r1 -_080B1320: - strb r0, [r3, 0x15] -_080B1322: - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B139C @ =gSharedMem + 0x19260 - mov r8, r1 - adds r4, r0, r1 - ldrb r1, [r4, 0x15] - movs r5, 0x1 - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080B1348 - ldrb r0, [r4, 0xB] - lsls r0, 25 - lsrs r0, 29 - adds r0, 0x1 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 1 - strb r1, [r4, 0x18] -_080B1348: - ldrb r1, [r4, 0xC] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - beq _080B1362 - ldrb r0, [r4, 0x15] - movs r1, 0x11 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x15] - movs r0, 0 - strh r0, [r4, 0x2] - strh r0, [r4] -_080B1362: - ldrh r0, [r4, 0x6] - bl contest_get_move_excitement - mov r2, r8 - adds r2, 0xC8 - strb r0, [r2] - ldrb r1, [r4, 0x11] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B137A - strb r5, [r2] -_080B137A: - movs r0, 0 - ldrsb r0, [r2, r0] - cmp r0, 0 - ble _080B13A4 - mov r0, r8 - subs r0, 0x5C - ldrb r0, [r0, 0x13] - lsls r0, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r2, r1] - adds r0, r1 - cmp r0, 0x4 - ble _080B13A0 - movs r0, 0x3C - b _080B13A6 - .align 2, 0 -_080B139C: .4byte gSharedMem + 0x19260 -_080B13A0: - movs r0, 0xA - b _080B13A6 -_080B13A4: - movs r0, 0 -_080B13A6: - strb r0, [r2, 0x2] - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - b _080B13CA -_080B13BE: - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 -_080B13C4: - adds r2, 0x1 - cmp r2, 0x3 - bgt _080B13D2 -_080B13CA: - cmp r2, r6 - beq _080B13C4 - cmp r0, 0 - bne _080B13BE -_080B13D2: - subs r0, r7, r6 - lsls r0, 2 - ldr r1, _080B13E8 @ =gSharedMem + 0x19260 - adds r0, r1 - strb r2, [r0, 0x1B] -_080B13DC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B13E8: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80B114C - - thumb_func_start sub_80B13EC -sub_80B13EC: @ 80B13EC - lsls r0, 24 - lsrs r0, 24 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - ldr r0, _080B1400 @ =gSharedMem + 0x19260 - adds r2, r0 - strb r1, [r2, 0x13] - bx lr - .align 2, 0 -_080B1400: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80B13EC - - thumb_func_start sub_80B1404 -sub_80B1404: @ 80B1404 - lsls r0, 24 - lsrs r0, 24 - lsls r2, r0, 3 - subs r2, r0 - lsls r2, 2 - ldr r0, _080B1418 @ =gSharedMem + 0x19260 - adds r2, r0 - strb r1, [r2, 0x14] - bx lr - .align 2, 0 -_080B1418: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80B1404 - - thumb_func_start sub_80B141C -sub_80B141C: @ 80B141C - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r3, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r2, r1, 0 - cmp r1, 0x3B - bls _080B1436 - movs r1, 0x35 - bl sub_80B13EC - b _080B1466 -_080B1436: - cmp r1, 0x27 - bls _080B1442 - movs r1, 0x34 - bl sub_80B13EC - b _080B1466 -_080B1442: - cmp r1, 0x1D - bls _080B144E - movs r1, 0x33 - bl sub_80B13EC - b _080B1466 -_080B144E: - cmp r1, 0x13 - bls _080B145A - movs r1, 0x32 - bl sub_80B13EC - b _080B1466 -_080B145A: - cmp r2, 0x9 - bls _080B1466 - adds r0, r3, 0 - movs r1, 0x31 - bl sub_80B13EC -_080B1466: - pop {r0} - bx r0 - thumb_func_end sub_80B141C - - thumb_func_start sub_80B146C -sub_80B146C: @ 80B146C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _080B14C8 @ =gStringVar1 - lsls r1, r4, 6 - ldr r2, _080B14CC @ =gContestMons + 0x2 - adds r1, r2 - bl StringCopy - ldr r0, _080B14D0 @ =gStringVar2 - lsls r1, r4, 3 - subs r1, r4 - lsls r1, 2 - ldr r4, _080B14D4 @ =gSharedMem + 0x19260 - adds r1, r4 - ldrh r2, [r1, 0x6] - movs r1, 0xD - muls r1, r2 - ldr r2, _080B14D8 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r2, _080B14DC @ =gContestMoves - adds r0, r4, 0 - adds r0, 0x70 - ldrb r1, [r0, 0x11] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r4 - ldrh r0, [r0, 0x6] - lsls r0, 3 - adds r0, r2 - ldrb r0, [r0, 0x1] - lsls r1, r0, 29 - cmp r1, 0 - bne _080B14E8 - ldr r0, _080B14E0 @ =gStringVar3 - ldr r1, _080B14E4 @ =gUnknown_083CC280 - bl StringCopy - b _080B1538 - .align 2, 0 -_080B14C8: .4byte gStringVar1 -_080B14CC: .4byte gContestMons + 0x2 -_080B14D0: .4byte gStringVar2 -_080B14D4: .4byte gSharedMem + 0x19260 -_080B14D8: .4byte gMoveNames -_080B14DC: .4byte gContestMoves -_080B14E0: .4byte gStringVar3 -_080B14E4: .4byte gUnknown_083CC280 -_080B14E8: - lsrs r0, r1, 29 - cmp r0, 0x1 - bne _080B1500 - ldr r0, _080B14F8 @ =gStringVar3 - ldr r1, _080B14FC @ =gUnknown_083CC288 - bl StringCopy - b _080B1538 - .align 2, 0 -_080B14F8: .4byte gStringVar3 -_080B14FC: .4byte gUnknown_083CC288 -_080B1500: - lsrs r0, r1, 29 - cmp r0, 0x2 - bne _080B1518 - ldr r0, _080B1510 @ =gStringVar3 - ldr r1, _080B1514 @ =gUnknown_083CC290 - bl StringCopy - b _080B1538 - .align 2, 0 -_080B1510: .4byte gStringVar3 -_080B1514: .4byte gUnknown_083CC290 -_080B1518: - lsrs r0, r1, 29 - cmp r0, 0x3 - bne _080B1530 - ldr r0, _080B1528 @ =gStringVar3 - ldr r1, _080B152C @ =gUnknown_083CC299 - bl StringCopy - b _080B1538 - .align 2, 0 -_080B1528: .4byte gStringVar3 -_080B152C: .4byte gUnknown_083CC299 -_080B1530: - ldr r0, _080B1568 @ =gStringVar3 - ldr r1, _080B156C @ =gUnknown_083CC2A3 - bl StringCopy -_080B1538: - ldr r4, _080B1570 @ =gStringVar4 - ldr r1, _080B1574 @ =gUnknown_083CC188 - lsls r0, r5, 2 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringExpandPlaceholders - bl sub_80AF138 - ldr r0, _080B1578 @ =gMenuWindow - movs r2, 0xC2 - lsls r2, 2 - movs r1, 0xF - str r1, [sp] - adds r1, r4, 0 - movs r3, 0x1 - bl sub_8002EB0 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1568: .4byte gStringVar3 -_080B156C: .4byte gUnknown_083CC2A3 -_080B1570: .4byte gStringVar4 -_080B1574: .4byte gUnknown_083CC188 -_080B1578: .4byte gMenuWindow - thumb_func_end sub_80B146C - - thumb_func_start sub_80B157C -sub_80B157C: @ 80B157C - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080B1598 @ =gSharedMem + 0x19260 - adds r1, r0 - ldrb r0, [r1, 0xC] - movs r2, 0x1 - orrs r0, r2 - strb r0, [r1, 0xC] - movs r0, 0 - strh r0, [r1, 0x6] - bx lr - .align 2, 0 -_080B1598: .4byte gSharedMem + 0x19260 - thumb_func_end sub_80B157C - - thumb_func_start sub_80B159C -sub_80B159C: @ 80B159C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - movs r0, 0 - mov r12, r0 - movs r4, 0 - ldr r1, _080B1600 @ =gUnknown_02038696 - mov r9, r1 - add r2, sp, 0x4 - mov r6, r9 - movs r5, 0 - adds r3, r2, 0 -_080B15B8: - mov r0, sp - adds r1, r0, r4 - adds r0, r4, r6 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, r4 - strb r5, [r0] - adds r4, 0x1 - cmp r4, 0x3 - ble _080B15B8 - movs r4, 0 - ldr r7, _080B1604 @ =gSharedMem + 0x19260 - adds r5, r2, 0 - movs r1, 0x1 - mov r8, r1 -_080B15D6: - movs r2, 0 - adds r1, r7, 0 -_080B15DA: - ldrb r0, [r1, 0x19] - cmp r0, r4 - beq _080B1608 - adds r1, 0x1C - adds r2, 0x1 - cmp r2, 0x3 - ble _080B15DA -_080B15E8: - cmp r2, 0x4 - bne _080B1680 - movs r2, 0 - ldrb r0, [r5] - cmp r0, 0 - bne _080B1616 - ldrb r0, [r7, 0x19] - cmp r0, 0xFF - bne _080B1616 - mov r12, r2 - movs r2, 0x1 - b _080B163A - .align 2, 0 -_080B1600: .4byte gUnknown_02038696 -_080B1604: .4byte gSharedMem + 0x19260 -_080B1608: - mov r1, sp - adds r0, r1, r2 - strb r4, [r0] - adds r0, r5, r2 - mov r1, r8 - strb r1, [r0] - b _080B15E8 -_080B1616: - adds r2, 0x1 - cmp r2, 0x3 - bgt _080B1672 - adds r0, r5, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080B1616 - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r7 - ldrb r0, [r0, 0x19] - cmp r0, 0xFF - bne _080B1616 - lsls r0, r2, 24 - lsrs r0, 24 - mov r12, r0 - adds r2, 0x1 -_080B163A: - cmp r2, 0x3 - bgt _080B1672 - ldr r6, _080B16C8 @ =gUnknown_02038696 - lsls r0, r2, 3 - subs r0, r2 - lsls r3, r0, 2 -_080B1646: - adds r0, r5, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080B166A - adds r0, r3, r7 - ldrb r0, [r0, 0x19] - cmp r0, 0xFF - bne _080B166A - mov r1, r12 - adds r0, r1, r6 - adds r1, r2, r6 - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - bls _080B166A - lsls r0, r2, 24 - lsrs r0, 24 - mov r12, r0 -_080B166A: - adds r3, 0x1C - adds r2, 0x1 - cmp r2, 0x3 - ble _080B1646 -_080B1672: - mov r0, sp - add r0, r12 - strb r4, [r0] - mov r1, r12 - adds r0, r5, r1 - mov r1, r8 - strb r1, [r0] -_080B1680: - adds r4, 0x1 - cmp r4, 0x3 - ble _080B15D6 - movs r4, 0 - ldr r5, _080B16CC @ =gSharedMem + 0x192D0 - adds r3, r5, 0 - subs r3, 0x60 - movs r6, 0xFF - movs r7, 0x3F -_080B1692: - adds r1, r4, r5 - mov r0, sp - adds r2, r0, r4 - ldrb r0, [r2] - strb r0, [r1] - ldrb r0, [r3, 0x9] - orrs r0, r6 - strb r0, [r3, 0x9] - ldrb r1, [r3] - adds r0, r7, 0 - ands r0, r1 - strb r0, [r3] - mov r0, r9 - adds r1, r4, r0 - ldrb r0, [r2] - strb r0, [r1] - adds r3, 0x1C - adds r4, 0x1 - cmp r4, 0x3 - ble _080B1692 - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B16C8: .4byte gUnknown_02038696 -_080B16CC: .4byte gSharedMem + 0x192D0 - thumb_func_end sub_80B159C - - thumb_func_start sub_80B16D0 -sub_80B16D0: @ 80B16D0 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x30] - adds r1, r0, 0x1 - strh r1, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x54 - ble _080B1702 - movs r0, 0 - strh r0, [r2, 0x30] - adds r3, r2, 0 - adds r3, 0x3E - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r3] - ldr r0, _080B1708 @ =SpriteCallbackDummy - str r0, [r2, 0x1C] - ldr r2, _080B170C @ =gSharedMem + 0x19204 - ldrb r1, [r2, 0x6] - movs r0, 0x11 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x6] -_080B1702: - pop {r0} - bx r0 - .align 2, 0 -_080B1708: .4byte SpriteCallbackDummy -_080B170C: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B16D0 - - thumb_func_start sub_80B1710 -sub_80B1710: @ 80B1710 - push {r4,r5,lr} - lsls r0, 24 - lsrs r1, r0, 24 - ldr r0, _080B172C @ =gSharedMem + 0x19204 - ldrb r5, [r0, 0x12] - cmp r1, 0x8 - bls _080B1720 - b _080B18C0 -_080B1720: - lsls r0, r1, 2 - ldr r1, _080B1730 @ =_080B1734 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080B172C: .4byte gSharedMem + 0x19204 -_080B1730: .4byte _080B1734 - .align 2, 0 -_080B1734: - .4byte _080B1758 - .4byte _080B1758 - .4byte _080B1788 - .4byte _080B17BC - .4byte _080B17F0 - .4byte _080B1824 - .4byte _080B1858 - .4byte _080B18C0 - .4byte _080B188C -_080B1758: - ldr r0, _080B177C @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x2E] - ldr r2, _080B1780 @ =0x000003ff - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B1784 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x20 - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B177C: .4byte gSprites -_080B1780: .4byte 0x000003ff -_080B1784: .4byte 0xfffffc00 -_080B1788: - ldr r0, _080B17B0 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0x4 - ldr r3, _080B17B4 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B17B8 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x1F - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B17B0: .4byte gSprites -_080B17B4: .4byte 0x000003ff -_080B17B8: .4byte 0xfffffc00 -_080B17BC: - ldr r0, _080B17E4 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0x8 - ldr r3, _080B17E8 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B17EC @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x1F - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B17E4: .4byte gSprites -_080B17E8: .4byte 0x000003ff -_080B17EC: .4byte 0xfffffc00 -_080B17F0: - ldr r0, _080B1818 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0xC - ldr r3, _080B181C @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B1820 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x2D - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B1818: .4byte gSprites -_080B181C: .4byte 0x000003ff -_080B1820: .4byte 0xfffffc00 -_080B1824: - ldr r0, _080B184C @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0xC - ldr r3, _080B1850 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B1854 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x2D - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B184C: .4byte gSprites -_080B1850: .4byte 0x000003ff -_080B1854: .4byte 0xfffffc00 -_080B1858: - ldr r0, _080B1880 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0x10 - ldr r3, _080B1884 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B1888 @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x2D - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B1880: .4byte gSprites -_080B1884: .4byte 0x000003ff -_080B1888: .4byte 0xfffffc00 -_080B188C: - ldr r0, _080B18B4 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0x18 - ldr r3, _080B18B8 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B18BC @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0xC3 - bl PlaySE - b _080B18E4 - .align 2, 0 -_080B18B4: .4byte gSprites -_080B18B8: .4byte 0x000003ff -_080B18BC: .4byte 0xfffffc00 -_080B18C0: - ldr r0, _080B1914 @ =gSprites - lsls r4, r5, 4 - adds r1, r4, r5 - lsls r1, 2 - adds r1, r0 - ldrh r2, [r1, 0x2E] - adds r2, 0x14 - ldr r3, _080B1918 @ =0x000003ff - adds r0, r3, 0 - ands r2, r0 - ldrh r3, [r1, 0x4] - ldr r0, _080B191C @ =0xfffffc00 - ands r0, r3 - orrs r0, r2 - strh r0, [r1, 0x4] - movs r0, 0x2D - bl PlaySE -_080B18E4: - adds r2, r4, 0 - ldr r4, _080B1914 @ =gSprites - adds r2, r5 - lsls r2, 2 - adds r1, r2, r4 - movs r0, 0 - strh r0, [r1, 0x30] - adds r1, 0x3E - ldrb r3, [r1] - subs r0, 0x5 - ands r0, r3 - strb r0, [r1] - adds r4, 0x1C - adds r2, r4 - ldr r0, _080B1920 @ =sub_80B16D0 - str r0, [r2] - ldr r2, _080B1924 @ =gSharedMem + 0x19204 - ldrb r0, [r2, 0x6] - movs r1, 0x10 - orrs r0, r1 - strb r0, [r2, 0x6] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1914: .4byte gSprites -_080B1918: .4byte 0x000003ff -_080B191C: .4byte 0xfffffc00 -_080B1920: .4byte sub_80B16D0 -_080B1924: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1710 - - thumb_func_start sub_80B1928 -sub_80B1928: @ 80B1928 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r5, 0 - ldr r6, _080B19BC @ =gSharedMem + 0x19204 - ldr r0, _080B19C0 @ =gSprites - mov r10, r0 - movs r1, 0x58 - adds r1, r6 - mov r9, r1 - ldr r0, _080B19C4 @ =0x06010000 - mov r8, r0 - ldr r7, _080B19C8 @ =REG_BG0CNT -_080B1946: - movs r0, 0x13 - ldrsb r0, [r6, r0] - ldr r4, _080B19CC @ =gContestApplauseMeterGfx - cmp r5, r0 - bge _080B1952 - adds r4, 0x40 -_080B1952: - mov r0, r9 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r10 - ldrh r1, [r0, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r0, r5, 0 - adds r0, 0x11 - adds r1, r0 - lsls r1, 5 - add r1, r8 - adds r0, r4, 0 - adds r2, r7, 0 - bl CpuSet - adds r0, r4, 0 - adds r0, 0x20 - mov r1, r9 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r10 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r5, 0 - adds r2, 0x19 - adds r1, r2 - lsls r1, 5 - add r1, r8 - adds r2, r7, 0 - bl CpuSet - movs r0, 0x13 - ldrsb r0, [r6, r0] - cmp r0, 0x4 - ble _080B19A8 - bl sub_80B1A2C -_080B19A8: - adds r5, 0x1 - cmp r5, 0x4 - ble _080B1946 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B19BC: .4byte gSharedMem + 0x19204 -_080B19C0: .4byte gSprites -_080B19C4: .4byte 0x06010000 -_080B19C8: .4byte REG_BG0CNT -_080B19CC: .4byte gContestApplauseMeterGfx - thumb_func_end sub_80B1928 - - thumb_func_start unref_sub_80B19D0 -unref_sub_80B19D0: @ 80B19D0 - push {lr} - sub sp, 0x18 - ldr r1, _080B19F4 @ =gUnknown_083CC2EC - add r0, sp, 0x4 - bl StringCopy - ldr r0, _080B19F8 @ =gUnknown_03004210 - movs r2, 0xAA - lsls r2, 2 - movs r1, 0 - str r1, [sp] - add r1, sp, 0x4 - movs r3, 0 - bl sub_8003460 - add sp, 0x18 - pop {r0} - bx r0 - .align 2, 0 -_080B19F4: .4byte gUnknown_083CC2EC -_080B19F8: .4byte gUnknown_03004210 - thumb_func_end unref_sub_80B19D0 - - thumb_func_start contest_get_move_excitement -contest_get_move_excitement: @ 80B19FC - lsls r0, 16 - ldr r3, _080B1A20 @ =gContestExcitementTable - ldr r1, _080B1A24 @ =gContestMoves - lsrs r0, 13 - adds r0, r1 - ldrb r1, [r0, 0x1] - lsls r1, 29 - lsrs r1, 29 - ldr r0, _080B1A28 @ =gScriptContestCategory - ldrh r2, [r0] - lsls r0, r2, 2 - adds r0, r2 - adds r1, r0 - adds r1, r3 - movs r0, 0 - ldrsb r0, [r1, r0] - bx lr - .align 2, 0 -_080B1A20: .4byte gContestExcitementTable -_080B1A24: .4byte gContestMoves -_080B1A28: .4byte gScriptContestCategory - thumb_func_end contest_get_move_excitement - - thumb_func_start sub_80B1A2C -sub_80B1A2C: @ 80B1A2C - push {r4,r5,lr} - ldr r0, _080B1A60 @ =c3_08130B10 - movs r1, 0xA - bl CreateTask - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r0, _080B1A64 @ =gTasks - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - adds r4, r0 - movs r0, 0x1 - strh r0, [r4, 0xA] - ldr r0, _080B1A68 @ =0x0000abe2 - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0xC] - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080B1A60: .4byte c3_08130B10 -_080B1A64: .4byte gTasks -_080B1A68: .4byte 0x0000abe2 - thumb_func_end sub_80B1A2C - - thumb_func_start c3_08130B10 -c3_08130B10: @ 80B1A6C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _080B1A9C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r2, r0, r1 - ldrh r0, [r2, 0x8] - adds r0, 0x1 - strh r0, [r2, 0x8] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bne _080B1B06 - movs r0, 0 - strh r0, [r2, 0x8] - movs r3, 0xE - ldrsh r0, [r2, r3] - cmp r0, 0 - bne _080B1AA0 - ldrh r0, [r2, 0x10] - adds r0, 0x1 - b _080B1AA4 - .align 2, 0 -_080B1A9C: .4byte gTasks -_080B1AA0: - ldrh r0, [r2, 0x10] - subs r0, 0x1 -_080B1AA4: - strh r0, [r2, 0x10] - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0xC - ldrsh r0, [r4, r1] - lsls r0, 4 - movs r3, 0x84 - lsls r3, 1 - adds r6, r3, 0 - adds r0, r6 - lsls r0, 16 - lsrs r0, 16 - ldrb r2, [r4, 0x10] - ldr r3, _080B1B0C @ =0x00007fff - movs r1, 0x1 - bl BlendPalette - movs r1, 0x10 - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080B1AD6 - cmp r0, 0x10 - bne _080B1B06 -_080B1AD6: - ldrh r0, [r4, 0xE] - movs r1, 0x1 - eors r0, r1 - strh r0, [r4, 0xE] - ldr r0, _080B1B10 @ =gSharedMem + 0x19204 - ldrb r0, [r0, 0x13] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x4 - bgt _080B1B06 - movs r3, 0xC - ldrsh r0, [r4, r3] - lsls r0, 4 - adds r0, r6 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - movs r2, 0 - movs r3, 0x1F - bl BlendPalette - adds r0, r5, 0 - bl DestroyTask -_080B1B06: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B1B0C: .4byte 0x00007fff -_080B1B10: .4byte gSharedMem + 0x19204 - thumb_func_end c3_08130B10 - - thumb_func_start sub_80B1B14 -sub_80B1B14: @ 80B1B14 - push {r4,lr} - ldr r0, _080B1B58 @ =sub_80B1B68 - movs r1, 0xA - bl CreateTask - ldr r4, _080B1B5C @ =gSprites - ldr r3, _080B1B60 @ =gSharedMem + 0x19204 - adds r2, r3, 0 - adds r2, 0x58 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r1, _080B1B64 @ =0x0000ffba - strh r1, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - ldrb r0, [r3, 0x6] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r3, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B1B58: .4byte sub_80B1B68 -_080B1B5C: .4byte gSprites -_080B1B60: .4byte gSharedMem + 0x19204 -_080B1B64: .4byte 0x0000ffba - thumb_func_end sub_80B1B14 - - thumb_func_start sub_80B1B68 -sub_80B1B68: @ 80B1B68 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - adds r3, r0, 0 - ldr r4, _080B1BD0 @ =gSharedMem + 0x19204 - adds r0, r4, 0 - adds r0, 0x58 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080B1BD4 @ =gSprites - adds r2, r0, r1 - ldr r0, _080B1BD8 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - movs r5, 0xD0 - lsls r5, 3 - adds r0, r5, 0 - ldrh r5, [r1, 0x1C] - adds r0, r5 - strh r0, [r1, 0x1C] - lsls r0, 16 - asrs r0, 24 - ldrh r5, [r2, 0x24] - adds r0, r5 - strh r0, [r2, 0x24] - ldrb r0, [r1, 0x1C] - strh r0, [r1, 0x1C] - movs r1, 0x24 - ldrsh r0, [r2, r1] - cmp r0, 0 - ble _080B1BB2 - movs r0, 0 - strh r0, [r2, 0x24] -_080B1BB2: - movs r5, 0x24 - ldrsh r0, [r2, r5] - cmp r0, 0 - bne _080B1BCA - ldrb r1, [r4, 0x6] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x6] - adds r0, r3, 0 - bl DestroyTask -_080B1BCA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1BD0: .4byte gSharedMem + 0x19204 -_080B1BD4: .4byte gSprites -_080B1BD8: .4byte gTasks - thumb_func_end sub_80B1B68 - - thumb_func_start sub_80B1BDC -sub_80B1BDC: @ 80B1BDC - push {r4-r6,lr} - ldr r6, _080B1C04 @ =gSprites - ldr r4, _080B1C08 @ =gSharedMem + 0x19204 - adds r5, r4, 0 - adds r5, 0x58 - ldrb r0, [r5] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - adds r1, 0x3E - ldrb r0, [r1] - lsls r0, 29 - cmp r0, 0 - bge _080B1C0C - ldrb r1, [r4, 0x6] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - b _080B1C28 - .align 2, 0 -_080B1C04: .4byte gSprites -_080B1C08: .4byte gSharedMem + 0x19204 -_080B1C0C: - ldr r0, _080B1C30 @ =sub_80B1C34 - movs r1, 0xA - bl CreateTask - ldrb r1, [r5] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0 - strh r1, [r0, 0x24] - ldrb r0, [r4, 0x6] - movs r1, 0x40 - orrs r0, r1 -_080B1C28: - strb r0, [r4, 0x6] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B1C30: .4byte sub_80B1C34 - thumb_func_end sub_80B1BDC - - thumb_func_start sub_80B1C34 -sub_80B1C34: @ 80B1C34 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - ldr r5, _080B1CAC @ =gSharedMem + 0x19204 - adds r0, r5, 0 - adds r0, 0x58 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080B1CB0 @ =gSprites - adds r3, r0, r1 - ldr r0, _080B1CB4 @ =gTasks - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 3 - adds r2, r0 - movs r1, 0xD0 - lsls r1, 3 - adds r0, r1, 0 - ldrh r1, [r2, 0x1C] - adds r0, r1 - strh r0, [r2, 0x1C] - lsls r0, 16 - asrs r0, 24 - ldrh r1, [r3, 0x24] - subs r1, r0 - strh r1, [r3, 0x24] - ldrb r0, [r2, 0x1C] - strh r0, [r2, 0x1C] - movs r2, 0x24 - ldrsh r0, [r3, r2] - movs r1, 0x46 - negs r1, r1 - cmp r0, r1 - bge _080B1C82 - ldr r0, _080B1CB8 @ =0x0000ffba - strh r0, [r3, 0x24] -_080B1C82: - movs r2, 0x24 - ldrsh r0, [r3, r2] - cmp r0, r1 - bne _080B1CA6 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldrb r1, [r5, 0x6] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x6] - adds r0, r4, 0 - bl DestroyTask -_080B1CA6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1CAC: .4byte gSharedMem + 0x19204 -_080B1CB0: .4byte gSprites -_080B1CB4: .4byte gTasks -_080B1CB8: .4byte 0x0000ffba - thumb_func_end sub_80B1C34 - - thumb_func_start sub_80B1CBC -sub_80B1CBC: @ 80B1CBC - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080B1CF0 @ =sub_80B1CFC - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B1CF4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - lsls r4, 24 - asrs r4, 24 - strh r4, [r1, 0x8] - ldr r2, _080B1CF8 @ =gSharedMem + 0x19204 - ldrb r0, [r2, 0x6] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r2, 0x6] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B1CF0: .4byte sub_80B1CFC -_080B1CF4: .4byte gTasks -_080B1CF8: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1CBC - - thumb_func_start sub_80B1CFC -sub_80B1CFC: @ 80B1CFC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _080B1D20 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0x1C - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080B1D30 - cmp r0, 0x1 - bgt _080B1D24 - cmp r0, 0 - beq _080B1D2A - b _080B1D78 - .align 2, 0 -_080B1D20: .4byte gTasks -_080B1D24: - cmp r0, 0x2 - beq _080B1D50 - b _080B1D78 -_080B1D2A: - bl sub_80B1B14 - b _080B1D44 -_080B1D30: - ldr r0, _080B1D4C @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x6] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - bne _080B1D78 - movs r0, 0x8 - ldrsb r0, [r4, r0] - bl nullsub_18 -_080B1D44: - ldrh r0, [r4, 0x1C] - adds r0, 0x1 - strh r0, [r4, 0x1C] - b _080B1D78 - .align 2, 0 -_080B1D4C: .4byte gSharedMem + 0x19204 -_080B1D50: - ldrh r0, [r4, 0x1E] - adds r1, r0, 0x1 - strh r1, [r4, 0x1E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - ble _080B1D78 - movs r0, 0 - strh r0, [r4, 0x1E] - bl sub_80B1928 - ldr r2, _080B1D80 @ =gSharedMem + 0x19204 - ldrb r1, [r2, 0x6] - movs r0, 0x21 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x6] - adds r0, r5, 0 - bl DestroyTask -_080B1D78: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1D80: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1CFC - - thumb_func_start unref_sub_80B1D84 -unref_sub_80B1D84: @ 80B1D84 - ldr r3, _080B1DB0 @ =gSprites - ldr r2, _080B1DB4 @ =gSharedMem + 0x19204 - adds r2, 0x58 - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r1, 0 - strh r1, [r0, 0x24] - ldrb r1, [r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - bx lr - .align 2, 0 -_080B1DB0: .4byte gSprites -_080B1DB4: .4byte gSharedMem + 0x19204 - thumb_func_end unref_sub_80B1D84 - - thumb_func_start unref_sub_80B1DB8 -unref_sub_80B1DB8: @ 80B1DB8 - ldr r2, _080B1DD4 @ =gSprites - ldr r0, _080B1DD8 @ =gSharedMem + 0x19204 - adds r0, 0x58 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - bx lr - .align 2, 0 -_080B1DD4: .4byte gSprites -_080B1DD8: .4byte gSharedMem + 0x19204 - thumb_func_end unref_sub_80B1DB8 - - thumb_func_start sub_80B1DDC -sub_80B1DDC: @ 80B1DDC - push {lr} - ldr r0, _080B1DF4 @ =sub_80B1DFC - movs r1, 0xF - bl CreateTask - ldr r2, _080B1DF8 @ =gSharedMem + 0x19204 - ldrb r0, [r2, 0x6] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x6] - pop {r0} - bx r0 - .align 2, 0 -_080B1DF4: .4byte sub_80B1DFC -_080B1DF8: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1DDC - - thumb_func_start sub_80B1DFC -sub_80B1DFC: @ 80B1DFC - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, _080B1E3C @ =gTasks - lsls r4, r5, 2 - adds r0, r4, r5 - lsls r0, 3 - adds r3, r0, r2 - ldrh r0, [r3, 0x1C] - adds r1, r0, 0x1 - strh r1, [r3, 0x1C] - lsls r0, 16 - asrs r0, 16 - adds r6, r2, 0 - cmp r0, 0x6 - ble _080B1E8E - movs r0, 0 - strh r0, [r3, 0x1C] - movs r1, 0x1E - ldrsh r0, [r3, r1] - cmp r0, 0 - bne _080B1E50 - ldr r1, _080B1E40 @ =gSharedMem + 0x16800 - ldr r2, _080B1E44 @ =0x06002000 - ldr r0, _080B1E48 @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080B1E4C @ =0x84000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - b _080B1E66 - .align 2, 0 -_080B1E3C: .4byte gTasks -_080B1E40: .4byte gSharedMem + 0x16800 -_080B1E44: .4byte 0x06002000 -_080B1E48: .4byte 0x040000d4 -_080B1E4C: .4byte 0x84000400 -_080B1E50: - ldr r1, _080B1E94 @ =gSharedMem + 0x15800 - ldr r2, _080B1E98 @ =0x06002000 - ldr r0, _080B1E9C @ =0x040000d4 - str r1, [r0] - str r2, [r0, 0x4] - ldr r1, _080B1EA0 @ =0x84000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - ldrh r0, [r3, 0x20] - adds r0, 0x1 - strh r0, [r3, 0x20] -_080B1E66: - adds r0, r4, 0 - adds r0, r5 - lsls r0, 3 - adds r0, r6 - ldrh r1, [r0, 0x1E] - movs r2, 0x1 - eors r1, r2 - strh r1, [r0, 0x1E] - movs r1, 0x20 - ldrsh r0, [r0, r1] - cmp r0, 0x9 - bne _080B1E8E - ldr r2, _080B1EA4 @ =gSharedMem + 0x19204 - ldrb r1, [r2, 0x6] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x6] - adds r0, r5, 0 - bl DestroyTask -_080B1E8E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B1E94: .4byte gSharedMem + 0x15800 -_080B1E98: .4byte 0x06002000 -_080B1E9C: .4byte 0x040000d4 -_080B1EA0: .4byte 0x84000400 -_080B1EA4: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1DFC - - thumb_func_start sub_80B1EA8 -sub_80B1EA8: @ 80B1EA8 - push {r4-r7,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r5, r1, 24 - ldr r0, _080B1EE4 @ =sub_80B1F4C - movs r1, 0xA - bl CreateTask - lsls r0, 24 - lsrs r6, r0, 24 - lsls r4, 24 - cmp r4, 0 - ble _080B1F08 - ldr r7, _080B1EE8 @ =0x0000237e - lsls r0, r5, 24 - adds r4, r0, 0 - cmp r4, 0 - ble _080B1EF0 - movs r5, 0 - ldr r2, _080B1EEC @ =gSharedMem + 0x19204 - movs r1, 0x13 - ldrsb r1, [r2, r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 24 - lsrs r3, r0, 24 - b _080B1F1E - .align 2, 0 -_080B1EE4: .4byte sub_80B1F4C -_080B1EE8: .4byte 0x0000237e -_080B1EEC: .4byte gSharedMem + 0x19204 -_080B1EF0: - ldr r2, _080B1F04 @ =gSharedMem + 0x19204 - movs r1, 0x13 - ldrsb r1, [r2, r1] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - b _080B1F1E - .align 2, 0 -_080B1F04: .4byte gSharedMem + 0x19204 -_080B1F08: - movs r7, 0 - lsls r0, r5, 24 - adds r4, r0, 0 - cmp r4, 0 - ble _080B1F18 - movs r5, 0 - movs r3, 0xC - b _080B1F1C -_080B1F18: - movs r5, 0xC - movs r3, 0 -_080B1F1C: - ldr r2, _080B1F44 @ =gSharedMem + 0x19204 -_080B1F1E: - ldr r1, _080B1F48 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0x8] - strh r5, [r0, 0xA] - asrs r1, r4, 24 - strh r1, [r0, 0xC] - strh r3, [r0, 0xE] - ldrb r1, [r2, 0x7] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x7] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B1F44: .4byte gSharedMem + 0x19204 -_080B1F48: .4byte gTasks - thumb_func_end sub_80B1EA8 - - thumb_func_start sub_80B1F4C -sub_80B1F4C: @ 80B1F4C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r2, _080B1F7C @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r3, r0, r2 - ldrh r0, [r3, 0x1C] - adds r1, r0, 0x1 - strh r1, [r3, 0x1C] - lsls r0, 16 - cmp r0, 0 - blt _080B1FC4 - movs r0, 0 - strh r0, [r3, 0x1C] - movs r1, 0xC - ldrsh r0, [r3, r1] - cmp r0, 0 - ble _080B1F80 - ldrh r0, [r3, 0xA] - adds r0, 0x1 - b _080B1F84 - .align 2, 0 -_080B1F7C: .4byte gTasks -_080B1F80: - ldrh r0, [r3, 0xA] - subs r0, 0x1 -_080B1F84: - strh r0, [r3, 0xA] - lsls r4, r5, 2 - adds r4, r5 - lsls r4, 3 - adds r4, r2 - ldrb r2, [r4, 0xA] - ldrh r3, [r4, 0x8] - movs r0, 0x11 - movs r1, 0x1 - bl BlendPalette - ldrb r2, [r4, 0xA] - ldrh r3, [r4, 0x8] - movs r0, 0x1A - movs r1, 0x1 - bl BlendPalette - movs r2, 0xA - ldrsh r1, [r4, r2] - movs r2, 0xE - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080B1FC4 - adds r0, r5, 0 - bl DestroyTask - ldr r2, _080B1FCC @ =gSharedMem + 0x19204 - ldrb r1, [r2, 0x7] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x7] -_080B1FC4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080B1FCC: .4byte gSharedMem + 0x19204 - thumb_func_end sub_80B1F4C - - thumb_func_start sub_80B1FD0 -sub_80B1FD0: @ 80B1FD0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r5, 0 - ldr r0, _080B204C @ =gSharedMem + 0x19260 - ldr r6, _080B2050 @ =gSprites - adds r4, r0, 0 - adds r4, 0xD8 - adds r7, r0, 0 -_080B1FE8: - ldrb r1, [r7, 0x10] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0 - beq _080B2064 - mov r0, r8 - cmp r0, 0 - beq _080B2064 - lsls r0, r5, 24 - lsrs r0, 24 - bl sub_80B208C - ldrb r2, [r4, 0x1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r6 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, _080B2054 @ =0x060100a0 - adds r1, r2 - ldr r2, _080B2058 @ =REG_BG0HOFS - bl CpuSet - ldrb r0, [r4, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldr r2, _080B205C @ =gUnknown_083CA33C - ldr r0, _080B2060 @ =gUnknown_02038696 - adds r0, r5, r0 - ldrb r0, [r0] - adds r0, r2 - ldrb r0, [r0] - strh r0, [r1, 0x22] - ldrb r1, [r4, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r3, 0x5 - negs r3, r3 - adds r2, r3, 0 - ands r1, r2 - b _080B2076 - .align 2, 0 -_080B204C: .4byte gSharedMem + 0x19260 -_080B2050: .4byte gSprites -_080B2054: .4byte 0x060100a0 -_080B2058: .4byte REG_BG0HOFS -_080B205C: .4byte gUnknown_083CA33C -_080B2060: .4byte gUnknown_02038696 -_080B2064: - ldrb r1, [r4, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 -_080B2076: - strb r1, [r0] - adds r4, 0x4 - adds r7, 0x1C - adds r5, 0x1 - cmp r5, 0x3 - ble _080B1FE8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80B1FD0 - - thumb_func_start sub_80B208C -sub_80B208C: @ 80B208C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080B20B0 @ =gSharedMem + 0x19260 - adds r2, r1, r0 - ldrb r1, [r2, 0x10] - movs r0, 0xC0 - ands r0, r1 - cmp r0, 0x40 - bne _080B20B8 - ldrb r0, [r2, 0x19] - lsls r0, 6 - ldr r1, _080B20B4 @ =gContestNextTurnNumbersGfx - adds r0, r1 - b _080B20BA - .align 2, 0 -_080B20B0: .4byte gSharedMem + 0x19260 -_080B20B4: .4byte gContestNextTurnNumbersGfx -_080B20B8: - ldr r0, _080B20C0 @ =gContestNextTurnRandomGfx -_080B20BA: - pop {r1} - bx r1 - .align 2, 0 -_080B20C0: .4byte gContestNextTurnRandomGfx - thumb_func_end sub_80B208C - - thumb_func_start sub_80B20C4 -sub_80B20C4: @ 80B20C4 - push {r4-r7,lr} - movs r6, 0 - ldr r7, _080B2134 @ =gSharedMem + 0x192DD -_080B20CA: - adds r0, r6, r7 - ldrb r0, [r0] - cmp r0, 0 - beq _080B2126 - lsls r0, r6, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_80AF59C - lsls r0, 24 - cmp r0, 0 - bne _080B2126 - ldr r0, _080B2138 @ =gUnknown_02038696 - adds r0, r6, r0 - ldrb r0, [r0] - lsls r4, r0, 2 - adds r4, r0 - adds r4, 0x2 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - movs r1, 0x3 - bl sub_80AEFE8 - lsls r0, 16 - lsrs r0, 16 - lsls r4, 6 - ldr r2, _080B213C @ =0x0600c028 - adds r1, r4, r2 - strh r0, [r1] - ldr r1, _080B2140 @ =0x0600c02a - adds r2, r4, r1 - adds r1, r0, 0x1 - strh r1, [r2] - ldr r1, _080B2144 @ =0x0600c068 - adds r2, r4, r1 - adds r1, r0, 0 - adds r1, 0x10 - strh r1, [r2] - ldr r2, _080B2148 @ =0x0600c06a - adds r4, r2 - adds r0, 0x11 - strh r0, [r4] - movs r0, 0x63 - bl PlaySE -_080B2126: - adds r6, 0x1 - cmp r6, 0x3 - ble _080B20CA - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B2134: .4byte gSharedMem + 0x192DD -_080B2138: .4byte gUnknown_02038696 -_080B213C: .4byte 0x0600c028 -_080B2140: .4byte 0x0600c02a -_080B2144: .4byte 0x0600c068 -_080B2148: .4byte 0x0600c06a - thumb_func_end sub_80B20C4 - - thumb_func_start sub_80B214C -sub_80B214C: @ 80B214C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, _080B2178 @ =gSharedMem + 0x19260 - adds r2, r1, r0 - ldrb r1, [r2, 0x15] - movs r3, 0x1 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _080B2172 - ldrb r1, [r2, 0xC] - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _080B217C -_080B2172: - movs r0, 0 - b _080B217E - .align 2, 0 -_080B2178: .4byte gSharedMem + 0x19260 -_080B217C: - movs r0, 0x1 -_080B217E: - pop {r1} - bx r1 - thumb_func_end sub_80B214C - - thumb_func_start sub_80B2184 -sub_80B2184: @ 80B2184 - push {r4-r7,lr} - sub sp, 0x4 - ldr r4, _080B2250 @ =REG_BG1CNT - ldrb r1, [r4] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - strb r0, [r4] - ldrb r1, [r4, 0x1] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - strb r0, [r4, 0x1] - ldrb r1, [r4, 0x1] - movs r0, 0x21 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x1] - ldr r0, _080B2254 @ =gUnknown_030042C0 - movs r2, 0xF0 - strh r2, [r0] - ldr r0, _080B2258 @ =gUnknown_030041B4 - movs r1, 0xA0 - strh r1, [r0] - ldr r0, _080B225C @ =REG_BG1HOFS - strh r2, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r1, _080B2260 @ =0x0600f000 - movs r0, 0 - str r0, [sp] - ldr r0, _080B2264 @ =0x040000d4 - mov r2, sp - str r2, [r0] - str r1, [r0, 0x4] - ldr r2, _080B2268 @ =0x85000400 - str r2, [r0, 0x8] - ldr r0, [r0, 0x8] - ldr r0, _080B226C @ =gUnknown_08D17C3C - bl LZDecompressVram - ldrb r1, [r4] - movs r2, 0xD - negs r2, r2 - adds r0, r2, 0 - ands r0, r1 - strb r0, [r4] - movs r4, 0 - ldr r6, _080B2270 @ =gSprites - adds r7, r2, 0 - movs r5, 0x4 - ldr r3, _080B2274 @ =gSharedMem + 0x19338 -_080B21EE: - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r2, [r1, 0x5] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r5 - strb r0, [r1, 0x5] - ldrb r0, [r3, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r2, [r1, 0x5] - adds r0, r7, 0 - ands r0, r2 - orrs r0, r5 - strb r0, [r1, 0x5] - adds r3, 0x4 - adds r4, 0x1 - cmp r4, 0x3 - ble _080B21EE - ldr r3, _080B2278 @ =REG_BG2CNT - ldrb r2, [r3] - movs r1, 0x4 - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - movs r4, 0x1 - orrs r0, r4 - strb r0, [r3] - ldr r2, _080B227C @ =REG_BG0CNT - ldrb r0, [r2] - ands r1, r0 - orrs r1, r4 - strb r1, [r2] - adds r2, 0x2 - ldrb r1, [r2, 0x1] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2, 0x1] - add sp, 0x4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B2250: .4byte REG_BG1CNT -_080B2254: .4byte gUnknown_030042C0 -_080B2258: .4byte gUnknown_030041B4 -_080B225C: .4byte REG_BG1HOFS -_080B2260: .4byte 0x0600f000 -_080B2264: .4byte 0x040000d4 -_080B2268: .4byte 0x85000400 -_080B226C: .4byte gUnknown_08D17C3C -_080B2270: .4byte gSprites -_080B2274: .4byte gSharedMem + 0x19338 -_080B2278: .4byte REG_BG2CNT -_080B227C: .4byte REG_BG0CNT - thumb_func_end sub_80B2184 - - thumb_func_start sub_80B2280 -sub_80B2280: @ 80B2280 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r2, _080B2358 @ =0x06008000 - movs r3, 0x80 - lsls r3, 6 - ldr r0, _080B235C @ =gUnknown_030042C0 - mov r12, r0 - ldr r0, _080B2360 @ =gUnknown_030041B4 - mov r8, r0 - movs r5, 0 - ldr r1, _080B2364 @ =0x040000d4 - movs r4, 0x80 - lsls r4, 5 - ldr r6, _080B2368 @ =0x85000400 - movs r7, 0x85 - lsls r7, 24 -_080B22A4: - str r5, [sp] - mov r0, sp - str r0, [r1] - str r2, [r1, 0x4] - str r6, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r2, r4 - subs r3, r4 - cmp r3, r4 - bhi _080B22A4 - str r5, [sp] - mov r0, sp - str r0, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 2 - orrs r0, r7 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - ldr r1, _080B236C @ =0x0600f000 - movs r2, 0 - str r2, [sp] - ldr r0, _080B2364 @ =0x040000d4 - mov r3, sp - str r3, [r0] - str r1, [r0, 0x4] - ldr r1, _080B2368 @ =0x85000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - mov r0, r12 - strh r2, [r0] - mov r3, r8 - strh r2, [r3] - ldr r2, _080B2370 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldrb r1, [r2, 0x1] - movs r0, 0x3F - ands r0, r1 - strb r0, [r2, 0x1] - ldrb r1, [r2, 0x1] - movs r0, 0x21 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x1] - ldrb r1, [r2] - movs r3, 0xD - negs r3, r3 - adds r0, r3, 0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r2] - movs r4, 0 - ldr r5, _080B2374 @ =gSprites - adds r6, r3, 0 - ldr r3, _080B2378 @ =gSharedMem + 0x19338 -_080B231E: - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x5] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1, 0x5] - ldrb r0, [r3, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldrb r2, [r1, 0x5] - adds r0, r6, 0 - ands r0, r2 - strb r0, [r1, 0x5] - adds r3, 0x4 - adds r4, 0x1 - cmp r4, 0x3 - ble _080B231E - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B2358: .4byte 0x06008000 -_080B235C: .4byte gUnknown_030042C0 -_080B2360: .4byte gUnknown_030041B4 -_080B2364: .4byte 0x040000d4 -_080B2368: .4byte 0x85000400 -_080B236C: .4byte 0x0600f000 -_080B2370: .4byte REG_BG1CNT -_080B2374: .4byte gSprites -_080B2378: .4byte gSharedMem + 0x19338 - thumb_func_end sub_80B2280 - - thumb_func_start sub_80B237C -sub_80B237C: @ 80B237C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _080B23AC @ =gUnknown_030042C0 - movs r0, 0 - strh r0, [r1] - ldr r1, _080B23B0 @ =gUnknown_030041B4 - movs r0, 0xA0 - strh r0, [r1] - movs r0, 0x62 - movs r1, 0 - bl PlaySE12WithPanning - ldr r1, _080B23B4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _080B23B8 @ =sub_80B23BC - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B23AC: .4byte gUnknown_030042C0 -_080B23B0: .4byte gUnknown_030041B4 -_080B23B4: .4byte gTasks -_080B23B8: .4byte sub_80B23BC - thumb_func_end sub_80B237C - - thumb_func_start sub_80B23BC -sub_80B23BC: @ 80B23BC - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r1, _080B23F4 @ =gUnknown_030041B4 - ldrh r0, [r1] - subs r0, 0x7 - strh r0, [r1] - lsls r0, 16 - cmp r0, 0 - bge _080B23D4 - movs r0, 0 - strh r0, [r1] -_080B23D4: - ldrh r2, [r1] - cmp r2, 0 - bne _080B23EE - ldr r0, _080B23F8 @ =gTasks - lsls r1, r3, 2 - adds r1, r3 - lsls r1, 3 - adds r1, r0 - strh r2, [r1, 0x8] - strh r2, [r1, 0xA] - strh r2, [r1, 0xC] - ldr r0, _080B23FC @ =sub_80B2400 - str r0, [r1] -_080B23EE: - pop {r0} - bx r0 - .align 2, 0 -_080B23F4: .4byte gUnknown_030041B4 -_080B23F8: .4byte gTasks -_080B23FC: .4byte sub_80B2400 - thumb_func_end sub_80B23BC - - thumb_func_start sub_80B2400 -sub_80B2400: @ 80B2400 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080B2424 @ =gTasks - lsls r3, r4, 2 - adds r0, r3, r4 - lsls r0, 3 - adds r5, r0, r1 - movs r0, 0x8 - ldrsh r1, [r5, r0] - cmp r1, 0x1 - beq _080B247C - cmp r1, 0x1 - bgt _080B2428 - cmp r1, 0 - beq _080B2432 - b _080B24FC - .align 2, 0 -_080B2424: .4byte gTasks -_080B2428: - cmp r1, 0x2 - beq _080B24D6 - cmp r1, 0x3 - beq _080B24EC - b _080B24FC -_080B2432: - movs r2, 0 - adds r6, r3, 0 - ldr r5, _080B2470 @ =gSharedMem + 0x19218 - ldr r3, _080B2474 @ =gUnknown_02038696 -_080B243A: - adds r0, r2, r5 - adds r1, r2, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _080B243A - bl sub_80AFA5C - bl sub_80B0588 - bl sub_80AEF50 - bl sub_80B1118 - movs r0, 0x1 - bl sub_80B1FD0 - bl sub_80AFFA0 - ldr r0, _080B2478 @ =gTasks - adds r1, r6, r4 - lsls r1, 3 - adds r1, r0 - movs r0, 0x1 - strh r0, [r1, 0x8] - b _080B24FC - .align 2, 0 -_080B2470: .4byte gSharedMem + 0x19218 -_080B2474: .4byte gUnknown_02038696 -_080B2478: .4byte gTasks -_080B247C: - ldr r0, _080B24C0 @ =gIsLinkContest - ldrb r0, [r0] - ands r1, r0 - cmp r1, 0 - beq _080B24D0 - ldr r2, _080B24C4 @ =gSharedMem + 0x19204 - ldrb r0, [r2, 0x7] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2, 0x7] - bl sub_80AE074 - lsls r0, 24 - cmp r0, 0 - beq _080B249E - bl sub_80AF438 -_080B249E: - ldr r4, _080B24C8 @ =sub_80C8C80 - adds r0, r4, 0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B24CC @ =sub_80AD8DC - adds r1, r4, 0 - bl SetTaskFuncWithFollowupFunc - bl sub_80AF860 - movs r0, 0x2 - strh r0, [r5, 0x8] - b _080B24FC - .align 2, 0 -_080B24C0: .4byte gIsLinkContest -_080B24C4: .4byte gSharedMem + 0x19204 -_080B24C8: .4byte sub_80C8C80 -_080B24CC: .4byte sub_80AD8DC -_080B24D0: - bl sub_80AF438 - b _080B24E2 -_080B24D6: - ldr r0, _080B24E8 @ =gSharedMem + 0x19204 - ldrb r1, [r0, 0x7] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _080B24FC -_080B24E2: - movs r0, 0x3 - strh r0, [r5, 0x8] - b _080B24FC - .align 2, 0 -_080B24E8: .4byte gSharedMem + 0x19204 -_080B24EC: - bl sub_80AF120 - bl sub_80AEB30 - movs r0, 0 - strh r0, [r5, 0x8] - ldr r0, _080B2504 @ =sub_80B253C - str r0, [r5] -_080B24FC: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B2504: .4byte sub_80B253C - thumb_func_end sub_80B2400 - - thumb_func_start sub_80B2508 -sub_80B2508: @ 80B2508 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r1, _080B2530 @ =gUnknown_030041B4 - ldrh r0, [r1] - adds r0, 0x7 - strh r0, [r1] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA0 - ble _080B252C - ldr r0, _080B2534 @ =gTasks - lsls r1, r2, 2 - adds r1, r2 - lsls r1, 3 - adds r1, r0 - ldr r0, _080B2538 @ =sub_80ADCDC - str r0, [r1] -_080B252C: - pop {r0} - bx r0 - .align 2, 0 -_080B2530: .4byte gUnknown_030041B4 -_080B2534: .4byte gTasks -_080B2538: .4byte sub_80ADCDC - thumb_func_end sub_80B2508 - - thumb_func_start sub_80B253C -sub_80B253C: @ 80B253C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B255C @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldrh r2, [r1, 0xC] - movs r3, 0xC - ldrsh r0, [r1, r3] - cmp r0, 0x9 - bgt _080B2560 - adds r0, r2, 0x1 - strh r0, [r1, 0xC] - b _080B259C - .align 2, 0 -_080B255C: .4byte gTasks -_080B2560: - ldrh r3, [r1, 0xA] - movs r4, 0xA - ldrsh r0, [r1, r4] - cmp r0, 0 - bne _080B257E - ldrh r2, [r1, 0x8] - movs r4, 0x8 - ldrsh r0, [r1, r4] - cmp r0, 0x10 - bne _080B257A - adds r0, r3, 0x1 - strh r0, [r1, 0xA] - b _080B259C -_080B257A: - adds r0, r2, 0x1 - b _080B259A -_080B257E: - ldrh r0, [r1, 0x8] - movs r3, 0x8 - ldrsh r2, [r1, r3] - cmp r2, 0 - bne _080B2598 - strh r2, [r1, 0xA] - strh r2, [r1, 0xC] - ldr r0, _080B2594 @ =sub_80B25A4 - str r0, [r1] - b _080B259C - .align 2, 0 -_080B2594: .4byte sub_80B25A4 -_080B2598: - subs r0, 0x1 -_080B259A: - strh r0, [r1, 0x8] -_080B259C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80B253C - - thumb_func_start sub_80B25A4 -sub_80B25A4: @ 80B25A4 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B25C4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r4, r1, r2 - ldrh r1, [r4, 0xC] - movs r2, 0xC - ldrsh r0, [r4, r2] - cmp r0, 0x9 - bgt _080B25C8 - adds r0, r1, 0x1 - strh r0, [r4, 0xC] - b _080B25D8 - .align 2, 0 -_080B25C4: .4byte gTasks -_080B25C8: - movs r0, 0 - strh r0, [r4, 0xC] - movs r0, 0x61 - movs r1, 0 - bl PlaySE12WithPanning - ldr r0, _080B25E0 @ =sub_80B2508 - str r0, [r4] -_080B25D8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B25E0: .4byte sub_80B2508 - thumb_func_end sub_80B25A4 - - thumb_func_start sub_80B25E4 -sub_80B25E4: @ 80B25E4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r6, 0 - ldr r5, _080B26B4 @ =gSprites -_080B25F6: - bl AllocOamMatrix - lsls r1, r6, 2 - ldr r2, _080B26B8 @ =gSharedMem + 0x19338 - mov r8, r2 - adds r4, r1, r2 - ldrb r1, [r4] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1F - ands r0, r1 - lsls r0, 1 - ldrb r1, [r3, 0x3] - movs r7, 0x3F - negs r7, r7 - adds r2, r7, 0 - ands r1, r2 - orrs r1, r0 - strb r1, [r3, 0x3] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r2, [r0, 0x1] - movs r3, 0x4 - negs r3, r3 - adds r1, r3, 0 - ands r2, r1 - movs r1, 0x1 - orrs r2, r1 - strb r2, [r0, 0x1] - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r9 - bl StartSpriteAffineAnim - mov r7, r9 - cmp r7, 0x2 - bne _080B267A - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl AnimateSprite - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - adds r0, 0x3E - ldrb r1, [r0] - movs r3, 0x5 - negs r3, r3 - adds r2, r3, 0 - ands r1, r2 - strb r1, [r0] -_080B267A: - adds r6, 0x1 - cmp r6, 0x3 - ble _080B25F6 - ldr r0, _080B26BC @ =sub_80B26C8 - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080B26C0 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - mov r7, r9 - strh r7, [r1, 0x8] - ldr r2, _080B26C4 @ =0xfffffecc - add r2, r8 - ldrb r0, [r2, 0x7] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2, 0x7] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B26B4: .4byte gSprites -_080B26B8: .4byte gSharedMem + 0x19338 -_080B26BC: .4byte sub_80B26C8 -_080B26C0: .4byte gTasks -_080B26C4: .4byte 0xfffffecc - thumb_func_end sub_80B25E4 - - thumb_func_start sub_80B26C8 -sub_80B26C8: @ 80B26C8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r2, _080B2750 @ =gSprites - ldr r4, _080B2754 @ =gSharedMem + 0x19338 - ldrb r1, [r4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _080B274A - ldr r0, _080B2758 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldrb r0, [r1, 0x8] - cmp r0, 0x1 - bne _080B2718 - adds r5, r2, 0 - movs r3, 0x4 - adds r2, r4, 0 - movs r4, 0x3 -_080B26FE: - ldrb r0, [r2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r3 - strb r0, [r1] - adds r2, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _080B26FE -_080B2718: - movs r4, 0 -_080B271A: - lsls r0, r4, 2 - ldr r5, _080B2754 @ =gSharedMem + 0x19338 - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080B2750 @ =gSprites - adds r0, r1 - bl FreeSpriteOamMatrix - adds r4, 0x1 - cmp r4, 0x3 - ble _080B271A - ldr r0, _080B275C @ =0xfffffecc - adds r2, r5, r0 - ldrb r1, [r2, 0x7] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r2, 0x7] - adds r0, r6, 0 - bl DestroyTask -_080B274A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B2750: .4byte gSprites -_080B2754: .4byte gSharedMem + 0x19338 -_080B2758: .4byte gTasks -_080B275C: .4byte 0xfffffecc - thumb_func_end sub_80B26C8 - - thumb_func_start sub_80B2760 -sub_80B2760: @ 80B2760 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _080B2770 - movs r1, 0x1 -_080B2770: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_80B2760 - - thumb_func_start sub_80B2778 -sub_80B2778: @ 80B2778 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _080B278C @ =0x0000019b - cmp r1, r0 - bls _080B2786 - movs r1, 0 -_080B2786: - adds r0, r1, 0 - pop {r1} - bx r1 - .align 2, 0 -_080B278C: .4byte 0x0000019b - thumb_func_end sub_80B2778 - - thumb_func_start sub_80B2790 -sub_80B2790: @ 80B2790 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r4, _080B27F0 @ =gSharedMem + 0x19260 - adds r0, r4 - ldrh r0, [r0, 0x6] - bl sub_80B2760 - lsls r0, 16 - lsrs r5, r0, 16 - ldr r1, _080B27F4 @ =gContestMons - lsls r0, r6, 6 - adds r0, r1 - ldrh r0, [r0] - bl sub_80B2778 - lsls r0, 16 - lsrs r7, r0, 16 - adds r4, 0xE8 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x14 - bl memset - bl battle_anim_clear_some_data - ldr r1, _080B27F8 @ =gBattleMonForms - movs r2, 0 - adds r0, r1, 0x3 -_080B27D0: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _080B27D0 - cmp r5, 0x90 - beq _080B2848 - cmp r5, 0x90 - bgt _080B2806 - cmp r5, 0x4C - beq _080B2898 - cmp r5, 0x4C - bgt _080B27FC - cmp r5, 0xD - beq _080B2898 - b _080B28BE - .align 2, 0 -_080B27F0: .4byte gSharedMem + 0x19260 -_080B27F4: .4byte gContestMons -_080B27F8: .4byte gBattleMonForms -_080B27FC: - cmp r5, 0x82 - beq _080B2898 - cmp r5, 0x8F - beq _080B2898 - b _080B28BE -_080B2806: - cmp r5, 0xD8 - beq _080B2880 - cmp r5, 0xD8 - bgt _080B2814 - cmp r5, 0xAE - beq _080B2822 - b _080B28BE -_080B2814: - cmp r5, 0xDA - beq _080B288C - movs r0, 0x88 - lsls r0, 1 - cmp r5, r0 - beq _080B2848 - b _080B28BE -_080B2822: - ldr r0, _080B2840 @ =gBaseStats - lsls r1, r7, 3 - subs r1, r7 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x6] - cmp r0, 0x7 - beq _080B2838 - ldrb r0, [r1, 0x7] - cmp r0, 0x7 - bne _080B28B8 -_080B2838: - ldr r1, _080B2844 @ =gUnknown_0202F7C4 - movs r0, 0 - b _080B28BC - .align 2, 0 -_080B2840: .4byte gBaseStats -_080B2844: .4byte gUnknown_0202F7C4 -_080B2848: - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r4, _080B2878 @ =gSharedMem + 0x19260 - adds r0, r4 - ldrb r5, [r0, 0x1B] - ldr r6, _080B287C @ =gContestMons - lsls r5, 6 - adds r0, r5, r6 - ldrh r0, [r0] - bl sub_80B2778 - adds r4, 0xE8 - strh r0, [r4, 0x2] - adds r6, 0x38 - adds r5, r6 - ldr r0, [r5] - str r0, [r4, 0x10] - ldrb r0, [r4, 0x4] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x4] - b _080B28BE - .align 2, 0 -_080B2878: .4byte gSharedMem + 0x19260 -_080B287C: .4byte gContestMons -_080B2880: - ldr r1, _080B2888 @ =gHappinessMoveAnim - movs r0, 0xFF - b _080B28BC - .align 2, 0 -_080B2888: .4byte gHappinessMoveAnim -_080B288C: - ldr r1, _080B2894 @ =gHappinessMoveAnim - movs r0, 0 - b _080B28BC - .align 2, 0 -_080B2894: .4byte gHappinessMoveAnim -_080B2898: - ldr r0, _080B28B0 @ =gSharedMem + 0x19204 - adds r2, r0, 0 - adds r2, 0x5A - ldrb r1, [r2] - cmp r1, 0 - bne _080B28B8 - movs r0, 0x2 - strb r0, [r2] - ldr r0, _080B28B4 @ =gUnknown_0202F7C4 - strb r1, [r0] - b _080B28BE - .align 2, 0 -_080B28B0: .4byte gSharedMem + 0x19204 -_080B28B4: .4byte gUnknown_0202F7C4 -_080B28B8: - ldr r1, _080B28C8 @ =gUnknown_0202F7C4 - movs r0, 0x1 -_080B28BC: - strb r0, [r1] -_080B28BE: - bl sub_80B2968 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B28C8: .4byte gUnknown_0202F7C4 - thumb_func_end sub_80B2790 - - thumb_func_start sub_80B28CC -sub_80B28CC: @ 80B28CC - push {r4,lr} - ldr r4, _080B28EC @ =gSharedMem + 0x19348 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x14 - bl memset - subs r4, 0xEA - ldrb r0, [r4] - cmp r0, 0 - beq _080B28E6 - subs r0, 0x1 - strb r0, [r4] -_080B28E6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B28EC: .4byte gSharedMem + 0x19348 - thumb_func_end sub_80B28CC - - thumb_func_start sub_80B28F0 -sub_80B28F0: @ 80B28F0 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r6, _080B2924 @ =gSharedMem + 0x19348 - strb r4, [r6, 0x5] - ldr r5, _080B2928 @ =gContestMons - lsls r4, 6 - adds r0, r4, r5 - ldrh r0, [r0] - bl sub_80B2778 - strh r0, [r6] - adds r0, r5, 0 - adds r0, 0x38 - adds r0, r4, r0 - ldr r0, [r0] - str r0, [r6, 0x8] - adds r5, 0x3C - adds r4, r5 - ldr r0, [r4] - str r0, [r6, 0xC] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080B2924: .4byte gSharedMem + 0x19348 -_080B2928: .4byte gContestMons - thumb_func_end sub_80B28F0 - - thumb_func_start sub_80B292C -sub_80B292C: @ 80B292C - push {lr} - ldr r0, _080B2958 @ =SpriteCallbackDummy - bl CreateInvisibleSpriteWithCallback - ldr r1, _080B295C @ =gObjectBankIDs - strb r0, [r1, 0x3] - ldr r0, _080B2960 @ =gBankTarget - ldrb r0, [r0] - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080B2964 @ =gSprites - adds r0, r1 - bl InitSpriteAffineAnim - bl sub_80B2968 - pop {r0} - bx r0 - .align 2, 0 -_080B2958: .4byte SpriteCallbackDummy -_080B295C: .4byte gObjectBankIDs -_080B2960: .4byte gBankTarget -_080B2964: .4byte gSprites - thumb_func_end sub_80B292C - - thumb_func_start sub_80B2968 -sub_80B2968: @ 80B2968 - push {r4,lr} - ldr r0, _080B29AC @ =gObjectBankIDs - ldrb r0, [r0, 0x3] - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r0, _080B29B0 @ =gSprites - adds r4, r0 - movs r0, 0 - strh r0, [r4, 0x24] - strh r0, [r4, 0x26] - movs r0, 0x3 - movs r1, 0 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x20] - movs r0, 0x3 - movs r1, 0x1 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x22] - adds r4, 0x3E - ldrb r0, [r4] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080B29AC: .4byte gObjectBankIDs -_080B29B0: .4byte gSprites - thumb_func_end sub_80B2968 - - thumb_func_start sub_80B29B4 -sub_80B29B4: @ 80B29B4 - push {lr} - lsls r0, 16 - lsrs r0, 16 - ldr r2, _080B29D4 @ =gBattleMoves - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r0, [r1, 0x6] - cmp r0, 0x20 - bhi _080B2A6C - lsls r0, 2 - ldr r1, _080B29D8 @ =_080B29DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080B29D4: .4byte gBattleMoves -_080B29D8: .4byte _080B29DC - .align 2, 0 -_080B29DC: - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A60 - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A60 - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C - .4byte _080B2A6C -_080B2A60: - ldr r1, _080B2A68 @ =gBankTarget - movs r0, 0x2 - b _080B2A70 - .align 2, 0 -_080B2A68: .4byte gBankTarget -_080B2A6C: - ldr r1, _080B2A78 @ =gBankTarget - movs r0, 0x3 -_080B2A70: - strb r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080B2A78: .4byte gBankTarget - thumb_func_end sub_80B29B4 - - thumb_func_start sub_80B2A7C -sub_80B2A7C: @ 80B2A7C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 24 - lsrs r7, r0, 24 - movs r6, 0 - ldr r1, _080B2AC8 @ =gUnknown_02038690 - ldrb r0, [r1] - cmp r0, 0 - beq _080B2AB6 -_080B2AA8: - adds r6, 0x1 - cmp r6, 0x2 - bgt _080B2AB6 - adds r0, r6, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080B2AA8 -_080B2AB6: - mov r0, r9 - cmp r0, 0xFF - bne _080B2AD0 - ldr r0, _080B2ACC @ =gContestPlayerMonIndex - ldrb r0, [r0] - cmp r6, r0 - beq _080B2AD0 - movs r0, 0 - b _080B2C38 - .align 2, 0 -_080B2AC8: .4byte gUnknown_02038690 -_080B2ACC: .4byte gContestPlayerMonIndex -_080B2AD0: - ldr r0, _080B2AE4 @ =gScriptContestCategory - ldrh r0, [r0] - cmp r0, 0x4 - bhi _080B2B16 - lsls r0, 2 - ldr r1, _080B2AE8 @ =_080B2AEC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080B2AE4: .4byte gScriptContestCategory -_080B2AE8: .4byte _080B2AEC - .align 2, 0 -_080B2AEC: - .4byte _080B2B16 - .4byte _080B2B00 - .4byte _080B2B04 - .4byte _080B2B08 - .4byte _080B2B0E -_080B2B00: - adds r0, r7, 0x3 - b _080B2B12 -_080B2B04: - adds r0, r7, 0x6 - b _080B2B12 -_080B2B08: - adds r0, r7, 0 - adds r0, 0x9 - b _080B2B12 -_080B2B0E: - adds r0, r7, 0 - adds r0, 0xC -_080B2B12: - lsls r0, 24 - lsrs r7, r0, 24 -_080B2B16: - mov r1, r9 - cmp r1, 0xFE - beq _080B2BC4 - mov r0, r9 - movs r1, 0x1 - bl sub_80B2C4C - adds r4, r0, 0 - lsls r4, 24 - ldr r2, _080B2B98 @ =gSaveBlock1 - lsrs r4, 19 - ldr r0, _080B2B9C @ =0x00002dfc - adds r1, r2, r0 - adds r1, r4, r1 - ldr r5, _080B2BA0 @ =gContestMons - lsls r6, 6 - adds r0, r5, 0 - adds r0, 0x38 - adds r0, r6, r0 - ldr r0, [r0] - str r0, [r1] - adds r1, r4, r2 - mov r8, r1 - adds r0, r6, r5 - ldrh r1, [r0] - ldr r0, _080B2BA4 @ =0x00002e04 - add r0, r8 - strh r1, [r0] - movs r0, 0xB8 - lsls r0, 6 - adds r1, r2, r0 - adds r1, r4, r1 - adds r0, r5, 0 - adds r0, 0x3C - adds r0, r6, r0 - ldr r0, [r0] - str r0, [r1] - ldr r1, _080B2BA8 @ =0x00002e07 - adds r0, r2, r1 - adds r0, r4, r0 - adds r1, r5, 0x2 - adds r1, r6, r1 - str r2, [sp] - bl StringCopy - ldr r2, [sp] - ldr r0, _080B2BAC @ =0x00002e12 - adds r2, r0 - adds r4, r2 - adds r5, 0xD - adds r6, r5 - adds r0, r4, 0 - adds r1, r6, 0 - bl StringCopy - mov r1, r9 - cmp r1, 0xFF - beq _080B2BB8 - ldr r0, _080B2BB0 @ =gScriptContestCategory - ldrh r1, [r0] - ldr r0, _080B2BB4 @ =0x00002e06 - add r0, r8 - strb r1, [r0] - b _080B2C36 - .align 2, 0 -_080B2B98: .4byte gSaveBlock1 -_080B2B9C: .4byte 0x00002dfc -_080B2BA0: .4byte gContestMons -_080B2BA4: .4byte 0x00002e04 -_080B2BA8: .4byte 0x00002e07 -_080B2BAC: .4byte 0x00002e12 -_080B2BB0: .4byte gScriptContestCategory -_080B2BB4: .4byte 0x00002e06 -_080B2BB8: - ldr r0, _080B2BC0 @ =0x00002e06 - add r0, r8 - strb r7, [r0] - b _080B2C36 - .align 2, 0 -_080B2BC0: .4byte 0x00002e06 -_080B2BC4: - ldr r5, _080B2C14 @ =gSharedMem + 0x15DE0 - ldr r2, _080B2C18 @ =gContestMons - lsls r4, r6, 6 - adds r0, r2, 0 - adds r0, 0x38 - adds r0, r4, r0 - ldr r0, [r0] - str r0, [r5] - adds r0, r2, 0 - adds r0, 0x3C - adds r0, r4, r0 - ldr r0, [r0] - str r0, [r5, 0x4] - adds r0, r4, r2 - ldrh r0, [r0] - strh r0, [r5, 0x8] - adds r0, r5, 0 - adds r0, 0xB - adds r1, r2, 0x2 - adds r1, r4, r1 - str r2, [sp] - bl StringCopy - ldr r0, _080B2C1C @ =gIsLinkContest - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - ldr r2, [sp] - cmp r0, 0 - beq _080B2C24 - adds r0, r5, 0 - adds r0, 0x16 - lsls r1, r6, 3 - subs r1, r6 - lsls r1, 2 - ldr r2, _080B2C20 @ =gLinkPlayers + 0x8 - adds r1, r2 - bl StringCopy - b _080B2C32 - .align 2, 0 -_080B2C14: .4byte gSharedMem + 0x15DE0 -_080B2C18: .4byte gContestMons -_080B2C1C: .4byte gIsLinkContest -_080B2C20: .4byte gLinkPlayers + 0x8 -_080B2C24: - adds r0, r5, 0 - adds r0, 0x16 - adds r1, r2, 0 - adds r1, 0xD - adds r1, r4, r1 - bl StringCopy -_080B2C32: - ldr r0, _080B2C48 @ =gSharedMem + 0x15DE0 - strb r7, [r0, 0xA] -_080B2C36: - movs r0, 0x1 -_080B2C38: - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080B2C48: .4byte gSharedMem + 0x15DE0 - thumb_func_end sub_80B2A7C - - thumb_func_start sub_80B2C4C -sub_80B2C4C: @ 80B2C4C - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - lsls r1, 24 - lsrs r1, 24 - cmp r0, 0x2 - beq _080B2C6E - cmp r0, 0x2 - ble _080B2C66 - cmp r0, 0x3 - beq _080B2CA0 - b _080B2CD4 -_080B2C66: - cmp r2, 0 - blt _080B2CD4 - adds r0, r2, 0 - b _080B2D16 -_080B2C6E: - cmp r1, 0 - beq _080B2C98 - movs r2, 0x4 - ldr r0, _080B2C9C @ =gSaveBlock1 + 0x2DFC - adds r4, r0, 0 - adds r4, 0x60 - adds r3, r0, 0 - adds r3, 0x80 -_080B2C7E: - adds r1, r3, 0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5,r6} - stm r1!, {r5,r6} - subs r4, 0x20 - subs r3, 0x20 - subs r2, 0x1 - cmp r2, 0x2 - bgt _080B2C7E -_080B2C98: - movs r0, 0x2 - b _080B2D16 - .align 2, 0 -_080B2C9C: .4byte gSaveBlock1 + 0x2DFC -_080B2CA0: - cmp r1, 0 - beq _080B2CCA - movs r2, 0x7 - ldr r0, _080B2CD0 @ =gSaveBlock1 + 0x2DFC - adds r4, r0, 0 - adds r4, 0xC0 - adds r3, r0, 0 - adds r3, 0xE0 -_080B2CB0: - adds r1, r3, 0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5,r7} - stm r1!, {r5,r7} - subs r4, 0x20 - subs r3, 0x20 - subs r2, 0x1 - cmp r2, 0x5 - bgt _080B2CB0 -_080B2CCA: - movs r0, 0x5 - b _080B2D16 - .align 2, 0 -_080B2CD0: .4byte gSaveBlock1 + 0x2DFC -_080B2CD4: - ldr r0, _080B2CE8 @ =gScriptContestCategory - ldrh r0, [r0] - cmp r0, 0x4 - bhi _080B2D14 - lsls r0, 2 - ldr r1, _080B2CEC @ =_080B2CF0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080B2CE8: .4byte gScriptContestCategory -_080B2CEC: .4byte _080B2CF0 - .align 2, 0 -_080B2CF0: - .4byte _080B2D04 - .4byte _080B2D08 - .4byte _080B2D0C - .4byte _080B2D10 - .4byte _080B2D14 -_080B2D04: - movs r0, 0x8 - b _080B2D16 -_080B2D08: - movs r0, 0x9 - b _080B2D16 -_080B2D0C: - movs r0, 0xA - b _080B2D16 -_080B2D10: - movs r0, 0xB - b _080B2D16 -_080B2D14: - movs r0, 0xC -_080B2D16: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80B2C4C - - thumb_func_start sub_80B2D1C -sub_80B2D1C: @ 80B2D1C - push {r4-r7,lr} - ldr r0, _080B2D48 @ =gSaveBlock1 - ldr r4, _080B2D4C @ =gUnknown_083CC5D0 - ldr r1, _080B2D50 @ =0x00002dfc - adds r3, r0, r1 - movs r2, 0x7 -_080B2D28: - adds r1, r3, 0 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5,r6} - stm r1!, {r5,r6} - adds r4, 0x20 - adds r3, 0x20 - subs r2, 0x1 - cmp r2, 0 - bge _080B2D28 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080B2D48: .4byte gSaveBlock1 -_080B2D4C: .4byte gUnknown_083CC5D0 -_080B2D50: .4byte 0x00002dfc - thumb_func_end sub_80B2D1C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/contest_ai.s b/asm/contest_ai.s index d2061c84e..94347f2ad 100644 --- a/asm/contest_ai.s +++ b/asm/contest_ai.s @@ -1315,7 +1315,7 @@ _0812923C: thumb_func_start ContestAICmd_get_contest_type ContestAICmd_get_contest_type: @ 8129244 ldr r1, _08129258 @ =gSharedMem + 0x192E4 - ldr r0, _0812925C @ =gScriptContestCategory + ldr r0, _0812925C @ =gSpecialVar_ContestCategory ldrh r0, [r0] strh r0, [r1, 0x18] ldr r1, _08129260 @ =gAIScriptPtr @@ -1325,7 +1325,7 @@ ContestAICmd_get_contest_type: @ 8129244 bx lr .align 2, 0 _08129258: .4byte gSharedMem + 0x192E4 -_0812925C: .4byte gScriptContestCategory +_0812925C: .4byte gSpecialVar_ContestCategory _08129260: .4byte gAIScriptPtr thumb_func_end ContestAICmd_get_contest_type @@ -1414,7 +1414,7 @@ ContestAICmd_get_move_excitement: @ 81292E4 adds r2, 0x1E adds r1, r2 ldrh r0, [r1] - bl contest_get_move_excitement + bl Contest_GetMoveExcitement lsls r0, 24 asrs r0, 24 strh r0, [r4, 0x18] @@ -3319,7 +3319,7 @@ ContestAICmd_check_can_participate: @ 812A0BC bl sub_8128A7C lsls r0, 24 lsrs r0, 24 - bl sub_80AF59C + bl Contest_IsMonsTurnDisabled lsls r0, 24 cmp r0, 0 beq _0812A0E4 @@ -5049,7 +5049,7 @@ _0812AD06: ldrh r0, [r1] cmp r0, 0 beq _0812AD30 - bl contest_get_move_excitement + bl Contest_GetMoveExcitement lsls r0, 24 asrs r0, 24 cmp r0, 0x1 diff --git a/asm/contest_effect.s b/asm/contest_effect.s index 4b21b780b..d06789976 100644 --- a/asm/contest_effect.s +++ b/asm/contest_effect.s @@ -860,7 +860,7 @@ _080B8340: bne _080B836E lsls r0, r6, 24 lsrs r0, 24 - bl sub_80AF59C + bl Contest_IsMonsTurnDisabled lsls r0, 24 cmp r0, 0 bne _080B836E @@ -2412,7 +2412,7 @@ ContestEffect_44: @ 80B8EBC adds r0, r3 ldrb r0, [r0, 0x1] lsls r0, 29 - ldr r1, _080B8EF8 @ =gScriptContestCategory + ldr r1, _080B8EF8 @ =gSpecialVar_ContestCategory lsrs r0, 29 ldrh r1, [r1] cmp r0, r1 @@ -2427,7 +2427,7 @@ _080B8EEA: .align 2, 0 _080B8EF0: .4byte gContestMoves _080B8EF4: .4byte gSharedMem + 0x192D0 -_080B8EF8: .4byte gScriptContestCategory +_080B8EF8: .4byte gSpecialVar_ContestCategory thumb_func_end ContestEffect_44 thumb_func_start ContestEffect_45 diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s index 2f281593c..594d569ad 100644 --- a/asm/contest_link_80C2020.s +++ b/asm/contest_link_80C2020.s @@ -1086,7 +1086,7 @@ _080C2904: adds r1, r0 lsls r1, 3 adds r1, r7 - ldr r0, _080C2934 @ =gUnknown_02038690 + ldr r0, _080C2934 @ =gContestFinalStandings adds r0, r4, r0 ldrb r0, [r0] strh r0, [r1, 0x8] @@ -1098,7 +1098,7 @@ _080C2904: .align 2, 0 _080C292C: .4byte gTasks _080C2930: .4byte sub_80C3A5C -_080C2934: .4byte gUnknown_02038690 +_080C2934: .4byte gContestFinalStandings _080C2938: ldr r0, _080C2990 @ =gSharedMem + 0x18000 ldrb r0, [r0, 0x5] @@ -1128,7 +1128,7 @@ _080C295A: adds r0, 0x1 strh r0, [r4, 0x8] movs r4, 0 - ldr r1, _080C2998 @ =gUnknown_02038690 + ldr r1, _080C2998 @ =gContestFinalStandings ldrb r0, [r1] cmp r0, 0 beq _080C2984 @@ -1149,7 +1149,7 @@ _080C2984: .align 2, 0 _080C2990: .4byte gSharedMem + 0x18000 _080C2994: .4byte sub_80C3B30 -_080C2998: .4byte gUnknown_02038690 +_080C2998: .4byte gContestFinalStandings _080C299C: lsls r1, r5, 2 adds r0, r1, r5 @@ -1166,7 +1166,7 @@ _080C299C: movs r0, 0 strh r0, [r2, 0xA] movs r4, 0 - ldr r2, _080C29F4 @ =gUnknown_02038690 + ldr r2, _080C29F4 @ =gContestFinalStandings ldrb r0, [r2] ldr r1, _080C29F8 @ =gIsLinkContest ldr r3, _080C29FC @ =gStringVar1 @@ -1196,7 +1196,7 @@ _080C29D4: lsls r4, 6 b _080C2A10 .align 2, 0 -_080C29F4: .4byte gUnknown_02038690 +_080C29F4: .4byte gContestFinalStandings _080C29F8: .4byte gIsLinkContest _080C29FC: .4byte gStringVar1 _080C2A00: .4byte gLinkPlayers + 0x8 @@ -1310,7 +1310,7 @@ _080C2ADC: adds r0, r3, 0 strh r0, [r1] movs r1, 0 - ldr r3, _080C2BD0 @ =gUnknown_02038690 + ldr r3, _080C2BD0 @ =gContestFinalStandings ldrb r0, [r3] lsls r4, r7, 2 mov r10, r4 @@ -1416,7 +1416,7 @@ _080C2B14: _080C2BC4: .4byte gUnknown_030042C4 _080C2BC8: .4byte gUnknown_03004240 _080C2BCC: .4byte 0x00005050 -_080C2BD0: .4byte gUnknown_02038690 +_080C2BD0: .4byte gContestFinalStandings _080C2BD4: .4byte gContestMons _080C2BD8: .4byte gMonFrontPicTable _080C2BDC: .4byte gMonFrontPicCoords @@ -1705,7 +1705,7 @@ sub_80C2E14: @ 80C2E14 adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 - ldr r1, _080C2E80 @ =gUnknown_02038690 + ldr r1, _080C2E80 @ =gContestFinalStandings ldr r0, _080C2E84 @ =gContestPlayerMonIndex ldrb r0, [r0] adds r0, r1 @@ -1713,11 +1713,11 @@ sub_80C2E14: @ 80C2E14 bl sub_80BE284 movs r0, 0x2 bl sub_810FB10 - ldr r0, _080C2E88 @ =gScriptContestRank + ldr r0, _080C2E88 @ =gSpecialVar_ContestRank ldrb r0, [r0] - bl sub_80B2A7C + bl Contest_SaveWinner movs r0, 0xFE - bl sub_80B2A7C + bl Contest_SaveWinner ldr r4, _080C2E8C @ =gSharedMem ldr r0, _080C2E90 @ =0x00015ddf adds r1, r4, r0 @@ -1748,9 +1748,9 @@ sub_80C2E14: @ 80C2E14 pop {r0} bx r0 .align 2, 0 -_080C2E80: .4byte gUnknown_02038690 +_080C2E80: .4byte gContestFinalStandings _080C2E84: .4byte gContestPlayerMonIndex -_080C2E88: .4byte gScriptContestRank +_080C2E88: .4byte gSpecialVar_ContestRank _080C2E8C: .4byte gSharedMem _080C2E90: .4byte 0x00015ddf _080C2E94: .4byte 0x00015dde @@ -2971,7 +2971,7 @@ _080C3808: .4byte gIsLinkContest _080C380C: .4byte 0x0600e000 _080C3810: .4byte gUnknown_08E964B8 _080C3814: - ldr r0, _080C3830 @ =gScriptContestRank + ldr r0, _080C3830 @ =gSpecialVar_ContestRank ldrh r2, [r0] cmp r2, 0 bne _080C383C @@ -2986,7 +2986,7 @@ _080C3814: str r1, [sp, 0xC] b _080C3870 .align 2, 0 -_080C3830: .4byte gScriptContestRank +_080C3830: .4byte gSpecialVar_ContestRank _080C3834: .4byte 0x0600e000 _080C3838: .4byte gUnknown_08E964B8 _080C383C: @@ -3040,7 +3040,7 @@ _080C3884: bl sub_809D104 _080C389E: adds r4, 0xD - ldr r0, _080C38C8 @ =gScriptContestCategory + ldr r0, _080C38C8 @ =gSpecialVar_ContestCategory ldrh r0, [r0] cmp r0, 0 bne _080C38CC @@ -3058,7 +3058,7 @@ _080C389E: .align 2, 0 _080C38C0: .4byte 0x0600e000 _080C38C4: .4byte gUnknown_08E964B8 -_080C38C8: .4byte gScriptContestCategory +_080C38C8: .4byte gSpecialVar_ContestCategory _080C38CC: cmp r0, 0x1 bne _080C38EC @@ -3385,7 +3385,7 @@ sub_80C3B30: @ 80C3B30 lsrs r0, 24 mov r12, r0 movs r5, 0 - ldr r1, _080C3BC0 @ =gUnknown_02038690 + ldr r1, _080C3BC0 @ =gContestFinalStandings ldrb r0, [r1] ldr r2, _080C3BC4 @ =gTasks mov r10, r2 @@ -3453,7 +3453,7 @@ _080C3B82: pop {r0} bx r0 .align 2, 0 -_080C3BC0: .4byte gUnknown_02038690 +_080C3BC0: .4byte gContestFinalStandings _080C3BC4: .4byte gTasks _080C3BC8: .4byte 0x00000fff _080C3BCC: .4byte 0x0600e100 @@ -4058,7 +4058,7 @@ _080C403A: negs r0, r0 _080C4060: strb r0, [r5, 0x12] - ldr r0, _080C40A8 @ =gUnknown_02038690 + ldr r0, _080C40A8 @ =gContestFinalStandings add r0, r8 ldrb r0, [r0] cmp r0, 0 @@ -4091,7 +4091,7 @@ _080C4098: .4byte gUnknown_02038678 _080C409C: .4byte gUnknown_02038670 _080C40A0: .4byte gSharedMem + 0x18018 _080C40A4: .4byte gUnknown_02038688 -_080C40A8: .4byte gUnknown_02038690 +_080C40A8: .4byte gContestFinalStandings _080C40AC: cmp r2, 0 ble _080C40B4 @@ -4545,15 +4545,15 @@ sub_80C43F4: @ 80C43F4 adds r5, r0, 0 cmp r5, 0 beq _080C4422 - ldr r4, _080C4434 @ =gScriptContestCategory + ldr r4, _080C4434 @ =gSpecialVar_ContestCategory ldrb r0, [r4] - ldr r1, _080C4438 @ =gScriptContestRank + ldr r1, _080C4438 @ =gSpecialVar_ContestRank ldrb r1, [r1] - bl sub_80AE398 + bl Contest_InitAllPokemon ldrb r0, [r4] bl sub_80AE82C _080C4422: - ldr r0, _080C443C @ =gScriptResult + ldr r0, _080C443C @ =gSpecialVar_Result strh r5, [r0] pop {r4,r5} pop {r0} @@ -4561,9 +4561,9 @@ _080C4422: .align 2, 0 _080C442C: .4byte gUnknown_02038694 _080C4430: .4byte gPlayerParty -_080C4434: .4byte gScriptContestCategory -_080C4438: .4byte gScriptContestRank -_080C443C: .4byte gScriptResult +_080C4434: .4byte gSpecialVar_ContestCategory +_080C4438: .4byte gSpecialVar_ContestRank +_080C443C: .4byte gSpecialVar_Result thumb_func_end sub_80C43F4 thumb_func_start sub_80C4440 @@ -4576,7 +4576,7 @@ sub_80C4440: @ 80C4440 muls r1, r0 ldr r0, _080C4468 @ =gPlayerParty adds r2, r1, r0 - ldr r0, _080C446C @ =gScriptContestCategory + ldr r0, _080C446C @ =gSpecialVar_ContestCategory ldrh r0, [r0] cmp r0, 0x4 bhi _080C44B2 @@ -4588,7 +4588,7 @@ sub_80C4440: @ 80C4440 .align 2, 0 _080C4464: .4byte gUnknown_02038694 _080C4468: .4byte gPlayerParty -_080C446C: .4byte gScriptContestCategory +_080C446C: .4byte gSpecialVar_ContestCategory _080C4470: .4byte _080C4474 .align 2, 0 _080C4474: @@ -4618,7 +4618,7 @@ _080C44A0: movs r1, 0x36 _080C44A4: bl GetMonData - ldr r1, _080C44BC @ =gScriptContestRank + ldr r1, _080C44BC @ =gSpecialVar_ContestRank ldrh r1, [r1] cmp r0, r1 bls _080C44B2 @@ -4629,14 +4629,14 @@ _080C44B2: pop {r1} bx r1 .align 2, 0 -_080C44BC: .4byte gScriptContestRank +_080C44BC: .4byte gSpecialVar_ContestRank thumb_func_end sub_80C4440 thumb_func_start sub_80C44C0 sub_80C44C0: @ 80C44C0 push {r4-r7,lr} sub sp, 0x4 - ldr r1, _080C44E8 @ =gUnknown_02038690 + ldr r1, _080C44E8 @ =gContestFinalStandings ldr r0, _080C44EC @ =gContestPlayerMonIndex ldrb r0, [r0] adds r0, r1 @@ -4645,7 +4645,7 @@ sub_80C44C0: @ 80C44C0 beq _080C44D4 b _080C465E _080C44D4: - ldr r0, _080C44F0 @ =gScriptContestCategory + ldr r0, _080C44F0 @ =gSpecialVar_ContestCategory ldrh r0, [r0] cmp r0, 0x4 bls _080C44DE @@ -4657,9 +4657,9 @@ _080C44DE: ldr r0, [r0] mov pc, r0 .align 2, 0 -_080C44E8: .4byte gUnknown_02038690 +_080C44E8: .4byte gContestFinalStandings _080C44EC: .4byte gContestPlayerMonIndex -_080C44F0: .4byte gScriptContestCategory +_080C44F0: .4byte gSpecialVar_ContestCategory _080C44F4: .4byte _080C44F8 .align 2, 0 _080C44F8: @@ -4681,7 +4681,7 @@ _080C450C: lsrs r1, r0, 24 mov r0, sp strb r1, [r0] - ldr r0, _080C4550 @ =gScriptContestRank + ldr r0, _080C4550 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r1, r0 bls _080C4530 @@ -4703,7 +4703,7 @@ _080C4538: .align 2, 0 _080C4548: .4byte gUnknown_02038694 _080C454C: .4byte gPlayerParty -_080C4550: .4byte gScriptContestRank +_080C4550: .4byte gSpecialVar_ContestRank _080C4554: mov r4, sp ldr r7, _080C458C @ =gUnknown_02038694 @@ -4717,7 +4717,7 @@ _080C4554: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4594 @ =gScriptContestRank + ldr r0, _080C4594 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4734,7 +4734,7 @@ _080C4554: .align 2, 0 _080C458C: .4byte gUnknown_02038694 _080C4590: .4byte gPlayerParty -_080C4594: .4byte gScriptContestRank +_080C4594: .4byte gSpecialVar_ContestRank _080C4598: mov r4, sp ldr r7, _080C45D0 @ =gUnknown_02038694 @@ -4748,7 +4748,7 @@ _080C4598: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C45D8 @ =gScriptContestRank + ldr r0, _080C45D8 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4765,7 +4765,7 @@ _080C4598: .align 2, 0 _080C45D0: .4byte gUnknown_02038694 _080C45D4: .4byte gPlayerParty -_080C45D8: .4byte gScriptContestRank +_080C45D8: .4byte gSpecialVar_ContestRank _080C45DC: mov r4, sp ldr r7, _080C4618 @ =gUnknown_02038694 @@ -4779,7 +4779,7 @@ _080C45DC: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4620 @ =gScriptContestRank + ldr r0, _080C4620 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4799,7 +4799,7 @@ _080C4610: .align 2, 0 _080C4618: .4byte gUnknown_02038694 _080C461C: .4byte gPlayerParty -_080C4620: .4byte gScriptContestRank +_080C4620: .4byte gSpecialVar_ContestRank _080C4624: mov r4, sp ldr r7, _080C4668 @ =gUnknown_02038694 @@ -4813,7 +4813,7 @@ _080C4624: strb r0, [r4] mov r0, sp ldrb r2, [r0] - ldr r0, _080C4670 @ =gScriptContestRank + ldr r0, _080C4670 @ =gSpecialVar_ContestRank ldrh r0, [r0] cmp r2, r0 bhi _080C465E @@ -4836,7 +4836,7 @@ _080C465E: .align 2, 0 _080C4668: .4byte gUnknown_02038694 _080C466C: .4byte gPlayerParty -_080C4670: .4byte gScriptContestRank +_080C4670: .4byte gSpecialVar_ContestRank thumb_func_end sub_80C44C0 thumb_func_start sub_80C4674 @@ -5016,7 +5016,7 @@ _080C47BC: .4byte gSpecialVar_0x8006 sub_80C47C0: @ 80C47C0 push {lr} movs r1, 0 - ldr r2, _080C47E8 @ =gUnknown_02038690 + ldr r2, _080C47E8 @ =gContestFinalStandings ldrb r0, [r2] ldr r3, _080C47EC @ =gSpecialVar_0x8005 cmp r0, 0 @@ -5036,7 +5036,7 @@ _080C47E0: pop {r0} bx r0 .align 2, 0 -_080C47E8: .4byte gUnknown_02038690 +_080C47E8: .4byte gContestFinalStandings _080C47EC: .4byte gSpecialVar_0x8005 thumb_func_end sub_80C47C0 @@ -5044,7 +5044,7 @@ _080C47EC: .4byte gSpecialVar_0x8005 sub_80C47F0: @ 80C47F0 push {r4,lr} movs r2, 0 - ldr r3, _080C4830 @ =gUnknown_02038690 + ldr r3, _080C4830 @ =gContestFinalStandings ldrb r0, [r3] ldr r1, _080C4834 @ =gIsLinkContest ldr r4, _080C4838 @ =gStringVar3 @@ -5075,7 +5075,7 @@ _080C4812: bl sub_80C4674 b _080C484C .align 2, 0 -_080C4830: .4byte gUnknown_02038690 +_080C4830: .4byte gContestFinalStandings _080C4834: .4byte gIsLinkContest _080C4838: .4byte gStringVar3 _080C483C: .4byte gLinkPlayers + 0x8 @@ -5097,7 +5097,7 @@ _080C4854: .4byte gUnknown_0203857D sub_80C4858: @ 80C4858 push {lr} movs r1, 0 - ldr r2, _080C4884 @ =gUnknown_02038690 + ldr r2, _080C4884 @ =gContestFinalStandings ldrb r0, [r2] ldr r3, _080C4888 @ =gStringVar1 cmp r0, 0 @@ -5118,19 +5118,19 @@ _080C4878: pop {r0} bx r0 .align 2, 0 -_080C4884: .4byte gUnknown_02038690 +_080C4884: .4byte gContestFinalStandings _080C4888: .4byte gStringVar1 thumb_func_end sub_80C4858 thumb_func_start sub_80C488C sub_80C488C: @ 80C488C push {lr} - ldr r0, _080C4898 @ =sub_80AB47C + ldr r0, _080C4898 @ =CB2_StartContest bl SetMainCallback2 pop {r0} bx r0 .align 2, 0 -_080C4898: .4byte sub_80AB47C +_080C4898: .4byte CB2_StartContest thumb_func_end sub_80C488C thumb_func_start sub_80C489C @@ -5293,7 +5293,7 @@ sub_80C49C4: @ 80C49C4 lsrs r4, 24 ldr r0, _080C49E4 @ =gUnknown_02038694 ldrb r0, [r0] - bl sub_80AE098 + bl Contest_CreatePlayerMon ldr r1, _080C49E8 @ =sub_80C8734 ldr r2, _080C49EC @ =sub_80C49F0 adds r0, r4, 0 @@ -5432,7 +5432,7 @@ _080C4AB8: bl sub_80C4B34 ldr r1, _080C4AFC @ =gUnknown_0203869B strb r0, [r1] - ldr r0, _080C4B00 @ =gScriptContestCategory + ldr r0, _080C4B00 @ =gSpecialVar_ContestCategory ldrb r0, [r0] bl sub_80AE82C ldr r1, _080C4B04 @ =sub_80C8EBC @@ -5448,7 +5448,7 @@ _080C4AB8: .align 2, 0 _080C4AF8: .4byte gTasks + 0x8 _080C4AFC: .4byte gUnknown_0203869B -_080C4B00: .4byte gScriptContestCategory +_080C4B00: .4byte gSpecialVar_ContestCategory _080C4B04: .4byte sub_80C8EBC _080C4B08: .4byte sub_80C4B0C thumb_func_end sub_80C4A44 diff --git a/asm/contest_link_80C857C.s b/asm/contest_link_80C857C.s index 63280f0f8..0ff6823b5 100644 --- a/asm/contest_link_80C857C.s +++ b/asm/contest_link_80C857C.s @@ -861,18 +861,18 @@ _080C8C18: lsls r0, 24 cmp r0, 0 beq _080C8C7A - ldr r0, _080C8C2C @ =gUnknown_02038690 + ldr r0, _080C8C2C @ =gContestFinalStandings movs r1, 0x4 bl sub_80C857C b _080C8C4C .align 2, 0 -_080C8C2C: .4byte gUnknown_02038690 +_080C8C2C: .4byte gContestFinalStandings _080C8C30: bl sub_80C85D8 lsls r0, 24 cmp r0, 0 beq _080C8C7A - ldr r0, _080C8C60 @ =gUnknown_02038690 + ldr r0, _080C8C60 @ =gContestFinalStandings ldr r1, _080C8C64 @ =gUnknown_0203869B ldrb r1, [r1] lsls r1, 8 @@ -892,7 +892,7 @@ _080C8C4C: strh r1, [r0, 0x8] b _080C8C7A .align 2, 0 -_080C8C60: .4byte gUnknown_02038690 +_080C8C60: .4byte gContestFinalStandings _080C8C64: .4byte gUnknown_0203869B _080C8C68: .4byte gBlockRecvBuffer _080C8C6C: .4byte gTasks diff --git a/asm/easy_chat.s b/asm/easy_chat.s index 547ce174e..e08d71083 100644 --- a/asm/easy_chat.s +++ b/asm/easy_chat.s @@ -1578,13 +1578,13 @@ _080E6D3E: beq _080E6D58 b _080E6D72 _080E6D44: - ldr r0, _080E6D50 @ =gScriptResult + ldr r0, _080E6D50 @ =gSpecialVar_Result strh r1, [r0] ldr r0, _080E6D54 @ =sub_80E752C bl sub_80E682C b _080E6D72 .align 2, 0 -_080E6D50: .4byte gScriptResult +_080E6D50: .4byte gSpecialVar_Result _080E6D54: .4byte sub_80E752C _080E6D58: ldr r1, _080E6D60 @ =gSharedMem + 0x1000 @@ -1722,7 +1722,7 @@ _080E6E56: beq _080E6EDC b _080E6F5E _080E6E5C: - ldr r7, _080E6EC8 @ =gScriptResult + ldr r7, _080E6EC8 @ =gSpecialVar_Result bl sub_80E7FA8 lsls r0, 24 lsrs r0, 24 @@ -1774,7 +1774,7 @@ _080E6EBE: bl sub_80E682C b _080E6F5E .align 2, 0 -_080E6EC8: .4byte gScriptResult +_080E6EC8: .4byte gSpecialVar_Result _080E6ECC: .4byte gSpecialVar_0x8004 _080E6ED0: .4byte 0x00009c7c _080E6ED4: .4byte 0x0000ffff diff --git a/asm/fury_cutter_count.s b/asm/fury_cutter_count.s deleted file mode 100755 index 10444b254..000000000 --- a/asm/fury_cutter_count.s +++ /dev/null @@ -1,48 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ fury_cutter_count - - thumb_func_start sub_80D30AC -sub_80D30AC: @ 80D30AC - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _080D30C8 @ =gBattleAnimArgs - ldr r1, _080D30CC @ =gDisableStructMoveAnim - ldr r1, [r1] - ldrb r2, [r1, 0x10] - movs r1, 0x1 - ands r1, r2 - strh r1, [r3, 0xE] - bl DestroyAnimVisualTask - pop {r0} - bx r0 - .align 2, 0 -_080D30C8: .4byte gBattleAnimArgs -_080D30CC: .4byte gDisableStructMoveAnim - thumb_func_end sub_80D30AC - - thumb_func_start update_fury_cutter_counter_copy -update_fury_cutter_counter_copy: @ 80D30D0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080D30E8 @ =gBattleAnimArgs - ldr r1, _080D30EC @ =gDisableStructMoveAnim - ldr r1, [r1] - ldrb r1, [r1, 0x10] - strh r1, [r2, 0xE] - bl DestroyAnimVisualTask - pop {r0} - bx r0 - .align 2, 0 -_080D30E8: .4byte gBattleAnimArgs -_080D30EC: .4byte gDisableStructMoveAnim - thumb_func_end update_fury_cutter_counter_copy - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/guard.s b/asm/guard.s deleted file mode 100755 index 13ead6879..000000000 --- a/asm/guard.s +++ /dev/null @@ -1,80 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80D3014 -sub_80D3014: @ 80D3014 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _080D3058 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D3060 - ldr r4, _080D305C @ =gBattleAnimBankAttacker - ldrb r1, [r4] - movs r0, 0x2 - eors r0, r1 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080D3060 - ldrb r0, [r4] - adds r2, r5, 0 - adds r2, 0x20 - adds r3, r5, 0 - adds r3, 0x22 - movs r1, 0 - bl sub_807A3FC - ldrh r0, [r5, 0x22] - adds r0, 0x28 - strh r0, [r5, 0x22] - adds r0, r5, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - b _080D3080 - .align 2, 0 -_080D3058: .4byte gBattleTypeFlags -_080D305C: .4byte gBattleAnimBankAttacker -_080D3060: - ldr r4, _080D30A0 @ =gBattleAnimBankAttacker - ldrb r0, [r4] - movs r1, 0 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x1 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x28 - strh r0, [r5, 0x22] -_080D3080: - movs r0, 0xD - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x20] - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x22] - subs r0, 0x48 - strh r0, [r5, 0x36] - ldr r0, _080D30A4 @ =sub_8078B34 - str r0, [r5, 0x1C] - ldr r1, _080D30A8 @ =move_anim_8072740 - adds r0, r5, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D30A0: .4byte gBattleAnimBankAttacker -_080D30A4: .4byte sub_8078B34 -_080D30A8: .4byte move_anim_8072740 - thumb_func_end sub_80D3014 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/heated_rock.s b/asm/heated_rock.s deleted file mode 100755 index eb957a6f1..000000000 --- a/asm/heated_rock.s +++ /dev/null @@ -1,302 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ heated_rock - - thumb_func_start sub_80D58FC -sub_80D58FC: @ 80D58FC - push {r4,lr} - adds r4, r0, 0 - bl sub_80D59B0 - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080D5936 - ldr r3, _080D593C @ =gTasks - movs r0, 0x3C - ldrsh r1, [r4, r0] - lsls r1, 1 - movs r0, 0x3A - ldrsh r2, [r4, r0] - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r3, 0x8 - adds r1, r3 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] - adds r0, r4, 0 - bl DestroySprite -_080D5936: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D593C: .4byte gTasks - thumb_func_end sub_80D58FC - - thumb_func_start sub_80D5940 -sub_80D5940: @ 80D5940 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080D5978 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r2, [r1, 0x26] - ldrh r0, [r1, 0x22] - adds r2, r0 - adds r1, 0x29 - movs r0, 0 - ldrsb r0, [r1, r0] - adds r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, _080D597C @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080D5980 - lsls r0, r4, 16 - movs r1, 0x94 - lsls r1, 15 - b _080D5986 - .align 2, 0 -_080D5978: .4byte gSprites -_080D597C: .4byte gBattleAnimBankAttacker -_080D5980: - lsls r0, r4, 16 - movs r1, 0xB0 - lsls r1, 14 -_080D5986: - adds r0, r1 - lsrs r4, r0, 16 - adds r0, r4, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80D5940 - - thumb_func_start sub_80D5994 -sub_80D5994: @ 80D5994 - movs r3, 0 - strh r3, [r0, 0x2E] - strh r3, [r0, 0x30] - ldrh r3, [r0, 0x20] - lsls r3, 3 - strh r3, [r0, 0x32] - ldrh r3, [r0, 0x22] - lsls r3, 3 - strh r3, [r0, 0x34] - lsls r1, 3 - strh r1, [r0, 0x36] - lsls r2, 3 - strh r2, [r0, 0x38] - bx lr - thumb_func_end sub_80D5994 - - thumb_func_start sub_80D59B0 -sub_80D59B0: @ 80D59B0 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _080D59DA - movs r0, 0 - strh r0, [r2, 0x2E] - ldrh r0, [r2, 0x30] - adds r0, 0x1 - strh r0, [r2, 0x30] - ldrh r0, [r2, 0x30] - adds r1, r0, 0 - muls r1, r0 - adds r0, r1, 0 - ldrh r3, [r2, 0x34] - adds r0, r3 - strh r0, [r2, 0x34] -_080D59DA: - ldrh r0, [r2, 0x36] - ldrh r1, [r2, 0x32] - adds r0, r1 - strh r0, [r2, 0x32] - lsls r0, 16 - asrs r0, 19 - strh r0, [r2, 0x20] - ldrh r1, [r2, 0x38] - ldrh r3, [r2, 0x34] - adds r1, r3 - strh r1, [r2, 0x34] - lsls r1, 16 - asrs r3, r1, 19 - strh r3, [r2, 0x22] - adds r0, 0x8 - lsls r0, 16 - movs r1, 0x80 - lsls r1, 17 - cmp r0, r1 - bhi _080D5A10 - adds r1, r3, 0 - movs r0, 0x8 - negs r0, r0 - cmp r1, r0 - blt _080D5A10 - cmp r1, 0x78 - ble _080D5A1C -_080D5A10: - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] -_080D5A1C: - pop {r0} - bx r0 - thumb_func_end sub_80D59B0 - - thumb_func_start sub_80D5A20 -sub_80D5A20: @ 80D5A20 - push {r4,r5,lr} - ldr r3, _080D5A64 @ =gBattleAnimArgs - ldrh r1, [r3] - movs r2, 0 - strh r1, [r0, 0x20] - ldrh r1, [r3, 0x2] - strh r1, [r0, 0x22] - strh r2, [r0, 0x2E] - strh r2, [r0, 0x30] - strh r2, [r0, 0x32] - ldrh r1, [r3, 0x4] - strh r1, [r0, 0x3A] - ldrh r1, [r3, 0x6] - strh r1, [r0, 0x3C] - ldrh r4, [r0, 0x4] - lsls r2, r4, 22 - lsrs r2, 22 - movs r5, 0x8 - ldrsh r1, [r3, r5] - lsls r1, 4 - adds r2, r1 - ldr r3, _080D5A68 @ =0x000003ff - adds r1, r3, 0 - ands r2, r1 - ldr r1, _080D5A6C @ =0xfffffc00 - ands r1, r4 - orrs r1, r2 - strh r1, [r0, 0x4] - ldr r1, _080D5A70 @ =sub_80D5A74 - str r1, [r0, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D5A64: .4byte gBattleAnimArgs -_080D5A68: .4byte 0x000003ff -_080D5A6C: .4byte 0xfffffc00 -_080D5A70: .4byte sub_80D5A74 - thumb_func_end sub_80D5A20 - - thumb_func_start sub_80D5A74 -sub_80D5A74: @ 80D5A74 - push {r4,lr} - adds r2, r0, 0 - movs r1, 0x2E - ldrsh r0, [r2, r1] - cmp r0, 0x1 - beq _080D5AA6 - cmp r0, 0x1 - bgt _080D5A8A - cmp r0, 0 - beq _080D5A90 - b _080D5B04 -_080D5A8A: - cmp r0, 0x2 - beq _080D5AC4 - b _080D5B04 -_080D5A90: - ldrh r1, [r2, 0x3A] - movs r3, 0x3A - ldrsh r0, [r2, r3] - cmp r0, 0 - beq _080D5AA0 - subs r0, r1, 0x1 - strh r0, [r2, 0x3A] - b _080D5B04 -_080D5AA0: - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] -_080D5AA6: - ldrh r0, [r2, 0x22] - adds r0, 0x8 - strh r0, [r2, 0x22] - lsls r0, 16 - asrs r0, 16 - ldrh r3, [r2, 0x3C] - movs r4, 0x3C - ldrsh r1, [r2, r4] - cmp r0, r1 - blt _080D5B04 - strh r3, [r2, 0x22] - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] - b _080D5B04 -_080D5AC4: - ldrh r0, [r2, 0x30] - adds r0, 0x1 - strh r0, [r2, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080D5AF0 - movs r0, 0 - strh r0, [r2, 0x30] - ldrh r0, [r2, 0x32] - adds r0, 0x1 - strh r0, [r2, 0x32] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D5AEC - ldr r0, _080D5AE8 @ =0x0000fffd - b _080D5AEE - .align 2, 0 -_080D5AE8: .4byte 0x0000fffd -_080D5AEC: - movs r0, 0x3 -_080D5AEE: - strh r0, [r2, 0x26] -_080D5AF0: - ldrh r0, [r2, 0x34] - adds r0, 0x1 - strh r0, [r2, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - ble _080D5B04 - adds r0, r2, 0 - bl move_anim_8072740 -_080D5B04: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D5A74 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/liquid_ball.s b/asm/liquid_ball.s deleted file mode 100755 index 6af030ecf..000000000 --- a/asm/liquid_ball.s +++ /dev/null @@ -1,353 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ liquid_ball - - thumb_func_start sub_80D3554 -sub_80D3554: @ 80D3554 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x1 - bl sub_80787B0 - movs r0, 0x1E - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x20] - strh r0, [r5, 0x30] - ldr r4, _080D35BC @ =gBattleAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x22] - strh r0, [r5, 0x34] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl obj_translate_based_on_private_1_2_3_4 - movs r0, 0x2E - ldrsh r1, [r5, r0] - movs r0, 0xD2 - lsls r0, 8 - bl __divsi3 - strh r0, [r5, 0x38] - ldr r0, _080D35C0 @ =gBattleAnimArgs - ldrh r2, [r0, 0x6] - strh r2, [r5, 0x3C] - ldrh r1, [r0, 0xE] - movs r3, 0xE - ldrsh r0, [r0, r3] - cmp r0, 0x7F - ble _080D35C4 - adds r0, r1, 0 - subs r0, 0x7F - lsls r0, 8 - strh r0, [r5, 0x3A] - negs r0, r2 - strh r0, [r5, 0x3C] - b _080D35C8 - .align 2, 0 -_080D35BC: .4byte gBattleAnimBankTarget -_080D35C0: .4byte gBattleAnimArgs -_080D35C4: - lsls r0, r1, 8 - strh r0, [r5, 0x3A] -_080D35C8: - ldr r1, _080D35D8 @ =sub_80D35DC - str r1, [r5, 0x1C] - adds r0, r5, 0 - bl _call_via_r1 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D35D8: .4byte sub_80D35DC - thumb_func_end sub_80D3554 - - thumb_func_start sub_80D35DC -sub_80D35DC: @ 80D35DC - push {r4,lr} - adds r4, r0, 0 - bl sub_8078B5C - lsls r0, 24 - cmp r0, 0 - beq _080D35F0 - adds r0, r4, 0 - bl move_anim_8072740 -_080D35F0: - ldrh r0, [r4, 0x3A] - lsls r0, 16 - asrs r0, 24 - movs r2, 0x3C - ldrsh r1, [r4, r2] - bl Sin - ldrh r1, [r4, 0x26] - adds r0, r1 - strh r0, [r4, 0x26] - movs r2, 0x3A - ldrsh r0, [r4, r2] - movs r2, 0x38 - ldrsh r1, [r4, r2] - adds r0, r1 - asrs r0, 8 - cmp r0, 0x7F - ble _080D3620 - movs r0, 0 - strh r0, [r4, 0x3A] - ldrh r0, [r4, 0x3C] - negs r0, r0 - strh r0, [r4, 0x3C] - b _080D3628 -_080D3620: - ldrh r0, [r4, 0x38] - ldrh r1, [r4, 0x3A] - adds r0, r1 - strh r0, [r4, 0x3A] -_080D3628: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D35DC - - thumb_func_start sub_80D3630 -sub_80D3630: @ 80D3630 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080D3650 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r3, _080D3654 @ =gBattleAnimArgs - ldrh r0, [r3] - movs r2, 0 - strh r0, [r1, 0x8] - strh r2, [r3, 0xE] - ldr r0, _080D3658 @ =sub_80D365C - str r0, [r1] - bx lr - .align 2, 0 -_080D3650: .4byte gTasks -_080D3654: .4byte gBattleAnimArgs -_080D3658: .4byte sub_80D365C - thumb_func_end sub_80D3630 - - thumb_func_start sub_80D365C -sub_80D365C: @ 80D365C - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, _080D3690 @ =gBattleAnimArgs - ldrh r0, [r2, 0xE] - adds r0, 0x3 - movs r1, 0xFF - ands r0, r1 - strh r0, [r2, 0xE] - ldr r1, _080D3694 @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x8] - subs r1, 0x1 - strh r1, [r0, 0x8] - lsls r1, 16 - cmp r1, 0 - bne _080D368A - adds r0, r3, 0 - bl DestroyAnimVisualTask -_080D368A: - pop {r0} - bx r0 - .align 2, 0 -_080D3690: .4byte gBattleAnimArgs -_080D3694: .4byte gTasks - thumb_func_end sub_80D365C - - thumb_func_start sub_80D3698 -sub_80D3698: @ 80D3698 - push {r4-r7,lr} - adds r4, r0, 0 - ldr r7, _080D36E4 @ =gBattleAnimBankAttacker - ldrb r0, [r7] - movs r1, 0 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x20] - ldrb r0, [r7] - movs r1, 0x1 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x22] - ldr r6, _080D36E8 @ =0x0000fff6 - strh r6, [r4, 0x26] - ldrb r0, [r7] - bl sub_8079E90 - lsls r0, 24 - lsrs r5, r0, 24 - bl NotInBattle - lsls r0, 24 - cmp r0, 0 - bne _080D36F2 - ldrb r0, [r7] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080D36EC - movs r0, 0xA - strh r0, [r4, 0x24] - b _080D36F4 - .align 2, 0 -_080D36E4: .4byte gBattleAnimBankAttacker -_080D36E8: .4byte 0x0000fff6 -_080D36EC: - strh r6, [r4, 0x24] - subs r0, r5, 0x2 - b _080D36F6 -_080D36F2: - strh r6, [r4, 0x24] -_080D36F4: - adds r0, r5, 0x2 -_080D36F6: - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - ldr r0, _080D3708 @ =sub_80D370C - str r0, [r4, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D3708: .4byte sub_80D370C - thumb_func_end sub_80D3698 - - thumb_func_start sub_80D370C -sub_80D370C: @ 80D370C - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080D3722 - adds r0, r2, 0 - bl move_anim_8072740 -_080D3722: - pop {r0} - bx r0 - thumb_func_end sub_80D370C - - thumb_func_start sub_80D3728 -sub_80D3728: @ 80D3728 - push {r4-r7,lr} - adds r6, r0, 0 - ldr r5, _080D37E8 @ =gBattleAnimBankAttacker - ldrb r0, [r5] - bl GetBankSide - adds r4, r0, 0 - ldr r0, _080D37EC @ =gBattleAnimBankTarget - ldrb r0, [r0] - bl GetBankSide - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - bne _080D3772 - ldr r4, _080D37F0 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r4, r1] - negs r0, r0 - strh r0, [r4] - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - cmp r0, 0 - beq _080D376A - ldrb r0, [r5] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080D3772 -_080D376A: - movs r1, 0 - ldrsh r0, [r4, r1] - negs r0, r0 - strh r0, [r4] -_080D3772: - ldr r5, _080D37F0 @ =gBattleAnimArgs - movs r1, 0xA - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - movs r1, 0 - cmp r0, 0 - bne _080D3786 - movs r1, 0x1 -_080D3786: - ldrb r0, [r5, 0xA] - movs r7, 0x1 - cmp r0, 0 - bne _080D3790 - movs r7, 0x3 -_080D3790: - adds r0, r6, 0 - bl sub_80787B0 - ldr r0, _080D37E8 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D37AA - ldrh r0, [r5, 0x4] - negs r0, r0 - strh r0, [r5, 0x4] -_080D37AA: - ldrh r0, [r5, 0x8] - strh r0, [r6, 0x2E] - ldr r4, _080D37EC @ =gBattleAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r5, 0x4] - adds r0, r1 - strh r0, [r6, 0x32] - ldrb r0, [r4] - adds r1, r7, 0 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - ldrh r5, [r5, 0x6] - adds r0, r5 - strh r0, [r6, 0x36] - ldr r0, _080D37F4 @ =sub_8078B34 - str r0, [r6, 0x1C] - ldr r1, _080D37F8 @ =move_anim_8072740 - adds r0, r6, 0 - bl StoreSpriteCallbackInData - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D37E8: .4byte gBattleAnimBankAttacker -_080D37EC: .4byte gBattleAnimBankTarget -_080D37F0: .4byte gBattleAnimArgs -_080D37F4: .4byte sub_8078B34 -_080D37F8: .4byte move_anim_8072740 - thumb_func_end sub_80D3728 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/macros/event.inc b/asm/macros/event.inc index 960b300b7..738c2418e 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -80,20 +80,20 @@ .byte 0x0d .endm - @ Sets mystery event status + @ Sets some status related to Mystery Event. .macro setmysteryeventstatus value .byte 0x0e .byte \value .endm - @ Sets the specified script bank to immediate value. + @ Sets the specified script bank to value. .macro loadword destination, value .byte 0x0f .byte \destination .4byte \value .endm - @ Sets the specified script bank to immediate value. + @ Sets the specified script bank to value. .macro loadbyte destination, value .byte 0x10 .byte \destination @@ -219,7 +219,7 @@ .2byte \value .endm - @ Compares the value of `var` to the value of `var2`. + @ Compares the value of `var1` to the value of `var2`. .macro compare_var_to_var var1, var2 .byte 0x22 .2byte \var1 @@ -250,7 +250,7 @@ .4byte \func .endm - @ Calls a special function; that is, a piece of ASM code designed for use by scripts and listed in a table of pointers. + @ Calls a special function; that is, a function designed for use by scripts and listed in a table of pointers. .macro special function .byte 0x25 .2byte SPECIAL_\function @@ -292,19 +292,19 @@ .2byte \a .endm - @ In FireRed, this command is a nop. - .macro initclock hour minute + @ Initializes the RTC`s local time offset to the given hour and minute. In FireRed, this command is a nop. + .macro initclock hour, minute .byte 0x2c - .byte \hour - .byte \minute + .2byte \hour + .2byte \minute .endm - @ In FireRed, this command is a nop. + @ Runs time based events. In FireRed, this command is a nop. .macro dodailyevents .byte 0x2d .endm - @ Resets the values of variables 0x8000, 0x8001, and 0x8002. Related to RTC in RSE? + @ Sets the values of variables 0x8000, 0x8001, and 0x8002 to the current hour, minute, and second. In FRLG, this command sets those variables to zero. .macro gettime .byte 0x2e .endm @@ -315,7 +315,7 @@ .2byte \sound_number .endm - @ Blocks script execution until the currently-playing sound (triggered by sound) finishes playing. + @ Blocks script execution until the currently-playing sound (triggered by playse) finishes playing. .macro waitse .byte 0x30 .endm @@ -338,7 +338,7 @@ .byte \unknown .endm - @ Plays the specified (song_number) song. + @ Saves the specified (song_number) song to be played later. .macro savebgm song_number .byte 0x34 .2byte \song_number @@ -361,7 +361,7 @@ .byte \speed .endm - @ Fades the currently-playing song back in. + @ Fades the previously-playing song back in. .macro fadeinbgm speed .byte 0x38 .byte \speed @@ -385,7 +385,7 @@ .2byte \Y .endm - @ Clone of warp that uses "a walking effect". + @ Clone of warp that plays a door opening animation before stepping upwards into it. .macro warpdoor map, warp, X, Y .byte 0x3b map \map @@ -400,7 +400,7 @@ map \map .endm - @ Clone of warp that uses a teleport effect. It is apparently only used in R/S/E.[source] + @ Clone of warp that uses a teleport effect. It is apparently only used in R/S/E. .macro warpteleport map, warp, X, Y .byte 0x3d map \map @@ -409,7 +409,7 @@ .2byte \Y .endm - @ Clone of warp. Used by an (unused?) Safari Zone script to return the player to the gatehouse and end the Safari Game. + @ Sets the warp destination to be used later. .macro setwarp map, warp, X, Y .byte 0x3e map \map @@ -418,7 +418,7 @@ .2byte \Y .endm - @ Sets a default warp place. If a warp tries to send the player to Warp 127 on Map 127.127, they will instead be sent here. Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). + @ Sets the warp destination that a warp to Warp 127 on Map 127.127 will connect to. Useful when a map has warps that need to go to script-controlled locations (i.e. elevators). .macro setdynamicwarp map, warp, X, Y .byte 0x3f map \map @@ -427,7 +427,7 @@ .2byte \Y .endm - @ Clone of warp3, except that this writes data to different offsets... + @ Sets the destination that diving or emerging from a dive will take the player to. .macro setdivewarp map, warp, X, Y .byte 0x40 map \map @@ -436,7 +436,7 @@ .2byte \Y .endm - @ Clone of warp3, except that this writes data to different offsets... + @ Sets the destination that falling into a hole will take the player to. .macro setholewarp map, warp, X, Y .byte 0x41 map \map @@ -452,20 +452,20 @@ .2byte \Y .endm - @ Retrieves the number of Pokmon in the player's party, and stores that number in variable 0x800D (LASTRESULT). - .macro countpokemon + @ Retrieves the number of Pokemon in the player's party, and stores that number in variable 0x800D (LASTRESULT). + .macro getpartysize .byte 0x43 .endm @ Attempts to add quantity of item index to the player's Bag. If the player has enough room, the item will be added and variable 0x800D (LASTRESULT) will be set to 0x0001; otherwise, LASTRESULT is set to 0x0000. - .macro additem index, quantity + .macro giveitem index, quantity .byte 0x44 .2byte \index .2byte \quantity .endm @ Removes quantity of item index from the player's Bag. - .macro removeitem index, quantity + .macro takeitem index, quantity .byte 0x45 .2byte \index .2byte \quantity @@ -492,7 +492,7 @@ .endm @ Adds a quantity amount of item index to the player's PC. Both arguments can be variables. - .macro addpcitem index, quantity + .macro givepcitem index, quantity .byte 0x49 .2byte \index .2byte \quantity @@ -505,32 +505,32 @@ .2byte \quantity .endm - @ In FireRed, this command is a nop. (The argument is read, but not used for anything.) - .macro adddecor a + @ Adds decoration to the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + .macro givedecoration decoration .byte 0x4b - .2byte \a + .2byte \decoration .endm - @ In FireRed, this command is a nop. (The argument is read, but not used for anything.) - .macro removedecor a + @ Removes a decoration from the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + .macro takedecoration decoration .byte 0x4c - .2byte \a + .2byte \decoration .endm - @ In FireRed, this command is a nop. (The argument is read, but not used for anything.) - .macro hasdecor a + @ Checks for decoration in the player's PC. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + .macro checkdecor decoration .byte 0x4d - .2byte \a + .2byte \decoration .endm - @ In FireRed, this command is a nop. (The argument is read, but not used for anything.) - .macro checkdecor a + @ Checks if the player has enough space in their PC to hold decoration. Sets variable 0x800D (LASTRESULT) to 0x0001 if there is room, or 0x0000 is there is no room. In FireRed, this command is a nop. (The argument is read, but not used for anything.) + .macro checkdecorspace decoration .byte 0x4e - .2byte \a + .2byte \decoration .endm - @ Applies the movement data at movements to the specified (index) Person event. Also closes any standard message boxes that are still open. - @ This command in fact uses variables to access the Person event ID. So, for example, if you setvar 0x8000 to 0x3, and then use applymovementpos 0x8000 @move1, Person event 3 will have the movements at @move1 applied to them. Thank you Shiny Quagsire for bringing this to my attention. + @ Applies the movement data at movements to the specified (index) Object event. Also closes any standard message boxes that are still open. + @ This command in fact uses variables to access the Object event ID. So, for example, if you setvar 0x8000 to 0x3, and then use applymovementpos 0x8000 @move1, Object event 3 will have the movements at @move1 applied to them. .macro applymovement index, movements, mapGroup, mapNum .ifb \mapGroup .byte 0x4f @@ -545,7 +545,7 @@ .endif .endm - @ Blocks script execution until the movements being applied to the specified (index) Person event finish. If the specified Person event is 0x0000, then the command will block script execution until all Person events affected by applymovement finish their movements. If the specified Person event is not currently being manipulated with applymovement, then this command does nothing. + @ Blocks script execution until the movements being applied to the specified (index) Object event finish. If the specified Object event is 0x0000, then the command will block script execution until all Object events affected by applymovement finish their movements. If the specified Object event is not currently being manipulated with applymovement, then this command does nothing. .macro waitmovement index, mapBank, mapNum .ifb \mapBank .byte 0x51 @@ -558,7 +558,7 @@ .endif .endm - @ Attempts to hide the specified (local_ID, a local ID) Person event on the specified map, by setting its visibility flag if it has a valid one. If the Person does not have a valid visibility flag, this command does nothing. + @ Attempts to hide the specified (local_ID, a local ID) Object event on the specified map, by setting its visibility flag if it has a valid one. If the Object does not have a valid visibility flag, this command does nothing. @ If no map is specified, then the current map is used .macro removeobject localId, mapGroup, mapNum .ifb \mapGroup @@ -584,92 +584,92 @@ .endif .endm - .macro setobjectxy word1, word2, word3 - .byte 0x57 - .2byte \word1 - .2byte \word2 - .2byte \word3 + @ Sets the specified (index) Object's position on the current map. + .macro setobjectxy index, x, y + .byte 0x57 + .2byte \index + .2byte \x + .2byte \y .endm - .macro showobject word, byte1, byte2 - .byte 0x58 - .2byte \word - .byte \byte1 - .byte \byte2 + .macro showobjectat index, map + .byte 0x58 + .2byte \index + map \map .endm - .macro hideobject word, byte1, byte2 - .byte 0x59 - .2byte \word - .byte \byte1 - .byte \byte2 + .macro hideobjectat index, map + .byte 0x59 + .2byte \index + map \map .endm - @ If the script was called by a Person event, then that Person will turn to face toward the tile that the player is stepping off of. + @ If the script was called by a Object event, then that Object will turn to face toward the tile that the player is stepping off of. .macro faceplayer - .byte 0x5a + .byte 0x5a .endm - .macro turnobject word, byte - .byte 0x5b - .2byte \word - .byte \byte + .macro turnobject index, direction + .byte 0x5b + .2byte \index + .byte \direction .endm @ If the Trainer flag for Trainer index is not set, this command does absolutely nothing. .macro trainerbattle type, trainer, word, pointer1, pointer2, pointer3, pointer4 - .byte 0x5c - .byte \type - .2byte \trainer - .2byte \word - .if \type == 0 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .elseif \type == 1 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ event script - .elseif \type == 2 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ event script - .elseif \type == 3 - .4byte \pointer1 @ text - .elseif \type == 4 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .elseif \type == 5 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .elseif \type == 6 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .4byte \pointer4 @ event script - .elseif \type == 7 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .elseif \type == 8 - .4byte \pointer1 @ text - .4byte \pointer2 @ text - .4byte \pointer3 @ text - .4byte \pointer4 @ event script - .endif + .byte 0x5c + .byte \type + .2byte \trainer + .2byte \word + .if \type == 0 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .elseif \type == 1 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ event script + .elseif \type == 2 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ event script + .elseif \type == 3 + .4byte \pointer1 @ text + .elseif \type == 4 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .elseif \type == 5 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .elseif \type == 6 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .4byte \pointer4 @ event script + .elseif \type == 7 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .elseif \type == 8 + .4byte \pointer1 @ text + .4byte \pointer2 @ text + .4byte \pointer3 @ text + .4byte \pointer4 @ event script + .endif .endm - @ Starts a trainer battle using the battle information stored in RAM (usually by trainerbattle, which actually calls this command behind-the-scenes), and blocks script execution until the battle finishes. - .macro battlebegin + .macro trainerbattlebegin .byte 0x5d .endm - .macro ontrainerbattleend + @ Goes to address after the trainerbattle command (called by the battle functions, see battle_setup.c) + .macro gotopostbattlescript .byte 0x5e .endm - .macro ontrainerbattleendgoto + @ Goes to address specified in the trainerbattle command (called by the battle functions, see battle_setup.c) + .macro gotobeatenscript .byte 0x5f .endm @@ -679,28 +679,28 @@ .2byte \trainer .endm - @ Sets Flag (trainer + 0x500). (I didn't make a mistake. The command names actually are backwards.) + @ Sets Flag (trainer + 0x500). .macro settrainerflag trainer .byte 0x61 .2byte \trainer .endm - @ Clears Flag (trainer + 0x500). (I didn't make a mistake. The command names actually are backwards.) + @ Clears Flag (trainer + 0x500). .macro cleartrainerflag trainer .byte 0x62 .2byte \trainer .endm - .macro setobjectxyperm word1, word2, word3 + .macro setobjectxyperm index, x, y .byte 0x63 - .2byte \word1 - .2byte \word2 - .2byte \word3 + .2byte \index + .2byte \x + .2byte \y .endm - .macro moveobjectoffscreen word + .macro moveobjectoffscreen index .byte 0x64 - .2byte \word + .2byte \index .endm .macro setobjectmovementtype word, byte @@ -720,67 +720,67 @@ .4byte \text .endm - @ Holds the current message box open until the player presses a key. The message box is then closed. + @ Closes the current message box. .macro closemessage .byte 0x68 .endm - @ Ceases movement for all OWs on-screen. + @ Ceases movement for all Objects on-screen. .macro lockall .byte 0x69 .endm - @ If the script was called by a Person event, then that Person's movement will cease. + @ If the script was called by an Object, then that Object's movement will cease. .macro lock .byte 0x6a .endm - @ Resumes normal movement for all OWs on-screen, and closes any standard message boxes that are still open. + @ Resumes normal movement for all Objects on-screen, and closes any standard message boxes that are still open. .macro releaseall .byte 0x6b .endm - @ If the script was called by a Person event, then that Person's movement will resume. This command also closes any standard message boxes that are still open. + @ If the script was called by an Object, then that Object's movement will resume. This command also closes any standard message boxes that are still open. .macro release .byte 0x6c .endm @ Blocks script execution until the player presses any key. - .macro waitbutton + .macro waitbuttonpress .byte 0x6d .endm @ Displays a YES/NO multichoice box at the specified coordinates, and blocks script execution until the user makes a selection. Their selection is stored in variable 0x800D (LASTRESULT); 0x0000 for "NO" or if the user pressed B, and 0x0001 for "YES". - .macro yesnobox X, Y + .macro yesnobox x, y .byte 0x6e - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. If B is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. - .macro multichoice X, Y, list, B + @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. If b is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. + .macro multichoice x, y, list, b .byte 0x6f - .byte \X - .byte \Y + .byte \x + .byte \y .byte \list - .byte \B + .byte \b .endm - @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. The default argument determines the initial position of the cursor when the box is first opened; it is zero-indexed, and if it is too large, it is treated as 0x00. If B is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. - .macro multichoicedefault X, Y, list, default, B + @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. The default argument determines the initial position of the cursor when the box is first opened; it is zero-indexed, and if it is too large, it is treated as 0x00. If b is set to a non-zero value, then the user will not be allowed to back out of the multichoice with the B button. + .macro multichoicedefault x, y, list, default, b .byte 0x70 - .byte \X - .byte \Y + .byte \x + .byte \y .byte \list .byte \default - .byte \B + .byte \b .endm @ Displays a multichoice box from which the user can choose a selection, and blocks script execution until a selection is made. Lists of options are predefined and the one to be used is specified with list. The per_row argument determines how many list items will be shown on a single row of the box. - .macro multichoicegrid X, Y, list, per_row, B + .macro multichoicegrid x, y, list, per_row, B .byte 0x71 - .byte \X - .byte \Y + .byte \x + .byte \y .byte \list .byte \per_row .byte \B @@ -810,20 +810,20 @@ .byte \byte4 .endm - @ Displays a box containing the front sprite for the specified (species) Pokmon species. - .macro drawpokepic species, X, Y + @ Displays a box containing the front sprite for the specified (species) Pokemon species. + .macro drawmonpic species, x, y .byte 0x75 .2byte \species - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Hides all boxes displayed with showpokepic. - .macro erasepokepic + @ Hides all boxes displayed with drawmonpic. + .macro erasemonpic .byte 0x76 .endm - @ In FireRed, this command is a nop. (The argument is discarded.) + @ Draws an image of the winner of the contest. In FireRed, this command is a nop. (The argument is discarded.) .macro drawcontestwinner a .byte 0x77 .byte \a @@ -835,8 +835,8 @@ .4byte \text .endm - @ Gives the player one of the specified (species) Pokmon at level level holding item. The unknown arguments should all be zeroes. - .macro givepoke species, level, item, unknown1, unknown2, unknown3 + @ Gives the player one of the specified (species) Pokemon at level level holding item. The unknown arguments should all be zeroes. + .macro givemon species, level, item, unknown1, unknown2, unknown3 .byte 0x79 .2byte \species .byte \level @@ -846,81 +846,81 @@ .byte \unknown3 .endm - .macro giveegg word + .macro giveegg species .byte 0x7a - .2byte \word + .2byte \species .endm - .macro setpokemove byte1, byte2, word + .macro setmonmove index, slot, move .byte 0x7b - .byte \byte1 - .byte \byte2 - .2byte \word + .byte \index + .byte \slot + .2byte \move .endm - @ Checks if at least one Pokmon in the player's party knows the specified (index) attack. If so, variable 0x800D (LASTRESULT) is set to the (zero-indexed) slot number of the Pokmon that knows the move. If not, LASTRESULT is set to 0x0006. - .macro checkpokemove index + @ Checks if at least one Pokemon in the player's party knows the specified (index) attack. If so, variable 0x800D (LASTRESULT) is set to the (zero-indexed) slot number of the first Pokemon that knows the move. If not, LASTRESULT is set to 0x0006. Variable 0x8004 is also set to this Pokemon's species. + .macro checkpartymove index .byte 0x7c .2byte \index .endm - @ Writes the name of the Pokmon at index species to the specified buffer. - .macro getspeciesname out, species + @ Writes the name of the Pokemon at index species to the specified buffer. + .macro bufferspeciesname out, species .byte 0x7d .byte \out .2byte \species .endm - @ Writes the name of the first Pokmon in the player's party to the specified buffer. - .macro getfirstpartypokename out + @ Writes the name of the species of the first Pokemon in the player's party to the specified buffer. + .macro bufferleadmonspeciesname out .byte 0x7e .byte \out .endm - @ Writes the name of the Pokmon in slot slot (zero-indexed) of the player's party to the specified buffer. If an empty or invalid slot is specified, ten spaces ("") are written to the buffer. - .macro getpartypokename out, slot + @ Writes the nickname of the Pokemon in slot slot (zero-indexed) of the player's party to the specified buffer. If an empty or invalid slot is specified, ten spaces ("") are written to the buffer. + .macro bufferpartymonnick out, slot .byte 0x7f .byte \out .2byte \slot .endm @ Writes the name of the item at index item to the specified buffer. If the specified index is larger than the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. - .macro getitemname out, item + .macro bufferitemname out, item .byte 0x80 .byte \out .2byte \item .endm - @ In FireRed, this command is a nop. (The first argument is discarded immediately. The second argument is read, but not used for anything.) - .macro getdecorname a, b + @ Writes the name of the decoration at index decoration to the specified buffer. In FireRed, this command is a nop. + .macro bufferdecorationname out, decoration .byte 0x81 - .byte \a - .2byte \b + .byte \out + .2byte \decoration .endm - @ Writes the name of the attack at index attack to the specified buffer. - .macro getmovename out, attack + @ Writes the name of the move at index move to the specified buffer. + .macro buffermovename out, move .byte 0x82 .byte \out - .2byte \attack + .2byte \move .endm @ Converts the value of input to a decimal string, and writes that string to the specified buffer. - .macro getnumberstring out, input + .macro buffernumberstring out, input .byte 0x83 .byte \out .2byte \input .endm - @ Writes the standard string identified by index to the specified buffer. Specifying an invalid standard string (e.x. 0x2B) can and usually will cause data corruption (I've observed destruction of the stored player name and crashes when entering/exiting certain menu screens). - .macro getstdstring out, index + @ Writes the standard string identified by index to the specified buffer. This command has no protections in place at all, so specifying an invalid standard string (e.x. 0x2B) can and usually will cause data corruption. + .macro bufferstdstring out, index .byte 0x84 .byte \out .2byte \index .endm @ Copies the string at offset to the specified buffer. - .macro getstring out, offset + .macro bufferstring out, offset .byte 0x85 .byte \out .4byte \offset @@ -932,46 +932,49 @@ .4byte \products .endm - @ Apparent clone of pokemart. - .macro pokemartdecor products + @ Opens the Pokemart system and treats the list of items as decorations. + .macro pokemartdecoration products .byte 0x87 .4byte \products .endm - @ Apparent clone of pokemart. - .macro pokemartbp products + @ Apparent clone of pokemartdecoration. + .macro pokemartdecoration2 products .byte 0x88 .4byte \products .endm + @ Starts up the slot machine minigame. .macro playslotmachine word .byte 0x89 .2byte \word .endm - @ In FireRed, this command is a nop. - .macro plantberrytree byte1, byte2, byte3 + @ Sets a berry tree's specific berry and growth stage. In FireRed, this command is a nop. + .macro setberrytree tree_id, berry, growth_stage .byte 0x8a - .byte \byte1, \byte2, \byte3 + .byte \tree_id + .byte \berry + .byte \growth_stage .endm - @ In FireRed, this command sets the byte at 0x03000EA8 to 0x01. I do not know what that means. - .macro choosecontestpkmn + @ This allows you to choose a Pokemon to use in a contest. In FireRed, this command sets the byte at 0x03000EA8 to 0x01. + .macro choosecontestmon .byte 0x8b .endm - @ In FireRed, this command is a nop. - .macro startcontest + @ Starts a contest. In FireRed, this command is a nop. + .macro startcontest .byte 0x8c .endm - @ In FireRed, this command is a nop. - .macro showcontestresults + @ Shows the results of a contest. In FireRed, this command is a nop. + .macro showcontestresults .byte 0x8d .endm - @ In FireRed, this command is a nop. - .macro contestlinktransfer + @ Starts a contest over a link connection. In FireRed, this command is a nop. + .macro contestlinktransfer .byte 0x8e .endm @@ -1003,50 +1006,51 @@ .endm @ Spawns a secondary box showing how much money the player has. - .macro showmoneybox X, Y + .macro showmoneybox x, y .byte 0x93 - .byte \X - .byte \Y + .byte \x + .byte \y .endm @ Hides the secondary box spawned by showmoney. - .macro hidemoneybox X, Y + .macro hidemoneybox x, y .byte 0x94 - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Updates the secondary box spawned by showmoney. (What does it do with its arguments?) - .macro updatemoneybox X, Y + @ Updates the secondary box spawned by showmoney. Consumes but does not use arguments. + .macro updatemoneybox x, y .byte 0x95 - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ In FireRed, this command is a nop. - .macro getpricereduction word + @ Gets the price reduction for the index given. In FireRed, this command is a nop. + .macro getpricereduction index .byte 0x96 - .2byte \word + .2byte \index .endm - @ Fades the screen to black or back, using the specified effect. Effect 0x00 fades in, and effect 0x01 fades out. I don't know if other effects exist. + @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white. .macro fadescreen effect .byte 0x97 .byte \effect .endm - .macro fadescreendelay byte1, byte2 + @ Fades the screen to and from black and white. Mode 0x00 fades from black, mode 0x01 fades out to black, mode 0x2 fades in from white, and mode 0x3 fades out to white. Other modes may exist. + .macro fadescreenspeed effect, speed .byte 0x98 - .byte \byte1 - .byte \byte2 + .byte \effect + .byte \speed .endm - .macro setdarklevel word + .macro setflashradius word .byte 0x99 .2byte \word .endm - .macro animdarklevel byte + .macro animateflash byte .byte 0x9a .byte \byte .endm @@ -1062,11 +1066,11 @@ .2byte \animation .endm - @ Tells the game which party Pokmon to use for the next field move animation. - .macro setfieldeffect animation, slot + @ Sets up the field effect argument argument with the value value. + .macro setfieldeffectargument argument, param .byte 0x9d - .byte \animation - .2byte \slot + .byte \argument + .2byte \param .endm @ Blocks script execution until all playing field move animations complete. @@ -1075,10 +1079,10 @@ .2byte \animation .endm - @ Sets which healing place the player will return to if all of the Pokmon in their party faint. A list of available healing places can be found on PokeCommunity. - .macro sethealplace flightspot + @ Sets which healing place the player will return to if all of the Pokemon in their party faint. + .macro setrespawn heallocation .byte 0x9f - .2byte \flightspot + .2byte \heallocation .endm @ Checks the player's gender. If male, then 0x0000 is stored in variable 0x800D (LASTRESULT). If female, then 0x0001 is stored in LASTRESULT. @@ -1086,19 +1090,19 @@ .byte 0xa0 .endm - @ Plays the specified (species) Pokmon's cry. You can use waitcry to block script execution until the sound finishes. - .macro playpokecry species, effect + @ Plays the specified (species) Pokemon's cry. You can use waitcry to block script execution until the sound finishes. + .macro playmoncry species, effect .byte 0xa1 .2byte \species .2byte \effect .endm - @ Changes the tile at (X, Y) on the current map. - .macro setmaptile X, Y, tile_number, tile_attrib + @ Changes the metatile at (x, y) on the current map. + .macro setmetatile x, y, metatile_number, tile_attrib .byte 0xa2 - .2byte \X - .2byte \Y - .2byte \tile_number + .2byte \x + .2byte \y + .2byte \metatile_number .2byte \tile_attrib .endm @@ -1119,78 +1123,76 @@ .endm @ This command manages cases in which maps have tiles that change state when stepped on (specifically, cracked/breakable floors). - .macro tileeffect subroutine + .macro setstepcallback subroutine .byte 0xa6 .byte \subroutine .endm - .macro setmaplayoutindex word + .macro setmaplayoutindex index .byte 0xa7 - .2byte \word + .2byte \index .endm - .macro setobjectpriority word, byte1, byte2, byte3 + .macro setobjectpriority index, map, priority .byte 0xa8 - .2byte \word - .byte \byte1 - .byte \byte2 - .byte \byte3 + .2byte \index + map \map + .byte \priority .endm - .macro resetobjectpriority word, byte1, byte2 + .macro resetobjectpriority index, map .byte 0xa9 - .2byte \word - .byte \byte1 - .byte \byte2 + .2byte \index + map \map .endm - .macro createvobject byte1, byte2, word1, word2, byte3, byte4 + .macro createvobject sprite, byte2, x, y, elevation, direction .byte 0xaa - .byte \byte1 + .byte \sprite .byte \byte2 - .2byte \word1 - .2byte \word2 - .byte \byte3 - .byte \byte4 + .2byte \x + .2byte \y + .byte \elevation + .byte \direction .endm - .macro turnvobject byte1, byte2 + .macro turnvobject index, direction .byte 0xab - .byte \byte1 - .byte \byte2 + .byte \index + .byte \direction .endm - @ Queues the opening of the door tile at (X, Y) with an animation. - .macro opendoor X, Y + @ Opens the door metatile at (X, Y) with an animation. + .macro opendoor x, y .byte 0xac - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm - @ Queues the closing of the door tile at (X, Y) with an animation. - .macro closedoor X, Y + @ Closes the door metatile at (X, Y) with an animation. + .macro closedoor x, y .byte 0xad - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm - @ Executes the state changes queued with setdooropened, setdoorclosed, setdooropened2, and setdoorclosed2. - .macro waitdooranim + @ Waits for the door animation started with opendoor or closedoor to finish. + .macro waitdooranim .byte 0xae .endm - @ Queues the opening of the door tile at (X, Y) without an animation. - .macro setdooropen X, Y + @ Sets the door tile at (x, y) to be open without an animation. + .macro setdooropen x, y .byte 0xaf - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm - @ Queues the closing of the door tile at (X, Y) without an animation. - .macro setdoorclosed X, Y + @ Sets the door tile at (x, y) to be closed without an animation. + .macro setdoorclosed x, y .byte 0xb0 - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ In FireRed, this command is a nop. @@ -1198,24 +1200,24 @@ .byte 0xb1 .endm - @ In FireRed, this command is a nop. - .macro showelevmenu + @ In FireRed and Emerald, this command is a nop. + .macro showelevmenu .byte 0xb2 .endm - .macro checkcoins word + .macro checkcoins out .byte 0xb3 - .2byte \word + .2byte \out .endm - .macro givecoins word + .macro givecoins count .byte 0xb4 - .2byte \word + .2byte \count .endm - .macro takecoins word + .macro takecoins count .byte 0xb5 - .2byte \word + .2byte \count .endm @ Prepares to start a wild battle against a species at Level level holding item. Running this command will not affect normal wild battles. You start the prepared battle with dowildbattle. @@ -1226,7 +1228,7 @@ .2byte \item .endm - @ Starts a wild battle against the Pokmon generated by setwildbattle. Blocks script execution until the battle finishes. + @ Starts a wild battle against the Pokemon generated by setwildbattle. Blocks script execution until the battle finishes. .macro dowildbattle .byte 0xb7 .endm @@ -1264,55 +1266,55 @@ .4byte \pointer .endm - .macro vloadword pointer + .macro vloadptr pointer .byte 0xbe .4byte \pointer .endm - .macro vgetstring byte, pointer + .macro vbufferstring byte, pointer .byte 0xbf .byte \byte .4byte \pointer .endm @ Spawns a secondary box showing how many Coins the player has. - .macro showcoinsbox X, Y + .macro showcoinsbox x, y .byte 0xc0 - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Hides the secondary box spawned by showcoins. It doesn't appear to use its arguments, but they are still required. - .macro hidecoinsbox X, Y + @ Hides the secondary box spawned by showcoins. It consumes its arguments but doesn't use them. + .macro hidecoinsbox x, y .byte 0xc1 - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Updates the secondary box spawned by showcoins. (What does it do with its arguments?) - .macro updatecoinsbox X, Y + @ Updates the secondary box spawned by showcoins. It consumes its arguments but doesn't use them. + .macro updatecoinsbox x, y .byte 0xc2 - .byte \X - .byte \Y + .byte \x + .byte \y .endm - @ Increases the value of the specified hidden variable by 1. The hidden variable's value will not be allowed to exceed 0x00FFFFFF. - .macro incrementgamestat a + @ Increases the value of the specified game stat by 1. The stat's value will not be allowed to exceed 0x00FFFFFF. + .macro incrementgamestat stat .byte 0xc3 - .byte \a + .byte \stat .endm - @ Clone of warp... Except that it doesn't appear to have any effect when used in some of FireRed's default level scripts. (If it did, Berry Forest would be impossible to enter...) - .macro setescapewarp map, warp, X, Y + @ Sets the destination that using an Escape Rope or Dig will take the player to. + .macro setescapewarp map, warp, x, y .byte 0xc4 map \map .byte \warp - .2byte \X - .2byte \Y + .2byte \x + .2byte \y .endm @ Blocks script execution until cry finishes. - .macro waitpokecry + .macro waitmoncry .byte 0xc5 .endm @@ -1357,134 +1359,6 @@ .4byte \value .endm - @ Makes the Pokmon in the specified slot of the player's party obedient. It will not randomly disobey orders in battle. - .macro setobedience slot - .byte 0xcd - .2byte \slot - .endm - - @ Checks if the Pokmon in the specified slot of the player's party is obedient. If the Pokmon is disobedient, 0x0001 is written to script variable 0x800D (LASTRESULT). If the Pokmon is obedient (or if the specified slot is empty or invalid), 0x0000 is written. - .macro checkobedience slot - .byte 0xce - .2byte \slot - .endm - - @ Depending on factors I haven't managed to understand yet, this command may cause script execution to jump to the offset specified by the pointer at 0x020370A4. - .macro execram - .byte 0xcf - .endm - - @ Sets worldmapflag to 1. This allows the player to Fly to the corresponding map, if that map has a flightspot. - .macro setworldflag worldmapflag - .byte 0xd0 - .2byte \worldmapflag - .endm - - @ Clone of warpteleport? It is apparently only used in FR/LG, and only with specials.[source] - .macro warpteleport2 map, warp, X, Y - .byte 0xd1 - map \map - .byte \warp - .2byte \X - .2byte \Y - .endm - - @ Changes the location where the player caught the Pokmon in the specified slot of their party. A list of valid catch locations can be found on PokeCommunity. - .macro setcatchlocale slot, location - .byte 0xd2 - .2byte \slot - .byte \location - .endm - - .macro event_d3 unknown - .byte 0xd3 - .2byte \unknown - .endm - - .macro event_d4 - .byte 0xd4 - .endm - - @ In FireRed, this command is a nop. - .macro event_d5 var - .byte 0xd5 - .2byte \var - .endm - - .macro event_d6 - .byte 0xd6 - .endm - - .macro warp7 map, byte, word1, word2 - .byte 0xd7 - map \map - .byte \byte - .2byte \word1 - .2byte \word2 - .endm - - .macro event_d8 - .byte 0xd8 - .endm - - .macro event_d9 - .byte 0xd9 - .endm - - .macro hidebox2 - .byte 0xda - .endm - - .macro message3 pointer - .byte 0xdb - .4byte \pointer - .endm - - .macro fadescreen3 byte - .byte 0xdc - .byte \byte - .endm - - .macro buffertrainerclass byte, word - .byte 0xdd - .byte \byte - .2byte \word - .endm - - .macro buffertrainername byte, word - .byte 0xde - .byte \byte - .2byte \word - .endm - - .macro pokenavcall pointer - .byte 0xdf - .4byte \pointer - .endm - - .macro warp8 map, byte, word1, word2 - .byte 0xe0 - map \map - .byte \byte - .2byte \word1 - .2byte \word2 - .endm - - .macro buffercontesttype byte, word - .byte 0xe1 - .byte \byte - .2byte \word - .endm - - @ Writes the name of the specified (item) item to the specified buffer. If the specified item is a Berry (0x85 - 0xAE) or Poke Ball (0x4) and if the quantity is 2 or more, the buffered string will be pluralized ("IES" or "S" appended). If the specified item is the Enigma Berry, I have no idea what this command does (but testing showed no pluralization). If the specified index is larger than the number of items in the game (0x176), the name of item 0 ("????????") is buffered instead. - .macro storeitems out, item, quantity - .byte 0xe2 - .byte \out - .2byte \item - .2byte \quantity - .endm - - @ Supplementary .macro goto_if_eq dest @@ -1511,13 +1385,13 @@ YES = 1 NO = 0 - .macro giveitem item, amount=1, function=0 + .macro giveitem_std item, amount=1, function=0 setorcopyvar 0x8000, \item setorcopyvar 0x8001, \amount callstd \function .endm - .macro givedecoration decoration + .macro givedecoration_std decoration setorcopyvar 0x8000, \decoration callstd 7 .endm diff --git a/asm/noise.s b/asm/noise.s deleted file mode 100755 index 930b77309..000000000 --- a/asm/noise.s +++ /dev/null @@ -1,139 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80D2D68 -sub_80D2D68: @ 80D2D68 - push {r4-r7,lr} - adds r5, r0, 0 - ldr r0, _080D2D7C @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D2D84 - ldr r0, _080D2D80 @ =gBattleAnimBankAttacker - b _080D2D86 - .align 2, 0 -_080D2D7C: .4byte gBattleAnimArgs -_080D2D80: .4byte gBattleAnimBankAttacker -_080D2D84: - ldr r0, _080D2E1C @ =gBattleAnimBankTarget -_080D2D86: - ldrb r6, [r0] - adds r0, r6, 0 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080D2DA0 - ldr r1, _080D2E20 @ =gBattleAnimArgs - movs r2, 0x2 - ldrsh r0, [r1, r2] - negs r0, r0 - strh r0, [r1, 0x2] -_080D2DA0: - adds r0, r6, 0 - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - ldr r7, _080D2E20 @ =gBattleAnimArgs - lsrs r0, 24 - ldrh r3, [r7, 0x2] - adds r0, r3 - movs r4, 0 - strh r0, [r5, 0x20] - adds r0, r6, 0 - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r7, 0x4] - adds r0, r1 - strh r0, [r5, 0x22] - strh r4, [r5, 0x2E] - ldrh r1, [r5, 0x20] - lsls r1, 3 - strh r1, [r5, 0x30] - lsls r0, 3 - strh r0, [r5, 0x32] - movs r2, 0x2 - ldrsh r0, [r7, r2] - lsls r0, 3 - cmp r0, 0 - bge _080D2DE0 - adds r0, 0x7 -_080D2DE0: - asrs r0, 3 - strh r0, [r5, 0x34] - movs r3, 0x4 - ldrsh r0, [r7, r3] - lsls r0, 3 - cmp r0, 0 - bge _080D2DF0 - adds r0, 0x7 -_080D2DF0: - asrs r0, 3 - strh r0, [r5, 0x36] - ldrh r2, [r5, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - movs r3, 0x6 - ldrsh r0, [r7, r3] - lsls r0, 4 - adds r1, r0 - ldr r3, _080D2E24 @ =0x000003ff - adds r0, r3, 0 - ands r1, r0 - ldr r0, _080D2E28 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x4] - ldr r0, _080D2E2C @ =sub_80D2E30 - str r0, [r5, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D2E1C: .4byte gBattleAnimBankTarget -_080D2E20: .4byte gBattleAnimArgs -_080D2E24: .4byte 0x000003ff -_080D2E28: .4byte 0xfffffc00 -_080D2E2C: .4byte sub_80D2E30 - thumb_func_end sub_80D2D68 - - thumb_func_start sub_80D2E30 -sub_80D2E30: @ 80D2E30 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x34] - ldrh r1, [r2, 0x30] - adds r0, r1 - strh r0, [r2, 0x30] - ldrh r1, [r2, 0x36] - ldrh r3, [r2, 0x32] - adds r1, r3 - strh r1, [r2, 0x32] - lsls r0, 16 - asrs r0, 19 - strh r0, [r2, 0x20] - lsls r1, 16 - asrs r1, 19 - strh r1, [r2, 0x22] - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - ble _080D2E64 - adds r0, r2, 0 - bl move_anim_8072740 -_080D2E64: - pop {r0} - bx r0 - thumb_func_end sub_80D2E30 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/note_spin.s b/asm/note_spin.s deleted file mode 100755 index d0df90fd1..000000000 --- a/asm/note_spin.s +++ /dev/null @@ -1,234 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_80D2E68 -sub_80D2E68: @ 80D2E68 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D2E8A - ldr r0, _080D2EC4 @ =gBattleAnimArgs - ldrh r1, [r0] - movs r0, 0x78 - subs r0, r1 - strh r0, [r4, 0x30] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_080D2E8A: - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - movs r2, 0x30 - ldrsh r1, [r4, r2] - cmp r0, r1 - bne _080D2EA8 - ldrb r0, [r4, 0x5] - lsrs r0, 4 - adds r0, 0x10 - movs r1, 0 - bl sub_8079108 -_080D2EA8: - movs r0, 0x2E - ldrsh r1, [r4, r0] - movs r2, 0x30 - ldrsh r0, [r4, r2] - adds r0, 0x50 - cmp r1, r0 - bne _080D2EBC - adds r0, r4, 0 - bl move_anim_8072740 -_080D2EBC: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D2EC4: .4byte gBattleAnimArgs - thumb_func_end sub_80D2E68 - - thumb_func_start sub_80D2EC8 -sub_80D2EC8: @ 80D2EC8 - push {r4-r6,lr} - adds r6, r0, 0 - movs r1, 0x2E - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _080D2EF6 - movs r5, 0x78 - strh r5, [r6, 0x20] - ldr r4, _080D2F78 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r0, [r4, r2] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - subs r0, 0xF - strh r0, [r6, 0x22] - ldrb r1, [r4, 0x2] - adds r0, r6, 0 - bl StartSpriteAnim - strh r5, [r6, 0x38] - ldrh r0, [r4, 0x4] - strh r0, [r6, 0x34] -_080D2EF6: - ldrh r0, [r6, 0x2E] - adds r0, 0x1 - movs r5, 0 - strh r0, [r6, 0x2E] - movs r1, 0x2E - ldrsh r0, [r6, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - strh r0, [r6, 0x30] - movs r2, 0x2E - ldrsh r0, [r6, r2] - lsls r4, r0, 1 - adds r4, r0 - ldrh r0, [r6, 0x34] - adds r4, r0 - movs r2, 0xFF - ldrh r0, [r6, 0x3A] - adds r0, 0xA - movs r1, 0xFF - ands r0, r1 - strh r0, [r6, 0x3A] - ands r4, r2 - adds r0, r4, 0 - movs r1, 0x64 - bl Cos - strh r0, [r6, 0x24] - adds r0, r4, 0 - movs r1, 0xA - bl Sin - adds r4, r0, 0 - movs r1, 0x3A - ldrsh r0, [r6, r1] - movs r1, 0x4 - bl Cos - ldrh r2, [r6, 0x30] - adds r4, r2 - adds r0, r4 - strh r0, [r6, 0x26] - movs r0, 0x2E - ldrsh r1, [r6, r0] - movs r2, 0x38 - ldrsh r0, [r6, r2] - cmp r1, r0 - ble _080D2F72 - ldr r0, _080D2F7C @ =sub_80D2F80 - str r0, [r6, 0x1C] - strh r5, [r6, 0x2E] - adds r0, r6, 0 - bl oamt_add_pos2_onto_pos1 - movs r0, 0x5 - strh r0, [r6, 0x32] - strh r5, [r6, 0x36] - strh r5, [r6, 0x34] - adds r0, r6, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim -_080D2F72: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D2F78: .4byte gBattleAnimArgs -_080D2F7C: .4byte sub_80D2F80 - thumb_func_end sub_80D2EC8 - - thumb_func_start sub_80D2F80 -sub_80D2F80: @ 80D2F80 - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - ble _080D2F9A - movs r0, 0 - strh r0, [r1, 0x2E] - ldr r0, _080D2FA0 @ =sub_80D2FA4 - str r0, [r1, 0x1C] -_080D2F9A: - pop {r0} - bx r0 - .align 2, 0 -_080D2FA0: .4byte sub_80D2FA4 - thumb_func_end sub_80D2F80 - - thumb_func_start sub_80D2FA4 -sub_80D2FA4: @ 80D2FA4 - push {r4,lr} - adds r4, r0, 0 - ldrh r1, [r4, 0x32] - ldrh r2, [r4, 0x34] - adds r0, r1, r2 - strh r0, [r4, 0x34] - strh r0, [r4, 0x26] - adds r1, 0x1 - strh r1, [r4, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x30 - ble _080D2FCE - lsls r0, r1, 16 - cmp r0, 0 - ble _080D2FCE - ldrh r0, [r4, 0x36] - subs r1, r0, 0x5 - strh r1, [r4, 0x32] - adds r0, 0x1 - strh r0, [r4, 0x36] -_080D2FCE: - movs r1, 0x36 - ldrsh r0, [r4, r1] - cmp r0, 0x3 - ble _080D3000 - movs r2, 0x32 - ldrsh r1, [r4, r2] - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r0, 1 - lsls r0, 1 - subs r1, r0 - adds r3, r4, 0 - adds r3, 0x3E - movs r0, 0x1 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - adds r0, r4, 0 - bl move_anim_8072740 -_080D3000: - movs r1, 0x36 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bne _080D300E - adds r0, r4, 0 - bl move_anim_8072740 -_080D300E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D2FA4 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/rain.s b/asm/rain.s deleted file mode 100755 index f8f68dd28..000000000 --- a/asm/rain.s +++ /dev/null @@ -1,123 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ rain - - thumb_func_start sub_80D30F0 -sub_80D30F0: @ 80D30F0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - adds r6, r0, 0 - ldr r1, _080D3178 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080D3118 - ldr r1, _080D317C @ =gBattleAnimArgs - ldrh r0, [r1] - strh r0, [r5, 0xA] - ldrh r0, [r1, 0x2] - strh r0, [r5, 0xC] - ldrh r0, [r1, 0x4] - strh r0, [r5, 0xE] -_080D3118: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - movs r2, 0x8 - ldrsh r0, [r5, r2] - movs r2, 0xC - ldrsh r1, [r5, r2] - bl __modsi3 - cmp r0, 0x1 - bne _080D3160 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0xF0 - bl __umodsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x50 - bl __umodsi3 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r0, _080D3180 @ =gSpriteTemplate_83D9130 - adds r1, r4, 0 - movs r3, 0x4 - bl CreateSprite -_080D3160: - movs r0, 0x8 - ldrsh r1, [r5, r0] - movs r2, 0xE - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _080D3172 - adds r0, r6, 0 - bl DestroyAnimVisualTask -_080D3172: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D3178: .4byte gTasks -_080D317C: .4byte gBattleAnimArgs -_080D3180: .4byte gSpriteTemplate_83D9130 - thumb_func_end sub_80D30F0 - - thumb_func_start sub_80D3184 -sub_80D3184: @ 80D3184 - ldr r1, _080D318C @ =sub_80D3190 - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_080D318C: .4byte sub_80D3190 - thumb_func_end sub_80D3184 - - thumb_func_start sub_80D3190 -sub_80D3190: @ 80D3190 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - adds r0, 0x1 - strh r0, [r2, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bgt _080D31AE - ldrh r0, [r2, 0x24] - adds r0, 0x1 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x26] - adds r0, 0x4 - strh r0, [r2, 0x26] -_080D31AE: - adds r0, r2, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080D31C2 - adds r0, r2, 0 - bl DestroySprite -_080D31C2: - pop {r0} - bx r0 - thumb_func_end sub_80D3190 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/shock.s b/asm/shock.s deleted file mode 100755 index 743aefe8a..000000000 --- a/asm/shock.s +++ /dev/null @@ -1,259 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ shock - - thumb_func_start sub_80D6294 -sub_80D6294: @ 80D6294 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080D62D8 @ =gBattleAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r0, _080D62DC @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D62E4 - ldr r2, _080D62E0 @ =gBattleAnimArgs - ldrh r0, [r5, 0x20] - ldrh r1, [r2] - subs r0, r1 - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x22] - ldrh r1, [r2, 0x2] - subs r0, r1 - strh r0, [r5, 0x22] - b _080D62F8 - .align 2, 0 -_080D62D8: .4byte gBattleAnimBankTarget -_080D62DC: .4byte gBattleAnimBankAttacker -_080D62E0: .4byte gBattleAnimArgs -_080D62E4: - ldr r0, _080D631C @ =gBattleAnimArgs - ldrh r1, [r0] - ldrh r2, [r5, 0x20] - adds r1, r2 - strh r1, [r5, 0x20] - ldrh r1, [r0, 0x2] - ldrh r2, [r5, 0x22] - adds r1, r2 - strh r1, [r5, 0x22] - adds r2, r0, 0 -_080D62F8: - movs r0, 0 - strh r0, [r5, 0x2E] - ldrh r0, [r2, 0x4] - strh r0, [r5, 0x30] - ldrh r0, [r2, 0x6] - strh r0, [r5, 0x32] - ldrh r0, [r2, 0x8] - strh r0, [r5, 0x34] - ldr r1, _080D6320 @ =move_anim_8074EE0 - adds r0, r5, 0 - bl StoreSpriteCallbackInData - ldr r0, _080D6324 @ =sub_8078114 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D631C: .4byte gBattleAnimArgs -_080D6320: .4byte move_anim_8074EE0 -_080D6324: .4byte sub_8078114 - thumb_func_end sub_80D6294 - - thumb_func_start sub_80D6328 -sub_80D6328: @ 80D6328 - push {r4-r7,lr} - adds r5, r0, 0 - ldr r0, _080D6340 @ =gBattleAnimArgs - movs r1, 0x8 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - beq _080D63A0 - cmp r0, 0x1 - bgt _080D6344 - cmp r0, 0 - beq _080D634E - b _080D63A0 - .align 2, 0 -_080D6340: .4byte gBattleAnimArgs -_080D6344: - cmp r0, 0x2 - beq _080D6358 - cmp r0, 0x3 - beq _080D637C - b _080D63A0 -_080D634E: - ldr r0, _080D6354 @ =gBattleAnimBankAttacker - b _080D63A2 - .align 2, 0 -_080D6354: .4byte gBattleAnimBankAttacker -_080D6358: - ldr r4, _080D6370 @ =gBattleAnimBankAttacker - ldrb r0, [r4] - movs r6, 0x2 - eors r0, r6 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - bne _080D6374 - ldrb r4, [r4] - b _080D63A4 - .align 2, 0 -_080D6370: .4byte gBattleAnimBankAttacker -_080D6374: - ldrb r0, [r4] - adds r4, r6, 0 - eors r4, r0 - b _080D63A4 -_080D637C: - ldr r0, _080D6398 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - movs r4, 0x2 - eors r0, r4 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080D63A0 - ldr r0, _080D639C @ =gBattleAnimBankTarget - ldrb r0, [r0] - eors r4, r0 - b _080D63A4 - .align 2, 0 -_080D6398: .4byte gBattleAnimBankAttacker -_080D639C: .4byte gBattleAnimBankTarget -_080D63A0: - ldr r0, _080D63C4 @ =gBattleAnimBankTarget -_080D63A2: - ldrb r4, [r0] -_080D63A4: - ldr r0, _080D63C8 @ =gBattleAnimArgs - movs r2, 0xA - ldrsh r0, [r0, r2] - cmp r0, 0 - bne _080D63CC - adds r0, r4, 0 - movs r1, 0 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - adds r0, r4, 0 - movs r1, 0x1 - b _080D63DE - .align 2, 0 -_080D63C4: .4byte gBattleAnimBankTarget -_080D63C8: .4byte gBattleAnimArgs -_080D63CC: - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - adds r0, r4, 0 - movs r1, 0x3 -_080D63DE: - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r7, _080D647C @ =gSineTable - ldr r6, _080D6480 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r6, r1] - lsls r0, 1 - adds r0, r7 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r2, 0x2 - ldrsh r0, [r6, r2] - muls r0, r1 - asrs r0, 8 - strh r0, [r5, 0x24] - movs r1, 0 - ldrsh r0, [r6, r1] - adds r0, 0x40 - lsls r0, 1 - adds r0, r7 - movs r2, 0 - ldrsh r1, [r0, r2] - movs r2, 0x2 - ldrsh r0, [r6, r2] - muls r0, r1 - asrs r0, 8 - strh r0, [r5, 0x26] - ldrh r1, [r6, 0xC] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080D6442 - adds r0, r4, 0 - bl sub_8079ED4 - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1 - movs r1, 0x3 - ands r0, r1 - lsls r0, 2 - ldrb r2, [r5, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - orrs r1, r0 - strb r1, [r5, 0x5] -_080D6442: - ldrb r2, [r5, 0x3] - lsls r2, 26 - lsrs r2, 27 - movs r0, 0x4 - ldrsh r1, [r6, r0] - lsls r0, r1, 1 - adds r0, r7 - ldrh r0, [r0] - ldr r3, _080D6484 @ =gOamMatrices - lsls r2, 3 - adds r2, r3 - adds r1, 0x40 - lsls r1, 1 - adds r1, r7 - ldrh r1, [r1] - strh r1, [r2, 0x6] - strh r1, [r2] - strh r0, [r2, 0x2] - lsls r0, 16 - asrs r0, 16 - negs r0, r0 - strh r0, [r2, 0x4] - ldrh r0, [r6, 0x6] - strh r0, [r5, 0x2E] - ldr r0, _080D6488 @ =sub_80DA48C - str r0, [r5, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D647C: .4byte gSineTable -_080D6480: .4byte gBattleAnimArgs -_080D6484: .4byte gOamMatrices -_080D6488: .4byte sub_80DA48C - thumb_func_end sub_80D6328 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/sunlight.s b/asm/sunlight.s deleted file mode 100755 index 07895e1b9..000000000 --- a/asm/sunlight.s +++ /dev/null @@ -1,33 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ sunlight - - thumb_func_start sub_80D517C -sub_80D517C: @ 80D517C - push {lr} - movs r1, 0 - strh r1, [r0, 0x20] - strh r1, [r0, 0x22] - movs r1, 0x3C - strh r1, [r0, 0x2E] - movs r1, 0x8C - strh r1, [r0, 0x32] - movs r1, 0x50 - strh r1, [r0, 0x36] - ldr r1, _080D51A0 @ =sub_8078B34 - str r1, [r0, 0x1C] - ldr r1, _080D51A4 @ =move_anim_8072740 - bl StoreSpriteCallbackInData - pop {r0} - bx r0 - .align 2, 0 -_080D51A0: .4byte sub_8078B34 -_080D51A4: .4byte move_anim_8072740 - thumb_func_end sub_80D517C - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/thunder.s b/asm/thunder.s deleted file mode 100755 index df97608f9..000000000 --- a/asm/thunder.s +++ /dev/null @@ -1,68 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ thunder - - thumb_func_start sub_80D61C8 -sub_80D61C8: @ 80D61C8 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080D61E8 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D61F0 - ldr r0, _080D61EC @ =gBattleAnimArgs - ldrh r1, [r4, 0x20] - ldrh r2, [r0] - subs r1, r2 - strh r1, [r4, 0x20] - b _080D61FC - .align 2, 0 -_080D61E8: .4byte gBattleAnimBankAttacker -_080D61EC: .4byte gBattleAnimArgs -_080D61F0: - ldr r1, _080D6210 @ =gBattleAnimArgs - ldrh r0, [r1] - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - adds r0, r1, 0 -_080D61FC: - ldrh r0, [r0, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - ldr r0, _080D6214 @ =sub_80D6218 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D6210: .4byte gBattleAnimArgs -_080D6214: .4byte sub_80D6218 - thumb_func_end sub_80D61C8 - - thumb_func_start sub_80D6218 -sub_80D6218: @ 80D6218 - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080D622E - adds r0, r2, 0 - bl move_anim_8072740 -_080D622E: - pop {r0} - bx r0 - thumb_func_end sub_80D6218 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/water.s b/asm/water.s index e982d4265..4bf95ab59 100755 --- a/asm/water.s +++ b/asm/water.s @@ -7,420 +7,6 @@ @ water - thumb_func_start sub_80D37FC -sub_80D37FC: @ 80D37FC - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl sub_8078764 - ldr r0, _080D382C @ =gBattleAnimArgs - ldrh r1, [r0, 0x8] - strh r1, [r4, 0x2E] - ldrh r0, [r0, 0x4] - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x22] - adds r1, r0 - strh r1, [r4, 0x36] - ldr r0, _080D3830 @ =sub_8078B34 - str r0, [r4, 0x1C] - ldr r1, _080D3834 @ =move_anim_8072740 - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D382C: .4byte gBattleAnimArgs -_080D3830: .4byte sub_8078B34 -_080D3834: .4byte move_anim_8072740 - thumb_func_end sub_80D37FC - - thumb_func_start sub_80D3838 -sub_80D3838: @ 80D3838 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080D3850 @ =gBattleAnimArgs - movs r1, 0x6 - ldrsh r0, [r0, r1] - cmp r0, 0 - beq _080D3854 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8078764 - b _080D385C - .align 2, 0 -_080D3850: .4byte gBattleAnimArgs -_080D3854: - adds r0, r4, 0 - movs r1, 0x1 - bl sub_80787B0 -_080D385C: - ldr r0, _080D386C @ =gBattleAnimArgs - ldrh r0, [r0, 0x4] - strh r0, [r4, 0x3C] - ldr r0, _080D3870 @ =sub_80D3874 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D386C: .4byte gBattleAnimArgs -_080D3870: .4byte sub_80D3874 - thumb_func_end sub_80D3838 - - thumb_func_start sub_80D3874 -sub_80D3874: @ 80D3874 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0xB - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x2E] - movs r1, 0x2E - ldrsh r0, [r4, r1] - movs r1, 0x4 - bl Sin - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x30] - adds r0, 0x30 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 24 - negs r0, r0 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x3C] - subs r0, 0x1 - strh r0, [r4, 0x3C] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080D38B4 - adds r0, r4, 0 - bl move_anim_8072740 -_080D38B4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D3874 - - thumb_func_start sub_80D38BC -sub_80D38BC: @ 80D38BC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r1, _080D398C @ =REG_BLDCNT - ldr r2, _080D3990 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - movs r3, 0x80 - lsls r3, 5 - adds r0, r3, 0 - strh r0, [r1] - ldr r2, _080D3994 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] - ldrb r1, [r2, 0x1] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2, 0x1] - mov r0, sp - bl sub_8078914 - ldr r2, [sp] - movs r3, 0x80 - lsls r3, 6 - add r6, sp, 0x10 - add r0, sp, 0xC - mov r12, r0 - movs r5, 0 - ldr r1, _080D3998 @ =0x040000d4 - movs r4, 0x80 - lsls r4, 5 - mov r8, r6 - ldr r7, _080D399C @ =0x85000400 - movs r0, 0x85 - lsls r0, 24 - mov r9, r0 -_080D3920: - str r5, [sp, 0x10] - mov r0, r8 - str r0, [r1] - str r2, [r1, 0x4] - str r7, [r1, 0x8] - ldr r0, [r1, 0x8] - adds r2, r4 - subs r3, r4 - cmp r3, r4 - bhi _080D3920 - str r5, [sp, 0x10] - str r6, [r1] - str r2, [r1, 0x4] - lsrs r0, r3, 2 - mov r2, r9 - orrs r0, r2 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r0, 0 - mov r3, r12 - strb r0, [r3] - strb r0, [r3] - ldr r1, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0x10] - ldr r0, _080D3998 @ =0x040000d4 - str r6, [r0] - str r1, [r0, 0x4] - ldr r1, _080D399C @ =0x85000400 - str r1, [r0, 0x8] - ldr r0, [r0, 0x8] - bl NotInBattle - lsls r0, 24 - cmp r0, 0 - bne _080D39B8 - ldr r2, _080D3994 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080D39A0 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080D39A8 - ldr r0, _080D39A4 @ =gUnknown_08E70968 - b _080D39AA - .align 2, 0 -_080D398C: .4byte REG_BLDCNT -_080D3990: .4byte 0x00003f42 -_080D3994: .4byte REG_BG1CNT -_080D3998: .4byte 0x040000d4 -_080D399C: .4byte 0x85000400 -_080D39A0: .4byte gBattleAnimBankAttacker -_080D39A4: .4byte gUnknown_08E70968 -_080D39A8: - ldr r0, _080D39B4 @ =gUnknown_08E70C38 -_080D39AA: - ldr r1, [sp, 0x4] - bl LZDecompressVram - b _080D39CE - .align 2, 0 -_080D39B4: .4byte gUnknown_08E70C38 -_080D39B8: - ldr r0, _080D39F0 @ =gUnknown_08E70F0C - ldr r1, [sp, 0x4] - bl LZDecompressVram - mov r0, sp - ldrb r0, [r0, 0x8] - ldr r1, [sp, 0x4] - movs r2, 0 - movs r3, 0x1 - bl sub_80763FC -_080D39CE: - ldr r0, _080D39F4 @ =gBattleAnimBackgroundImage_Surf - ldr r1, [sp] - bl LZDecompressVram - ldr r0, _080D39F8 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D3A00 - ldr r0, _080D39FC @ =gBattleAnimBackgroundPalette_Surf - mov r1, sp - ldrb r1, [r1, 0x8] - lsls r1, 4 - movs r2, 0x20 - bl LoadCompressedPalette - b _080D3A0E - .align 2, 0 -_080D39F0: .4byte gUnknown_08E70F0C -_080D39F4: .4byte gBattleAnimBackgroundImage_Surf -_080D39F8: .4byte gBattleAnimArgs -_080D39FC: .4byte gBattleAnimBackgroundPalette_Surf -_080D3A00: - ldr r0, _080D3A78 @ =gBattleAnimBackgroundImageMuddyWater_Pal - mov r1, sp - ldrb r1, [r1, 0x8] - lsls r1, 4 - movs r2, 0x20 - bl LoadCompressedPalette -_080D3A0E: - ldr r0, _080D3A7C @ =sub_80D3D68 - ldr r4, _080D3A80 @ =gTasks - mov r2, r10 - lsls r5, r2, 2 - adds r1, r5, r2 - lsls r1, 3 - adds r6, r1, r4 - ldrb r1, [r6, 0x7] - adds r1, 0x1 - lsls r1, 24 - lsrs r1, 24 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r3, 0 - mov r9, r3 - mov r0, r8 - strh r0, [r6, 0x26] - mov r1, r8 - lsls r0, r1, 2 - add r0, r8 - lsls r0, 3 - adds r7, r0, r4 - mov r2, r9 - strh r2, [r7, 0x8] - movs r0, 0x80 - lsls r0, 5 - strh r0, [r7, 0xA] - strh r0, [r7, 0xC] - bl NotInBattle - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _080D3A94 - ldr r3, _080D3A84 @ =0x0000ffb0 - adds r0, r3, 0 - ldr r1, _080D3A88 @ =gUnknown_030042C0 - strh r0, [r1] - ldr r2, _080D3A8C @ =0x0000ffd0 - adds r0, r2, 0 - ldr r3, _080D3A90 @ =gUnknown_030041B4 - strh r0, [r3] - movs r0, 0x2 - strh r0, [r6, 0x8] - movs r0, 0x1 - strh r0, [r6, 0xA] - mov r0, r9 - strh r0, [r7, 0xE] - b _080D3AEE - .align 2, 0 -_080D3A78: .4byte gBattleAnimBackgroundImageMuddyWater_Pal -_080D3A7C: .4byte sub_80D3D68 -_080D3A80: .4byte gTasks -_080D3A84: .4byte 0x0000ffb0 -_080D3A88: .4byte gUnknown_030042C0 -_080D3A8C: .4byte 0x0000ffd0 -_080D3A90: .4byte gUnknown_030041B4 -_080D3A94: - ldr r0, _080D3AC4 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x1 - bne _080D3AD8 - ldr r2, _080D3AC8 @ =0x0000ff20 - adds r0, r2, 0 - ldr r3, _080D3ACC @ =gUnknown_030042C0 - strh r0, [r3] - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - ldr r3, _080D3AD0 @ =gUnknown_030041B4 - strh r0, [r3] - movs r0, 0x2 - strh r0, [r6, 0x8] - ldr r0, _080D3AD4 @ =0x0000ffff - strh r0, [r6, 0xA] - strh r1, [r7, 0xE] - b _080D3AEE - .align 2, 0 -_080D3AC4: .4byte gBattleAnimBankAttacker -_080D3AC8: .4byte 0x0000ff20 -_080D3ACC: .4byte gUnknown_030042C0 -_080D3AD0: .4byte gUnknown_030041B4 -_080D3AD4: .4byte 0x0000ffff -_080D3AD8: - ldr r0, _080D3B1C @ =gUnknown_030042C0 - strh r4, [r0] - ldr r1, _080D3B20 @ =0x0000ffd0 - adds r0, r1, 0 - ldr r2, _080D3B24 @ =gUnknown_030041B4 - strh r0, [r2] - ldr r0, _080D3B28 @ =0x0000fffe - strh r0, [r6, 0x8] - movs r0, 0x1 - strh r0, [r6, 0xA] - strh r4, [r7, 0xE] -_080D3AEE: - ldr r1, _080D3B2C @ =REG_BG1HOFS - ldr r3, _080D3B1C @ =gUnknown_030042C0 - ldrh r0, [r3] - strh r0, [r1] - adds r1, 0x2 - ldr r2, _080D3B24 @ =gUnknown_030041B4 - ldrh r0, [r2] - strh r0, [r1] - ldr r1, _080D3B30 @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r2, r0, r1 - movs r3, 0xE - ldrsh r0, [r2, r3] - cmp r0, 0 - bne _080D3B34 - movs r0, 0x30 - strh r0, [r2, 0x10] - movs r0, 0x70 - b _080D3B38 - .align 2, 0 -_080D3B1C: .4byte gUnknown_030042C0 -_080D3B20: .4byte 0x0000ffd0 -_080D3B24: .4byte gUnknown_030041B4 -_080D3B28: .4byte 0x0000fffe -_080D3B2C: .4byte REG_BG1HOFS -_080D3B30: .4byte gTasks -_080D3B34: - movs r0, 0 - strh r0, [r2, 0x10] -_080D3B38: - strh r0, [r2, 0x12] - mov r2, r10 - adds r0, r5, r2 - lsls r0, 3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0, 0x14] - ldr r1, _080D3B5C @ =sub_80D3B60 - str r1, [r0] - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D3B5C: .4byte sub_80D3B60 - thumb_func_end sub_80D38BC - thumb_func_start sub_80D3B60 sub_80D3B60: @ 80D3B60 push {r4-r7,lr} diff --git a/asm/wisp_orb.s b/asm/wisp_orb.s deleted file mode 100755 index cb5920ba4..000000000 --- a/asm/wisp_orb.s +++ /dev/null @@ -1,230 +0,0 @@ - .include "constants/gba_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - @ wisp_orb - - thumb_func_start sub_80D5B0C -sub_80D5B0C: @ 80D5B0C - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080D5B80 - cmp r0, 0x1 - bgt _080D5B22 - cmp r0, 0 - beq _080D5B28 - b _080D5C4E -_080D5B22: - cmp r0, 0x2 - beq _080D5BDE - b _080D5C4E -_080D5B28: - adds r0, r5, 0 - movs r1, 0 - bl sub_80787B0 - ldr r4, _080D5B50 @ =gBattleAnimArgs - ldrb r1, [r4, 0x4] - adds r0, r5, 0 - bl StartSpriteAnim - ldrh r0, [r4, 0x4] - strh r0, [r5, 0x3C] - ldr r0, _080D5B54 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D5B58 - movs r0, 0x4 - b _080D5B5A - .align 2, 0 -_080D5B50: .4byte gBattleAnimArgs -_080D5B54: .4byte gBattleAnimBankAttacker -_080D5B58: - ldr r0, _080D5B78 @ =0x0000fffc -_080D5B5A: - strh r0, [r5, 0x36] - ldr r0, _080D5B7C @ =gBattleAnimBankTarget - ldrb r0, [r0] - bl sub_8079ED4 - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x5] - b _080D5BD6 - .align 2, 0 -_080D5B78: .4byte 0x0000fffc -_080D5B7C: .4byte gBattleAnimBankTarget -_080D5B80: - ldrh r0, [r5, 0x30] - adds r0, 0xC0 - strh r0, [r5, 0x30] - ldr r0, _080D5BA0 @ =gBattleAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D5BA4 - ldrh r0, [r5, 0x30] - lsls r0, 16 - asrs r0, 24 - negs r0, r0 - b _080D5BAA - .align 2, 0 -_080D5BA0: .4byte gBattleAnimBankAttacker -_080D5BA4: - ldrh r0, [r5, 0x30] - lsls r0, 16 - asrs r0, 24 -_080D5BAA: - strh r0, [r5, 0x26] - movs r2, 0x32 - ldrsh r0, [r5, r2] - movs r2, 0x36 - ldrsh r1, [r5, r2] - bl Sin - strh r0, [r5, 0x24] - ldrh r0, [r5, 0x32] - adds r0, 0x4 - movs r1, 0xFF - ands r0, r1 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x34] - adds r0, 0x1 - strh r0, [r5, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bne _080D5C4E - movs r0, 0 - strh r0, [r5, 0x34] -_080D5BD6: - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - b _080D5C4E -_080D5BDE: - movs r1, 0x32 - ldrsh r0, [r5, r1] - movs r2, 0x36 - ldrsh r1, [r5, r2] - bl Sin - adds r2, r0, 0 - movs r3, 0 - strh r2, [r5, 0x24] - ldrh r0, [r5, 0x32] - adds r0, 0x4 - movs r1, 0xFF - ands r0, r1 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x34] - adds r0, 0x1 - strh r0, [r5, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - bne _080D5C4E - ldrh r0, [r5, 0x20] - adds r1, r2, r0 - strh r1, [r5, 0x20] - ldrh r0, [r5, 0x26] - ldrh r2, [r5, 0x22] - adds r0, r2 - strh r0, [r5, 0x22] - strh r3, [r5, 0x26] - strh r3, [r5, 0x24] - movs r0, 0x80 - lsls r0, 1 - strh r0, [r5, 0x2E] - strh r1, [r5, 0x30] - ldr r4, _080D5C54 @ =gBattleAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x22] - strh r0, [r5, 0x34] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_8077ABC - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl sub_8078BD4 - ldr r0, _080D5C58 @ =sub_80D5C5C - str r0, [r5, 0x1C] -_080D5C4E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D5C54: .4byte gBattleAnimBankTarget -_080D5C58: .4byte sub_80D5C5C - thumb_func_end sub_80D5B0C - - thumb_func_start sub_80D5C5C -sub_80D5C5C: @ 80D5C5C - push {r4,lr} - adds r4, r0, 0 - bl sub_8078B5C - lsls r0, 24 - cmp r0, 0 - bne _080D5CB4 - movs r1, 0x38 - ldrsh r0, [r4, r1] - movs r1, 0x10 - bl Sin - ldrh r1, [r4, 0x24] - adds r0, r1 - strh r0, [r4, 0x24] - ldrh r2, [r4, 0x38] - adds r0, r2, 0x4 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x38] - ldrh r0, [r4, 0x38] - lsls r2, 16 - asrs r2, 16 - cmp r2, 0 - beq _080D5C92 - cmp r2, 0xC4 - ble _080D5CBA -_080D5C92: - lsls r0, 16 - cmp r0, 0 - ble _080D5CBA - movs r1, 0x3C - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D5CBA - ldr r0, _080D5CB0 @ =gUnknown_0202F7D2 - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0x90 - bl PlaySE12WithPanning - b _080D5CBA - .align 2, 0 -_080D5CB0: .4byte gUnknown_0202F7D2 -_080D5CB4: - adds r0, r4, 0 - bl move_anim_8072740 -_080D5CBA: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D5C5C - - .align 2, 0 @ Don't pad with nop. diff --git a/data-de/contest_opponents.inc b/data-de/contest_opponents.inc index 4c891f644..1bdf7027e 100644 --- a/data-de/contest_opponents.inc +++ b/data-de/contest_opponents.inc @@ -1,5 +1,5 @@ .align 2 -gUnknown_083C9408:: @ 83C9408 +gContestOpponents:: @ 83C9408 .2byte 286 @ SPECIES_ID .string "FIFFI$", 11 @ POKE_NICKNAME .string "JIMMY$", 8 @ TRAINER_NAME diff --git a/data-de/event_scripts.s b/data-de/event_scripts.s index c7e05f008..4501d62b6 100644 --- a/data-de/event_scripts.s +++ b/data-de/event_scripts.s @@ -32,12 +32,12 @@ gSpecialVars:: .4byte gSpecialVar_0x8009 .4byte gSpecialVar_0x800A .4byte gSpecialVar_0x800B - .4byte gScriptFacing - .4byte gScriptResult - .4byte gScriptItemId - .4byte gScriptLastTalked - .4byte gScriptContestRank - .4byte gScriptContestCategory + .4byte gSpecialVar_Facing + .4byte gSpecialVar_Result + .4byte gSpecialVar_ItemId + .4byte gSpecialVar_LastTalked + .4byte gSpecialVar_ContestRank + .4byte gSpecialVar_ContestCategory .include "data/specials.inc" @@ -401,7 +401,7 @@ gUnknown_0815F36C:: @ 815F36C dofieldeffect 61 waitstate waitmessage - waitbutton + waitbuttonpress playse 5 goto EventScript_15F384 end @@ -462,7 +462,7 @@ gUnknown_0815F43A:: @ 815F43A dofieldeffect 61 waitstate waitmessage - waitbutton + waitbuttonpress playse 5 goto EventScript_15F452 end @@ -902,7 +902,7 @@ Std_2: faceplayer message 0x0 waitmessage - waitbutton + waitbuttonpress release return @@ -910,14 +910,14 @@ Std_3: lockall message 0x0 waitmessage - waitbutton + waitbuttonpress releaseall return Std_4: message 0x0 waitmessage - waitbutton + waitbuttonpress return Std_5: @@ -959,7 +959,7 @@ gUnknown_0819F818:: @ 819F818 goto EventScript_19F8F2 EventScript_19F83F: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F840:: @ 819F840 lock @@ -978,19 +978,19 @@ gUnknown_0819F840:: @ 819F840 EventScript_19F870: special ScrSpecial_ShowTrainerNonBattlingSpeech waitmessage - waitbutton + waitbuttonpress release end EventScript_19F877: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F878:: @ 819F878 applymovement LAST_TALKED, Movement_19F8F0 waitmovement 0 special PlayTrainerEncounterMusic - battlebegin - ontrainerbattleend + trainerbattlebegin + gotopostbattlescript gUnknown_0819F887:: @ 819F887 call EventScript_19F8E5 @@ -1001,14 +1001,14 @@ gUnknown_0819F887:: @ 819F887 special sub_8082524 special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton + waitbuttonpress special ScrSpecial_StartTrainerEyeRematch waitstate releaseall end EventScript_19F8AD: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F8AE:: @ 819F8AE specialvar RESULT, ScrSpecial_GetTrainerEyeRematchFlag @@ -1021,19 +1021,19 @@ gUnknown_0819F8AE:: @ 819F8AE special sub_8082524 special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton + waitbuttonpress special ScrSpecial_StartTrainerEyeRematch waitstate releaseall end EventScript_19F8DD: - ontrainerbattleend + gotopostbattlescript EventScript_19F8DE: special ScrSpecial_ShowTrainerNonBattlingSpeech waitmessage - waitbutton + waitbuttonpress release end @@ -1049,8 +1049,8 @@ Movement_19F8F0:: EventScript_19F8F2: special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton - battlebegin + waitbuttonpress + trainerbattlebegin specialvar RESULT, ScrSpecial_GetTrainerBattleMode compare RESULT, 0 goto_if_eq EventScript_19F934 @@ -1068,96 +1068,96 @@ EventScript_19F934: end EventScript_19F936: - ontrainerbattleendgoto + gotobeatenscript Std_6:: message 0x0 waitmessage - waitbutton + waitbuttonpress release return Event_ResetBerryTrees: @ 19F940 - plantberrytree 2, 7, 5 - plantberrytree 1, 3, 5 - plantberrytree 11, 7, 5 - plantberrytree 13, 3, 5 - plantberrytree 4, 7, 5 - plantberrytree 76, 1, 5 - plantberrytree 8, 1, 5 - plantberrytree 10, 6, 5 - plantberrytree 25, 20, 5 - plantberrytree 26, 2, 5 - plantberrytree 66, 2, 5 - plantberrytree 67, 20, 5 - plantberrytree 69, 22, 5 - plantberrytree 70, 22, 5 - plantberrytree 71, 22, 5 - plantberrytree 55, 17, 5 - plantberrytree 56, 17, 5 - plantberrytree 5, 1, 5 - plantberrytree 6, 6, 5 - plantberrytree 7, 1, 5 - plantberrytree 16, 18, 5 - plantberrytree 17, 18, 5 - plantberrytree 18, 18, 5 - plantberrytree 29, 19, 5 - plantberrytree 28, 19, 5 - plantberrytree 27, 19, 5 - plantberrytree 24, 4, 5 - plantberrytree 23, 3, 5 - plantberrytree 22, 3, 5 - plantberrytree 21, 4, 5 - plantberrytree 19, 16, 5 - plantberrytree 20, 16, 5 - plantberrytree 80, 7, 5 - plantberrytree 81, 7, 5 - plantberrytree 77, 8, 5 - plantberrytree 78, 8, 5 - plantberrytree 68, 8, 5 - plantberrytree 31, 10, 5 - plantberrytree 33, 10, 5 - plantberrytree 34, 21, 5 - plantberrytree 35, 21, 5 - plantberrytree 36, 21, 5 - plantberrytree 83, 24, 5 - plantberrytree 84, 24, 5 - plantberrytree 85, 10, 5 - plantberrytree 86, 6, 5 - plantberrytree 37, 5, 5 - plantberrytree 38, 5, 5 - plantberrytree 39, 5, 5 - plantberrytree 40, 3, 5 - plantberrytree 41, 3, 5 - plantberrytree 42, 3, 5 - plantberrytree 46, 19, 5 - plantberrytree 45, 20, 5 - plantberrytree 44, 18, 5 - plantberrytree 43, 16, 5 - plantberrytree 47, 8, 5 - plantberrytree 48, 5, 5 - plantberrytree 49, 4, 5 - plantberrytree 50, 2, 5 - plantberrytree 52, 18, 5 - plantberrytree 53, 18, 5 - plantberrytree 62, 6, 5 - plantberrytree 64, 6, 5 - plantberrytree 58, 21, 5 - plantberrytree 59, 21, 5 - plantberrytree 60, 25, 5 - plantberrytree 61, 25, 5 - plantberrytree 79, 23, 5 - plantberrytree 14, 23, 5 - plantberrytree 15, 21, 5 - plantberrytree 30, 21, 5 - plantberrytree 65, 25, 5 - plantberrytree 72, 25, 5 - plantberrytree 73, 23, 5 - plantberrytree 74, 23, 5 - plantberrytree 87, 3, 5 - plantberrytree 88, 10, 5 - plantberrytree 89, 4, 5 - plantberrytree 82, 36, 5 + setberrytree 2, 7, 5 + setberrytree 1, 3, 5 + setberrytree 11, 7, 5 + setberrytree 13, 3, 5 + setberrytree 4, 7, 5 + setberrytree 76, 1, 5 + setberrytree 8, 1, 5 + setberrytree 10, 6, 5 + setberrytree 25, 20, 5 + setberrytree 26, 2, 5 + setberrytree 66, 2, 5 + setberrytree 67, 20, 5 + setberrytree 69, 22, 5 + setberrytree 70, 22, 5 + setberrytree 71, 22, 5 + setberrytree 55, 17, 5 + setberrytree 56, 17, 5 + setberrytree 5, 1, 5 + setberrytree 6, 6, 5 + setberrytree 7, 1, 5 + setberrytree 16, 18, 5 + setberrytree 17, 18, 5 + setberrytree 18, 18, 5 + setberrytree 29, 19, 5 + setberrytree 28, 19, 5 + setberrytree 27, 19, 5 + setberrytree 24, 4, 5 + setberrytree 23, 3, 5 + setberrytree 22, 3, 5 + setberrytree 21, 4, 5 + setberrytree 19, 16, 5 + setberrytree 20, 16, 5 + setberrytree 80, 7, 5 + setberrytree 81, 7, 5 + setberrytree 77, 8, 5 + setberrytree 78, 8, 5 + setberrytree 68, 8, 5 + setberrytree 31, 10, 5 + setberrytree 33, 10, 5 + setberrytree 34, 21, 5 + setberrytree 35, 21, 5 + setberrytree 36, 21, 5 + setberrytree 83, 24, 5 + setberrytree 84, 24, 5 + setberrytree 85, 10, 5 + setberrytree 86, 6, 5 + setberrytree 37, 5, 5 + setberrytree 38, 5, 5 + setberrytree 39, 5, 5 + setberrytree 40, 3, 5 + setberrytree 41, 3, 5 + setberrytree 42, 3, 5 + setberrytree 46, 19, 5 + setberrytree 45, 20, 5 + setberrytree 44, 18, 5 + setberrytree 43, 16, 5 + setberrytree 47, 8, 5 + setberrytree 48, 5, 5 + setberrytree 49, 4, 5 + setberrytree 50, 2, 5 + setberrytree 52, 18, 5 + setberrytree 53, 18, 5 + setberrytree 62, 6, 5 + setberrytree 64, 6, 5 + setberrytree 58, 21, 5 + setberrytree 59, 21, 5 + setberrytree 60, 25, 5 + setberrytree 61, 25, 5 + setberrytree 79, 23, 5 + setberrytree 14, 23, 5 + setberrytree 15, 21, 5 + setberrytree 30, 21, 5 + setberrytree 65, 25, 5 + setberrytree 72, 25, 5 + setberrytree 73, 23, 5 + setberrytree 74, 23, 5 + setberrytree 87, 3, 5 + setberrytree 88, 10, 5 + setberrytree 89, 4, 5 + setberrytree 82, 36, 5 return gUnknown_0819FA81:: @ 819FA81 @@ -1505,13 +1505,13 @@ OldaleTown_PokemonCenter_1F_Movement_19FDF4:: @ 819FDF4 step_end Std_ObtainItem: @ 819FDF7 - additem 0x8000, 0x8001 + giveitem 0x8000, 0x8001 copyvar 0x8007, RESULT call Std_ObtainItem_ return Std_ObtainItem_: @ 819FE07 - getitemname 1, 0x8000 + bufferitemname 1, 0x8000 checkitemtype 0x8000 call GetItem_HandlePocket compare 0x8007, 0x1 @@ -1530,31 +1530,31 @@ GetItem_HandlePocket: end GetItem_HandlePocket_Items: - getstdstring 2, 0xE + bufferstdstring 2, 0xE compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_KeyItems: - getstdstring 2, 0xF + bufferstdstring 2, 0xF compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_PokeBalls: - getstdstring 2, 0x10 + bufferstdstring 2, 0x10 compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_TMsHMs: - getstdstring 2, 0x11 + bufferstdstring 2, 0x11 compare 0x8007, 1 call_if 1, PlayGetTMHMFanfare return GetItem_HandlePocket_Berries: - getstdstring 2, 0x12 + bufferstdstring 2, 0x12 compare 0x8007, 1 call_if 1, PlayGetItemFanfare return @@ -1580,13 +1580,13 @@ PlayGetTMHMFanfare: return Std_ObtainDecoration: @ 819FEDA - adddecor 0x8000 + givedecoration 0x8000 copyvar 0x8007, RESULT call Std_ObtainDecoration_ return Std_ObtainDecoration_: @ 819FEE8 - getdecorname 1, 0x8000 + bufferdecorationname 1, 0x8000 compare 0x8007, 1 call_if 1, Std_ObtainDecoration_Success compare 0x8007, 0 @@ -1610,9 +1610,9 @@ Std_FindItem: @ 819FF21 lock faceplayer waitse - additem 0x8000, 0x8001 + giveitem 0x8000, 0x8001 copyvar 0x8007, RESULT - getitemname 1, 0x8000 + bufferitemname 1, 0x8000 checkitemtype 0x8000 call GetItem_HandlePocket compare 0x8007, 1 @@ -1639,9 +1639,9 @@ Std_FindItem_Fail: @ 819FF65 HiddenItemScript:: @ 819FF7B lockall waitse - additem 0x8005, 1 + giveitem 0x8005, 1 copyvar 0x8007, RESULT - getitemname 0x1, 0x8005 + bufferitemname 0x1, 0x8005 checkitemtype 0x8005 call GetItem_HandlePocket compare 0x8007, 1 @@ -1683,7 +1683,7 @@ UnusedMixRecordsScript_Yes: @ 819FFFA UnusedMixRecordsScript_Done: @ 81A0000 message UnusedMixRecordsSeeYouAgainText waitmessage - waitbutton + waitbuttonpress release end @@ -1826,11 +1826,11 @@ Route109_EventScript_1A010C:: @ 81A010C return UseSurfScript:: @ 81A0117 - checkpokemove MOVE_SURF + checkpartymove MOVE_SURF compare RESULT, 6 goto_if_eq UseSurfScript_NoMon - getpartypokename 0, RESULT - setfieldeffect 0, RESULT + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT lockall msgbox UseSurfPromptText, 5 compare RESULT, 0 @@ -2214,7 +2214,7 @@ Route101_EventScript_1A03A5:: @ 81A03A5 copyvar 0x8004, 0x8009 special ShowPokedexRatingMessage waitmessage - waitbutton + waitbuttonpress return EverGrandeCity_ChampionsRoom_EventScript_1A03B0:: @ 81A03B0 @@ -2224,8 +2224,8 @@ Route101_EventScript_1A03B0:: @ 81A03B0 copyvar 0x8008, 0x8005 copyvar 0x8009, 0x8006 copyvar 0x800a, RESULT - getnumberstring 0, 0x8008 - getnumberstring 1, 0x8009 + buffernumberstring 0, 0x8008 + buffernumberstring 1, 0x8009 msgbox Route101_Text_1C44DC, 4 call Route101_EventScript_1A03A5 compare 0x800a, 0 @@ -2234,8 +2234,8 @@ Route101_EventScript_1A03B0:: @ 81A03B0 specialvar RESULT, ScriptGetPokedexInfo copyvar 0x8008, 0x8005 copyvar 0x8009, 0x8006 - getnumberstring 0, 0x8008 - getnumberstring 1, 0x8009 + buffernumberstring 0, 0x8008 + buffernumberstring 1, 0x8009 msgbox Route101_Text_1C4B05, 4 return @@ -2282,7 +2282,7 @@ EventScript_1A0457: @ unreferenced? delay 30 applymovement 255, SlateportCity_OceanicMuseum_2F_Movement_1A0841 waitmovement 0 - showobject 255, 0, 0 + showobjectat 255, MAP_PETALBURG_CITY delay 30 applymovement 255, Movement_1A047A waitmovement 0 @@ -2300,15 +2300,15 @@ SouthernIsland_Exterior_EventScript_1A047C:: @ 81A047C compare FACING, 3 call_if 1, BattleTower_Outside_EventScript_160B3A delay 30 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY call BattleTower_Outside_EventScript_1A040E return CaveOfOrigin_B4F_EventScript_1A04A0:: @ 81A04A0 lockall waitse - playpokecry SPECIES_GROUDON_OR_KYOGRE, 2 - waitpokecry + playmoncry SPECIES_GROUDON_OR_KYOGRE, 2 + waitmoncry setvar 0x4005, 1 releaseall end @@ -2362,9 +2362,9 @@ MagmaHideout_B1F_EventScript_1A04FD:: @ 81A04FD faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playpokecry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_ELECTRODE_1_HIDEOUT setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -2378,9 +2378,9 @@ MagmaHideout_B1F_EventScript_1A051B:: @ 81A051B faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playpokecry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_ELECTRODE_2_HIDEOUT setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -2461,9 +2461,9 @@ Route119_EventScript_1A05C3:: @ 81A05C3 applymovement LAST_TALKED, Route119_Movement_1A0662 waitmovement 0 waitse - playpokecry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_KECLEON, 30, ITEM_NONE compare 0x8004, 1 call_if 1, Route119_EventScript_1A0646 @@ -2552,12 +2552,12 @@ FallarborTown_House1_EventScript_1A067F:: @ 81A067F GraniteCave_StevensRoom_EventScript_1A067F:: @ 81A067F MtPyre_Summit_EventScript_1A067F:: @ 81A067F SlateportCity_OceanicMuseum_2F_EventScript_1A067F:: @ 81A067F - getitemname 0, 0x8004 + bufferitemname 0, 0x8004 playfanfare 372 message FallarborTown_House1_Text_1A1498 waitmessage waitfanfare - removeitem 0x8004, 1 + takeitem 0x8004, 1 return EverGrandeCity_DrakesRoom_EventScript_1A0693:: @ 81A0693 @@ -2567,18 +2567,18 @@ EverGrandeCity_SidneysRoom_EventScript_1A0693:: @ 81A0693 applymovement 255, EverGrandeCity_SidneysRoom_Movement_1A0853 waitmovement 0 playse 8 - setmaptile 6, 1, 836, 0 - setmaptile 6, 2, 837, 0 - setmaptile 0, 2, 734, 1 - setmaptile 1, 2, 733, 1 - setmaptile 2, 2, 734, 1 - setmaptile 3, 2, 733, 1 - setmaptile 4, 2, 734, 1 - setmaptile 8, 2, 733, 1 - setmaptile 9, 2, 734, 1 - setmaptile 10, 2, 733, 1 - setmaptile 11, 2, 734, 1 - setmaptile 12, 2, 733, 1 + setmetatile 6, 1, 836, 0 + setmetatile 6, 2, 837, 0 + setmetatile 0, 2, 734, 1 + setmetatile 1, 2, 733, 1 + setmetatile 2, 2, 734, 1 + setmetatile 3, 2, 733, 1 + setmetatile 4, 2, 734, 1 + setmetatile 8, 2, 733, 1 + setmetatile 9, 2, 734, 1 + setmetatile 10, 2, 733, 1 + setmetatile 11, 2, 734, 1 + setmetatile 12, 2, 733, 1 special DrawWholeMapView return @@ -2589,12 +2589,12 @@ EverGrandeCity_SidneysRoom_EventScript_1A0710:: @ 81A0710 applymovement 255, EverGrandeCity_SidneysRoom_Movement_1A0847 waitmovement 0 playse 52 - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 special DrawWholeMapView return @@ -2602,36 +2602,36 @@ EverGrandeCity_DrakesRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_GlaciasRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_PhoebesRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_SidneysRoom_EventScript_1A0757:: @ 81A0757 - setmaptile 6, 1, 836, 0 - setmaptile 6, 2, 837, 0 - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 - setmaptile 0, 2, 734, 1 - setmaptile 1, 2, 733, 1 - setmaptile 2, 2, 734, 1 - setmaptile 3, 2, 733, 1 - setmaptile 4, 2, 734, 1 - setmaptile 8, 2, 733, 1 - setmaptile 9, 2, 734, 1 - setmaptile 10, 2, 733, 1 - setmaptile 11, 2, 734, 1 - setmaptile 12, 2, 733, 1 + setmetatile 6, 1, 836, 0 + setmetatile 6, 2, 837, 0 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 + setmetatile 0, 2, 734, 1 + setmetatile 1, 2, 733, 1 + setmetatile 2, 2, 734, 1 + setmetatile 3, 2, 733, 1 + setmetatile 4, 2, 734, 1 + setmetatile 8, 2, 733, 1 + setmetatile 9, 2, 734, 1 + setmetatile 10, 2, 733, 1 + setmetatile 11, 2, 734, 1 + setmetatile 12, 2, 733, 1 return EverGrandeCity_DrakesRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_GlaciasRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_PhoebesRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_SidneysRoom_EventScript_1A07FA:: @ 81A07FA - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 return SlateportCity_Movement_1A0831:: @ 81A0831 @@ -3281,7 +3281,7 @@ gUnknown_081A14B8:: @ 81A14B8 EventScript_1A14CA:: message UnknownString_81A1141 waitmessage - waitbutton + waitbuttonpress special sub_8081924 waitstate fadescreen 1 @@ -3630,9 +3630,9 @@ gUnknown_081A2C51:: @ 81A2C51 special sub_80BB63C compare RESULT, 1 goto_if_eq EventScript_1A2E45 - checkpokemove MOVE_SECRET_POWER - setfieldeffect 0, RESULT - getmovename 1, MOVE_SECRET_POWER + checkpartymove MOVE_SECRET_POWER + setfieldeffectargument 0, RESULT + buffermovename 1, MOVE_SECRET_POWER compare 0x8007, 1 goto_if_eq EventScript_1A2CB0 compare 0x8007, 2 @@ -3651,7 +3651,7 @@ EventScript_1A2CB0: lockall compare RESULT, 6 goto_if_eq EventScript_1A2CF1 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_8198F34, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3682,7 +3682,7 @@ EventScript_1A2D08: lockall compare RESULT, 6 goto_if_eq EventScript_1A2D49 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_81A197B, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3713,7 +3713,7 @@ EventScript_1A2D60: lockall compare RESULT, 6 goto_if_eq EventScript_1A2DA1 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_81A1A4B, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3799,10 +3799,10 @@ EventScript_1A2E38: end EventScript_1A2E45: - checkpokemove MOVE_SECRET_POWER + checkpartymove MOVE_SECRET_POWER compare RESULT, 6 goto_if_eq EventScript_1A2EF7 - setfieldeffect 0, RESULT + setfieldeffectargument 0, RESULT setorcopyvar 0x8004, RESULT lockall special GetSecretBaseNearbyMapName @@ -3819,8 +3819,8 @@ EventScript_1A2E45: msgbox UnknownString_81A3CC9, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A - getpartypokename 0, 0x8004 - getmovename 1, MOVE_SECRET_POWER + bufferpartymonnick 0, 0x8004 + buffermovename 1, MOVE_SECRET_POWER msgbox UsedCutRockSmashText, 4 closemessage closemessage @@ -4805,8 +4805,8 @@ BattleTower_Lobby_EventScript_1AE30F:: @ 81AE30F .include "data/text/magma_summit.inc" gUnknown_081B694A:: @ 81B694A - animdarklevel 1 - setdarklevel 1 + animateflash 1 + setflashradius 1 end .include "data/scripts/players_house.inc" @@ -4960,7 +4960,7 @@ gUnknown_081C6C02:: @ 81C6C02 @ 81C6C1D lockall braillemessage Underwater_SealedChamber_Braille_1C533D - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data-de/field_move_scripts.inc b/data-de/field_move_scripts.inc index 559eaf0ab..2b86dc4dc 100644 --- a/data-de/field_move_scripts.inc +++ b/data-de/field_move_scripts.inc @@ -2,12 +2,12 @@ S_CuttableTree:: @ 81B0DCC lockall checkflag FLAG_BADGE01_GET goto_if 0, CannotUseCut - checkpokemove MOVE_CUT + checkpartymove MOVE_CUT compare RESULT, 6 goto_if_eq CannotUseCut - setfieldeffect 0, RESULT - getpartypokename 0, RESULT - getmovename 1, MOVE_CUT + setfieldeffectargument 0, RESULT + bufferpartymonnick 0, RESULT + buffermovename 1, MOVE_CUT msgbox UseCutPromptText, 5 compare RESULT, 0 goto_if_eq Cut_ChoseNo @@ -63,12 +63,12 @@ S_BreakableRock:: @ 81B0EB7 lockall checkflag FLAG_BADGE03_GET goto_if 0, CannotUseRockSmash - checkpokemove MOVE_ROCK_SMASH + checkpartymove MOVE_ROCK_SMASH compare RESULT, 6 goto_if_eq CannotUseRockSmash - setfieldeffect 0, RESULT - getpartypokename 0, RESULT - getmovename 1, MOVE_ROCK_SMASH + setfieldeffectargument 0, RESULT + bufferpartymonnick 0, RESULT + buffermovename 1, MOVE_ROCK_SMASH msgbox UseRockSmashPromptText, 5 compare RESULT, 0 goto_if_eq RockSmash_ChoseNo @@ -132,10 +132,10 @@ S_PushableBoulder:: @ 81B0FCB goto_if 0, CannotUseStrength checkflag FLAG_SYS_USE_STRENGTH goto_if_eq AlreadyUsedStrength - checkpokemove 70 + checkpartymove 70 compare RESULT, 6 goto_if_eq CannotUseStrength - setfieldeffect 0, RESULT + setfieldeffectargument 0, RESULT msgbox UseStrengthPromptText, 5 compare RESULT, 0 goto_if_eq Strength_ChoseNo @@ -193,11 +193,11 @@ AlreadyUsedStrengthText: @ 81B1127 S_UseWaterfall:: @ 81B115A lockall - checkpokemove MOVE_WATERFALL + checkpartymove MOVE_WATERFALL compare RESULT, 6 goto_if_eq Waterfall_NoMonKnows - getpartypokename 0, RESULT - setfieldeffect 0, RESULT + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT msgbox UseWaterfallPromptText, 5 compare RESULT, 0 goto_if_eq Waterfall_Done @@ -226,12 +226,12 @@ UsedWaterfallText: @ 81B120D UseDiveScript:: @ 81B1220 lockall - checkpokemove MOVE_DIVE + checkpartymove MOVE_DIVE compare RESULT, 6 goto_if_eq CannotUseDive - getpartypokename 0, RESULT - setfieldeffect 0, RESULT - setfieldeffect 1, 1 + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT + setfieldeffectargument 1, 1 msgbox UseDivePromptText, 5 compare RESULT, 0 goto_if_eq Dive_Done @@ -249,12 +249,12 @@ Dive_Done: @ 81B1267 S_UseDiveUnderwater:: @ 81B1269 lockall - checkpokemove MOVE_DIVE + checkpartymove MOVE_DIVE compare RESULT, 6 goto_if_eq UnderwaterCannotUseDive - getpartypokename 0, RESULT - setfieldeffect 0, RESULT - setfieldeffect 1, 1 + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT + setfieldeffectargument 1, 1 msgbox UnderwaterUseDivePromptText, 5 compare RESULT, 0 goto_if_eq UnderwaterDive_Done diff --git a/data-de/text/contest_strings.inc b/data-de/text/contest_strings.inc index 19cfe330f..02264880e 100644 --- a/data-de/text/contest_strings.inc +++ b/data-de/text/contest_strings.inc @@ -260,11 +260,11 @@ gUnknown_083CAF70:: @ 83CAF70 .4byte ContestString_Smart .4byte ContestString_Tough -gUnknown_083CAF84:: @ 83CAF84 +gText_Contest_WhichMoveWillBePlayed:: @ 83CAF84 .string "Ausdruck {NAME_END}! Welche\n" .string "Attacke wird gezeigt?$" -gUnknown_083CAFAE:: @ 83CAFAE +gText_Contest_ButItCantParticipate:: @ 83CAFAE .string "Ausdruck {NAME_END}! Aber es\n" .string "kann nicht teilnehmen!$" @@ -361,7 +361,7 @@ ContestString_StandOutDidnt: .string "keinen Ausdruck zeigen.{PAUSE_UNTIL_PRESS}$" .align 2 -gUnknown_083CB2F0:: @ 83CB2F0 +gContestStandOutStrings:: @ 83CB2F0 .4byte ContestString_StandOutNone .4byte ContestString_StandOutNotMuch .4byte ContestString_StandOutLittle @@ -596,22 +596,22 @@ ContestString_ScrambleOrder: .string "durcheinander.{PAUSE 60}$" gUnknown_083CBD52:: @ 83CBD52 -ContestString_JudgeExpectantly2: +ContestString_JudgeExpectantly2:: .string "Der JUROR betrachtet\n" .string "{STR_VAR_1} interessiert.{PAUSE 60}$" gUnknown_083CBD79:: @ 83CBD79 -ContestString_WentOverWell: +ContestString_WentOverWell:: .string "Die Combo der Ausdrücke\n" .string "kam gut an.{PAUSE 60}$" gUnknown_083CBD9D:: @ 83CBD9D -ContestString_WentOverVeryWell: +ContestString_WentOverVeryWell:: .string "Die Combo der Ausdrücke\n" .string "kam sehr gut an.{PAUSE 60}$" gUnknown_083CBDC6:: @ 83CBDC6 -ContestString_AppealComboExcellently: +ContestString_AppealComboExcellently:: .string "Die Combo der Ausdrücke\n" .string "kam exzellent an.{PAUSE 60}$" ContestString_AvertGaze: @@ -670,40 +670,40 @@ ContestString_Unaffected: .string "unbeeindruckt.{PAUSE 60}$" gUnknown_083CC075:: @ 83CC075 -ContestString_DissapointedRepeat: +ContestString_DissapointedRepeat:: .string "{STR_VAR_1} enttäuscht\n" .string "durch Wiederholung.{PAUSE 60}$" gUnknown_083CC0A0:: @ 83CC0A0 -ContestString_WentOverGreat: +ContestString_WentOverGreat:: .string "Die {STR_VAR_3} von\n" .string "{STR_VAR_1} war sehr gut.{PAUSE 60}$" gUnknown_083CC0BC:: @ 83CC0BC -ContestString_DidntGoWell: +ContestString_DidntGoWell:: .string "Die {STR_VAR_3} von\n" .string "{STR_VAR_1} war nicht gut.{PAUSE 60}$" gUnknown_083CC0E3:: @ 83CC0E3 -ContestString_GotCrowdGoing: +ContestString_GotCrowdGoing:: .string "{STR_VAR_1} begeistert\n" .string "Publikum mit {STR_VAR_3}.{PAUSE 60}$" gUnknown_083CC103:: @ 83CC103 -ContestString_CantAppealNextTurn: +ContestString_CantAppealNextTurn:: .string "{STR_VAR_1} setzt in der \n" .string "folgenden Runde aus.{PAUSE 60}$" -ContestString_AttractedAttention: +ContestString_AttractedAttention:: .string "Die Aufmerksamkeit des\n" .string "Publikums liegt auf ihm.{PAUSE 60}$" gUnknown_083CC14A:: @ 83CC14A -ContestString_CrowdWatches: +ContestString_CrowdWatches:: .string "Das Publikum beobachtet\n" .string "weiterhin {STR_VAR_3}.{PAUSE 60}$" gUnknown_083CC16E:: @ 83CC16E -ContestString_Ignored2: +ContestString_Ignored2:: .string "{STR_VAR_2} von\n" .string "{STR_VAR_1} ist ignoriert.{PAUSE 60}$" @@ -772,19 +772,19 @@ gUnknown_083CC188:: @ 83CC188 .4byte ContestString_Unaffected .4byte ContestString_AttractedAttention -gUnknown_083CC280:: @ 83CC280 +gText_Contest_Shyness:: @ 83CC280 .string "Scheu$" -gUnknown_083CC288:: @ 83CC288 +gText_Contest_Anxiety:: @ 83CC288 .string "Besorgnis$" -gUnknown_083CC290:: @ 83CC290 +gText_Contest_Laziness:: @ 83CC290 .string "Faulheit$" -gUnknown_083CC299:: @ 83CC299 +gText_Contest_Hesitancy:: @ 83CC299 .string "Zögern$" -gUnknown_083CC2A3:: @ 83CC2A3 +gText_Contest_Fear:: @ 83CC2A3 .string "Furcht$" ContestString_Coolness: @@ -799,7 +799,7 @@ ContestString_Toughness: .string "Stärke$" .align 2 -gUnknown_083CC2D8:: @ 83CC2D8 +gContestCategoryStrings:: @ 83CC2D8 .4byte ContestString_Coolness .4byte ContestString_Beauty2 .4byte ContestString_Cuteness diff --git a/data/battle_anim_80CA710.s b/data/battle_anim_80CA710.s index 24881ab7c..ba5d9f533 100644 --- a/data/battle_anim_80CA710.s +++ b/data/battle_anim_80CA710.s @@ -2091,7 +2091,7 @@ gSpriteAnimTable_83D912C:: @ 83D912C .align 2 gSpriteTemplate_83D9130:: @ 83D9130 - spr_template 10115, 10115, gOamData_837DF74, gSpriteAnimTable_83D912C, NULL, gDummySpriteAffineAnimTable, sub_80D3184 + spr_template 10115, 10115, gOamData_837DF74, gSpriteAnimTable_83D912C, NULL, gDummySpriteAffineAnimTable, SetAnimRaindropCallback .align 2 gSpriteAffineAnim_83D9148:: @ 83D9148 diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index de3d354ce..e0d11637d 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -1416,11 +1416,11 @@ Move_FURY_CUTTER: @ 81C914A monbg 1 setalpha 12, 8 panse_19 SE_W013, 63 - createtask sub_80D30AC, 2 + createtask UpdateFuryCutterAnimDirection, 2 jumpvareq 7, 0, _81C91A7 jump _81C91B9 _81C916A: - createtask update_fury_cutter_counter_copy, 2 + createtask UpdateFuryCutterAnimCount, 2 jumpvareq 7, 1, _81C918E jumpvareq 7, 2, _81C91CB jumpvareq 7, 3, _81C91E5 @@ -5271,8 +5271,8 @@ Move_RAIN_DANCE: @ 81CE997 panse_19 SE_W240, 192 createtask sub_80E2A38, 10, 1921, 2, 0, 4, 0 wait - createtask sub_80D30F0, 2, 0, 3, 120 - createtask sub_80D30F0, 2, 0, 3, 120 + createtask CreateAnimRaindrops, 2, 0, 3, 120 + createtask CreateAnimRaindrops, 2, 0, 3, 120 pause 120 pause 30 wait @@ -10497,8 +10497,8 @@ General_Rain: @ 81D67BB panse_19 SE_W240, 192 createtask sub_80E2A38, 10, 1921, 2, 0, 4, 0 wait - createtask sub_80D30F0, 2, 0, 3, 60 - createtask sub_80D30F0, 2, 0, 3, 60 + createtask CreateAnimRaindrops, 2, 0, 3, 60 + createtask CreateAnimRaindrops, 2, 0, 3, 60 pause 50 wait createtask sub_80E2A38, 10, 1921, 2, 4, 0, 0 diff --git a/data/contest_opponents.inc b/data/contest_opponents.inc index 2c502285e..8c9c76f1b 100644 --- a/data/contest_opponents.inc +++ b/data/contest_opponents.inc @@ -1,5 +1,5 @@ .align 2 -gUnknown_083C9408:: @ 83C9408 +gContestOpponents:: @ 83C9408 .2byte 286 @ SPECIES_ID .string "POOCHY$", 11 @ POKE_NICKNAME .string "JIMMY$", 8 @ TRAINER_NAME diff --git a/data/event_scripts.s b/data/event_scripts.s index bbeac074c..76b080a5b 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -32,12 +32,12 @@ gSpecialVars:: .4byte gSpecialVar_0x8009 .4byte gSpecialVar_0x800A .4byte gSpecialVar_0x800B - .4byte gScriptFacing - .4byte gScriptResult - .4byte gScriptItemId - .4byte gScriptLastTalked - .4byte gScriptContestRank - .4byte gScriptContestCategory + .4byte gSpecialVar_Facing + .4byte gSpecialVar_Result + .4byte gSpecialVar_ItemId + .4byte gSpecialVar_LastTalked + .4byte gSpecialVar_ContestRank + .4byte gSpecialVar_ContestCategory .include "data/specials.inc" @@ -401,7 +401,7 @@ gUnknown_0815F36C:: @ 815F36C dofieldeffect 61 waitstate waitmessage - waitbutton + waitbuttonpress playse 5 goto EventScript_15F384 end @@ -462,7 +462,7 @@ gUnknown_0815F43A:: @ 815F43A dofieldeffect 61 waitstate waitmessage - waitbutton + waitbuttonpress playse 5 goto EventScript_15F452 end @@ -901,7 +901,7 @@ Std_2: faceplayer message 0x0 waitmessage - waitbutton + waitbuttonpress release return @@ -909,14 +909,14 @@ Std_3: lockall message 0x0 waitmessage - waitbutton + waitbuttonpress releaseall return Std_4: message 0x0 waitmessage - waitbutton + waitbuttonpress return Std_5: @@ -953,7 +953,7 @@ gUnknown_0819F818:: @ 819F818 goto EventScript_19F8F2 EventScript_19F83F: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F840:: @ 819F840 lock @@ -972,19 +972,19 @@ gUnknown_0819F840:: @ 819F840 EventScript_19F870: special ScrSpecial_ShowTrainerNonBattlingSpeech waitmessage - waitbutton + waitbuttonpress release end EventScript_19F877: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F878:: @ 819F878 applymovement LAST_TALKED, Movement_19F8F0 waitmovement 0 special PlayTrainerEncounterMusic - battlebegin - ontrainerbattleend + trainerbattlebegin + gotopostbattlescript gUnknown_0819F887:: @ 819F887 call EventScript_19F8E5 @@ -995,14 +995,14 @@ gUnknown_0819F887:: @ 819F887 special sub_8082524 special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton + waitbuttonpress special ScrSpecial_StartTrainerEyeRematch waitstate releaseall end EventScript_19F8AD: - ontrainerbattleend + gotopostbattlescript gUnknown_0819F8AE:: @ 819F8AE specialvar RESULT, ScrSpecial_GetTrainerEyeRematchFlag @@ -1015,19 +1015,19 @@ gUnknown_0819F8AE:: @ 819F8AE special sub_8082524 special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton + waitbuttonpress special ScrSpecial_StartTrainerEyeRematch waitstate releaseall end EventScript_19F8DD: - ontrainerbattleend + gotopostbattlescript EventScript_19F8DE: special ScrSpecial_ShowTrainerNonBattlingSpeech waitmessage - waitbutton + waitbuttonpress release end @@ -1043,8 +1043,8 @@ Movement_19F8F0:: EventScript_19F8F2: special ScrSpecial_ShowTrainerIntroSpeech waitmessage - waitbutton - battlebegin + waitbuttonpress + trainerbattlebegin specialvar RESULT, ScrSpecial_GetTrainerBattleMode compare RESULT, 0 goto_if_eq EventScript_19F934 @@ -1062,96 +1062,96 @@ EventScript_19F934: end EventScript_19F936: - ontrainerbattleendgoto + gotobeatenscript Std_6:: message 0x0 waitmessage - waitbutton + waitbuttonpress release return Event_ResetBerryTrees: @ 19F940 - plantberrytree 2, 7, 5 - plantberrytree 1, 3, 5 - plantberrytree 11, 7, 5 - plantberrytree 13, 3, 5 - plantberrytree 4, 7, 5 - plantberrytree 76, 1, 5 - plantberrytree 8, 1, 5 - plantberrytree 10, 6, 5 - plantberrytree 25, 20, 5 - plantberrytree 26, 2, 5 - plantberrytree 66, 2, 5 - plantberrytree 67, 20, 5 - plantberrytree 69, 22, 5 - plantberrytree 70, 22, 5 - plantberrytree 71, 22, 5 - plantberrytree 55, 17, 5 - plantberrytree 56, 17, 5 - plantberrytree 5, 1, 5 - plantberrytree 6, 6, 5 - plantberrytree 7, 1, 5 - plantberrytree 16, 18, 5 - plantberrytree 17, 18, 5 - plantberrytree 18, 18, 5 - plantberrytree 29, 19, 5 - plantberrytree 28, 19, 5 - plantberrytree 27, 19, 5 - plantberrytree 24, 4, 5 - plantberrytree 23, 3, 5 - plantberrytree 22, 3, 5 - plantberrytree 21, 4, 5 - plantberrytree 19, 16, 5 - plantberrytree 20, 16, 5 - plantberrytree 80, 7, 5 - plantberrytree 81, 7, 5 - plantberrytree 77, 8, 5 - plantberrytree 78, 8, 5 - plantberrytree 68, 8, 5 - plantberrytree 31, 10, 5 - plantberrytree 33, 10, 5 - plantberrytree 34, 21, 5 - plantberrytree 35, 21, 5 - plantberrytree 36, 21, 5 - plantberrytree 83, 24, 5 - plantberrytree 84, 24, 5 - plantberrytree 85, 10, 5 - plantberrytree 86, 6, 5 - plantberrytree 37, 5, 5 - plantberrytree 38, 5, 5 - plantberrytree 39, 5, 5 - plantberrytree 40, 3, 5 - plantberrytree 41, 3, 5 - plantberrytree 42, 3, 5 - plantberrytree 46, 19, 5 - plantberrytree 45, 20, 5 - plantberrytree 44, 18, 5 - plantberrytree 43, 16, 5 - plantberrytree 47, 8, 5 - plantberrytree 48, 5, 5 - plantberrytree 49, 4, 5 - plantberrytree 50, 2, 5 - plantberrytree 52, 18, 5 - plantberrytree 53, 18, 5 - plantberrytree 62, 6, 5 - plantberrytree 64, 6, 5 - plantberrytree 58, 21, 5 - plantberrytree 59, 21, 5 - plantberrytree 60, 25, 5 - plantberrytree 61, 25, 5 - plantberrytree 79, 23, 5 - plantberrytree 14, 23, 5 - plantberrytree 15, 21, 5 - plantberrytree 30, 21, 5 - plantberrytree 65, 25, 5 - plantberrytree 72, 25, 5 - plantberrytree 73, 23, 5 - plantberrytree 74, 23, 5 - plantberrytree 87, 3, 5 - plantberrytree 88, 10, 5 - plantberrytree 89, 4, 5 - plantberrytree 82, 36, 5 + setberrytree 2, 7, 5 + setberrytree 1, 3, 5 + setberrytree 11, 7, 5 + setberrytree 13, 3, 5 + setberrytree 4, 7, 5 + setberrytree 76, 1, 5 + setberrytree 8, 1, 5 + setberrytree 10, 6, 5 + setberrytree 25, 20, 5 + setberrytree 26, 2, 5 + setberrytree 66, 2, 5 + setberrytree 67, 20, 5 + setberrytree 69, 22, 5 + setberrytree 70, 22, 5 + setberrytree 71, 22, 5 + setberrytree 55, 17, 5 + setberrytree 56, 17, 5 + setberrytree 5, 1, 5 + setberrytree 6, 6, 5 + setberrytree 7, 1, 5 + setberrytree 16, 18, 5 + setberrytree 17, 18, 5 + setberrytree 18, 18, 5 + setberrytree 29, 19, 5 + setberrytree 28, 19, 5 + setberrytree 27, 19, 5 + setberrytree 24, 4, 5 + setberrytree 23, 3, 5 + setberrytree 22, 3, 5 + setberrytree 21, 4, 5 + setberrytree 19, 16, 5 + setberrytree 20, 16, 5 + setberrytree 80, 7, 5 + setberrytree 81, 7, 5 + setberrytree 77, 8, 5 + setberrytree 78, 8, 5 + setberrytree 68, 8, 5 + setberrytree 31, 10, 5 + setberrytree 33, 10, 5 + setberrytree 34, 21, 5 + setberrytree 35, 21, 5 + setberrytree 36, 21, 5 + setberrytree 83, 24, 5 + setberrytree 84, 24, 5 + setberrytree 85, 10, 5 + setberrytree 86, 6, 5 + setberrytree 37, 5, 5 + setberrytree 38, 5, 5 + setberrytree 39, 5, 5 + setberrytree 40, 3, 5 + setberrytree 41, 3, 5 + setberrytree 42, 3, 5 + setberrytree 46, 19, 5 + setberrytree 45, 20, 5 + setberrytree 44, 18, 5 + setberrytree 43, 16, 5 + setberrytree 47, 8, 5 + setberrytree 48, 5, 5 + setberrytree 49, 4, 5 + setberrytree 50, 2, 5 + setberrytree 52, 18, 5 + setberrytree 53, 18, 5 + setberrytree 62, 6, 5 + setberrytree 64, 6, 5 + setberrytree 58, 21, 5 + setberrytree 59, 21, 5 + setberrytree 60, 25, 5 + setberrytree 61, 25, 5 + setberrytree 79, 23, 5 + setberrytree 14, 23, 5 + setberrytree 15, 21, 5 + setberrytree 30, 21, 5 + setberrytree 65, 25, 5 + setberrytree 72, 25, 5 + setberrytree 73, 23, 5 + setberrytree 74, 23, 5 + setberrytree 87, 3, 5 + setberrytree 88, 10, 5 + setberrytree 89, 4, 5 + setberrytree 82, 36, 5 return gUnknown_0819FA81:: @ 819FA81 @@ -1499,13 +1499,13 @@ OldaleTown_PokemonCenter_1F_Movement_19FDF4:: @ 819FDF4 step_end Std_ObtainItem: @ 819FDF7 - additem 0x8000, 0x8001 + giveitem 0x8000, 0x8001 copyvar 0x8007, RESULT call Std_ObtainItem_ return Std_ObtainItem_: @ 819FE07 - getitemname 1, 0x8000 + bufferitemname 1, 0x8000 checkitemtype 0x8000 call GetItem_HandlePocket compare 0x8007, 0x1 @@ -1524,31 +1524,31 @@ GetItem_HandlePocket: end GetItem_HandlePocket_Items: - getstdstring 2, 0xE + bufferstdstring 2, 0xE compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_KeyItems: - getstdstring 2, 0xF + bufferstdstring 2, 0xF compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_PokeBalls: - getstdstring 2, 0x10 + bufferstdstring 2, 0x10 compare 0x8007, 1 call_if 1, PlayGetItemFanfare return GetItem_HandlePocket_TMsHMs: - getstdstring 2, 0x11 + bufferstdstring 2, 0x11 compare 0x8007, 1 call_if 1, PlayGetTMHMFanfare return GetItem_HandlePocket_Berries: - getstdstring 2, 0x12 + bufferstdstring 2, 0x12 compare 0x8007, 1 call_if 1, PlayGetItemFanfare return @@ -1574,13 +1574,13 @@ PlayGetTMHMFanfare: return Std_ObtainDecoration: @ 819FEDA - adddecor 0x8000 + givedecoration 0x8000 copyvar 0x8007, RESULT call Std_ObtainDecoration_ return Std_ObtainDecoration_: @ 819FEE8 - getdecorname 1, 0x8000 + bufferdecorationname 1, 0x8000 compare 0x8007, 1 call_if 1, Std_ObtainDecoration_Success compare 0x8007, 0 @@ -1604,9 +1604,9 @@ Std_FindItem: @ 819FF21 lock faceplayer waitse - additem 0x8000, 0x8001 + giveitem 0x8000, 0x8001 copyvar 0x8007, RESULT - getitemname 1, 0x8000 + bufferitemname 1, 0x8000 checkitemtype 0x8000 call GetItem_HandlePocket compare 0x8007, 1 @@ -1633,9 +1633,9 @@ Std_FindItem_Fail: @ 819FF65 HiddenItemScript:: @ 819FF7B lockall waitse - additem 0x8005, 1 + giveitem 0x8005, 1 copyvar 0x8007, RESULT - getitemname 0x1, 0x8005 + bufferitemname 0x1, 0x8005 checkitemtype 0x8005 call GetItem_HandlePocket compare 0x8007, 1 @@ -1677,7 +1677,7 @@ UnusedMixRecordsScript_Yes: @ 819FFFA UnusedMixRecordsScript_Done: @ 81A0000 message UnusedMixRecordsSeeYouAgainText waitmessage - waitbutton + waitbuttonpress release end @@ -1820,11 +1820,11 @@ Route109_EventScript_1A010C:: @ 81A010C return UseSurfScript:: @ 81A0117 - checkpokemove MOVE_SURF + checkpartymove MOVE_SURF compare RESULT, 6 goto_if_eq UseSurfScript_NoMon - getpartypokename 0, RESULT - setfieldeffect 0, RESULT + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT lockall msgbox UseSurfPromptText, 5 compare RESULT, 0 @@ -2208,7 +2208,7 @@ Route101_EventScript_1A03A5:: @ 81A03A5 copyvar 0x8004, 0x8009 special ShowPokedexRatingMessage waitmessage - waitbutton + waitbuttonpress return EverGrandeCity_ChampionsRoom_EventScript_1A03B0:: @ 81A03B0 @@ -2218,8 +2218,8 @@ Route101_EventScript_1A03B0:: @ 81A03B0 copyvar 0x8008, 0x8005 copyvar 0x8009, 0x8006 copyvar 0x800a, RESULT - getnumberstring 0, 0x8008 - getnumberstring 1, 0x8009 + buffernumberstring 0, 0x8008 + buffernumberstring 1, 0x8009 msgbox Route101_Text_1C44DC, 4 call Route101_EventScript_1A03A5 compare 0x800a, 0 @@ -2228,8 +2228,8 @@ Route101_EventScript_1A03B0:: @ 81A03B0 specialvar RESULT, ScriptGetPokedexInfo copyvar 0x8008, 0x8005 copyvar 0x8009, 0x8006 - getnumberstring 0, 0x8008 - getnumberstring 1, 0x8009 + buffernumberstring 0, 0x8008 + buffernumberstring 1, 0x8009 msgbox Route101_Text_1C4B05, 4 return @@ -2276,7 +2276,7 @@ EventScript_1A0457: @ unreferenced? delay 30 applymovement 255, SlateportCity_OceanicMuseum_2F_Movement_1A0841 waitmovement 0 - showobject 255, 0, 0 + showobjectat 255, MAP_PETALBURG_CITY delay 30 applymovement 255, Movement_1A047A waitmovement 0 @@ -2294,15 +2294,15 @@ SouthernIsland_Exterior_EventScript_1A047C:: @ 81A047C compare FACING, 3 call_if 1, BattleTower_Outside_EventScript_160B3A delay 30 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY call BattleTower_Outside_EventScript_1A040E return CaveOfOrigin_B4F_EventScript_1A04A0:: @ 81A04A0 lockall waitse - playpokecry SPECIES_GROUDON_OR_KYOGRE, 2 - waitpokecry + playmoncry SPECIES_GROUDON_OR_KYOGRE, 2 + waitmoncry setvar 0x4005, 1 releaseall end @@ -2356,9 +2356,9 @@ MagmaHideout_B1F_EventScript_1A04FD:: @ 81A04FD faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playpokecry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_ELECTRODE_1_HIDEOUT setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -2372,9 +2372,9 @@ MagmaHideout_B1F_EventScript_1A051B:: @ 81A051B faceplayer setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE waitse - playpokecry SPECIES_ELECTRODE, 2 + playmoncry SPECIES_ELECTRODE, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_ELECTRODE_2_HIDEOUT setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -2455,9 +2455,9 @@ Route119_EventScript_1A05C3:: @ 81A05C3 applymovement LAST_TALKED, Route119_Movement_1A0662 waitmovement 0 waitse - playpokecry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_KECLEON, 30, ITEM_NONE compare 0x8004, 1 call_if 1, Route119_EventScript_1A0646 @@ -2546,12 +2546,12 @@ FallarborTown_House1_EventScript_1A067F:: @ 81A067F GraniteCave_StevensRoom_EventScript_1A067F:: @ 81A067F MtPyre_Summit_EventScript_1A067F:: @ 81A067F SlateportCity_OceanicMuseum_2F_EventScript_1A067F:: @ 81A067F - getitemname 0, 0x8004 + bufferitemname 0, 0x8004 playfanfare 372 message FallarborTown_House1_Text_1A1498 waitmessage waitfanfare - removeitem 0x8004, 1 + takeitem 0x8004, 1 return EverGrandeCity_DrakesRoom_EventScript_1A0693:: @ 81A0693 @@ -2561,18 +2561,18 @@ EverGrandeCity_SidneysRoom_EventScript_1A0693:: @ 81A0693 applymovement 255, EverGrandeCity_SidneysRoom_Movement_1A0853 waitmovement 0 playse 8 - setmaptile 6, 1, 836, 0 - setmaptile 6, 2, 837, 0 - setmaptile 0, 2, 734, 1 - setmaptile 1, 2, 733, 1 - setmaptile 2, 2, 734, 1 - setmaptile 3, 2, 733, 1 - setmaptile 4, 2, 734, 1 - setmaptile 8, 2, 733, 1 - setmaptile 9, 2, 734, 1 - setmaptile 10, 2, 733, 1 - setmaptile 11, 2, 734, 1 - setmaptile 12, 2, 733, 1 + setmetatile 6, 1, 836, 0 + setmetatile 6, 2, 837, 0 + setmetatile 0, 2, 734, 1 + setmetatile 1, 2, 733, 1 + setmetatile 2, 2, 734, 1 + setmetatile 3, 2, 733, 1 + setmetatile 4, 2, 734, 1 + setmetatile 8, 2, 733, 1 + setmetatile 9, 2, 734, 1 + setmetatile 10, 2, 733, 1 + setmetatile 11, 2, 734, 1 + setmetatile 12, 2, 733, 1 special DrawWholeMapView return @@ -2583,12 +2583,12 @@ EverGrandeCity_SidneysRoom_EventScript_1A0710:: @ 81A0710 applymovement 255, EverGrandeCity_SidneysRoom_Movement_1A0847 waitmovement 0 playse 52 - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 special DrawWholeMapView return @@ -2596,36 +2596,36 @@ EverGrandeCity_DrakesRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_GlaciasRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_PhoebesRoom_EventScript_1A0757:: @ 81A0757 EverGrandeCity_SidneysRoom_EventScript_1A0757:: @ 81A0757 - setmaptile 6, 1, 836, 0 - setmaptile 6, 2, 837, 0 - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 - setmaptile 0, 2, 734, 1 - setmaptile 1, 2, 733, 1 - setmaptile 2, 2, 734, 1 - setmaptile 3, 2, 733, 1 - setmaptile 4, 2, 734, 1 - setmaptile 8, 2, 733, 1 - setmaptile 9, 2, 734, 1 - setmaptile 10, 2, 733, 1 - setmaptile 11, 2, 734, 1 - setmaptile 12, 2, 733, 1 + setmetatile 6, 1, 836, 0 + setmetatile 6, 2, 837, 0 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 + setmetatile 0, 2, 734, 1 + setmetatile 1, 2, 733, 1 + setmetatile 2, 2, 734, 1 + setmetatile 3, 2, 733, 1 + setmetatile 4, 2, 734, 1 + setmetatile 8, 2, 733, 1 + setmetatile 9, 2, 734, 1 + setmetatile 10, 2, 733, 1 + setmetatile 11, 2, 734, 1 + setmetatile 12, 2, 733, 1 return EverGrandeCity_DrakesRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_GlaciasRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_PhoebesRoom_EventScript_1A07FA:: @ 81A07FA EverGrandeCity_SidneysRoom_EventScript_1A07FA:: @ 81A07FA - setmaptile 5, 12, 518, 1 - setmaptile 6, 12, 518, 1 - setmaptile 7, 12, 518, 1 - setmaptile 5, 13, 526, 1 - setmaptile 6, 13, 526, 1 - setmaptile 7, 13, 526, 1 + setmetatile 5, 12, 518, 1 + setmetatile 6, 12, 518, 1 + setmetatile 7, 12, 518, 1 + setmetatile 5, 13, 526, 1 + setmetatile 6, 13, 526, 1 + setmetatile 7, 13, 526, 1 return SlateportCity_Movement_1A0831:: @ 81A0831 @@ -3271,7 +3271,7 @@ gUnknown_081A14B8:: @ 81A14B8 EventScript_1A14CA:: message UnknownString_81A1141 waitmessage - waitbutton + waitbuttonpress special sub_8081924 waitstate fadescreen 1 @@ -3609,9 +3609,9 @@ gUnknown_081A2C51:: @ 81A2C51 special sub_80BB63C compare RESULT, 1 goto_if_eq EventScript_1A2E45 - checkpokemove MOVE_SECRET_POWER - setfieldeffect 0, RESULT - getmovename 1, MOVE_SECRET_POWER + checkpartymove MOVE_SECRET_POWER + setfieldeffectargument 0, RESULT + buffermovename 1, MOVE_SECRET_POWER compare 0x8007, 1 goto_if_eq EventScript_1A2CB0 compare 0x8007, 2 @@ -3630,7 +3630,7 @@ EventScript_1A2CB0: lockall compare RESULT, 6 goto_if_eq EventScript_1A2CF1 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_8198F34, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3661,7 +3661,7 @@ EventScript_1A2D08: lockall compare RESULT, 6 goto_if_eq EventScript_1A2D49 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_81A197B, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3692,7 +3692,7 @@ EventScript_1A2D60: lockall compare RESULT, 6 goto_if_eq EventScript_1A2DA1 - getpartypokename 0, RESULT + bufferpartymonnick 0, RESULT msgbox UnknownString_81A1A4B, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A @@ -3778,10 +3778,10 @@ EventScript_1A2E38: end EventScript_1A2E45: - checkpokemove MOVE_SECRET_POWER + checkpartymove MOVE_SECRET_POWER compare RESULT, 6 goto_if_eq EventScript_1A2EF7 - setfieldeffect 0, RESULT + setfieldeffectargument 0, RESULT setorcopyvar 0x8004, RESULT lockall special GetSecretBaseNearbyMapName @@ -3798,8 +3798,8 @@ EventScript_1A2E45: msgbox UnknownString_81A3CC9, 5 compare RESULT, 0 goto_if_eq EventScript_1A2F3A - getpartypokename 0, 0x8004 - getmovename 1, MOVE_SECRET_POWER + bufferpartymonnick 0, 0x8004 + buffermovename 1, MOVE_SECRET_POWER msgbox UsedCutRockSmashText, 4 closemessage closemessage @@ -4773,8 +4773,8 @@ BattleTower_Lobby_EventScript_1AE30F:: @ 81AE30F .include "data/text/magma_summit.inc" gUnknown_081B694A:: @ 81B694A - animdarklevel 1 - setdarklevel 1 + animateflash 1 + setflashradius 1 end .include "data/scripts/players_house.inc" @@ -4928,7 +4928,7 @@ gUnknown_081C6C02:: @ 81C6C02 @ 81C6C1D lockall braillemessage Underwater_SealedChamber_Braille_1C533D - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/field_move_scripts.inc b/data/field_move_scripts.inc index 86b81dd01..0a0eeaa73 100644 --- a/data/field_move_scripts.inc +++ b/data/field_move_scripts.inc @@ -2,12 +2,12 @@ S_CuttableTree:: @ 81B0DCC lockall checkflag FLAG_BADGE01_GET goto_if 0, CannotUseCut - checkpokemove MOVE_CUT + checkpartymove MOVE_CUT compare RESULT, 6 goto_if_eq CannotUseCut - setfieldeffect 0, RESULT - getpartypokename 0, RESULT - getmovename 1, MOVE_CUT + setfieldeffectargument 0, RESULT + bufferpartymonnick 0, RESULT + buffermovename 1, MOVE_CUT msgbox UseCutPromptText, 5 compare RESULT, 0 goto_if_eq Cut_ChoseNo @@ -60,12 +60,12 @@ S_BreakableRock:: @ 81B0EB7 lockall checkflag FLAG_BADGE03_GET goto_if 0, CannotUseRockSmash - checkpokemove MOVE_ROCK_SMASH + checkpartymove MOVE_ROCK_SMASH compare RESULT, 6 goto_if_eq CannotUseRockSmash - setfieldeffect 0, RESULT - getpartypokename 0, RESULT - getmovename 1, MOVE_ROCK_SMASH + setfieldeffectargument 0, RESULT + bufferpartymonnick 0, RESULT + buffermovename 1, MOVE_ROCK_SMASH msgbox UseRockSmashPromptText, 5 compare RESULT, 0 goto_if_eq RockSmash_ChoseNo @@ -129,10 +129,10 @@ S_PushableBoulder:: @ 81B0FCB goto_if 0, CannotUseStrength checkflag FLAG_SYS_USE_STRENGTH goto_if_eq AlreadyUsedStrength - checkpokemove 70 + checkpartymove 70 compare RESULT, 6 goto_if_eq CannotUseStrength - setfieldeffect 0, RESULT + setfieldeffectargument 0, RESULT msgbox UseStrengthPromptText, 5 compare RESULT, 0 goto_if_eq Strength_ChoseNo @@ -190,11 +190,11 @@ AlreadyUsedStrengthText: @ 81B1127 S_UseWaterfall:: @ 81B115A lockall - checkpokemove MOVE_WATERFALL + checkpartymove MOVE_WATERFALL compare RESULT, 6 goto_if_eq Waterfall_NoMonKnows - getpartypokename 0, RESULT - setfieldeffect 0, RESULT + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT msgbox UseWaterfallPromptText, 5 compare RESULT, 0 goto_if_eq Waterfall_Done @@ -223,12 +223,12 @@ UsedWaterfallText: @ 81B120D UseDiveScript:: @ 81B1220 lockall - checkpokemove MOVE_DIVE + checkpartymove MOVE_DIVE compare RESULT, 6 goto_if_eq CannotUseDive - getpartypokename 0, RESULT - setfieldeffect 0, RESULT - setfieldeffect 1, 1 + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT + setfieldeffectargument 1, 1 msgbox UseDivePromptText, 5 compare RESULT, 0 goto_if_eq Dive_Done @@ -246,12 +246,12 @@ Dive_Done: @ 81B1267 S_UseDiveUnderwater:: @ 81B1269 lockall - checkpokemove MOVE_DIVE + checkpartymove MOVE_DIVE compare RESULT, 6 goto_if_eq UnderwaterCannotUseDive - getpartypokename 0, RESULT - setfieldeffect 0, RESULT - setfieldeffect 1, 1 + bufferpartymonnick 0, RESULT + setfieldeffectargument 0, RESULT + setfieldeffectargument 1, 1 msgbox UnderwaterUseDivePromptText, 5 compare RESULT, 0 goto_if_eq UnderwaterDive_Done diff --git a/data/item_ball_scripts.inc b/data/item_ball_scripts.inc index ad4386990..aae704ab2 100644 --- a/data/item_ball_scripts.inc +++ b/data/item_ball_scripts.inc @@ -1,539 +1,539 @@ Route102_EventScript_1B1439:: @ 81B1439 - giveitem ITEM_POTION, 1, 1 + giveitem_std ITEM_POTION, 1, 1 end Route103_EventScript_1B1446:: @ 81B1446 - giveitem ITEM_GUARD_SPEC, 1, 1 + giveitem_std ITEM_GUARD_SPEC, 1, 1 end Route104_EventScript_1B1453:: @ 81B1453 - giveitem ITEM_PP_UP, 1, 1 + giveitem_std ITEM_PP_UP, 1, 1 end Route104_EventScript_1B1460:: @ 81B1460 - giveitem ITEM_POKE_BALL, 1, 1 + giveitem_std ITEM_POKE_BALL, 1, 1 end Route104_EventScript_1B146D:: @ 81B146D - giveitem ITEM_X_ACCURACY, 1, 1 + giveitem_std ITEM_X_ACCURACY, 1, 1 end Route104_EventScript_1B147A:: @ 81B147A - giveitem ITEM_POTION, 1, 1 + giveitem_std ITEM_POTION, 1, 1 end Route105_EventScript_1B1487:: @ 81B1487 - giveitem ITEM_IRON, 1, 1 + giveitem_std ITEM_IRON, 1, 1 end Route106_EventScript_1B1494:: @ 81B1494 - giveitem ITEM_PROTEIN, 1, 1 + giveitem_std ITEM_PROTEIN, 1, 1 end Route109_EventScript_1B14A1:: @ 81B14A1 - giveitem ITEM_PP_UP, 1, 1 + giveitem_std ITEM_PP_UP, 1, 1 end Route110_EventScript_1B14AE:: @ 81B14AE - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end Route110_EventScript_1B14BB:: @ 81B14BB - giveitem ITEM_DIRE_HIT, 1, 1 + giveitem_std ITEM_DIRE_HIT, 1, 1 end Route111_EventScript_1B14C8:: @ 81B14C8 - giveitem ITEM_TM37, 1, 1 + giveitem_std ITEM_TM37, 1, 1 end Route111_EventScript_1B14D5:: @ 81B14D5 - giveitem ITEM_STARDUST, 1, 1 + giveitem_std ITEM_STARDUST, 1, 1 end Route111_EventScript_1B14E2:: @ 81B14E2 - giveitem ITEM_HP_UP, 1, 1 + giveitem_std ITEM_HP_UP, 1, 1 end Route112_EventScript_1B14EF:: @ 81B14EF - giveitem ITEM_NUGGET, 1, 1 + giveitem_std ITEM_NUGGET, 1, 1 end Route113_EventScript_1B14FC:: @ 81B14FC - giveitem ITEM_MAX_ETHER, 1, 1 + giveitem_std ITEM_MAX_ETHER, 1, 1 end Route113_EventScript_1B1509:: @ 81B1509 - giveitem ITEM_SUPER_REPEL, 1, 1 + giveitem_std ITEM_SUPER_REPEL, 1, 1 end Route114_EventScript_1B1516:: @ 81B1516 - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end Route114_EventScript_1B1523:: @ 81B1523 - giveitem ITEM_PROTEIN, 1, 1 + giveitem_std ITEM_PROTEIN, 1, 1 end Route115_EventScript_1B1530:: @ 81B1530 - giveitem ITEM_SUPER_POTION, 1, 1 + giveitem_std ITEM_SUPER_POTION, 1, 1 end Route115_EventScript_1B153D:: @ 81B153D - giveitem ITEM_TM01, 1, 1 + giveitem_std ITEM_TM01, 1, 1 end Route115_EventScript_1B154A:: @ 81B154A - giveitem ITEM_IRON, 1, 1 + giveitem_std ITEM_IRON, 1, 1 end Route115_EventScript_1B1557:: @ 81B1557 - giveitem ITEM_GREAT_BALL, 1, 1 + giveitem_std ITEM_GREAT_BALL, 1, 1 end Route116_EventScript_1B1564:: @ 81B1564 - giveitem ITEM_X_SPECIAL, 1, 1 + giveitem_std ITEM_X_SPECIAL, 1, 1 end Route116_EventScript_1B1571:: @ 81B1571 - giveitem ITEM_ETHER, 1, 1 + giveitem_std ITEM_ETHER, 1, 1 end Route116_EventScript_1B157E:: @ 81B157E - giveitem ITEM_REPEL, 1, 1 + giveitem_std ITEM_REPEL, 1, 1 end Route116_EventScript_1B158B:: @ 81B158B - giveitem ITEM_HP_UP, 1, 1 + giveitem_std ITEM_HP_UP, 1, 1 end Route117_EventScript_1B1598:: @ 81B1598 - giveitem ITEM_GREAT_BALL, 1, 1 + giveitem_std ITEM_GREAT_BALL, 1, 1 end Route117_EventScript_1B15A5:: @ 81B15A5 - giveitem ITEM_REVIVE, 1, 1 + giveitem_std ITEM_REVIVE, 1, 1 end Route118_EventScript_1B15B2:: @ 81B15B2 - giveitem ITEM_HYPER_POTION, 1, 1 + giveitem_std ITEM_HYPER_POTION, 1, 1 end Route119_EventScript_1B15BF:: @ 81B15BF - giveitem ITEM_SUPER_REPEL, 1, 1 + giveitem_std ITEM_SUPER_REPEL, 1, 1 end Route119_EventScript_1B15CC:: @ 81B15CC - giveitem ITEM_ZINC, 1, 1 + giveitem_std ITEM_ZINC, 1, 1 end Route119_EventScript_1B15D9:: @ 81B15D9 - giveitem ITEM_ELIXIR, 1, 1 + giveitem_std ITEM_ELIXIR, 1, 1 end Route119_EventScript_1B15E6:: @ 81B15E6 - giveitem ITEM_LEAF_STONE, 1, 1 + giveitem_std ITEM_LEAF_STONE, 1, 1 end Route119_EventScript_1B15F3:: @ 81B15F3 - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end Route119_EventScript_1B1600:: @ 81B1600 - giveitem ITEM_HYPER_POTION, 1, 1 + giveitem_std ITEM_HYPER_POTION, 1, 1 end Route119_EventScript_1B160D:: @ 81B160D - giveitem ITEM_HYPER_POTION, 1, 1 + giveitem_std ITEM_HYPER_POTION, 1, 1 end Route120_EventScript_1B161A:: @ 81B161A - giveitem ITEM_NUGGET, 1, 1 + giveitem_std ITEM_NUGGET, 1, 1 end Route120_EventScript_1B1627:: @ 81B1627 - giveitem ITEM_FULL_HEAL, 1, 1 + giveitem_std ITEM_FULL_HEAL, 1, 1 end Route120_EventScript_1B1634:: @ 81B1634 - giveitem ITEM_HYPER_POTION, 1, 1 + giveitem_std ITEM_HYPER_POTION, 1, 1 end Route120_EventScript_1B1641:: @ 81B1641 - giveitem ITEM_NEST_BALL, 1, 1 + giveitem_std ITEM_NEST_BALL, 1, 1 end Route121_EventScript_1B164E:: @ 81B164E - giveitem ITEM_CARBOS, 1, 1 + giveitem_std ITEM_CARBOS, 1, 1 end Route123_EventScript_1B165B:: @ 81B165B - giveitem ITEM_CALCIUM, 1, 1 + giveitem_std ITEM_CALCIUM, 1, 1 end Route123_EventScript_1B1668:: @ 81B1668 - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end Route123_EventScript_1B1675:: @ 81B1675 - giveitem ITEM_ULTRA_BALL, 1, 1 + giveitem_std ITEM_ULTRA_BALL, 1, 1 end Route123_EventScript_1B1682:: @ 81B1682 - giveitem ITEM_ELIXIR, 1, 1 + giveitem_std ITEM_ELIXIR, 1, 1 end Route124_EventScript_1B168F:: @ 81B168F - giveitem ITEM_RED_SHARD, 1, 1 + giveitem_std ITEM_RED_SHARD, 1, 1 end Route124_EventScript_1B169C:: @ 81B169C - giveitem ITEM_BLUE_SHARD, 1, 1 + giveitem_std ITEM_BLUE_SHARD, 1, 1 end Route124_EventScript_1B16A9:: @ 81B16A9 - giveitem ITEM_YELLOW_SHARD, 1, 1 + giveitem_std ITEM_YELLOW_SHARD, 1, 1 end Route126_EventScript_1B16B6:: @ 81B16B6 - giveitem ITEM_GREEN_SHARD, 1, 1 + giveitem_std ITEM_GREEN_SHARD, 1, 1 end Route127_EventScript_1B16C3:: @ 81B16C3 - giveitem ITEM_ZINC, 1, 1 + giveitem_std ITEM_ZINC, 1, 1 end Route127_EventScript_1B16D0:: @ 81B16D0 - giveitem ITEM_CARBOS, 1, 1 + giveitem_std ITEM_CARBOS, 1, 1 end Route132_EventScript_1B16DD:: @ 81B16DD - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end Route133_EventScript_1B16EA:: @ 81B16EA - giveitem ITEM_BIG_PEARL, 1, 1 + giveitem_std ITEM_BIG_PEARL, 1, 1 end Route133_EventScript_1B16F7:: @ 81B16F7 - giveitem ITEM_STAR_PIECE, 1, 1 + giveitem_std ITEM_STAR_PIECE, 1, 1 end PetalburgCity_EventScript_1B1704:: @ 81B1704 - giveitem ITEM_MAX_REVIVE, 1, 1 + giveitem_std ITEM_MAX_REVIVE, 1, 1 end PetalburgCity_EventScript_1B1711:: @ 81B1711 - giveitem ITEM_ETHER, 1, 1 + giveitem_std ITEM_ETHER, 1, 1 end MauvilleCity_EventScript_1B171E:: @ 81B171E - giveitem ITEM_X_SPEED, 1, 1 + giveitem_std ITEM_X_SPEED, 1, 1 end RustboroCity_EventScript_1B172B:: @ 81B172B - giveitem ITEM_X_DEFEND, 1, 1 + giveitem_std ITEM_X_DEFEND, 1, 1 end LilycoveCity_EventScript_1B1738:: @ 81B1738 - giveitem ITEM_MAX_REPEL, 1, 1 + giveitem_std ITEM_MAX_REPEL, 1, 1 end MossdeepCity_EventScript_1B1745:: @ 81B1745 - giveitem ITEM_NET_BALL, 1, 1 + giveitem_std ITEM_NET_BALL, 1, 1 end PetalburgWoods_EventScript_1B1752:: @ 81B1752 - giveitem ITEM_X_ATTACK, 1, 1 + giveitem_std ITEM_X_ATTACK, 1, 1 end PetalburgWoods_EventScript_1B175F:: @ 81B175F - giveitem ITEM_GREAT_BALL, 1, 1 + giveitem_std ITEM_GREAT_BALL, 1, 1 end PetalburgWoods_EventScript_1B176C:: @ 81B176C - giveitem ITEM_ETHER, 1, 1 + giveitem_std ITEM_ETHER, 1, 1 end PetalburgWoods_EventScript_1B1779:: @ 81B1779 - giveitem ITEM_PARALYZE_HEAL, 1, 1 + giveitem_std ITEM_PARALYZE_HEAL, 1, 1 end RusturfTunnel_EventScript_1B1786:: @ 81B1786 - giveitem ITEM_POKE_BALL, 1, 1 + giveitem_std ITEM_POKE_BALL, 1, 1 end RusturfTunnel_EventScript_1B1793:: @ 81B1793 - giveitem ITEM_MAX_ETHER, 1, 1 + giveitem_std ITEM_MAX_ETHER, 1, 1 end GraniteCave_1F_EventScript_1B17A0:: @ 81B17A0 - giveitem ITEM_ESCAPE_ROPE, 1, 1 + giveitem_std ITEM_ESCAPE_ROPE, 1, 1 end GraniteCave_B1F_EventScript_1B17AD:: @ 81B17AD - giveitem ITEM_POKE_BALL, 1, 1 + giveitem_std ITEM_POKE_BALL, 1, 1 end GraniteCave_B2F_EventScript_1B17BA:: @ 81B17BA - giveitem ITEM_REPEL, 1, 1 + giveitem_std ITEM_REPEL, 1, 1 end GraniteCave_B2F_EventScript_1B17C7:: @ 81B17C7 - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end JaggedPass_EventScript_1B17D4:: @ 81B17D4 - giveitem ITEM_BURN_HEAL, 1, 1 + giveitem_std ITEM_BURN_HEAL, 1, 1 end FieryPath_EventScript_1B17E1:: @ 81B17E1 - giveitem ITEM_FIRE_STONE, 1, 1 + giveitem_std ITEM_FIRE_STONE, 1, 1 end FieryPath_EventScript_1B17EE:: @ 81B17EE - giveitem ITEM_TM06, 1, 1 + giveitem_std ITEM_TM06, 1, 1 end MeteorFalls_1F_1R_EventScript_1B17FB:: @ 81B17FB - giveitem ITEM_TM23, 1, 1 + giveitem_std ITEM_TM23, 1, 1 end MeteorFalls_1F_1R_EventScript_1B1808:: @ 81B1808 - giveitem ITEM_FULL_HEAL, 1, 1 + giveitem_std ITEM_FULL_HEAL, 1, 1 end MeteorFalls_1F_1R_EventScript_1B1815:: @ 81B1815 - giveitem ITEM_MOON_STONE, 1, 1 + giveitem_std ITEM_MOON_STONE, 1, 1 end MeteorFalls_1F_1R_EventScript_1B1822:: @ 81B1822 - giveitem ITEM_PP_UP, 1, 1 + giveitem_std ITEM_PP_UP, 1, 1 end MeteorFalls_B1F_2R_EventScript_1B182F:: @ 81B182F - giveitem ITEM_TM02, 1, 1 + giveitem_std ITEM_TM02, 1, 1 end NewMauville_Inside_EventScript_1B183C:: @ 81B183C - giveitem ITEM_ULTRA_BALL, 1, 1 + giveitem_std ITEM_ULTRA_BALL, 1, 1 end NewMauville_Inside_EventScript_1B1849:: @ 81B1849 - giveitem ITEM_ESCAPE_ROPE, 1, 1 + giveitem_std ITEM_ESCAPE_ROPE, 1, 1 end NewMauville_Inside_EventScript_1B1856:: @ 81B1856 - giveitem ITEM_THUNDER_STONE, 1, 1 + giveitem_std ITEM_THUNDER_STONE, 1, 1 end NewMauville_Inside_EventScript_1B1863:: @ 81B1863 - giveitem ITEM_FULL_HEAL, 1, 1 + giveitem_std ITEM_FULL_HEAL, 1, 1 end NewMauville_Inside_EventScript_1B1870:: @ 81B1870 - giveitem ITEM_PARALYZE_HEAL, 1, 1 + giveitem_std ITEM_PARALYZE_HEAL, 1, 1 end AbandonedShip_Rooms_1F_EventScript_1B187D:: @ 81B187D - giveitem ITEM_HARBOR_MAIL, 1, 1 + giveitem_std ITEM_HARBOR_MAIL, 1, 1 end AbandonedShip_Rooms_B1F_EventScript_1B188A:: @ 81B188A - giveitem ITEM_ESCAPE_ROPE, 1, 1 + giveitem_std ITEM_ESCAPE_ROPE, 1, 1 end AbandonedShip_Rooms2_B1F_EventScript_1B1897:: @ 81B1897 - giveitem ITEM_DIVE_BALL, 1, 1 + giveitem_std ITEM_DIVE_BALL, 1, 1 end AbandonedShip_Room_B1F_EventScript_1B18A4:: @ 81B18A4 - giveitem ITEM_TM13, 1, 1 + giveitem_std ITEM_TM13, 1, 1 end AbandonedShip_Rooms2_1F_EventScript_1B18B1:: @ 81B18B1 - giveitem ITEM_REVIVE, 1, 1 + giveitem_std ITEM_REVIVE, 1, 1 end AbandonedShip_CaptainsOffice_EventScript_1B18BE:: @ 81B18BE - giveitem ITEM_STORAGE_KEY, 1, 1 + giveitem_std ITEM_STORAGE_KEY, 1, 1 end AbandonedShip_HiddenFloorRooms_EventScript_1B18CB:: @ 81B18CB - giveitem ITEM_LUXURY_BALL, 1, 1 + giveitem_std ITEM_LUXURY_BALL, 1, 1 end AbandonedShip_HiddenFloorRooms_EventScript_1B18D8:: @ 81B18D8 - giveitem ITEM_SCANNER, 1, 1 + giveitem_std ITEM_SCANNER, 1, 1 end AbandonedShip_HiddenFloorRooms_EventScript_1B18E5:: @ 81B18E5 - giveitem ITEM_WATER_STONE, 1, 1 + giveitem_std ITEM_WATER_STONE, 1, 1 end AbandonedShip_HiddenFloorRooms_EventScript_1B18F2:: @ 81B18F2 - giveitem ITEM_TM18, 1, 1 + giveitem_std ITEM_TM18, 1, 1 end ScorchedSlab_EventScript_1B18FF:: @ 81B18FF - giveitem ITEM_TM11, 1, 1 + giveitem_std ITEM_TM11, 1, 1 end SafariZone_Northwest_EventScript_1B190C:: @ 81B190C - giveitem ITEM_TM22, 1, 1 + giveitem_std ITEM_TM22, 1, 1 end SafariZone_Northeast_EventScript_1B1919:: @ 81B1919 - giveitem ITEM_CALCIUM, 1, 1 + giveitem_std ITEM_CALCIUM, 1, 1 end SafariZone_Southwest_EventScript_1B1926:: @ 81B1926 - giveitem ITEM_MAX_REVIVE, 1, 1 + giveitem_std ITEM_MAX_REVIVE, 1, 1 end MtPyre_2F_EventScript_1B1933:: @ 81B1933 - giveitem ITEM_ULTRA_BALL, 1, 1 + giveitem_std ITEM_ULTRA_BALL, 1, 1 end MtPyre_3F_EventScript_1B1940:: @ 81B1940 - giveitem ITEM_SUPER_REPEL, 1, 1 + giveitem_std ITEM_SUPER_REPEL, 1, 1 end MtPyre_4F_EventScript_1B194D:: @ 81B194D - giveitem ITEM_SEA_INCENSE, 1, 1 + giveitem_std ITEM_SEA_INCENSE, 1, 1 end MtPyre_5F_EventScript_1B195A:: @ 81B195A - giveitem ITEM_LAX_INCENSE, 1, 1 + giveitem_std ITEM_LAX_INCENSE, 1, 1 end MtPyre_6F_EventScript_1B1967:: @ 81B1967 - giveitem ITEM_TM30, 1, 1 + giveitem_std ITEM_TM30, 1, 1 end MtPyre_Exterior_EventScript_1B1974:: @ 81B1974 - giveitem ITEM_MAX_POTION, 1, 1 + giveitem_std ITEM_MAX_POTION, 1, 1 end MtPyre_Exterior_EventScript_1B1981:: @ 81B1981 - giveitem ITEM_TM48, 1, 1 + giveitem_std ITEM_TM48, 1, 1 end AquaHideout_B1F_EventScript_1B198E:: @ 81B198E - giveitem ITEM_MASTER_BALL, 1, 1 + giveitem_std ITEM_MASTER_BALL, 1, 1 end AquaHideout_B1F_EventScript_1B199B:: @ 81B199B - giveitem ITEM_NUGGET, 1, 1 + giveitem_std ITEM_NUGGET, 1, 1 end AquaHideout_B1F_EventScript_1B19A8:: @ 81B19A8 - giveitem ITEM_MAX_ELIXIR, 1, 1 + giveitem_std ITEM_MAX_ELIXIR, 1, 1 end AquaHideout_B2F_EventScript_1B19B5:: @ 81B19B5 - giveitem ITEM_NEST_BALL, 1, 1 + giveitem_std ITEM_NEST_BALL, 1, 1 end MagmaHideout_B1F_EventScript_1B19C2:: @ 81B19C2 - giveitem ITEM_MASTER_BALL, 1, 1 + giveitem_std ITEM_MASTER_BALL, 1, 1 end MagmaHideout_B1F_EventScript_1B19CF:: @ 81B19CF - giveitem ITEM_NUGGET, 1, 1 + giveitem_std ITEM_NUGGET, 1, 1 end MagmaHideout_B1F_EventScript_1B19DC:: @ 81B19DC - giveitem ITEM_MAX_ELIXIR, 1, 1 + giveitem_std ITEM_MAX_ELIXIR, 1, 1 end MagmaHideout_B2F_EventScript_1B19E9:: @ 81B19E9 - giveitem ITEM_NEST_BALL, 1, 1 + giveitem_std ITEM_NEST_BALL, 1, 1 end ShoalCave_LowTideEntranceRoom_EventScript_1B19F6:: @ 81B19F6 - giveitem ITEM_BIG_PEARL, 1, 1 + giveitem_std ITEM_BIG_PEARL, 1, 1 end ShoalCave_LowTideInnerRoom_EventScript_1B1A03:: @ 81B1A03 - giveitem ITEM_RARE_CANDY, 1, 1 + giveitem_std ITEM_RARE_CANDY, 1, 1 end ShoalCave_LowTideStairsRoom_EventScript_1B1A10:: @ 81B1A10 - giveitem ITEM_ICE_HEAL, 1, 1 + giveitem_std ITEM_ICE_HEAL, 1, 1 end ShoalCave_LowTideIceRoom_EventScript_1B1A1D:: @ 81B1A1D - giveitem ITEM_TM07, 1, 1 + giveitem_std ITEM_TM07, 1, 1 end ShoalCave_LowTideIceRoom_EventScript_1B1A2A:: @ 81B1A2A - giveitem ITEM_NEVER_MELT_ICE, 1, 1 + giveitem_std ITEM_NEVER_MELT_ICE, 1, 1 end SeafloorCavern_Room9_EventScript_1B1A37:: @ 81B1A37 - giveitem ITEM_TM26, 1, 1 + giveitem_std ITEM_TM26, 1, 1 end CaveOfOrigin_B3F_EventScript_1B1A44:: @ 81B1A44 - giveitem ITEM_HM07, 1, 1 + giveitem_std ITEM_HM07, 1, 1 end Route110_TrickHousePuzzle1_EventScript_1B1A51:: @ 81B1A51 - giveitem ITEM_ORANGE_MAIL, 1, 1 + giveitem_std ITEM_ORANGE_MAIL, 1, 1 end Route110_TrickHousePuzzle2_EventScript_1B1A5E:: @ 81B1A5E - giveitem ITEM_HARBOR_MAIL, 1, 1 + giveitem_std ITEM_HARBOR_MAIL, 1, 1 end Route110_TrickHousePuzzle2_EventScript_1B1A6B:: @ 81B1A6B - giveitem ITEM_WAVE_MAIL, 1, 1 + giveitem_std ITEM_WAVE_MAIL, 1, 1 end Route110_TrickHousePuzzle3_EventScript_1B1A78:: @ 81B1A78 - giveitem ITEM_SHADOW_MAIL, 1, 1 + giveitem_std ITEM_SHADOW_MAIL, 1, 1 end Route110_TrickHousePuzzle3_EventScript_1B1A85:: @ 81B1A85 - giveitem ITEM_WOOD_MAIL, 1, 1 + giveitem_std ITEM_WOOD_MAIL, 1, 1 end Route110_TrickHousePuzzle4_EventScript_1B1A92:: @ 81B1A92 - giveitem ITEM_MECH_MAIL, 1, 1 + giveitem_std ITEM_MECH_MAIL, 1, 1 end Route110_TrickHousePuzzle6_EventScript_1B1A9F:: @ 81B1A9F - giveitem ITEM_GLITTER_MAIL, 1, 1 + giveitem_std ITEM_GLITTER_MAIL, 1, 1 end Route110_TrickHousePuzzle7_EventScript_1B1AAC:: @ 81B1AAC - giveitem ITEM_TROPIC_MAIL, 1, 1 + giveitem_std ITEM_TROPIC_MAIL, 1, 1 end Route110_TrickHousePuzzle8_EventScript_1B1AB9:: @ 81B1AB9 - giveitem ITEM_BEAD_MAIL, 1, 1 + giveitem_std ITEM_BEAD_MAIL, 1, 1 end VictoryRoad_1F_EventScript_1B1AC6:: @ 81B1AC6 - giveitem ITEM_MAX_ELIXIR, 1, 1 + giveitem_std ITEM_MAX_ELIXIR, 1, 1 end VictoryRoad_1F_EventScript_1B1AD3:: @ 81B1AD3 - giveitem ITEM_PP_UP, 1, 1 + giveitem_std ITEM_PP_UP, 1, 1 end VictoryRoad_B1F_EventScript_1B1AE0:: @ 81B1AE0 - giveitem ITEM_TM29, 1, 1 + giveitem_std ITEM_TM29, 1, 1 end VictoryRoad_B1F_EventScript_1B1AED:: @ 81B1AED - giveitem ITEM_FULL_RESTORE, 1, 1 + giveitem_std ITEM_FULL_RESTORE, 1, 1 end VictoryRoad_B2F_EventScript_1B1AFA:: @ 81B1AFA - giveitem ITEM_FULL_HEAL, 1, 1 + giveitem_std ITEM_FULL_HEAL, 1, 1 end @ 81B1B07 - giveitem ITEM_HM08, 1, 1 + giveitem_std ITEM_HM08, 1, 1 end diff --git a/data/script_cmd_table.inc b/data/script_cmd_table.inc index b6b7401f3..3f47da1da 100644 --- a/data/script_cmd_table.inc +++ b/data/script_cmd_table.inc @@ -67,18 +67,18 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_setdivewarp @ 0x40 .4byte ScrCmd_setholewarp @ 0x41 .4byte ScrCmd_getplayerxy @ 0x42 - .4byte ScrCmd_countpokemon @ 0x43 - .4byte ScrCmd_additem @ 0x44 - .4byte ScrCmd_removeitem @ 0x45 + .4byte ScrCmd_getpartysize @ 0x43 + .4byte ScrCmd_giveitem @ 0x44 + .4byte ScrCmd_takeitem @ 0x45 .4byte ScrCmd_checkitemspace @ 0x46 .4byte ScrCmd_checkitem @ 0x47 .4byte ScrCmd_checkitemtype @ 0x48 - .4byte ScrCmd_addpcitem @ 0x49 + .4byte ScrCmd_givepcitem @ 0x49 .4byte ScrCmd_checkpcitem @ 0x4A - .4byte ScrCmd_adddecor @ 0x4B - .4byte ScrCmd_removedecor @ 0x4C - .4byte ScrCmd_hasdecor @ 0x4D - .4byte ScrCmd_checkdecor @ 0x4E + .4byte ScrCmd_givedecoration @ 0x4B + .4byte ScrCmd_takedecoration @ 0x4C + .4byte ScrCmd_checkdecor @ 0x4D + .4byte ScrCmd_checkdecorspace @ 0x4E .4byte ScrCmd_applymovement @ 0x4F .4byte ScrCmd_applymovement_at @ 0x50 .4byte ScrCmd_waitmovement @ 0x51 @@ -88,14 +88,14 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_addobject @ 0x55 .4byte ScrCmd_addobject_at @ 0x56 .4byte ScrCmd_setobjectxy @ 0x57 - .4byte ScrCmd_showobject @ 0x58 - .4byte ScrCmd_hideobject @ 0x59 + .4byte ScrCmd_showobjectat @ 0x58 + .4byte ScrCmd_hideobjectat @ 0x59 .4byte ScrCmd_faceplayer @ 0x5A .4byte ScrCmd_turnobject @ 0x5B .4byte ScrCmd_trainerbattle @ 0x5C - .4byte ScrCmd_battlebegin @ 0x5D - .4byte ScrCmd_ontrainerbattleend @ 0x5E - .4byte ScrCmd_ontrainerbattleendgoto @ 0x5F + .4byte ScrCmd_trainerbattlebegin @ 0x5D + .4byte ScrCmd_gotopostbattlescript @ 0x5E + .4byte ScrCmd_gotobeatenscript @ 0x5F .4byte ScrCmd_checktrainerflag @ 0x60 .4byte ScrCmd_settrainerflag @ 0x61 .4byte ScrCmd_cleartrainerflag @ 0x62 @@ -109,7 +109,7 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_lock @ 0x6A .4byte ScrCmd_releaseall @ 0x6B .4byte ScrCmd_release @ 0x6C - .4byte ScrCmd_waitbutton @ 0x6D + .4byte ScrCmd_waitbuttonpress @ 0x6D .4byte ScrCmd_yesnobox @ 0x6E .4byte ScrCmd_multichoice @ 0x6F .4byte ScrCmd_multichoicedefault @ 0x70 @@ -117,29 +117,29 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_drawbox @ 0x72 .4byte ScrCmd_erasebox @ 0x73 .4byte ScrCmd_drawboxtext @ 0x74 - .4byte ScrCmd_drawpokepic @ 0x75 - .4byte ScrCmd_erasepokepic @ 0x76 + .4byte ScrCmd_drawmonpic @ 0x75 + .4byte ScrCmd_erasemonpic @ 0x76 .4byte ScrCmd_drawcontestwinner @ 0x77 .4byte ScrCmd_braillemessage @ 0x78 - .4byte ScrCmd_givepoke @ 0x79 + .4byte ScrCmd_givemon @ 0x79 .4byte ScrCmd_giveegg @ 0x7A - .4byte ScrCmd_setpokemove @ 0x7B - .4byte ScrCmd_checkpokemove @ 0x7C - .4byte ScrCmd_getspeciesname @ 0x7D - .4byte ScrCmd_getfirstpartypokename @ 0x7E - .4byte ScrCmd_getpartypokename @ 0x7F - .4byte ScrCmd_getitemname @ 0x80 - .4byte ScrCmd_getdecorname @ 0x81 - .4byte ScrCmd_getmovename @ 0x82 - .4byte ScrCmd_getnumberstring @ 0x83 - .4byte ScrCmd_getstdstring @ 0x84 - .4byte ScrCmd_getstring @ 0x85 + .4byte ScrCmd_setmonmove @ 0x7B + .4byte ScrCmd_checkpartymove @ 0x7C + .4byte ScrCmd_bufferspeciesname @ 0x7D + .4byte ScrCmd_bufferleadmonspeciesname @ 0x7E + .4byte ScrCmd_bufferpartymonnick @ 0x7F + .4byte ScrCmd_bufferitemname @ 0x80 + .4byte ScrCmd_bufferdecorationname @ 0x81 + .4byte ScrCmd_buffermovename @ 0x82 + .4byte ScrCmd_buffernumberstring @ 0x83 + .4byte ScrCmd_bufferstdstring @ 0x84 + .4byte ScrCmd_bufferstring @ 0x85 .4byte ScrCmd_pokemart @ 0x86 - .4byte ScrCmd_pokemartdecor @ 0x87 - .4byte ScrCmd_pokemartbp @ 0x88 + .4byte ScrCmd_pokemartdecoration @ 0x87 + .4byte ScrCmd_pokemartdecoration2 @ 0x88 .4byte ScrCmd_playslotmachine @ 0x89 - .4byte ScrCmd_plantberrytree @ 0x8A - .4byte ScrCmd_choosecontestpkmn @ 0x8B + .4byte ScrCmd_setberrytree @ 0x8A + .4byte ScrCmd_choosecontestmon @ 0x8B .4byte ScrCmd_startcontest @ 0x8C .4byte ScrCmd_showcontestresults @ 0x8D .4byte ScrCmd_contestlinktransfer @ 0x8E @@ -152,21 +152,21 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_updatemoneybox @ 0x95 .4byte ScrCmd_getpricereduction @ 0x96 .4byte ScrCmd_fadescreen @ 0x97 - .4byte ScrCmd_fadescreendelay @ 0x98 - .4byte ScrCmd_setdarklevel @ 0x99 - .4byte ScrCmd_animdarklevel @ 0x9A + .4byte ScrCmd_fadescreenspeed @ 0x98 + .4byte ScrCmd_setflashradius @ 0x99 + .4byte ScrCmd_animateflash @ 0x9A .4byte ScrCmd_messageautoscroll @ 0x9B .4byte ScrCmd_dofieldeffect @ 0x9C - .4byte ScrCmd_setfieldeffect @ 0x9D + .4byte ScrCmd_setfieldeffectargument @ 0x9D .4byte ScrCmd_waitfieldeffect @ 0x9E - .4byte ScrCmd_sethealplace @ 0x9F + .4byte ScrCmd_setrespawn @ 0x9F .4byte ScrCmd_checkplayergender @ 0xA0 - .4byte ScrCmd_playpokecry @ 0xA1 - .4byte ScrCmd_setmaptile @ 0xA2 + .4byte ScrCmd_playmoncry @ 0xA1 + .4byte ScrCmd_setmetatile @ 0xA2 .4byte ScrCmd_resetweather @ 0xA3 .4byte ScrCmd_setweather @ 0xA4 .4byte ScrCmd_doweather @ 0xA5 - .4byte ScrCmd_tileeffect @ 0xA6 + .4byte ScrCmd_setstepcallback @ 0xA6 .4byte ScrCmd_setmaplayoutindex @ 0xA7 .4byte ScrCmd_setobjectpriority @ 0xA8 .4byte ScrCmd_resetobjectpriority @ 0xA9 @@ -190,14 +190,14 @@ gScriptCmdTable:: @ 814AE30 .4byte ScrCmd_vgoto_if @ 0xBB .4byte ScrCmd_vcall_if @ 0xBC .4byte ScrCmd_vmessage @ 0xBD - .4byte ScrCmd_vloadword @ 0xBE - .4byte ScrCmd_vgetstring @ 0xBF + .4byte ScrCmd_vloadptr @ 0xBE + .4byte ScrCmd_vbufferstring @ 0xBF .4byte ScrCmd_showcoinsbox @ 0xC0 .4byte ScrCmd_hidecoinsbox @ 0xC1 .4byte ScrCmd_updatecoinsbox @ 0xC2 .4byte ScrCmd_incrementgamestat @ 0xC3 .4byte ScrCmd_setescapewarp @ 0xC4 - .4byte ScrCmd_waitpokecry @ 0xC5 + .4byte ScrCmd_waitmoncry @ 0xC5 gScriptCmdTableEnd:: .4byte ScrCmd_nop diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index be1cafbdd..ab700cbc3 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -14,7 +14,7 @@ Route102_EventScript_1A1533:: @ 81A1533 lockall message Route102_Text_1A1946 waitmessage - waitbutton + waitbuttonpress releaseall end @@ -26,7 +26,7 @@ Route102_EventScript_1A153D:: @ 81A153D goto_if_eq Route102_EventScript_1A1558 message Route102_Text_1A16B6 waitmessage - waitbutton + waitbuttonpress release end @@ -45,7 +45,7 @@ Route102_EventScript_1A1577:: @ 81A1577 waitstate compare ITEM_ID, 0 goto_if_eq Route102_EventScript_1A1593 - removeitem ITEM_ID, 1 + takeitem ITEM_ID, 1 call Route102_EventScript_1A16A9 Route102_EventScript_1A1593:: @ 81A1593 @@ -56,21 +56,21 @@ Route102_EventScript_1A1595:: @ 81A1595 lockall message Route102_Text_1A172C waitmessage - waitbutton + waitbuttonpress goto Route102_EventScript_1A165F Route102_EventScript_1A15A2:: @ 81A15A2 lockall message Route102_Text_1A174B waitmessage - waitbutton + waitbuttonpress goto Route102_EventScript_1A165F Route102_EventScript_1A15AF:: @ 81A15AF lockall message Route102_Text_1A175C waitmessage - waitbutton + waitbuttonpress goto Route102_EventScript_1A165F Route102_EventScript_1A15BC:: @ 81A15BC @@ -78,7 +78,7 @@ Route102_EventScript_1A15BC:: @ 81A15BC lockall message Route102_Text_1A177D waitmessage - waitbutton + waitbuttonpress goto Route102_EventScript_1A165F Route102_EventScript_1A15CE:: @ 81A15CE @@ -86,19 +86,19 @@ Route102_EventScript_1A15CE:: @ 81A15CE goto_if_eq Route102_EventScript_1A15F2 compare 0x8005, 4 goto_if_eq Route102_EventScript_1A15EB - getstring 1, Route102_Text_1A17B7 + bufferstring 1, Route102_Text_1A17B7 return Route102_EventScript_1A15EB:: @ 81A15EB - getstring 1, Route102_Text_1A179F + bufferstring 1, Route102_Text_1A179F return Route102_EventScript_1A15F2:: @ 81A15F2 - getstring 1, Route102_Text_1A17B0 + bufferstring 1, Route102_Text_1A17B0 return Route102_EventScript_1A15F9:: @ 81A15F9 - getnumberstring 1, 0x8006 + buffernumberstring 1, 0x8006 lock faceplayer msgbox Route102_Text_1A17C0, 5 @@ -116,24 +116,24 @@ Route102_EventScript_1A161D:: @ 81A161D playfanfare 387 waitmessage waitfanfare - waitbutton + waitbuttonpress message Route102_Text_1A181A waitmessage - waitbutton + waitbuttonpress release end Route102_EventScript_1A1642:: @ 81A1642 message Route102_Text_1A1881 waitmessage - waitbutton + waitbuttonpress release end Route102_EventScript_1A164B:: @ 81A164B message Route102_Text_1A18C5 waitmessage - waitbutton + waitbuttonpress release end @@ -170,7 +170,7 @@ Route102_EventScript_1A1693:: @ 81A1693 waitstate message Route102_Text_1A1925 waitmessage - waitbutton + waitbuttonpress releaseall end @@ -179,5 +179,5 @@ Route102_EventScript_1A16A9:: @ 81A16A9 incrementgamestat GAME_STAT_PLANTED_BERRIES message Route102_Text_1A16FB waitmessage - waitbutton + waitbuttonpress return diff --git a/data/scripts/cable_club.inc b/data/scripts/cable_club.inc index 60ce36e43..0cedcd0d5 100644 --- a/data/scripts/cable_club.inc +++ b/data/scripts/cable_club.inc @@ -52,15 +52,15 @@ VerdanturfTown_PokemonCenter_2F_MapScript1_1A3D32:: @ 81A3D32 end OldaleTown_PokemonCenter_2F_EventScript_1A3D6A:: @ 81A3D6A - setmaptile 5, 3, 514, 0 + setmetatile 5, 3, 514, 0 end OldaleTown_PokemonCenter_2F_EventScript_1A3D74:: @ 81A3D74 - setmaptile 8, 3, 514, 0 + setmetatile 8, 3, 514, 0 end OldaleTown_PokemonCenter_2F_EventScript_1A3D7E:: @ 81A3D7E - setmaptile 11, 3, 514, 0 + setmetatile 11, 3, 514, 0 end DewfordTown_PokemonCenter_2F_MapScript2_1A3D88:: @ 81A3D88 @@ -119,7 +119,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A3E0C:: @ 81A3E0C OldaleTown_PokemonCenter_2F_EventScript_1A3E17:: @ 81A3E17 lockall call OldaleTown_PokemonCenter_2F_EventScript_1A3E30 - setmaptile 8, 3, 605, 1 + setmetatile 8, 3, 605, 1 special DrawWholeMapView erasebox 0, 0, 29, 19 releaseall @@ -147,14 +147,14 @@ OldaleTown_PokemonCenter_2F_EventScript_1A3E30:: @ 81A3E30 OldaleTown_PokemonCenter_2F_EventScript_1A3E7B:: @ 81A3E7B call OldaleTown_PokemonCenter_2F_EventScript_1A3DB2 - setmaptile 11, 3, 605, 1 + setmetatile 11, 3, 605, 1 special DrawWholeMapView end OldaleTown_PokemonCenter_2F_EventScript_1A3E8D:: @ 81A3E8D lockall call OldaleTown_PokemonCenter_2F_EventScript_1A3DDA - setmaptile 5, 3, 605, 1 + setmetatile 5, 3, 605, 1 special DrawWholeMapView erasebox 0, 0, 29, 19 releaseall @@ -221,7 +221,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A3F5E:: @ 81A3F5E copyvar 0x4087, 0x8004 messageautoscroll OldaleTown_PokemonCenter_2F_Text_1A4A22 waitmessage - setmaptile 5, 3, 514, 0 + setmetatile 5, 3, 514, 0 special DrawWholeMapView delay 60 applymovement LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356 @@ -233,7 +233,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A3F5E:: @ 81A3F5E waitdooranim applymovement 255, OldaleTown_PokemonCenter_2F_Movement_1A435F waitmovement 0 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY closedoor 5, 1 waitdooranim release @@ -255,7 +255,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A3FCD:: @ 81A3FCD OldaleTown_PokemonCenter_2F_EventScript_1A3FDD:: @ 81A3FDD message OldaleTown_PokemonCenter_2F_Text_1A4696 waitmessage - waitbutton + waitbuttonpress message OldaleTown_PokemonCenter_2F_Text_1A4826 waitmessage goto OldaleTown_PokemonCenter_2F_EventScript_1A3EBC @@ -289,7 +289,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4042:: @ 81A4042 OldaleTown_PokemonCenter_2F_EventScript_1A4056:: @ 81A4056 message OldaleTown_PokemonCenter_2F_Text_1A486A waitmessage - waitbutton + waitbuttonpress goto OldaleTown_PokemonCenter_2F_EventScript_1A3FEF OldaleTown_PokemonCenter_2F_EventScript_1A4062:: @ 81A4062 @@ -307,28 +307,28 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4093:: @ 81A4093 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4C03 waitmessage - waitbutton + waitbuttonpress goto OldaleTown_PokemonCenter_2F_EventScript_1A40C0 OldaleTown_PokemonCenter_2F_EventScript_1A40A2:: @ 81A40A2 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4BCC waitmessage - waitbutton + waitbuttonpress goto OldaleTown_PokemonCenter_2F_EventScript_1A40C0 OldaleTown_PokemonCenter_2F_EventScript_1A40B1:: @ 81A40B1 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4B95 waitmessage - waitbutton + waitbuttonpress goto OldaleTown_PokemonCenter_2F_EventScript_1A40C0 OldaleTown_PokemonCenter_2F_EventScript_1A40C0:: @ 81A40C0 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4C38 waitmessage - waitbutton + waitbuttonpress release end @@ -386,7 +386,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4166:: @ 81A4166 copyvar 0x4087, 0x8004 messageautoscroll OldaleTown_PokemonCenter_2F_Text_1A4A22 waitmessage - setmaptile 8, 3, 514, 0 + setmetatile 8, 3, 514, 0 special DrawWholeMapView delay 60 applymovement LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356 @@ -398,7 +398,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4166:: @ 81A4166 waitdooranim applymovement 255, OldaleTown_PokemonCenter_2F_Movement_1A435F waitmovement 0 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY closedoor 8, 1 waitdooranim release @@ -417,14 +417,14 @@ OldaleTown_PokemonCenter_2F_EventScript_1A41BB:: @ 81A41BB OldaleTown_PokemonCenter_2F_EventScript_1A41E1:: @ 81A41E1 message OldaleTown_PokemonCenter_2F_Text_1A48A3 waitmessage - waitbutton + waitbuttonpress setvar RESULT, 0 return OldaleTown_PokemonCenter_2F_EventScript_1A41EE:: @ 81A41EE message OldaleTown_PokemonCenter_2F_Text_1A48DD waitmessage - waitbutton + waitbuttonpress setvar RESULT, 0 return @@ -484,7 +484,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4294:: @ 81A4294 copyvar 0x4087, 0x8004 messageautoscroll OldaleTown_PokemonCenter_2F_Text_1A4A22 waitmessage - setmaptile 11, 3, 514, 0 + setmetatile 11, 3, 514, 0 special DrawWholeMapView delay 60 applymovement LAST_TALKED, OldaleTown_PokemonCenter_2F_Movement_1A4356 @@ -496,7 +496,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4294:: @ 81A4294 waitdooranim applymovement 255, OldaleTown_PokemonCenter_2F_Movement_1A435F waitmovement 0 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY closedoor 11, 1 waitdooranim release @@ -506,7 +506,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A42E9:: @ 81A42E9 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4AC8 waitmessage - waitbutton + waitbuttonpress release end @@ -514,7 +514,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A42F5:: @ 81A42F5 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4A85 waitmessage - waitbutton + waitbuttonpress release end @@ -522,7 +522,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4301:: @ 81A4301 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4A30 waitmessage - waitbutton + waitbuttonpress release end @@ -530,7 +530,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A430D:: @ 81A430D special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4B1D waitmessage - waitbutton + waitbuttonpress release end @@ -538,7 +538,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A4319:: @ 81A4319 special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4B59 waitmessage - waitbutton + waitbuttonpress release end @@ -552,7 +552,7 @@ OldaleTown_PokemonCenter_2F_EventScript_1A432D:: @ 81A432D special CloseLink message OldaleTown_PokemonCenter_2F_Text_1A4B6C waitmessage - waitbutton + waitbuttonpress release end @@ -598,7 +598,7 @@ OldaleTown_PokemonCenter_2F_Movement_1A4361:: @ 81A4361 gUnknown_081A4363:: @ 81A4363 lockall special ShowLinkBattleRecords - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -719,17 +719,17 @@ RecordCorner_EventScript_1A4457:: @ 81A4457 end RecordCorner_EventScript_1A446C:: @ 81A446C - getitemname 1, 0x4001 + bufferitemname 1, 0x4001 message RecordCorner_Text_1A4E3B waitmessage - waitbutton + waitbuttonpress releaseall end TradeRoom_ReadTrainerCard1:: @ 81A4479 message CableClub_LookAtTrainerCard1 waitmessage - waitbutton + waitbuttonpress fadescreen 1 special sub_8083BDC waitstate @@ -738,7 +738,7 @@ TradeRoom_ReadTrainerCard1:: @ 81A4479 TradeRoom_ReadTrainerCard2:: @ 81A4487 message CableClub_LookAtTrainerCard2 waitmessage - waitbutton + waitbuttonpress fadescreen 1 special sub_8083BDC waitstate @@ -747,7 +747,7 @@ TradeRoom_ReadTrainerCard2:: @ 81A4487 TradeRoom_TooBusyToNotice:: @ 81A4495 message CableClub_TooBusyToNotice waitmessage - waitbutton + waitbuttonpress closemessage end @@ -755,7 +755,7 @@ SingleBattleColosseum_EventScript_1A449E:: @ 81A449E special sub_8064EAC message SingleBattleColosseum_Text_1A4D7E waitmessage - waitbutton + waitbuttonpress special sub_8064ED4 closemessage end @@ -764,7 +764,7 @@ TradeCenter_EventScript_1A44AD:: @ 81A44AD special sub_8064EAC message TradeCenter_Text_1A4DAB waitmessage - waitbutton + waitbuttonpress special sub_8064ED4 closemessage end @@ -775,7 +775,7 @@ RecordCorner_EventScript_1A44BC:: @ 81A44BC special sub_8064EAC message RecordCorner_Text_1A4DD7 waitmessage - waitbutton + waitbuttonpress special sub_8064ED4 closemessage end @@ -784,7 +784,7 @@ RecordCorner_EventScript_1A44D6:: @ 81A44D6 special sub_8064EAC message RecordCorner_Text_1A4DF7 waitmessage - waitbutton + waitbuttonpress special sub_8064ED4 closemessage end diff --git a/data/scripts/contest_hall.inc b/data/scripts/contest_hall.inc index bc87b9a4e..50202c7d6 100644 --- a/data/scripts/contest_hall.inc +++ b/data/scripts/contest_hall.inc @@ -11,7 +11,7 @@ VerdanturfTown_ContestLobby_EventScript_1A4E92:: @ 81A4E92 goto_if 5, FallarborTown_ContestLobby_EventScript_1A4F4E checkflag FLAG_TEMP_1 goto_if_eq FallarborTown_ContestLobby_EventScript_1A4F8F - getstdstring 0, 0x800b + bufferstdstring 0, 0x800b msgbox FallarborTown_ContestLobby_Text_1A5DFC, 4 checkitem ITEM_CONTEST_PASS, 1 compare RESULT, 0 @@ -43,7 +43,7 @@ FallarborTown_ContestLobby_EventScript_1A4F13:: @ 81A4F13 checkflag FLAG_RECEIVED_CONTEST_PASS goto_if_eq FallarborTown_ContestLobby_EventScript_1A4F44 msgbox FallarborTown_ContestLobby_Text_1A6583, 4 - giveitem ITEM_CONTEST_PASS + giveitem_std ITEM_CONTEST_PASS setflag FLAG_RECEIVED_CONTEST_PASS setflag FLAG_TEMP_1 msgbox FallarborTown_ContestLobby_Text_1A5E98, 4 @@ -62,7 +62,7 @@ FallarborTown_ContestLobby_EventScript_1A4F4E:: @ 81A4F4E end FallarborTown_ContestLobby_EventScript_1A4F67:: @ 81A4F67 - giveitem ITEM_LUXURY_BALL + giveitem_std ITEM_LUXURY_BALL compare RESULT, 0 goto_if_eq FallarborTown_ContestLobby_EventScript_1A4F86 setvar 0x408a, 0 @@ -119,7 +119,7 @@ FallarborTown_ContestLobby_EventScript_1A503E:: @ 81A503E FallarborTown_ContestLobby_EventScript_1A5048:: @ 81A5048 msgbox FallarborTown_ContestLobby_Text_1A6319, 4 - choosecontestpkmn + choosecontestmon compare 0x8004, 255 goto_if_eq FallarborTown_ContestLobby_EventScript_1A5097 special sub_80C43F4 @@ -260,8 +260,8 @@ LinkContestRoom1_EventScript_1A523F:: @ 81A523F return LinkContestRoom1_EventScript_1A5245:: @ 81A5245 - getstdstring 1, 0x8008 - getstdstring 2, 0x8009 + bufferstdstring 1, 0x8008 + bufferstdstring 2, 0x8009 call LinkContestRoom1_EventScript_1A525F lockall applymovement 1, LinkContestRoom1_Movement_1A5D87 @@ -339,7 +339,7 @@ LinkContestRoom1_EventScript_1A5311:: @ 81A5311 LinkContestRoom1_EventScript_1A5323:: @ 81A5323 special sub_80C4C64 addvar 0x8006, 1 - getnumberstring 1, 0x8006 + buffernumberstring 1, 0x8006 lockall applymovement 0x800b, LinkContestRoom1_Movement_1A5D9C waitmovement 0 @@ -885,7 +885,7 @@ LinkContestRoom1_EventScript_1A5A49:: @ 81A5A49 special sub_80C47F0 special sub_80C4858 addvar 0x8005, 1 - getnumberstring 1, 0x8005 + buffernumberstring 1, 0x8005 addvar 0x8005, -1 call LinkContestRoom1_EventScript_1A5A75 applymovement 0x4003, LinkContestRoom1_Movement_1A5D99 @@ -1134,7 +1134,7 @@ LinkContestRoom1_EventScript_1A5D2D:: @ 81A5D2D return LinkContestRoom1_EventScript_1A5D3B:: @ 81A5D3B - giveitem ITEM_LUXURY_BALL + giveitem_std ITEM_LUXURY_BALL compare RESULT, 0 goto_if_eq LinkContestRoom1_EventScript_1A5D2D msgbox LinkContestRoom1_Text_1A6DF1, 3 diff --git a/data/scripts/day_care.inc b/data/scripts/day_care.inc index a09e47810..fd3273c78 100644 --- a/data/scripts/day_care.inc +++ b/data/scripts/day_care.inc @@ -39,7 +39,7 @@ Route117_EventScript_1B22B2:: @ 81B22B2 playfanfare 367 waitfanfare waitmessage - waitbutton + waitbuttonpress msgbox Route117_Text_1B27CD, 4 special GiveEggFromDaycare clearflag FLAG_PENDING_DAYCARE_EGG @@ -70,7 +70,7 @@ Route117_EventScript_1B22FE:: @ 81B22FE special SetDaycareCompatibilityString special ShowFieldMessageStringVar4 waitmessage - waitbutton + waitbuttonpress setvar 0x8004, 0 call Route117_EventScript_1B22CD setvar 0x8004, 1 @@ -110,9 +110,9 @@ Route117_PokemonDayCare_EventScript_1B236C:: @ 81B236C goto_if_eq Route117_PokemonDayCare_EventScript_1B23FD specialvar 0x8005, GetSelectedDaycareMonNickname waitse - playpokecry 0x8005, 0 + playmoncry 0x8005, 0 msgbox Route117_PokemonDayCare_Text_1B296E, 4 - waitpokecry + waitmoncry special StoreSelectedPokemonInDaycare incrementgamestat GAME_STAT_USED_DAYCARE specialvar RESULT, GetDaycareState @@ -211,9 +211,9 @@ Route117_PokemonDayCare_EventScript_1B24DE:: @ 81B24DE playse 95 msgbox Route117_PokemonDayCare_Text_1B2B75, 4 waitse - playpokecry RESULT, 0 + playmoncry RESULT, 0 msgbox Route117_PokemonDayCare_Text_1B2B93, 4 - waitpokecry + waitmoncry specialvar RESULT, GetDaycareState compare RESULT, 2 goto_if_eq Route117_PokemonDayCare_EventScript_1B2520 diff --git a/data/scripts/maps/AbandonedShip_Corridors_B1F.inc b/data/scripts/maps/AbandonedShip_Corridors_B1F.inc index 1bc38a099..c27951abb 100644 --- a/data/scripts/maps/AbandonedShip_Corridors_B1F.inc +++ b/data/scripts/maps/AbandonedShip_Corridors_B1F.inc @@ -15,11 +15,11 @@ AbandonedShip_Corridors_B1F_MapScript1_15E9A3:: @ 815E9A3 end AbandonedShip_Corridors_B1F_EventScript_15E9B6:: @ 815E9B6 - setmaptile 11, 4, 563, 1 + setmetatile 11, 4, 563, 1 return AbandonedShip_Corridors_B1F_EventScript_15E9C0:: @ 815E9C0 - setmaptile 11, 4, 555, 1 + setmetatile 11, 4, 555, 1 return AbandonedShip_Corridors_B1F_EventScript_15E9CA:: @ 815E9CA @@ -35,7 +35,7 @@ AbandonedShip_Corridors_B1F_EventScript_15E9D3:: @ 815E9D3 goto_if_eq AbandonedShip_Corridors_B1F_EventScript_15EA0A msgbox AbandonedShip_Corridors_B1F_Text_198692, 4 playse 21 - removeitem ITEM_STORAGE_KEY, 1 + takeitem ITEM_STORAGE_KEY, 1 setflag FLAG_USED_STORAGE_KEY call AbandonedShip_Corridors_B1F_EventScript_15E9C0 special DrawWholeMapView diff --git a/data/scripts/maps/AbandonedShip_HiddenFloorCorridors.inc b/data/scripts/maps/AbandonedShip_HiddenFloorCorridors.inc index b09a6e5f1..35e86543b 100644 --- a/data/scripts/maps/AbandonedShip_HiddenFloorCorridors.inc +++ b/data/scripts/maps/AbandonedShip_HiddenFloorCorridors.inc @@ -27,35 +27,35 @@ AbandonedShip_HiddenFloorCorridors_MapScript1_15EB5A:: @ 815EB5A end AbandonedShip_HiddenFloorCorridors_EventScript_15EBA3:: @ 815EBA3 - setmaptile 3, 8, 555, 1 + setmetatile 3, 8, 555, 1 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBAD:: @ 815EBAD - setmaptile 6, 8, 555, 1 + setmetatile 6, 8, 555, 1 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBB7:: @ 815EBB7 - setmaptile 3, 3, 538, 0 + setmetatile 3, 3, 538, 0 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBC1:: @ 815EBC1 - setmaptile 9, 3, 538, 0 + setmetatile 9, 3, 538, 0 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBCB:: @ 815EBCB - setmaptile 3, 8, 563, 1 + setmetatile 3, 8, 563, 1 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBD5:: @ 815EBD5 - setmaptile 6, 8, 563, 1 + setmetatile 6, 8, 563, 1 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBDF:: @ 815EBDF - setmaptile 3, 3, 564, 0 + setmetatile 3, 3, 564, 0 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBE9:: @ 815EBE9 - setmaptile 9, 3, 564, 0 + setmetatile 9, 3, 564, 0 return AbandonedShip_HiddenFloorCorridors_EventScript_15EBF3:: @ 815EBF3 @@ -67,7 +67,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_15EBF3:: @ 815EBF3 goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_15ECCF msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4 playse 21 - removeitem ITEM_ROOM_1_KEY, 1 + takeitem ITEM_ROOM_1_KEY, 1 setflag FLAG_USED_ROOM_1_KEY call AbandonedShip_HiddenFloorCorridors_EventScript_15EBA3 special DrawWholeMapView @@ -83,7 +83,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_15EC2A:: @ 815EC2A goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_15ECD9 msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4 playse 21 - removeitem ITEM_ROOM_2_KEY, 1 + takeitem ITEM_ROOM_2_KEY, 1 setflag FLAG_USED_ROOM_2_KEY call AbandonedShip_HiddenFloorCorridors_EventScript_15EBAD special DrawWholeMapView @@ -99,7 +99,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_15EC61:: @ 815EC61 goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_15ECE3 msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4 playse 21 - removeitem ITEM_ROOM_4_KEY, 1 + takeitem ITEM_ROOM_4_KEY, 1 setflag FLAG_USED_ROOM_4_KEY call AbandonedShip_HiddenFloorCorridors_EventScript_15EBB7 special DrawWholeMapView @@ -115,7 +115,7 @@ AbandonedShip_HiddenFloorCorridors_EventScript_15EC98:: @ 815EC98 goto_if_eq AbandonedShip_HiddenFloorCorridors_EventScript_15ECED msgbox AbandonedShip_HiddenFloorCorridors_Text_198E90, 4 playse 21 - removeitem ITEM_ROOM_6_KEY, 1 + takeitem ITEM_ROOM_6_KEY, 1 setflag FLAG_USED_ROOM_6_KEY call AbandonedShip_HiddenFloorCorridors_EventScript_15EBC1 special DrawWholeMapView diff --git a/data/scripts/maps/AbandonedShip_HiddenFloorRooms.inc b/data/scripts/maps/AbandonedShip_HiddenFloorRooms.inc index eb5c1dccd..c1e77a8c7 100644 --- a/data/scripts/maps/AbandonedShip_HiddenFloorRooms.inc +++ b/data/scripts/maps/AbandonedShip_HiddenFloorRooms.inc @@ -39,9 +39,9 @@ AbandonedShip_HiddenFloorRooms_EventScript_15ED95:: @ 815ED95 AbandonedShip_HiddenFloorRooms_EventScript_15ED9B:: @ 815ED9B delay 20 - setfieldeffect 0, 10 - setfieldeffect 1, 10 - setfieldeffect 2, 0 + setfieldeffectargument 0, 10 + setfieldeffectargument 1, 10 + setfieldeffectargument 2, 0 dofieldeffect 54 specialvar RESULT, sub_810F4D4 compare RESULT, 0 @@ -69,13 +69,13 @@ AbandonedShip_HiddenFloorRooms_EventScript_15EDEA:: @ 815EDEA AbandonedShip_HiddenFloorRooms_EventScript_15EDEB:: @ 815EDEB delay 20 - setfieldeffect 0, 8 - setfieldeffect 1, 5 - setfieldeffect 2, 0 + setfieldeffectargument 0, 8 + setfieldeffectargument 1, 5 + setfieldeffectargument 2, 0 dofieldeffect 54 - setfieldeffect 0, 11 - setfieldeffect 1, 3 - setfieldeffect 2, 0 + setfieldeffectargument 0, 11 + setfieldeffectargument 1, 3 + setfieldeffectargument 2, 0 dofieldeffect 54 specialvar RESULT, sub_810F4FC compare RESULT, 0 @@ -86,17 +86,17 @@ AbandonedShip_HiddenFloorRooms_EventScript_15EDEB:: @ 815EDEB AbandonedShip_HiddenFloorRooms_EventScript_15EE23:: @ 815EE23 delay 20 - setfieldeffect 0, 16 - setfieldeffect 1, 3 - setfieldeffect 2, 0 + setfieldeffectargument 0, 16 + setfieldeffectargument 1, 3 + setfieldeffectargument 2, 0 dofieldeffect 54 - setfieldeffect 0, 25 - setfieldeffect 1, 2 - setfieldeffect 2, 0 + setfieldeffectargument 0, 25 + setfieldeffectargument 1, 2 + setfieldeffectargument 2, 0 dofieldeffect 54 - setfieldeffect 0, 24 - setfieldeffect 1, 6 - setfieldeffect 2, 0 + setfieldeffectargument 0, 24 + setfieldeffectargument 1, 6 + setfieldeffectargument 2, 0 dofieldeffect 54 specialvar RESULT, sub_810F4B0 compare RESULT, 0 @@ -109,30 +109,30 @@ AbandonedShip_HiddenFloorRooms_EventScript_15EE6A:: @ 815EE6A end AbandonedShip_HiddenFloorRooms_EventScript_15EE6B:: @ 815EE6B - setfieldeffect 0, 42 - setfieldeffect 1, 10 - setfieldeffect 2, 0 + setfieldeffectargument 0, 42 + setfieldeffectargument 1, 10 + setfieldeffectargument 2, 0 dofieldeffect 54 return AbandonedShip_HiddenFloorRooms_EventScript_15EE7B:: @ 815EE7B - setfieldeffect 0, 20 - setfieldeffect 1, 5 - setfieldeffect 2, 0 + setfieldeffectargument 0, 20 + setfieldeffectargument 1, 5 + setfieldeffectargument 2, 0 dofieldeffect 54 return AbandonedShip_HiddenFloorRooms_EventScript_15EE8B:: @ 815EE8B - setfieldeffect 0, 1 - setfieldeffect 1, 12 - setfieldeffect 2, 0 + setfieldeffectargument 0, 1 + setfieldeffectargument 1, 12 + setfieldeffectargument 2, 0 dofieldeffect 54 return AbandonedShip_HiddenFloorRooms_EventScript_15EE9B:: @ 815EE9B - setfieldeffect 0, 1 - setfieldeffect 1, 2 - setfieldeffect 2, 0 + setfieldeffectargument 0, 1 + setfieldeffectargument 1, 2 + setfieldeffectargument 2, 0 dofieldeffect 54 return diff --git a/data/scripts/maps/AncientTomb.inc b/data/scripts/maps/AncientTomb.inc index 268563660..b849f41ba 100644 --- a/data/scripts/maps/AncientTomb.inc +++ b/data/scripts/maps/AncientTomb.inc @@ -23,12 +23,12 @@ AncientTomb_MapScript1_15EFE0:: @ 815EFE0 end AncientTomb_EventScript_15EFEA:: @ 815EFEA - setmaptile 7, 19, 553, 1 - setmaptile 8, 19, 553, 1 - setmaptile 9, 19, 553, 1 - setmaptile 7, 20, 565, 1 - setmaptile 8, 20, 565, 1 - setmaptile 9, 20, 565, 1 + setmetatile 7, 19, 553, 1 + setmetatile 8, 19, 553, 1 + setmetatile 9, 19, 553, 1 + setmetatile 7, 20, 565, 1 + setmetatile 8, 20, 565, 1 + setmetatile 9, 20, 565, 1 return AncientTomb_EventScript_15F021:: @ 815F021 @@ -36,7 +36,7 @@ AncientTomb_EventScript_15F021:: @ 815F021 checkflag FLAG_SYS_BRAILLE_FLY goto_if_eq AncientTomb_EventScript_15F038 braillemessage AncientTomb_Braille_1C552E - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -49,7 +49,7 @@ AncientTomb_EventScript_15F038:: @ 815F038 AncientTomb_EventScript_15F042:: @ 815F042 lockall braillemessage AncientTomb_Braille_1C552E - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -58,9 +58,9 @@ AncientTomb_EventScript_15F050:: @ 815F050 lock faceplayer waitse - playpokecry SPECIES_REGISTEEL, 2 + playmoncry SPECIES_REGISTEEL, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_REGISTEEL, 40, ITEM_NONE setflag FLAG_HIDE_REGISTEEL setflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/scripts/maps/BattleTower_Corridor.inc b/data/scripts/maps/BattleTower_Corridor.inc index ac97aa14b..828d975fc 100644 --- a/data/scripts/maps/BattleTower_Corridor.inc +++ b/data/scripts/maps/BattleTower_Corridor.inc @@ -6,13 +6,13 @@ BattleTower_Corridor_MapScripts:: @ 8160845 BattleTower_Corridor_MapScript1_160850:: @ 8160850 compare 0x8006, 1 goto_if_eq BattleTower_Corridor_EventScript_16086E - setmaptile 12, 0, 519, 0 - setmaptile 12, 1, 527, 0 + setmetatile 12, 0, 519, 0 + setmetatile 12, 1, 527, 0 end BattleTower_Corridor_EventScript_16086E:: @ 816086E - setmaptile 15, 0, 519, 0 - setmaptile 15, 1, 527, 0 + setmetatile 15, 0, 519, 0 + setmetatile 15, 1, 527, 0 end BattleTower_Corridor_MapScript2_160881:: @ 8160881 diff --git a/data/scripts/maps/BattleTower_Lobby.inc b/data/scripts/maps/BattleTower_Lobby.inc index 2186c8534..69db45ede 100644 --- a/data/scripts/maps/BattleTower_Lobby.inc +++ b/data/scripts/maps/BattleTower_Lobby.inc @@ -379,7 +379,7 @@ BattleTower_Lobby_EventScript_16071E:: @ 816071E BattleTower_Lobby_EventScript_160727:: @ 8160727 lockall special ShowBattleTowerRecords - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -393,7 +393,7 @@ BattleTower_Lobby_EventScript_160733:: @ 8160733 goto_if_eq BattleTower_Lobby_EventScript_160773 msgbox BattleTower_Lobby_Text_19A9EE, 4 setvar 0x8008, DECOR_SILVER_SHIELD - givedecoration DECOR_SILVER_SHIELD + givedecoration_std DECOR_SILVER_SHIELD compare RESULT, 0 goto_if_eq BattleTower_Lobby_EventScript_1607AF setflag FLAG_RECEIVED_SILVER_SHIELD @@ -407,7 +407,7 @@ BattleTower_Lobby_EventScript_160773:: @ 8160773 goto_if 0, BattleTower_Lobby_EventScript_1607C5 msgbox BattleTower_Lobby_Text_19AAC4, 4 setvar 0x8008, DECOR_GOLD_SHIELD - givedecoration DECOR_GOLD_SHIELD + givedecoration_std DECOR_GOLD_SHIELD compare RESULT, 0 goto_if_eq BattleTower_Lobby_EventScript_1607AF setflag FLAG_RECEIVED_GOLD_SHIELD @@ -416,7 +416,7 @@ BattleTower_Lobby_EventScript_160773:: @ 8160773 end BattleTower_Lobby_EventScript_1607AF:: @ 81607AF - getdecorname 1, 0x8008 + bufferdecorationname 1, 0x8008 msgbox BattleTower_Lobby_Text_1A0CEF, 4 msgbox BattleTower_Lobby_Text_19ABED, 4 release diff --git a/data/scripts/maps/BattleTower_Outside.inc b/data/scripts/maps/BattleTower_Outside.inc index 1a254f7df..e0aba0b9c 100644 --- a/data/scripts/maps/BattleTower_Outside.inc +++ b/data/scripts/maps/BattleTower_Outside.inc @@ -67,7 +67,7 @@ BattleTower_Outside_EventScript_160232:: @ 8160232 applymovement LAST_TALKED, BattleTower_Outside_Movement_1A0845 waitmovement 0 delay 30 - hideobject 5, 26, 4 + hideobjectat 5, MAP_BATTLE_TOWER_OUTSIDE setvar 0x8004, 4 call BattleTower_Outside_EventScript_1A047C return diff --git a/data/scripts/maps/CaveOfOrigin_B4F.inc b/data/scripts/maps/CaveOfOrigin_B4F.inc index a2067fe60..1b5146760 100644 --- a/data/scripts/maps/CaveOfOrigin_B4F.inc +++ b/data/scripts/maps/CaveOfOrigin_B4F.inc @@ -38,9 +38,9 @@ CaveOfOrigin_B4F_EventScript_15DDD7:: @ 815DDD7 special WaitWeather waitstate playse 209 - setfieldeffect 0, 9 - setfieldeffect 1, 13 - setfieldeffect 2, 0 + setfieldeffectargument 0, 9 + setfieldeffectargument 1, 13 + setfieldeffectargument 2, 0 dofieldeffect 54 waitfieldeffect 54 .ifdef SAPPHIRE @@ -58,9 +58,9 @@ CaveOfOrigin_B4F_EventScript_15DDD7:: @ 815DDD7 delay 60 setwildbattle SPECIES_GROUDON_OR_KYOGRE, 45, ITEM_NONE waitse - playpokecry SPECIES_GROUDON_OR_KYOGRE, 2 + playmoncry SPECIES_GROUDON_OR_KYOGRE, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_SYS_CTRL_OBJ_DELETE special ScrSpecial_StartGroudonKyogreBattle waitstate diff --git a/data/scripts/maps/DesertRuins.inc b/data/scripts/maps/DesertRuins.inc index c767dd7e7..7aa56a82d 100644 --- a/data/scripts/maps/DesertRuins.inc +++ b/data/scripts/maps/DesertRuins.inc @@ -19,12 +19,12 @@ DesertRuins_MapScript1_15CB11:: @ 815CB11 end DesertRuins_EventScript_15CB1B:: @ 815CB1B - setmaptile 7, 19, 553, 1 - setmaptile 8, 19, 553, 1 - setmaptile 9, 19, 553, 1 - setmaptile 7, 20, 565, 1 - setmaptile 8, 20, 565, 1 - setmaptile 9, 20, 565, 1 + setmetatile 7, 19, 553, 1 + setmetatile 8, 19, 553, 1 + setmetatile 9, 19, 553, 1 + setmetatile 7, 20, 565, 1 + setmetatile 8, 20, 565, 1 + setmetatile 9, 20, 565, 1 return DesertRuins_MapScript1_15CB52:: @ 815CB52 @@ -36,7 +36,7 @@ DesertRuins_EventScript_15CB56:: @ 815CB56 checkflag FLAG_SYS_BRAILLE_STRENGTH goto_if_eq DesertRuins_EventScript_15CB6D braillemessage DesertRuins_Braille_1C54C8 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -49,7 +49,7 @@ DesertRuins_EventScript_15CB6D:: @ 815CB6D DesertRuins_EventScript_15CB77:: @ 815CB77 lockall braillemessage DesertRuins_Braille_1C54C8 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -58,9 +58,9 @@ DesertRuins_EventScript_15CB85:: @ 815CB85 lock faceplayer waitse - playpokecry SPECIES_REGIROCK, 2 + playmoncry SPECIES_REGIROCK, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_REGIROCK, 40, ITEM_NONE setflag FLAG_HIDE_REGIROCK setflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/scripts/maps/DewfordTown.inc b/data/scripts/maps/DewfordTown.inc index 3d3240e81..bb1fdeda4 100644 --- a/data/scripts/maps/DewfordTown.inc +++ b/data/scripts/maps/DewfordTown.inc @@ -85,7 +85,7 @@ DewfordTown_EventScript_14E0C6:: @ 814E0C6 DewfordTown_EventScript_14E0F0:: @ 814E0F0 msgbox DewfordTown_Text_16B6A8, 4 - giveitem ITEM_OLD_ROD + giveitem_std ITEM_OLD_ROD setflag FLAG_RECEIVED_OLD_ROD msgbox DewfordTown_Text_16B6F9, 4 release @@ -118,30 +118,30 @@ DewfordTown_EventScript_14E147:: @ 814E147 DewfordTown_EventScript_14E151:: @ 814E151 call DewfordTown_EventScript_1A010C - setobjectpriority 2, 0, 11, 0 - setobjectpriority 255, 0, 11, 0 + setobjectpriority 2, MAP_DEWFORD_TOWN, 0 + setobjectpriority 255, MAP_DEWFORD_TOWN, 0 applymovement 2, DewfordTown_Movement_14E40E waitmovement 0 removeobject 2 applymovement 255, DewfordTown_Movement_14E402 waitmovement 0 - hideobject 255, 0, 11 + hideobjectat 255, MAP_DEWFORD_TOWN call DewfordTown_EventScript_1A02E7 applymovement 4, DewfordTown_Movement_14E293 applymovement 255, DewfordTown_Movement_14E293 waitmovement 0 - showobject 255, 0, 19 + showobjectat 255, MAP_ROUTE104 call DewfordTown_EventScript_1A02EF applymovement 255, DewfordTown_Movement_14E405 waitmovement 0 - showobject 255, 0, 19 + showobjectat 255, MAP_ROUTE104 clearflag FLAG_HIDE_MR_BRINEY_ROUTE104_HOUSE clearflag FLAG_HIDE_PEEKO_BRINEY_HOUSE clearflag FLAG_HIDE_MR_BRINEY_BOAT_ROUTE104 setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD - hideobject 4, 0, 11 + hideobjectat 4, MAP_DEWFORD_TOWN setvar 0x408e, 2 - resetobjectpriority 255, 0, 11 + resetobjectpriority 255, MAP_DEWFORD_TOWN warp MAP_ROUTE104_MR_BRINEYS_HOUSE, 255, 5, 4 copyvar 0x4096, 0x8008 waitstate @@ -150,40 +150,40 @@ DewfordTown_EventScript_14E151:: @ 814E151 DewfordTown_EventScript_14E1D8:: @ 814E1D8 call DewfordTown_EventScript_1A010C - setobjectpriority 2, 0, 11, 0 - setobjectpriority 255, 0, 11, 1 + setobjectpriority 2, MAP_DEWFORD_TOWN, 0 + setobjectpriority 255, MAP_DEWFORD_TOWN, 1 applymovement 2, DewfordTown_Movement_14E40E waitmovement 0 removeobject 2 applymovement 255, DewfordTown_Movement_14E402 waitmovement 0 - hideobject 255, 0, 11 + hideobjectat 255, MAP_DEWFORD_TOWN call DewfordTown_EventScript_1A02E7 applymovement 4, DewfordTown_Movement_14E356 applymovement 255, DewfordTown_Movement_14E356 waitmovement 0 call DewfordTown_EventScript_1A02EF - showobject 255, 0, 24 + showobjectat 255, MAP_ROUTE109 applymovement 255, DewfordTown_Movement_14E409 waitmovement 0 setobjectxyperm 2, 21, 26 addobject 2 - setobjectpriority 2, 0, 24, 0 + setobjectpriority 2, MAP_ROUTE109, 0 applymovement 2, DewfordTown_Movement_14E410 waitmovement 0 clearflag FLAG_HIDE_MR_BRINEY_ROUTE109 addobject 1 clearflag FLAG_HIDE_MR_BRINEY_BOAT_ROUTE109 setflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD - hideobject 4, 0, 11 + hideobjectat 4, MAP_DEWFORD_TOWN checkflag FLAG_DELIVERED_DEVON_GOODS call_if 0, DewfordTown_EventScript_14E281 checkflag FLAG_DELIVERED_DEVON_GOODS call_if 1, DewfordTown_EventScript_14E28A closemessage copyvar 0x4096, 0x8008 - resetobjectpriority 255, 0, 11 - resetobjectpriority 2, 0, 24 + resetobjectpriority 255, MAP_DEWFORD_TOWN + resetobjectpriority 2, MAP_ROUTE109 moveobjectoffscreen 2 release end diff --git a/data/scripts/maps/DewfordTown_Gym.inc b/data/scripts/maps/DewfordTown_Gym.inc index cbcb4d5eb..afd918a96 100644 --- a/data/scripts/maps/DewfordTown_Gym.inc +++ b/data/scripts/maps/DewfordTown_Gym.inc @@ -20,23 +20,23 @@ DewfordTown_Gym_EventScript_153071:: @ 8153071 goto DewfordTown_Gym_EventScript_1530AE DewfordTown_Gym_EventScript_1530AA:: @ 81530AA - setdarklevel 0 + setflashradius 0 return DewfordTown_Gym_EventScript_1530AE:: @ 81530AE - setdarklevel 1 + setflashradius 1 return DewfordTown_Gym_EventScript_1530B2:: @ 81530B2 - setdarklevel 2 + setflashradius 2 return DewfordTown_Gym_EventScript_1530B6:: @ 81530B6 - setdarklevel 3 + setflashradius 3 return DewfordTown_Gym_EventScript_1530BA:: @ 81530BA - setdarklevel 4 + setflashradius 4 return DewfordTown_Gym_EventScript_1530BE:: @ 81530BE @@ -57,25 +57,25 @@ DewfordTown_Gym_EventScript_1530F5:: @ 81530F5 DewfordTown_Gym_EventScript_1530F6:: @ 81530F6 playse 35 - animdarklevel 3 + animateflash 3 call DewfordTown_Gym_EventScript_153071 return DewfordTown_Gym_EventScript_153101:: @ 8153101 playse 35 - animdarklevel 2 + animateflash 2 call DewfordTown_Gym_EventScript_153071 return DewfordTown_Gym_EventScript_15310C:: @ 815310C playse 35 - animdarklevel 1 + animateflash 1 call DewfordTown_Gym_EventScript_153071 return DewfordTown_Gym_EventScript_153117:: @ 8153117 playse 35 - animdarklevel 0 + animateflash 0 call DewfordTown_Gym_EventScript_153071 return @@ -123,7 +123,7 @@ DewfordTown_Gym_EventScript_153177:: @ 8153177 end DewfordTown_Gym_EventScript_1531B5:: @ 81531B5 - giveitem ITEM_TM08 + giveitem_std ITEM_TM08 compare RESULT, 0 goto_if_eq DewfordTown_Gym_EventScript_1A029B msgbox DewfordTown_Gym_Text_1753BF, 4 diff --git a/data/scripts/maps/DewfordTown_Hall.inc b/data/scripts/maps/DewfordTown_Hall.inc index 3c0565678..a3830ebb8 100644 --- a/data/scripts/maps/DewfordTown_Hall.inc +++ b/data/scripts/maps/DewfordTown_Hall.inc @@ -255,7 +255,7 @@ DewfordTown_Hall_EventScript_15359D:: @ 815359D checkflag FLAG_RECEIVED_TM36 goto_if_eq DewfordTown_Hall_EventScript_1535D1 msgbox DewfordTown_Hall_Text_175E13, 4 - giveitem ITEM_TM36 + giveitem_std ITEM_TM36 compare RESULT, 0 goto_if_eq DewfordTown_Hall_EventScript_1A029B setflag FLAG_RECEIVED_TM36 diff --git a/data/scripts/maps/DewfordTown_House1.inc b/data/scripts/maps/DewfordTown_House1.inc index e8897b974..4a112eea2 100644 --- a/data/scripts/maps/DewfordTown_House1.inc +++ b/data/scripts/maps/DewfordTown_House1.inc @@ -13,8 +13,8 @@ DewfordTown_House1_EventScript_153001:: @ 8153001 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox DewfordTown_House1_Text_174CC8, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/DewfordTown_House2.inc b/data/scripts/maps/DewfordTown_House2.inc index 29ae58a22..e704efa50 100644 --- a/data/scripts/maps/DewfordTown_House2.inc +++ b/data/scripts/maps/DewfordTown_House2.inc @@ -7,7 +7,7 @@ DewfordTown_House2_EventScript_1535DC:: @ 81535DC checkflag FLAG_RECEIVED_SILK_SCARF goto_if_eq DewfordTown_House2_EventScript_153615 msgbox DewfordTown_House2_Text_175EFE, 4 - giveitem ITEM_SILK_SCARF + giveitem_std ITEM_SILK_SCARF compare RESULT, 0 goto_if_eq DewfordTown_House2_EventScript_15360B setflag FLAG_RECEIVED_SILK_SCARF diff --git a/data/scripts/maps/DewfordTown_PokemonCenter_1F.inc b/data/scripts/maps/DewfordTown_PokemonCenter_1F.inc index 70e75492e..c1288078f 100644 --- a/data/scripts/maps/DewfordTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/DewfordTown_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ DewfordTown_PokemonCenter_1F_MapScripts:: @ 8153014 .byte 0 DewfordTown_PokemonCenter_1F_MapScript1_15301A:: @ 815301A - sethealplace 15 + setrespawn 15 call DewfordTown_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ DewfordTown_PokemonCenter_1F_EventScript_153023:: @ 8153023 setvar 0x800b, 1 call DewfordTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/EverGrandeCity_ChampionsRoom.inc b/data/scripts/maps/EverGrandeCity_ChampionsRoom.inc index ae3cbd4ad..d59476417 100644 --- a/data/scripts/maps/EverGrandeCity_ChampionsRoom.inc +++ b/data/scripts/maps/EverGrandeCity_ChampionsRoom.inc @@ -46,8 +46,8 @@ EverGrandeCity_ChampionsRoom_EventScript_15B805:: @ 815B805 EverGrandeCity_ChampionsRoom_EventScript_15B821:: @ 815B821 playse 8 - setmaptile 6, 1, 838, 0 - setmaptile 6, 2, 839, 0 + setmetatile 6, 1, 838, 0 + setmetatile 6, 2, 839, 0 special DrawWholeMapView msgbox EverGrandeCity_ChampionsRoom_Text_1910FE, 4 closemessage diff --git a/data/scripts/maps/EverGrandeCity_HallOfFame.inc b/data/scripts/maps/EverGrandeCity_HallOfFame.inc index d9baaee89..904dc7531 100644 --- a/data/scripts/maps/EverGrandeCity_HallOfFame.inc +++ b/data/scripts/maps/EverGrandeCity_HallOfFame.inc @@ -51,16 +51,16 @@ EverGrandeCity_HallOfFame_EventScript_15BBA8:: @ 815BBA8 end EverGrandeCity_HallOfFame_EventScript_15BC41:: @ 815BC41 - sethealplace 1 - fadescreendelay 1, 24 + setrespawn 1 + fadescreenspeed 1, 24 special GameClear waitstate releaseall end EverGrandeCity_HallOfFame_EventScript_15BC4D:: @ 815BC4D - sethealplace 2 - fadescreendelay 1, 24 + setrespawn 2 + fadescreenspeed 1, 24 special GameClear waitstate releaseall diff --git a/data/scripts/maps/EverGrandeCity_PokemonCenter_1F.inc b/data/scripts/maps/EverGrandeCity_PokemonCenter_1F.inc index 57262b211..018658416 100644 --- a/data/scripts/maps/EverGrandeCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/EverGrandeCity_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ EverGrandeCity_PokemonCenter_1F_MapScripts:: @ 815BC66 .byte 0 EverGrandeCity_PokemonCenter_1F_MapScript1_15BC6C:: @ 815BC6C - sethealplace 11 + setrespawn 11 end EverGrandeCity_PokemonCenter_1F_EventScript_15BC70:: @ 815BC70 @@ -11,7 +11,7 @@ SootopolisCity_PokemonCenter_1F_EventScript_15BC70:: @ 815BC70 setvar 0x800b, 1 call SootopolisCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/EverGrandeCity_PokemonLeague.inc b/data/scripts/maps/EverGrandeCity_PokemonLeague.inc index a78338808..4a8919b98 100644 --- a/data/scripts/maps/EverGrandeCity_PokemonLeague.inc +++ b/data/scripts/maps/EverGrandeCity_PokemonLeague.inc @@ -3,7 +3,7 @@ EverGrandeCity_PokemonLeague_MapScripts:: @ 815BA75 .byte 0 EverGrandeCity_PokemonLeague_MapScript1_15BA7B:: @ 815BA7B - sethealplace 20 + setrespawn 20 setflag FLAG_SYS_POKEMON_LEAGUE_FLY checkflag FLAG_ENTERED_ELITE_FOUR call_if 0, EverGrandeCity_PokemonLeague_EventScript_15BA8B @@ -18,7 +18,7 @@ EverGrandeCity_PokemonLeague_EventScript_15BA9A:: @ 815BA9A setvar 0x800b, 1 call EverGrandeCity_PokemonLeague_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/FallarborTown.inc b/data/scripts/maps/FallarborTown.inc index 70f3cbc3b..8ea580e28 100644 --- a/data/scripts/maps/FallarborTown.inc +++ b/data/scripts/maps/FallarborTown.inc @@ -35,9 +35,9 @@ FallarborTown_EventScript_14E826:: @ 814E826 lock faceplayer waitse - playpokecry SPECIES_AZURILL, 0 + playmoncry SPECIES_AZURILL, 0 msgbox FallarborTown_Text_16C92C, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/FallarborTown_ContestLobby.inc b/data/scripts/maps/FallarborTown_ContestLobby.inc index b483b0259..72da4cd40 100644 --- a/data/scripts/maps/FallarborTown_ContestLobby.inc +++ b/data/scripts/maps/FallarborTown_ContestLobby.inc @@ -23,14 +23,14 @@ FallarborTown_ContestLobby_EventScript_1539F8:: @ 81539F8 applymovement 1, FallarborTown_ContestLobby_Movement_153A7C waitmovement 0 playse 71 - setmaptile 4, 2, 545, 1 - setmaptile 4, 3, 609, 1 + setmetatile 4, 2, 545, 1 + setmetatile 4, 3, 609, 1 special DrawWholeMapView applymovement 1, FallarborTown_ContestLobby_Movement_153A7F waitmovement 0 playse 71 - setmaptile 4, 2, 721, 1 - setmaptile 4, 3, 729, 1 + setmetatile 4, 2, 721, 1 + setmetatile 4, 3, 729, 1 special DrawWholeMapView delay 20 applymovement 1, FallarborTown_ContestLobby_Movement_153A8C @@ -115,7 +115,7 @@ FallarborTown_ContestLobby_EventScript_153ABB:: @ 8153ABB FallarborTown_ContestLobby_EventScript_153AC2:: @ 8153AC2 lockall special ShowBerryBlenderRecordWindow - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/FallarborTown_House1.inc b/data/scripts/maps/FallarborTown_House1.inc index 6c7509508..17267f926 100644 --- a/data/scripts/maps/FallarborTown_House1.inc +++ b/data/scripts/maps/FallarborTown_House1.inc @@ -25,7 +25,7 @@ FallarborTown_House1_EventScript_153BDA:: @ 8153BDA compare RESULT, 0 goto_if_eq FallarborTown_House1_EventScript_153C47 msgbox FallarborTown_House1_Text_1778C4, 4 - giveitem ITEM_TM27 + giveitem_std ITEM_TM27 compare RESULT, 0 goto_if_eq FallarborTown_House1_EventScript_1A029B setvar 0x8004, 280 diff --git a/data/scripts/maps/FallarborTown_House2.inc b/data/scripts/maps/FallarborTown_House2.inc index c827eea7b..001863d5c 100644 --- a/data/scripts/maps/FallarborTown_House2.inc +++ b/data/scripts/maps/FallarborTown_House2.inc @@ -43,7 +43,7 @@ FallarborTown_House2_EventScript_153D1A:: @ 8153D1A compare 0x8004, 0 goto_if_eq FallarborTown_House2_EventScript_153CE4 msgbox FallarborTown_House2_Text_177CC3, 4 - removeitem ITEM_HEART_SCALE, 1 + takeitem ITEM_HEART_SCALE, 1 goto FallarborTown_House2_EventScript_153D60 end diff --git a/data/scripts/maps/FallarborTown_Mart.inc b/data/scripts/maps/FallarborTown_Mart.inc index e6f715697..cfd239e8a 100644 --- a/data/scripts/maps/FallarborTown_Mart.inc +++ b/data/scripts/maps/FallarborTown_Mart.inc @@ -41,8 +41,8 @@ FallarborTown_Mart_EventScript_1539AE:: @ 81539AE lock faceplayer waitse - playpokecry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, 0 msgbox FallarborTown_Mart_Text_1770D3, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/FallarborTown_PokemonCenter_1F.inc b/data/scripts/maps/FallarborTown_PokemonCenter_1F.inc index 1e50c2fd6..dd6e83be3 100644 --- a/data/scripts/maps/FallarborTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/FallarborTown_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ FallarborTown_PokemonCenter_1F_MapScripts:: @ 8153AF3 .byte 0 FallarborTown_PokemonCenter_1F_MapScript1_153AF9:: @ 8153AF9 - sethealplace 17 + setrespawn 17 call FallarborTown_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ FallarborTown_PokemonCenter_1F_EventScript_153B02:: @ 8153B02 setvar 0x800b, 1 call FallarborTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/FortreeCity.inc b/data/scripts/maps/FortreeCity.inc index dd947d0e5..239c1410d 100644 --- a/data/scripts/maps/FortreeCity.inc +++ b/data/scripts/maps/FortreeCity.inc @@ -8,7 +8,7 @@ FortreeCity_MapScript1_14C94E:: @ 814C94E end FortreeCity_MapScript1_14C952:: @ 814C952 - tileeffect 2 + setstepcallback 2 end FortreeCity_EventScript_14C955:: @ 814C955 @@ -76,9 +76,9 @@ FortreeCity_EventScript_14C9E4:: @ 814C9E4 applymovement LAST_TALKED, FortreeCity_Movement_1A0662 waitmovement 0 waitse - playpokecry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, 2 delay 40 - waitpokecry + waitmoncry applymovement LAST_TALKED, FortreeCity_Movement_14CA13 waitmovement 0 removeobject LAST_TALKED diff --git a/data/scripts/maps/FortreeCity_DecorationShop.inc b/data/scripts/maps/FortreeCity_DecorationShop.inc index fca20b866..56a360708 100644 --- a/data/scripts/maps/FortreeCity_DecorationShop.inc +++ b/data/scripts/maps/FortreeCity_DecorationShop.inc @@ -14,7 +14,7 @@ FortreeCity_DecorationShop_EventScript_15826A:: @ 815826A faceplayer message FortreeCity_DecorationShop_Text_1A0BE4 waitmessage - pokemartdecor FortreeCity_DecorationShop_Decorations1 + pokemartdecoration FortreeCity_DecorationShop_Decorations1 msgbox FortreeCity_DecorationShop_Text_1A0C02, 4 release end @@ -38,7 +38,7 @@ FortreeCity_DecorationShop_EventScript_158298:: @ 8158298 faceplayer message FortreeCity_DecorationShop_Text_1A0BE4 waitmessage - pokemartdecor FortreeCity_DecorationShop_Decorations2 + pokemartdecoration FortreeCity_DecorationShop_Decorations2 msgbox FortreeCity_DecorationShop_Text_1A0C02, 4 release end diff --git a/data/scripts/maps/FortreeCity_Gym.inc b/data/scripts/maps/FortreeCity_Gym.inc index d3f7be155..a0eb6186a 100644 --- a/data/scripts/maps/FortreeCity_Gym.inc +++ b/data/scripts/maps/FortreeCity_Gym.inc @@ -36,7 +36,7 @@ FortreeCity_Gym_EventScript_157F15:: @ 8157F15 end FortreeCity_Gym_EventScript_157F3E:: @ 8157F3E - giveitem ITEM_TM40 + giveitem_std ITEM_TM40 compare RESULT, 0 goto_if_eq FortreeCity_Gym_EventScript_1A029B msgbox FortreeCity_Gym_Text_185F4A, 4 diff --git a/data/scripts/maps/FortreeCity_House1.inc b/data/scripts/maps/FortreeCity_House1.inc index 9ce96effe..14b9b2c31 100644 --- a/data/scripts/maps/FortreeCity_House1.inc +++ b/data/scripts/maps/FortreeCity_House1.inc @@ -28,7 +28,7 @@ FortreeCity_House1_EventScript_157E13:: @ 8157E13 special sub_804DB68 special sub_804E174 waitstate - getspeciesname 0, 0x8009 + bufferspeciesname 0, 0x8009 msgbox FortreeCity_House1_Text_1856F7, 4 setflag FLAG_FORTREE_NPC_TRADE_COMPLETED release @@ -40,7 +40,7 @@ FortreeCity_House1_EventScript_157E95:: @ 8157E95 end FortreeCity_House1_EventScript_157E9F:: @ 8157E9F - getspeciesname 0, 0x8009 + bufferspeciesname 0, 0x8009 msgbox FortreeCity_House1_Text_185737, 4 release end @@ -58,8 +58,8 @@ FortreeCity_House1_EventScript_157EC0:: @ 8157EC0 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox FortreeCity_House1_Text_185888, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/FortreeCity_House2.inc b/data/scripts/maps/FortreeCity_House2.inc index 4d935e841..ae70b8644 100644 --- a/data/scripts/maps/FortreeCity_House2.inc +++ b/data/scripts/maps/FortreeCity_House2.inc @@ -21,7 +21,7 @@ FortreeCity_House2_EventScript_1580B4:: @ 81580B4 switch RESULT case 0, FortreeCity_House2_EventScript_158161 msgbox FortreeCity_House2_Text_1864C6, 4 - giveitem ITEM_TM10 + giveitem_std ITEM_TM10 compare RESULT, 0 goto_if_eq FortreeCity_House2_EventScript_1A029B setflag FLAG_RECEIVED_TM10 diff --git a/data/scripts/maps/FortreeCity_House4.inc b/data/scripts/maps/FortreeCity_House4.inc index 23a96af51..1b1b41877 100644 --- a/data/scripts/maps/FortreeCity_House4.inc +++ b/data/scripts/maps/FortreeCity_House4.inc @@ -34,7 +34,7 @@ FortreeCity_House4_EventScript_1581D6:: @ 81581D6 applymovement LAST_TALKED, FortreeCity_House4_Movement_1A0839 waitmovement 0 msgbox FortreeCity_House4_Text_186881, 4 - giveitem ITEM_MENTAL_HERB + giveitem_std ITEM_MENTAL_HERB compare RESULT, 0 goto_if_eq FortreeCity_House4_EventScript_1A029B setflag FLAG_RECEIVED_MENTAL_HERB @@ -60,8 +60,8 @@ FortreeCity_House4_EventScript_15821E:: @ 815821E lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox FortreeCity_House4_Text_18695C, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/FortreeCity_House5.inc b/data/scripts/maps/FortreeCity_House5.inc index fe10b53b0..888ebe0e2 100644 --- a/data/scripts/maps/FortreeCity_House5.inc +++ b/data/scripts/maps/FortreeCity_House5.inc @@ -13,8 +13,8 @@ FortreeCity_House5_EventScript_158244:: @ 8158244 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox FortreeCity_House5_Text_186A4F, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/FortreeCity_PokemonCenter_1F.inc b/data/scripts/maps/FortreeCity_PokemonCenter_1F.inc index 5268cbeed..b82927be1 100644 --- a/data/scripts/maps/FortreeCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/FortreeCity_PokemonCenter_1F.inc @@ -3,14 +3,14 @@ FortreeCity_PokemonCenter_1F_MapScripts:: @ 8158011 .byte 0 FortreeCity_PokemonCenter_1F_MapScript1_158017:: @ 8158017 - sethealplace 7 + setrespawn 7 end FortreeCity_PokemonCenter_1F_EventScript_15801B:: @ 815801B setvar 0x800b, 1 call FortreeCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/GraniteCave_1F.inc b/data/scripts/maps/GraniteCave_1F.inc index 1932940c4..33296e510 100644 --- a/data/scripts/maps/GraniteCave_1F.inc +++ b/data/scripts/maps/GraniteCave_1F.inc @@ -7,7 +7,7 @@ GraniteCave_1F_EventScript_15CBA7:: @ 815CBA7 checkflag FLAG_RECEIVED_HM05 goto_if_eq GraniteCave_1F_EventScript_15CBD3 msgbox GraniteCave_1F_Text_194917, 4 - giveitem ITEM_HM05 + giveitem_std ITEM_HM05 setflag FLAG_RECEIVED_HM05 msgbox GraniteCave_1F_Text_194A3E, 4 release diff --git a/data/scripts/maps/GraniteCave_B1F.inc b/data/scripts/maps/GraniteCave_B1F.inc index 07a95c3f1..c6be3feca 100644 --- a/data/scripts/maps/GraniteCave_B1F.inc +++ b/data/scripts/maps/GraniteCave_B1F.inc @@ -5,6 +5,6 @@ GraniteCave_B1F_MapScripts:: @ 815CBDD .byte 0 GraniteCave_B1F_MapScript1_15CBED:: @ 815CBED - tileeffect 7 + setstepcallback 7 setholewarp MAP_GRANITE_CAVE_B2F, 255, 0, 0 end diff --git a/data/scripts/maps/GraniteCave_StevensRoom.inc b/data/scripts/maps/GraniteCave_StevensRoom.inc index dc61a77bf..344ccd479 100644 --- a/data/scripts/maps/GraniteCave_StevensRoom.inc +++ b/data/scripts/maps/GraniteCave_StevensRoom.inc @@ -9,7 +9,7 @@ GraniteCave_StevensRoom_EventScript_15CBFA:: @ 815CBFA call GraniteCave_StevensRoom_EventScript_1A067F setflag FLAG_DELIVERED_STEVEN_LETTER msgbox GraniteCave_StevensRoom_Text_194BDD, 4 - giveitem ITEM_TM47 + giveitem_std ITEM_TM47 compare RESULT, 0 call_if 1, GraniteCave_StevensRoom_EventScript_15CC83 msgbox GraniteCave_StevensRoom_Text_194C8D, 4 diff --git a/data/scripts/maps/InsideOfTruck.inc b/data/scripts/maps/InsideOfTruck.inc index 6cf2d630b..18cfb904d 100644 --- a/data/scripts/maps/InsideOfTruck.inc +++ b/data/scripts/maps/InsideOfTruck.inc @@ -4,13 +4,13 @@ InsideOfTruck_MapScripts:: @ 815FBFF .byte 0 InsideOfTruck_MapScript1_15FC0A:: @ 815FC0A - setmaptile 4, 1, 520, 0 - setmaptile 4, 2, 528, 0 - setmaptile 4, 3, 536, 0 + setmetatile 4, 1, 520, 0 + setmetatile 4, 2, 528, 0 + setmetatile 4, 3, 536, 0 end InsideOfTruck_MapScript1_15FC26:: @ 815FC26 - tileeffect 5 + setstepcallback 5 end InsideOfTruck_EventScript_15FC29:: @ 815FC29 @@ -24,7 +24,7 @@ InsideOfTruck_EventScript_15FC29:: @ 815FC29 end InsideOfTruck_EventScript_15FC45:: @ 815FC45 - sethealplace 1 + setrespawn 1 setvar 0x4092, 1 setflag FLAG_HIDE_MAY_MOM_DOWNSTAIRS setflag FLAG_HIDE_MOVING_TRUCK_MAY @@ -36,7 +36,7 @@ InsideOfTruck_EventScript_15FC45:: @ 815FC45 end InsideOfTruck_EventScript_15FC68:: @ 815FC68 - sethealplace 2 + setrespawn 2 setvar 0x4092, 2 setflag FLAG_HIDE_BRENDAN_MOM_DOWNSTAIRS setflag FLAG_HIDE_MOVING_TRUCK_BRENDAN diff --git a/data/scripts/maps/IslandCave.inc b/data/scripts/maps/IslandCave.inc index e8489eb8a..dbc71b6bb 100644 --- a/data/scripts/maps/IslandCave.inc +++ b/data/scripts/maps/IslandCave.inc @@ -19,12 +19,12 @@ IslandCave_MapScript1_15EED4:: @ 815EED4 end IslandCave_EventScript_15EEDE:: @ 815EEDE - setmaptile 7, 19, 553, 1 - setmaptile 8, 19, 553, 1 - setmaptile 9, 19, 553, 1 - setmaptile 7, 20, 565, 1 - setmaptile 8, 20, 565, 1 - setmaptile 9, 20, 565, 1 + setmetatile 7, 19, 553, 1 + setmetatile 8, 19, 553, 1 + setmetatile 9, 19, 553, 1 + setmetatile 7, 20, 565, 1 + setmetatile 8, 20, 565, 1 + setmetatile 9, 20, 565, 1 return IslandCave_MapScript1_15EF15:: @ 815EF15 @@ -32,12 +32,12 @@ IslandCave_MapScript1_15EF15:: @ 815EF15 end S_OpenRegiceChamber:: @ 815EF19 - setmaptile 7, 19, 554, 1 - setmaptile 8, 19, 555, 1 - setmaptile 9, 19, 556, 1 - setmaptile 7, 20, 562, 1 - setmaptile 8, 20, 563, 0 - setmaptile 9, 20, 564, 1 + setmetatile 7, 19, 554, 1 + setmetatile 8, 19, 555, 1 + setmetatile 9, 19, 556, 1 + setmetatile 7, 20, 562, 1 + setmetatile 8, 20, 563, 0 + setmetatile 9, 20, 564, 1 special DrawWholeMapView playse SE_BAN setflag FLAG_SYS_BRAILLE_WAIT @@ -69,7 +69,7 @@ IslandCave_EventScript_15EF7C:: @ 815EF7C end IslandCave_EventScript_15EF95:: @ 815EF95 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -78,9 +78,9 @@ IslandCave_EventScript_15EF9D:: @ 815EF9D lock faceplayer waitse - playpokecry SPECIES_REGICE, 2 + playmoncry SPECIES_REGICE, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_REGICE, 40, ITEM_NONE setflag FLAG_HIDE_REGICE setflag FLAG_SYS_CTRL_OBJ_DELETE diff --git a/data/scripts/maps/JaggedPass.inc b/data/scripts/maps/JaggedPass.inc index 6f910d0ad..c7efee318 100644 --- a/data/scripts/maps/JaggedPass.inc +++ b/data/scripts/maps/JaggedPass.inc @@ -4,7 +4,7 @@ JaggedPass_MapScripts:: @ 815D266 .byte 0 JaggedPass_MapScript1_15D271:: @ 815D271 - tileeffect 1 + setstepcallback 1 end JaggedPass_MapScript1_15D274:: @ 815D274 diff --git a/data/scripts/maps/LavaridgeTown.inc b/data/scripts/maps/LavaridgeTown.inc index 29b5ef2b9..8b4384ed8 100644 --- a/data/scripts/maps/LavaridgeTown.inc +++ b/data/scripts/maps/LavaridgeTown.inc @@ -83,7 +83,7 @@ LavaridgeTown_EventScript_14E575:: @ 814E575 LavaridgeTown_EventScript_14E5AB:: @ 814E5AB msgbox LavaridgeTown_Text_16BDA4, 4 - giveitem ITEM_GO_GOGGLES + giveitem_std ITEM_GO_GOGGLES setflag FLAG_RECEIVED_GO_GOGGLES msgbox LavaridgeTown_Text_16BE7D, 4 goto LavaridgeTown_EventScript_14E5F5 @@ -91,7 +91,7 @@ LavaridgeTown_EventScript_14E5AB:: @ 814E5AB LavaridgeTown_EventScript_14E5D0:: @ 814E5D0 msgbox LavaridgeTown_Text_16BF92, 4 - giveitem ITEM_GO_GOGGLES + giveitem_std ITEM_GO_GOGGLES setflag FLAG_RECEIVED_GO_GOGGLES msgbox LavaridgeTown_Text_16C020, 4 goto LavaridgeTown_EventScript_14E5F5 @@ -277,7 +277,7 @@ LavaridgeTown_EventScript_14E75A:: @ 814E75A msgbox LavaridgeTown_Text_16C174, 5 compare RESULT, 0 goto_if_eq LavaridgeTown_EventScript_14E7B2 - countpokemon + getpartysize compare RESULT, 6 goto_if_eq LavaridgeTown_EventScript_14E7A8 msgbox LavaridgeTown_Text_16C2B6, 4 diff --git a/data/scripts/maps/LavaridgeTown_Gym_1F.inc b/data/scripts/maps/LavaridgeTown_Gym_1F.inc index a44368925..9dd1ae59d 100644 --- a/data/scripts/maps/LavaridgeTown_Gym_1F.inc +++ b/data/scripts/maps/LavaridgeTown_Gym_1F.inc @@ -94,7 +94,7 @@ LavaridgeTown_Gym_1F_EventScript_153766:: @ 8153766 end LavaridgeTown_Gym_1F_EventScript_1537A7:: @ 81537A7 - giveitem ITEM_TM50 + giveitem_std ITEM_TM50 compare RESULT, 0 goto_if_eq LavaridgeTown_Gym_1F_EventScript_1A029B msgbox LavaridgeTown_Gym_1F_Text_176B8F, 4 diff --git a/data/scripts/maps/LavaridgeTown_HerbShop.inc b/data/scripts/maps/LavaridgeTown_HerbShop.inc index c5e033422..913734dd5 100644 --- a/data/scripts/maps/LavaridgeTown_HerbShop.inc +++ b/data/scripts/maps/LavaridgeTown_HerbShop.inc @@ -31,7 +31,7 @@ LavaridgeTown_HerbShop_EventScript_153655:: @ 8153655 checkflag FLAG_RECEIVED_CHARCOAL goto_if_eq LavaridgeTown_HerbShop_EventScript_153684 msgbox LavaridgeTown_HerbShop_Text_1761A2, 4 - giveitem ITEM_CHARCOAL + giveitem_std ITEM_CHARCOAL compare RESULT, 0 goto_if_eq LavaridgeTown_HerbShop_EventScript_1A029B setflag FLAG_RECEIVED_CHARCOAL diff --git a/data/scripts/maps/LavaridgeTown_House.inc b/data/scripts/maps/LavaridgeTown_House.inc index c75cb9e4b..6fc14e0b6 100644 --- a/data/scripts/maps/LavaridgeTown_House.inc +++ b/data/scripts/maps/LavaridgeTown_House.inc @@ -9,8 +9,8 @@ LavaridgeTown_House_EventScript_1538B7:: @ 81538B7 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox LavaridgeTown_House_Text_176D94, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/LavaridgeTown_PokemonCenter_1F.inc b/data/scripts/maps/LavaridgeTown_PokemonCenter_1F.inc index 9d0f31059..0efda9c1e 100644 --- a/data/scripts/maps/LavaridgeTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/LavaridgeTown_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ LavaridgeTown_PokemonCenter_1F_MapScripts:: @ 815390C .byte 0 LavaridgeTown_PokemonCenter_1F_MapScript1_153912:: @ 8153912 - sethealplace 16 + setrespawn 16 call LavaridgeTown_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ LavaridgeTown_PokemonCenter_1F_EventScript_15391B:: @ 815391B setvar 0x800b, 1 call LavaridgeTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/LilycoveCity.inc b/data/scripts/maps/LilycoveCity.inc index 30f0ff36e..6494f2a6f 100644 --- a/data/scripts/maps/LilycoveCity.inc +++ b/data/scripts/maps/LilycoveCity.inc @@ -15,18 +15,18 @@ LilycoveCity_MapScript1_14CA20:: @ 814CA20 LilycoveCity_MapScript1_14CA3F:: @ 814CA3F .ifndef SAPPHIRE - setmaptile 69, 4, 169, 1 - setmaptile 70, 4, 680, 1 - setmaptile 71, 4, 681, 1 - setmaptile 72, 4, 682, 1 - setmaptile 69, 5, 145, 1 - setmaptile 70, 5, 688, 1 - setmaptile 71, 5, 689, 0 - setmaptile 72, 5, 690, 1 - setmaptile 69, 6, 446, 0 - setmaptile 70, 6, 447, 0 - setmaptile 71, 6, 368, 0 - setmaptile 72, 6, 445, 0 + setmetatile 69, 4, 169, 1 + setmetatile 70, 4, 680, 1 + setmetatile 71, 4, 681, 1 + setmetatile 72, 4, 682, 1 + setmetatile 69, 5, 145, 1 + setmetatile 70, 5, 688, 1 + setmetatile 71, 5, 689, 0 + setmetatile 72, 5, 690, 1 + setmetatile 69, 6, 446, 0 + setmetatile 70, 6, 447, 0 + setmetatile 71, 6, 368, 0 + setmetatile 72, 6, 445, 0 .endif checkflag FLAG_EVIL_TEAM_ESCAPED_IN_SUBMARINE call_if 0, LilycoveCity_EventScript_14CABE @@ -35,29 +35,29 @@ LilycoveCity_MapScript1_14CA3F:: @ 814CA3F end LilycoveCity_EventScript_14CABE:: @ 814CABE - setmaptile 76, 12, 656, 1 - setmaptile 77, 12, 657, 1 - setmaptile 76, 13, 672, 1 - setmaptile 77, 13, 673, 1 - setmaptile 76, 14, 664, 1 - setmaptile 77, 14, 665, 1 - setmaptile 76, 15, 672, 1 - setmaptile 77, 15, 673, 1 - setmaptile 77, 16, 664, 1 - setmaptile 78, 16, 665, 1 - setmaptile 77, 17, 672, 1 - setmaptile 78, 17, 673, 1 + setmetatile 76, 12, 656, 1 + setmetatile 77, 12, 657, 1 + setmetatile 76, 13, 672, 1 + setmetatile 77, 13, 673, 1 + setmetatile 76, 14, 664, 1 + setmetatile 77, 14, 665, 1 + setmetatile 76, 15, 672, 1 + setmetatile 77, 15, 673, 1 + setmetatile 77, 16, 664, 1 + setmetatile 78, 16, 665, 1 + setmetatile 77, 17, 672, 1 + setmetatile 78, 17, 673, 1 return LilycoveCity_EventScript_14CB2B:: @ 814CB2B - setmaptile 69, 4, 169, 1 - setmaptile 70, 4, 169, 1 - setmaptile 71, 4, 169, 1 - setmaptile 72, 4, 169, 1 - setmaptile 69, 5, 145, 1 - setmaptile 70, 5, 145, 1 - setmaptile 71, 5, 145, 1 - setmaptile 72, 5, 145, 1 + setmetatile 69, 4, 169, 1 + setmetatile 70, 4, 169, 1 + setmetatile 71, 4, 169, 1 + setmetatile 72, 4, 169, 1 + setmetatile 69, 5, 145, 1 + setmetatile 70, 5, 145, 1 + setmetatile 71, 5, 145, 1 + setmetatile 72, 5, 145, 1 return LilycoveCity_EventScript_14CB74:: @ 814CB74 @@ -69,7 +69,7 @@ LilycoveCity_EventScript_14CB74:: @ 814CB74 msgbox LilycoveCity_Text_1C5A7A, 4 random 10 addvar RESULT, ITEM_CHERI_BERRY - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq LilycoveCity_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_LILYCOVE @@ -415,7 +415,7 @@ LilycoveCity_EventScript_14CF6B:: @ 814CF6B applymovement LAST_TALKED, LilycoveCity_Movement_1A0845 waitmovement 0 delay 50 - setfieldeffect 0, 1 + setfieldeffectargument 0, 1 dofieldeffect 30 delay 15 removeobject LAST_TALKED diff --git a/data/scripts/maps/LilycoveCity_ContestLobby.inc b/data/scripts/maps/LilycoveCity_ContestLobby.inc index 6a1bc09e8..c97a01989 100644 --- a/data/scripts/maps/LilycoveCity_ContestLobby.inc +++ b/data/scripts/maps/LilycoveCity_ContestLobby.inc @@ -360,7 +360,7 @@ LilycoveCity_ContestLobby_EventScript_158C35:: @ 8158C35 LilycoveCity_ContestLobby_EventScript_158C42:: @ 8158C42 msgbox LilycoveCity_ContestLobby_Text_188703, 4 setvar CONTEST_RANK, 0 - choosecontestpkmn + choosecontestmon compare 0x8004, 255 goto_if_eq LilycoveCity_ContestLobby_EventScript_158CEA special sub_80C43F4 @@ -472,7 +472,7 @@ LilycoveCity_ContestLobby_EventScript_158DC3:: @ 8158DC3 LilycoveCity_ContestLobby_EventScript_158DD1:: @ 8158DD1 special sub_80C496C addvar 0x8004, 1 - getnumberstring 1, 32772 + buffernumberstring 1, 32772 messageautoscroll LilycoveCity_ContestLobby_Text_188845 waitmessage addvar 0x8004, 65535 @@ -497,14 +497,14 @@ LilycoveCity_ContestLobby_EventScript_158E0B:: @ 8158E0B applymovement 2, LilycoveCity_ContestLobby_Movement_158E9C waitmovement 0 playse 71 - setmaptile 9, 2, 545, 1 - setmaptile 9, 3, 609, 1 + setmetatile 9, 2, 545, 1 + setmetatile 9, 3, 609, 1 special DrawWholeMapView applymovement 2, LilycoveCity_ContestLobby_Movement_158EA0 waitmovement 0 playse 71 - setmaptile 9, 2, 721, 1 - setmaptile 9, 3, 729, 1 + setmetatile 9, 2, 721, 1 + setmetatile 9, 3, 729, 1 special DrawWholeMapView delay 20 applymovement 2, LilycoveCity_ContestLobby_Movement_158EAE @@ -585,7 +585,7 @@ LilycoveCity_ContestLobby_EventScript_158EB0:: @ 8158EB0 LilycoveCity_ContestLobby_EventScript_158EE8:: @ 8158EE8 setflag FLAG_HIDE_LILYCOVE_MUSEUM_CURATOR copyvar 0x4094, 0x1 - additem ITEM_CONTEST_PASS, 1 + giveitem ITEM_CONTEST_PASS, 1 setvar 0x800b, 8 setvar CONTEST_RANK, 3 setvar 0x4099, 1 @@ -636,14 +636,14 @@ LilycoveCity_ContestLobby_EventScript_158F86:: @ 8158F86 applymovement 1, LilycoveCity_ContestLobby_Movement_15900B waitmovement 0 playse 71 - setmaptile 4, 2, 545, 1 - setmaptile 4, 3, 609, 1 + setmetatile 4, 2, 545, 1 + setmetatile 4, 3, 609, 1 special DrawWholeMapView applymovement 1, LilycoveCity_ContestLobby_Movement_15900F waitmovement 0 playse 71 - setmaptile 4, 2, 721, 1 - setmaptile 4, 3, 729, 1 + setmetatile 4, 2, 721, 1 + setmetatile 4, 3, 729, 1 special DrawWholeMapView delay 20 applymovement 1, LilycoveCity_ContestLobby_Movement_15901C @@ -765,7 +765,7 @@ LilycoveCity_ContestLobby_EventScript_15908D:: @ 815908D SlateportCity_ContestLobby_EventScript_15908D:: @ 815908D lockall special ShowBerryBlenderRecordWindow - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/LilycoveCity_DepartmentStoreRooftop.inc b/data/scripts/maps/LilycoveCity_DepartmentStoreRooftop.inc index 7078a83ca..2806b6125 100644 --- a/data/scripts/maps/LilycoveCity_DepartmentStoreRooftop.inc +++ b/data/scripts/maps/LilycoveCity_DepartmentStoreRooftop.inc @@ -23,7 +23,7 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_15A167:: @ 815A167 faceplayer message LilycoveCity_DepartmentStoreRooftop_Text_1A0BE4 waitmessage - pokemartdecor LilycoveCity_DepartmentStoreRooftop_Decorations + pokemartdecoration LilycoveCity_DepartmentStoreRooftop_Decorations msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C02, 4 release end @@ -146,12 +146,12 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_15A267:: @ 815A267 call_if 1, LilycoveCity_DepartmentStoreRooftop_EventScript_15A260 updatemoneybox 0, 0 nop - getitemname 0, 0x4000 + bufferitemname 0, 0x4000 playse 106 msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C75F, 4 - additem 0x4000, 1 - getitemname 1, 0x4000 - getstdstring 2, 14 + giveitem 0x4000, 1 + bufferitemname 1, 0x4000 + bufferstdstring 2, 14 msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4 random 64 compare RESULT, 0 @@ -161,9 +161,9 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_15A267:: @ 815A267 goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_15A388 playse 106 msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C780, 4 - additem 0x4000, 1 - getitemname 1, 0x4000 - getstdstring 2, 14 + giveitem 0x4000, 1 + bufferitemname 1, 0x4000 + bufferstdstring 2, 14 msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4 random 64 compare RESULT, 0 @@ -173,9 +173,9 @@ LilycoveCity_DepartmentStoreRooftop_EventScript_15A267:: @ 815A267 goto_if_eq LilycoveCity_DepartmentStoreRooftop_EventScript_15A388 playse 106 msgbox LilycoveCity_DepartmentStoreRooftop_Text_18C780, 4 - additem 0x4000, 1 - getitemname 1, 0x4000 - getstdstring 2, 14 + giveitem 0x4000, 1 + bufferitemname 1, 0x4000 + bufferstdstring 2, 14 msgbox LilycoveCity_DepartmentStoreRooftop_Text_1A0C8C, 4 goto LilycoveCity_DepartmentStoreRooftop_EventScript_15A36E end diff --git a/data/scripts/maps/LilycoveCity_DepartmentStore_1F.inc b/data/scripts/maps/LilycoveCity_DepartmentStore_1F.inc index cfcca25fb..dbfd79e98 100644 --- a/data/scripts/maps/LilycoveCity_DepartmentStore_1F.inc +++ b/data/scripts/maps/LilycoveCity_DepartmentStore_1F.inc @@ -40,7 +40,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_159D5E:: @ 8159D5E call_if 1, LilycoveCity_DepartmentStore_1F_EventScript_159E3A compare 0x8006, 1 call_if 1, LilycoveCity_DepartmentStore_1F_EventScript_159E43 - getitemname 0, 0x8005 + bufferitemname 0, 0x8005 compare 0x8004, 1 call_if 1, LilycoveCity_DepartmentStore_1F_EventScript_159E78 compare 0x8004, 2 @@ -49,7 +49,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_159D5E:: @ 8159D5E call_if 1, LilycoveCity_DepartmentStore_1F_EventScript_159E8A compare 0x8004, 4 call_if 1, LilycoveCity_DepartmentStore_1F_EventScript_159E93 - giveitem 0x8005 + giveitem_std 0x8005 compare RESULT, 0 goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_159E9C goto LilycoveCity_DepartmentStore_1F_EventScript_159E6E @@ -111,7 +111,7 @@ LilycoveCity_DepartmentStore_1F_EventScript_159EA7:: @ 8159EA7 LilycoveCity_DepartmentStore_1F_EventScript_159EB1:: @ 8159EB1 msgbox LilycoveCity_DepartmentStore_1F_Text_1C4FCC, 4 - giveitem 0x4045 + giveitem_std 0x4045 compare RESULT, 0 goto_if_eq LilycoveCity_DepartmentStore_1F_EventScript_159EA7 setvar 0x4045, 0 @@ -134,9 +134,9 @@ LilycoveCity_DepartmentStore_1F_EventScript_159EF2:: @ 8159EF2 lock faceplayer waitse - playpokecry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, 0 msgbox LilycoveCity_DepartmentStore_1F_Text_18C0C3, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/LilycoveCity_DepartmentStore_5F.inc b/data/scripts/maps/LilycoveCity_DepartmentStore_5F.inc index 835a0f48d..184d3b816 100644 --- a/data/scripts/maps/LilycoveCity_DepartmentStore_5F.inc +++ b/data/scripts/maps/LilycoveCity_DepartmentStore_5F.inc @@ -6,7 +6,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_15A061:: @ 815A061 faceplayer message LilycoveCity_DepartmentStore_5F_Text_1A0BE4 waitmessage - pokemartbp LilycoveCity_DepartmentStore_5F_Items1 + pokemartdecoration2 LilycoveCity_DepartmentStore_5F_Items1 msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4 release end @@ -34,7 +34,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_15A094:: @ 815A094 faceplayer message LilycoveCity_DepartmentStore_5F_Text_1A0BE4 waitmessage - pokemartbp LilycoveCity_DepartmentStore_5F_Items2 + pokemartdecoration2 LilycoveCity_DepartmentStore_5F_Items2 msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4 release end @@ -59,7 +59,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_15A0C2:: @ 815A0C2 faceplayer message LilycoveCity_DepartmentStore_5F_Text_1A0BE4 waitmessage - pokemartbp LilycoveCity_DepartmentStore_5F_Items3 + pokemartdecoration2 LilycoveCity_DepartmentStore_5F_Items3 msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4 release end @@ -84,7 +84,7 @@ LilycoveCity_DepartmentStore_5F_EventScript_15A0F2:: @ 815A0F2 faceplayer message LilycoveCity_DepartmentStore_5F_Text_1A0BE4 waitmessage - pokemartbp LilycoveCity_DepartmentStore_5F_Items4 + pokemartdecoration2 LilycoveCity_DepartmentStore_5F_Items4 msgbox LilycoveCity_DepartmentStore_5F_Text_1A0C02, 4 release end diff --git a/data/scripts/maps/LilycoveCity_Harbor.inc b/data/scripts/maps/LilycoveCity_Harbor.inc index 7385f8c72..9687c73fe 100644 --- a/data/scripts/maps/LilycoveCity_Harbor.inc +++ b/data/scripts/maps/LilycoveCity_Harbor.inc @@ -79,13 +79,13 @@ LilycoveCity_Harbor_EventScript_15998A:: @ 815998A applymovement LAST_TALKED, LilycoveCity_Harbor_Movement_1A0841 waitmovement 0 delay 30 - hideobject LAST_TALKED, 13, 10 + hideobjectat LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR compare FACING, 2 call_if 1, LilycoveCity_Harbor_EventScript_1599D9 compare FACING, 4 call_if 1, LilycoveCity_Harbor_EventScript_1599CE delay 30 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY setvar 0x8004, 2 call LilycoveCity_Harbor_EventScript_1A040E return @@ -117,7 +117,7 @@ LilycoveCity_Harbor_EventScript_1599EE:: @ 81599EE applymovement LAST_TALKED, LilycoveCity_Harbor_Movement_1A0841 waitmovement 0 delay 30 - hideobject LAST_TALKED, 13, 10 + hideobjectat LAST_TALKED, MAP_LILYCOVE_CITY_HARBOR delay 60 addobject 4 delay 30 @@ -134,7 +134,7 @@ LilycoveCity_Harbor_EventScript_1599EE:: @ 81599EE compare FACING, 4 call_if 1, LilycoveCity_Harbor_EventScript_1599CE delay 30 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY special ScrSpecial_HealPlayerParty setvar 0x8004, 2 call LilycoveCity_Harbor_EventScript_1A040E diff --git a/data/scripts/maps/LilycoveCity_House1.inc b/data/scripts/maps/LilycoveCity_House1.inc index 4defe37b8..15535a122 100644 --- a/data/scripts/maps/LilycoveCity_House1.inc +++ b/data/scripts/maps/LilycoveCity_House1.inc @@ -9,8 +9,8 @@ LilycoveCity_House1_EventScript_159B8F:: @ 8159B8F lock faceplayer waitse - playpokecry SPECIES_KECLEON, 0 + playmoncry SPECIES_KECLEON, 0 msgbox LilycoveCity_House1_Text_18B82B, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/LilycoveCity_House2.inc b/data/scripts/maps/LilycoveCity_House2.inc index bbca8aa6d..d0065c9e8 100644 --- a/data/scripts/maps/LilycoveCity_House2.inc +++ b/data/scripts/maps/LilycoveCity_House2.inc @@ -7,7 +7,7 @@ LilycoveCity_House2_EventScript_159BA3:: @ 8159BA3 checkflag FLAG_RECEIVED_TM44 goto_if_eq LilycoveCity_House2_EventScript_159BDA msgbox LilycoveCity_House2_Text_18B83C, 4 - giveitem ITEM_TM44 + giveitem_std ITEM_TM44 compare RESULT, 0 goto_if_eq LilycoveCity_House2_EventScript_1A029B setflag FLAG_RECEIVED_TM44 diff --git a/data/scripts/maps/LilycoveCity_LilycoveMuseum_2F.inc b/data/scripts/maps/LilycoveCity_LilycoveMuseum_2F.inc index db9855211..577805fb2 100644 --- a/data/scripts/maps/LilycoveCity_LilycoveMuseum_2F.inc +++ b/data/scripts/maps/LilycoveCity_LilycoveMuseum_2F.inc @@ -33,32 +33,32 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_1585F3:: @ 81585F3 end LilycoveCity_LilycoveMuseum_2F_EventScript_1585FD:: @ 81585FD - setmaptile 10, 6, 606, 1 - setmaptile 11, 6, 607, 1 + setmetatile 10, 6, 606, 1 + setmetatile 11, 6, 607, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_1585C6 end LilycoveCity_LilycoveMuseum_2F_EventScript_158615:: @ 8158615 - setmaptile 18, 6, 604, 1 - setmaptile 19, 6, 605, 1 + setmetatile 18, 6, 604, 1 + setmetatile 19, 6, 605, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_1585D5 end LilycoveCity_LilycoveMuseum_2F_EventScript_15862D:: @ 815862D - setmaptile 14, 10, 608, 1 - setmaptile 15, 10, 609, 1 + setmetatile 14, 10, 608, 1 + setmetatile 15, 10, 609, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_1585E4 end LilycoveCity_LilycoveMuseum_2F_EventScript_158645:: @ 8158645 - setmaptile 6, 10, 602, 1 - setmaptile 7, 10, 603, 1 + setmetatile 6, 10, 602, 1 + setmetatile 7, 10, 603, 1 goto LilycoveCity_LilycoveMuseum_2F_EventScript_1585F3 end LilycoveCity_LilycoveMuseum_2F_EventScript_15865D:: @ 815865D - setmaptile 2, 6, 610, 1 - setmaptile 3, 6, 611, 1 + setmetatile 2, 6, 610, 1 + setmetatile 3, 6, 611, 1 end LilycoveCity_LilycoveMuseum_2F_MapScript2_158670:: @ 8158670 @@ -124,7 +124,7 @@ LilycoveCity_LilycoveMuseum_2F_EventScript_158735:: @ 8158735 LilycoveCity_LilycoveMuseum_2F_EventScript_15875C:: @ 815875C applymovement 1, LilycoveCity_LilycoveMuseum_2F_Movement_1A0839 msgbox LilycoveCity_LilycoveMuseum_2F_Text_188120, 4 - givedecoration DECOR_GLASS_ORNAMENT + givedecoration_std DECOR_GLASS_ORNAMENT compare RESULT, 0 goto_if_eq LilycoveCity_LilycoveMuseum_2F_EventScript_158783 setflag FLAG_RECEIVED_GLASS_ORNAMENT diff --git a/data/scripts/maps/LilycoveCity_PokemonCenter_1F.inc b/data/scripts/maps/LilycoveCity_PokemonCenter_1F.inc index d1be7b704..38428311b 100644 --- a/data/scripts/maps/LilycoveCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/LilycoveCity_PokemonCenter_1F.inc @@ -3,14 +3,14 @@ LilycoveCity_PokemonCenter_1F_MapScripts:: @ 8159327 .byte 0 LilycoveCity_PokemonCenter_1F_MapScript1_15932D:: @ 815932D - sethealplace 8 + setrespawn 8 end LilycoveCity_PokemonCenter_1F_EventScript_159331:: @ 8159331 setvar 0x800b, 1 call LilycoveCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/LittlerootTown.inc b/data/scripts/maps/LittlerootTown.inc index 52c52b798..13c18d51e 100644 --- a/data/scripts/maps/LittlerootTown.inc +++ b/data/scripts/maps/LittlerootTown.inc @@ -124,7 +124,7 @@ LittlerootTown_EventScript_14D62B:: @ 814D62B waitmovement 0 setflag FLAG_HIDE_MOM_LITTLEROOT setvar 0x4092, 3 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY closedoor 0x8004, 0x8005 waitdooranim clearflag FLAG_HIDE_FAT_MAN_LITTLEROOT @@ -599,7 +599,7 @@ LittlerootTown_EventScript_14DB46:: @ 814DB46 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -611,7 +611,7 @@ LittlerootTown_EventScript_14DB6C:: @ 814DB6C waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -623,7 +623,7 @@ LittlerootTown_EventScript_14DB92:: @ 814DB92 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -635,7 +635,7 @@ LittlerootTown_EventScript_14DBB8:: @ 814DBB8 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -647,7 +647,7 @@ LittlerootTown_EventScript_14DBDE:: @ 814DBDE waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -659,7 +659,7 @@ LittlerootTown_EventScript_14DC04:: @ 814DC04 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -671,7 +671,7 @@ LittlerootTown_EventScript_14DC2A:: @ 814DC2A waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -683,7 +683,7 @@ LittlerootTown_EventScript_14DC50:: @ 814DC50 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim return @@ -853,7 +853,7 @@ LittlerootTown_EventScript_14DCE2:: @ 814DCE2 waitdooranim applymovement 4, LittlerootTown_Movement_14DCE0 waitmovement 0 - hideobject 4, 0, 9 + hideobjectat 4, MAP_LITTLEROOT_TOWN closedoor 0x8009, 0x800a waitdooranim goto LittlerootTown_EventScript_14DD2B diff --git a/data/scripts/maps/LittlerootTown_BrendansHouse_1F.inc b/data/scripts/maps/LittlerootTown_BrendansHouse_1F.inc index 731e6fb5f..d4dd94aae 100644 --- a/data/scripts/maps/LittlerootTown_BrendansHouse_1F.inc +++ b/data/scripts/maps/LittlerootTown_BrendansHouse_1F.inc @@ -12,8 +12,8 @@ LittlerootTown_BrendansHouse_1F_MapScript1_15264B:: @ 815264B end LittlerootTown_BrendansHouse_1F_EventScript_152660:: @ 8152660 - setmaptile 5, 4, 624, 1 - setmaptile 5, 2, 616, 1 + setmetatile 5, 4, 624, 1 + setmetatile 5, 2, 616, 1 return LittlerootTown_BrendansHouse_1F_EventScript_152673:: @ 8152673 @@ -23,7 +23,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_152673:: @ 8152673 return LittlerootTown_BrendansHouse_1F_EventScript_152680:: @ 8152680 - setmaptile 3, 7, 659, 1 + setmetatile 3, 7, 659, 1 return LittlerootTown_BrendansHouse_1F_MapScript1_15268A:: @ 815268A diff --git a/data/scripts/maps/LittlerootTown_MaysHouse_1F.inc b/data/scripts/maps/LittlerootTown_MaysHouse_1F.inc index d65e943fd..e23a05243 100644 --- a/data/scripts/maps/LittlerootTown_MaysHouse_1F.inc +++ b/data/scripts/maps/LittlerootTown_MaysHouse_1F.inc @@ -12,8 +12,8 @@ LittlerootTown_MaysHouse_1F_MapScript1_152889:: @ 8152889 end LittlerootTown_MaysHouse_1F_EventScript_15289E:: @ 815289E - setmaptile 5, 4, 624, 1 - setmaptile 5, 2, 616, 1 + setmetatile 5, 4, 624, 1 + setmetatile 5, 2, 616, 1 return LittlerootTown_MaysHouse_1F_EventScript_1528B1:: @ 81528B1 @@ -23,7 +23,7 @@ LittlerootTown_MaysHouse_1F_EventScript_1528B1:: @ 81528B1 return LittlerootTown_MaysHouse_1F_EventScript_1528BE:: @ 81528BE - setmaptile 6, 7, 659, 1 + setmetatile 6, 7, 659, 1 return LittlerootTown_MaysHouse_1F_MapScript1_1528C8:: @ 81528C8 diff --git a/data/scripts/maps/LittlerootTown_ProfessorBirchsLab.inc b/data/scripts/maps/LittlerootTown_ProfessorBirchsLab.inc index f78d30ec2..6792c5932 100644 --- a/data/scripts/maps/LittlerootTown_ProfessorBirchsLab.inc +++ b/data/scripts/maps/LittlerootTown_ProfessorBirchsLab.inc @@ -24,7 +24,7 @@ LittlerootTown_ProfessorBirchsLab_MapScript2_152CAC:: @ 8152CAC LittlerootTown_ProfessorBirchsLab_EventScript_152CBE:: @ 8152CBE lockall - getfirstpartypokename 0 + bufferleadmonspeciesname 0 message LittlerootTown_ProfessorBirchsLab_Text_173D94 waitmessage playfanfare 370 @@ -138,7 +138,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_152DBA:: @ 8152DBA LittlerootTown_ProfessorBirchsLab_EventScript_152E13:: @ 8152E13 msgbox LittlerootTown_ProfessorBirchsLab_Text_1743D4, 4 - giveitem ITEM_POKE_BALL, 5 + giveitem_std ITEM_POKE_BALL, 5 compare RESULT, 0 call_if 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E85 msgbox LittlerootTown_ProfessorBirchsLab_Text_17443D, 4 @@ -147,7 +147,7 @@ LittlerootTown_ProfessorBirchsLab_EventScript_152E13:: @ 8152E13 LittlerootTown_ProfessorBirchsLab_EventScript_152E40:: @ 8152E40 msgbox LittlerootTown_ProfessorBirchsLab_Text_17453C, 4 - giveitem ITEM_POKE_BALL, 5 + giveitem_std ITEM_POKE_BALL, 5 compare RESULT, 0 call_if 1, LittlerootTown_ProfessorBirchsLab_EventScript_152E8E msgbox LittlerootTown_ProfessorBirchsLab_Text_17458C, 4 diff --git a/data/scripts/maps/MauvilleCity.inc b/data/scripts/maps/MauvilleCity.inc index ae00ca369..6a7e02848 100644 --- a/data/scripts/maps/MauvilleCity.inc +++ b/data/scripts/maps/MauvilleCity.inc @@ -291,7 +291,7 @@ MauvilleCity_EventScript_14C2F2:: @ 814C2F2 checkflag FLAG_RECEIVED_BASEMENT_KEY goto_if_eq MauvilleCity_EventScript_14C332 msgbox MauvilleCity_Text_1661C1, 4 - giveitem ITEM_BASEMENT_KEY + giveitem_std ITEM_BASEMENT_KEY setflag FLAG_RECEIVED_BASEMENT_KEY msgbox MauvilleCity_Text_166331, 4 release @@ -304,7 +304,7 @@ MauvilleCity_EventScript_14C332:: @ 814C332 MauvilleCity_EventScript_14C33C:: @ 814C33C msgbox MauvilleCity_Text_1663EB, 4 - giveitem ITEM_TM24 + giveitem_std ITEM_TM24 compare RESULT, 0 goto_if_eq MauvilleCity_EventScript_1A029B setflag FLAG_RECEIVED_TM24 diff --git a/data/scripts/maps/MauvilleCity_BikeShop.inc b/data/scripts/maps/MauvilleCity_BikeShop.inc index ef44a20bb..6c2dc57e1 100644 --- a/data/scripts/maps/MauvilleCity_BikeShop.inc +++ b/data/scripts/maps/MauvilleCity_BikeShop.inc @@ -46,13 +46,13 @@ MauvilleCity_BikeShop_EventScript_156824:: @ 8156824 MauvilleCity_BikeShop_EventScript_15682D:: @ 815682D msgbox MauvilleCity_BikeShop_Text_181332, 4 - giveitem ITEM_MACH_BIKE + giveitem_std ITEM_MACH_BIKE goto MauvilleCity_BikeShop_EventScript_156861 end MauvilleCity_BikeShop_EventScript_156847:: @ 8156847 msgbox MauvilleCity_BikeShop_Text_18134A, 4 - giveitem ITEM_ACRO_BIKE + giveitem_std ITEM_ACRO_BIKE goto MauvilleCity_BikeShop_EventScript_156861 end @@ -90,16 +90,16 @@ MauvilleCity_BikeShop_EventScript_1568BF:: @ 81568BF MauvilleCity_BikeShop_EventScript_1568C9:: @ 81568C9 incrementgamestat GAME_STAT_TRADED_BIKES msgbox MauvilleCity_BikeShop_Text_181439, 4 - removeitem ITEM_ACRO_BIKE, 1 - giveitem ITEM_MACH_BIKE + takeitem ITEM_ACRO_BIKE, 1 + giveitem_std ITEM_MACH_BIKE goto MauvilleCity_BikeShop_EventScript_156861 end MauvilleCity_BikeShop_EventScript_1568EA:: @ 81568EA incrementgamestat GAME_STAT_TRADED_BIKES msgbox MauvilleCity_BikeShop_Text_181408, 4 - removeitem ITEM_MACH_BIKE, 1 - giveitem ITEM_ACRO_BIKE + takeitem ITEM_MACH_BIKE, 1 + giveitem_std ITEM_ACRO_BIKE goto MauvilleCity_BikeShop_EventScript_156861 end diff --git a/data/scripts/maps/MauvilleCity_GameCorner.inc b/data/scripts/maps/MauvilleCity_GameCorner.inc index 646546dc7..8228238f3 100644 --- a/data/scripts/maps/MauvilleCity_GameCorner.inc +++ b/data/scripts/maps/MauvilleCity_GameCorner.inc @@ -129,17 +129,17 @@ MauvilleCity_GameCorner_EventScript_156BA6:: @ 8156BA6 MauvilleCity_GameCorner_EventScript_156BE2:: @ 8156BE2 setvar 0x4001, 1 - getdecorname 0, 88 + bufferdecorationname 0, 88 goto MauvilleCity_GameCorner_EventScript_156C0C MauvilleCity_GameCorner_EventScript_156BF0:: @ 8156BF0 setvar 0x4001, 2 - getdecorname 0, 89 + bufferdecorationname 0, 89 goto MauvilleCity_GameCorner_EventScript_156C0C MauvilleCity_GameCorner_EventScript_156BFE:: @ 8156BFE setvar 0x4001, 3 - getdecorname 0, 90 + bufferdecorationname 0, 90 goto MauvilleCity_GameCorner_EventScript_156C0C MauvilleCity_GameCorner_EventScript_156C0C:: @ 8156C0C @@ -156,12 +156,12 @@ MauvilleCity_GameCorner_EventScript_156C46:: @ 8156C46 checkcoins 16386 compare 0x4002, 1000 goto_if 0, MauvilleCity_GameCorner_EventScript_156CF4 - getdecorname 1, 88 - checkdecor 88 + bufferdecorationname 1, 88 + checkdecorspace 88 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156D02 takecoins 1000 - adddecor 88 + givedecoration 88 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181E49, 4 @@ -172,12 +172,12 @@ MauvilleCity_GameCorner_EventScript_156C80:: @ 8156C80 checkcoins 16386 compare 0x4002, 1000 goto_if 0, MauvilleCity_GameCorner_EventScript_156CF4 - getdecorname 1, 89 - checkdecor 89 + bufferdecorationname 1, 89 + checkdecorspace 89 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156D02 takecoins 1000 - adddecor 89 + givedecoration 89 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181E49, 4 @@ -188,12 +188,12 @@ MauvilleCity_GameCorner_EventScript_156CBA:: @ 8156CBA checkcoins 16386 compare 0x4002, 1000 goto_if 0, MauvilleCity_GameCorner_EventScript_156CF4 - getdecorname 1, 90 - checkdecor 90 + bufferdecorationname 1, 90 + checkdecorspace 90 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156D02 takecoins 1000 - adddecor 90 + givedecoration 90 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181E49, 4 @@ -252,27 +252,27 @@ MauvilleCity_GameCorner_EventScript_156D54:: @ 8156D54 MauvilleCity_GameCorner_EventScript_156DA6:: @ 8156DA6 setvar 0x4001, 1 - getitemname 0, ITEM_TM32 + bufferitemname 0, ITEM_TM32 goto MauvilleCity_GameCorner_EventScript_156DEC MauvilleCity_GameCorner_EventScript_156DB4:: @ 8156DB4 setvar 0x4001, 2 - getitemname 0, ITEM_TM29 + bufferitemname 0, ITEM_TM29 goto MauvilleCity_GameCorner_EventScript_156DEC MauvilleCity_GameCorner_EventScript_156DC2:: @ 8156DC2 setvar 0x4001, 3 - getitemname 0, ITEM_TM35 + bufferitemname 0, ITEM_TM35 goto MauvilleCity_GameCorner_EventScript_156DEC MauvilleCity_GameCorner_EventScript_156DD0:: @ 8156DD0 setvar 0x4001, 4 - getitemname 0, ITEM_TM24 + bufferitemname 0, ITEM_TM24 goto MauvilleCity_GameCorner_EventScript_156DEC MauvilleCity_GameCorner_EventScript_156DDE:: @ 8156DDE setvar 0x4001, 5 - getitemname 0, ITEM_TM13 + bufferitemname 0, ITEM_TM13 goto MauvilleCity_GameCorner_EventScript_156DEC MauvilleCity_GameCorner_EventScript_156DEC:: @ 8156DEC @@ -295,7 +295,7 @@ MauvilleCity_GameCorner_EventScript_156E3C:: @ 8156E3C compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156F6C takecoins 1500 - additem ITEM_TM32, 1 + giveitem ITEM_TM32, 1 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181F08, 4 @@ -310,7 +310,7 @@ MauvilleCity_GameCorner_EventScript_156E76:: @ 8156E76 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156F6C takecoins 3500 - additem ITEM_TM29, 1 + giveitem ITEM_TM29, 1 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181F08, 4 @@ -325,7 +325,7 @@ MauvilleCity_GameCorner_EventScript_156EB0:: @ 8156EB0 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156F6C takecoins 4000 - additem ITEM_TM35, 1 + giveitem ITEM_TM35, 1 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181F08, 4 @@ -340,7 +340,7 @@ MauvilleCity_GameCorner_EventScript_156EEA:: @ 8156EEA compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156F6C takecoins 4000 - additem ITEM_TM24, 1 + giveitem ITEM_TM24, 1 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181F08, 4 @@ -355,7 +355,7 @@ MauvilleCity_GameCorner_EventScript_156F24:: @ 8156F24 compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_156F6C takecoins 4000 - additem ITEM_TM13, 1 + giveitem ITEM_TM13, 1 updatecoinsbox 0, 0 playse 95 msgbox MauvilleCity_GameCorner_Text_181F08, 4 @@ -401,34 +401,34 @@ MauvilleCity_GameCorner_EventScript_156F96:: @ 8156F96 end MauvilleCity_GameCorner_EventScript_156FDB:: @ 8156FDB - getdecorname 1, DECOR_TREECKO_DOLL - checkdecor DECOR_TREECKO_DOLL + bufferdecorationname 1, DECOR_TREECKO_DOLL + checkdecorspace DECOR_TREECKO_DOLL compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_157059 msgbox MauvilleCity_GameCorner_Text_181F89, 4 - givedecoration DECOR_TREECKO_DOLL + givedecoration_std DECOR_TREECKO_DOLL setflag FLAG_RECEIVED_STARTER_DOLL goto MauvilleCity_GameCorner_EventScript_157072 end MauvilleCity_GameCorner_EventScript_157005:: @ 8157005 - getdecorname 1, DECOR_TORCHIC_DOLL - checkdecor DECOR_TORCHIC_DOLL + bufferdecorationname 1, DECOR_TORCHIC_DOLL + checkdecorspace DECOR_TORCHIC_DOLL compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_157059 msgbox MauvilleCity_GameCorner_Text_181F89, 4 - givedecoration DECOR_TORCHIC_DOLL + givedecoration_std DECOR_TORCHIC_DOLL setflag FLAG_RECEIVED_STARTER_DOLL goto MauvilleCity_GameCorner_EventScript_157072 end MauvilleCity_GameCorner_EventScript_15702F:: @ 815702F - getdecorname 1, DECOR_MUDKIP_DOLL - checkdecor DECOR_MUDKIP_DOLL + bufferdecorationname 1, DECOR_MUDKIP_DOLL + checkdecorspace DECOR_MUDKIP_DOLL compare RESULT, 0 goto_if_eq MauvilleCity_GameCorner_EventScript_157059 msgbox MauvilleCity_GameCorner_Text_181F89, 4 - givedecoration DECOR_MUDKIP_DOLL + givedecoration_std DECOR_MUDKIP_DOLL setflag FLAG_RECEIVED_STARTER_DOLL goto MauvilleCity_GameCorner_EventScript_157072 end diff --git a/data/scripts/maps/MauvilleCity_Gym.inc b/data/scripts/maps/MauvilleCity_Gym.inc index d94436973..799fb0992 100644 --- a/data/scripts/maps/MauvilleCity_Gym.inc +++ b/data/scripts/maps/MauvilleCity_Gym.inc @@ -18,31 +18,31 @@ MauvilleCity_Gym_EventScript_156491:: @ 8156491 end MauvilleCity_Gym_EventScript_15649B:: @ 815649B - setmaptile 4, 7, 560, 0 - setmaptile 4, 8, 568, 0 - setmaptile 5, 7, 561, 0 - setmaptile 5, 8, 569, 0 - setmaptile 3, 8, 578, 1 - setmaptile 3, 9, 538, 0 - setmaptile 3, 10, 593, 0 - setmaptile 1, 10, 546, 0 - setmaptile 1, 11, 554, 1 - setmaptile 2, 10, 547, 0 - setmaptile 2, 11, 555, 1 - setmaptile 4, 10, 546, 0 - setmaptile 4, 11, 554, 1 - setmaptile 5, 10, 547, 0 - setmaptile 5, 11, 555, 1 - setmaptile 6, 11, 578, 1 - setmaptile 6, 12, 538, 0 - setmaptile 6, 13, 593, 0 - setmaptile 3, 11, 577, 1 - setmaptile 3, 12, 585, 1 - setmaptile 3, 13, 592, 1 - setmaptile 4, 13, 560, 0 - setmaptile 4, 14, 568, 0 - setmaptile 5, 13, 561, 0 - setmaptile 5, 14, 569, 0 + setmetatile 4, 7, 560, 0 + setmetatile 4, 8, 568, 0 + setmetatile 5, 7, 561, 0 + setmetatile 5, 8, 569, 0 + setmetatile 3, 8, 578, 1 + setmetatile 3, 9, 538, 0 + setmetatile 3, 10, 593, 0 + setmetatile 1, 10, 546, 0 + setmetatile 1, 11, 554, 1 + setmetatile 2, 10, 547, 0 + setmetatile 2, 11, 555, 1 + setmetatile 4, 10, 546, 0 + setmetatile 4, 11, 554, 1 + setmetatile 5, 10, 547, 0 + setmetatile 5, 11, 555, 1 + setmetatile 6, 11, 578, 1 + setmetatile 6, 12, 538, 0 + setmetatile 6, 13, 593, 0 + setmetatile 3, 11, 577, 1 + setmetatile 3, 12, 585, 1 + setmetatile 3, 13, 592, 1 + setmetatile 4, 13, 560, 0 + setmetatile 4, 14, 568, 0 + setmetatile 5, 13, 561, 0 + setmetatile 5, 14, 569, 0 end MauvilleCity_Gym_EventScript_15657D:: @ 815657D @@ -96,7 +96,7 @@ MauvilleCity_Gym_EventScript_1565DB:: @ 81565DB end MauvilleCity_Gym_EventScript_15661D:: @ 815661D - giveitem ITEM_TM34 + giveitem_std ITEM_TM34 compare RESULT, 0 goto_if_eq MauvilleCity_Gym_EventScript_1A029B msgbox MauvilleCity_Gym_Text_180E76, 4 diff --git a/data/scripts/maps/MauvilleCity_House1.inc b/data/scripts/maps/MauvilleCity_House1.inc index acb9f39fa..210288517 100644 --- a/data/scripts/maps/MauvilleCity_House1.inc +++ b/data/scripts/maps/MauvilleCity_House1.inc @@ -7,7 +7,7 @@ MauvilleCity_House1_EventScript_1569FD:: @ 81569FD checkflag FLAG_RECEIVED_HM06 goto_if_eq MauvilleCity_House1_EventScript_156A29 msgbox MauvilleCity_House1_Text_181B1A, 4 - giveitem ITEM_HM06 + giveitem_std ITEM_HM06 setflag FLAG_RECEIVED_HM06 msgbox MauvilleCity_House1_Text_181B64, 4 release diff --git a/data/scripts/maps/MauvilleCity_House2.inc b/data/scripts/maps/MauvilleCity_House2.inc index 7104ebee7..a058003bc 100644 --- a/data/scripts/maps/MauvilleCity_House2.inc +++ b/data/scripts/maps/MauvilleCity_House2.inc @@ -28,8 +28,8 @@ MauvilleCity_House2_EventScript_1572E5:: @ 81572E5 MauvilleCity_House2_EventScript_15731B:: @ 815731B msgbox MauvilleCity_House2_Text_182515, 4 - removeitem ITEM_HARBOR_MAIL, 1 - giveitem ITEM_COIN_CASE + takeitem ITEM_HARBOR_MAIL, 1 + giveitem_std ITEM_COIN_CASE setflag FLAG_RECEIVED_COIN_CASE goto MauvilleCity_House2_EventScript_15733D end diff --git a/data/scripts/maps/MauvilleCity_PokemonCenter_1F.inc b/data/scripts/maps/MauvilleCity_PokemonCenter_1F.inc index 7122b8c3c..de30e21cd 100644 --- a/data/scripts/maps/MauvilleCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/MauvilleCity_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ MauvilleCity_PokemonCenter_1F_MapScripts:: @ 8157351 .byte 0 MauvilleCity_PokemonCenter_1F_MapScript1_157357:: @ 8157357 - sethealplace 5 + setrespawn 5 call MauvilleCity_PokemonCenter_1F_EventScript_19FD1B goto MauvilleCity_PokemonCenter_1F_EventScript_157365 end @@ -16,7 +16,7 @@ MauvilleCity_PokemonCenter_1F_EventScript_157369:: @ 8157369 setvar 0x800b, 1 call MauvilleCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/MossdeepCity.inc b/data/scripts/maps/MossdeepCity.inc index 31ed83b2a..f165bd3ef 100644 --- a/data/scripts/maps/MossdeepCity.inc +++ b/data/scripts/maps/MossdeepCity.inc @@ -74,7 +74,7 @@ MossdeepCity_EventScript_14D027:: @ 814D027 compare RESULT, 0 goto_if_eq MossdeepCity_EventScript_14D073 msgbox MossdeepCity_Text_169117, 4 - giveitem ITEM_KINGS_ROCK + giveitem_std ITEM_KINGS_ROCK compare RESULT, 0 goto_if_eq MossdeepCity_EventScript_1A029B setflag FLAG_RECEIVED_KINGS_ROCK diff --git a/data/scripts/maps/MossdeepCity_GameCorner_1F.inc b/data/scripts/maps/MossdeepCity_GameCorner_1F.inc index afc02e82c..75fc3c6b8 100644 --- a/data/scripts/maps/MossdeepCity_GameCorner_1F.inc +++ b/data/scripts/maps/MossdeepCity_GameCorner_1F.inc @@ -11,8 +11,8 @@ MossdeepCity_GameCorner_1F_MapScript1_15AC62:: @ 815AC62 end MossdeepCity_GameCorner_1F_EventScript_15AC71:: @ 815AC71 - setmaptile 3, 0, 653, 1 - setmaptile 3, 1, 661, 1 + setmetatile 3, 0, 653, 1 + setmetatile 3, 1, 661, 1 return MossdeepCity_GameCorner_1F_MapScript1_15AC84:: @ 815AC84 diff --git a/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc b/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc index 94f44e311..12a94154b 100644 --- a/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc +++ b/data/scripts/maps/MossdeepCity_GameCorner_B1F.inc @@ -48,14 +48,14 @@ MossdeepCity_GameCorner_B1F_EventScript_15AEE3:: @ 815AEE3 setvar 0x40c0, 1 special ShowFieldMessageStringVar4 waitmessage - waitbutton + waitbuttonpress return MossdeepCity_GameCorner_B1F_EventScript_15AEEE:: @ 815AEEE setvar 0x40c0, 2 special ShowFieldMessageStringVar4 waitmessage - waitbutton + waitbuttonpress return MossdeepCity_GameCorner_B1F_Movement_15AEF9:: @ 815AEF9 diff --git a/data/scripts/maps/MossdeepCity_Gym.inc b/data/scripts/maps/MossdeepCity_Gym.inc index 0c27c28f7..b1550a4c1 100644 --- a/data/scripts/maps/MossdeepCity_Gym.inc +++ b/data/scripts/maps/MossdeepCity_Gym.inc @@ -26,26 +26,26 @@ MossdeepCity_Gym_EventScript_15A506:: @ 815A506 end MossdeepCity_Gym_EventScript_15A510:: @ 815A510 - setmaptile 5, 5, 516, 0 - setmaptile 2, 7, 569, 1 + setmetatile 5, 5, 516, 0 + setmetatile 2, 7, 569, 1 goto MossdeepCity_Gym_EventScript_15A4E8 end MossdeepCity_Gym_EventScript_15A528:: @ 815A528 - setmaptile 8, 14, 516, 0 - setmaptile 8, 10, 569, 1 + setmetatile 8, 14, 516, 0 + setmetatile 8, 10, 569, 1 goto MossdeepCity_Gym_EventScript_15A4F7 end MossdeepCity_Gym_EventScript_15A540:: @ 815A540 - setmaptile 15, 17, 524, 0 - setmaptile 17, 15, 569, 1 + setmetatile 15, 17, 524, 0 + setmetatile 17, 15, 569, 1 goto MossdeepCity_Gym_EventScript_15A506 end MossdeepCity_Gym_EventScript_15A558:: @ 815A558 - setmaptile 1, 23, 525, 0 - setmaptile 5, 24, 569, 1 + setmetatile 1, 23, 525, 0 + setmetatile 5, 24, 569, 1 end MossdeepCity_Gym_EventScript_15A56B:: @ 815A56B @@ -72,7 +72,7 @@ MossdeepCity_Gym_EventScript_15A594:: @ 815A594 end MossdeepCity_Gym_EventScript_15A5C6:: @ 815A5C6 - giveitem ITEM_TM04 + giveitem_std ITEM_TM04 compare RESULT, 0 goto_if_eq MossdeepCity_Gym_EventScript_1A029B msgbox MossdeepCity_Gym_Text_18D1CF, 4 @@ -87,8 +87,8 @@ MossdeepCity_Gym_EventScript_15A5EA:: @ 815A5EA setflag FLAG_MOSSDEEP_GYM_SWITCH_1 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 5, 5, 516, 0 - setmaptile 2, 7, 569, 1 + setmetatile 5, 5, 516, 0 + setmetatile 2, 7, 569, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -102,8 +102,8 @@ MossdeepCity_Gym_EventScript_15A621:: @ 815A621 clearflag FLAG_MOSSDEEP_GYM_SWITCH_1 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 5, 5, 524, 0 - setmaptile 2, 7, 568, 1 + setmetatile 5, 5, 524, 0 + setmetatile 2, 7, 568, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -114,8 +114,8 @@ MossdeepCity_Gym_EventScript_15A646:: @ 815A646 setflag FLAG_MOSSDEEP_GYM_SWITCH_2 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 8, 14, 516, 0 - setmaptile 8, 10, 569, 1 + setmetatile 8, 14, 516, 0 + setmetatile 8, 10, 569, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -123,8 +123,8 @@ MossdeepCity_Gym_EventScript_15A675:: @ 815A675 clearflag FLAG_MOSSDEEP_GYM_SWITCH_2 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 8, 14, 517, 0 - setmaptile 8, 10, 568, 1 + setmetatile 8, 14, 517, 0 + setmetatile 8, 10, 568, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -135,8 +135,8 @@ MossdeepCity_Gym_EventScript_15A69A:: @ 815A69A setflag FLAG_MOSSDEEP_GYM_SWITCH_3 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 15, 17, 524, 0 - setmaptile 17, 15, 569, 1 + setmetatile 15, 17, 524, 0 + setmetatile 17, 15, 569, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -144,8 +144,8 @@ MossdeepCity_Gym_EventScript_15A6C9:: @ 815A6C9 clearflag FLAG_MOSSDEEP_GYM_SWITCH_3 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 15, 17, 516, 0 - setmaptile 17, 15, 568, 1 + setmetatile 15, 17, 516, 0 + setmetatile 17, 15, 568, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -156,8 +156,8 @@ MossdeepCity_Gym_EventScript_15A6EE:: @ 815A6EE setflag FLAG_MOSSDEEP_GYM_SWITCH_4 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 1, 23, 525, 0 - setmaptile 5, 24, 569, 1 + setmetatile 1, 23, 525, 0 + setmetatile 5, 24, 569, 1 goto MossdeepCity_Gym_EventScript_15A619 end @@ -165,8 +165,8 @@ MossdeepCity_Gym_EventScript_15A71D:: @ 815A71D clearflag FLAG_MOSSDEEP_GYM_SWITCH_4 applymovement 255, MossdeepCity_Gym_Movement_15A7F7 waitmovement 0 - setmaptile 1, 23, 516, 0 - setmaptile 5, 24, 568, 1 + setmetatile 1, 23, 516, 0 + setmetatile 5, 24, 568, 1 goto MossdeepCity_Gym_EventScript_15A619 end diff --git a/data/scripts/maps/MossdeepCity_House1.inc b/data/scripts/maps/MossdeepCity_House1.inc index 62edffc8b..97a5fc452 100644 --- a/data/scripts/maps/MossdeepCity_House1.inc +++ b/data/scripts/maps/MossdeepCity_House1.inc @@ -4,7 +4,7 @@ MossdeepCity_House1_MapScripts:: @ 815A82E MossdeepCity_House1_EventScript_15A82F:: @ 815A82F lock faceplayer - getfirstpartypokename 0 + bufferleadmonspeciesname 0 msgbox MossdeepCity_House1_Text_18D465, 4 specialvar RESULT, GetPokeblockNameByMonNature compare RESULT, 0 diff --git a/data/scripts/maps/MossdeepCity_House2.inc b/data/scripts/maps/MossdeepCity_House2.inc index f90fc9350..1da204ff0 100644 --- a/data/scripts/maps/MossdeepCity_House2.inc +++ b/data/scripts/maps/MossdeepCity_House2.inc @@ -13,9 +13,9 @@ MossdeepCity_House2_EventScript_15A87B:: @ 815A87B lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox MossdeepCity_House2_Text_18D61E, 4 - waitpokecry + waitmoncry closemessage setflag FLAG_WINGULL_DELIVERED_MAIL clearflag FLAG_HIDE_WINGULL_FORTREE_HOUSE diff --git a/data/scripts/maps/MossdeepCity_House3.inc b/data/scripts/maps/MossdeepCity_House3.inc index 63054a60c..6632ac793 100644 --- a/data/scripts/maps/MossdeepCity_House3.inc +++ b/data/scripts/maps/MossdeepCity_House3.inc @@ -10,7 +10,7 @@ MossdeepCity_House3_EventScript_15A972:: @ 815A972 compare RESULT, 0 goto_if_eq MossdeepCity_House3_EventScript_15A9BB msgbox MossdeepCity_House3_Text_18D9A9, 4 - giveitem ITEM_SUPER_ROD + giveitem_std ITEM_SUPER_ROD setflag FLAG_RECEIVED_SUPER_ROD msgbox MossdeepCity_House3_Text_18D9E3, 4 release diff --git a/data/scripts/maps/MossdeepCity_House4.inc b/data/scripts/maps/MossdeepCity_House4.inc index fd400ad16..856ee1287 100644 --- a/data/scripts/maps/MossdeepCity_House4.inc +++ b/data/scripts/maps/MossdeepCity_House4.inc @@ -35,8 +35,8 @@ MossdeepCity_House4_EventScript_15AB77:: @ 815AB77 lock faceplayer waitse - playpokecry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, 0 msgbox MossdeepCity_House4_Text_18E1E1, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/MossdeepCity_PokemonCenter_1F.inc b/data/scripts/maps/MossdeepCity_PokemonCenter_1F.inc index 4ed3ea57e..c26238102 100644 --- a/data/scripts/maps/MossdeepCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/MossdeepCity_PokemonCenter_1F.inc @@ -3,14 +3,14 @@ MossdeepCity_PokemonCenter_1F_MapScripts:: @ 815A8D0 .byte 0 MossdeepCity_PokemonCenter_1F_MapScript1_15A8D6:: @ 815A8D6 - sethealplace 9 + setrespawn 9 end MossdeepCity_PokemonCenter_1F_EventScript_15A8DA:: @ 815A8DA setvar 0x800b, 1 call MossdeepCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/MossdeepCity_SpaceCenter_1F.inc b/data/scripts/maps/MossdeepCity_SpaceCenter_1F.inc index 165742145..884124567 100644 --- a/data/scripts/maps/MossdeepCity_SpaceCenter_1F.inc +++ b/data/scripts/maps/MossdeepCity_SpaceCenter_1F.inc @@ -6,7 +6,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_15AB8B:: @ 815AB8B faceplayer dodailyevents specialvar RESULT, GetWeekCount - getnumberstring 0, RESULT + buffernumberstring 0, RESULT compare RESULT, 0 call_if 1, MossdeepCity_SpaceCenter_1F_EventScript_15ABBA compare RESULT, 1 @@ -35,7 +35,7 @@ MossdeepCity_SpaceCenter_1F_EventScript_15ABD5:: @ 815ABD5 checkflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_15AC0C msgbox MossdeepCity_SpaceCenter_1F_Text_18E335, 4 - giveitem ITEM_SUN_STONE + giveitem_std ITEM_SUN_STONE compare RESULT, 0 goto_if_eq MossdeepCity_SpaceCenter_1F_EventScript_1A029B setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP diff --git a/data/scripts/maps/MossdeepCity_StevensHouse.inc b/data/scripts/maps/MossdeepCity_StevensHouse.inc index 55ee9ebac..7e08cfa69 100644 --- a/data/scripts/maps/MossdeepCity_StevensHouse.inc +++ b/data/scripts/maps/MossdeepCity_StevensHouse.inc @@ -10,7 +10,7 @@ MossdeepCity_StevensHouse_MapScript1_15A9D5:: @ 815A9D5 end MossdeepCity_StevensHouse_EventScript_15A9DF:: @ 815A9DF - setmaptile 6, 4, 753, 1 + setmetatile 6, 4, 753, 1 return MossdeepCity_StevensHouse_MapScript1_15A9E9:: @ 815A9E9 @@ -39,7 +39,7 @@ MossdeepCity_StevensHouse_EventScript_15AA0B:: @ 815AA0B applymovement 1, MossdeepCity_StevensHouse_Movement_15AA6E waitmovement 0 msgbox MossdeepCity_StevensHouse_Text_18DA77, 4 - giveitem ITEM_HM08 + giveitem_std ITEM_HM08 setflag FLAG_RECEIVED_HM08 setflag FLAG_OMIT_DIVE_FROM_STEVEN_LETTER msgbox MossdeepCity_StevensHouse_Text_18DB22, 4 @@ -74,7 +74,7 @@ MossdeepCity_StevensHouse_EventScript_15AA7C:: @ 815AA7C msgbox MossdeepCity_StevensHouse_Text_18DD12, 5 compare RESULT, 0 goto_if_eq MossdeepCity_StevensHouse_EventScript_15AAE6 - countpokemon + getpartysize compare RESULT, 6 goto_if_eq MossdeepCity_StevensHouse_EventScript_15AADC copyvar 0x8004, RESULT @@ -83,8 +83,8 @@ MossdeepCity_StevensHouse_EventScript_15AA7C:: @ 815AA7C message MossdeepCity_StevensHouse_Text_18DD61 waitfanfare waitmessage - givepoke SPECIES_BELDUM, 5, ITEM_NONE, 0x0, 0x0, 0 - getspeciesname 1, SPECIES_BELDUM + givemon SPECIES_BELDUM, 5, ITEM_NONE, 0x0, 0x0, 0 + bufferspeciesname 1, SPECIES_BELDUM msgbox MossdeepCity_StevensHouse_Text_1A1102, 5 compare RESULT, 1 call_if 1, MossdeepCity_StevensHouse_EventScript_1A0678 @@ -125,6 +125,6 @@ MossdeepCity_StevensHouse_EventScript_15AB16:: @ 815AB16 end MossdeepCity_StevensHouse_EventScript_15AB20:: @ 815AB20 - giveitem ITEM_HM08, 1, 1 + giveitem_std ITEM_HM08, 1, 1 setflag FLAG_RECEIVED_HM08 end diff --git a/data/scripts/maps/MtChimney.inc b/data/scripts/maps/MtChimney.inc index 0a3570d6d..a51695b59 100644 --- a/data/scripts/maps/MtChimney.inc +++ b/data/scripts/maps/MtChimney.inc @@ -9,7 +9,7 @@ MtChimney_MapScript1_15CF87:: @ 815CF87 end MtChimney_MapScript1_15CF92:: @ 815CF92 - tileeffect 1 + setstepcallback 1 end MtChimney_EventScript_15CF95:: @ 815CF95 @@ -27,7 +27,7 @@ MtChimney_EventScript_15CF95:: @ 815CF95 checkitemspace ITEM_LAVA_COOKIE, 1 compare RESULT, 1 call_if 1, MtChimney_EventScript_15D000 - giveitem ITEM_LAVA_COOKIE + giveitem_std ITEM_LAVA_COOKIE compare RESULT, 0 goto_if_eq MtChimney_EventScript_15CFF3 hidemoneybox 0, 0 @@ -414,7 +414,7 @@ MtChimney_EventScript_15D17D:: @ 815D17D compare RESULT, 0 goto_if_eq MtChimney_EventScript_15D1BC msgbox MtChimney_Text_1958C6, 4 - giveitem ITEM_METEORITE + giveitem_std ITEM_METEORITE setflag FLAG_RECEIVED_METEORITE releaseall end diff --git a/data/scripts/maps/MtPyre_1F.inc b/data/scripts/maps/MtPyre_1F.inc index 5d6e42874..7073000d5 100644 --- a/data/scripts/maps/MtPyre_1F.inc +++ b/data/scripts/maps/MtPyre_1F.inc @@ -7,7 +7,7 @@ MtPyre_1F_EventScript_15D323:: @ 815D323 checkflag FLAG_RECEIVED_CLEANSE_TAG goto_if_eq MtPyre_1F_EventScript_15D352 msgbox MtPyre_1F_Text_196151, 4 - giveitem ITEM_CLEANSE_TAG + giveitem_std ITEM_CLEANSE_TAG compare RESULT, 0 goto_if_eq MtPyre_1F_EventScript_1A029B setflag FLAG_RECEIVED_CLEANSE_TAG diff --git a/data/scripts/maps/MtPyre_2F.inc b/data/scripts/maps/MtPyre_2F.inc index 90ad1d9cc..1d2368597 100644 --- a/data/scripts/maps/MtPyre_2F.inc +++ b/data/scripts/maps/MtPyre_2F.inc @@ -5,7 +5,7 @@ MtPyre_2F_MapScripts:: @ 815D36E .byte 0 MtPyre_2F_MapScript1_15D37E:: @ 815D37E - tileeffect 7 + setstepcallback 7 setholewarp MAP_MT_PYRE_1F, 255, 0, 0 end diff --git a/data/scripts/maps/MtPyre_Summit.inc b/data/scripts/maps/MtPyre_Summit.inc index 47a842b56..73e2e4d97 100644 --- a/data/scripts/maps/MtPyre_Summit.inc +++ b/data/scripts/maps/MtPyre_Summit.inc @@ -63,7 +63,7 @@ MtPyre_Summit_EventScript_15D4E1:: @ 815D4E1 .else msgbox MtPyre_Summit_Text_1B5FE6, 4 .endif - giveitem ITEM_RED_OR_BLUE_ORB + giveitem_std ITEM_RED_OR_BLUE_ORB setflag FLAG_RECEIVED_RED_OR_BLUE_ORB releaseall end diff --git a/data/scripts/maps/NewMauville_Entrance.inc b/data/scripts/maps/NewMauville_Entrance.inc index 1234f5653..a88b35087 100644 --- a/data/scripts/maps/NewMauville_Entrance.inc +++ b/data/scripts/maps/NewMauville_Entrance.inc @@ -9,12 +9,12 @@ NewMauville_Entrance_MapScript1_15E495:: @ 815E495 end NewMauville_Entrance_EventScript_15E4A1:: @ 815E4A1 - setmaptile 3, 0, 788, 1 - setmaptile 4, 0, 789, 1 - setmaptile 5, 0, 790, 1 - setmaptile 3, 1, 796, 1 - setmaptile 4, 1, 797, 1 - setmaptile 5, 1, 798, 1 + setmetatile 3, 0, 788, 1 + setmetatile 4, 0, 789, 1 + setmetatile 5, 0, 790, 1 + setmetatile 3, 1, 796, 1 + setmetatile 4, 1, 797, 1 + setmetatile 5, 1, 798, 1 return NewMauville_Entrance_MapScript1_15E4D8:: @ 815E4D8 @@ -33,12 +33,12 @@ NewMauville_Entrance_EventScript_15E4DC:: @ 815E4DC compare RESULT, 0 goto_if_eq NewMauville_Entrance_EventScript_15E55D msgbox NewMauville_Entrance_Text_1982EA, 4 - setmaptile 3, 0, 707, 0 - setmaptile 4, 0, 708, 0 - setmaptile 5, 0, 709, 0 - setmaptile 3, 1, 715, 1 - setmaptile 4, 1, 716, 0 - setmaptile 5, 1, 717, 1 + setmetatile 3, 0, 707, 0 + setmetatile 4, 0, 708, 0 + setmetatile 5, 0, 709, 0 + setmetatile 3, 1, 715, 1 + setmetatile 4, 1, 716, 0 + setmetatile 5, 1, 717, 1 special DrawWholeMapView playse 20 setvar 0x40ba, 1 diff --git a/data/scripts/maps/NewMauville_Inside.inc b/data/scripts/maps/NewMauville_Inside.inc index aa6cf6310..aefb23c61 100644 --- a/data/scripts/maps/NewMauville_Inside.inc +++ b/data/scripts/maps/NewMauville_Inside.inc @@ -48,83 +48,83 @@ NewMauville_Inside_EventScript_15E5C2:: @ 815E5C2 end NewMauville_Inside_EventScript_15E5DA:: @ 815E5DA - setmaptile 23, 34, 617, 1 - setmaptile 23, 35, 625, 1 - setmaptile 23, 36, 621, 0 - setmaptile 23, 37, 641, 0 - setmaptile 10, 16, 617, 1 - setmaptile 10, 17, 625, 1 - setmaptile 10, 18, 621, 0 - setmaptile 10, 19, 641, 0 - setmaptile 10, 0, 617, 1 - setmaptile 10, 1, 625, 1 - setmaptile 10, 2, 621, 0 - setmaptile 10, 3, 641, 0 - setmaptile 37, 33, 694, 1 - setmaptile 37, 34, 702, 1 - setmaptile 37, 35, 710, 1 - setmaptile 37, 36, 718, 1 - setmaptile 28, 22, 694, 1 - setmaptile 28, 23, 702, 1 - setmaptile 28, 24, 710, 1 - setmaptile 28, 25, 718, 1 - setmaptile 10, 24, 694, 1 - setmaptile 10, 25, 702, 1 - setmaptile 10, 26, 710, 1 - setmaptile 10, 27, 718, 1 - setmaptile 21, 2, 694, 1 - setmaptile 21, 3, 702, 1 - setmaptile 21, 4, 710, 1 - setmaptile 21, 5, 718, 1 - setmaptile 6, 11, 591, 0 - setmaptile 13, 10, 591, 0 - setmaptile 16, 22, 591, 0 - setmaptile 4, 26, 591, 0 - setmaptile 30, 38, 591, 0 - setmaptile 2, 11, 558, 0 - setmaptile 17, 10, 558, 0 - setmaptile 25, 18, 558, 0 - setmaptile 18, 36, 558, 0 + setmetatile 23, 34, 617, 1 + setmetatile 23, 35, 625, 1 + setmetatile 23, 36, 621, 0 + setmetatile 23, 37, 641, 0 + setmetatile 10, 16, 617, 1 + setmetatile 10, 17, 625, 1 + setmetatile 10, 18, 621, 0 + setmetatile 10, 19, 641, 0 + setmetatile 10, 0, 617, 1 + setmetatile 10, 1, 625, 1 + setmetatile 10, 2, 621, 0 + setmetatile 10, 3, 641, 0 + setmetatile 37, 33, 694, 1 + setmetatile 37, 34, 702, 1 + setmetatile 37, 35, 710, 1 + setmetatile 37, 36, 718, 1 + setmetatile 28, 22, 694, 1 + setmetatile 28, 23, 702, 1 + setmetatile 28, 24, 710, 1 + setmetatile 28, 25, 718, 1 + setmetatile 10, 24, 694, 1 + setmetatile 10, 25, 702, 1 + setmetatile 10, 26, 710, 1 + setmetatile 10, 27, 718, 1 + setmetatile 21, 2, 694, 1 + setmetatile 21, 3, 702, 1 + setmetatile 21, 4, 710, 1 + setmetatile 21, 5, 718, 1 + setmetatile 6, 11, 591, 0 + setmetatile 13, 10, 591, 0 + setmetatile 16, 22, 591, 0 + setmetatile 4, 26, 591, 0 + setmetatile 30, 38, 591, 0 + setmetatile 2, 11, 558, 0 + setmetatile 17, 10, 558, 0 + setmetatile 25, 18, 558, 0 + setmetatile 18, 36, 558, 0 return NewMauville_Inside_EventScript_15E728:: @ 815E728 - setmaptile 23, 34, 695, 1 - setmaptile 23, 35, 703, 1 - setmaptile 23, 36, 711, 1 - setmaptile 23, 37, 719, 1 - setmaptile 10, 16, 695, 1 - setmaptile 10, 17, 703, 1 - setmaptile 10, 18, 711, 1 - setmaptile 10, 19, 719, 1 - setmaptile 10, 0, 695, 1 - setmaptile 10, 1, 703, 1 - setmaptile 10, 2, 711, 1 - setmaptile 10, 3, 719, 1 - setmaptile 37, 33, 617, 1 - setmaptile 37, 34, 625, 1 - setmaptile 37, 35, 621, 0 - setmaptile 37, 36, 641, 0 - setmaptile 28, 22, 617, 1 - setmaptile 28, 23, 625, 1 - setmaptile 28, 24, 621, 0 - setmaptile 28, 25, 641, 0 - setmaptile 10, 24, 617, 1 - setmaptile 10, 25, 625, 1 - setmaptile 10, 26, 621, 0 - setmaptile 10, 27, 641, 0 - setmaptile 21, 2, 617, 1 - setmaptile 21, 3, 625, 1 - setmaptile 21, 4, 621, 0 - setmaptile 21, 5, 641, 0 - setmaptile 2, 11, 591, 0 - setmaptile 17, 10, 591, 0 - setmaptile 25, 18, 591, 0 - setmaptile 18, 36, 591, 0 - setmaptile 6, 11, 566, 0 - setmaptile 13, 10, 566, 0 - setmaptile 16, 22, 566, 0 - setmaptile 4, 26, 566, 0 - setmaptile 30, 38, 566, 0 + setmetatile 23, 34, 695, 1 + setmetatile 23, 35, 703, 1 + setmetatile 23, 36, 711, 1 + setmetatile 23, 37, 719, 1 + setmetatile 10, 16, 695, 1 + setmetatile 10, 17, 703, 1 + setmetatile 10, 18, 711, 1 + setmetatile 10, 19, 719, 1 + setmetatile 10, 0, 695, 1 + setmetatile 10, 1, 703, 1 + setmetatile 10, 2, 711, 1 + setmetatile 10, 3, 719, 1 + setmetatile 37, 33, 617, 1 + setmetatile 37, 34, 625, 1 + setmetatile 37, 35, 621, 0 + setmetatile 37, 36, 641, 0 + setmetatile 28, 22, 617, 1 + setmetatile 28, 23, 625, 1 + setmetatile 28, 24, 621, 0 + setmetatile 28, 25, 641, 0 + setmetatile 10, 24, 617, 1 + setmetatile 10, 25, 625, 1 + setmetatile 10, 26, 621, 0 + setmetatile 10, 27, 641, 0 + setmetatile 21, 2, 617, 1 + setmetatile 21, 3, 625, 1 + setmetatile 21, 4, 621, 0 + setmetatile 21, 5, 641, 0 + setmetatile 2, 11, 591, 0 + setmetatile 17, 10, 591, 0 + setmetatile 25, 18, 591, 0 + setmetatile 18, 36, 591, 0 + setmetatile 6, 11, 566, 0 + setmetatile 13, 10, 566, 0 + setmetatile 16, 22, 566, 0 + setmetatile 4, 26, 566, 0 + setmetatile 30, 38, 566, 0 return NewMauville_Inside_EventScript_15E876:: @ 815E876 @@ -136,15 +136,15 @@ NewMauville_Inside_EventScript_15E876:: @ 815E876 end NewMauville_Inside_EventScript_15E88B:: @ 815E88B - setmaptile 33, 6, 591, 0 - setmaptile 32, 2, 752, 1 - setmaptile 33, 2, 753, 1 - setmaptile 34, 2, 754, 1 - setmaptile 35, 2, 755, 1 - setmaptile 32, 3, 756, 1 - setmaptile 33, 3, 757, 1 - setmaptile 34, 3, 758, 1 - setmaptile 35, 3, 759, 1 + setmetatile 33, 6, 591, 0 + setmetatile 32, 2, 752, 1 + setmetatile 33, 2, 753, 1 + setmetatile 34, 2, 754, 1 + setmetatile 35, 2, 755, 1 + setmetatile 32, 3, 756, 1 + setmetatile 33, 3, 757, 1 + setmetatile 34, 3, 758, 1 + setmetatile 35, 3, 759, 1 special DrawWholeMapView return @@ -166,9 +166,9 @@ NewMauville_Inside_EventScript_15E900:: @ 815E900 faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playpokecry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_VOLTORB_1_NEW_MAUVILLE setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -181,9 +181,9 @@ NewMauville_Inside_EventScript_15E91E:: @ 815E91E faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playpokecry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_VOLTORB_2_NEW_MAUVILLE setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle @@ -196,9 +196,9 @@ NewMauville_Inside_EventScript_15E93C:: @ 815E93C faceplayer setwildbattle SPECIES_VOLTORB, 25, ITEM_NONE waitse - playpokecry SPECIES_VOLTORB, 2 + playmoncry SPECIES_VOLTORB, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_VOLTORB_3_NEW_MAUVILLE setflag FLAG_SYS_CTRL_OBJ_DELETE dowildbattle diff --git a/data/scripts/maps/OldaleTown.inc b/data/scripts/maps/OldaleTown.inc index 64928f840..465cbcfc6 100644 --- a/data/scripts/maps/OldaleTown.inc +++ b/data/scripts/maps/OldaleTown.inc @@ -75,7 +75,7 @@ OldaleTown_EventScript_14DE35:: @ 814DE35 OldaleTown_EventScript_14DE4C:: @ 814DE4C msgbox OldaleTown_Text_16AF2F, 4 - giveitem ITEM_POTION + giveitem_std ITEM_POTION compare RESULT, 0 goto_if_eq OldaleTown_EventScript_14DE83 msgbox OldaleTown_Text_16AFE1, 4 diff --git a/data/scripts/maps/OldaleTown_PokemonCenter_1F.inc b/data/scripts/maps/OldaleTown_PokemonCenter_1F.inc index 69503908a..cbf3acd27 100644 --- a/data/scripts/maps/OldaleTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/OldaleTown_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ OldaleTown_PokemonCenter_1F_MapScripts:: @ 8152F08 .byte 0 OldaleTown_PokemonCenter_1F_MapScript1_152F0E:: @ 8152F0E - sethealplace 14 + setrespawn 14 call OldaleTown_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ OldaleTown_PokemonCenter_1F_EventScript_152F17:: @ 8152F17 setvar 0x800b, 1 call OldaleTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/PacifidlogTown.inc b/data/scripts/maps/PacifidlogTown.inc index 085d083d8..d7ac80a0a 100644 --- a/data/scripts/maps/PacifidlogTown.inc +++ b/data/scripts/maps/PacifidlogTown.inc @@ -8,7 +8,7 @@ PacifidlogTown_MapScript1_14E8F9:: @ 814E8F9 end PacifidlogTown_MapScript1_14E8FD:: @ 814E8FD - tileeffect 3 + setstepcallback 3 end PacifidlogTown_EventScript_14E900:: @ 814E900 diff --git a/data/scripts/maps/PacifidlogTown_House2.inc b/data/scripts/maps/PacifidlogTown_House2.inc index 942f5626b..f073201ca 100644 --- a/data/scripts/maps/PacifidlogTown_House2.inc +++ b/data/scripts/maps/PacifidlogTown_House2.inc @@ -45,7 +45,7 @@ PacifidlogTown_House2_EventScript_1541E8:: @ 81541E8 PacifidlogTown_House2_EventScript_1541EC:: @ 81541EC msgbox PacifidlogTown_House2_Text_179169, 4 - giveitem ITEM_TM27 + giveitem_std ITEM_TM27 compare RESULT, 0 goto_if_eq PacifidlogTown_House2_EventScript_1A029B setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK @@ -61,7 +61,7 @@ PacifidlogTown_House2_EventScript_15421B:: @ 815421B PacifidlogTown_House2_EventScript_154225:: @ 8154225 msgbox PacifidlogTown_House2_Text_17922D, 4 - giveitem ITEM_TM21 + giveitem_std ITEM_TM21 compare RESULT, 0 goto_if_eq PacifidlogTown_House2_EventScript_1A029B setflag FLAG_RECEIVED_FANCLUB_TM_THIS_WEEK @@ -72,7 +72,7 @@ PacifidlogTown_House2_EventScript_154225:: @ 8154225 PacifidlogTown_House2_EventScript_154254:: @ 8154254 specialvar RESULT, sub_810F908 - getnumberstring 0, RESULT + buffernumberstring 0, RESULT msgbox PacifidlogTown_House2_Text_1792F2, 4 release end @@ -81,9 +81,9 @@ PacifidlogTown_House2_EventScript_154267:: @ 8154267 lock faceplayer waitse - playpokecry SPECIES_AZURILL, 0 + playmoncry SPECIES_AZURILL, 0 msgbox PacifidlogTown_House2_Text_17938B, 4 - waitpokecry + waitmoncry msgbox PacifidlogTown_House2_Text_17939B, 4 release end @@ -92,9 +92,9 @@ PacifidlogTown_House2_EventScript_154282:: @ 8154282 lock faceplayer waitse - playpokecry SPECIES_AZURILL, 2 + playmoncry SPECIES_AZURILL, 2 msgbox PacifidlogTown_House2_Text_1793CC, 4 - waitpokecry + waitmoncry msgbox PacifidlogTown_House2_Text_1793DD, 4 release end diff --git a/data/scripts/maps/PacifidlogTown_House3.inc b/data/scripts/maps/PacifidlogTown_House3.inc index a2e033a24..624a221d5 100644 --- a/data/scripts/maps/PacifidlogTown_House3.inc +++ b/data/scripts/maps/PacifidlogTown_House3.inc @@ -28,7 +28,7 @@ PacifidlogTown_House3_EventScript_15429E:: @ 815429E special sub_804DB68 special sub_804E174 waitstate - getspeciesname 0, 0x8009 + bufferspeciesname 0, 0x8009 msgbox PacifidlogTown_House3_Text_1794C4, 4 setflag FLAG_PACIFIDLOG_NPC_TRADE_COMPLETED release @@ -40,7 +40,7 @@ PacifidlogTown_House3_EventScript_154320:: @ 8154320 end PacifidlogTown_House3_EventScript_15432A:: @ 815432A - getspeciesname 0, 0x8009 + bufferspeciesname 0, 0x8009 msgbox PacifidlogTown_House3_Text_1794DF, 4 release end diff --git a/data/scripts/maps/PacifidlogTown_PokemonCenter_1F.inc b/data/scripts/maps/PacifidlogTown_PokemonCenter_1F.inc index 64dd5008c..95d5448e8 100644 --- a/data/scripts/maps/PacifidlogTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/PacifidlogTown_PokemonCenter_1F.inc @@ -3,14 +3,14 @@ PacifidlogTown_PokemonCenter_1F_MapScripts:: @ 81540FF .byte 0 PacifidlogTown_PokemonCenter_1F_MapScript1_154105:: @ 8154105 - sethealplace 19 + setrespawn 19 end @ 8154109 setvar 0x800b, 1 call VerdanturfTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/PetalburgCity_Gym.inc b/data/scripts/maps/PetalburgCity_Gym.inc index e2967169f..add786bf0 100644 --- a/data/scripts/maps/PetalburgCity_Gym.inc +++ b/data/scripts/maps/PetalburgCity_Gym.inc @@ -383,7 +383,7 @@ PetalburgCity_Gym_EventScript_1549B2:: @ 81549B2 return PetalburgCity_Gym_EventScript_1549B8:: @ 81549B8 - giveitem ITEM_ENIGMA_BERRY + giveitem_std ITEM_ENIGMA_BERRY compare RESULT, 0 goto_if_eq PetalburgCity_Gym_EventScript_1A029B setvar 0x402d, 0 @@ -412,7 +412,7 @@ PetalburgCity_Gym_EventScript_1549D6:: @ 81549D6 end PetalburgCity_Gym_EventScript_154A2C:: @ 8154A2C - giveitem ITEM_TM42 + giveitem_std ITEM_TM42 compare RESULT, 0 goto_if_eq PetalburgCity_Gym_EventScript_1A029B setflag FLAG_RECEIVED_TM42 @@ -962,51 +962,51 @@ PetalburgCity_Gym_EventScript_155081:: @ 8155081 return PetalburgCity_Gym_EventScript_1550A2:: @ 81550A2 - setmaptile 6, 85, 528, 0 - setmaptile 7, 85, 529, 0 - setmaptile 1, 98, 528, 0 - setmaptile 2, 98, 529, 0 + setmetatile 6, 85, 528, 0 + setmetatile 7, 85, 529, 0 + setmetatile 1, 98, 528, 0 + setmetatile 2, 98, 529, 0 return PetalburgCity_Gym_EventScript_1550C7:: @ 81550C7 - setmaptile 6, 46, 528, 0 - setmaptile 7, 46, 529, 0 - setmaptile 1, 59, 528, 0 - setmaptile 2, 59, 529, 0 + setmetatile 6, 46, 528, 0 + setmetatile 7, 46, 529, 0 + setmetatile 1, 59, 528, 0 + setmetatile 2, 59, 529, 0 return PetalburgCity_Gym_EventScript_1550EC:: @ 81550EC - setmaptile 6, 59, 528, 0 - setmaptile 7, 59, 529, 0 - setmaptile 1, 72, 528, 0 - setmaptile 2, 72, 529, 0 + setmetatile 6, 59, 528, 0 + setmetatile 7, 59, 529, 0 + setmetatile 1, 72, 528, 0 + setmetatile 2, 72, 529, 0 return PetalburgCity_Gym_EventScript_155111:: @ 8155111 - setmaptile 1, 20, 528, 0 - setmaptile 2, 20, 529, 0 + setmetatile 1, 20, 528, 0 + setmetatile 2, 20, 529, 0 return PetalburgCity_Gym_EventScript_155124:: @ 8155124 - setmaptile 6, 20, 528, 0 - setmaptile 7, 20, 529, 0 - setmaptile 1, 33, 528, 0 - setmaptile 2, 33, 529, 0 + setmetatile 6, 20, 528, 0 + setmetatile 7, 20, 529, 0 + setmetatile 1, 33, 528, 0 + setmetatile 2, 33, 529, 0 return PetalburgCity_Gym_EventScript_155149:: @ 8155149 - setmaptile 6, 33, 528, 0 - setmaptile 7, 33, 529, 0 + setmetatile 6, 33, 528, 0 + setmetatile 7, 33, 529, 0 return PetalburgCity_Gym_EventScript_15515C:: @ 815515C - setmaptile 1, 7, 528, 0 - setmaptile 2, 7, 529, 0 + setmetatile 1, 7, 528, 0 + setmetatile 2, 7, 529, 0 return PetalburgCity_Gym_EventScript_15516F:: @ 815516F - setmaptile 6, 7, 528, 0 - setmaptile 7, 7, 529, 0 + setmetatile 6, 7, 528, 0 + setmetatile 7, 7, 529, 0 return PetalburgCity_Gym_EventScript_155182:: @ 8155182 diff --git a/data/scripts/maps/PetalburgCity_PokemonCenter_1F.inc b/data/scripts/maps/PetalburgCity_PokemonCenter_1F.inc index e2013a1d6..1dc99159a 100644 --- a/data/scripts/maps/PetalburgCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/PetalburgCity_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ PetalburgCity_PokemonCenter_1F_MapScripts:: @ 8155204 .byte 0 PetalburgCity_PokemonCenter_1F_MapScript1_15520A:: @ 815520A - sethealplace 3 + setrespawn 3 call PetalburgCity_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ PetalburgCity_PokemonCenter_1F_EventScript_155213:: @ 8155213 setvar 0x800b, 1 call PetalburgCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/PetalburgCity_WallysHouse.inc b/data/scripts/maps/PetalburgCity_WallysHouse.inc index 110b798b7..08bbcb0c7 100644 --- a/data/scripts/maps/PetalburgCity_WallysHouse.inc +++ b/data/scripts/maps/PetalburgCity_WallysHouse.inc @@ -25,7 +25,7 @@ PetalburgCity_WallysHouse_EventScript_1543F7:: @ 81543F7 PetalburgCity_WallysHouse_EventScript_154406:: @ 8154406 msgbox PetalburgCity_WallysHouse_Text_179996, 4 - giveitem ITEM_HM03 + giveitem_std ITEM_HM03 setflag FLAG_RECEIVED_HM03 msgbox PetalburgCity_WallysHouse_Text_179B14, 4 release diff --git a/data/scripts/maps/PetalburgWoods.inc b/data/scripts/maps/PetalburgWoods.inc index c38d4d559..be74cbf4c 100644 --- a/data/scripts/maps/PetalburgWoods.inc +++ b/data/scripts/maps/PetalburgWoods.inc @@ -90,7 +90,7 @@ PetalburgWoods_EventScript_15CDFA:: @ 815CDFA applymovement 255, PetalburgWoods_Movement_1A0845 waitmovement 0 msgbox PetalburgWoods_Text_19507E, 4 - giveitem ITEM_GREAT_BALL + giveitem_std ITEM_GREAT_BALL compare RESULT, 0 goto_if_eq PetalburgWoods_EventScript_15CE3F goto PetalburgWoods_EventScript_15CE4D @@ -244,7 +244,7 @@ PetalburgWoods_EventScript_15CEDC:: @ 815CEDC checkflag FLAG_RECEIVED_MIRACLE_SEED goto_if_eq PetalburgWoods_EventScript_15CF0B msgbox PetalburgWoods_Text_19549E, 4 - giveitem ITEM_MIRACLE_SEED + giveitem_std ITEM_MIRACLE_SEED compare RESULT, 0 goto_if_eq PetalburgWoods_EventScript_1A029B setflag FLAG_RECEIVED_MIRACLE_SEED diff --git a/data/scripts/maps/Route104.inc b/data/scripts/maps/Route104.inc index 92f5d5593..a04dcd86d 100644 --- a/data/scripts/maps/Route104.inc +++ b/data/scripts/maps/Route104.inc @@ -34,7 +34,7 @@ Route104_EventScript_14EEC8:: @ 814EEC8 checkflag FLAG_RECEIVED_CHESTO_BERRY_ROUTE104 goto_if_eq Route104_EventScript_14EEFF msgbox Route104_Text_1C55B9, 4 - giveitem ITEM_CHESTO_BERRY + giveitem_std ITEM_CHESTO_BERRY compare RESULT, 0 goto_if_eq Route104_EventScript_1A029B setflag FLAG_RECEIVED_CHESTO_BERRY_ROUTE104 @@ -53,7 +53,7 @@ Route104_EventScript_14EF09:: @ 814EF09 checkflag FLAG_RECEIVED_WHITE_HERB goto_if_eq Route104_EventScript_14EF38 msgbox Route104_Text_16DD91, 4 - giveitem ITEM_WHITE_HERB + giveitem_std ITEM_WHITE_HERB compare RESULT, 0 goto_if_eq Route104_EventScript_1A029B setflag FLAG_RECEIVED_WHITE_HERB @@ -107,7 +107,7 @@ Route104_EventScript_14EF93:: @ 814EF93 checkflag FLAG_RECEIVED_TM09 goto_if_eq Route104_EventScript_14EFC2 msgbox Route104_Text_16DC5F, 4 - giveitem ITEM_TM09 + giveitem_std ITEM_TM09 compare RESULT, 0 goto_if_eq Route104_EventScript_1A029B setflag FLAG_RECEIVED_TM09 @@ -124,14 +124,14 @@ Route104_EventScript_14EFCC:: @ 814EFCC end Route104_EventScript_14EFD5:: @ 814EFD5 - setobjectpriority 8, 0, 19, 0 - setobjectpriority 255, 0, 19, 0 + setobjectpriority 8, MAP_ROUTE104, 0 + setobjectpriority 255, MAP_ROUTE104, 0 applymovement 8, Route104_Movement_14F16C waitmovement 0 removeobject 8 applymovement 255, Route104_Movement_14F162 waitmovement 0 - hideobject 255, 0, 19 + hideobjectat 255, MAP_ROUTE104 call Route104_EventScript_1A02E7 applymovement 7, Route104_Movement_14F09F applymovement 255, Route104_Movement_14F09F @@ -139,12 +139,12 @@ Route104_EventScript_14EFD5:: @ 814EFD5 applymovement 255, Route104_Movement_14F166 waitmovement 0 call Route104_EventScript_1A02EF - showobject 255, 0, 11 + showobjectat 255, MAP_DEWFORD_TOWN applymovement 255, Route104_Movement_14F168 waitmovement 0 setobjectxyperm 2, 12, 8 addobject 2 - setobjectpriority 2, 0, 11, 0 + setobjectpriority 2, MAP_DEWFORD_TOWN, 0 clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN applymovement 2, Route104_Movement_14F16F waitmovement 0 @@ -152,10 +152,10 @@ Route104_EventScript_14EFD5:: @ 814EFD5 clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD call Route104_EventScript_1A02EF setflag FLAG_HIDE_MR_BRINEY_BOAT_ROUTE104 - hideobject 7, 0, 19 + hideobjectat 7, MAP_ROUTE104 copyvar 0x4096, 0x8008 - resetobjectpriority 255, 0, 19 - resetobjectpriority 2, 0, 11 + resetobjectpriority 255, MAP_ROUTE104 + resetobjectpriority 2, MAP_DEWFORD_TOWN moveobjectoffscreen 2 setvar 0x408e, 0 checkflag FLAG_DELIVERED_STEVEN_LETTER diff --git a/data/scripts/maps/Route104_MrBrineysHouse.inc b/data/scripts/maps/Route104_MrBrineysHouse.inc index 9369f7573..4eb1d9705 100644 --- a/data/scripts/maps/Route104_MrBrineysHouse.inc +++ b/data/scripts/maps/Route104_MrBrineysHouse.inc @@ -92,8 +92,8 @@ Route104_MrBrineysHouse_EventScript_15BDD1:: @ 815BDD1 lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox Route104_MrBrineysHouse_Text_191FB9, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/Route104_PrettyPetalFlowerShop.inc b/data/scripts/maps/Route104_PrettyPetalFlowerShop.inc index 07abd21bc..2de6bf51f 100644 --- a/data/scripts/maps/Route104_PrettyPetalFlowerShop.inc +++ b/data/scripts/maps/Route104_PrettyPetalFlowerShop.inc @@ -52,7 +52,7 @@ Route104_PrettyPetalFlowerShop_EventScript_15BE73:: @ 815BE73 Route104_PrettyPetalFlowerShop_EventScript_15BE7C:: @ 815BE7C message Route104_PrettyPetalFlowerShop_Text_1A0C42 waitmessage - pokemartbp Route104_PrettyPetalFlowerShop_Items + pokemartdecoration2 Route104_PrettyPetalFlowerShop_Items msgbox Route104_PrettyPetalFlowerShop_Text_1A0C02, 4 release end @@ -80,7 +80,7 @@ Route104_PrettyPetalFlowerShop_EventScript_15BEA4:: @ 815BEA4 Route104_PrettyPetalFlowerShop_EventScript_15BEB9:: @ 815BEB9 msgbox Route104_PrettyPetalFlowerShop_Text_1C6158, 4 - giveitem ITEM_WAILMER_PAIL + giveitem_std ITEM_WAILMER_PAIL msgbox Route104_PrettyPetalFlowerShop_Text_1C61E8, 4 setflag FLAG_RECEIVED_WAILMER_PAIL release @@ -95,7 +95,7 @@ Route104_PrettyPetalFlowerShop_EventScript_15BEDA:: @ 815BEDA msgbox Route104_PrettyPetalFlowerShop_Text_1C62DA, 4 random 8 addvar RESULT, ITEM_CHERI_BERRY - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq Route104_PrettyPetalFlowerShop_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_FLOWER_SHOP diff --git a/data/scripts/maps/Route105.inc b/data/scripts/maps/Route105.inc index de7188aae..30157e52f 100644 --- a/data/scripts/maps/Route105.inc +++ b/data/scripts/maps/Route105.inc @@ -8,8 +8,8 @@ Route105_MapScript1_14F29E:: @ 814F29E end Route105_EventScript_14F2A8:: @ 814F2A8 - setmaptile 9, 19, 124, 1 - setmaptile 9, 20, 145, 1 + setmetatile 9, 19, 124, 1 + setmetatile 9, 20, 145, 1 return Route105_EventScript_14F2BB:: @ 814F2BB diff --git a/data/scripts/maps/Route109.inc b/data/scripts/maps/Route109.inc index 1277168e0..a9fa7d906 100644 --- a/data/scripts/maps/Route109.inc +++ b/data/scripts/maps/Route109.inc @@ -3,8 +3,8 @@ Route109_MapScripts:: @ 814F4D2 Route109_EventScript_14F4D3:: @ 814F4D3 call Route109_EventScript_1A010C - setobjectpriority 2, 0, 24, 0 - setobjectpriority 255, 0, 24, 0 + setobjectpriority 2, MAP_ROUTE109, 0 + setobjectpriority 255, MAP_ROUTE109, 0 applymovement 2, Route109_Movement_14F67B waitmovement 0 removeobject 2 @@ -33,30 +33,30 @@ Route109_EventScript_14F538:: @ 814F538 end Route109_EventScript_14F548:: @ 814F548 - hideobject 255, 0, 24 + hideobjectat 255, MAP_ROUTE109 call Route109_EventScript_1A02E7 applymovement 1, Route109_Movement_14F5BF applymovement 255, Route109_Movement_14F5BF waitmovement 0 call Route109_EventScript_1A02EF - showobject 255, 0, 11 + showobjectat 255, MAP_DEWFORD_TOWN applymovement 255, Route109_Movement_14F670 waitmovement 0 addobject 4 clearflag FLAG_HIDE_MR_BRINEY_BOAT_DEWFORD setobjectxyperm 2, 12, 8 addobject 2 - setobjectpriority 2, 0, 11, 0 + setobjectpriority 2, MAP_DEWFORD_TOWN, 0 applymovement 2, Route109_Movement_14F67D waitmovement 0 clearflag FLAG_HIDE_MR_BRINEY_DEWFORD_TOWN setflag FLAG_HIDE_MR_BRINEY_BOAT_ROUTE109 - hideobject 1, 0, 24 + hideobjectat 1, MAP_ROUTE109 msgbox Route109_Text_16B4B5, 4 closemessage copyvar 0x4096, 0x8008 - resetobjectpriority 255, 0, 24 - resetobjectpriority 2, 0, 11 + resetobjectpriority 255, MAP_ROUTE109 + resetobjectpriority 2, MAP_DEWFORD_TOWN moveobjectoffscreen 2 release end @@ -331,7 +331,7 @@ Route109_EventScript_14F725:: @ 814F725 checkflag FLAG_RECEIVED_SOFT_SAND goto_if_eq Route109_EventScript_14F762 msgbox Route109_Text_16E433, 4 - giveitem ITEM_SOFT_SAND + giveitem_std ITEM_SOFT_SAND compare RESULT, 0 goto_if_eq Route109_EventScript_1A029B closemessage @@ -360,9 +360,9 @@ Route109_EventScript_14F788:: @ 814F788 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox Route109_Text_16E5CA, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/Route109_SeashoreHouse.inc b/data/scripts/maps/Route109_SeashoreHouse.inc index f60413d81..7a12f5850 100644 --- a/data/scripts/maps/Route109_SeashoreHouse.inc +++ b/data/scripts/maps/Route109_SeashoreHouse.inc @@ -27,7 +27,7 @@ Route109_SeashoreHouse_EventScript_160DFE:: @ 8160DFE Route109_SeashoreHouse_EventScript_160E08:: @ 8160E08 msgbox Route109_SeashoreHouse_Text_19B609, 4 - giveitem ITEM_SODA_POP, 6 + giveitem_std ITEM_SODA_POP, 6 compare RESULT, 0 goto_if_eq Route109_SeashoreHouse_EventScript_160E2C setflag FLAG_RECEIVED_6_SODA_POP @@ -61,7 +61,7 @@ Route109_SeashoreHouse_EventScript_160E5A:: @ 8160E5A takemoney 0x12c, 0 updatemoneybox 0, 0 nop - giveitem ITEM_SODA_POP + giveitem_std ITEM_SODA_POP hidemoneybox 0, 0 release end diff --git a/data/scripts/maps/Route110.inc b/data/scripts/maps/Route110.inc index 146be5959..5e10782e9 100644 --- a/data/scripts/maps/Route110.inc +++ b/data/scripts/maps/Route110.inc @@ -420,7 +420,7 @@ Route110_EventScript_14FE8A:: @ 814FE8A end Route110_EventScript_14FEA5:: @ 814FEA5 - giveitem ITEM_ITEMFINDER + giveitem_std ITEM_ITEMFINDER return Route110_EventScript_14FEB2:: @ 814FEB2 diff --git a/data/scripts/maps/Route110_TrickHouseEnd.inc b/data/scripts/maps/Route110_TrickHouseEnd.inc index 12309207c..813cbb9e9 100644 --- a/data/scripts/maps/Route110_TrickHouseEnd.inc +++ b/data/scripts/maps/Route110_TrickHouseEnd.inc @@ -22,7 +22,7 @@ Route110_TrickHouseEnd_MapScript2_161965:: @ 8161965 Route110_TrickHouseEnd_EventScript_16196F:: @ 816196F addobject 1 - showobject 1, 29, 1 + showobjectat 1, MAP_ROUTE110_TRICK_HOUSE_END turnobject 1, 4 end @@ -37,7 +37,7 @@ Route110_TrickHouseEnd_EventScript_161986:: @ 8161986 end Route110_TrickHouseEnd_EventScript_161994:: @ 8161994 - setmaptile 10, 1, 539, 1 + setmetatile 10, 1, 539, 1 return Route110_TrickHouseEnd_EventScript_16199E:: @ 816199E @@ -60,7 +60,7 @@ Route110_TrickHouseEnd_EventScript_161A0B:: @ 8161A0B msgbox Route110_TrickHouseEnd_Text_19C2B2, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_RARE_CANDY + giveitem_std ITEM_RARE_CANDY compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -73,7 +73,7 @@ Route110_TrickHouseEnd_EventScript_161A47:: @ 8161A47 msgbox Route110_TrickHouseEnd_Text_19C333, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_TIMER_BALL + giveitem_std ITEM_TIMER_BALL compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -86,7 +86,7 @@ Route110_TrickHouseEnd_EventScript_161A83:: @ 8161A83 msgbox Route110_TrickHouseEnd_Text_19C3A7, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_HARD_STONE + giveitem_std ITEM_HARD_STONE compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -99,7 +99,7 @@ Route110_TrickHouseEnd_EventScript_161ABF:: @ 8161ABF msgbox Route110_TrickHouseEnd_Text_19C41F, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_SMOKE_BALL + giveitem_std ITEM_SMOKE_BALL compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -112,7 +112,7 @@ Route110_TrickHouseEnd_EventScript_161AFB:: @ 8161AFB msgbox Route110_TrickHouseEnd_Text_19C491, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_TM12 + giveitem_std ITEM_TM12 compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -125,7 +125,7 @@ Route110_TrickHouseEnd_EventScript_161B37:: @ 8161B37 msgbox Route110_TrickHouseEnd_Text_19C515, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_MAGNET + giveitem_std ITEM_MAGNET compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -138,7 +138,7 @@ Route110_TrickHouseEnd_EventScript_161B73:: @ 8161B73 msgbox Route110_TrickHouseEnd_Text_19C567, 4 msgbox Route110_TrickHouseEnd_Text_19C90B, 4 setvar 0x40c1, 0 - giveitem ITEM_PP_MAX + giveitem_std ITEM_PP_MAX compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C4E msgbox Route110_TrickHouseEnd_Text_19C9BD, 4 @@ -167,9 +167,9 @@ Route110_TrickHouseEnd_EventScript_161BAF:: @ 8161BAF msgbox Route110_TrickHouseEnd_Text_19C691, 4 setvar 0x40c1, 0 .ifdef SAPPHIRE - givedecoration 32 + givedecoration_std 32 .else - givedecoration 31 + givedecoration_std 31 .endc compare RESULT, 0 call_if 1, Route110_TrickHouseEnd_EventScript_161C61 diff --git a/data/scripts/maps/Route110_TrickHouseEntrance.inc b/data/scripts/maps/Route110_TrickHouseEntrance.inc index bf0c36ff3..b9582b64c 100644 --- a/data/scripts/maps/Route110_TrickHouseEntrance.inc +++ b/data/scripts/maps/Route110_TrickHouseEntrance.inc @@ -139,14 +139,14 @@ Route110_TrickHouseEntrance_MapScript2_1610B2:: @ 81610B2 Route110_TrickHouseEntrance_EventScript_1610F4:: @ 81610F4 addobject 1 - showobject 1, 29, 0 + showobjectat 1, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE turnobject 1, 4 turnobject 255, 3 end Route110_TrickHouseEntrance_EventScript_161105:: @ 8161105 addobject 1 - hideobject 1, 29, 0 + hideobjectat 1, MAP_ROUTE110_TRICK_HOUSE_ENTRANCE switch 0x4044 case 0, Route110_TrickHouseEntrance_EventScript_16116B case 1, Route110_TrickHouseEntrance_EventScript_161173 @@ -368,7 +368,7 @@ Route110_TrickHouseEntrance_EventScript_16136E:: @ 816136E end Route110_TrickHouseEntrance_EventScript_1613CE:: @ 81613CE - giveitem ITEM_RARE_CANDY + giveitem_std ITEM_RARE_CANDY compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -378,7 +378,7 @@ Route110_TrickHouseEntrance_EventScript_1613CE:: @ 81613CE end Route110_TrickHouseEntrance_EventScript_1613FA:: @ 81613FA - giveitem ITEM_TIMER_BALL + giveitem_std ITEM_TIMER_BALL compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -388,7 +388,7 @@ Route110_TrickHouseEntrance_EventScript_1613FA:: @ 81613FA end Route110_TrickHouseEntrance_EventScript_161426:: @ 8161426 - giveitem ITEM_HARD_STONE + giveitem_std ITEM_HARD_STONE compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -398,7 +398,7 @@ Route110_TrickHouseEntrance_EventScript_161426:: @ 8161426 end Route110_TrickHouseEntrance_EventScript_161452:: @ 8161452 - giveitem ITEM_SMOKE_BALL + giveitem_std ITEM_SMOKE_BALL compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -408,7 +408,7 @@ Route110_TrickHouseEntrance_EventScript_161452:: @ 8161452 end Route110_TrickHouseEntrance_EventScript_16147E:: @ 816147E - giveitem ITEM_TM12 + giveitem_std ITEM_TM12 compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -418,7 +418,7 @@ Route110_TrickHouseEntrance_EventScript_16147E:: @ 816147E end Route110_TrickHouseEntrance_EventScript_1614AA:: @ 81614AA - giveitem ITEM_MAGNET + giveitem_std ITEM_MAGNET compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -428,7 +428,7 @@ Route110_TrickHouseEntrance_EventScript_1614AA:: @ 81614AA end Route110_TrickHouseEntrance_EventScript_1614D6:: @ 81614D6 - giveitem ITEM_PP_MAX + giveitem_std ITEM_PP_MAX compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161502 compare RESULT, 0 @@ -450,9 +450,9 @@ Route110_TrickHouseEntrance_EventScript_161518:: @ 8161518 waitmovement 0 msgbox Route110_TrickHouseEntrance_Text_19C128, 4 .ifdef SAPPHIRE - givedecoration 32 + givedecoration_std 32 .else - givedecoration 31 + givedecoration_std 31 .endif compare RESULT, 1 goto_if_eq Route110_TrickHouseEntrance_EventScript_161551 @@ -501,7 +501,7 @@ Route110_TrickHouseEntrance_EventScript_1615C7:: @ 81615C7 end Route110_TrickHouseEntrance_EventScript_1615DD:: @ 81615DD - setmaptile 5, 1, 537, 0 + setmetatile 5, 1, 537, 0 special DrawWholeMapView delay 20 applymovement 255, Route110_TrickHouseEntrance_Movement_1A0856 @@ -607,7 +607,7 @@ Route110_TrickHouseEntrance_EventScript_161740:: @ 8161740 msgbox UnknownString_819CAD1, 4 playse SE_PIN setvar 0x40AB, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -618,7 +618,7 @@ Route110_TrickHouseEntrance_EventScript_161769:: @ 8161769 msgbox UnknownString_819CCCB, 4 playse SE_PIN setvar 0x40AC, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -629,7 +629,7 @@ Route110_TrickHouseEntrance_EventScript_161792:: @ 8161792 msgbox UnknownString_819CEF9, 4 playse SE_PIN setvar 0x40AD, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -640,7 +640,7 @@ Route110_TrickHouseEntrance_EventScript_1617BB:: @ 81617BB msgbox UnknownString_819D164, 4 playse SE_PIN setvar 0x40AE, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -651,7 +651,7 @@ Route110_TrickHouseEntrance_EventScript_1617E4:: @ 81617E4 msgbox UnknownString_819D3A5, 4 playse SE_PIN setvar 0x40AF, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -662,7 +662,7 @@ Route110_TrickHouseEntrance_EventScript_16180D:: @ 816180D msgbox UnknownString_819DC0A, 4 playse SE_PIN setvar 0x40B0, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -673,7 +673,7 @@ Route110_TrickHouseEntrance_EventScript_161836:: @ 8161836 msgbox UnknownString_819DE8D, 4 playse SE_PIN setvar 0x40B1, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -684,7 +684,7 @@ Route110_TrickHouseEntrance_EventScript_16185F:: @ 816185F msgbox UnknownString_819E0FF, 4 playse SE_PIN setvar 0x40B2, 2 - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 special DrawWholeMapView releaseall end @@ -757,9 +757,9 @@ Route110_TrickHouseEntrance_EventScript_16190B:: @ 816190B return Route110_TrickHouseEntrance_EventScript_161920:: @ 8161920 - setfieldeffect 0, 32772 - setfieldeffect 1, 32773 - setfieldeffect 2, 32774 + setfieldeffectargument 0, 32772 + setfieldeffectargument 1, 32773 + setfieldeffectargument 2, 32774 dofieldeffect 54 waitfieldeffect 54 delay 10 diff --git a/data/scripts/maps/Route110_TrickHousePuzzle1.inc b/data/scripts/maps/Route110_TrickHousePuzzle1.inc index 3a89c2db1..4fffd9914 100644 --- a/data/scripts/maps/Route110_TrickHousePuzzle1.inc +++ b/data/scripts/maps/Route110_TrickHousePuzzle1.inc @@ -8,7 +8,7 @@ Route110_TrickHousePuzzle1_MapScript1_161CFE:: @ 8161CFE end Route110_TrickHousePuzzle1_EventScript_161D0A:: @ 8161D0A - setmaptile 13, 1, 523, 0 + setmetatile 13, 1, 523, 0 end Route110_TrickHousePuzzle1_EventScript_161D14:: @ 8161D14 diff --git a/data/scripts/maps/Route110_TrickHousePuzzle2.inc b/data/scripts/maps/Route110_TrickHousePuzzle2.inc index f71a9611a..6425d05cb 100644 --- a/data/scripts/maps/Route110_TrickHousePuzzle2.inc +++ b/data/scripts/maps/Route110_TrickHousePuzzle2.inc @@ -70,23 +70,23 @@ Route110_TrickHousePuzzle2_EventScript_161E19:: @ 8161E19 end Route110_TrickHousePuzzle2_EventScript_161E2C:: @ 8161E2C - setmaptile 14, 21, 601, 0 - setmaptile 1, 12, 618, 0 + setmetatile 14, 21, 601, 0 + setmetatile 1, 12, 618, 0 return Route110_TrickHousePuzzle2_EventScript_161E3F:: @ 8161E3F - setmaptile 8, 17, 601, 0 - setmaptile 12, 13, 618, 0 + setmetatile 8, 17, 601, 0 + setmetatile 12, 13, 618, 0 return Route110_TrickHousePuzzle2_EventScript_161E52:: @ 8161E52 - setmaptile 4, 10, 601, 0 - setmaptile 8, 4, 618, 0 + setmetatile 4, 10, 601, 0 + setmetatile 8, 4, 618, 0 return Route110_TrickHousePuzzle2_EventScript_161E65:: @ 8161E65 - setmaptile 5, 2, 601, 0 - setmaptile 12, 5, 618, 0 + setmetatile 5, 2, 601, 0 + setmetatile 12, 5, 618, 0 return Route110_TrickHousePuzzle2_EventScript_161E78:: @ 8161E78 diff --git a/data/scripts/maps/Route110_TrickHousePuzzle3.inc b/data/scripts/maps/Route110_TrickHousePuzzle3.inc index a50ecd3ce..54cea16c9 100644 --- a/data/scripts/maps/Route110_TrickHousePuzzle3.inc +++ b/data/scripts/maps/Route110_TrickHousePuzzle3.inc @@ -24,13 +24,13 @@ Route110_TrickHousePuzzle3_MapScript1_161EE4:: @ 8161EE4 end Route110_TrickHousePuzzle3_EventScript_161F12:: @ 8161F12 - setmaptile 5, 20, 600, 0 - setmaptile 4, 12, 600, 0 - setmaptile 11, 10, 600, 0 - setmaptile 3, 8, 600, 0 - setmaptile 13, 7, 600, 0 - setmaptile 1, 3, 600, 0 - setmaptile 10, 2, 600, 0 + setmetatile 5, 20, 600, 0 + setmetatile 4, 12, 600, 0 + setmetatile 11, 10, 600, 0 + setmetatile 3, 8, 600, 0 + setmetatile 13, 7, 600, 0 + setmetatile 1, 3, 600, 0 + setmetatile 10, 2, 600, 0 compare 0x4008, 1 call_if 1, Route110_TrickHousePuzzle3_EventScript_161F9F compare 0x4008, 2 @@ -48,201 +48,201 @@ Route110_TrickHousePuzzle3_EventScript_161F12:: @ 8161F12 return Route110_TrickHousePuzzle3_EventScript_161F9F:: @ 8161F9F - setmaptile 5, 20, 601, 0 + setmetatile 5, 20, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FA9:: @ 8161FA9 - setmaptile 4, 12, 601, 0 + setmetatile 4, 12, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FB3:: @ 8161FB3 - setmaptile 11, 10, 601, 0 + setmetatile 11, 10, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FBD:: @ 8161FBD - setmaptile 3, 8, 601, 0 + setmetatile 3, 8, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FC7:: @ 8161FC7 - setmaptile 13, 7, 601, 0 + setmetatile 13, 7, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FD1:: @ 8161FD1 - setmaptile 1, 3, 601, 0 + setmetatile 1, 3, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FDB:: @ 8161FDB - setmaptile 10, 2, 601, 0 + setmetatile 10, 2, 601, 0 return Route110_TrickHousePuzzle3_EventScript_161FE5:: @ 8161FE5 - setmaptile 1, 6, 587, 0 - setmaptile 2, 6, 588, 0 - setmaptile 1, 7, 595, 0 - setmaptile 2, 7, 596, 0 - setmaptile 4, 9, 587, 0 - setmaptile 5, 9, 588, 0 - setmaptile 4, 10, 595, 0 - setmaptile 5, 10, 596, 0 - setmaptile 4, 18, 587, 0 - setmaptile 5, 18, 588, 0 - setmaptile 4, 19, 595, 0 - setmaptile 5, 19, 596, 0 - setmaptile 7, 3, 587, 0 - setmaptile 8, 3, 588, 0 - setmaptile 7, 4, 595, 0 - setmaptile 8, 4, 596, 0 - setmaptile 7, 9, 587, 0 - setmaptile 8, 9, 588, 0 - setmaptile 7, 10, 595, 0 - setmaptile 8, 10, 596, 0 - setmaptile 7, 18, 587, 0 - setmaptile 8, 18, 588, 0 - setmaptile 7, 19, 595, 0 - setmaptile 8, 19, 596, 0 - setmaptile 13, 3, 587, 0 - setmaptile 14, 3, 588, 0 - setmaptile 13, 4, 595, 0 - setmaptile 14, 4, 596, 0 - setmaptile 13, 9, 587, 0 - setmaptile 14, 9, 588, 0 - setmaptile 13, 10, 595, 0 - setmaptile 14, 10, 596, 0 - setmaptile 13, 15, 587, 0 - setmaptile 14, 15, 588, 0 - setmaptile 13, 16, 595, 0 - setmaptile 14, 16, 596, 0 - setmaptile 3, 13, 589, 1 - setmaptile 3, 14, 597, 0 - setmaptile 6, 7, 589, 1 - setmaptile 6, 8, 597, 0 - setmaptile 9, 16, 589, 1 - setmaptile 9, 17, 597, 0 - setmaptile 12, 4, 589, 1 - setmaptile 12, 5, 597, 0 - setmaptile 12, 10, 589, 1 - setmaptile 12, 11, 597, 0 - setmaptile 1, 15, 568, 0 - setmaptile 2, 15, 569, 0 - setmaptile 1, 16, 576, 1 - setmaptile 2, 16, 577, 1 - setmaptile 4, 6, 568, 0 - setmaptile 5, 6, 569, 0 - setmaptile 4, 7, 576, 1 - setmaptile 5, 7, 577, 1 - setmaptile 7, 12, 568, 0 - setmaptile 8, 12, 569, 0 - setmaptile 7, 13, 576, 1 - setmaptile 8, 13, 577, 1 - setmaptile 10, 12, 568, 0 - setmaptile 11, 12, 569, 0 - setmaptile 10, 13, 576, 1 - setmaptile 11, 13, 577, 1 - setmaptile 10, 18, 568, 0 - setmaptile 11, 18, 569, 0 - setmaptile 10, 19, 576, 1 - setmaptile 11, 19, 577, 1 - setmaptile 3, 4, 570, 1 - setmaptile 3, 5, 578, 1 - setmaptile 6, 10, 570, 1 - setmaptile 6, 11, 578, 1 - setmaptile 6, 13, 570, 1 - setmaptile 6, 14, 578, 1 - setmaptile 6, 16, 570, 1 - setmaptile 6, 17, 578, 1 - setmaptile 9, 4, 570, 1 - setmaptile 9, 5, 578, 1 - setmaptile 9, 7, 570, 1 - setmaptile 9, 8, 578, 1 - setmaptile 12, 13, 570, 1 - setmaptile 12, 14, 578, 1 - setmaptile 12, 16, 570, 1 - setmaptile 12, 17, 578, 1 + setmetatile 1, 6, 587, 0 + setmetatile 2, 6, 588, 0 + setmetatile 1, 7, 595, 0 + setmetatile 2, 7, 596, 0 + setmetatile 4, 9, 587, 0 + setmetatile 5, 9, 588, 0 + setmetatile 4, 10, 595, 0 + setmetatile 5, 10, 596, 0 + setmetatile 4, 18, 587, 0 + setmetatile 5, 18, 588, 0 + setmetatile 4, 19, 595, 0 + setmetatile 5, 19, 596, 0 + setmetatile 7, 3, 587, 0 + setmetatile 8, 3, 588, 0 + setmetatile 7, 4, 595, 0 + setmetatile 8, 4, 596, 0 + setmetatile 7, 9, 587, 0 + setmetatile 8, 9, 588, 0 + setmetatile 7, 10, 595, 0 + setmetatile 8, 10, 596, 0 + setmetatile 7, 18, 587, 0 + setmetatile 8, 18, 588, 0 + setmetatile 7, 19, 595, 0 + setmetatile 8, 19, 596, 0 + setmetatile 13, 3, 587, 0 + setmetatile 14, 3, 588, 0 + setmetatile 13, 4, 595, 0 + setmetatile 14, 4, 596, 0 + setmetatile 13, 9, 587, 0 + setmetatile 14, 9, 588, 0 + setmetatile 13, 10, 595, 0 + setmetatile 14, 10, 596, 0 + setmetatile 13, 15, 587, 0 + setmetatile 14, 15, 588, 0 + setmetatile 13, 16, 595, 0 + setmetatile 14, 16, 596, 0 + setmetatile 3, 13, 589, 1 + setmetatile 3, 14, 597, 0 + setmetatile 6, 7, 589, 1 + setmetatile 6, 8, 597, 0 + setmetatile 9, 16, 589, 1 + setmetatile 9, 17, 597, 0 + setmetatile 12, 4, 589, 1 + setmetatile 12, 5, 597, 0 + setmetatile 12, 10, 589, 1 + setmetatile 12, 11, 597, 0 + setmetatile 1, 15, 568, 0 + setmetatile 2, 15, 569, 0 + setmetatile 1, 16, 576, 1 + setmetatile 2, 16, 577, 1 + setmetatile 4, 6, 568, 0 + setmetatile 5, 6, 569, 0 + setmetatile 4, 7, 576, 1 + setmetatile 5, 7, 577, 1 + setmetatile 7, 12, 568, 0 + setmetatile 8, 12, 569, 0 + setmetatile 7, 13, 576, 1 + setmetatile 8, 13, 577, 1 + setmetatile 10, 12, 568, 0 + setmetatile 11, 12, 569, 0 + setmetatile 10, 13, 576, 1 + setmetatile 11, 13, 577, 1 + setmetatile 10, 18, 568, 0 + setmetatile 11, 18, 569, 0 + setmetatile 10, 19, 576, 1 + setmetatile 11, 19, 577, 1 + setmetatile 3, 4, 570, 1 + setmetatile 3, 5, 578, 1 + setmetatile 6, 10, 570, 1 + setmetatile 6, 11, 578, 1 + setmetatile 6, 13, 570, 1 + setmetatile 6, 14, 578, 1 + setmetatile 6, 16, 570, 1 + setmetatile 6, 17, 578, 1 + setmetatile 9, 4, 570, 1 + setmetatile 9, 5, 578, 1 + setmetatile 9, 7, 570, 1 + setmetatile 9, 8, 578, 1 + setmetatile 12, 13, 570, 1 + setmetatile 12, 14, 578, 1 + setmetatile 12, 16, 570, 1 + setmetatile 12, 17, 578, 1 return Route110_TrickHousePuzzle3_EventScript_1622C8:: @ 81622C8 - setmaptile 1, 6, 571, 0 - setmaptile 2, 6, 572, 0 - setmaptile 1, 7, 579, 1 - setmaptile 2, 7, 580, 1 - setmaptile 4, 9, 571, 0 - setmaptile 5, 9, 572, 0 - setmaptile 4, 10, 579, 1 - setmaptile 5, 10, 580, 1 - setmaptile 4, 18, 571, 0 - setmaptile 5, 18, 572, 0 - setmaptile 4, 19, 579, 1 - setmaptile 5, 19, 580, 1 - setmaptile 7, 3, 571, 0 - setmaptile 8, 3, 572, 0 - setmaptile 7, 4, 579, 1 - setmaptile 8, 4, 580, 1 - setmaptile 7, 9, 571, 0 - setmaptile 8, 9, 572, 0 - setmaptile 7, 10, 579, 1 - setmaptile 8, 10, 580, 1 - setmaptile 7, 18, 571, 0 - setmaptile 8, 18, 572, 0 - setmaptile 7, 19, 579, 1 - setmaptile 8, 19, 580, 1 - setmaptile 13, 3, 571, 0 - setmaptile 14, 3, 572, 0 - setmaptile 13, 4, 579, 1 - setmaptile 14, 4, 580, 1 - setmaptile 13, 9, 571, 0 - setmaptile 14, 9, 572, 0 - setmaptile 13, 10, 579, 1 - setmaptile 14, 10, 580, 1 - setmaptile 13, 15, 571, 0 - setmaptile 14, 15, 572, 0 - setmaptile 13, 16, 579, 1 - setmaptile 14, 16, 580, 1 - setmaptile 3, 13, 573, 1 - setmaptile 3, 14, 581, 1 - setmaptile 6, 7, 573, 1 - setmaptile 6, 8, 581, 1 - setmaptile 9, 16, 573, 1 - setmaptile 9, 17, 581, 1 - setmaptile 12, 4, 573, 1 - setmaptile 12, 5, 581, 1 - setmaptile 12, 10, 573, 1 - setmaptile 12, 11, 581, 1 - setmaptile 1, 15, 584, 0 - setmaptile 2, 15, 585, 0 - setmaptile 1, 16, 592, 0 - setmaptile 2, 16, 593, 0 - setmaptile 4, 6, 584, 0 - setmaptile 5, 6, 585, 0 - setmaptile 4, 7, 592, 0 - setmaptile 5, 7, 593, 0 - setmaptile 7, 12, 584, 0 - setmaptile 8, 12, 585, 0 - setmaptile 7, 13, 592, 0 - setmaptile 8, 13, 593, 0 - setmaptile 10, 12, 584, 0 - setmaptile 11, 12, 585, 0 - setmaptile 10, 13, 592, 0 - setmaptile 11, 13, 593, 0 - setmaptile 10, 18, 584, 0 - setmaptile 11, 18, 585, 0 - setmaptile 10, 19, 592, 0 - setmaptile 11, 19, 593, 0 - setmaptile 3, 4, 586, 1 - setmaptile 3, 5, 594, 0 - setmaptile 6, 10, 586, 1 - setmaptile 6, 11, 594, 0 - setmaptile 6, 13, 586, 1 - setmaptile 6, 14, 594, 0 - setmaptile 6, 16, 586, 1 - setmaptile 6, 17, 594, 0 - setmaptile 9, 4, 586, 1 - setmaptile 9, 5, 594, 0 - setmaptile 9, 7, 586, 1 - setmaptile 9, 8, 594, 0 - setmaptile 12, 13, 586, 1 - setmaptile 12, 14, 594, 0 - setmaptile 12, 16, 586, 1 - setmaptile 12, 17, 594, 0 + setmetatile 1, 6, 571, 0 + setmetatile 2, 6, 572, 0 + setmetatile 1, 7, 579, 1 + setmetatile 2, 7, 580, 1 + setmetatile 4, 9, 571, 0 + setmetatile 5, 9, 572, 0 + setmetatile 4, 10, 579, 1 + setmetatile 5, 10, 580, 1 + setmetatile 4, 18, 571, 0 + setmetatile 5, 18, 572, 0 + setmetatile 4, 19, 579, 1 + setmetatile 5, 19, 580, 1 + setmetatile 7, 3, 571, 0 + setmetatile 8, 3, 572, 0 + setmetatile 7, 4, 579, 1 + setmetatile 8, 4, 580, 1 + setmetatile 7, 9, 571, 0 + setmetatile 8, 9, 572, 0 + setmetatile 7, 10, 579, 1 + setmetatile 8, 10, 580, 1 + setmetatile 7, 18, 571, 0 + setmetatile 8, 18, 572, 0 + setmetatile 7, 19, 579, 1 + setmetatile 8, 19, 580, 1 + setmetatile 13, 3, 571, 0 + setmetatile 14, 3, 572, 0 + setmetatile 13, 4, 579, 1 + setmetatile 14, 4, 580, 1 + setmetatile 13, 9, 571, 0 + setmetatile 14, 9, 572, 0 + setmetatile 13, 10, 579, 1 + setmetatile 14, 10, 580, 1 + setmetatile 13, 15, 571, 0 + setmetatile 14, 15, 572, 0 + setmetatile 13, 16, 579, 1 + setmetatile 14, 16, 580, 1 + setmetatile 3, 13, 573, 1 + setmetatile 3, 14, 581, 1 + setmetatile 6, 7, 573, 1 + setmetatile 6, 8, 581, 1 + setmetatile 9, 16, 573, 1 + setmetatile 9, 17, 581, 1 + setmetatile 12, 4, 573, 1 + setmetatile 12, 5, 581, 1 + setmetatile 12, 10, 573, 1 + setmetatile 12, 11, 581, 1 + setmetatile 1, 15, 584, 0 + setmetatile 2, 15, 585, 0 + setmetatile 1, 16, 592, 0 + setmetatile 2, 16, 593, 0 + setmetatile 4, 6, 584, 0 + setmetatile 5, 6, 585, 0 + setmetatile 4, 7, 592, 0 + setmetatile 5, 7, 593, 0 + setmetatile 7, 12, 584, 0 + setmetatile 8, 12, 585, 0 + setmetatile 7, 13, 592, 0 + setmetatile 8, 13, 593, 0 + setmetatile 10, 12, 584, 0 + setmetatile 11, 12, 585, 0 + setmetatile 10, 13, 592, 0 + setmetatile 11, 13, 593, 0 + setmetatile 10, 18, 584, 0 + setmetatile 11, 18, 585, 0 + setmetatile 10, 19, 592, 0 + setmetatile 11, 19, 593, 0 + setmetatile 3, 4, 586, 1 + setmetatile 3, 5, 594, 0 + setmetatile 6, 10, 586, 1 + setmetatile 6, 11, 594, 0 + setmetatile 6, 13, 586, 1 + setmetatile 6, 14, 594, 0 + setmetatile 6, 16, 586, 1 + setmetatile 6, 17, 594, 0 + setmetatile 9, 4, 586, 1 + setmetatile 9, 5, 594, 0 + setmetatile 9, 7, 586, 1 + setmetatile 9, 8, 594, 0 + setmetatile 12, 13, 586, 1 + setmetatile 12, 14, 594, 0 + setmetatile 12, 16, 586, 1 + setmetatile 12, 17, 594, 0 return Route110_TrickHousePuzzle3_EventScript_1625AB:: @ 81625AB diff --git a/data/scripts/maps/Route110_TrickHousePuzzle7.inc b/data/scripts/maps/Route110_TrickHousePuzzle7.inc index 6756cd055..4ff925639 100644 --- a/data/scripts/maps/Route110_TrickHousePuzzle7.inc +++ b/data/scripts/maps/Route110_TrickHousePuzzle7.inc @@ -23,53 +23,53 @@ Route110_TrickHousePuzzle7_EventScript_163167:: @ 8163167 return Route110_TrickHousePuzzle7_EventScript_163195:: @ 8163195 - setmaptile 13, 17, 610, 0 - setmaptile 12, 16, 575, 1 + setmetatile 13, 17, 610, 0 + setmetatile 12, 16, 575, 1 return Route110_TrickHousePuzzle7_EventScript_1631A8:: @ 81631A8 - setmaptile 12, 13, 610, 0 - setmaptile 12, 11, 575, 1 + setmetatile 12, 13, 610, 0 + setmetatile 12, 11, 575, 1 return Route110_TrickHousePuzzle7_EventScript_1631BB:: @ 81631BB - setmaptile 7, 12, 610, 0 - setmaptile 5, 10, 575, 1 + setmetatile 7, 12, 610, 0 + setmetatile 5, 10, 575, 1 return Route110_TrickHousePuzzle7_EventScript_1631CE:: @ 81631CE - setmaptile 6, 6, 636, 0 - setmaptile 4, 4, 575, 1 + setmetatile 6, 6, 636, 0 + setmetatile 4, 4, 575, 1 return Route110_TrickHousePuzzle7_EventScript_1631E1:: @ 81631E1 - setmaptile 8, 4, 609, 0 - setmaptile 7, 5, 575, 1 + setmetatile 8, 4, 609, 0 + setmetatile 7, 5, 575, 1 return Route110_TrickHousePuzzle7_EventScript_1631F4:: @ 81631F4 - setmaptile 13, 17, 611, 0 - setmaptile 12, 16, 574, 1 + setmetatile 13, 17, 611, 0 + setmetatile 12, 16, 574, 1 return Route110_TrickHousePuzzle7_EventScript_163207:: @ 8163207 - setmaptile 12, 13, 609, 0 - setmaptile 12, 11, 574, 1 + setmetatile 12, 13, 609, 0 + setmetatile 12, 11, 574, 1 return Route110_TrickHousePuzzle7_EventScript_16321A:: @ 816321A - setmaptile 7, 12, 611, 0 - setmaptile 5, 10, 574, 1 + setmetatile 7, 12, 611, 0 + setmetatile 5, 10, 574, 1 return Route110_TrickHousePuzzle7_EventScript_16322D:: @ 816322D - setmaptile 6, 6, 635, 0 - setmaptile 4, 4, 574, 1 + setmetatile 6, 6, 635, 0 + setmetatile 4, 4, 574, 1 return Route110_TrickHousePuzzle7_EventScript_163240:: @ 8163240 - setmaptile 8, 4, 608, 0 - setmaptile 7, 5, 574, 1 + setmetatile 8, 4, 608, 0 + setmetatile 7, 5, 574, 1 return Route110_TrickHousePuzzle7_MapScript1_163253:: @ 8163253 diff --git a/data/scripts/maps/Route111.inc b/data/scripts/maps/Route111.inc index 3e089e354..0a7e6befc 100644 --- a/data/scripts/maps/Route111.inc +++ b/data/scripts/maps/Route111.inc @@ -9,8 +9,8 @@ Route111_MapScript1_14FF9C:: @ 814FF9C end Route111_EventScript_14FFA6:: @ 814FFA6 - setmaptile 29, 86, 124, 1 - setmaptile 29, 87, 145, 1 + setmetatile 29, 86, 124, 1 + setmetatile 29, 87, 145, 1 return Route111_MapScript1_14FFB9:: @ 814FFB9 @@ -54,7 +54,7 @@ Route111_EventScript_150023:: @ 8150023 msgbox Route111_Text_16FA54, 5 compare RESULT, 0 goto_if_eq Route111_EventScript_15005F - giveitem ITEM_ROOT_FOSSIL + giveitem_std ITEM_ROOT_FOSSIL closemessage setflag FLAG_HIDE_ROOT_FOSSIL setflag FLAG_HIDE_CLAW_FOSSIL @@ -76,7 +76,7 @@ Route111_EventScript_150069:: @ 8150069 msgbox Route111_Text_16FAED, 5 compare RESULT, 0 goto_if_eq Route111_EventScript_1500A5 - giveitem ITEM_CLAW_FOSSIL + giveitem_std ITEM_CLAW_FOSSIL closemessage setflag FLAG_HIDE_CLAW_FOSSIL setflag FLAG_HIDE_ROOT_FOSSIL @@ -124,7 +124,7 @@ Route111_EventScript_1500C5:: @ 81500C5 checkflag FLAG_DAILY_RECEIVED_BERRY_ROUTE111 goto_if_eq Route111_EventScript_150100 msgbox Route111_Text_1C56F0, 4 - giveitem ITEM_RAZZ_BERRY + giveitem_std ITEM_RAZZ_BERRY compare RESULT, 0 goto_if_eq Route111_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_ROUTE111 diff --git a/data/scripts/maps/Route111_WinstrateFamilysHouse.inc b/data/scripts/maps/Route111_WinstrateFamilysHouse.inc index 9896af5ae..981971e41 100644 --- a/data/scripts/maps/Route111_WinstrateFamilysHouse.inc +++ b/data/scripts/maps/Route111_WinstrateFamilysHouse.inc @@ -16,7 +16,7 @@ Route111_WinstrateFamilysHouse_EventScript_15BF3A:: @ 815BF3A checkflag FLAG_RECEIVED_MACHO_BRACE goto_if_eq Route111_WinstrateFamilysHouse_EventScript_15BF72 msgbox Route111_WinstrateFamilysHouse_Text_19208A, 4 - giveitem ITEM_MACHO_BRACE + giveitem_std ITEM_MACHO_BRACE compare RESULT, 0 goto_if_eq Route111_WinstrateFamilysHouse_EventScript_1A029B setflag FLAG_RECEIVED_MACHO_BRACE diff --git a/data/scripts/maps/Route113.inc b/data/scripts/maps/Route113.inc index 2eb34cdf3..37fd0ed3f 100644 --- a/data/scripts/maps/Route113.inc +++ b/data/scripts/maps/Route113.inc @@ -4,7 +4,7 @@ Route113_MapScripts:: @ 81505CC .byte 0 Route113_MapScript1_1505D7:: @ 81505D7 - tileeffect 1 + setstepcallback 1 end Route113_MapScript1_1505DA:: @ 81505DA diff --git a/data/scripts/maps/Route113_GlassWorkshop.inc b/data/scripts/maps/Route113_GlassWorkshop.inc index 078ac1006..8d853b88d 100644 --- a/data/scripts/maps/Route113_GlassWorkshop.inc +++ b/data/scripts/maps/Route113_GlassWorkshop.inc @@ -22,7 +22,7 @@ Route113_GlassWorkshop_EventScript_163565:: @ 8163565 compare 0x40be, 1 goto_if_eq Route113_GlassWorkshop_EventScript_1635AB msgbox Route113_GlassWorkshop_Text_19E4E6, 4 - giveitem ITEM_SOOT_SACK + giveitem_std ITEM_SOOT_SACK setvar 0x40be, 1 msgbox Route113_GlassWorkshop_Text_19E59B, 4 release @@ -68,7 +68,7 @@ Route113_GlassWorkshop_EventScript_1635EE:: @ 81635EE Route113_GlassWorkshop_EventScript_163660:: @ 8163660 setvar 0x8008, 39 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 setvar 0x800a, 250 compare 0x4048, 250 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -82,7 +82,7 @@ Route113_GlassWorkshop_EventScript_163660:: @ 8163660 Route113_GlassWorkshop_EventScript_16369C:: @ 816369C setvar 0x8008, 40 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 setvar 0x800a, 500 compare 0x4048, 500 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -96,7 +96,7 @@ Route113_GlassWorkshop_EventScript_16369C:: @ 816369C Route113_GlassWorkshop_EventScript_1636D8:: @ 81636D8 setvar 0x8008, 41 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 setvar 0x800a, 500 compare 0x4048, 500 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -110,7 +110,7 @@ Route113_GlassWorkshop_EventScript_1636D8:: @ 81636D8 Route113_GlassWorkshop_EventScript_163714:: @ 8163714 setvar 0x8008, 43 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 setvar 0x800a, 1000 compare 0x4048, 1000 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -124,7 +124,7 @@ Route113_GlassWorkshop_EventScript_163714:: @ 8163714 Route113_GlassWorkshop_EventScript_163750:: @ 8163750 setvar 0x8008, 42 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 setvar 0x800a, 1000 compare 0x4048, 1000 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -139,7 +139,7 @@ Route113_GlassWorkshop_EventScript_163750:: @ 8163750 Route113_GlassWorkshop_EventScript_16378C:: @ 816378C setvar 0x8009, 1 setvar 0x8008, 13 - getdecorname 0, 0x8008 + bufferdecorationname 0, 0x8008 setvar 0x800a, 6000 compare 0x4048, 6000 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -154,7 +154,7 @@ Route113_GlassWorkshop_EventScript_16378C:: @ 816378C Route113_GlassWorkshop_EventScript_1637CD:: @ 81637CD setvar 0x8009, 1 setvar 0x8008, 6 - getdecorname 0, 0x8008 + bufferdecorationname 0, 0x8008 setvar 0x800a, 8000 compare 0x4048, 8000 goto_if 0, Route113_GlassWorkshop_EventScript_163830 @@ -174,14 +174,14 @@ Route113_GlassWorkshop_EventScript_16380E:: @ 816380E Route113_GlassWorkshop_EventScript_163818:: @ 8163818 setvar 0x800a, 250 subvar 0x800a, 16456 - getnumberstring 0, 32778 + buffernumberstring 0, 32778 msgbox Route113_GlassWorkshop_Text_19E697, 4 release end Route113_GlassWorkshop_EventScript_163830:: @ 8163830 subvar 0x800a, 16456 - getnumberstring 1, 32778 + buffernumberstring 1, 32778 message Route113_GlassWorkshop_Text_19E890 waitmessage goto Route113_GlassWorkshop_EventScript_1635EE @@ -210,13 +210,13 @@ Route113_GlassWorkshop_EventScript_163851:: @ 8163851 end Route113_GlassWorkshop_EventScript_163889:: @ 8163889 - giveitem 0x8008 + giveitem_std 0x8008 compare RESULT, 0 goto_if_eq Route113_GlassWorkshop_EventScript_1638B4 return Route113_GlassWorkshop_EventScript_1638A1:: @ 81638A1 - givedecoration 0x8008 + givedecoration_std 0x8008 compare RESULT, 0 goto_if_eq Route113_GlassWorkshop_EventScript_1638C3 return @@ -247,49 +247,49 @@ Route113_GlassWorkshop_EventScript_1638D2:: @ 81638D2 Route113_GlassWorkshop_EventScript_163925:: @ 8163925 setvar 0x8009, 0 setvar 0x8008, 39 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_163939:: @ 8163939 setvar 0x8009, 0 setvar 0x8008, 40 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_16394D:: @ 816394D setvar 0x8009, 0 setvar 0x8008, 41 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_163961:: @ 8163961 setvar 0x8009, 0 setvar 0x8008, 43 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_163975:: @ 8163975 setvar 0x8009, 0 setvar 0x8008, 42 - getitemname 0, 0x8008 + bufferitemname 0, 0x8008 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_163989:: @ 8163989 setvar 0x8009, 1 setvar 0x8008, 13 - getdecorname 0, 13 + bufferdecorationname 0, 13 goto Route113_GlassWorkshop_EventScript_1639B1 end Route113_GlassWorkshop_EventScript_16399D:: @ 816399D setvar 0x8009, 1 setvar 0x8008, 6 - getdecorname 0, 6 + bufferdecorationname 0, 6 goto Route113_GlassWorkshop_EventScript_1639B1 end diff --git a/data/scripts/maps/Route114.inc b/data/scripts/maps/Route114.inc index 3d1da2014..302c162b0 100644 --- a/data/scripts/maps/Route114.inc +++ b/data/scripts/maps/Route114.inc @@ -11,7 +11,7 @@ Route114_EventScript_150733:: @ 8150733 random 5 addvar RESULT, 15 addvar RESULT, 133 - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq Route114_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_ROUTE114 @@ -30,7 +30,7 @@ Route114_EventScript_150782:: @ 8150782 checkflag FLAG_RECEIVED_TM05 goto_if_eq Route114_EventScript_1507B9 msgbox Route114_Text_170154, 4 - giveitem ITEM_TM05 + giveitem_std ITEM_TM05 compare RESULT, 0 goto_if_eq Route114_EventScript_1A029B setflag FLAG_RECEIVED_TM05 @@ -47,9 +47,9 @@ Route114_EventScript_1507C3:: @ 81507C3 lock faceplayer waitse - playpokecry SPECIES_POOCHYENA, 2 + playmoncry SPECIES_POOCHYENA, 2 msgbox Route114_Text_1701F9, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/Route114_FossilManiacsHouse.inc b/data/scripts/maps/Route114_FossilManiacsHouse.inc index abf9ac883..1a1445fde 100644 --- a/data/scripts/maps/Route114_FossilManiacsHouse.inc +++ b/data/scripts/maps/Route114_FossilManiacsHouse.inc @@ -12,7 +12,7 @@ Route114_FossilManiacsHouse_EventScript_15C1C3:: @ 815C1C3 checkflag FLAG_RECEIVED_TM28 goto_if_eq Route114_FossilManiacsHouse_EventScript_15C1F2 msgbox Route114_FossilManiacsHouse_Text_1925E1, 4 - giveitem ITEM_TM28 + giveitem_std ITEM_TM28 compare RESULT, 0 goto_if_eq Route114_FossilManiacsHouse_EventScript_1A029B setflag FLAG_RECEIVED_TM28 diff --git a/data/scripts/maps/Route114_LanettesHouse.inc b/data/scripts/maps/Route114_LanettesHouse.inc index 87b0f2cd6..f8ff5de73 100644 --- a/data/scripts/maps/Route114_LanettesHouse.inc +++ b/data/scripts/maps/Route114_LanettesHouse.inc @@ -14,9 +14,9 @@ Route114_LanettesHouse_EventScript_15C262:: @ 815C262 setflag FLAG_SYS_PC_LANETTE msgbox Route114_LanettesHouse_Text_192A0D, 4 .ifdef SAPPHIRE - givedecoration DECOR_LOTAD_DOLL + givedecoration_std DECOR_LOTAD_DOLL .else - givedecoration DECOR_SEEDOT_DOLL + givedecoration_std DECOR_SEEDOT_DOLL .endif compare RESULT, 0 goto_if_eq Route114_LanettesHouse_EventScript_1A02AE diff --git a/data/scripts/maps/Route116.inc b/data/scripts/maps/Route116.inc index 34c685196..9aadedb32 100644 --- a/data/scripts/maps/Route116.inc +++ b/data/scripts/maps/Route116.inc @@ -43,7 +43,7 @@ Route116_EventScript_150A7B:: @ 8150A7B Route116_EventScript_150A94:: @ 8150A94 setflag FLAG_MET_DEVON_EMPLOYEE - giveitem ITEM_REPEAT_BALL + giveitem_std ITEM_REPEAT_BALL compare RESULT, 0 goto_if_eq Route116_EventScript_150B12 msgbox Route116_Text_1707B8, 4 diff --git a/data/scripts/maps/Route118.inc b/data/scripts/maps/Route118.inc index bf34b5426..ca69e01c4 100644 --- a/data/scripts/maps/Route118.inc +++ b/data/scripts/maps/Route118.inc @@ -20,7 +20,7 @@ Route118_EventScript_150F34:: @ 8150F34 Route118_EventScript_150F5E:: @ 8150F5E msgbox Route118_Text_170F46, 4 - giveitem ITEM_GOOD_ROD + giveitem_std ITEM_GOOD_ROD setflag FLAG_RECEIVED_GOOD_ROD msgbox Route118_Text_170F7E, 4 release diff --git a/data/scripts/maps/Route119.inc b/data/scripts/maps/Route119.inc index fb3d75660..aff1254a9 100644 --- a/data/scripts/maps/Route119.inc +++ b/data/scripts/maps/Route119.inc @@ -148,7 +148,7 @@ Route119_EventScript_151337:: @ 8151337 end Route119_EventScript_151352:: @ 8151352 - giveitem ITEM_HM02 + giveitem_std ITEM_HM02 setflag FLAG_RECEIVED_HM02 return diff --git a/data/scripts/maps/Route119_House.inc b/data/scripts/maps/Route119_House.inc index 42cc89068..76763c68e 100644 --- a/data/scripts/maps/Route119_House.inc +++ b/data/scripts/maps/Route119_House.inc @@ -9,8 +9,8 @@ Route119_House_EventScript_163DE7:: @ 8163DE7 lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox Route119_House_Text_19F406, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/Route119_WeatherInstitute_2F.inc b/data/scripts/maps/Route119_WeatherInstitute_2F.inc index 4ee12fe93..991725b8c 100644 --- a/data/scripts/maps/Route119_WeatherInstitute_2F.inc +++ b/data/scripts/maps/Route119_WeatherInstitute_2F.inc @@ -55,14 +55,14 @@ Route119_WeatherInstitute_2F_EventScript_163D45:: @ 8163D45 Route119_WeatherInstitute_2F_EventScript_163D7A:: @ 8163D7A msgbox Route119_WeatherInstitute_2F_Text_19F1CF, 4 - countpokemon + getpartysize compare RESULT, 6 goto_if_eq Route119_WeatherInstitute_2F_EventScript_163DB4 playfanfare 370 message Route119_WeatherInstitute_2F_Text_19F267 waitfanfare waitmessage - givepoke SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER, 0x0, 0x0, 0 + givemon SPECIES_CASTFORM, 25, ITEM_MYSTIC_WATER, 0x0, 0x0, 0 setflag FLAG_RECEIVED_CASTFORM msgbox Route119_WeatherInstitute_2F_Text_19F27D, 4 release diff --git a/data/scripts/maps/Route120.inc b/data/scripts/maps/Route120.inc index 209291a3a..cd84f95af 100644 --- a/data/scripts/maps/Route120.inc +++ b/data/scripts/maps/Route120.inc @@ -59,15 +59,15 @@ Route120_MapScript1_151686:: @ 8151686 end Route120_EventScript_1516A2:: @ 81516A2 - setmaptile 7, 54, 124, 1 - setmaptile 7, 55, 145, 1 + setmetatile 7, 54, 124, 1 + setmetatile 7, 55, 145, 1 return Route120_EventScript_1516B5:: @ 81516B5 - setmaptile 13, 15, 663, 0 - setmaptile 12, 16, 671, 0 - setmaptile 12, 17, 161, 0 - setmaptile 13, 17, 161, 0 + setmetatile 13, 15, 663, 0 + setmetatile 12, 16, 671, 0 + setmetatile 12, 17, 161, 0 + setmetatile 13, 17, 161, 0 return Route120_EventScript_1516DA:: @ 81516DA @@ -160,7 +160,7 @@ Route120_EventScript_151808:: @ 8151808 end Route120_EventScript_151813:: @ 8151813 - giveitem 0x8004 + giveitem_std 0x8004 compare RESULT, 0 goto_if_eq Route120_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_ROUTE120 @@ -222,9 +222,9 @@ Route120_EventScript_15189D:: @ 815189D applymovement 30, Route120_Movement_1A0662 waitmovement 0 waitse - playpokecry SPECIES_KECLEON, 2 + playmoncry SPECIES_KECLEON, 2 delay 40 - waitpokecry + waitmoncry setwildbattle SPECIES_KECLEON, 30, ITEM_NONE setvar 0x8004, 0 setflag FLAG_SYS_CTRL_OBJ_DELETE @@ -238,22 +238,22 @@ Route120_EventScript_151908:: @ 8151908 applymovement 255, Route120_Movement_1A0841 waitmovement 0 msgbox Route120_Text_171A40, 4 - giveitem ITEM_DEVON_SCOPE + giveitem_std ITEM_DEVON_SCOPE setflag FLAG_RECEIVED_DEVON_SCOPE msgbox Route120_Text_171B0E, 4 closemessage applymovement 31, Route120_Movement_1A0845 waitmovement 0 delay 50 - setfieldeffect 0, 1 + setfieldeffectargument 0, 1 dofieldeffect 30 delay 15 removeobject 31 waitfieldeffect 30 - setmaptile 13, 15, 663, 0 - setmaptile 12, 16, 671, 0 - setmaptile 12, 17, 161, 0 - setmaptile 13, 17, 161, 0 + setmetatile 13, 15, 663, 0 + setmetatile 12, 16, 671, 0 + setmetatile 12, 17, 161, 0 + setmetatile 13, 17, 161, 0 special DrawWholeMapView release end diff --git a/data/scripts/maps/Route121_SafariZoneEntrance.inc b/data/scripts/maps/Route121_SafariZoneEntrance.inc index 9f8753b76..431444dae 100644 --- a/data/scripts/maps/Route121_SafariZoneEntrance.inc +++ b/data/scripts/maps/Route121_SafariZoneEntrance.inc @@ -87,7 +87,7 @@ Route121_SafariZoneEntrance_EventScript_15C3B3:: @ 815C3B3 end Route121_SafariZoneEntrance_EventScript_15C425:: @ 815C425 - countpokemon + getpartysize compare RESULT, 6 goto_if 5, Route121_SafariZoneEntrance_EventScript_15C44F specialvar RESULT, CheckFreePokemonStorageSpace diff --git a/data/scripts/maps/Route123.inc b/data/scripts/maps/Route123.inc index 9ad0220bd..adfebfe08 100644 --- a/data/scripts/maps/Route123.inc +++ b/data/scripts/maps/Route123.inc @@ -16,7 +16,7 @@ Route123_EventScript_151C5D:: @ 8151C5D compare RESULT, 0 goto_if_eq Route123_EventScript_151CAA msgbox Route123_Text_171DC2, 4 - giveitem ITEM_TM19 + giveitem_std ITEM_TM19 compare RESULT, 0 goto_if_eq Route123_EventScript_1A029B setflag FLAG_RECEIVED_TM19 diff --git a/data/scripts/maps/Route123_BerryMastersHouse.inc b/data/scripts/maps/Route123_BerryMastersHouse.inc index dab303345..6948bff87 100644 --- a/data/scripts/maps/Route123_BerryMastersHouse.inc +++ b/data/scripts/maps/Route123_BerryMastersHouse.inc @@ -16,7 +16,7 @@ Route123_BerryMastersHouse_EventScript_1639E9:: @ 81639E9 random 10 addvar RESULT, 20 addvar RESULT, 133 - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_FROM_BERRYMASTER @@ -24,7 +24,7 @@ Route123_BerryMastersHouse_EventScript_1639E9:: @ 81639E9 random 10 addvar RESULT, 20 addvar RESULT, 133 - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B msgbox Route123_BerryMastersHouse_Text_1C5C83, 4 @@ -78,7 +78,7 @@ Route123_BerryMastersHouse_EventScript_163AF0:: @ 8163AF0 msgbox Route123_BerryMastersHouse_Text_1C5E0E, 4 random 10 addvar RESULT, ITEM_CHERI_BERRY - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B goto Route123_BerryMastersHouse_EventScript_163C1D @@ -89,7 +89,7 @@ Route123_BerryMastersHouse_EventScript_163B1E:: @ 8163B1E checkflag FLAG_RECEIVED_SPELON_BERRY goto_if_eq Route123_BerryMastersHouse_EventScript_163AF0 msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4 - giveitem ITEM_SPELON_BERRY + giveitem_std ITEM_SPELON_BERRY compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_RECEIVED_SPELON_BERRY @@ -100,7 +100,7 @@ Route123_BerryMastersHouse_EventScript_163B4F:: @ 8163B4F checkflag FLAG_RECEIVED_PAMTRE_BERRY goto_if_eq Route123_BerryMastersHouse_EventScript_163AF0 msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4 - giveitem ITEM_PAMTRE_BERRY + giveitem_std ITEM_PAMTRE_BERRY compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_RECEIVED_PAMTRE_BERRY @@ -111,7 +111,7 @@ Route123_BerryMastersHouse_EventScript_163B80:: @ 8163B80 checkflag FLAG_RECEIVED_WATMEL_BERRY goto_if_eq Route123_BerryMastersHouse_EventScript_163AF0 msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4 - giveitem ITEM_WATMEL_BERRY + giveitem_std ITEM_WATMEL_BERRY compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_RECEIVED_WATMEL_BERRY @@ -122,7 +122,7 @@ Route123_BerryMastersHouse_EventScript_163BB1:: @ 8163BB1 checkflag FLAG_RECEIVED_DURIN_BERRY goto_if_eq Route123_BerryMastersHouse_EventScript_163AF0 msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4 - giveitem ITEM_DURIN_BERRY + giveitem_std ITEM_DURIN_BERRY compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_RECEIVED_DURIN_BERRY @@ -133,7 +133,7 @@ Route123_BerryMastersHouse_EventScript_163BE2:: @ 8163BE2 checkflag FLAG_RECEIVED_BELUE_BERRY goto_if_eq Route123_BerryMastersHouse_EventScript_163AF0 msgbox Route123_BerryMastersHouse_Text_1C5DC1, 4 - giveitem ITEM_BELUE_BERRY + giveitem_std ITEM_BELUE_BERRY compare RESULT, 0 goto_if_eq Route123_BerryMastersHouse_EventScript_1A029B setflag FLAG_RECEIVED_BELUE_BERRY diff --git a/data/scripts/maps/Route124_DivingTreasureHuntersHouse.inc b/data/scripts/maps/Route124_DivingTreasureHuntersHouse.inc index 55f3141fd..4902d9f08 100644 --- a/data/scripts/maps/Route124_DivingTreasureHuntersHouse.inc +++ b/data/scripts/maps/Route124_DivingTreasureHuntersHouse.inc @@ -244,8 +244,8 @@ Route124_DivingTreasureHuntersHouse_EventScript_164283:: @ 8164283 goto Route124_DivingTreasureHuntersHouse_EventScript_164292 Route124_DivingTreasureHuntersHouse_EventScript_164292:: @ 8164292 - getitemname 0, 0x8008 - getitemname 1, 0x8009 + bufferitemname 0, 0x8008 + bufferitemname 1, 0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_19F5E0, 5 compare RESULT, 0 goto_if_eq Route124_DivingTreasureHuntersHouse_EventScript_16431F @@ -259,8 +259,8 @@ Route124_DivingTreasureHuntersHouse_EventScript_164292:: @ 8164292 end Route124_DivingTreasureHuntersHouse_EventScript_1642D3:: @ 81642D3 - removeitem 0x8008, 1 - giveitem 0x8009 + takeitem 0x8008, 1 + giveitem_std 0x8009 msgbox Route124_DivingTreasureHuntersHouse_Text_19F606, 4 call Route124_DivingTreasureHuntersHouse_EventScript_163E44 compare 0x4001, 0 diff --git a/data/scripts/maps/Route128.inc b/data/scripts/maps/Route128.inc index b0e295db6..a81e73c3e 100644 --- a/data/scripts/maps/Route128.inc +++ b/data/scripts/maps/Route128.inc @@ -52,7 +52,7 @@ Route128_EventScript_15213F:: @ 815213F removeobject 5 removeobject 4 delay 100 - setfieldeffect 0, 1 + setfieldeffectargument 0, 1 dofieldeffect 30 waitfieldeffect 30 addobject 3 @@ -77,7 +77,7 @@ Route128_EventScript_15213F:: @ 815213F applymovement 3, Route128_Movement_1A0845 waitmovement 0 delay 50 - setfieldeffect 0, 1 + setfieldeffectargument 0, 1 dofieldeffect 30 delay 15 removeobject 3 diff --git a/data/scripts/maps/RustboroCity.inc b/data/scripts/maps/RustboroCity.inc index 7e3a0e191..c45389b9f 100644 --- a/data/scripts/maps/RustboroCity.inc +++ b/data/scripts/maps/RustboroCity.inc @@ -468,7 +468,7 @@ RustboroCity_EventScript_14C77D:: @ 814C77D compare 0x4001, 4 call_if 1, RustboroCity_EventScript_14C8B8 msgbox RustboroCity_Text_166FB4, 4 - giveitem ITEM_GREAT_BALL + giveitem_std ITEM_GREAT_BALL compare RESULT, 0 call_if 1, RustboroCity_EventScript_14C7F5 msgbox RustboroCity_Text_16707F, 4 diff --git a/data/scripts/maps/RustboroCity_CuttersHouse.inc b/data/scripts/maps/RustboroCity_CuttersHouse.inc index 77f2ee0a4..3371005c0 100644 --- a/data/scripts/maps/RustboroCity_CuttersHouse.inc +++ b/data/scripts/maps/RustboroCity_CuttersHouse.inc @@ -7,7 +7,7 @@ RustboroCity_CuttersHouse_EventScript_157D27:: @ 8157D27 checkflag FLAG_RECEIVED_HM01 goto_if_eq RustboroCity_CuttersHouse_EventScript_157D53 msgbox RustboroCity_CuttersHouse_Text_18509C, 4 - giveitem ITEM_HM01 + giveitem_std ITEM_HM01 setflag FLAG_RECEIVED_HM01 msgbox RustboroCity_CuttersHouse_Text_1851C9, 4 release diff --git a/data/scripts/maps/RustboroCity_DevonCorp_2F.inc b/data/scripts/maps/RustboroCity_DevonCorp_2F.inc index 097fee3fb..89d59258d 100644 --- a/data/scripts/maps/RustboroCity_DevonCorp_2F.inc +++ b/data/scripts/maps/RustboroCity_DevonCorp_2F.inc @@ -88,9 +88,9 @@ RustboroCity_DevonCorp_2F_EventScript_1575A6:: @ 81575A6 msgbox RustboroCity_DevonCorp_2F_Text_182F35, 5 compare RESULT, 0 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_157636 - getitemname 0, ITEM_ROOT_FOSSIL + bufferitemname 0, ITEM_ROOT_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_183023, 4 - removeitem ITEM_ROOT_FOSSIL, 1 + takeitem ITEM_ROOT_FOSSIL, 1 setvar 0x40c4, 1 setvar 0x40c5, 1 release @@ -106,9 +106,9 @@ RustboroCity_DevonCorp_2F_EventScript_1575EE:: @ 81575EE msgbox RustboroCity_DevonCorp_2F_Text_182F35, 5 compare RESULT, 0 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_157636 - getitemname 0, ITEM_CLAW_FOSSIL + bufferitemname 0, ITEM_CLAW_FOSSIL msgbox RustboroCity_DevonCorp_2F_Text_183023, 4 - removeitem ITEM_CLAW_FOSSIL, 1 + takeitem ITEM_CLAW_FOSSIL, 1 setvar 0x40c4, 1 setvar 0x40c5, 2 release @@ -132,9 +132,9 @@ RustboroCity_DevonCorp_2F_EventScript_15764A:: @ 815764A end RustboroCity_DevonCorp_2F_EventScript_157661:: @ 8157661 - getspeciesname 1, SPECIES_LILEEP + bufferspeciesname 1, SPECIES_LILEEP msgbox RustboroCity_DevonCorp_2F_Text_183124, 4 - countpokemon + getpartysize compare RESULT, 6 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_157707 copyvar 0x8004, RESULT @@ -144,7 +144,7 @@ RustboroCity_DevonCorp_2F_EventScript_157661:: @ 8157661 message RustboroCity_DevonCorp_2F_Text_18319E waitfanfare waitmessage - givepoke SPECIES_LILEEP, 20, ITEM_NONE, 0x0, 0x0, 0 + givemon SPECIES_LILEEP, 20, ITEM_NONE, 0x0, 0x0, 0 msgbox RustboroCity_DevonCorp_2F_Text_1A1102, 5 compare RESULT, 1 call_if 1, RustboroCity_DevonCorp_2F_EventScript_1A0678 @@ -152,9 +152,9 @@ RustboroCity_DevonCorp_2F_EventScript_157661:: @ 8157661 end RustboroCity_DevonCorp_2F_EventScript_1576B4:: @ 81576B4 - getspeciesname 1, SPECIES_ANORITH + bufferspeciesname 1, SPECIES_ANORITH msgbox RustboroCity_DevonCorp_2F_Text_183124, 4 - countpokemon + getpartysize compare RESULT, 6 goto_if_eq RustboroCity_DevonCorp_2F_EventScript_157707 copyvar 0x8004, RESULT @@ -164,7 +164,7 @@ RustboroCity_DevonCorp_2F_EventScript_1576B4:: @ 81576B4 message RustboroCity_DevonCorp_2F_Text_18319E waitfanfare waitmessage - givepoke SPECIES_ANORITH, 20, ITEM_NONE, 0x0, 0x0, 0 + givemon SPECIES_ANORITH, 20, ITEM_NONE, 0x0, 0x0, 0 msgbox RustboroCity_DevonCorp_2F_Text_1A1102, 5 compare RESULT, 1 call_if 1, RustboroCity_DevonCorp_2F_EventScript_1A0678 diff --git a/data/scripts/maps/RustboroCity_DevonCorp_3F.inc b/data/scripts/maps/RustboroCity_DevonCorp_3F.inc index 0e9786760..e2e70d4c0 100644 --- a/data/scripts/maps/RustboroCity_DevonCorp_3F.inc +++ b/data/scripts/maps/RustboroCity_DevonCorp_3F.inc @@ -48,7 +48,7 @@ RustboroCity_DevonCorp_3F_EventScript_157752:: @ 8157752 applymovement 255, RustboroCity_DevonCorp_3F_Movement_157835 waitmovement 0 msgbox RustboroCity_DevonCorp_3F_Text_18320B, 4 - giveitem ITEM_LETTER + giveitem_std ITEM_LETTER msgbox RustboroCity_DevonCorp_3F_Text_18337E, 4 playfanfare 370 message RustboroCity_DevonCorp_3F_Text_183422 @@ -159,7 +159,7 @@ RustboroCity_DevonCorp_3F_EventScript_15783B:: @ 815783B RustboroCity_DevonCorp_3F_EventScript_157864:: @ 8157864 msgbox RustboroCity_DevonCorp_3F_Text_18353E, 4 - giveitem ITEM_EXP_SHARE + giveitem_std ITEM_EXP_SHARE compare RESULT, 0 goto_if_eq RustboroCity_DevonCorp_3F_EventScript_1A029B setflag FLAG_RECEIVED_EXP_SHARE diff --git a/data/scripts/maps/RustboroCity_Flat2_1F.inc b/data/scripts/maps/RustboroCity_Flat2_1F.inc index b6b8b41b1..a6ba54ce7 100644 --- a/data/scripts/maps/RustboroCity_Flat2_1F.inc +++ b/data/scripts/maps/RustboroCity_Flat2_1F.inc @@ -9,8 +9,8 @@ RustboroCity_Flat2_1F_EventScript_157D83:: @ 8157D83 lock faceplayer waitse - playpokecry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, 0 msgbox RustboroCity_Flat2_1F_Text_185410, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/RustboroCity_Flat2_2F.inc b/data/scripts/maps/RustboroCity_Flat2_2F.inc index 5be59b14e..3a2242c7a 100644 --- a/data/scripts/maps/RustboroCity_Flat2_2F.inc +++ b/data/scripts/maps/RustboroCity_Flat2_2F.inc @@ -11,7 +11,7 @@ RustboroCity_Flat2_2F_EventScript_157DA0:: @ 8157DA0 checkflag FLAG_RECEIVED_PREMIER_BALL_RUSTBORO goto_if_eq RustboroCity_Flat2_2F_EventScript_157DCF msgbox RustboroCity_Flat2_2F_Text_185461, 4 - giveitem ITEM_PREMIER_BALL + giveitem_std ITEM_PREMIER_BALL compare RESULT, 0 goto_if_eq RustboroCity_Flat2_2F_EventScript_1A029B setflag FLAG_RECEIVED_PREMIER_BALL_RUSTBORO diff --git a/data/scripts/maps/RustboroCity_Gym.inc b/data/scripts/maps/RustboroCity_Gym.inc index 427be433d..0dc403ec7 100644 --- a/data/scripts/maps/RustboroCity_Gym.inc +++ b/data/scripts/maps/RustboroCity_Gym.inc @@ -26,7 +26,7 @@ RustboroCity_Gym_EventScript_1578FE:: @ 81578FE end RustboroCity_Gym_EventScript_15793C:: @ 815793C - giveitem ITEM_TM39 + giveitem_std ITEM_TM39 compare RESULT, 0 goto_if_eq RustboroCity_Gym_EventScript_1A029B setflag FLAG_RECEIVED_TM39 diff --git a/data/scripts/maps/RustboroCity_House1.inc b/data/scripts/maps/RustboroCity_House1.inc index 53a845648..0cad33204 100644 --- a/data/scripts/maps/RustboroCity_House1.inc +++ b/data/scripts/maps/RustboroCity_House1.inc @@ -39,7 +39,7 @@ RustboroCity_House1_EventScript_157CFB:: @ 8157CFB end RustboroCity_House1_EventScript_157D05:: @ 8157D05 - getspeciesname 0, 0x8009 + bufferspeciesname 0, 0x8009 msgbox RustboroCity_House1_Text_184F8F, 4 release end diff --git a/data/scripts/maps/RustboroCity_House3.inc b/data/scripts/maps/RustboroCity_House3.inc index a5088175e..86d77c18e 100644 --- a/data/scripts/maps/RustboroCity_House3.inc +++ b/data/scripts/maps/RustboroCity_House3.inc @@ -13,8 +13,8 @@ RustboroCity_House3_EventScript_157DFF:: @ 8157DFF lock faceplayer waitse - playpokecry SPECIES_PIKACHU, 0 + playmoncry SPECIES_PIKACHU, 0 msgbox RustboroCity_House3_Text_18567D, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/RustboroCity_PokemonCenter_1F.inc b/data/scripts/maps/RustboroCity_PokemonCenter_1F.inc index 53b481832..a1c0ac31b 100644 --- a/data/scripts/maps/RustboroCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/RustboroCity_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ RustboroCity_PokemonCenter_1F_MapScripts:: @ 8157B79 .byte 0 RustboroCity_PokemonCenter_1F_MapScript1_157B7F:: @ 8157B7F - sethealplace 6 + setrespawn 6 call RustboroCity_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ RustboroCity_PokemonCenter_1F_EventScript_157B88:: @ 8157B88 setvar 0x800b, 1 call RustboroCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/RustboroCity_PokemonSchool.inc b/data/scripts/maps/RustboroCity_PokemonSchool.inc index 9fd77bd6b..21fdf3d3b 100644 --- a/data/scripts/maps/RustboroCity_PokemonSchool.inc +++ b/data/scripts/maps/RustboroCity_PokemonSchool.inc @@ -84,7 +84,7 @@ RustboroCity_PokemonSchool_EventScript_157ACE:: @ 8157ACE compare FACING, 3 call_if 1, RustboroCity_PokemonSchool_EventScript_157B29 msgbox RustboroCity_PokemonSchool_Text_1846A2, 4 - giveitem ITEM_QUICK_CLAW + giveitem_std ITEM_QUICK_CLAW compare RESULT, 0 goto_if_eq RustboroCity_PokemonSchool_EventScript_1A029B closemessage diff --git a/data/scripts/maps/RusturfTunnel.inc b/data/scripts/maps/RusturfTunnel.inc index 04364b661..64fce8118 100644 --- a/data/scripts/maps/RusturfTunnel.inc +++ b/data/scripts/maps/RusturfTunnel.inc @@ -64,7 +64,7 @@ RusturfTunnel_EventScript_15C7D1:: @ 815C7D1 call_if 1, RusturfTunnel_EventScript_15C8EB compare 0x4001, 3 call_if 1, RusturfTunnel_EventScript_15C8EB - giveitem ITEM_HM04 + giveitem_std ITEM_HM04 setflag FLAG_RECEIVED_HM04 msgbox RusturfTunnel_Text_194693, 4 closemessage @@ -300,9 +300,9 @@ RusturfTunnel_EventScript_15C9D7:: @ 815C9D7 lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox RusturfTunnel_Text_194188, 4 - waitpokecry + waitmoncry release end @@ -313,7 +313,7 @@ RusturfTunnel_EventScript_15C9EA:: @ 815C9EA msgbox RusturfTunnel_Text_19419B, 4 trainerbattle 3, OPPONENT_RUSTURF_TUNNEL_GRUNT, 0, RusturfTunnel_Text_194243 msgbox RusturfTunnel_Text_194274, 4 - giveitem ITEM_DEVON_GOODS + giveitem_std ITEM_DEVON_GOODS closemessage applymovement 255, RusturfTunnel_Movement_15CA99 applymovement 6, RusturfTunnel_Movement_15CAA2 @@ -332,9 +332,9 @@ RusturfTunnel_EventScript_15C9EA:: @ 815C9EA message RusturfTunnel_Text_19434F waitmessage waitse - playpokecry SPECIES_WINGULL, 0 - waitbutton - waitpokecry + playmoncry SPECIES_WINGULL, 0 + waitbuttonpress + waitmoncry closemessage applymovement 5, RusturfTunnel_Movement_15CAB4 applymovement 7, RusturfTunnel_Movement_15CAC3 diff --git a/data/scripts/maps/SSTidalCorridor.inc b/data/scripts/maps/SSTidalCorridor.inc index 18cff8320..8e9a404a2 100644 --- a/data/scripts/maps/SSTidalCorridor.inc +++ b/data/scripts/maps/SSTidalCorridor.inc @@ -88,9 +88,9 @@ SSTidalCorridor_EventScript_15FD9F:: @ 815FD9F lock faceplayer waitse - playpokecry SPECIES_WINGULL, 0 + playmoncry SPECIES_WINGULL, 0 msgbox SSTidalCorridor_Text_199388, 4 - waitpokecry + waitmoncry release end @@ -122,7 +122,7 @@ SSTidalCorridor_EventScript_15FDD6:: @ 815FDD6 end SSTidalCorridor_EventScript_15FDF8:: @ 815FDF8 - sethealplace 8 + setrespawn 8 msgbox SSTidalCorridor_Text_1991F4, 4 checkflag FLAG_RECEIVED_TM49 call_if 1, SSTidalCorridor_EventScript_15FE36 @@ -132,7 +132,7 @@ SSTidalCorridor_EventScript_15FDF8:: @ 815FDF8 end SSTidalCorridor_EventScript_15FE17:: @ 815FE17 - sethealplace 4 + setrespawn 4 msgbox SSTidalCorridor_Text_1991F4, 4 checkflag FLAG_RECEIVED_TM49 call_if 1, SSTidalCorridor_EventScript_15FE36 diff --git a/data/scripts/maps/SSTidalRooms.inc b/data/scripts/maps/SSTidalRooms.inc index 0a48ae453..0390177de 100644 --- a/data/scripts/maps/SSTidalRooms.inc +++ b/data/scripts/maps/SSTidalRooms.inc @@ -7,7 +7,7 @@ SSTidalRooms_EventScript_15FF06:: @ 815FF06 checkflag FLAG_RECEIVED_TM49 goto_if_eq SSTidalRooms_EventScript_15FF3D msgbox SSTidalRooms_Text_199B65, 4 - giveitem ITEM_TM49 + giveitem_std ITEM_TM49 compare RESULT, 0 goto_if_eq SSTidalRooms_EventScript_1A029B setflag FLAG_RECEIVED_TM49 diff --git a/data/scripts/maps/SeafloorCavern_Room9.inc b/data/scripts/maps/SeafloorCavern_Room9.inc index 6a4d9af02..b31e8fc25 100644 --- a/data/scripts/maps/SeafloorCavern_Room9.inc +++ b/data/scripts/maps/SeafloorCavern_Room9.inc @@ -79,9 +79,9 @@ SeafloorCavern_Room9_EventScript_15DAFA:: @ 815DAFA setvar RESULT, 0 .endif playse 209 - setfieldeffect 0, 16 - setfieldeffect 1, 42 - setfieldeffect 2, 0 + setfieldeffectargument 0, 16 + setfieldeffectargument 1, 42 + setfieldeffectargument 2, 0 dofieldeffect 54 waitfieldeffect 54 .ifdef SAPPHIRE diff --git a/data/scripts/maps/SealedChamber_InnerRoom.inc b/data/scripts/maps/SealedChamber_InnerRoom.inc index a0c6314cc..cd778202c 100644 --- a/data/scripts/maps/SealedChamber_InnerRoom.inc +++ b/data/scripts/maps/SealedChamber_InnerRoom.inc @@ -4,7 +4,7 @@ SealedChamber_InnerRoom_MapScripts:: @ 815F1E7 SealedChamber_InnerRoom_EventScript_15F1E8:: @ 815F1E8 lockall braillemessage SealedChamber_InnerRoom_Braille_1C53C1 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 checkflag FLAG_REGI_DOORS_OPENED goto_if_eq SealedChamber_InnerRoom_EventScript_15F247 @@ -42,7 +42,7 @@ SealedChamber_InnerRoom_EventScript_15F247:: @ 815F247 SealedChamber_InnerRoom_EventScript_15F249:: @ 815F249 lockall braillemessage SealedChamber_InnerRoom_Braille_1C53F2 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -50,7 +50,7 @@ SealedChamber_InnerRoom_EventScript_15F249:: @ 815F249 SealedChamber_InnerRoom_EventScript_15F257:: @ 815F257 lockall braillemessage SealedChamber_InnerRoom_Braille_1C5414 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -58,7 +58,7 @@ SealedChamber_InnerRoom_EventScript_15F257:: @ 815F257 SealedChamber_InnerRoom_EventScript_15F265:: @ 815F265 lockall braillemessage SealedChamber_InnerRoom_Braille_1C5435 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -66,7 +66,7 @@ SealedChamber_InnerRoom_EventScript_15F265:: @ 815F265 SealedChamber_InnerRoom_EventScript_15F273:: @ 815F273 lockall braillemessage SealedChamber_InnerRoom_Braille_1C545C - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -74,7 +74,7 @@ SealedChamber_InnerRoom_EventScript_15F273:: @ 815F273 SealedChamber_InnerRoom_EventScript_15F281:: @ 815F281 lockall braillemessage SealedChamber_InnerRoom_Braille_1C5470 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -82,7 +82,7 @@ SealedChamber_InnerRoom_EventScript_15F281:: @ 815F281 SealedChamber_InnerRoom_EventScript_15F28F:: @ 815F28F lockall braillemessage SealedChamber_InnerRoom_Braille_1C549B - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/SealedChamber_OuterRoom.inc b/data/scripts/maps/SealedChamber_OuterRoom.inc index 7add1e6f3..ad17819c2 100644 --- a/data/scripts/maps/SealedChamber_OuterRoom.inc +++ b/data/scripts/maps/SealedChamber_OuterRoom.inc @@ -19,18 +19,18 @@ SealedChamber_OuterRoom_MapScript1_15F0EB:: @ 815F0EB end SealedChamber_OuterRoom_EventScript_15F0F5:: @ 815F0F5 - setmaptile 9, 1, 553, 1 - setmaptile 10, 1, 553, 1 - setmaptile 11, 1, 553, 1 - setmaptile 9, 2, 565, 1 - setmaptile 10, 2, 565, 1 - setmaptile 11, 2, 565, 1 + setmetatile 9, 1, 553, 1 + setmetatile 10, 1, 553, 1 + setmetatile 11, 1, 553, 1 + setmetatile 9, 2, 565, 1 + setmetatile 10, 2, 565, 1 + setmetatile 11, 2, 565, 1 return SealedChamber_OuterRoom_EventScript_15F12C:: @ 815F12C lockall braillemessage SealedChamber_OuterRoom_Braille_1C534F - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -38,7 +38,7 @@ SealedChamber_OuterRoom_EventScript_15F12C:: @ 815F12C SealedChamber_OuterRoom_EventScript_15F13A:: @ 815F13A lockall braillemessage SealedChamber_OuterRoom_Braille_1C5359 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -46,7 +46,7 @@ SealedChamber_OuterRoom_EventScript_15F13A:: @ 815F13A SealedChamber_OuterRoom_EventScript_15F148:: @ 815F148 lockall braillemessage SealedChamber_OuterRoom_Braille_1C5363 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -54,7 +54,7 @@ SealedChamber_OuterRoom_EventScript_15F148:: @ 815F148 SealedChamber_OuterRoom_EventScript_15F156:: @ 815F156 lockall braillemessage SealedChamber_OuterRoom_Braille_1C536D - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -62,7 +62,7 @@ SealedChamber_OuterRoom_EventScript_15F156:: @ 815F156 SealedChamber_OuterRoom_EventScript_15F164:: @ 815F164 lockall braillemessage SealedChamber_OuterRoom_Braille_1C5377 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -70,7 +70,7 @@ SealedChamber_OuterRoom_EventScript_15F164:: @ 815F164 SealedChamber_OuterRoom_EventScript_15F172:: @ 815F172 lockall braillemessage SealedChamber_OuterRoom_Braille_1C5381 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -78,7 +78,7 @@ SealedChamber_OuterRoom_EventScript_15F172:: @ 815F172 SealedChamber_OuterRoom_EventScript_15F180:: @ 815F180 lockall braillemessage SealedChamber_OuterRoom_Braille_1C538B - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -86,7 +86,7 @@ SealedChamber_OuterRoom_EventScript_15F180:: @ 815F180 SealedChamber_OuterRoom_EventScript_15F18E:: @ 815F18E lockall braillemessage SealedChamber_OuterRoom_Braille_1C5396 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -94,7 +94,7 @@ SealedChamber_OuterRoom_EventScript_15F18E:: @ 815F18E SealedChamber_OuterRoom_EventScript_15F19C:: @ 815F19C lockall braillemessage SealedChamber_OuterRoom_Braille_1C539E - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -102,7 +102,7 @@ SealedChamber_OuterRoom_EventScript_15F19C:: @ 815F19C SealedChamber_OuterRoom_EventScript_15F1AA:: @ 815F1AA lockall braillemessage SealedChamber_OuterRoom_Braille_1C53A9 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -112,7 +112,7 @@ SealedChamber_OuterRoom_EventScript_15F1B8:: @ 815F1B8 checkflag FLAG_SYS_BRAILLE_DIG goto_if_eq SealedChamber_OuterRoom_EventScript_15F1CF braillemessage SealedChamber_OuterRoom_Braille_1C53B1 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end @@ -125,7 +125,7 @@ SealedChamber_OuterRoom_EventScript_15F1CF:: @ 815F1CF SealedChamber_OuterRoom_EventScript_15F1D9:: @ 815F1D9 lockall braillemessage SealedChamber_OuterRoom_Braille_1C53B1 - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/SecretBase_YellowCave4.inc b/data/scripts/maps/SecretBase_YellowCave4.inc index 302bc3930..f72c3d76e 100644 --- a/data/scripts/maps/SecretBase_YellowCave4.inc +++ b/data/scripts/maps/SecretBase_YellowCave4.inc @@ -6,7 +6,7 @@ SecretBase_YellowCave4_MapScripts:: @ 815F337 .byte 0 SecretBase_RedCave1_MapScript1_15F34C:: @ 815F34C - tileeffect 6 + setstepcallback 6 end SecretBase_RedCave1_MapScript1_15F34F:: @ 815F34F diff --git a/data/scripts/maps/ShoalCave_LowTideEntranceRoom.inc b/data/scripts/maps/ShoalCave_LowTideEntranceRoom.inc index fcff20944..533c46850 100644 --- a/data/scripts/maps/ShoalCave_LowTideEntranceRoom.inc +++ b/data/scripts/maps/ShoalCave_LowTideEntranceRoom.inc @@ -37,9 +37,9 @@ ShoalCave_LowTideEntranceRoom_EventScript_15E076:: @ 815E076 compare RESULT, 2 goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_15E12E msgbox ShoalCave_LowTideEntranceRoom_Text_1C6808, 4 - removeitem ITEM_SHOAL_SALT, 4 - removeitem ITEM_SHOAL_SHELL, 4 - giveitem ITEM_SHELL_BELL + takeitem ITEM_SHOAL_SALT, 4 + takeitem ITEM_SHOAL_SHELL, 4 + giveitem_std ITEM_SHELL_BELL compare RESULT, 0 goto_if_eq ShoalCave_LowTideEntranceRoom_EventScript_1A029B msgbox ShoalCave_LowTideEntranceRoom_Text_1C688E, 4 diff --git a/data/scripts/maps/ShoalCave_LowTideInnerRoom.inc b/data/scripts/maps/ShoalCave_LowTideInnerRoom.inc index 43dfa8afa..b6aba9523 100644 --- a/data/scripts/maps/ShoalCave_LowTideInnerRoom.inc +++ b/data/scripts/maps/ShoalCave_LowTideInnerRoom.inc @@ -25,7 +25,7 @@ ShoalCave_LowTideInnerRoom_EventScript_15E1B9:: @ 815E1B9 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E1DA checkflag FLAG_SYS_SHOAL_TIDE goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E1DA - setmaptile 31, 8, 856, 1 + setmetatile 31, 8, 856, 1 goto ShoalCave_LowTideInnerRoom_EventScript_15E1DA end @@ -34,35 +34,35 @@ ShoalCave_LowTideInnerRoom_EventScript_15E1DA:: @ 815E1DA goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E1FB checkflag FLAG_SYS_SHOAL_TIDE goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E1FB - setmaptile 14, 26, 856, 1 + setmetatile 14, 26, 856, 1 goto ShoalCave_LowTideInnerRoom_EventScript_15E1FB end ShoalCave_LowTideInnerRoom_EventScript_15E1FB:: @ 815E1FB checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_1 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E213 - setmaptile 41, 20, 857, 1 + setmetatile 41, 20, 857, 1 goto ShoalCave_LowTideInnerRoom_EventScript_15E213 end ShoalCave_LowTideInnerRoom_EventScript_15E213:: @ 815E213 checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_2 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E22B - setmaptile 41, 10, 857, 1 + setmetatile 41, 10, 857, 1 goto ShoalCave_LowTideInnerRoom_EventScript_15E22B end ShoalCave_LowTideInnerRoom_EventScript_15E22B:: @ 815E22B checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_3 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E243 - setmaptile 6, 9, 857, 1 + setmetatile 6, 9, 857, 1 goto ShoalCave_LowTideInnerRoom_EventScript_15E243 end ShoalCave_LowTideInnerRoom_EventScript_15E243:: @ 815E243 checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_4 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E256 - setmaptile 16, 13, 857, 1 + setmetatile 16, 13, 857, 1 return ShoalCave_LowTideInnerRoom_EventScript_15E256:: @ 815E256 @@ -72,10 +72,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E257:: @ 815E257 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_1 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E289 - giveitem ITEM_SHOAL_SHELL + giveitem_std ITEM_SHOAL_SHELL compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 41, 20, 859, 0 + setmetatile 41, 20, 859, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SHELL_1 releaseall @@ -90,10 +90,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E293:: @ 815E293 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_2 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E289 - giveitem ITEM_SHOAL_SHELL + giveitem_std ITEM_SHOAL_SHELL compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 41, 10, 859, 0 + setmetatile 41, 10, 859, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SHELL_2 releaseall @@ -103,10 +103,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E2C5:: @ 815E2C5 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_3 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E289 - giveitem ITEM_SHOAL_SHELL + giveitem_std ITEM_SHOAL_SHELL compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 6, 9, 859, 0 + setmetatile 6, 9, 859, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SHELL_3 releaseall @@ -116,10 +116,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E2F7:: @ 815E2F7 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SHELL_4 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E289 - giveitem ITEM_SHOAL_SHELL + giveitem_std ITEM_SHOAL_SHELL compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 16, 13, 859, 0 + setmetatile 16, 13, 859, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SHELL_4 releaseall @@ -129,10 +129,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E329:: @ 815E329 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SALT_1 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E35B - giveitem ITEM_SHOAL_SALT + giveitem_std ITEM_SHOAL_SALT compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 31, 8, 858, 0 + setmetatile 31, 8, 858, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SALT_1 releaseall @@ -147,10 +147,10 @@ ShoalCave_LowTideInnerRoom_EventScript_15E365:: @ 815E365 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SALT_2 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_15E35B - giveitem ITEM_SHOAL_SALT + giveitem_std ITEM_SHOAL_SALT compare RESULT, 0 goto_if_eq ShoalCave_LowTideInnerRoom_EventScript_1A029B - setmaptile 14, 26, 858, 0 + setmetatile 14, 26, 858, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SALT_2 releaseall diff --git a/data/scripts/maps/ShoalCave_LowTideLowerRoom.inc b/data/scripts/maps/ShoalCave_LowTideLowerRoom.inc index adf7d5d9e..c7cb08a9b 100644 --- a/data/scripts/maps/ShoalCave_LowTideLowerRoom.inc +++ b/data/scripts/maps/ShoalCave_LowTideLowerRoom.inc @@ -9,7 +9,7 @@ ShoalCave_LowTideLowerRoom_MapScript1_15E3F9:: @ 815E3F9 ShoalCave_LowTideLowerRoom_EventScript_15E3FF:: @ 815E3FF checkflag FLAG_HIDE_TOOK_SHOAL_SALT_4 goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_15E412 - setmaptile 18, 2, 856, 1 + setmetatile 18, 2, 856, 1 return ShoalCave_LowTideLowerRoom_EventScript_15E412:: @ 815E412 @@ -19,10 +19,10 @@ ShoalCave_LowTideLowerRoom_EventScript_15E413:: @ 815E413 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SALT_4 goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_15E445 - giveitem ITEM_SHOAL_SALT + giveitem_std ITEM_SHOAL_SALT compare RESULT, 0 goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_1A029B - setmaptile 18, 2, 858, 0 + setmetatile 18, 2, 858, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SALT_4 releaseall @@ -39,7 +39,7 @@ ShoalCave_LowTideLowerRoom_EventScript_15E44F:: @ 815E44F checkflag FLAG_RECEIVED_FOCUS_BAND goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_15E47E msgbox ShoalCave_LowTideLowerRoom_Text_198200, 4 - giveitem ITEM_FOCUS_BAND + giveitem_std ITEM_FOCUS_BAND compare RESULT, 0 goto_if_eq ShoalCave_LowTideLowerRoom_EventScript_1A029B setflag FLAG_RECEIVED_FOCUS_BAND diff --git a/data/scripts/maps/ShoalCave_LowTideStairsRoom.inc b/data/scripts/maps/ShoalCave_LowTideStairsRoom.inc index d6858bc15..efcad59d3 100644 --- a/data/scripts/maps/ShoalCave_LowTideStairsRoom.inc +++ b/data/scripts/maps/ShoalCave_LowTideStairsRoom.inc @@ -9,7 +9,7 @@ ShoalCave_LowTideStairsRoom_MapScript1_15E39D:: @ 815E39D ShoalCave_LowTideStairsRoom_EventScript_15E3A3:: @ 815E3A3 checkflag FLAG_HIDE_TOOK_SHOAL_SALT_3 goto_if_eq ShoalCave_LowTideStairsRoom_EventScript_15E3B6 - setmaptile 11, 11, 856, 1 + setmetatile 11, 11, 856, 1 return ShoalCave_LowTideStairsRoom_EventScript_15E3B6:: @ 815E3B6 @@ -19,10 +19,10 @@ ShoalCave_LowTideStairsRoom_EventScript_15E3B7:: @ 815E3B7 lockall checkflag FLAG_HIDE_TOOK_SHOAL_SALT_3 goto_if_eq ShoalCave_LowTideStairsRoom_EventScript_15E3E9 - giveitem ITEM_SHOAL_SALT + giveitem_std ITEM_SHOAL_SALT compare RESULT, 0 goto_if_eq ShoalCave_LowTideStairsRoom_EventScript_1A029B - setmaptile 11, 11, 858, 0 + setmetatile 11, 11, 858, 0 special DrawWholeMapView setflag FLAG_HIDE_TOOK_SHOAL_SALT_3 releaseall diff --git a/data/scripts/maps/SkyPillar_2F.inc b/data/scripts/maps/SkyPillar_2F.inc index 3f388127b..bd87e8562 100644 --- a/data/scripts/maps/SkyPillar_2F.inc +++ b/data/scripts/maps/SkyPillar_2F.inc @@ -5,6 +5,6 @@ SkyPillar_2F_MapScripts:: @ 815F2C9 .byte 0 SkyPillar_2F_MapScript1_15F2D9:: @ 815F2D9 - tileeffect 7 + setstepcallback 7 setholewarp MAP_SKY_PILLAR_1F, 255, 0, 0 end diff --git a/data/scripts/maps/SkyPillar_4F.inc b/data/scripts/maps/SkyPillar_4F.inc index f0b9a6f85..860f35b48 100644 --- a/data/scripts/maps/SkyPillar_4F.inc +++ b/data/scripts/maps/SkyPillar_4F.inc @@ -5,6 +5,6 @@ SkyPillar_4F_MapScripts:: @ 815F2E5 .byte 0 SkyPillar_4F_MapScript1_15F2F5:: @ 815F2F5 - tileeffect 7 + setstepcallback 7 setholewarp MAP_SKY_PILLAR_3F, 255, 0, 0 end diff --git a/data/scripts/maps/SkyPillar_Top.inc b/data/scripts/maps/SkyPillar_Top.inc index 37da10220..07a78d2c4 100644 --- a/data/scripts/maps/SkyPillar_Top.inc +++ b/data/scripts/maps/SkyPillar_Top.inc @@ -16,9 +16,9 @@ SkyPillar_Top_EventScript_15F316:: @ 815F316 faceplayer setwildbattle SPECIES_RAYQUAZA, 70, ITEM_NONE waitse - playpokecry SPECIES_RAYQUAZA, 2 + playmoncry SPECIES_RAYQUAZA, 2 delay 40 - waitpokecry + waitmoncry setflag FLAG_HIDE_RAYQUAZA setflag FLAG_SYS_CTRL_OBJ_DELETE special ScrSpecial_StartRayquazaBattle diff --git a/data/scripts/maps/SlateportCity.inc b/data/scripts/maps/SlateportCity.inc index c163685b2..56fc0e59b 100644 --- a/data/scripts/maps/SlateportCity.inc +++ b/data/scripts/maps/SlateportCity.inc @@ -64,7 +64,7 @@ SlateportCity_Items1:: @ 814BAD0 SlateportCity_EventScript_14BAE0:: @ 814BAE0 lock faceplayer - getfirstpartypokename 0 + bufferleadmonspeciesname 0 msgbox SlateportCity_Text_164682, 4 specialvar RESULT, LeadMonHasEffortRibbon compare RESULT, 1 @@ -388,7 +388,7 @@ SlateportCity_EventScript_14BDF2:: @ 814BDF2 faceplayer message SlateportCity_Text_1A0BE4 waitmessage - pokemartdecor SlateportCity_Decorations1 + pokemartdecoration SlateportCity_Decorations1 msgbox SlateportCity_Text_1A0C02, 4 release end @@ -414,7 +414,7 @@ SlateportCity_EventScript_14BE20:: @ 814BE20 goto_if 0, SlateportCity_EventScript_14BE16 message SlateportCity_Text_1A0BE4 waitmessage - pokemartdecor SlateportCity_Decorations2 + pokemartdecoration SlateportCity_Decorations2 msgbox SlateportCity_Text_1A0C02, 4 release end @@ -446,7 +446,7 @@ SlateportCity_Decorations2:: @ 814BE40 goto_if 0, SlateportCity_EventScript_14BE16 message SlateportCity_Text_1A0BE4 waitmessage - pokemartdecor SlateportCity_Decorations3 + pokemartdecoration SlateportCity_Decorations3 msgbox SlateportCity_Text_1A0C02, 4 release end diff --git a/data/scripts/maps/SlateportCity_ContestHall.inc b/data/scripts/maps/SlateportCity_ContestHall.inc index 220ca3374..0a6f40c75 100644 --- a/data/scripts/maps/SlateportCity_ContestHall.inc +++ b/data/scripts/maps/SlateportCity_ContestHall.inc @@ -15,7 +15,7 @@ SlateportCity_ContestHall_EventScript_15555E:: @ 815555E checkflag FLAG_RECEIVED_TM41 goto_if_eq SlateportCity_ContestHall_EventScript_155595 msgbox SlateportCity_ContestHall_Text_17CCE2, 4 - giveitem ITEM_TM41 + giveitem_std ITEM_TM41 compare RESULT, 0 goto_if_eq SlateportCity_ContestHall_EventScript_1A029B setflag FLAG_RECEIVED_TM41 diff --git a/data/scripts/maps/SlateportCity_ContestLobby.inc b/data/scripts/maps/SlateportCity_ContestLobby.inc index 5a00f4830..c4a44d9c9 100644 --- a/data/scripts/maps/SlateportCity_ContestLobby.inc +++ b/data/scripts/maps/SlateportCity_ContestLobby.inc @@ -23,14 +23,14 @@ SlateportCity_ContestLobby_EventScript_155448:: @ 8155448 applymovement 1, SlateportCity_ContestLobby_Movement_1554CC waitmovement 0 playse 71 - setmaptile 4, 2, 545, 1 - setmaptile 4, 3, 609, 1 + setmetatile 4, 2, 545, 1 + setmetatile 4, 3, 609, 1 special DrawWholeMapView applymovement 1, SlateportCity_ContestLobby_Movement_1554CF waitmovement 0 playse 71 - setmaptile 4, 2, 721, 1 - setmaptile 4, 3, 729, 1 + setmetatile 4, 2, 721, 1 + setmetatile 4, 3, 729, 1 special DrawWholeMapView delay 20 applymovement 1, SlateportCity_ContestLobby_Movement_1554DC @@ -106,7 +106,7 @@ SlateportCity_ContestLobby_EventScript_1554F9:: @ 81554F9 applymovement 7, SlateportCity_ContestLobby_Movement_1A0839 waitmovement 0 msgbox SlateportCity_ContestLobby_Text_17CA67, 4 - giveitem ITEM_POKEBLOCK_CASE + giveitem_std ITEM_POKEBLOCK_CASE setflag FLAG_RECEIVED_POKEBLOCK_CASE releaseall end @@ -129,7 +129,7 @@ SlateportCity_ContestLobby_EventScript_155536:: @ 8155536 @ 815553F lockall special ShowBerryBlenderRecordWindow - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/SlateportCity_Harbor.inc b/data/scripts/maps/SlateportCity_Harbor.inc index ae19d0326..304013b08 100644 --- a/data/scripts/maps/SlateportCity_Harbor.inc +++ b/data/scripts/maps/SlateportCity_Harbor.inc @@ -222,13 +222,13 @@ SlateportCity_Harbor_EventScript_156196:: @ 8156196 applymovement LAST_TALKED, SlateportCity_Harbor_Movement_1A0841 waitmovement 0 delay 30 - hideobject LAST_TALKED, 9, 8 + hideobjectat LAST_TALKED, MAP_SLATEPORT_CITY_HARBOR compare FACING, 2 call_if 1, SlateportCity_Harbor_EventScript_1561EF compare FACING, 4 call_if 1, SlateportCity_Harbor_EventScript_1561E4 delay 30 - hideobject 255, 0, 0 + hideobjectat 255, MAP_PETALBURG_CITY setvar 0x8004, 5 call SlateportCity_Harbor_EventScript_1A040E return @@ -335,10 +335,10 @@ SlateportCity_Harbor_EventScript_1562EA:: @ 81562EA msgbox SlateportCity_Harbor_Text_1803DD, 5 compare RESULT, 0 goto_if_eq SlateportCity_Harbor_EventScript_156374 - giveitem ITEM_DEEP_SEA_TOOTH + giveitem_std ITEM_DEEP_SEA_TOOTH compare RESULT, 0 goto_if_eq SlateportCity_Harbor_EventScript_1A029B - removeitem ITEM_SCANNER, 1 + takeitem ITEM_SCANNER, 1 msgbox SlateportCity_Harbor_Text_18046B, 4 setflag FLAG_EXCHANGED_SCANNER goto SlateportCity_Harbor_EventScript_156380 @@ -348,10 +348,10 @@ SlateportCity_Harbor_EventScript_15632A:: @ 815632A msgbox SlateportCity_Harbor_Text_180412, 5 compare RESULT, 0 goto_if_eq SlateportCity_Harbor_EventScript_156374 - giveitem ITEM_DEEP_SEA_SCALE + giveitem_std ITEM_DEEP_SEA_SCALE compare RESULT, 0 goto_if_eq SlateportCity_Harbor_EventScript_1A029B - removeitem ITEM_SCANNER, 1 + takeitem ITEM_SCANNER, 1 msgbox SlateportCity_Harbor_Text_18046B, 4 setflag FLAG_EXCHANGED_SCANNER goto SlateportCity_Harbor_EventScript_156380 diff --git a/data/scripts/maps/SlateportCity_OceanicMuseum_1F.inc b/data/scripts/maps/SlateportCity_OceanicMuseum_1F.inc index 0cb7b397e..9e002e61e 100644 --- a/data/scripts/maps/SlateportCity_OceanicMuseum_1F.inc +++ b/data/scripts/maps/SlateportCity_OceanicMuseum_1F.inc @@ -164,7 +164,7 @@ SlateportCity_OceanicMuseum_1F_EventScript_155C3A:: @ 8155C3A applymovement 13, SlateportCity_OceanicMuseum_1F_Movement_1A0835 waitmovement 0 msgbox SlateportCity_OceanicMuseum_1F_Text_17E582, 4 - giveitem ITEM_TM46 + giveitem_std ITEM_TM46 compare RESULT, 0 goto_if_eq SlateportCity_OceanicMuseum_1F_EventScript_155CC2 setflag FLAG_RECEIVED_TM46 diff --git a/data/scripts/maps/SlateportCity_PokemonCenter_1F.inc b/data/scripts/maps/SlateportCity_PokemonCenter_1F.inc index 9aa326f70..ac4e8f240 100644 --- a/data/scripts/maps/SlateportCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/SlateportCity_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ SlateportCity_PokemonCenter_1F_MapScripts:: @ 81563BF .byte 0 SlateportCity_PokemonCenter_1F_MapScript1_1563C5:: @ 81563C5 - sethealplace 4 + setrespawn 4 call SlateportCity_PokemonCenter_1F_EventScript_19FD1B end @@ -11,7 +11,7 @@ SlateportCity_PokemonCenter_1F_EventScript_1563CE:: @ 81563CE setvar 0x800b, 1 call SlateportCity_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/SlateportCity_PokemonFanClub.inc b/data/scripts/maps/SlateportCity_PokemonFanClub.inc index 7f3c331bd..593e18fee 100644 --- a/data/scripts/maps/SlateportCity_PokemonFanClub.inc +++ b/data/scripts/maps/SlateportCity_PokemonFanClub.inc @@ -59,7 +59,7 @@ SlateportCity_PokemonFanClub_EventScript_155808:: @ 8155808 call_if 0, SlateportCity_PokemonFanClub_EventScript_1559B9 checkflag FLAG_RECEIVED_RED_SCARF call_if 0, SlateportCity_PokemonFanClub_EventScript_1559A2 - getfirstpartypokename 0 + bufferleadmonspeciesname 0 switch 0x4001 case 0, SlateportCity_PokemonFanClub_EventScript_155899 case 1, SlateportCity_PokemonFanClub_EventScript_1558A3 @@ -89,7 +89,7 @@ SlateportCity_PokemonFanClub_EventScript_1558A3:: @ 81558A3 goto_if_eq SlateportCity_PokemonFanClub_EventScript_155998 msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4 setflag FLAG_RECEIVED_RED_SCARF - giveitem ITEM_RED_SCARF + giveitem_std ITEM_RED_SCARF msgbox SlateportCity_PokemonFanClub_Text_17DC1B, 4 release end @@ -100,7 +100,7 @@ SlateportCity_PokemonFanClub_EventScript_1558D4:: @ 81558D4 goto_if_eq SlateportCity_PokemonFanClub_EventScript_155998 msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4 setflag FLAG_RECEIVED_BLUE_SCARF - giveitem ITEM_BLUE_SCARF + giveitem_std ITEM_BLUE_SCARF msgbox SlateportCity_PokemonFanClub_Text_17DC74, 4 release end @@ -111,7 +111,7 @@ SlateportCity_PokemonFanClub_EventScript_155905:: @ 8155905 goto_if_eq SlateportCity_PokemonFanClub_EventScript_155998 msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4 setflag FLAG_RECEIVED_PINK_SCARF - giveitem ITEM_PINK_SCARF + giveitem_std ITEM_PINK_SCARF msgbox SlateportCity_PokemonFanClub_Text_17DCCB, 4 release end @@ -122,7 +122,7 @@ SlateportCity_PokemonFanClub_EventScript_155936:: @ 8155936 goto_if_eq SlateportCity_PokemonFanClub_EventScript_155998 msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4 setflag FLAG_RECEIVED_GREEN_SCARF - giveitem ITEM_GREEN_SCARF + giveitem_std ITEM_GREEN_SCARF msgbox SlateportCity_PokemonFanClub_Text_17DD27, 4 release end @@ -133,7 +133,7 @@ SlateportCity_PokemonFanClub_EventScript_155967:: @ 8155967 goto_if_eq SlateportCity_PokemonFanClub_EventScript_155998 msgbox SlateportCity_PokemonFanClub_Text_17DB89, 4 setflag FLAG_RECEIVED_YELLOW_SCARF - giveitem ITEM_YELLOW_SCARF + giveitem_std ITEM_YELLOW_SCARF msgbox SlateportCity_PokemonFanClub_Text_17DD78, 4 release end @@ -212,7 +212,7 @@ SlateportCity_PokemonFanClub_EventScript_155A3A:: @ 8155A3A applymovement LAST_TALKED, SlateportCity_PokemonFanClub_Movement_1A0835 waitmovement 0 msgbox SlateportCity_PokemonFanClub_Text_17DF57, 4 - giveitem ITEM_SOOTHE_BELL + giveitem_std ITEM_SOOTHE_BELL compare RESULT, 0 goto_if_eq SlateportCity_PokemonFanClub_EventScript_1A029B setflag FLAG_RECEIVED_SOOTHE_BELL @@ -236,9 +236,9 @@ SlateportCity_PokemonFanClub_EventScript_155A91:: @ 8155A91 lock faceplayer waitse - playpokecry SPECIES_SKITTY, 0 + playmoncry SPECIES_SKITTY, 0 msgbox SlateportCity_PokemonFanClub_Text_17E14E, 4 - waitpokecry + waitmoncry release end @@ -246,9 +246,9 @@ SlateportCity_PokemonFanClub_EventScript_155AA4:: @ 8155AA4 lock faceplayer waitse - playpokecry SPECIES_ZIGZAGOON, 0 + playmoncry SPECIES_ZIGZAGOON, 0 msgbox SlateportCity_PokemonFanClub_Text_17E164, 4 - waitpokecry + waitmoncry release end @@ -256,8 +256,8 @@ SlateportCity_PokemonFanClub_EventScript_155AB7:: @ 8155AB7 lock faceplayer waitse - playpokecry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, 0 msgbox SlateportCity_PokemonFanClub_Text_17E178, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/SootopolisCity.inc b/data/scripts/maps/SootopolisCity.inc index 748dbe898..f4842bd40 100644 --- a/data/scripts/maps/SootopolisCity.inc +++ b/data/scripts/maps/SootopolisCity.inc @@ -13,7 +13,7 @@ SootopolisCity_MapScript1_14D08D:: @ 814D08D SootopolisCity_EventScript_14D0A0:: @ 814D0A0 setobjectxyperm 3, 31, 18 - setmaptile 31, 32, 592, 1 + setmetatile 31, 32, 592, 1 return SootopolisCity_EventScript_14D0B1:: @ 814D0B1 @@ -22,15 +22,15 @@ SootopolisCity_EventScript_14D0B1:: @ 814D0B1 return SootopolisCity_EventScript_14D0BB:: @ 814D0BB - setmaptile 9, 6, 584, 1 - setmaptile 9, 17, 584, 1 - setmaptile 9, 26, 584, 1 - setmaptile 44, 17, 584, 1 - setmaptile 8, 35, 584, 1 - setmaptile 53, 28, 584, 1 - setmaptile 45, 6, 584, 1 - setmaptile 48, 25, 584, 1 - setmaptile 31, 32, 592, 1 + setmetatile 9, 6, 584, 1 + setmetatile 9, 17, 584, 1 + setmetatile 9, 26, 584, 1 + setmetatile 44, 17, 584, 1 + setmetatile 8, 35, 584, 1 + setmetatile 53, 28, 584, 1 + setmetatile 45, 6, 584, 1 + setmetatile 48, 25, 584, 1 + setmetatile 31, 32, 592, 1 return SootopolisCity_MapScript1_14D10D:: @ 814D10D @@ -98,7 +98,7 @@ SootopolisCity_EventScript_14D19F:: @ 814D19F random 10 addvar RESULT, 20 addvar RESULT, ITEM_CHERI_BERRY - giveitem RESULT + giveitem_std RESULT compare RESULT, 0 goto_if_eq SootopolisCity_EventScript_1A029B setflag FLAG_DAILY_RECEIVED_BERRY_SOOTOPOLIS @@ -111,7 +111,7 @@ SootopolisCity_EventScript_14D19F:: @ 814D19F end SootopolisCity_EventScript_14D1FF:: @ 814D1FF - giveitem ITEM_FIGY_BERRY + giveitem_std ITEM_FIGY_BERRY compare RESULT, 0 goto_if_eq SootopolisCity_EventScript_1A029B msgbox SootopolisCity_Text_1C650B, 4 @@ -119,7 +119,7 @@ SootopolisCity_EventScript_14D1FF:: @ 814D1FF end SootopolisCity_EventScript_14D220:: @ 814D220 - giveitem ITEM_IAPAPA_BERRY + giveitem_std ITEM_IAPAPA_BERRY compare RESULT, 0 goto_if_eq SootopolisCity_EventScript_1A029B msgbox SootopolisCity_Text_1C650B, 4 @@ -461,7 +461,7 @@ SootopolisCity_EventScript_14D4AD:: @ 814D4AD applymovement LAST_TALKED, SootopolisCity_Movement_1A0845 waitmovement 0 delay 50 - setfieldeffect 0, 1 + setfieldeffectargument 0, 1 dofieldeffect 30 delay 15 removeobject LAST_TALKED diff --git a/data/scripts/maps/SootopolisCity_Gym_1F.inc b/data/scripts/maps/SootopolisCity_Gym_1F.inc index 6f99ba8a5..65ed13d87 100644 --- a/data/scripts/maps/SootopolisCity_Gym_1F.inc +++ b/data/scripts/maps/SootopolisCity_Gym_1F.inc @@ -10,7 +10,7 @@ SootopolisCity_Gym_1F_MapScript1_15AF1C:: @ 815AF1C end SootopolisCity_Gym_1F_MapScript1_15AF22:: @ 815AF22 - tileeffect 4 + setstepcallback 4 end SootopolisCity_Gym_1F_MapScript1_15AF25:: @ 815AF25 @@ -25,16 +25,16 @@ SootopolisCity_Gym_1F_EventScript_15AF2E:: @ 815AF2E goto_if 0, SootopolisCity_Gym_1F_EventScript_15AF73 compare 0x4022, 69 goto_if 0, SootopolisCity_Gym_1F_EventScript_15AF61 - setmaptile 8, 4, 519, 0 - setmaptile 8, 5, 519, 0 + setmetatile 8, 4, 519, 0 + setmetatile 8, 5, 519, 0 SootopolisCity_Gym_1F_EventScript_15AF61:: @ 815AF61 - setmaptile 8, 10, 519, 0 - setmaptile 8, 11, 519, 0 + setmetatile 8, 10, 519, 0 + setmetatile 8, 11, 519, 0 SootopolisCity_Gym_1F_EventScript_15AF73:: @ 815AF73 - setmaptile 8, 15, 519, 0 - setmaptile 8, 16, 519, 0 + setmetatile 8, 15, 519, 0 + setmetatile 8, 16, 519, 0 SootopolisCity_Gym_1F_EventScript_15AF85:: @ 815AF85 return @@ -108,7 +108,7 @@ SootopolisCity_Gym_1F_EventScript_15B02D:: @ 815B02D end SootopolisCity_Gym_1F_EventScript_15B056:: @ 815B056 - giveitem ITEM_TM03 + giveitem_std ITEM_TM03 compare RESULT, 0 goto_if_eq SootopolisCity_Gym_1F_EventScript_1A029B msgbox SootopolisCity_Gym_1F_Text_18F466, 4 diff --git a/data/scripts/maps/SootopolisCity_House1.inc b/data/scripts/maps/SootopolisCity_House1.inc index 9a7b63c82..074c9a179 100644 --- a/data/scripts/maps/SootopolisCity_House1.inc +++ b/data/scripts/maps/SootopolisCity_House1.inc @@ -7,7 +7,7 @@ SootopolisCity_House1_EventScript_15B29B:: @ 815B29B checkflag FLAG_RECEIVED_TM31 goto_if_eq SootopolisCity_House1_EventScript_15B2C7 msgbox SootopolisCity_House1_Text_18F991, 4 - giveitem ITEM_TM31 + giveitem_std ITEM_TM31 setflag FLAG_RECEIVED_TM31 msgbox SootopolisCity_House1_Text_18FA03, 4 release @@ -22,8 +22,8 @@ SootopolisCity_House1_EventScript_15B2D1:: @ 815B2D1 lock faceplayer waitse - playpokecry SPECIES_KECLEON, 0 + playmoncry SPECIES_KECLEON, 0 msgbox SootopolisCity_House1_Text_18FA50, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/SootopolisCity_House4.inc b/data/scripts/maps/SootopolisCity_House4.inc index c192a0340..b552cc6d6 100644 --- a/data/scripts/maps/SootopolisCity_House4.inc +++ b/data/scripts/maps/SootopolisCity_House4.inc @@ -13,8 +13,8 @@ SootopolisCity_House4_EventScript_15B35F:: @ 815B35F lock faceplayer waitse - playpokecry SPECIES_AZUMARILL, 0 + playmoncry SPECIES_AZUMARILL, 0 msgbox SootopolisCity_House4_Text_18FDD8, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/SootopolisCity_House6.inc b/data/scripts/maps/SootopolisCity_House6.inc index 1adf05991..fb91202f3 100644 --- a/data/scripts/maps/SootopolisCity_House6.inc +++ b/data/scripts/maps/SootopolisCity_House6.inc @@ -10,7 +10,7 @@ SootopolisCity_House6_EventScript_15B386:: @ 815B386 compare RESULT, 0 call_if 1, SootopolisCity_House6_EventScript_15B3C3 msgbox SootopolisCity_House6_Text_18FF12, 4 - givedecoration DECOR_WAILMER_DOLL + givedecoration_std DECOR_WAILMER_DOLL compare RESULT, 0 goto_if_eq SootopolisCity_House6_EventScript_15B3D7 setflag FLAG_RECEIVED_WAILMER_DOLL @@ -28,7 +28,7 @@ SootopolisCity_House6_EventScript_15B3CD:: @ 815B3CD end SootopolisCity_House6_EventScript_15B3D7:: @ 815B3D7 - getdecorname 1, DECOR_WAILMER_DOLL + bufferdecorationname 1, DECOR_WAILMER_DOLL msgbox SootopolisCity_House6_Text_1A0CEF, 4 msgbox SootopolisCity_House6_Text_18FF28, 4 release diff --git a/data/scripts/maps/SootopolisCity_House8.inc b/data/scripts/maps/SootopolisCity_House8.inc index df536004e..bdff79375 100644 --- a/data/scripts/maps/SootopolisCity_House8.inc +++ b/data/scripts/maps/SootopolisCity_House8.inc @@ -38,7 +38,7 @@ SootopolisCity_House8_EventScript_15B45C:: @ 815B45C SootopolisCity_House8_EventScript_15B466:: @ 815B466 msgbox SootopolisCity_House8_Text_19021D, 4 - giveitem ITEM_ELIXIR + giveitem_std ITEM_ELIXIR compare RESULT, 0 goto_if_eq SootopolisCity_House8_EventScript_15B488 closemessage @@ -87,7 +87,7 @@ SootopolisCity_House8_EventScript_15B4ED:: @ 815B4ED SootopolisCity_House8_EventScript_15B4F7:: @ 815B4F7 msgbox SootopolisCity_House8_Text_190536, 4 - giveitem ITEM_ELIXIR + giveitem_std ITEM_ELIXIR compare RESULT, 0 goto_if_eq SootopolisCity_House8_EventScript_15B519 closemessage diff --git a/data/scripts/maps/SootopolisCity_PokemonCenter_1F.inc b/data/scripts/maps/SootopolisCity_PokemonCenter_1F.inc index 8bbb06575..7b87bc7fc 100644 --- a/data/scripts/maps/SootopolisCity_PokemonCenter_1F.inc +++ b/data/scripts/maps/SootopolisCity_PokemonCenter_1F.inc @@ -3,14 +3,14 @@ SootopolisCity_PokemonCenter_1F_MapScripts:: @ 815B190 .byte 0 SootopolisCity_PokemonCenter_1F_MapScript1_15B196:: @ 815B196 - sethealplace 10 + setrespawn 10 end @ 815B19A setvar 0x800B, 1 call VerdanturfTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/maps/SouthernIsland_Exterior.inc b/data/scripts/maps/SouthernIsland_Exterior.inc index 81c50559e..f62becf08 100644 --- a/data/scripts/maps/SouthernIsland_Exterior.inc +++ b/data/scripts/maps/SouthernIsland_Exterior.inc @@ -17,7 +17,7 @@ SouthernIsland_Exterior_EventScript_160AE0:: @ 8160AE0 applymovement LAST_TALKED, SouthernIsland_Exterior_Movement_1A0845 waitmovement 0 delay 30 - hideobject 1, 26, 9 + hideobjectat 1, MAP_SOUTHERN_ISLAND_EXTERIOR setvar 0x8004, 2 call SouthernIsland_Exterior_EventScript_1A047C warp MAP_LILYCOVE_CITY_HARBOR, 255, 8, 11 diff --git a/data/scripts/maps/SouthernIsland_Interior.inc b/data/scripts/maps/SouthernIsland_Interior.inc index 0a9ca6b89..ea2f852f4 100644 --- a/data/scripts/maps/SouthernIsland_Interior.inc +++ b/data/scripts/maps/SouthernIsland_Interior.inc @@ -54,9 +54,9 @@ SouthernIsland_Interior_EventScript_160BA7:: @ 8160BA7 waitmovement 0 delay 50 waitse - playpokecry SPECIES_LATIAS_OR_LATIOS, 0 + playmoncry SPECIES_LATIAS_OR_LATIOS, 0 delay 30 - waitpokecry + waitmoncry addobject 2 delay 30 applymovement 127, SouthernIsland_Interior_Movement_160C16 diff --git a/data/scripts/maps/Underwater_SeafloorCavern.inc b/data/scripts/maps/Underwater_SeafloorCavern.inc index 665cbf4af..d991a7096 100644 --- a/data/scripts/maps/Underwater_SeafloorCavern.inc +++ b/data/scripts/maps/Underwater_SeafloorCavern.inc @@ -20,18 +20,18 @@ Underwater_SeafloorCavern_MapScript1_15D9BF:: @ 815D9BF end Underwater_SeafloorCavern_EventScript_15D9C9:: @ 815D9C9 - setmaptile 5, 3, 542, 1 - setmaptile 6, 3, 542, 1 - setmaptile 7, 3, 542, 1 - setmaptile 8, 3, 542, 1 - setmaptile 5, 4, 552, 0 - setmaptile 6, 4, 552, 0 - setmaptile 7, 4, 552, 0 - setmaptile 8, 4, 552, 0 - setmaptile 5, 5, 552, 0 - setmaptile 6, 5, 552, 0 - setmaptile 7, 5, 552, 0 - setmaptile 8, 5, 552, 0 + setmetatile 5, 3, 542, 1 + setmetatile 6, 3, 542, 1 + setmetatile 7, 3, 542, 1 + setmetatile 8, 3, 542, 1 + setmetatile 5, 4, 552, 0 + setmetatile 6, 4, 552, 0 + setmetatile 7, 4, 552, 0 + setmetatile 8, 4, 552, 0 + setmetatile 5, 5, 552, 0 + setmetatile 6, 5, 552, 0 + setmetatile 7, 5, 552, 0 + setmetatile 8, 5, 552, 0 return Underwater_SeafloorCavern_MapScript1_15DA36:: @ 815DA36 diff --git a/data/scripts/maps/Underwater_SealedChamber.inc b/data/scripts/maps/Underwater_SealedChamber.inc index 733a060c3..cb5c713ee 100644 --- a/data/scripts/maps/Underwater_SealedChamber.inc +++ b/data/scripts/maps/Underwater_SealedChamber.inc @@ -21,7 +21,7 @@ Underwater_SealedChamber_EventScript_15F0AF:: @ 815F0AF Underwater_SealedChamber_EventScript_15F0B8:: @ 815F0B8 lockall braillemessage Underwater_SealedChamber_Braille_1C533D - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/UnknownMap_25_34.inc b/data/scripts/maps/UnknownMap_25_34.inc index 213a3609a..1e0f14728 100644 --- a/data/scripts/maps/UnknownMap_25_34.inc +++ b/data/scripts/maps/UnknownMap_25_34.inc @@ -68,7 +68,7 @@ LinkContestRoom1_EventScript_15F61A:: @ 815F61A end LinkContestRoom1_EventScript_15F625:: @ 815F625 - hideobject 255, 0, 9 + hideobjectat 255, MAP_LITTLEROOT_TOWN call LinkContestRoom1_EventScript_15F919 end diff --git a/data/scripts/maps/VerdanturfTown_ContestLobby.inc b/data/scripts/maps/VerdanturfTown_ContestLobby.inc index 9726038d4..3694f089d 100644 --- a/data/scripts/maps/VerdanturfTown_ContestLobby.inc +++ b/data/scripts/maps/VerdanturfTown_ContestLobby.inc @@ -23,14 +23,14 @@ VerdanturfTown_ContestLobby_EventScript_153DA1:: @ 8153DA1 applymovement 1, VerdanturfTown_ContestLobby_Movement_153E25 waitmovement 0 playse 71 - setmaptile 4, 2, 545, 1 - setmaptile 4, 3, 609, 1 + setmetatile 4, 2, 545, 1 + setmetatile 4, 3, 609, 1 special DrawWholeMapView applymovement 1, VerdanturfTown_ContestLobby_Movement_153E28 waitmovement 0 playse 71 - setmaptile 4, 2, 721, 1 - setmaptile 4, 3, 729, 1 + setmetatile 4, 2, 721, 1 + setmetatile 4, 3, 729, 1 special DrawWholeMapView delay 20 applymovement 1, VerdanturfTown_ContestLobby_Movement_153E35 @@ -104,7 +104,7 @@ VerdanturfTown_ContestLobby_EventScript_153E47:: @ 8153E47 checkflag FLAG_RECEIVED_TM45 goto_if_eq VerdanturfTown_ContestLobby_EventScript_153E76 msgbox VerdanturfTown_ContestLobby_Text_177DEC, 4 - giveitem ITEM_TM45 + giveitem_std ITEM_TM45 compare RESULT, 0 goto_if_eq VerdanturfTown_ContestLobby_EventScript_1A029B setflag FLAG_RECEIVED_TM45 @@ -123,7 +123,7 @@ VerdanturfTown_ContestLobby_EventScript_153E80:: @ 8153E80 VerdanturfTown_ContestLobby_EventScript_153E89:: @ 8153E89 lockall special ShowBerryBlenderRecordWindow - waitbutton + waitbuttonpress erasebox 0, 0, 29, 19 releaseall end diff --git a/data/scripts/maps/VerdanturfTown_FriendshipRatersHouse.inc b/data/scripts/maps/VerdanturfTown_FriendshipRatersHouse.inc index 1cfa785d3..ed60ec1c7 100644 --- a/data/scripts/maps/VerdanturfTown_FriendshipRatersHouse.inc +++ b/data/scripts/maps/VerdanturfTown_FriendshipRatersHouse.inc @@ -56,8 +56,8 @@ VerdanturfTown_FriendshipRatersHouse_EventScript_1540D9:: @ 81540D9 lock faceplayer waitse - playpokecry SPECIES_PIKACHU, 0 + playmoncry SPECIES_PIKACHU, 0 msgbox VerdanturfTown_FriendshipRatersHouse_Text_178CFD, 4 - waitpokecry + waitmoncry release end diff --git a/data/scripts/maps/VerdanturfTown_PokemonCenter_1F.inc b/data/scripts/maps/VerdanturfTown_PokemonCenter_1F.inc index a0b1f87de..598c3f60b 100644 --- a/data/scripts/maps/VerdanturfTown_PokemonCenter_1F.inc +++ b/data/scripts/maps/VerdanturfTown_PokemonCenter_1F.inc @@ -3,7 +3,7 @@ VerdanturfTown_PokemonCenter_1F_MapScripts:: @ 8153F09 .byte 0 VerdanturfTown_PokemonCenter_1F_MapScript1_153F0F:: @ 8153F0F - sethealplace 18 + setrespawn 18 call VerdanturfTown_PokemonCenter_1F_EventScript_19FD1B end @@ -12,7 +12,7 @@ VerdanturfTown_PokemonCenter_1F_EventScript_153F18:: @ 8153F18 setvar 0x800b, 1 call VerdanturfTown_PokemonCenter_1F_EventScript_19FD5B waitmessage - waitbutton + waitbuttonpress release end diff --git a/data/scripts/mauville_man.inc b/data/scripts/mauville_man.inc index 933de6769..3ccfbeb29 100644 --- a/data/scripts/mauville_man.inc +++ b/data/scripts/mauville_man.inc @@ -233,7 +233,7 @@ choose_story: setvar 0x8008, 1 special ScrSpecial_StorytellerDisplayStory waitmessage - waitbutton + waitbuttonpress specialvar RESULT, ScrSpecial_StorytellerUpdateStat compare RESULT, FALSE goto_if_eq no_stat_update diff --git a/data/scripts/players_house.inc b/data/scripts/players_house.inc index a553ae379..ea8128ee3 100644 --- a/data/scripts/players_house.inc +++ b/data/scripts/players_house.inc @@ -277,7 +277,7 @@ LittlerootTown_BrendansHouse_1F_EventScript_1B6C3D:: @ 81B6C3D checkflag FLAG_RECEIVED_AMULET_COIN goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_1B6C72 msgbox LittlerootTown_BrendansHouse_1F_Text_172782, 4 - giveitem ITEM_AMULET_COIN + giveitem_std ITEM_AMULET_COIN compare RESULT, 0 goto_if_eq LittlerootTown_BrendansHouse_1F_EventScript_1A029B msgbox LittlerootTown_BrendansHouse_1F_Text_1727CD, 4 @@ -313,9 +313,9 @@ LittlerootTown_MaysHouse_1F_EventScript_1B6CA6:: @ 81B6CA6 lock faceplayer waitse - playpokecry SPECIES_MACHOKE, 0 + playmoncry SPECIES_MACHOKE, 0 msgbox LittlerootTown_BrendansHouse_1F_Text_17281D, 4 - waitpokecry + waitmoncry release end @@ -324,9 +324,9 @@ LittlerootTown_MaysHouse_1F_EventScript_1B6CB9:: @ 81B6CB9 lock faceplayer waitse - playpokecry SPECIES_MACHOKE, 0 + playmoncry SPECIES_MACHOKE, 0 msgbox LittlerootTown_BrendansHouse_1F_Text_172831, 4 - waitpokecry + waitmoncry release end @@ -383,7 +383,7 @@ LittlerootTown_MaysHouse_1F_EventScript_1B6CDE:: @ 81B6CDE compare 0x8008, 1 call_if 1, LittlerootTown_BrendansHouse_1F_EventScript_1B6DD8 msgbox LittlerootTown_BrendansHouse_1F_Text_17298B, 4 - giveitem ITEM_SS_TICKET + giveitem_std ITEM_SS_TICKET msgbox LittlerootTown_BrendansHouse_1F_Text_172A7D, 4 closemessage compare 0x8008, 0 diff --git a/data/scripts/pokeblocks.inc b/data/scripts/pokeblocks.inc index 6934ffe57..42e73e17c 100644 --- a/data/scripts/pokeblocks.inc +++ b/data/scripts/pokeblocks.inc @@ -106,7 +106,7 @@ FallarborTown_ContestLobby_EventScript_1B774F:: @ 81B774F FallarborTown_ContestLobby_EventScript_1B7759:: @ 81B7759 msgbox FallarborTown_ContestLobby_Text_1B704A, 4 - giveitem ITEM_PECHA_BERRY + giveitem_std ITEM_PECHA_BERRY setflag FLAG_DAILY_RECEIVED_BERRY_FALLARBOR goto FallarborTown_ContestLobby_EventScript_1B76EF end @@ -174,7 +174,7 @@ FallarborTown_ContestLobby_EventScript_1B77F6:: @ 81B77F6 FallarborTown_ContestLobby_EventScript_1B7800:: @ 81B7800 msgbox FallarborTown_ContestLobby_Text_1B74B4, 4 - giveitem ITEM_PECHA_BERRY + giveitem_std ITEM_PECHA_BERRY setflag FLAG_DAILY_RECEIVED_BERRY_FALLARBOR msgbox FallarborTown_ContestLobby_Text_1B753A, 4 release diff --git a/data/scripts/safari_zone.inc b/data/scripts/safari_zone.inc index 385f93d22..892630ac8 100644 --- a/data/scripts/safari_zone.inc +++ b/data/scripts/safari_zone.inc @@ -27,7 +27,7 @@ gUnknown_081C3448:: @ 81C3448 playse 73 message UnknownString_81C34E4 waitmessage - waitbutton + waitbuttonpress releaseall goto EventScript_1C341B @@ -36,7 +36,7 @@ gUnknown_081C3459:: @ 81C3459 playse 73 message UnknownString_81C3514 waitmessage - waitbutton + waitbuttonpress releaseall goto EventScript_1C341B @@ -62,13 +62,13 @@ EventScript_1C348E: EventScript_1C34A0: message UnknownString_81C35A9 waitmessage - waitbutton + waitbuttonpress releaseall end EventScript_1C34A9: message UnknownString_81C3583 waitmessage - waitbutton + waitbuttonpress releaseall end diff --git a/data/scripts/secret_power_tm.inc b/data/scripts/secret_power_tm.inc index f5506bfec..deb30187f 100644 --- a/data/scripts/secret_power_tm.inc +++ b/data/scripts/secret_power_tm.inc @@ -9,7 +9,7 @@ Route111_EventScript_1A3858:: @ 81A3858 end Route111_EventScript_1A3877:: @ 81A3877 - giveitem ITEM_TM43 + giveitem_std ITEM_TM43 compare RESULT, 0 goto_if_eq Route111_EventScript_1A38D9 msgbox Route111_Text_1A35C5, 4 diff --git a/data/scripts/tv.inc b/data/scripts/tv.inc index a74eba551..cf5fb26c5 100644 --- a/data/scripts/tv.inc +++ b/data/scripts/tv.inc @@ -58,7 +58,7 @@ EventScript_1A6F0B: EventScript_1A6F21: special DoTVShow waitmessage - waitbutton + waitbuttonpress compare RESULT, 1 goto_if 5, EventScript_1A6F21 goto EventScript_1A6F37 @@ -81,14 +81,14 @@ EventScript_1A6F50: compare RESULT, 0 goto_if_eq EventScript_1A6EBB waitmessage - waitbutton + waitbuttonpress goto EventScript_1A6F37 end EventScript_1A6F66: special DoTVShowInSearchOfTrainers waitmessage - waitbutton + waitbuttonpress compare RESULT, 0 goto_if_eq EventScript_1A6F66 goto EventScript_1A6F37 diff --git a/data/text/contest_strings.inc b/data/text/contest_strings.inc index 94366cc41..5c9fdf0db 100644 --- a/data/text/contest_strings.inc +++ b/data/text/contest_strings.inc @@ -208,10 +208,10 @@ gUnknown_083CAF70:: @ 83CAF70 .4byte ContestString_Smart .4byte ContestString_Tough -gUnknown_083CAF84:: @ 83CAF84 +gText_Contest_WhichMoveWillBePlayed:: @ 83CAF84 .string "Appeal no. {NAME_END}!\nWhich move will be played?$" -gUnknown_083CAFAE:: @ 83CAFAE +gText_Contest_ButItCantParticipate:: @ 83CAFAE .string "Appeal no. {NAME_END}!\nBut it can’t participate!$" gUnknown_083CAFD7:: @ 83CAFD7 @@ -280,7 +280,7 @@ ContestString_StandOutDidnt: .string "{STR_VAR_1} hasn’t made\nits appeal.{PAUSE_UNTIL_PRESS}$" .align 2 -gUnknown_083CB2F0:: @ 83CB2F0 +gContestStandOutStrings:: @ 83CB2F0 .4byte ContestString_StandOutNone .4byte ContestString_StandOutNotMuch .4byte ContestString_StandOutLittle @@ -450,19 +450,19 @@ ContestString_ScrambleOrder: .string "It scrambled up the\norder for the next turn.{PAUSE 60}$" gUnknown_083CBD52:: @ 83CBD52 -ContestString_JudgeExpectantly2: +ContestString_JudgeExpectantly2:: .string "The JUDGE looked at\n{STR_VAR_1} expectantly.{PAUSE 60}$" gUnknown_083CBD79:: @ 83CBD79 -ContestString_WentOverWell: +ContestString_WentOverWell:: .string "The appeal combo went\nover well.{PAUSE 60}$" gUnknown_083CBD9D:: @ 83CBD9D -ContestString_WentOverVeryWell: +ContestString_WentOverVeryWell:: .string "The appeal combo went\nover very well.{PAUSE 60}$" gUnknown_083CBDC6:: @ 83CBDC6 -ContestString_AppealComboExcellently: +ContestString_AppealComboExcellently:: .string "The appeal combo went\nover excellently.{PAUSE 60}$" ContestString_AvertGaze: .string "{STR_VAR_1} managed to\navert its gaze.{PAUSE 60}$" @@ -504,33 +504,33 @@ ContestString_Unaffected: .string "{STR_VAR_1} was\nunaffected.{PAUSE 60}$" gUnknown_083CC075:: @ 83CC075 -ContestString_DissapointedRepeat: +ContestString_DissapointedRepeat:: .string "{STR_VAR_1} disappointed\nby repeating an appeal.{PAUSE 60}$" gUnknown_083CC0A0:: @ 83CC0A0 -ContestString_WentOverGreat: +ContestString_WentOverGreat:: .string "{STR_VAR_1}’s {STR_VAR_3}\nwent over great.{PAUSE 60}$" gUnknown_083CC0BC:: @ 83CC0BC -ContestString_DidntGoWell: +ContestString_DidntGoWell:: .string "{STR_VAR_1}’s {STR_VAR_3}\ndidn’t go over well here...{PAUSE 60}$" gUnknown_083CC0E3:: @ 83CC0E3 -ContestString_GotCrowdGoing: +ContestString_GotCrowdGoing:: .string "{STR_VAR_1}’s {STR_VAR_3}\ngot the crowd going.{PAUSE 60}$" gUnknown_083CC103:: @ 83CC103 -ContestString_CantAppealNextTurn: +ContestString_CantAppealNextTurn:: .string "{STR_VAR_1} can’t appeal\nnext turn...{PAUSE 60}$" -ContestString_AttractedAttention: +ContestString_AttractedAttention:: .string "It attracted the crowd’s\nattention.{PAUSE 60}$" gUnknown_083CC14A:: @ 83CC14A -ContestString_CrowdWatches: +ContestString_CrowdWatches:: .string "The crowd continues to\nwatch {STR_VAR_3}.{PAUSE 60}$" gUnknown_083CC16E:: @ 83CC16E -ContestString_Ignored2: +ContestString_Ignored2:: .string "{STR_VAR_1}’s\n{STR_VAR_2} is ignored.{PAUSE 60}$" .align 2 @@ -598,19 +598,19 @@ gUnknown_083CC188:: @ 83CC188 .4byte ContestString_Unaffected .4byte ContestString_AttractedAttention -gUnknown_083CC280:: @ 83CC280 +gText_Contest_Shyness:: @ 83CC280 .string "shyness$" -gUnknown_083CC288:: @ 83CC288 +gText_Contest_Anxiety:: @ 83CC288 .string "anxiety$" -gUnknown_083CC290:: @ 83CC290 +gText_Contest_Laziness:: @ 83CC290 .string "laziness$" -gUnknown_083CC299:: @ 83CC299 +gText_Contest_Hesitancy:: @ 83CC299 .string "hesitancy$" -gUnknown_083CC2A3:: @ 83CC2A3 +gText_Contest_Fear:: @ 83CC2A3 .string "fear$" ContestString_Coolness: @@ -625,7 +625,7 @@ ContestString_Toughness: .string "toughness$" .align 2 -gUnknown_083CC2D8:: @ 83CC2D8 +gContestCategoryStrings:: @ 83CC2D8 .4byte ContestString_Coolness .4byte ContestString_Beauty2 .4byte ContestString_Cuteness diff --git a/include/battle.h b/include/battle.h index 3b37c0853..dda71e562 100644 --- a/include/battle.h +++ b/include/battle.h @@ -3,6 +3,22 @@ #include "sprite.h" +#define F_TARGET_SELECTED_POKEMON 0 +#define F_TARGET_SPECIAL (1 << 0) +#define F_TARGET_UNK2 (1 << 1) +#define F_TARGET_RANDOM (1 << 2) +#define F_TARGET_BOTH_ENEMIES (1 << 3) +#define F_TARGET_USER (1 << 4) +#define F_TARGET_ALL_EXCEPT_USER (1 << 5) +#define F_TARGET_ENEMY_SIDE (1 << 6) + +#define F_MAKES_CONTACT (1 << 0) +#define F_AFFECTED_BY_PROTECT (1 << 1) +#define F_AFFECTED_BY_MAGIC_COAT (1 << 2) +#define F_AFFECTED_BY_SNATCH (1 << 3) +#define F_MIRROR_MOVE_COMPATIBLE (1 << 4) +#define F_AFFECTED_BY_KINGS_ROCK (1 << 5) + #define BATTLE_TYPE_DOUBLE 0x0001 #define BATTLE_TYPE_LINK 0x0002 #define BATTLE_TYPE_WILD 0x0004 diff --git a/include/battle_anim.h b/include/battle_anim.h index 9598c5e5f..9decb8f95 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -3,19 +3,11 @@ #include "sprite.h" -#define REG_BGnCNT_BITFIELD(n) (*(struct BGCntrlBitfield *)REG_ADDR_BG##n##CNT) +#define REG_BGnCNT_BITFIELD(n) (*(vBgCnt *)REG_ADDR_BG##n##CNT) +#define REG_BG0CNT_BITFIELD REG_BGnCNT_BITFIELD(0) #define REG_BG1CNT_BITFIELD REG_BGnCNT_BITFIELD(1) #define REG_BG2CNT_BITFIELD REG_BGnCNT_BITFIELD(2) - -struct BGCntrlBitfield -{ - volatile u16 priority:2; - volatile u16 charBaseBlock:2; - volatile u16 field_0_2:4; - volatile u16 field_1_0:5; - volatile u16 areaOverflowMode:1; - volatile u16 screenSize:2; -}; +#define REG_BG3CNT_BITFIELD REG_BGnCNT_BITFIELD(3) struct BattleAnimBackground { @@ -42,6 +34,12 @@ struct UnknownStruct3 u8 filler1[0xB]; }; +extern void (*gAnimScriptCallback)(void); +extern u8 gAnimScriptActive; +extern u8 gHappinessMoveAnim; +extern u8 gUnknown_0202F7C4; + +void ExecuteMoveAnim(u16 move); void DoMoveAnim(const u8 *const moveAnims[], u16 b, u8 c); bool8 IsAnimBankSpriteVisible(u8 a); void sub_8076034(u8, u8); diff --git a/include/constants/moves.h b/include/constants/moves.h index ceec76c13..5fe1da004 100644 --- a/include/constants/moves.h +++ b/include/constants/moves.h @@ -357,4 +357,6 @@ #define MOVE_DOOM_DESIRE 353 #define MOVE_PSYCHO_BOOST 354 +#define NUM_MOVES 355 + #endif // GUARD_CONSTANTS_MOVES_H diff --git a/include/contest.h b/include/contest.h index 983f9bc6a..ae2767aef 100644 --- a/include/contest.h +++ b/include/contest.h @@ -1,40 +1,90 @@ #ifndef GUARD_CONTEST_H #define GUARD_CONTEST_H +enum +{ + CONTEST_CATEGORY_COOL, + CONTEST_CATEGORY_BEAUTY, + CONTEST_CATEGORY_CUTE, + CONTEST_CATEGORY_SMART, + CONTEST_CATEGORY_TOUGH, +}; + +enum +{ + CONTEST_EFFECT_HIGHLY_APPEALING, + CONTEST_EFFECT_USER_MORE_STARTLED, + CONTEST_EFFECT_APPEAL_ONLY_ONCE, + CONTEST_EFFECT_REPEATABLE, + CONTEST_EFFECT_AVOID_STARTLE_ONCE, + CONTEST_EFFECT_AVOID_STARTLE, + CONTEST_EFFECT_AVOID_STARTLE_LITTLE, + //... +}; + +struct ContestMove +{ + u8 effect; + u8 contestCategory:3; + u8 comboStarterId; + u8 comboMoves[4]; +}; + +struct ContestEffect +{ + u8 effectType; + u8 appeal; + u8 jam; +}; + struct ContestPokemon { - /* 0x00 */ u16 species; - /* 0x02 */ u8 nickname[POKEMON_NAME_LENGTH]; - /* 0x0D */ u8 trainerName[8]; - /* 0x15 */ u8 unk15; - /* 0x16 */ u8 unk16; - /* 0x17 */ u8 filler17[7]; - /* 0x1E */ u16 moves[4]; // moves - /* 0x26 */ u8 cool; // cool - /* 0x27 */ u8 beauty; // beauty - /* 0x28 */ u8 cute; // cute - /* 0x29 */ u8 smart; // smart - /* 0x2A */ u8 tough; // tough - /* 0x2B */ u8 sheen; // sheen - /* 0x2C */ u8 filler2C[12]; - /* 0x38 */ u32 unk38; - /* 0x3C */ u32 unk3C; + /*0x00*/ u16 species; + /*0x02*/ u8 nickname[POKEMON_NAME_LENGTH + 1]; + /*0x0D*/ u8 trainerName[8]; + /*0x15*/ u8 trainerGfxId; + /*0x16*/ u8 unk16; + /*0x17*/ u8 filler17; + /*0x18*/ u32 flags; + /*0x1C*/ u8 unk1C_0:2; + u8 unk1C_2:1; + u8 unk1C_3:1; + u8 unk1C_4:1; + u8 unk1C_5:1; + u8 unk1C_6:1; + u8 unk1C_7:1; + u8 filler1D; + /*0x1E*/ u16 moves[4]; // moves + /*0x26*/ u8 cool; // cool + /*0x27*/ u8 beauty; // beauty + /*0x28*/ u8 cute; // cute + /*0x29*/ u8 smart; // smart + /*0x2A*/ u8 tough; // tough + /*0x2B*/ u8 sheen; // sheen + /*0x2C*/ u8 unk2C; + /*0x2D*/ u8 unk2D[11]; + /*0x38*/ u32 personality; // personality + /*0x3C*/ u32 otId; // otId }; // wow extern struct ContestPokemon gContestMons[]; +extern const struct ContestMove gContestMoves[]; +extern const struct ContestEffect gContestEffects[]; +extern const u8 *const gContestEffectStrings[]; + void ResetLinkContestBoolean(void); void sub_80AB2AC(void); -void sub_80AB47C(void); -void sub_80AE098(u8); -void sub_80AE398(u8, u8); +void CB2_StartContest(void); +void Contest_CreatePlayerMon(u8); +void Contest_InitAllPokemon(u8, u8); u8 sub_80AE47C(struct Pokemon *party); -u32 sub_80AE770(u8, u8); +u16 sub_80AE770(u8, u8); void sub_80AE82C(u8); -u8 sub_80AEB1C(); +u8 sub_80AEB1C(u16); void sub_80AF668(void); void sub_80B0F28(u8); -int sub_80B2A7C(u8); //Don't know return type size +bool8 Contest_SaveWinner(u8); u8 sub_80B2C4C(u8, u8); -void sub_80B2D1C(void); +void Contest_ResetWinners(void); #endif // GUARD_CONTEST_H diff --git a/include/contest_link_80C857C.h b/include/contest_link_80C857C.h index 9135ba2e7..c0f7088b0 100644 --- a/include/contest_link_80C857C.h +++ b/include/contest_link_80C857C.h @@ -3,6 +3,7 @@ void sub_80C8734(u8); void sub_80C88AC(u8); +void sub_80C89DC(u8); void sub_80C8E1C(u8); void sub_80C8EBC(u8); void sub_80C8F34(u8); diff --git a/include/data2.h b/include/data2.h index 53a90944d..97cb4fd7a 100644 --- a/include/data2.h +++ b/include/data2.h @@ -22,7 +22,7 @@ extern const struct SpriteFrameImage gSpriteImageTable_81E7A70[]; extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7B70[]; extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7BEC[]; -extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7C18; +extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7C18[]; extern const union AnimCmd *const gSpriteAnimTable_81E7C64[]; extern struct MonCoords gMonFrontPicCoords[]; extern struct MonCoords gMonBackPicCoords[]; diff --git a/include/event_data.h b/include/event_data.h index 80c6b9478..5656ab8dc 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -37,8 +37,8 @@ extern u16 gSpecialVar_0x8008; extern u16 gSpecialVar_0x8009; extern u16 gSpecialVar_0x800A; extern u16 gSpecialVar_0x800B; -extern u16 gScriptResult; -extern u16 gScriptLastTalked; -extern u16 gScriptFacing; +extern u16 gSpecialVar_Result; +extern u16 gSpecialVar_LastTalked; +extern u16 gSpecialVar_Facing; #endif // GUARD_EVENT_DATA_H diff --git a/include/gba/macro.h b/include/gba/macro.h index 945ba4885..d9e6739b3 100644 --- a/include/gba/macro.h +++ b/include/gba/macro.h @@ -105,27 +105,26 @@ #define DmaClearLarge(dmaNum, dest, size, block, bit) \ { \ - void *_dest = dest; \ + const void *_dest = dest; \ u32 _size = size; \ while (1) \ { \ - DmaFill##bit(dmaNum, 0, _dest, (block)); \ - _dest += (block); \ + DmaFill##bit(dmaNum, 0, _dest, (block)); \ + _dest += (block); \ _size -= (block); \ if (_size <= (block)) \ { \ - DmaFill##bit(dmaNum, 0, _dest, _size); \ + DmaFill##bit(dmaNum, 0, _dest, _size); \ break; \ } \ } \ } #define DmaCopyLarge16(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 16) - #define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32) -# define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16) -# define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32) +#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16) +#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32) #define DmaCopyDefvars(dmaNum, src, dest, size, bit) \ { \ diff --git a/include/gba/types.h b/include/gba/types.h index 480619d21..33ae7df9a 100644 --- a/include/gba/types.h +++ b/include/gba/types.h @@ -28,6 +28,17 @@ typedef u8 bool8; typedef u16 bool16; typedef u32 bool32; +struct BgCnt +{ + u16 priority:2; + u16 charBaseBlock:2; + u16 dummy:4; + u16 screenBaseBlock:5; + u16 areaOverflowMode:1; + u16 screenSize:2; +}; +typedef volatile struct BgCnt vBgCnt; + struct PlttData { u16 r:5; // red diff --git a/include/global.h b/include/global.h index 6670f3837..a4e71852c 100644 --- a/include/global.h +++ b/include/global.h @@ -41,8 +41,8 @@ fndec\ #define POKEMON_NAME_LENGTH 10 #define OT_NAME_LENGTH 7 -#define min(a, b) (a >= b ? a : b) -#define max(a, b) (a <= b ? a : b) +#define min(a, b) ((a) <= (b) ? (a) : (b)) +#define max(a, b) ((a) >= (b) ? (a) : (b)) // why does GF hate 2d arrays #define MULTI_DIM_ARR(x, dim, y) ((x) * dim + (y)) @@ -50,9 +50,9 @@ fndec\ // dim access enums enum { - B_8 = 1, - B_16 = 2, - B_32 = 4 + B_8 = 1, + B_16 = 2, + B_32 = 4 }; // There are many quirks in the source code which have overarching behavioral differences from @@ -230,12 +230,6 @@ struct RamScript struct RamScriptData data; }; -struct SB1_2EFC_Struct -{ - u16 var; - u8 unknown[0x1E]; -}; - struct EasyChatPair { u16 unk0_0:7; @@ -530,26 +524,6 @@ union MauvilleMan u8 filler[0x40]; // needed to pad out the struct }; -struct Unk_SB_Access_Struct1 -{ - u8 filler0[0xF8]; - struct SB1_2EFC_Struct sb1_2EFC_struct[5]; -}; - -struct Unk_SB_Access_Struct2 -{ - /*0x0000*/ struct SB1_2EFC_Struct sb1_2EFC_struct2[12]; // each is 0x20 - /*0x2F84*/ u8 filler[0x18]; -}; - -/*0x2E04*/ -typedef union SB_Struct -{ - struct Unk_SB_Access_Struct1 unkSB1; - struct Unk_SB_Access_Struct2 unkSB2; -} SB_Struct; -// size is 0x198 - struct UnknownSaveStruct2ABC { u8 val0; @@ -632,6 +606,16 @@ struct RecordMixingGift struct RecordMixingGiftData data; }; +struct ContestWinner +{ + /*0x00*/ u32 personality; // personality + /*0x04*/ u32 otId; // otId + /*0x08*/ u16 species; // species + /*0x0A*/ u8 contestCategory; + /*0x0B*/ u8 nickname[0x16-0xB]; + /*0x16*/ u8 trainerName[0x20-0x16]; +}; + // there should be enough flags for all 412 slots // each slot takes up 8 flags // if the value is not divisible by 8, we need to account for the reminder as well @@ -710,8 +694,8 @@ struct SaveBlock1 /* 0x02025734 */ /*0x2D90*/ u8 filler_2D90[0x4]; /*0x2D94*/ union MauvilleMan mauvilleMan; /*0x2DD4*/ struct EasyChatPair easyChatPairs[5]; //Dewford trend [0] and some other stuff - /*0x2DFC*/ u8 filler_2DFC[0x8]; - /*0x2E04*/ SB_Struct sbStruct; + /*0x2DFC*/ struct ContestWinner contestWinners[8]; + /*0x2EFC*/ struct ContestWinner museumPortraits[5]; /*0x2F9C*/ struct DayCare daycare; /*0x30B8*/ struct LinkBattleRecord linkBattleRecords[5]; /*0x3108*/ u8 filler_3108[8]; diff --git a/include/graphics.h b/include/graphics.h index 7c23e90ab..f94450f86 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -28,8 +28,38 @@ extern const u8 gInterfaceGfx_PremierBall[]; extern const u8 gInterfacePal_PremierBall[]; extern const u8 gUnknown_08D030D0[]; +extern const u8 gUnknown_08D17144[]; +extern const u8 gUnknown_08D1725C[]; +extern const u8 gUnknown_08D17424[]; +extern const u8 gUnknown_08D17C3C[]; +extern const u8 gContestMiscGfx[]; +extern const u8 gContestAudienceGfx[]; +extern const u8 gContestJudgeSymbolsGfx[]; +extern const u8 gContest3Pal[]; +extern const u8 gTiles_8D1975C[]; +extern const u8 gUnknown_08D1977C[]; +extern const u8 gUnknown_08D1A250[]; +extern const u8 gUnknown_08D1A364[]; +extern const u8 gUnknown_08D1A490[]; +extern const u8 gUnknown_08D1A618[]; + +extern const u8 gContestJudgeGfx[]; +extern const u8 gContest2Pal[]; + extern const u8 gMonFootprint_QuestionMark[]; +extern const u8 gContestNextTurnGfx[]; +extern const u8 gContestNextTurnNumbersGfx[]; +extern const u8 gContestNextTurnRandomGfx[]; +extern const u8 gBattleAnimSpriteSheet_264[]; +extern const u8 gBattleAnimSpritePalette_264[]; +extern const u8 gBattleAnimSpritePalette_265[]; +extern const u8 gBattleAnimSpritePalette_067[]; +extern const u8 gBattleAnimSpritePalette_068[]; +extern const u8 gContestApplauseGfx[]; +extern const u8 gContestApplauseMeterGfx[]; +extern const u16 gContestPal[]; + // data/graphics/pokemon/graphics.inc extern const u8 gMonFrontPic_Bulbasaur[]; extern const u8 gMonPalette_Bulbasaur[]; diff --git a/include/item_use.h b/include/item_use.h index 227c0c9ee..ee7939824 100644 --- a/include/item_use.h +++ b/include/item_use.h @@ -1,7 +1,7 @@ #ifndef GUARD_ITEM_USE_H #define GUARD_ITEM_USE_H -extern u16 gScriptItemId; +extern u16 gSpecialVar_ItemId; void ItemUseOutOfBattle_Mail(u8); void ItemUseOutOfBattle_Bike(u8); diff --git a/include/learn_move.h b/include/learn_move.h index 7a05ea60b..85fbf046e 100644 --- a/include/learn_move.h +++ b/include/learn_move.h @@ -1,21 +1,6 @@ #ifndef GUARD_LEARN_MOVE_H #define GUARD_LEARN_MOVE_H -struct ContestMove -{ - u8 effect; - u8 contestCategory:3; - u8 comboStarterId; - u8 comboMoves[4]; -}; - -struct ContestEffect -{ - u8 effectType; - u8 appeal; - u8 jam; -}; - void sub_8132670(void); #endif // GUARD_LEARN_MOVE_H diff --git a/include/new_game.h b/include/new_game.h index f59154af4..5be7f6265 100644 --- a/include/new_game.h +++ b/include/new_game.h @@ -6,7 +6,7 @@ void copy_word_to_mem(u8 *copyTo, u8 *copyFrom); void InitPlayerTrainerId(void); void SetDefaultOptions(void); void ClearPokedexFlags(void); -void sub_8052DA8(void); +void ResetContestAndMuseumWinners(void); void sub_8052DE4(void); void WarpToTruck(void); void ClearSav2(void); diff --git a/include/rom_8077ABC.h b/include/rom_8077ABC.h index 2a2947968..70bd6fe5a 100644 --- a/include/rom_8077ABC.h +++ b/include/rom_8077ABC.h @@ -12,6 +12,12 @@ enum ANIM_BANK_DEF_PARTNER }; +struct Struct_sub_8078914 { + u8 *field_0; + u8 *field_4; + u8 field_8; +}; + u8 sub_8077ABC(u8, u8); u8 sub_8077E44(u8 slot, u16 species, u8 a3); u8 GetAnimBankSpriteId(u8 side); @@ -99,5 +105,7 @@ u8 sub_8077FC0(u8 slot); void move_anim_8074EE0(struct Sprite *sprite); bool8 sub_8078718(struct Sprite *sprite); bool8 sub_8078CE8(struct Sprite *sprite); +void oamt_add_pos2_onto_pos1(struct Sprite *sprite); +void sub_8078BD4(struct Sprite *sprite); #endif // GUARD_ROM_8077ABC_H diff --git a/include/sprite.h b/include/sprite.h index 7b6dd2bef..1e989b6d5 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -222,12 +222,21 @@ struct Sprite /*0x43*/ u8 subpriority; }; +struct OamMatrix +{ + s16 a; + s16 b; + s16 c; + s16 d; +}; + extern const struct OamData gDummyOamData; extern const union AnimCmd *const gDummySpriteAnimTable[]; extern const union AffineAnimCmd *const gDummySpriteAffineAnimTable[]; extern s16 gSpriteCoordOffsetX; extern s16 gSpriteCoordOffsetY; +extern u8 gReservedSpritePaletteCount; extern u8 gOamLimit; diff --git a/include/tv.h b/include/tv.h index 0f355043c..c2158ece0 100644 --- a/include/tv.h +++ b/include/tv.h @@ -26,6 +26,7 @@ void sub_80BE138(TVShow *show); void sub_80BE160(TVShow *show); void sub_80BE160(TVShow *); void sub_80BE188(void); +void sub_80BE23C(u16); void sub_80BE320(void); void StartMassOutbreak(void); void sub_80BE5FC(void); diff --git a/include/util.h b/include/util.h index 87fa4aecc..676c3bd9b 100644 --- a/include/util.h +++ b/include/util.h @@ -11,5 +11,6 @@ void StoreWordInTwoHalfwords(u16 *, u32); void LoadWordFromTwoHalfwords(u16 *, u32 *); u16 CalcCRC16(u8 *data, int length); void DoBgAffineSet(struct BgAffineDstData *dest, u32 texX, u32 texY, s16 scrX, s16 scrY, s16 sx, s16 sy, u16 alpha); +void CopySpriteTiles(u8 shape, u8 size, u8 *tiles, u16 *tilemap, u8 *output); #endif // GUARD_UTIL_H diff --git a/ld_script.txt b/ld_script.txt index 7e588c032..8e88f1453 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -141,7 +141,7 @@ SECTIONS { src/battle/battle_anim_80A7E7C.o(.text); src/field/item.o(.text); src/debug/matsuda_debug_menu.o(.text); - asm/contest.o(.text); + src/contest.o(.text); src/field/shop.o(.text); src/field/berry.o(.text); src/field/script_menu.o(.text); @@ -268,24 +268,25 @@ SECTIONS { src/battle/anim/swipe.o(.text); src/battle/anim/struggle.o(.text); src/battle/anim/uproar.o(.text); - asm/noise.o(.text); - asm/note_spin.o(.text); - asm/guard.o(.text); - asm/fury_cutter_count.o(.text); - asm/rain.o(.text); - asm/bubble.o(.text); + src/battle/anim/noise.o(.text); + src/battle/anim/note_spin.o(.text); + src/battle/anim/guard.o(.text); + src/battle/anim/fury_cutter_count.o(.text); + src/battle/anim/rain.o(.text); + src/battle/anim/bubble.o(.text); src/battle/anim/aurora.o(.text); - asm/liquid_ball.o(.text); + src/battle/anim/energy_wave.o(.text); + src/battle/anim/water.o(.text); asm/water.o(.text); asm/fire.o(.text); - asm/sunlight.o(.text); + src/battle/anim/sunlight.o(.text); asm/fire_2.o(.text); - asm/heated_rock.o(.text); - asm/wisp_orb.o(.text); + src/battle/anim/heated_rock.o(.text); + src/battle/anim/wisp_orb.o(.text); asm/wisp_fire.o(.text); - asm/thunder.o(.text); - asm/beta_beat_up.o(.text); - asm/shock.o(.text); + src/battle/anim/thunder.o(.text); + src/battle/anim/beta_beat_up.o(.text); + src/battle/anim/shock.o(.text); asm/current.o(.text); asm/ice.o(.text); asm/fight.o(.text); diff --git a/src/battle/anim/beta_beat_up.c b/src/battle/anim/beta_beat_up.c new file mode 100644 index 000000000..499e52a80 --- /dev/null +++ b/src/battle/anim/beta_beat_up.c @@ -0,0 +1,34 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; + +static void sub_80D6278(struct Sprite *); + +// beta_beat_up + +void sub_80D6234(struct Sprite *sprite) +{ + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->pos1.x -= gBattleAnimArgs[0]; + } + else + { + sprite->pos1.x += gBattleAnimArgs[0]; + } + + sprite->callback = sub_80D6278; +} + +static void sub_80D6278(struct Sprite *sprite) +{ + if (sprite->affineAnimEnded) + { + move_anim_8074EE0(sprite); + } +} diff --git a/src/battle/anim/bubble.c b/src/battle/anim/bubble.c new file mode 100644 index 000000000..5da0d9929 --- /dev/null +++ b/src/battle/anim/bubble.c @@ -0,0 +1,102 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" +#include "util.h" + +extern s16 gBattleAnimArgs[]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; + +static void sub_80D32E8(struct Sprite *sprite); +static void sub_80D3370(struct Sprite *sprite); +static void sub_80D3398(struct Sprite *sprite); + +// bubble (indidivual bubble that floats around) +// Used in Bubble and Bubblebeam + +void sub_80D31C8(struct Sprite* sprite) +{ + u8 newSpriteId; + + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->pos1.x = sub_8077ABC(gBattleAnimBankAttacker, 2) - gBattleAnimArgs[0]; + sprite->pos1.y = sub_8077ABC(gBattleAnimBankAttacker, 3) + gBattleAnimArgs[1]; + } + else + { + sprite->pos1.x = sub_8077ABC(gBattleAnimBankAttacker, 2) + gBattleAnimArgs[0]; + sprite->pos1.y = sub_8077ABC(gBattleAnimBankAttacker, 3) + gBattleAnimArgs[1]; + } + + sprite->animPaused = 1; + + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + gBattleAnimArgs[2] = -gBattleAnimArgs[2]; + } + + sprite->data[0] = gBattleAnimArgs[6]; + sprite->data[1] = sprite->pos1.x; + sprite->data[2] = sub_8077ABC(gBattleAnimBankTarget, 2); + sprite->data[3] = sprite->pos1.y; + sprite->data[4] = sub_8077ABC(gBattleAnimBankTarget, 3); + + obj_translate_based_on_private_1_2_3_4(sprite); + + newSpriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy); + sprite->data[5] = newSpriteId; + + sprite->pos1.x -= Sin((u8)gBattleAnimArgs[4], gBattleAnimArgs[2]); + sprite->pos1.y -= Cos((u8)gBattleAnimArgs[4], gBattleAnimArgs[3]); + + gSprites[newSpriteId].data[0] = gBattleAnimArgs[2]; + gSprites[newSpriteId].data[1] = gBattleAnimArgs[3]; + gSprites[newSpriteId].data[2] = gBattleAnimArgs[5]; + gSprites[newSpriteId].data[3] = (u8)gBattleAnimArgs[4] * 256; + gSprites[newSpriteId].data[4] = gBattleAnimArgs[6]; + + sprite->callback = sub_80D32E8; + sprite->callback(sprite); +} + +static void sub_80D32E8(struct Sprite *sprite) +{ + u8 spriteId = sprite->data[5]; + + u8 counter = gSprites[spriteId].data[4]; + u16 index = gSprites[spriteId].data[3]; + + sprite->data[0] = 1; + sub_8078B5C(sprite); + + sprite->pos2.x += Sin(index / 256, gSprites[spriteId].data[0]); + sprite->pos2.y += Cos(index / 256, gSprites[spriteId].data[1]); + + gSprites[spriteId].data[3] = gSprites[spriteId].data[2] + index; + + if (--counter != 0) + { + gSprites[spriteId].data[4] = counter; + } + else + { + sprite->callback = sub_80D3370; + DestroySprite(&gSprites[spriteId]); + } +} + +static void sub_80D3370(struct Sprite *sprite) +{ + sprite->animPaused = 0; + sprite->callback = sub_8078600; + StoreSpriteCallbackInData(sprite, sub_80D3398); +} + +static void sub_80D3398(struct Sprite *sprite) +{ + sprite->data[0] = 10; + sprite->callback = sub_80782D8; + StoreSpriteCallbackInData(sprite, move_anim_8074EE0); +} diff --git a/src/battle/anim/energy_wave.c b/src/battle/anim/energy_wave.c new file mode 100644 index 000000000..ffba5c300 --- /dev/null +++ b/src/battle/anim/energy_wave.c @@ -0,0 +1,162 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "sprite.h" +#include "task.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern const struct SpriteTemplate gSpriteTemplate_83D9130[]; + +static void sub_80D35DC(struct Sprite *); +static void sub_80D365C(u8); +static void sub_80D370C(struct Sprite *); + +// energy_wave (animates steady "waves" of energy) +// Used in Hydro Pump, Mud Shot, Signal Beam, Flamethrower, Psywave, and +// Hydro Cannon. + +void sub_80D3554(struct Sprite *sprite) +{ + sub_80787B0(sprite, 1); + + sprite->data[0] = 30; + sprite->data[1] = sprite->pos1.x; + sprite->data[2] = sub_8077ABC(gBattleAnimBankTarget, 2); + sprite->data[3] = sprite->pos1.y; + sprite->data[4] = sub_8077ABC(gBattleAnimBankTarget, 3); + + obj_translate_based_on_private_1_2_3_4(sprite); + + sprite->data[5] = 0xD200 / sprite->data[0]; + sprite->data[7] = gBattleAnimArgs[3]; + + if (gBattleAnimArgs[7] > 127) + { + sprite->data[6] = (gBattleAnimArgs[7] - 127) << 8; + sprite->data[7] = -sprite->data[7]; + } + else + { + sprite->data[6] = gBattleAnimArgs[7] << 8; + } + + sprite->callback = sub_80D35DC; + sprite->callback(sprite); +} + +static void sub_80D35DC(struct Sprite *sprite) +{ + if (sub_8078B5C(sprite)) + { + move_anim_8072740(sprite); + } + + sprite->pos2.y += Sin(sprite->data[6] >> 8, sprite->data[7]); + if (((sprite->data[6] + sprite->data[5]) >> 8) > 127) + { + sprite->data[6] = 0; + sprite->data[7] = -sprite->data[7]; + } + else + { + sprite->data[6] += sprite->data[5]; + } +} + +void sub_80D3630(u8 taskId) +{ + gTasks[taskId].data[0] = gBattleAnimArgs[0]; + gBattleAnimArgs[7] = 0; + gTasks[taskId].func = sub_80D365C; +} + +static void sub_80D365C(u8 taskId) +{ + gBattleAnimArgs[7] = (gBattleAnimArgs[7] + 3) & 0xFF; + if (--gTasks[taskId].data[0] == 0) + { + DestroyAnimVisualTask(taskId); + } +} + +void sub_80D3698(struct Sprite *sprite) +{ + u8 subpriority; + + sprite->pos1.x = sub_8077ABC(gBattleAnimBankAttacker, 0); + sprite->pos1.y = sub_8077ABC(gBattleAnimBankAttacker, 1); + sprite->pos2.y = -10; + + subpriority = sub_8079E90(gBattleAnimBankAttacker); + + if (!NotInBattle()) + { + if (GetBankSide(gBattleAnimBankAttacker) == 0) + { + sprite->pos2.x = 10; + sprite->subpriority = subpriority + 2; + } + else + { + sprite->pos2.x = -10; + sprite->subpriority = subpriority - 2; + } + } + else + { + sprite->pos2.x = -10; + sprite->subpriority = subpriority + 2; + } + + sprite->callback = sub_80D370C; +} + +static void sub_80D370C(struct Sprite *sprite) +{ + if (sprite->affineAnimEnded) + { + move_anim_8072740(sprite); + } +} + +void sub_80D3728(struct Sprite *sprite) +{ + int var1, var2; + + if (GetBankSide(gBattleAnimBankAttacker) == GetBankSide(gBattleAnimBankTarget)) + { + gBattleAnimArgs[0] *= -1; + + if (GetBankIdentity(gBattleAnimBankAttacker) == 0 || GetBankIdentity(gBattleAnimBankAttacker) == 1) + { + gBattleAnimArgs[0] *= -1; + } + + } + + if ((gBattleAnimArgs[5] & 0xFF00) == 0) + var1 = 1; + else + var1 = 0; + + if ((u8)gBattleAnimArgs[5] == 0) + var2 = 3; + else + var2 = 1; + + sub_80787B0(sprite, var1); + + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + gBattleAnimArgs[2] = -gBattleAnimArgs[2]; + } + + sprite->data[0] = gBattleAnimArgs[4]; + sprite->data[2] = sub_8077ABC(gBattleAnimBankTarget, 2) + gBattleAnimArgs[2]; + sprite->data[4] = sub_8077ABC(gBattleAnimBankTarget, var2) + gBattleAnimArgs[3]; + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, move_anim_8072740); +} diff --git a/src/battle/anim/fury_cutter_count.c b/src/battle/anim/fury_cutter_count.c new file mode 100644 index 000000000..17b084585 --- /dev/null +++ b/src/battle/anim/fury_cutter_count.c @@ -0,0 +1,20 @@ +#include "global.h" +#include "battle_anim.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 *gDisableStructMoveAnim; // TODO: this is declared with a different type in different files + +// fury_cutter (updates the direction and count of the fury cutter animation) +// Used in Fury Cutter. + +void UpdateFuryCutterAnimDirection(u8 taskId) +{ + gBattleAnimArgs[7] = gDisableStructMoveAnim[16] & 1; + DestroyAnimVisualTask(taskId); +} + +void UpdateFuryCutterAnimCount(u8 taskId) +{ + gBattleAnimArgs[7] = gDisableStructMoveAnim[16]; + DestroyAnimVisualTask(taskId); +} diff --git a/src/battle/anim/guard.c b/src/battle/anim/guard.c new file mode 100644 index 000000000..4769db2e4 --- /dev/null +++ b/src/battle/anim/guard.c @@ -0,0 +1,34 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern u16 gBattleTypeFlags; + +// guard (moves guard rings upwards) +// Used in Safeguard. + +void sub_80D3014(struct Sprite *sprite) +{ + if ((gBattleTypeFlags & 1) && IsAnimBankSpriteVisible(gBattleAnimBankAttacker ^ 2)) + { + sub_807A3FC(gBattleAnimBankAttacker, 0, &sprite->pos1.x, &sprite->pos1.y); + sprite->pos1.y += 40; + + StartSpriteAffineAnim(sprite, 1); + } + else + { + sprite->pos1.x = sub_8077ABC(gBattleAnimBankAttacker, 0); + sprite->pos1.y = sub_8077ABC(gBattleAnimBankAttacker, 1) + 40; + } + + sprite->data[0] = 13; + sprite->data[2] = sprite->pos1.x; + sprite->data[4] = sprite->pos1.y - 72; + + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, move_anim_8072740); +} diff --git a/src/battle/anim/heated_rock.c b/src/battle/anim/heated_rock.c new file mode 100644 index 000000000..1d59669cf --- /dev/null +++ b/src/battle/anim/heated_rock.c @@ -0,0 +1,205 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern u16 gBattleTypeFlags; + +void sub_80D59B0(struct Sprite *); +static void sub_80D5A74(struct Sprite *); + +// heated_rock (moves heated rock sprites) +// Used in Eruption. + +void sub_80D58FC(struct Sprite *sprite) +{ + sub_80D59B0(sprite); + + if (sprite->invisible) + { + gTasks[sprite->data[6]].data[sprite->data[7]]--; + DestroySprite(sprite); + } +} + +u16 sub_80D5940(u8 spriteId) +{ + u16 var1 = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y + gSprites[spriteId].centerToCornerVecY; + + if (GetBankSide(gBattleAnimBankAttacker) == 0) + { + var1 = ((var1 << 16) + 0x4A0000) >> 16; + } + else + { + var1 = ((var1 << 16) + 0x2C0000) >> 16; + } + + return var1; +} + +void sub_80D5994(struct Sprite *sprite, s16 x, s16 y) +{ + sprite->data[0] = 0; + sprite->data[1] = 0; + sprite->data[2] = (u16)sprite->pos1.x * 8; + sprite->data[3] = (u16)sprite->pos1.y * 8; + sprite->data[4] = x * 8; + sprite->data[5] = y * 8; +} + +#ifdef NONMATCHING +void sub_80D59B0(struct Sprite *sprite) +{ + int var1; + int var2; + + if (++sprite->data[0] > 2) + { + sprite->data[0] = 0; + ++sprite->data[1]; + sprite->data[3] += ((u16)sprite->data[1] * (u16)sprite->data[1]); + } + + var1 = (u16)sprite->data[4] + (u16)sprite->data[2]; + sprite->data[2] = var1; + var1 = (s16)var1 >> 3; + sprite->pos1.x = var1; + + var2 = (u16)sprite->data[5] + (u16)sprite->data[3]; + sprite->data[3] = var2; + var2 = (s16)var2 >> 3; + sprite->pos1.y = var2; + + if ((u32)((var1 + 8) << 16) > 0x1000000 || var2 < -8 || var2 > 120) + { + sprite->invisible = 1; + } +} +#else +__attribute__((naked)) +void sub_80D59B0(struct Sprite *sprite) +{ + asm(".syntax unified\n\ + push {lr}\n\ + adds r2, r0, 0\n\ + ldrh r0, [r2, 0x2E]\n\ + adds r0, 0x1\n\ + strh r0, [r2, 0x2E]\n\ + lsls r0, 16\n\ + asrs r0, 16\n\ + cmp r0, 0x2\n\ + ble _080D59DA\n\ + movs r0, 0\n\ + strh r0, [r2, 0x2E]\n\ + ldrh r0, [r2, 0x30]\n\ + adds r0, 0x1\n\ + strh r0, [r2, 0x30]\n\ + ldrh r0, [r2, 0x30]\n\ + adds r1, r0, 0\n\ + muls r1, r0\n\ + adds r0, r1, 0\n\ + ldrh r3, [r2, 0x34]\n\ + adds r0, r3\n\ + strh r0, [r2, 0x34]\n\ +_080D59DA:\n\ + ldrh r0, [r2, 0x36]\n\ + ldrh r1, [r2, 0x32]\n\ + adds r0, r1\n\ + strh r0, [r2, 0x32]\n\ + lsls r0, 16\n\ + asrs r0, 19\n\ + strh r0, [r2, 0x20]\n\ + ldrh r1, [r2, 0x38]\n\ + ldrh r3, [r2, 0x34]\n\ + adds r1, r3\n\ + strh r1, [r2, 0x34]\n\ + lsls r1, 16\n\ + asrs r3, r1, 19\n\ + strh r3, [r2, 0x22]\n\ + adds r0, 0x8\n\ + lsls r0, 16\n\ + movs r1, 0x80\n\ + lsls r1, 17\n\ + cmp r0, r1\n\ + bhi _080D5A10\n\ + adds r1, r3, 0\n\ + movs r0, 0x8\n\ + negs r0, r0\n\ + cmp r1, r0\n\ + blt _080D5A10\n\ + cmp r1, 0x78\n\ + ble _080D5A1C\n\ +_080D5A10:\n\ + adds r0, r2, 0\n\ + adds r0, 0x3E\n\ + ldrb r1, [r0]\n\ + movs r2, 0x4\n\ + orrs r1, r2\n\ + strb r1, [r0]\n\ +_080D5A1C:\n\ + pop {r0}\n\ + bx r0\n\ + .syntax divided\n"); +} +#endif // NONMATCHING + +void sub_80D5A20(struct Sprite *sprite) +{ + sprite->pos1.x = gBattleAnimArgs[0]; + sprite->pos1.y = gBattleAnimArgs[1]; + + sprite->data[0] = 0; + sprite->data[1] = 0; + sprite->data[2] = 0; + sprite->data[6] = gBattleAnimArgs[2]; + sprite->data[7] = gBattleAnimArgs[3]; + + sprite->oam.tileNum += gBattleAnimArgs[4] * 16; + sprite->callback = sub_80D5A74; +} + +static void sub_80D5A74(struct Sprite *sprite) +{ + switch (sprite->data[0]) + { + case 0: + if (sprite->data[6] != 0) + { + sprite->data[6]--; + return; + } + + sprite->data[0]++; + // fall through + case 1: + sprite->pos1.y += 8; + if (sprite->pos1.y >= sprite->data[7]) + { + sprite->pos1.y = sprite->data[7]; + sprite->data[0]++; + } + break; + case 2: + if (++sprite->data[1] > 1) + { + sprite->data[1] = 0; + if ((++sprite->data[2] & 1) != 0) + { + sprite->pos2.y = -3; + } + else + { + sprite->pos2.y = 3; + } + } + + if (++sprite->data[3] > 16) + { + move_anim_8072740(sprite); + } + break; + } +} diff --git a/src/battle/anim/love_bg.c b/src/battle/anim/love_bg.c index c5659463e..1e49b536c 100755 --- a/src/battle/anim/love_bg.c +++ b/src/battle/anim/love_bg.c @@ -6,13 +6,6 @@ #include "decompress.h" #include "palette.h" -struct Struct_sub_8078914 -{ - u8 *field_0; - u8 *field_4; - u8 field_8; -}; - extern s16 gBattleAnimArgs[]; extern u8 gBattleAnimBankAttacker; extern u8 gBattleAnimBankTarget; diff --git a/src/battle/anim/noise.c b/src/battle/anim/noise.c new file mode 100644 index 000000000..78953d96a --- /dev/null +++ b/src/battle/anim/noise.c @@ -0,0 +1,56 @@ +#include "global.h" +#include "rom_8077ABC.h" +#include "battle_anim.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; + +static void sub_80D2E30(struct Sprite *); + +// noise (moving music note) +// Used in Uproar. + +void sub_80D2D68(struct Sprite* sprite) +{ + int var1; + u8 slot = gBattleAnimArgs[0] == 0 ? gBattleAnimBankAttacker : gBattleAnimBankTarget; + + if (GetBankSide(slot) == 1) + { + gBattleAnimArgs[1] *= -1; + } + + sprite->pos1.x = sub_8077ABC(slot, 2) + gBattleAnimArgs[1]; + sprite->pos1.y = sub_8077ABC(slot, 3) + gBattleAnimArgs[2]; + sprite->data[0] = 0; + sprite->data[1] = (u16)sprite->pos1.x << 3; + sprite->data[2] = (u16)sprite->pos1.y << 3; + + var1 = gBattleAnimArgs[1] << 3; + if (var1 < 0) + var1 += 7; + sprite->data[3] = var1 >> 3; + + var1 = gBattleAnimArgs[2] << 3; + if (var1 < 0) + var1 += 7; + sprite->data[4] = var1 >> 3; + + sprite->oam.tileNum += gBattleAnimArgs[3] * 16; + sprite->callback = sub_80D2E30; +} + +static void sub_80D2E30(struct Sprite *sprite) +{ + sprite->data[1] += sprite->data[3]; + sprite->data[2] += sprite->data[4]; + + sprite->pos1.x = sprite->data[1] >> 3; + sprite->pos1.y = sprite->data[2] >> 3; + + if (++sprite->data[0] > 16) + { + move_anim_8072740(sprite); + } +} diff --git a/src/battle/anim/note_spin.c b/src/battle/anim/note_spin.c new file mode 100644 index 000000000..bdc0f4615 --- /dev/null +++ b/src/battle/anim/note_spin.c @@ -0,0 +1,110 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; + +static void sub_80D2F80(struct Sprite *); +static void sub_80D2FA4(struct Sprite *); + +// note_spin (spins music notes around, and rotates them) +// Used in Perish Song. + +void sub_80D2E68(struct Sprite *sprite) +{ + if (sprite->data[0] == 0) + { + sprite->data[1] = 120 - gBattleAnimArgs[0]; + sprite->invisible = 1; + } + + if (++sprite->data[0] == sprite->data[1]) + { + sub_8079108(sprite->oam.paletteNum + 16, 0); + } + + if (sprite->data[0] == sprite->data[1] + 80) + { + move_anim_8072740(sprite); + } +} + +void sub_80D2EC8(struct Sprite *sprite) +{ + int index; + int var2; + + if (sprite->data[0] == 0) + { + sprite->pos1.x = 120; + sprite->pos1.y = (gBattleAnimArgs[0] + (((u16)gBattleAnimArgs[0]) >> 31)) / 2 - 15; + + StartSpriteAnim(sprite, gBattleAnimArgs[1]); + + sprite->data[5] = 120; + sprite->data[3] = gBattleAnimArgs[2]; + } + + sprite->data[0]++; + + sprite->data[1] = (sprite->data[0] + ((u16)sprite->data[0] >> 31)) / 2; + index = ((sprite->data[0] * 3) + (u16)sprite->data[3]); + var2 = 0xFF; + sprite->data[6] = (sprite->data[6] + 10) & 0xFF; + + index &= var2; + sprite->pos2.x = Cos(index, 100); + + sprite->pos2.y = sprite->data[1] + Sin(index, 10) + Cos(sprite->data[6], 4); + + if (sprite->data[0] > sprite->data[5]) + { + sprite->callback = sub_80D2F80; + + sprite->data[0] = 0; + oamt_add_pos2_onto_pos1(sprite); + sprite->data[2] = 5; + sprite->data[4] = 0; + sprite->data[3] = 0; + + StartSpriteAffineAnim(sprite, 1); + } +} + +static void sub_80D2F80(struct Sprite *sprite) +{ + if (++sprite->data[0] > 10) + { + sprite->data[0] = 0; + sprite->callback = sub_80D2FA4; + } +} + +static void sub_80D2FA4(struct Sprite *sprite) +{ + sprite->data[3] += sprite->data[2]; + sprite->pos2.y = sprite->data[3]; + + sprite->data[2]++; + + if (sprite->data[3] > 48 && sprite->data[2] > 0) + { + sprite->data[2] = sprite->data[4] - 5; + sprite->data[4]++; + } + + if (sprite->data[4] > 3) + { + int var1 = sprite->data[2]; + sprite->invisible = var1 - (((s32)(var1 + ((u32)var1 >> 31)) >> 1) << 1); + move_anim_8072740(sprite); + } + + if (sprite->data[4] == 4) + { + move_anim_8072740(sprite); + } +} diff --git a/src/battle/anim/rain.c b/src/battle/anim/rain.c new file mode 100644 index 000000000..b38233e3c --- /dev/null +++ b/src/battle/anim/rain.c @@ -0,0 +1,56 @@ +#include "global.h" +#include "battle_anim.h" +#include "random.h" +#include "sprite.h" +#include "task.h" + +extern s16 gBattleAnimArgs[8]; +extern const struct SpriteTemplate gSpriteTemplate_83D9130[]; + +static void MoveAnimRaindrop(struct Sprite *); + +// rain (spawns and animates raindrops) +// Used in Rain Dance and general rain animation. + +void CreateAnimRaindrops(u8 taskId) +{ + if (gTasks[taskId].data[0] == 0) + { + gTasks[taskId].data[1] = gBattleAnimArgs[0]; + gTasks[taskId].data[2] = gBattleAnimArgs[1]; + gTasks[taskId].data[3] = gBattleAnimArgs[2]; + } + + gTasks[taskId].data[0]++; + + if (gTasks[taskId].data[0] % gTasks[taskId].data[2] == 1) + { + u8 x = Random() % 240; + u8 y = Random() % 80; + CreateSprite(gSpriteTemplate_83D9130, x, y, 4); + } + + if (gTasks[taskId].data[0] == gTasks[taskId].data[3]) + { + DestroyAnimVisualTask(taskId); + } +} + +void SetAnimRaindropCallback(struct Sprite *sprite) +{ + sprite->callback = MoveAnimRaindrop; +} + +static void MoveAnimRaindrop(struct Sprite *sprite) +{ + if (++sprite->data[0] <= 13) + { + sprite->pos2.x++; + sprite->pos2.y += 4; + } + + if (sprite->animEnded) + { + DestroySprite(sprite); + } +} diff --git a/src/battle/anim/scary_face.c b/src/battle/anim/scary_face.c index 9f1dfd7d0..0c5056704 100755 --- a/src/battle/anim/scary_face.c +++ b/src/battle/anim/scary_face.c @@ -6,13 +6,6 @@ #include "decompress.h" #include "palette.h" -struct Struct_sub_8078914 -{ - u8 *field_0; - u8 *field_4; - u8 field_8; -}; - extern s16 gBattleAnimArgs[]; extern u8 gBattleAnimBankAttacker; extern u8 gBattleAnimBankTarget; diff --git a/src/battle/anim/shock.c b/src/battle/anim/shock.c new file mode 100644 index 000000000..35c380f23 --- /dev/null +++ b/src/battle/anim/shock.c @@ -0,0 +1,106 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern struct OamMatrix gOamMatrices[]; + +extern void sub_80DA48C(struct Sprite *); + +// shock (moves the little electricity lines) +// Used in Shock. + +void sub_80D6294(struct Sprite *sprite) +{ + sprite->pos1.x = sub_8077ABC(gBattleAnimBankTarget, 2); + sprite->pos1.y = sub_8077ABC(gBattleAnimBankTarget, 3); + + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->pos1.x -= gBattleAnimArgs[0]; + sprite->pos1.y -= gBattleAnimArgs[1]; + } + else + { + sprite->pos1.x += gBattleAnimArgs[0]; + sprite->pos1.y += gBattleAnimArgs[1]; + } + + sprite->data[0] = 0; + sprite->data[1] = gBattleAnimArgs[2]; + sprite->data[2] = gBattleAnimArgs[3]; + sprite->data[3] = gBattleAnimArgs[4]; + + StoreSpriteCallbackInData(sprite, move_anim_8074EE0); + sprite->callback = sub_8078114; +} + +void sub_80D6328(struct Sprite *sprite) +{ + u8 slot; + u32 matrixNum; + s16 sineVal; + + switch (gBattleAnimArgs[4]) + { + case 0: + slot = gBattleAnimBankAttacker; + break; + case 1: + default: + slot = gBattleAnimBankTarget; + break; + case 2: + if (!IsAnimBankSpriteVisible(gBattleAnimBankAttacker ^ 2)) + { + slot = gBattleAnimBankAttacker; + } + else + { + slot = gBattleAnimBankAttacker ^ 2; + } + break; + case 3: + if (IsAnimBankSpriteVisible(gBattleAnimBankAttacker ^ 2)) + { + slot = gBattleAnimBankTarget ^ 2; + } + else + { + slot = gBattleAnimBankTarget; + } + break; + } + + if (gBattleAnimArgs[5] == 0) + { + sprite->pos1.x = sub_8077ABC(slot, 0); + sprite->pos1.y = sub_8077ABC(slot, 1); + } + else + { + sprite->pos1.x = sub_8077ABC(slot, 2); + sprite->pos1.y = sub_8077ABC(slot, 3); + } + + sprite->pos2.x = (gSineTable[gBattleAnimArgs[0]] * gBattleAnimArgs[1]) >> 8; + sprite->pos2.y = (gSineTable[gBattleAnimArgs[0] + 64] * gBattleAnimArgs[1]) >> 8; + + if (gBattleAnimArgs[6] & 1) + { + sprite->oam.priority = sub_8079ED4(slot) + 1; + } + + matrixNum = sprite->oam.matrixNum; + sineVal = gSineTable[gBattleAnimArgs[2]]; + + gOamMatrices[matrixNum].a = gOamMatrices[matrixNum].d = gSineTable[gBattleAnimArgs[2] + 64]; + gOamMatrices[matrixNum].b = sineVal; + gOamMatrices[matrixNum].c = -sineVal; + + sprite->data[0] = gBattleAnimArgs[3]; + sprite->callback = sub_80DA48C; +} diff --git a/src/battle/anim/sunlight.c b/src/battle/anim/sunlight.c new file mode 100644 index 000000000..f6cb8a077 --- /dev/null +++ b/src/battle/anim/sunlight.c @@ -0,0 +1,17 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" + +// sunlight (creates sunlight orbs) +// Used in Sunny Day + +void sub_80D517C(struct Sprite *sprite) +{ + sprite->pos1.x = 0; + sprite->pos1.y = 0; + sprite->data[0] = 60; + sprite->data[2] = 140; + sprite->data[4] = 80; + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, move_anim_8072740); +} diff --git a/src/battle/anim/thunder.c b/src/battle/anim/thunder.c new file mode 100644 index 000000000..5064148ef --- /dev/null +++ b/src/battle/anim/thunder.c @@ -0,0 +1,36 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern u16 gBattleTypeFlags; + +static void sub_80D6218(struct Sprite *); + +// thunder (positions the lightning bolts) +// Used in Thunder, Thunder Punch, and Tri Attack. + +void sub_80D61C8(struct Sprite *sprite) +{ + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->pos1.x -= gBattleAnimArgs[0]; + } + else + { + sprite->pos1.x += gBattleAnimArgs[0]; + } + + sprite->pos1.y += gBattleAnimArgs[1]; + sprite->callback = sub_80D6218; +} + +static void sub_80D6218(struct Sprite *sprite) +{ + if (sprite->animEnded) + { + move_anim_8072740(sprite); + } +} diff --git a/src/battle/anim/water.c b/src/battle/anim/water.c new file mode 100644 index 000000000..396a4637d --- /dev/null +++ b/src/battle/anim/water.c @@ -0,0 +1,371 @@ +#include "global.h" +#include "battle_anim.h" +#include "rom_8077ABC.h" +#include "trig.h" +#include "util.h" + +extern s16 gBattleAnimArgs[]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; + +static void sub_80D3874(struct Sprite *); + +void sub_80D37FC(struct Sprite *sprite) +{ + sub_8078764(sprite, 1); + + sprite->data[0] = gBattleAnimArgs[4]; + sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[2]; + sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[4]; + + sprite->callback = sub_8078B34; + StoreSpriteCallbackInData(sprite, move_anim_8072740); +} + +void sub_80D3838(struct Sprite *sprite) +{ + if (gBattleAnimArgs[3] != 0) + { + sub_8078764(sprite, 1); + } + else + { + sub_80787B0(sprite, 1); + } + + sprite->data[7] = gBattleAnimArgs[2]; + sprite->callback = sub_80D3874; +} + +static void sub_80D3874(struct Sprite *sprite) +{ + sprite->data[0] = (sprite->data[0] + 11) & 0xFF; + sprite->pos2.x = Sin(sprite->data[0], 4); + + sprite->data[1] += 48; + sprite->pos2.y = -(sprite->data[1] >> 8); + + if (--sprite->data[7] == -1) + { + move_anim_8072740(sprite); + } +} + +__attribute__((naked)) +void sub_80D38BC(u8 taskId) +{ + asm(".syntax unified\n\ + .equ REG_BLDCNT, 0x4000050\n\ + .equ REG_BG1CNT, 0x400000A\n\ + .equ REG_BG1HOFS, 0x4000014\n\ + push {r4-r7,lr}\n\ + mov r7, r10\n\ + mov r6, r9\n\ + mov r5, r8\n\ + push {r5-r7}\n\ + sub sp, 0x14\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + mov r10, r0\n\ + ldr r1, _080D398C @ =REG_BLDCNT\n\ + ldr r2, _080D3990 @ =0x00003f42\n\ + adds r0, r2, 0\n\ + strh r0, [r1]\n\ + adds r1, 0x2\n\ + movs r3, 0x80\n\ + lsls r3, 5\n\ + adds r0, r3, 0\n\ + strh r0, [r1]\n\ + ldr r2, _080D3994 @ =REG_BG1CNT\n\ + ldrb r1, [r2]\n\ + movs r0, 0x4\n\ + negs r0, r0\n\ + ands r0, r1\n\ + movs r1, 0x1\n\ + orrs r0, r1\n\ + strb r0, [r2]\n\ + ldrb r1, [r2, 0x1]\n\ + movs r0, 0x3F\n\ + ands r0, r1\n\ + movs r1, 0x40\n\ + orrs r0, r1\n\ + strb r0, [r2, 0x1]\n\ + mov r0, sp\n\ + bl sub_8078914\n\ + ldr r2, [sp]\n\ + movs r3, 0x80\n\ + lsls r3, 6\n\ + add r6, sp, 0x10\n\ + add r0, sp, 0xC\n\ + mov r12, r0\n\ + movs r5, 0\n\ + ldr r1, _080D3998 @ =0x040000d4\n\ + movs r4, 0x80\n\ + lsls r4, 5\n\ + mov r8, r6\n\ + ldr r7, _080D399C @ =0x85000400\n\ + movs r0, 0x85\n\ + lsls r0, 24\n\ + mov r9, r0\n\ +_080D3920:\n\ + str r5, [sp, 0x10]\n\ + mov r0, r8\n\ + str r0, [r1]\n\ + str r2, [r1, 0x4]\n\ + str r7, [r1, 0x8]\n\ + ldr r0, [r1, 0x8]\n\ + adds r2, r4\n\ + subs r3, r4\n\ + cmp r3, r4\n\ + bhi _080D3920\n\ + str r5, [sp, 0x10]\n\ + str r6, [r1]\n\ + str r2, [r1, 0x4]\n\ + lsrs r0, r3, 2\n\ + mov r2, r9\n\ + orrs r0, r2\n\ + str r0, [r1, 0x8]\n\ + ldr r0, [r1, 0x8]\n\ + movs r0, 0\n\ + mov r3, r12\n\ + strb r0, [r3]\n\ + strb r0, [r3]\n\ + ldr r1, [sp, 0x4]\n\ + movs r0, 0\n\ + str r0, [sp, 0x10]\n\ + ldr r0, _080D3998 @ =0x040000d4\n\ + str r6, [r0]\n\ + str r1, [r0, 0x4]\n\ + ldr r1, _080D399C @ =0x85000400\n\ + str r1, [r0, 0x8]\n\ + ldr r0, [r0, 0x8]\n\ + bl NotInBattle\n\ + lsls r0, 24\n\ + cmp r0, 0\n\ + bne _080D39B8\n\ + ldr r2, _080D3994 @ =REG_BG1CNT\n\ + ldrb r1, [r2]\n\ + movs r0, 0xD\n\ + negs r0, r0\n\ + ands r0, r1\n\ + movs r1, 0x4\n\ + orrs r0, r1\n\ + strb r0, [r2]\n\ + ldr r0, _080D39A0 @ =gBattleAnimBankAttacker\n\ + ldrb r0, [r0]\n\ + bl GetBankSide\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + cmp r0, 0x1\n\ + bne _080D39A8\n\ + ldr r0, _080D39A4 @ =gUnknown_08E70968\n\ + b _080D39AA\n\ + .align 2, 0\n\ +_080D398C: .4byte REG_BLDCNT\n\ +_080D3990: .4byte 0x00003f42\n\ +_080D3994: .4byte REG_BG1CNT\n\ +_080D3998: .4byte 0x040000d4\n\ +_080D399C: .4byte 0x85000400\n\ +_080D39A0: .4byte gBattleAnimBankAttacker\n\ +_080D39A4: .4byte gUnknown_08E70968\n\ +_080D39A8:\n\ + ldr r0, _080D39B4 @ =gUnknown_08E70C38\n\ +_080D39AA:\n\ + ldr r1, [sp, 0x4]\n\ + bl LZDecompressVram\n\ + b _080D39CE\n\ + .align 2, 0\n\ +_080D39B4: .4byte gUnknown_08E70C38\n\ +_080D39B8:\n\ + ldr r0, _080D39F0 @ =gUnknown_08E70F0C\n\ + ldr r1, [sp, 0x4]\n\ + bl LZDecompressVram\n\ + mov r0, sp\n\ + ldrb r0, [r0, 0x8]\n\ + ldr r1, [sp, 0x4]\n\ + movs r2, 0\n\ + movs r3, 0x1\n\ + bl sub_80763FC\n\ +_080D39CE:\n\ + ldr r0, _080D39F4 @ =gBattleAnimBackgroundImage_Surf\n\ + ldr r1, [sp]\n\ + bl LZDecompressVram\n\ + ldr r0, _080D39F8 @ =gBattleAnimArgs\n\ + movs r1, 0\n\ + ldrsh r0, [r0, r1]\n\ + cmp r0, 0\n\ + bne _080D3A00\n\ + ldr r0, _080D39FC @ =gBattleAnimBackgroundPalette_Surf\n\ + mov r1, sp\n\ + ldrb r1, [r1, 0x8]\n\ + lsls r1, 4\n\ + movs r2, 0x20\n\ + bl LoadCompressedPalette\n\ + b _080D3A0E\n\ + .align 2, 0\n\ +_080D39F0: .4byte gUnknown_08E70F0C\n\ +_080D39F4: .4byte gBattleAnimBackgroundImage_Surf\n\ +_080D39F8: .4byte gBattleAnimArgs\n\ +_080D39FC: .4byte gBattleAnimBackgroundPalette_Surf\n\ +_080D3A00:\n\ + ldr r0, _080D3A78 @ =gBattleAnimBackgroundImageMuddyWater_Pal\n\ + mov r1, sp\n\ + ldrb r1, [r1, 0x8]\n\ + lsls r1, 4\n\ + movs r2, 0x20\n\ + bl LoadCompressedPalette\n\ +_080D3A0E:\n\ + ldr r0, _080D3A7C @ =sub_80D3D68\n\ + ldr r4, _080D3A80 @ =gTasks\n\ + mov r2, r10\n\ + lsls r5, r2, 2\n\ + adds r1, r5, r2\n\ + lsls r1, 3\n\ + adds r6, r1, r4\n\ + ldrb r1, [r6, 0x7]\n\ + adds r1, 0x1\n\ + lsls r1, 24\n\ + lsrs r1, 24\n\ + bl CreateTask\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + mov r8, r0\n\ + movs r3, 0\n\ + mov r9, r3\n\ + mov r0, r8\n\ + strh r0, [r6, 0x26]\n\ + mov r1, r8\n\ + lsls r0, r1, 2\n\ + add r0, r8\n\ + lsls r0, 3\n\ + adds r7, r0, r4\n\ + mov r2, r9\n\ + strh r2, [r7, 0x8]\n\ + movs r0, 0x80\n\ + lsls r0, 5\n\ + strh r0, [r7, 0xA]\n\ + strh r0, [r7, 0xC]\n\ + bl NotInBattle\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0\n\ + beq _080D3A94\n\ + ldr r3, _080D3A84 @ =0x0000ffb0\n\ + adds r0, r3, 0\n\ + ldr r1, _080D3A88 @ =gUnknown_030042C0\n\ + strh r0, [r1]\n\ + ldr r2, _080D3A8C @ =0x0000ffd0\n\ + adds r0, r2, 0\n\ + ldr r3, _080D3A90 @ =gUnknown_030041B4\n\ + strh r0, [r3]\n\ + movs r0, 0x2\n\ + strh r0, [r6, 0x8]\n\ + movs r0, 0x1\n\ + strh r0, [r6, 0xA]\n\ + mov r0, r9\n\ + strh r0, [r7, 0xE]\n\ + b _080D3AEE\n\ + .align 2, 0\n\ +_080D3A78: .4byte gBattleAnimBackgroundImageMuddyWater_Pal\n\ +_080D3A7C: .4byte sub_80D3D68\n\ +_080D3A80: .4byte gTasks\n\ +_080D3A84: .4byte 0x0000ffb0\n\ +_080D3A88: .4byte gUnknown_030042C0\n\ +_080D3A8C: .4byte 0x0000ffd0\n\ +_080D3A90: .4byte gUnknown_030041B4\n\ +_080D3A94:\n\ + ldr r0, _080D3AC4 @ =gBattleAnimBankAttacker\n\ + ldrb r0, [r0]\n\ + bl GetBankSide\n\ + lsls r0, 24\n\ + lsrs r1, r0, 24\n\ + cmp r1, 0x1\n\ + bne _080D3AD8\n\ + ldr r2, _080D3AC8 @ =0x0000ff20\n\ + adds r0, r2, 0\n\ + ldr r3, _080D3ACC @ =gUnknown_030042C0\n\ + strh r0, [r3]\n\ + movs r2, 0x80\n\ + lsls r2, 1\n\ + adds r0, r2, 0\n\ + ldr r3, _080D3AD0 @ =gUnknown_030041B4\n\ + strh r0, [r3]\n\ + movs r0, 0x2\n\ + strh r0, [r6, 0x8]\n\ + ldr r0, _080D3AD4 @ =0x0000ffff\n\ + strh r0, [r6, 0xA]\n\ + strh r1, [r7, 0xE]\n\ + b _080D3AEE\n\ + .align 2, 0\n\ +_080D3AC4: .4byte gBattleAnimBankAttacker\n\ +_080D3AC8: .4byte 0x0000ff20\n\ +_080D3ACC: .4byte gUnknown_030042C0\n\ +_080D3AD0: .4byte gUnknown_030041B4\n\ +_080D3AD4: .4byte 0x0000ffff\n\ +_080D3AD8:\n\ + ldr r0, _080D3B1C @ =gUnknown_030042C0\n\ + strh r4, [r0]\n\ + ldr r1, _080D3B20 @ =0x0000ffd0\n\ + adds r0, r1, 0\n\ + ldr r2, _080D3B24 @ =gUnknown_030041B4\n\ + strh r0, [r2]\n\ + ldr r0, _080D3B28 @ =0x0000fffe\n\ + strh r0, [r6, 0x8]\n\ + movs r0, 0x1\n\ + strh r0, [r6, 0xA]\n\ + strh r4, [r7, 0xE]\n\ +_080D3AEE:\n\ + ldr r1, _080D3B2C @ =REG_BG1HOFS\n\ + ldr r3, _080D3B1C @ =gUnknown_030042C0\n\ + ldrh r0, [r3]\n\ + strh r0, [r1]\n\ + adds r1, 0x2\n\ + ldr r2, _080D3B24 @ =gUnknown_030041B4\n\ + ldrh r0, [r2]\n\ + strh r0, [r1]\n\ + ldr r1, _080D3B30 @ =gTasks\n\ + mov r3, r8\n\ + lsls r0, r3, 2\n\ + add r0, r8\n\ + lsls r0, 3\n\ + adds r2, r0, r1\n\ + movs r3, 0xE\n\ + ldrsh r0, [r2, r3]\n\ + cmp r0, 0\n\ + bne _080D3B34\n\ + movs r0, 0x30\n\ + strh r0, [r2, 0x10]\n\ + movs r0, 0x70\n\ + b _080D3B38\n\ + .align 2, 0\n\ +_080D3B1C: .4byte gUnknown_030042C0\n\ +_080D3B20: .4byte 0x0000ffd0\n\ +_080D3B24: .4byte gUnknown_030041B4\n\ +_080D3B28: .4byte 0x0000fffe\n\ +_080D3B2C: .4byte REG_BG1HOFS\n\ +_080D3B30: .4byte gTasks\n\ +_080D3B34:\n\ + movs r0, 0\n\ + strh r0, [r2, 0x10]\n\ +_080D3B38:\n\ + strh r0, [r2, 0x12]\n\ + mov r2, r10\n\ + adds r0, r5, r2\n\ + lsls r0, 3\n\ + adds r0, r1\n\ + movs r1, 0x1\n\ + strh r1, [r0, 0x14]\n\ + ldr r1, _080D3B5C @ =sub_80D3B60\n\ + str r1, [r0]\n\ + add sp, 0x14\n\ + pop {r3-r5}\n\ + mov r8, r3\n\ + mov r9, r4\n\ + mov r10, r5\n\ + pop {r4-r7}\n\ + pop {r0}\n\ + bx r0\n\ + .align 2, 0\n\ +_080D3B5C: .4byte sub_80D3B60\n\ + .syntax divided\n"); +} diff --git a/src/battle/anim/wisp_orb.c b/src/battle/anim/wisp_orb.c new file mode 100644 index 000000000..0e13fa119 --- /dev/null +++ b/src/battle/anim/wisp_orb.c @@ -0,0 +1,105 @@ +#include "global.h" +#include "battle_anim.h" +#include "constants/songs.h" +#include "rom_8077ABC.h" +#include "sound.h" +#include "trig.h" + +extern s16 gBattleAnimArgs[8]; +extern u8 gBattleAnimBankAttacker; +extern u8 gBattleAnimBankTarget; +extern u16 gBattleTypeFlags; +extern u8 gUnknown_0202F7D2; + +static void sub_80D5C5C(struct Sprite *); + +// wisp_orb (animates the wisp orbs) +// Used in Will-O-Wisp + +void sub_80D5B0C(struct Sprite *sprite) +{ + switch (sprite->data[0]) + { + case 0: + sub_80787B0(sprite, 0); + StartSpriteAnim(sprite, gBattleAnimArgs[2]); + sprite->data[7] = gBattleAnimArgs[2]; + + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->data[4] = 4; + } + else + { + sprite->data[4] = -4; + } + + sprite->oam.priority = sub_8079ED4(gBattleAnimBankTarget); + sprite->data[0]++; + break; + case 1: + sprite->data[1] += 192; + if (GetBankSide(gBattleAnimBankAttacker) != 0) + { + sprite->pos2.y = -(sprite->data[1] >> 8); + } + else + { + sprite->pos2.y = sprite->data[1] >> 8; + } + + sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]); + sprite->data[2] = (sprite->data[2] + 4) & 0xFF; + + if (++sprite->data[3] == 1) + { + sprite->data[3] = 0; + sprite->data[0]++; + } + break; + case 2: + sprite->pos2.x = Sin(sprite->data[2], sprite->data[4]); + sprite->data[2] = (sprite->data[2] + 4) & 0xFF; + + if (++sprite->data[3] == 31) + { + sprite->pos1.x += sprite->pos2.x; + sprite->pos1.y += sprite->pos2.y; + sprite->pos2.y = 0; + sprite->pos2.x = 0; + + sprite->data[0] = 256; + sprite->data[1] = sprite->pos1.x; + sprite->data[2] = sub_8077ABC(gBattleAnimBankTarget, 2); + sprite->data[3] = sprite->pos1.y; + sprite->data[4] = sub_8077ABC(gBattleAnimBankTarget, 3); + + sub_8078BD4(sprite); + sprite->callback = sub_80D5C5C; + } + break; + } +} + +static void sub_80D5C5C(struct Sprite *sprite) +{ + s16 initialData5; + s16 newData5; + + if (!sub_8078B5C(sprite)) + { + sprite->pos2.x += Sin(sprite->data[5], 16); + initialData5 = sprite->data[5]; + sprite->data[5] = (sprite->data[5] + 4) & 0xFF; + newData5 = sprite->data[5]; + + if ((initialData5 == 0 || initialData5 > 196) && newData5 > 0 && sprite->data[7] == 0) + { + PlaySE12WithPanning(SE_W172, gUnknown_0202F7D2); + } + } + else + { + move_anim_8072740(sprite); + } +} diff --git a/src/battle/battle_controller_player.c b/src/battle/battle_controller_player.c index 653f0938c..c2d34db0d 100644 --- a/src/battle/battle_controller_player.c +++ b/src/battle/battle_controller_player.c @@ -162,7 +162,7 @@ extern u8 gUnknown_0300434C[]; extern u8 gUnknown_0202E8F4; extern u8 gUnknown_0202E8F5; extern u8 gUnknown_02038470[]; -extern u16 gScriptItemId; +extern u16 gSpecialVar_ItemId; extern u8 gDisplayedStringBattle[]; extern const u8 BattleText_LinkStandby[]; @@ -1522,7 +1522,7 @@ void sub_802E03C(void) { if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) { - Emitcmd35(1, gScriptItemId); + Emitcmd35(1, gSpecialVar_ItemId); PlayerBufferExecCompleted(); } } diff --git a/src/battle/battle_controller_safari.c b/src/battle/battle_controller_safari.c index 3dcfca948..6f6286945 100644 --- a/src/battle/battle_controller_safari.c +++ b/src/battle/battle_controller_safari.c @@ -31,7 +31,7 @@ extern u8 gObjectBankIDs[]; extern struct SpriteTemplate gUnknown_02024E8C; extern u16 gBattleTypeFlags; extern u32 gBattleExecBuffer; -extern u16 gScriptItemId; +extern u16 gSpecialVar_ItemId; extern MainCallback gPreBattleCallback1; extern u8 gBankInMenu; extern u8 gHealthboxIDs[]; @@ -315,7 +315,7 @@ void sub_812B758(void) { if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) { - Emitcmd35(1, gScriptItemId); + Emitcmd35(1, gSpecialVar_ItemId); SafariBufferExecCompleted(); } } diff --git a/src/battle/battle_controller_wally.c b/src/battle/battle_controller_wally.c index 0d698d9a5..d81c43381 100644 --- a/src/battle/battle_controller_wally.c +++ b/src/battle/battle_controller_wally.c @@ -367,7 +367,7 @@ void sub_81374FC(void) if (gMain.callback2 == sub_800F808 && !gPaletteFade.active) { - Emitcmd35(1, gScriptItemId); + Emitcmd35(1, gSpecialVar_ItemId); WallyBufferExecCompleted(); } } diff --git a/src/battle/battle_party_menu.c b/src/battle/battle_party_menu.c index 5decf8a7b..d4dcae0ca 100644 --- a/src/battle/battle_party_menu.c +++ b/src/battle/battle_party_menu.c @@ -426,7 +426,7 @@ bool8 SetUpBattlePartyMenu(void) case 10: if (gUnknown_02038473 == 3) { - if (GetItemEffectType(gScriptItemId) == 10) + if (GetItemEffectType(gSpecialVar_ItemId) == 10) ewram1B000.promptTextId = 0xFF; else ewram1B000.promptTextId = 3; @@ -464,9 +464,9 @@ void HandleBattlePartyMenu(u8 taskId) { if (!gPaletteFade.active) { - if (gUnknown_02038473 == 3 && GetItemEffectType(gScriptItemId) == 10) + if (gUnknown_02038473 == 3 && GetItemEffectType(gSpecialVar_ItemId) == 10) { - gUnknown_03004AE4(taskId, gScriptItemId, Task_80952E4); + gUnknown_03004AE4(taskId, gSpecialVar_ItemId, Task_80952E4); return; } @@ -480,7 +480,7 @@ void HandleBattlePartyMenu(u8 taskId) else { sub_806D5A4(); - gUnknown_03004AE4(taskId, gScriptItemId, Task_80952E4); + gUnknown_03004AE4(taskId, gSpecialVar_ItemId, Task_80952E4); } } else diff --git a/src/battle/battle_setup.c b/src/battle/battle_setup.c index 6baf47dee..f71aad090 100644 --- a/src/battle/battle_setup.c +++ b/src/battle/battle_setup.c @@ -33,7 +33,7 @@ #include "text.h" #include "trainer.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern void (*gFieldCallback)(void); @@ -48,7 +48,7 @@ EWRAM_DATA static u8 *sTrainerBattleScriptRetAddr = NULL; EWRAM_DATA static u8 *sTrainerBattleEndScript = NULL; extern u16 gBattleTypeFlags; -extern u16 gScriptLastTalked; +extern u16 gSpecialVar_LastTalked; extern u8 gBattleOutcome; extern struct MapObject gMapObjects[]; @@ -858,8 +858,8 @@ static void CB2_GiveStarter(void) { u16 starterPoke; - *GetVarPointer(0x4023) = gScriptResult; - starterPoke = GetStarterPokemon(gScriptResult); + *GetVarPointer(0x4023) = gSpecialVar_Result; + starterPoke = GetStarterPokemon(gSpecialVar_Result); ScriptGiveMon(starterPoke, 5, 0, 0, 0, 0); ResetTasks(); sub_80408BC(); @@ -980,7 +980,7 @@ static void battle_80801F0(void) { if (sTrainerMapObjectLocalId) { - gScriptLastTalked = sTrainerMapObjectLocalId; + gSpecialVar_LastTalked = sTrainerMapObjectLocalId; gSelectedMapObject = GetFieldObjectIdByLocalIdAndMap(sTrainerMapObjectLocalId, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); } } @@ -1029,7 +1029,7 @@ u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data) void TrainerWantsBattle(u8 trainerMapObjId, u8 *trainerScript) { gSelectedMapObject = trainerMapObjId; - gScriptLastTalked = gMapObjects[trainerMapObjId].localId; + gSpecialVar_LastTalked = gMapObjects[trainerMapObjId].localId; BattleSetup_ConfigureTrainerBattle(trainerScript + 1); ScriptContext1_SetupScript(gUnknown_0819F80B); ScriptContext2_Enable(); diff --git a/src/battle/reshow_battle_screen.c b/src/battle/reshow_battle_screen.c index 14f465352..03b5660fe 100644 --- a/src/battle/reshow_battle_screen.c +++ b/src/battle/reshow_battle_screen.c @@ -198,15 +198,9 @@ static void CB2_ReshowBattleScreenAfterMenu(void) static void sub_807B06C(void) { - struct BGCntrlBitfield *regBgcnt1, *regBgcnt2; - sub_800D6D4(); - - regBgcnt1 = (void*)(®_BG1CNT); - regBgcnt1->charBaseBlock = 0; - - regBgcnt2 = (void*)(®_BG2CNT); - regBgcnt2->charBaseBlock = 0; + ((vBgCnt *)®_BG1CNT)->charBaseBlock = 0; + ((vBgCnt *)®_BG2CNT)->charBaseBlock = 0; } static bool8 LoadAppropiateBankSprite(u8 bank) diff --git a/src/contest.c b/src/contest.c new file mode 100644 index 000000000..3aa3c8f59 --- /dev/null +++ b/src/contest.c @@ -0,0 +1,5542 @@ +#include "global.h" +#include "constants/items.h" +#include "constants/map_objects.h" +#include "constants/moves.h" +#include "constants/songs.h" +#include "constants/species.h" +#include "battle.h" +#include "battle_anim.h" +#include "blend_palette.h" +#include "contest.h" +#include "contest_link_80C857C.h" +#include "data2.h" +#include "decompress.h" +#include "ewram.h" +#include "graphics.h" +#include "link.h" +#include "m4a.h" +#include "main.h" +#include "menu.h" +#include "menu_cursor.h" +#include "overworld.h" +#include "palette.h" +#include "random.h" +#include "rom_8077ABC.h" +#include "script.h" +#include "sound.h" +#include "sprite.h" +#include "string_util.h" +#include "task.h" +#include "text.h" +#include "tv.h" +#include "unknown_task.h" +#include "util.h" + +extern u8 AreMovesContestCombo(u16, u16); // I don't think this is a bool +extern void sub_80C8A38(u8); +extern void sub_80C8AD0(u8); +extern void sub_80C8C80(u8); +extern void sub_81288F4(); +extern u8 sub_8128944(void); + +struct Shared18000 +{ + /*0x18000*/ u8 unk18000; + /*0x18001*/ u8 filler18001[3]; + /*0x18004*/ u16 unk18004[16][16]; + /*0x18204*/ u16 unk18204[0x200]; + /*0x18604*/ u16 unk18604[0x200]; + /*0x18A04*/ u8 unk18A04[0x800]; +}; + +struct Contest +{ + /*0x19204*/ u8 playerMoveChoice; + /*0x19205*/ u8 turnNumber; + /*0x19206*/ u8 unk19206[4]; // seems to only be used by an unref function + /*0x1920A*/ u16 unk1920A_0:1; // Task active flags? + u16 unk1920A_1:1; + u16 unk1920A_2:1; + u16 unk1920A_3:1; + u16 unk1920A_4:1; + u16 unk1920A_5:1; + u16 unk1920A_6:1; + u16 unk1920A_7:1; + /*0x1920B*/ u16 unk1920B_0:1; + u16 unk1920B_1:1; + u16 unk1920B_2:1; + /*0x1920C*/ u8 mainTaskId; + /*0x1920D*/ u8 unk1920D[4]; + /*0x19211*/ u8 unk19211; + /*0x19212*/ u8 unk19212; + /*0x19213*/ u8 filler19213; + /*0x19214*/ u8 unk19214; + /*0x19215*/ u8 unk19215; + /*0x19216*/ u8 unk19216; // sprite ID + /*0x19217*/ s8 applauseLevel; + /*0x19218*/ u8 unk19218[4]; + /*0x1921C*/ u32 unk1921C; // saved RNG value? + u16 unk19220[5][4]; // move history? + u8 unk19248[5][4]; // excitement history + u8 applauseMeterSpriteId; // sprite ID + /*0x1925D*/ u8 unk1925D; + /*0x1925E*/ u8 unk1925E; +}; + +struct ContestantStatus +{ + s16 appeal1; // move appeal? + s16 appeal2; // final appeal after end of turn, maybe? + s16 unk4; + u16 currMove; + u16 prevMove; + u8 moveCategory; + u8 unkB_0:2; + u8 unkB_2:2; + u8 moveRepeatCount:3; + u8 unkB_7:1; // used a one-time move? + u8 unkC_0:1; + u8 unkC_1:2; + s8 unkD; + u8 unkE; + u8 unkF; + u8 unk10_0:1; + u8 unk10_1:1; + u8 unk10_2:1; + u8 unk10_3:1; + u8 unk10_4:2; + u8 unk10_6:2; + u8 unk11_0:2; + u8 unk11_2:1; + u8 unk11_3:1; + u8 unk11_4:1; + u8 unk11_5:1; + u8 unk12; + u8 unk13; // status action? + u8 unk14; + u8 disappointedRepeat:1; + u8 unk15_1:1; + u8 unk15_2:1; + u8 unk15_3:1; + u8 unk15_4:1; + u8 unk15_5:1; + u8 unk15_6:1; + u8 unk16; + u8 unk17; + u8 unk18; + u8 unk19; // turn position + u8 attentionLevel; // How much the Pokemon "stood out" + u8 unk1B; +}; + +struct UnknownContestStruct3 +{ + u8 unk0; + u8 unk1; + //u8 unk2_0:1; + //u8 unk2_1:1; + u8 unk2; // maybe a bitfield + u8 filler3; +}; + +// possibly the same as UnknownContestStruct3? +struct UnknownContestStruct4 +{ + u8 unk0; // sprite ID + u8 unk1; // sprite ID + u8 unk2_0:1; + u8 unk2_1:1; + u8 unk2_2:1; + u8 filler3; +}; + +struct UnknownContestStruct5 +{ + s8 bits_0; // current move excitement? + u8 bits_8:1; + u8 bits_9:3; + u8 bits_C:4; + s8 unk2; + u8 filler3; +}; + +struct UnknownContestStruct7 +{ + u8 unk0[4]; + u16 unk4; + u16 unk6; + u8 filler8[0xD-8]; + u8 unkD[4]; + u8 unk11; + u8 filler12[2]; +}; + +struct UnknownContestStruct8 +{ + u16 unk0; + u16 unk2; + u8 unk4_0:1; + u8 unk5; + u8 filler6[2]; + u32 unk8; + u32 unkC; + u32 unk10; +}; + +struct UnknownContestStruct6 +{ + s32 unk0; + s32 unk4; + s32 unk8; + s32 unkC; +}; + +#define shared15800 (gSharedMem + 0x15800) +#define shared15DE0 (*(struct ContestWinner *)(gSharedMem + 0x15DE0)) +#define shared16800 (gSharedMem + 0x16800) +#define shared18000 (*(struct Shared18000 *)(gSharedMem + 0x18000)) +#define shared18004 ((u16 *)(gSharedMem + 0x18004)) +#define sContest (*(struct Contest *)(gSharedMem + 0x19204)) +#define sContestantStatus ((struct ContestantStatus *)(gSharedMem + 0x19260)) +#define shared192D0_ (*(struct UnknownContestStruct7 *)(gSharedMem + 0x192D0)) +#define shared192E4 (gSharedMem + 0x192E4) +#define shared19328 (*(struct UnknownContestStruct5 *)(gSharedMem + 0x19328)) +#define shared19338 ((struct UnknownContestStruct4 *)(gSharedMem + 0x19338)) +#define shared19348_ (*(struct UnknownContestStruct8 *)(gSharedMem + 0x19348)) + +extern struct MusicPlayerInfo gMPlay_SE1; +extern u16 gSpecialVar_ContestCategory; +extern u16 gSpecialVar_ContestRank; +extern u8 gBattleMonForms[]; +extern u8 gDisplayedStringBattle[]; +extern u16 gBattleTypeFlags; +extern u8 gBankAttacker; +extern u8 gBankTarget; +extern u8 gBanksBySide[]; +extern u8 gObjectBankIDs[]; +extern u8 gIsLinkContest; +extern u8 gContestPlayerMonIndex; +extern u16 gUnknown_030041B0; +extern s16 gUnknown_030041B4; +extern u16 gUnknown_030041B8; +extern u16 gUnknown_03004200; +extern struct Window gUnknown_03004210; +extern u16 gUnknown_03004240; +extern u16 gUnknown_03004244; +extern u16 gUnknown_03004280; +extern u16 gUnknown_03004288; +extern u16 gUnknown_030042A0; +extern u16 gUnknown_030042A4; +extern u16 gUnknown_030042C0; +extern u16 gUnknown_030042C4; +extern u32 gUnknown_03005D28; // saved RNG value + +extern s16 gUnknown_02038680[]; +extern u16 gUnknown_02038688[]; +extern u8 gUnknown_02038694; +extern u8 gUnknown_02038696[]; +extern u8 gUnknown_0203869B; +extern s16 gUnknown_02038670[]; +extern s16 gUnknown_02038678[]; +extern u8 gContestFinalStandings[]; // What "place" each participant came in. +extern struct SpriteTemplate gUnknown_02024E8C; + + +extern const struct ContestPokemon gContestOpponents[60]; +extern const u8 gUnknown_083CA308[][2]; +extern const u8 gUnknown_083CA310[][2]; +extern const u8 gUnknown_083CA318[][2]; +extern const u8 gUnknown_083CA330[][2]; +extern const u8 gUnknown_083CA338[]; +extern const u8 gUnknown_083CA33C[]; +extern const u8 gUnknown_083CA340[][4]; +extern const struct SpriteSheet gUnknown_083CA350; +extern const struct SpriteTemplate gSpriteTemplate_83CA3AC; +extern const struct CompressedSpriteSheet gUnknown_083CA3C4[]; +extern const struct SpritePalette gUnknown_083CA3E4; +extern const struct SpriteTemplate gSpriteTemplate_83CA3F4[]; +extern const struct SubspriteTable gSubspriteTables_83CA464[]; +extern const struct CompressedSpriteSheet gUnknown_083CA46C; +extern const struct SpritePalette gUnknown_083CA474; +extern const struct SpriteTemplate gSpriteTemplate_83CA484; +extern const struct SpriteTemplate gSpriteTemplate_83CA4A4; +extern const struct CompressedSpriteSheet gUnknown_083CA4BC; +extern const struct CompressedSpriteSheet gUnknown_083CA4C4; +extern const struct CompressedSpritePalette gUnknown_083CA4CC; +extern const struct SpriteTemplate gUnknown_083CA4D4; +extern const struct CompressedSpriteSheet gUnknown_083CC3AC; +extern const struct CompressedSpritePalette gUnknown_083CC3B4[]; +extern const struct SpriteTemplate gSpriteTemplate_83CC454[]; +extern const u8 gText_Contest_WhichMoveWillBePlayed[]; +extern const u8 gText_Contest_ButItCantParticipate[]; +extern const u8 gUnknown_083CAFD7[]; +extern const u8 gUnknown_083CB00D[]; +extern const u8 ContestString_JudgeExpectantly2[]; +extern const u8 ContestString_WentOverWell[]; +extern const u8 ContestString_WentOverVeryWell[]; +extern const u8 ContestString_AppealComboExcellently[]; +extern const u8 gUnknown_083CBF60[]; +extern const u8 gUnknown_083CB02C[]; +extern const u8 *const gContestStandOutStrings[]; +extern const u8 ContestString_DissapointedRepeat[]; +extern const u8 ContestString_WentOverGreat[]; +extern const u8 ContestString_DidntGoWell[]; +extern const u8 ContestString_GotCrowdGoing[]; +extern const u8 ContestString_CantAppealNextTurn[]; +extern const u8 ContestString_CrowdWatches[]; +extern const u8 ContestString_Ignored2[]; +extern const u8 *const gUnknown_083CC188[]; +extern const u8 gText_Contest_Shyness[]; +extern const u8 gText_Contest_Anxiety[]; +extern const u8 gText_Contest_Laziness[]; +extern const u8 gText_Contest_Hesitancy[]; +extern const u8 gText_Contest_Fear[]; +extern const u8 *const gContestCategoryStrings[]; +extern const u8 gUnknown_083CC2EC[]; +extern const u8 *const gUnknown_083CC330[]; +extern const u8 gUnknownText_UnknownFormatting2[]; +extern const u8 gUnknownText_UnknownFormatting3[]; +extern const u8 gUnknown_083CC59C[]; +extern const u8 gUnknown_083CC5A2[]; +extern const u16 gUnknown_083CC5A4[]; +extern const struct ContestWinner gUnknown_083CC5D0[]; +extern const u8 gUnknownText_MissedTurn[]; +extern const u8 gUnknownText_LinkStandbyAndWinner[]; +extern void (*const gContestEffectFuncs[])(void); +extern const s8 gContestExcitementTable[][5]; + +void sub_80AB350(void); +void sub_80AB5D4(u8); +void sub_80AB604(u8); +void sub_80AB678(u8); +void sub_80AB694(u8); +void sub_80AB6B4(u8); +u8 sub_80AB70C(u8 *); +void sub_80AB960(u8); +void sub_80AB9A0(u8); +void ContestMainCallback2(void); +void ContestVBlankCallback(void); +void sub_80ABB70(u8); +void sub_80ABC3C(u8); +void sub_80ABC70(u8); +void sub_80ABCDC(u8); +void sub_80ABEA0(u8); +void sub_80AC0AC(s8); +void nullsub_17(s8); +void sub_80AC0C8(u8); +void sub_80AC15C(u8); +void sub_80AC188(u8); +void sub_80AC204(u8); +void sub_80AC250(u8); +void sub_80AC284(u8); +void sub_80AC2CC(u8); +void sub_80AD8DC(u8); +void sub_80AD8FC(struct Sprite *); +void sub_80AD92C(struct Sprite *); +void sub_80AD960(u8); +void sub_80ADA1C(u8); +void sub_80ADA4C(u8); +void sub_80ADAD8(u8); +void sub_80ADB04(u8); +void sub_80ADB48(u8); +void sub_80ADB88(u8); +void sub_80ADC10(u8); +void sub_80ADC4C(u8); +void sub_80ADC84(u8); +void sub_80ADCB4(u8); +void sub_80ADD04(u8); +void sub_80ADD74(u8); +void sub_80ADDA4(u8); +void sub_80ADE54(u8); +void sub_80ADEAC(u8); +void sub_80ADEEC(u8); +void sub_80ADF4C(u8); +void sub_80ADF98(u8); +void sub_80ADFD8(u8); +void sub_80AE010(void); +void InsertStringDigit(u8 *, s32); +bool8 sub_80AE074(void); +void sub_80AEB4C(void *); +void sub_80AE5BC(u8); +void sub_80AE5D4(u8, u8); +void sub_80AE6CC(u8); +void sub_80AE6E4(u8, u8); +u8 CreateJudgeSprite(void); +u8 sub_80AE8B4(void); +u8 sub_80AE9FC(u16, u32, u32); +bool8 sub_80AEB1C(u16); +void sub_80AEB30(void); +void sub_80AEBEC(u16); +void sub_80AED58(void); +bool8 sub_80AEE54(u8, u8); +bool8 sub_80AF038(u8); +void sub_80AF120(void); +void sub_80AF138(void); +u16 GetChosenMove(u8); +void sub_80AF1B8(void); +void sub_80AF2A0(u8); +void sub_80AF2FC(void); +void sub_80AF3C0(void); +bool8 Contest_IsMonsTurnDisabled(u8); +s16 sub_80AF688(u8); +void DetermineFinalStandings(void); +bool8 sub_80AF828(s32, s32, struct UnknownContestStruct6 *); +void sub_80AF860(void); +void sub_80AF94C(u8); +void sub_80AFA5C(void); +u16 sub_80AFB40(u8); +s8 sub_80AFB74(s16); +u8 sub_80AFBA0(s16, s16, u8); +void sub_80AFC74(u8); +void sub_80AFE30(void); +void sub_80AFF10(void); +bool8 sub_80AFF28(void); +void sub_80AFF60(struct Sprite *); +void sub_80AFFE0(bool8); +void sub_80B0034(void); +void CreateApplauseMeterSprite(void); +void nullsub_18(s8); +void sub_80B0238(struct Sprite *); +void sub_80B0280(struct Sprite *); +void sub_80B02A8(struct Sprite *); +void sub_80B02F4(struct Sprite *); +void sub_80B0324(void); +void sub_80B03A8(u8); +void sub_80B03D8(u8); +void sub_80B0458(u8); +void sub_80B0518(void); +void sub_80B0548(u8); +void sub_80B05A4(u8); +void nullsub_19(int); +void sub_80B05FC(u8); +void sub_80B0748(u8); +void sub_80B09B0(u8); +u8 sub_80B09E4(u8); +void sub_80B0BC4(u8, bool8); +void sub_80B0C5C(struct Sprite *); +void sub_80B0CB0(struct Sprite *); +void sub_80B0CDC(u8, int); +void sub_80B0D7C(void); +void sub_80B1118(void); +void sub_80B114C(u8); +void sub_80B146C(u8, u8); +void sub_80B159C(void); +void sub_80B1710(u8); +void sub_80B1928(void); +s8 Contest_GetMoveExcitement(u16); +u8 sub_80B1A2C(void); +void c3_08130B10(u8); +void sub_80B1B14(void); +void sub_80B1B68(u8); +void sub_80B1BDC(void); +void sub_80B1C34(u8); +void sub_80B1CBC(s8); +void sub_80B1CFC(u8); +void sub_80B1DDC(void); +void sub_80B1DFC(u8); +void sub_80B1EA8(s8, s8); +void sub_80B1F4C(u8); +void sub_80B1FD0(bool8); +const u8 *GetTurnOrderNumberGfx(u8); +void sub_80B20C4(void); +bool8 sub_80B214C(u8); +void sub_80B2184(void); +void sub_80B2280(void); +void sub_80B237C(u8); +void sub_80B23BC(u8); +void sub_80B2400(u8); +void sub_80B253C(u8); +void sub_80B25A4(u8); +void sub_80B25E4(u8); +void sub_80B26C8(u8); +u16 SanitizeMove(u16); +u16 SanitizeSpecies(u16); +void sub_80B2790(u8); +void sub_80B28CC(int); +void sub_80B28F0(u8); +void sub_80B292C(void); +void sub_80B2968(void); +void SelectContestMoveBankTarget(u16); + + +void nullsub_89(u8 taskId) +{ +} + +void ResetLinkContestBoolean(void) +{ + gIsLinkContest = FALSE; +} + +void ResetContestGpuRegs(void) +{ + u16 savedIme; + + REG_DISPCNT = 0x40; + savedIme = REG_IME; + REG_IME = 0; + REG_IE |= INTR_FLAG_VBLANK; + REG_IME = savedIme; + REG_DISPSTAT = 8; + REG_BG0CNT = 0x9800; + REG_BG1CNT = 0x9E09; + REG_BG2CNT = 0x9C00; + REG_BG3CNT = 0x3A03; + REG_BLDCNT = 0; + REG_BLDALPHA = 0; + REG_BLDY = 0; + REG_WININ = 0x3F3F; + REG_WINOUT = 0x3F3F; + REG_DISPCNT |= 0x7F00; + + gUnknown_030042A4 = 0; + gUnknown_030042A0 = 0; + gUnknown_030042C0 = 0; + gUnknown_030041B4 = 0; + gUnknown_03004288 = 0; + gUnknown_03004280 = 0; + gUnknown_030041B0 = 0; + gUnknown_030041B8 = 0; + gUnknown_030042C4 = 0; + gUnknown_03004240 = 0; + gUnknown_03004200 = 0; + gUnknown_03004244 = 0; +} + +void sub_80AB2AC(void) +{ + s32 i; + + LZDecompressVram(gContestMiscGfx, (void *)VRAM); + LZDecompressVram(gContestAudienceGfx, (void *)(VRAM + 0x2000)); + LZDecompressVram(gUnknown_08D1725C, (void *)(VRAM + 0xD000)); + LoadCompressedPalette(gUnknown_08D17144, 0, 0x200); + sub_80AB350(); + for (i = 0; i < 4; i++) + { + u32 var = 5 + i; + + LoadPalette(shared18000.unk18004[var], 16 * (5 + gUnknown_02038696[i]), 16 * sizeof(u16)); + } +} + +void SetUpContestWindow(void) +{ + SetUpWindowConfig(&gWindowConfig_81E6FD8); + InitWindowFromConfig(&gUnknown_03004210, &gWindowConfig_81E6FD8); + InitWindowFromConfig(&gMenuWindow, &gWindowConfig_81E6FF4); +} + +void sub_80AB350(void) +{ + u8 i; + + LoadFontDefaultPalette(&gWindowConfig_81E6FD8); + FillPalette(0, 0, 2); + for (i = 10; i < 14; i++) + LoadPalette(gPlttBufferUnfaded + 241, 240 + i, 2); + FillPalette(0x7E3F, 0xF3, 2); +} + +void ClearContestVars(void) +{ + s32 i; + + memset(&sContest, 0, sizeof(sContest)); + for (i = 0; i < 4; i++) + sContest.unk19206[i] = 0xFF; + + for (i = 0; i < 4; i++) + memset(&sContestantStatus[i], 0, sizeof(sContestantStatus[i])); + for (i = 0; i < 4; i++) + { + sContestantStatus[i].unkB_0 = 0; + sContestantStatus[i].unk13 = 0xFF; + sContestantStatus[i].unk14 = 0xFF; + } + + memset(&shared192D0_, 0, sizeof(shared192D0_)); + memset(shared192E4, 0, 0x44 * sizeof(*shared192E4)); + memset(&shared19328, 0, sizeof(shared19328)); + memset(shared19338, 0, 4 * sizeof(*shared19338)); + if (!(gIsLinkContest & 1)) + sub_80B0F28(0); + for (i = 0; i < 4; i++) + { + sContestantStatus[i].unk19 = 0xFF; + sContest.unk19218[i] = gUnknown_02038696[i]; + } + sub_80B159C(); +} + +void CB2_StartContest(void) +{ + switch (gMain.state) + { + case 0: + SetVBlankCallback(NULL); + SetUpContestWindow(); + ResetContestGpuRegs(); + dp12_8087EA4(); + ResetPaletteFade(); + gPaletteFade.bufferTransferDisabled = TRUE; + DmaClearLarge32(3, (void *)VRAM, VRAM_SIZE, 0x1000); + ResetSpriteData(); + ResetTasks(); + FreeAllSpritePalettes(); + gReservedSpritePaletteCount = 4; + //shared18000.unk18000 = 0; + gSharedMem[0x18000] = 0; + ClearBattleMonForms(); + ClearContestVars(); + gMain.state++; + break; + case 1: + sub_80AB350(); + gMain.state++; + break; + case 2: + if (sub_80AB70C(&sContest.unk1925D) == 0) + break; + sContest.unk1925D = 0; + gMain.state++; + break; + case 3: + sub_80B2184(); + gUnknown_030042C0 = 0; + gUnknown_030041B4 = 0; + BeginFastPaletteFade(2); + gPaletteFade.bufferTransferDisabled = FALSE; + SetVBlankCallback(ContestVBlankCallback); + sContest.mainTaskId = CreateTask(sub_80AB5D4, 10); + SetMainCallback2(ContestMainCallback2); + break; + } +} + +void sub_80AB5D4(u8 taskId) +{ + if (!gPaletteFade.active) + gTasks[taskId].func = sub_80AB604; +} + +void sub_80AB604(u8 taskId) +{ + if (gIsLinkContest & 1) + { + if (!gPaletteFade.active) + { + gPaletteFade.bufferTransferDisabled = FALSE; + sub_80AF860(); + CreateTask(sub_80AB678, 0); + gTasks[taskId].func = nullsub_89; + } + } + else + { + gTasks[taskId].func = sub_80AB960; + } +} + +void sub_80AB678(u8 taskId) +{ + SetTaskFuncWithFollowupFunc(taskId, sub_80C89DC, sub_80AB694); +} + +void sub_80AB694(u8 taskId) +{ + u16 one = 1; + + gTasks[taskId].data[0] = one; + gTasks[taskId].func = sub_80AB6B4; +} + +void sub_80AB6B4(u8 taskId) +{ + gTasks[taskId].data[0]--; + if (gTasks[taskId].data[0] <= 0) + { + GetMultiplayerId(); // unused return value + DestroyTask(taskId); + gTasks[sContest.mainTaskId].func = sub_80AB960; + gRngValue = gUnknown_03005D28; + } +} + +u8 sub_80AB70C(u8 *a) +{ + u16 sp0[16]; + u16 sp20[16]; + + switch (*a) + { + case 0: + gPaletteFade.bufferTransferDisabled = TRUE; + DmaClearLarge32(3, (void *)VRAM, VRAM_SIZE, 0x1000); + break; + case 1: + LZDecompressVram(gContestMiscGfx, (void *)VRAM); + break; + case 2: + LZDecompressVram(gContestAudienceGfx, (void *)(VRAM + 0x2000)); + DmaCopyLarge32(3, (void *)(VRAM + 0x2000), shared15800, 0x2000, 0x1000); + break; + case 3: + LZDecompressVram(gUnknown_08D1725C, (void *)(VRAM + 0xD000)); + break; + case 4: + LZDecompressVram(gUnknown_08D17424, (void *)(VRAM + 0xE000)); + DmaCopy32Defvars(3, (void *)(VRAM + 0xE000), shared18000.unk18A04, 0x800); + break; + case 5: + LoadCompressedPalette(gUnknown_08D17144, 0, 0x200); + CpuCopy32(gPlttBufferUnfaded + 128, sp0, 16 * sizeof(u16)); + CpuCopy32(gPlttBufferUnfaded + (5 + gContestPlayerMonIndex) * 16, sp20, 16 * sizeof(u16)); + CpuCopy32(sp20, gPlttBufferUnfaded + 128, 16 * sizeof(u16)); + CpuCopy32(sp0, gPlttBufferUnfaded + (5 + gContestPlayerMonIndex) * 16, 16 * sizeof(u16)); + DmaCopy32Defvars(3, gPlttBufferUnfaded, shared18000.unk18004, 0x200); + sub_80AB350(); + break; + case 6: + sub_80B1118(); + sub_80AFA5C(); + sub_80AEB30(); + sContest.unk19216 = sub_80AE8B4(); + sub_80AFE30(); + sub_80B0034(); + CreateApplauseMeterSprite(); + sub_80B0324(); + sub_80B0518(); + gBanksBySide[0] = 0; + gBanksBySide[1] = 1; + gBanksBySide[2] = 3; + gBanksBySide[3] = 2; + gBattleTypeFlags = 0; + gBankAttacker = 2; + gBankTarget = 3; + gObjectBankIDs[gBankAttacker] = CreateJudgeSprite(); + sub_80B292C(); + break; + default: + *a = 0; + return 1; + } + + (*a)++; + return 0; +} + +void sub_80AB960(u8 taskId) +{ + gPaletteFade.bufferTransferDisabled = FALSE; + if (!gPaletteFade.active) + { + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].func = sub_80AB9A0; + } +} + +void sub_80AB9A0(u8 taskId) +{ + switch (gTasks[taskId].data[0]) + { + case 0: + if (gTasks[taskId].data[1]++ <= 60) + break; + gTasks[taskId].data[1] = 0; + PlaySE12WithPanning(SE_C_MAKU_U, 0); + gTasks[taskId].data[0]++; + break; + case 1: + gUnknown_030041B4 += 7; + if (gUnknown_030041B4 <= 160) + break; + gTasks[taskId].data[0]++; + break; + case 2: + sub_80B2280(); + gTasks[taskId].data[0]++; + break; + case 3: + REG_BG0CNT_BITFIELD.priority = 0; + REG_BG2CNT_BITFIELD.priority = 0; + sub_80B1B14(); + gTasks[taskId].data[0]++; + break; + case 4: + default: + if (sContest.unk1920A_6) + break; + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].func = sub_80ABB70; + break; + } +} + +void ContestMainCallback2(void) +{ + AnimateSprites(); + RunTasks(); + BuildOamBuffer(); + UpdatePaletteFade(); +} + +void ContestVBlankCallback(void) +{ + REG_BG0HOFS = gUnknown_030042A4; + REG_BG0VOFS = gUnknown_030042A0; + REG_BG1HOFS = gUnknown_030042C0; + REG_BG1VOFS = gUnknown_030041B4; + REG_BG2HOFS = gUnknown_03004288; + REG_BG2VOFS = gUnknown_03004280; + REG_BG3HOFS = gUnknown_030041B0; + REG_BG3VOFS = gUnknown_030041B8; + REG_WIN0H = gUnknown_030042C4; + REG_WIN0V = gUnknown_03004240; + REG_WIN1H = gUnknown_03004200; + REG_WIN1V = gUnknown_03004244; + TransferPlttBuffer(); + LoadOam(); + ProcessSpriteCopyRequests(); + sub_8089668(); +} + +void sub_80ABB70(u8 taskId) +{ + gUnknown_030042A0 = 0; + gUnknown_03004280 = 0; + sub_80B0D7C(); + DmaCopy32Defvars(3, gPlttBufferUnfaded, shared18000.unk18204, 0x400); + if (!Contest_IsMonsTurnDisabled(gContestPlayerMonIndex)) + StringCopy(gDisplayedStringBattle, gText_Contest_WhichMoveWillBePlayed); + else + StringCopy(gDisplayedStringBattle, gText_Contest_ButItCantParticipate); + InsertStringDigit(gDisplayedStringBattle, sContest.turnNumber + 1); + sub_80AF138(); + StringExpandPlaceholders(gStringVar4, gDisplayedStringBattle); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].func = sub_80ABC3C; +} + +void sub_80ABC3C(u8 taskId) +{ + if (sub_80037A0(&gMenuWindow) == 1) + gTasks[taskId].func = sub_80ABC70; +} + +void sub_80ABC70(u8 taskId) +{ + if ((gMain.newKeys & A_BUTTON) || (gMain.newKeys == B_BUTTON)) + { + PlaySE(SE_SELECT); + if (!Contest_IsMonsTurnDisabled(gContestPlayerMonIndex)) + { + sub_80AFFE0(TRUE); + gTasks[taskId].func = sub_80ABCDC; + } + else + { + gTasks[taskId].func = sub_80AC0C8; + } + } +} + +// Print the move list +void sub_80ABCDC(u8 taskId) +{ + u8 i; + u8 sp8[32]; + + gUnknown_030042A0 = 0xA0; + gUnknown_03004280 = 0xA0; + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA340[0][0], + gUnknown_083CA340[0][1], + gUnknown_083CA340[0][2], + gUnknown_083CA340[0][3]); + + for (i = 0; i < 4; i++) + { + u16 move = gContestMons[gContestPlayerMonIndex].moves[i]; + u8 *r5 = sp8; + + if (sContestantStatus[gContestPlayerMonIndex].prevMove != MOVE_NONE + && sub_80B214C(gContestPlayerMonIndex) + && AreMovesContestCombo(sContestantStatus[gContestPlayerMonIndex].prevMove, move) != 0 + && sContestantStatus[gContestPlayerMonIndex].unk15_4) + { + r5 = StringCopy(sp8, gUnknownText_UnknownFormatting2); + } + else if (move != 0 + && sContestantStatus[gContestPlayerMonIndex].prevMove == move + && gContestMoves[move].effect != CONTEST_EFFECT_REPEATABLE) + { + // Gray the text because it is a repeated move + r5 = StringCopy(sp8, gUnknownText_UnknownFormatting3); + } + r5 = StringCopy(r5, gMoveNames[move]); + + sub_8002E4C( + &gUnknown_03004210, + sp8, + 776 + i * 20, + gUnknown_083CA340[i][0] * 8 + 4, + gUnknown_083CA340[i][1] * 8, + 1); + sub_8002F44(&gUnknown_03004210); + } + + sub_814A5C0(0, 0xFFFF, 12, 0x2D9F, 72); + sub_80AC0AC(sContest.playerMoveChoice); + sub_80AEBEC(gContestMons[gContestPlayerMonIndex].moves[sContest.playerMoveChoice]); + gTasks[taskId].func = sub_80ABEA0; +} + +// Handle move selection input +void sub_80ABEA0(u8 taskId) +{ + u8 numMoves = 0; + s32 i; + + for (i = 0; i < 4; i++) + { + if (gContestMons[gContestPlayerMonIndex].moves[i] != MOVE_NONE) + numMoves++; + } + + if (gMain.newKeys & A_BUTTON) + { + DestroyMenuCursor(); + PlaySE(SE_SELECT); + gTasks[taskId].func = sub_80AC0C8; + } + else + { + switch (gMain.newAndRepeatedKeys) + { + case B_BUTTON: + sub_814A904(); + PlaySE(SE_SELECT); + sub_80AFFE0(FALSE); + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA340[0][0], + gUnknown_083CA340[0][1], + gUnknown_083CA340[0][2], + gUnknown_083CA340[0][3]); + if (!Contest_IsMonsTurnDisabled(gContestPlayerMonIndex)) + StringCopy(gDisplayedStringBattle, gText_Contest_WhichMoveWillBePlayed); + else + StringCopy(gDisplayedStringBattle, gText_Contest_ButItCantParticipate); + InsertStringDigit(gDisplayedStringBattle, sContest.turnNumber + 1); + sub_80AF138(); + StringExpandPlaceholders(gStringVar4, gDisplayedStringBattle); + sub_8003460(&gMenuWindow, gStringVar4, 776, 1, 15); + gUnknown_030042A0 = 0; + gUnknown_03004280 = 0; + gTasks[taskId].func = sub_80ABC70; + break; + case DPAD_LEFT: + case DPAD_RIGHT: + break; + case DPAD_UP: + nullsub_17(sContest.playerMoveChoice); + if (sContest.playerMoveChoice == 0) + sContest.playerMoveChoice = numMoves - 1; + else + sContest.playerMoveChoice--; + sub_80AC0AC(sContest.playerMoveChoice); + sub_80AED58(); + sub_80AEBEC(gContestMons[gContestPlayerMonIndex].moves[sContest.playerMoveChoice]); + if (numMoves > 1) + PlaySE(SE_SELECT); + break; + case DPAD_DOWN: + nullsub_17(sContest.playerMoveChoice); + if (sContest.playerMoveChoice == numMoves - 1) + sContest.playerMoveChoice = 0; + else + sContest.playerMoveChoice++; + sub_80AC0AC(sContest.playerMoveChoice); + sub_80AED58(); + sub_80AEBEC(gContestMons[gContestPlayerMonIndex].moves[sContest.playerMoveChoice]); + if (numMoves > 1) + PlaySE(SE_SELECT); + break; + } + } +} + +void sub_80AC0AC(s8 a) +{ + sub_814A880(4, 88 + a * 16); +} + +void nullsub_17(s8 a) +{ +} + +void sub_80AC0C8(u8 taskId) +{ + if (gIsLinkContest & 1) + { + u16 var = GetChosenMove(gContestPlayerMonIndex); + u8 taskId2; + + sContestantStatus[gContestPlayerMonIndex].currMove = var; + taskId2 = CreateTask(sub_80C8A38, 0); + SetTaskFuncWithFollowupFunc(taskId2, sub_80C8A38, sub_80AC15C); + gTasks[taskId].func = nullsub_89; + sub_80AF860(); + sub_80AFFE0(FALSE); + } + else + { + sub_80AF1B8(); + gTasks[taskId].func = sub_80AC188; + } +} + +void sub_80AC15C(u8 taskId) +{ + DestroyTask(taskId); + gTasks[sContest.mainTaskId].func = sub_80AC188; +} + +void sub_80AC188(u8 taskId) +{ + sub_80AF138(); + gUnknown_030042A0 = 0; + gUnknown_03004280 = 0; + sub_80AFFE0(FALSE); + DmaCopy32Defvars(3, gPlttBufferFaded, shared18000.unk18604, 0x400); + LoadPalette(shared18000.unk18204, 0, 0x400); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].func = sub_80AC204; +} + +void sub_80AC204(u8 taskId) +{ + if (++gTasks[taskId].data[0] > 2) + { + gTasks[taskId].data[0] = 0; + if (++gTasks[taskId].data[1] == 2) + { + sub_80B1BDC(); + sub_80B25E4(1); + gTasks[taskId].func = sub_80AC250; + } + } +} + +void sub_80AC250(u8 taskId) +{ + if (!sContest.unk1920A_6 && !sContest.unk1920B_1) + gTasks[taskId].func = sub_80AC284; +} + +void sub_80AC284(u8 taskId) +{ + if (++gTasks[taskId].data[0] > 19) + { + sContest.unk19214 = 0; + sContest.unk1921C = gRngValue; + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80AC2CC; + } +} + +void sub_80AC2CC(u8 taskId) +{ + u8 spriteId; + s32 i; + u8 r7 = sContest.unk19215; + s8 r4; + + switch (gTasks[taskId].data[0]) + { + case 0: + sub_80B0D7C(); + for (i = 0; sContest.unk19214 != shared192D0_.unk0[i]; i++) + ; + sContest.unk19215 = i; + r7 = sContest.unk19215; + if (gIsLinkContest & 1) + { + u8 taskId2; + + sContest.unk1920B_2 = 1; + if (sub_80AE074()) + sub_80B114C(sContest.unk19215); + taskId2 = CreateTask(sub_80C8C80, 0); + SetTaskFuncWithFollowupFunc(taskId2, sub_80C8C80, sub_80AD8DC); + sub_80AF860(); + gTasks[taskId].data[0] = 1; + } + else + { + sub_80B114C(sContest.unk19215); + gTasks[taskId].data[0] = 2; + } + return; + case 1: + if (!sContest.unk1920B_2) + gTasks[taskId].data[0] = 2; + return; + case 2: + if (sContestantStatus[r7].unkC_1 != 0 + || sContestantStatus[r7].unkB_7) + { + gTasks[taskId].data[0] = 31; + } + else + { + sub_80AF138(); + sub_80B0CDC(r7, 0); + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 3; + } + return; + case 3: + for (i = 0; i < 4; i++) + gBattleMonForms[i] = 0; + memset(&shared19348_, 0, sizeof(shared19348_)); + sub_80B28F0(sContest.unk19215); + spriteId = sub_80AE9FC( + gContestMons[sContest.unk19215].species, + gContestMons[sContest.unk19215].otId, + gContestMons[sContest.unk19215].personality); + gSprites[spriteId].pos2.x = 120; + gSprites[spriteId].callback = sub_80AD8FC; + gTasks[taskId].data[2] = spriteId; + gObjectBankIDs[gBankAttacker] = spriteId; + sub_80B0BC4(sub_80B09E4(sContest.unk19215), FALSE); + gTasks[taskId].data[0] = 4; + return; + case 4: + spriteId = gTasks[taskId].data[2]; + if (gSprites[spriteId].callback == SpriteCallbackDummy) + { + if (!shared19338[r7].unk2_1) + gTasks[taskId].data[0] = 5; + } + return; + case 5: + if (sContestantStatus[r7].unkC_0) + { + gTasks[taskId].data[0] = 33; + } + else + { + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + if (sContestantStatus[r7].currMove < NUM_MOVES) + StringCopy(gStringVar2, gMoveNames[sContestantStatus[r7].currMove]); + else + StringCopy(gStringVar2, gUnknown_083CC330[sContestantStatus[r7].moveCategory]); + StringExpandPlaceholders(gStringVar4, gUnknown_083CAFD7); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[0] = 6; + } + return; + case 6: + if (sub_80037A0(&gMenuWindow) != 0) + { + sContest.unk1925E = 0; + gTasks[taskId].data[0] = 7; + } + return; + case 7: + { + u16 move = SanitizeMove(sContestantStatus[sContest.unk19215].currMove); + + sub_80B2790(sContest.unk19215); + sub_80B28F0(sContest.unk19215); + SelectContestMoveBankTarget(move); + ExecuteMoveAnim(move); + gTasks[taskId].data[0] = 8; + } + return; + case 8: + gAnimScriptCallback(); + if (!gAnimScriptActive) + { + sub_80B28CC(r7); + if (sContest.unk1925E != 0) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 9; + } + else + { + if (!sContestantStatus[r7].unk15_4) + sub_80B03A8(r7); + sub_80B20C4(); + gTasks[taskId].data[0] = 23; + } + } + return; + case 9: + if (gTasks[taskId].data[10]++ > 30) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 7; + } + return; + case 23: + gTasks[taskId].data[1] = 0; + if (sContestantStatus[r7].unk13 != 0xFF) + { + sub_80B146C(r7, sContestantStatus[r7].unk13); + sContestantStatus[r7].unk13 = 0xFF; + gTasks[taskId].data[0] = 24; + } + else + { + if (sContestantStatus[r7].unk14 != 0xFF) + { + for (i = 0; i < 4; i++) + { + if (i != r7 && sContestantStatus[i].unk13 != 0xFF) + break; + } + if (i == 4) + { + sub_80B146C(r7, sContestantStatus[r7].unk14); + sContestantStatus[r7].unk14 = 0xFF; + gTasks[taskId].data[0] = 24; + } + else + { + gTasks[taskId].data[0] = 48; + } + } + else + { + gTasks[taskId].data[0] = 48; + } + } + return; + case 24: + if (sub_80037A0(&gMenuWindow) != 0) + gTasks[taskId].data[0] = 23; + return; + case 48: + if (sContestantStatus[r7].unk11_0 == 1) + { + sub_80B1710(5); + } + else if (sContestantStatus[r7].unk11_0 == 2) + { + sub_80B1710(6); + } + else if (sContestantStatus[r7].unk11_0 == 3) + { + sub_80B1710(7); + } + else + { + gTasks[taskId].data[0] = 47; + return; + } + gTasks[taskId].data[0] = 49; + return; + case 49: + if (!sContest.unk1920A_4) + gTasks[taskId].data[0] = 47; + return; + case 47: + sub_80B1FD0(TRUE); + gTasks[taskId].data[0] = 12; + return; + case 12: + sub_80AFBA0(0, sContestantStatus[r7].appeal2, r7); + gTasks[taskId].data[0] = 13; + return; + case 13: + if (!shared19338[sContest.unk19215].unk2_2) + gTasks[taskId].data[0] = 35; + return; + case 35: + if (sContestantStatus[r7].unk10_4 == 1) + sub_80B1710(8); + gTasks[taskId].data[0] = 36; + return; + case 36: + if (!sContest.unk1920A_4) + gTasks[taskId].data[0] = 37; + return; + case 37: + if (sub_80AEE54(r7, 1)) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 38; + } + else + { + gTasks[taskId].data[0] = 50; + } + return; + case 38: + if (++gTasks[taskId].data[10] > 20) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 50; + } + return; + case 50: + if (sub_80AF038(r7)) + PlaySE(SE_C_PASI); + gTasks[taskId].data[0] = 25; + return; + case 25: + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[0] = 26; + return; + case 26: + { + s32 r2 = 0; + + r4 = 0; + for (i = gTasks[taskId].data[1]; i < 4; i++) + { + r4 = 0; + for (r2 = 0; r2 < 4; r2++) + { + if (r2 != r7 && gUnknown_02038696[r2] == i + && sContestantStatus[r2].unk13 != 0xFF) + { + r4 = 1; + break; + } + } + if (r4 != 0) + break; + } + if (r4) + { + gTasks[taskId].data[1] = gUnknown_02038696[r2]; + sub_80B146C(r2, sContestantStatus[r2].unk13); + sContestantStatus[r2].unk13 = 0xFF; + gTasks[taskId].data[0] = 27; + } + else + { + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 51; + sub_80AF120(); + } + } + return; + case 27: + if (sub_80037A0(&gMenuWindow) != 0) + gTasks[taskId].data[0] = 28; + return; + case 28: + for (i = 0; gTasks[taskId].data[1] != gUnknown_02038696[i]; i++) + ; + sub_80AFBA0(sContestantStatus[i].appeal2 + sContestantStatus[i].unkE, -sContestantStatus[i].unkE, i); + gTasks[taskId].data[0] = 29; + return; + case 29: + for (i = 0; gTasks[taskId].data[1] != gUnknown_02038696[i]; i++) + ; + if (!shared19338[i].unk2_2) + gTasks[taskId].data[0] = 39; + return; + case 39: + for (i = 0; gTasks[taskId].data[1] != gUnknown_02038696[i]; i++) + ; + if (sub_80AEE54(i, 1)) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 40; + } + else + { + gTasks[taskId].data[0] = 30; + } + return; + case 40: + if (++gTasks[taskId].data[10] > 20) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 30; + } + return; + case 30: + for (i = 0; i < 4; i++) + { + if (gUnknown_02038696[i] == gTasks[taskId].data[1]) + break; + } + if (sub_80AF038(i)) + PlaySE(SE_C_PASI); + else + PlaySE(SE_C_SYU); + if (sContestantStatus[i].unk15_5) + { + sub_80B03A8(i); + sContestantStatus[i].unk15_5 = 0; + } + gTasks[taskId].data[1]++; + gTasks[taskId].data[0] = 26; + return; + case 51: + if (gTasks[taskId].data[10]++ > 9) + { + gTasks[taskId].data[10] = 0; + if (sContestantStatus[r7].unkC_1 != 0 + || sContestantStatus[r7].unk11_2) + { + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringExpandPlaceholders(gStringVar4, ContestString_CantAppealNextTurn); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + } + gTasks[taskId].data[0] = 52; + } + return; + case 52: + if (sub_80037A0(&gMenuWindow) != 0) + { + if (!sContestantStatus[r7].unk15_6) + gTasks[taskId].data[0] = 17; + else + gTasks[taskId].data[0] = 14; + } + return; + case 14: + r4 = sContestantStatus[r7].unk16; + if (sContestantStatus[r7].unk16 != 0) + { + sub_80AF138(); + if (r4 == 1) + sub_8002EB0(&gMenuWindow, ContestString_WentOverWell, 776, 1, 15); + else if (r4 == 2) + sub_8002EB0(&gMenuWindow, ContestString_WentOverVeryWell, 776, 1, 15); + else + sub_8002EB0(&gMenuWindow, ContestString_AppealComboExcellently, 776, 1, 15); + sub_80B1710(3); + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 45; + } + else + { + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringExpandPlaceholders(gStringVar4, ContestString_JudgeExpectantly2); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + sub_80B1710(2); + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 45; + } + return; + case 45: + if (!sContest.unk1920A_4) + { + sub_80B09B0(sContest.unk19215); + gTasks[taskId].data[0] = 15; + } + return; + case 15: + if (sub_80037A0(&gMenuWindow) != 0) + { + if (++gTasks[taskId].data[10] > 50) + { + if (!sContestantStatus[r7].unk15_4) + { + sub_80AFBA0( + sContestantStatus[r7].appeal2, + sContestantStatus[r7].unk17, + r7); + sContestantStatus[r7].appeal2 += sContestantStatus[r7].unk17; + } + gTasks[taskId].data[0] = 16; + } + } + return; + case 16: + if (!shared19338[r7].unk2_2) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 17; + } + return; + case 17: + if (sContestantStatus[r7].disappointedRepeat) + { + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringExpandPlaceholders(gStringVar4, ContestString_DissapointedRepeat); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[10] = 0; + sub_80B1710(0); + gTasks[taskId].data[0] = 46; + } + else + { + gTasks[taskId].data[0] = 41; + } + return; + case 46: + if (!sContest.unk1920A_4) + gTasks[taskId].data[0] = 19; + return; + case 19: + if (sub_80037A0(&gMenuWindow) != 0) + { + sub_80AFBA0(sContestantStatus[r7].appeal2, -sContestantStatus[r7].unk18, r7); + sContestantStatus[r7].appeal2 -= sContestantStatus[r7].unk18; + gTasks[taskId].data[0] = 18; + } + return; + case 18: + sub_80B0D7C(); + if (!shared19338[r7].unk2_2) + { + gTasks[taskId].data[10] = 0; + sub_80AF138(); + gTasks[taskId].data[0] = 41; + } + return; + case 41: + if (shared19328.bits_8 && r7 != shared19328.bits_9) + { + gTasks[taskId].data[0] = 57; + } + else + { + r4 = shared19328.bits_0; + if (sContestantStatus[r7].unk11_4) + { + r4 = 1; + StringCopy(gStringVar3, gMoveNames[sContestantStatus[r7].currMove]); + } + else + { + StringCopy(gStringVar3, gContestCategoryStrings[gContestMoves[sContestantStatus[r7].currMove].contestCategory]); + } + if (r4 > 0) + { + if (sContestantStatus[r7].disappointedRepeat) + r4 = 0; + } + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + sContest.applauseLevel += r4; + if (sContest.applauseLevel < 0) + sContest.applauseLevel = 0; + if (r4 == 0) + { + gTasks[taskId].data[0] = 55; + } + else + { + if (r4 < 0) + StringExpandPlaceholders(gStringVar4, ContestString_DidntGoWell); + else if (r4 > 0 && sContest.applauseLevel <= 4) + StringExpandPlaceholders(gStringVar4, ContestString_WentOverGreat); + else + StringExpandPlaceholders(gStringVar4, ContestString_GotCrowdGoing); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[11] = 0; + if (r4 < 0) + gTasks[taskId].data[0] = 53; + else + gTasks[taskId].data[0] = 54; + } + } + return; + case 53: + switch (gTasks[taskId].data[10]) + { + case 0: + sub_80B1EA8(-1, 1); + PlayFanfare(BGM_ME_ZANNEN); + gTasks[taskId].data[10]++; + break; + case 1: + if (!sContest.unk1920B_0 && sub_80037A0(&gMenuWindow) != 0) + { + sub_80B1CBC(-1); + gTasks[taskId].data[10]++; + } + break; + case 2: + if (!sContest.unk1920A_5) + { + if (gTasks[taskId].data[11]++ > 29) + { + gTasks[taskId].data[11] = 0; + sub_80B1EA8(-1, -1); + gTasks[taskId].data[10]++; + } + } + break; + case 3: + if (!gPaletteFade.active) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[11] = 0; + gTasks[taskId].data[0] = 43; + } + break; + } + return; + case 54: + switch (gTasks[taskId].data[10]) + { + case 0: + if (sub_80037A0(&gMenuWindow) != 0) + { + sub_80B1EA8(1, 1); + gTasks[taskId].data[10]++; + } + break; + case 1: + if (!sContest.unk1920B_0) + { + sub_80B1DDC(); + PlaySE(SE_W227B); + sub_80B1CBC(1); + gTasks[taskId].data[10]++; + } + break; + case 2: + if (!sContest.unk1920A_5) + { + if (gTasks[taskId].data[11]++ > 29) + { + gTasks[taskId].data[11] = 0; + sub_80AFBA0(sContestantStatus[r7].appeal2, shared19328.unk2, r7); + sContestantStatus[r7].appeal2 += shared19328.unk2; + gTasks[taskId].data[10]++; + } + } + break; + case 3: + if (!shared19338[r7].unk2_2) + { + if (!sContest.unk1920A_7) + { + sub_80B1EA8(1, -1); + gTasks[taskId].data[10]++; + } + } + break; + case 4: + if (!gPaletteFade.active) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[11] = 0; + gTasks[taskId].data[0] = 43; + } + break; + } + return; + case 43: + if (!shared19338[r7].unk2_2) + { + sub_80AF138(); + gTasks[taskId].data[0] = 55; + } + return; + case 57: + sub_80AF138(); + StringCopy(gStringVar3, gContestMons[shared19328.bits_9].nickname); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringCopy(gStringVar2, gMoveNames[sContestantStatus[r7].currMove]); + StringExpandPlaceholders(gStringVar4, ContestString_CrowdWatches); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[0] = 58; + return; + case 58: + if (sub_80037A0(&gMenuWindow) != 0) + { + sub_80AF138(); + StringExpandPlaceholders(gStringVar4, ContestString_Ignored2); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[0] = 59; + } + return; + case 59: + if (sub_80037A0(&gMenuWindow) != 0) + { + sub_80AF138(); + gTasks[taskId].data[0] = 55; + } + return; + case 33: + if (sContestantStatus[r7].unk15_4) + sContestantStatus[r7].unk15_4 = 0; + sub_80B09B0(r7); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringCopy(gStringVar2, gMoveNames[sContestantStatus[r7].currMove]); + StringExpandPlaceholders(gStringVar4, gUnknown_083CBF60); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[0] = 34; + return; + case 34: + if (sub_80037A0(&gMenuWindow) != 0) + gTasks[taskId].data[0] = 55; + return; + case 55: + sub_80B1BDC(); + gTasks[taskId].data[0] = 56; + return; + case 56: + if (!sContest.unk1920A_6) + { + if (sContest.applauseLevel > 4) + { + sContest.applauseLevel = 0; + sub_80B1928(); + } + gTasks[taskId].data[0] = 10; + } + return; + case 10: + spriteId = gTasks[taskId].data[2]; + gSprites[spriteId].callback = sub_80AD92C; + gTasks[taskId].data[0] = 11; + return; + case 11: + spriteId = gTasks[taskId].data[2]; + if (gSprites[spriteId].invisible) + { + FreeSpriteOamMatrix(&gSprites[spriteId]); + DestroySprite(&gSprites[spriteId]); + gTasks[taskId].data[0] = 20; + } + return; + case 20: + for (i = 0; i < 4; i++) + sub_80B0CDC(i, 1); + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 21; + return; + case 31: + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[r7].nickname); + StringExpandPlaceholders(gStringVar4, gUnknown_083CB00D); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[0] = 32; + return; + case 32: + if (sub_80037A0(&gMenuWindow) != 0) + gTasks[taskId].data[0] = 21; + return; + case 21: + if (++gTasks[taskId].data[10] > 29) + { + gTasks[taskId].data[10] = 0; + gTasks[taskId].data[0] = 22; + } + return; + case 22: + if (++sContest.unk19214 == 4) + { + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[2] = 0; + gTasks[taskId].func = sub_80AD960; + } + else + { + gTasks[taskId].data[0] = 0; + } + nullsub_18(0); + return; + } +} + +void sub_80AD8DC(u8 taskId) +{ + sContest.unk1920B_2 = 0; + DestroyTask(taskId); +} + +void sub_80AD8FC(struct Sprite *sprite) +{ + if (sprite->pos2.x != 0) + { + sprite->pos2.x -= 2; + } + else + { + if (++sprite->data[0] == 31) + { + sprite->data[0] = 0; + sprite->callback = SpriteCallbackDummy; + } + } +} + +void sub_80AD92C(struct Sprite *sprite) +{ + sprite->pos2.x -= 6; + if (sprite->pos1.x + sprite->pos2.x < -32) + { + sprite->callback = SpriteCallbackDummy; + sprite->invisible = TRUE; + } +} + +void sub_80AD960(u8 taskId) +{ + switch (gTasks[taskId].data[0]) + { + case 0: + if (gIsLinkContest & 1) + { + u8 taskId2; + + sContest.unk1920B_2 = 1; + if (sub_80AE074()) + { + sub_80AF2FC(); + sub_80AF3C0(); + } + taskId2 = CreateTask(sub_80C8C80, 0); + SetTaskFuncWithFollowupFunc(taskId2, sub_80C8C80, sub_80AD8DC); + sub_80AF860(); + gTasks[taskId].data[0] = 1; + } + else + { + sub_80AF2FC(); + sub_80AF3C0(); + gTasks[taskId].data[0] = 2; + } + break; + case 1: + if (!sContest.unk1920B_2) + gTasks[taskId].data[0] = 2; + break; + case 2: + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80ADA1C; + break; + } +} + +void sub_80ADA1C(u8 taskId) +{ + sub_80B1FD0(FALSE); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].func = sub_80ADA4C; +} + +void sub_80ADA4C(u8 taskId) +{ + switch (gTasks[taskId].data[0]) + { + case 0: + if (++gTasks[taskId].data[1] > 20) + { + sub_80B25E4(2); + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[0]++; + } + break; + case 1: + if (!sContest.unk1920B_1) + { + if (++gTasks[taskId].data[1] > 20) + { + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[0]++; + } + } + break; + case 2: + sub_80AFF10(); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].func = sub_80ADAD8; + break; + } +} + +void sub_80ADAD8(u8 taskId) +{ + if (sub_80AFF28()) + gTasks[taskId].func = sub_80ADB04; +} + +void sub_80ADB04(u8 taskId) +{ + DmaCopy32Defvars(3, shared18000.unk18204, gPlttBufferUnfaded, 0x400); + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 2; + gTasks[taskId].func = sub_80ADB48; +} + +void sub_80ADB48(u8 taskId) +{ + if (++gTasks[taskId].data[0] > 2) + { + gTasks[taskId].data[0] = 0; + if (--gTasks[taskId].data[1] == 0) + gTasks[taskId].func = sub_80ADB88; + } +} + +void sub_80ADB88(u8 taskId) +{ + u8 r4 = sContestantStatus[gContestPlayerMonIndex].attentionLevel; + + sub_80AF138(); + StringCopy(gStringVar1, gContestMons[gContestPlayerMonIndex].nickname); + StringExpandPlaceholders(gStringVar4, gContestStandOutStrings[r4]); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].func = sub_80ADC10; +} + +void sub_80ADC10(u8 taskId) +{ + if (sub_80037A0(&gMenuWindow) == 1) + { + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80ADC4C; + sub_80B0D7C(); + } +} + +void sub_80ADC4C(u8 taskId) +{ + if (gTasks[taskId].data[0]++ > 29) + { + gTasks[taskId].data[0] = 0; + sub_80AFF10(); + gTasks[taskId].func = sub_80ADC84; + } +} + +void sub_80ADC84(u8 taskId) +{ + if (sub_80AFF28()) + { + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80ADCB4; + } +} + +void sub_80ADCB4(u8 taskId) +{ + sub_80B2184(); + gTasks[taskId].func = sub_80B237C; +} + +void sub_80ADCDC(u8 taskId) +{ + sub_80B2280(); + gTasks[taskId].func = sub_80ADD04; +} + +void sub_80ADD04(u8 taskId) +{ + REG_BG0CNT_BITFIELD.priority = 0; + REG_BG2CNT_BITFIELD.priority = 0; + if (++sContest.turnNumber == 5) + { + gTasks[taskId].func = sub_80ADDA4; + } + else + { + sub_80B1B14(); + gTasks[taskId].func = sub_80ADD74; + } +} + +void sub_80ADD74(u8 taskId) +{ + if (!sContest.unk1920A_6) + gTasks[taskId].func = sub_80ABB70; +} + +void sub_80ADDA4(u8 taskId) +{ + s32 i; + + gUnknown_030042A0 = 0; + gUnknown_03004280 = 0; + for (i = 0; i < 4; i++) + gUnknown_02038680[i] = sContestantStatus[i].unk4; + sub_80AF668(); + sub_80AF138(); + sub_80BE23C(sContestantStatus[gContestPlayerMonIndex].prevMove); + gUnknown_03005D28 = gRngValue; + StringExpandPlaceholders(gStringVar4, gUnknown_083CB02C); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); + gTasks[taskId].data[2] = 0; + gTasks[taskId].func = sub_80ADE54; +} + +void sub_80ADE54(u8 taskId) +{ + if (sub_80037A0(&gMenuWindow) == 1) + { + sub_80B2184(); + gUnknown_030042C0 = 0; + gUnknown_030041B4 = 160; + PlaySE12WithPanning(SE_C_MAKU_D, 0); + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80ADEAC; + } +} + +void sub_80ADEAC(u8 taskId) +{ + gUnknown_030041B4 -= 7; + if (gUnknown_030041B4 < 0) + gUnknown_030041B4 = 0; + if (*(u16 *)&gUnknown_030041B4 == 0) // Why cast? + { + gTasks[taskId].func = sub_80ADEEC; + gTasks[taskId].data[0] = 0; + } +} + +void sub_80ADEEC(u8 taskId) +{ + if (gTasks[taskId].data[0]++ >= 50) + { + gTasks[taskId].data[0] = 0; + if (gIsLinkContest & 1) + { + gTasks[taskId].func = sub_80ADF4C; + } + else + { + BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0); + gTasks[taskId].func = sub_80ADFD8; + } + } +} + +void sub_80ADF4C(u8 taskId) +{ + u8 taskId2 = CreateTask(sub_80C8AD0, 0); + + SetTaskFuncWithFollowupFunc(taskId2, sub_80C8AD0, sub_80ADF98); + gTasks[taskId].func = nullsub_89; + sub_80AF860(); + sub_80AFFE0(FALSE); +} + +void sub_80ADF98(u8 taskId) +{ + DestroyTask(taskId); + BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0); + gTasks[sContest.mainTaskId].func = sub_80ADFD8; +} + +void sub_80ADFD8(u8 taskId) +{ + if (!gPaletteFade.active) + { + DestroyTask(taskId); + gFieldCallback = sub_80AE010; + SetMainCallback2(c2_exit_to_overworld_2_switch); + } +} + +void sub_80AE010(void) +{ + // Why disable and re-enable again? + ScriptContext2_Disable(); + EnableBothScriptContexts(); +} + +// Expands a one-digit number in the string +void InsertStringDigit(u8 *str, s32 n) +{ + while (1) + { + if (*str == EOS) + break; + // Find the EXT_CTRL_CODE_BEGIN, 0 sequence, and place the number there + if (*str == EXT_CTRL_CODE_BEGIN && *(str + 1) == 0) + { + u8 *end; + + end = ConvertIntToDecimalStringN(str, n, STR_CONV_MODE_LEFT_ALIGN, 1); + *end = EOS; // ConvertIntToDecimalStringN already does this. + StringAppend(end, str + 2); // Shift the rest of the string over. + break; + } + str++; + } +} + +void sub_80AE054(void) +{ + if (!(gIsLinkContest & 1)) + gContestPlayerMonIndex = 3; +} + +bool8 sub_80AE074(void) +{ + if (gContestPlayerMonIndex == gUnknown_0203869B) + return TRUE; + else + return FALSE; +} + +void Contest_CreatePlayerMon(u8 partyIndex) +{ + u8 name[20]; + u16 heldItem; + s16 cool; + s16 beauty; + s16 cute; + s16 smart; + s16 tough; + + StringCopy(name, gSaveBlock2.playerName); + StripExtCtrlCodes(name); + if (gIsLinkContest & 1) + { + u8 temp = name[5]; + + name[5] = EOS; + name[7] = temp; + } + memcpy(gContestMons[gContestPlayerMonIndex].trainerName, name, 8); + if (gSaveBlock2.playerGender == MALE) + gContestMons[gContestPlayerMonIndex].trainerGfxId = MAP_OBJ_GFX_LINK_BRENDAN; + else + gContestMons[gContestPlayerMonIndex].trainerGfxId = MAP_OBJ_GFX_LINK_MAY; + gContestMons[gContestPlayerMonIndex].flags = 0; + gContestMons[gContestPlayerMonIndex].unk2C = 0; + gContestMons[gContestPlayerMonIndex].species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES); + GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, name); + StringGetEnd10(name); + if (gIsLinkContest & 1) + { + StripExtCtrlCodes(name); + if (GetMonData(&gPlayerParty[partyIndex], MON_DATA_LANGUAGE) == LANGUAGE_JAPANESE) + { + name[5] = EOS; + name[10] = EXT_CTRL_CODE_BEGIN; + } + else + { + u8 temp = name[5]; + + name[5] = EOS; + name[10] = temp; + } + } + memcpy(gContestMons[gContestPlayerMonIndex].nickname, name, 11); + gContestMons[gContestPlayerMonIndex].cool = GetMonData(&gPlayerParty[partyIndex], MON_DATA_COOL); + gContestMons[gContestPlayerMonIndex].beauty = GetMonData(&gPlayerParty[partyIndex], MON_DATA_BEAUTY); + gContestMons[gContestPlayerMonIndex].cute = GetMonData(&gPlayerParty[partyIndex], MON_DATA_CUTE); + gContestMons[gContestPlayerMonIndex].smart = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SMART); + gContestMons[gContestPlayerMonIndex].tough = GetMonData(&gPlayerParty[partyIndex], MON_DATA_TOUGH); + gContestMons[gContestPlayerMonIndex].sheen = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SHEEN); + gContestMons[gContestPlayerMonIndex].moves[0] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE1); + gContestMons[gContestPlayerMonIndex].moves[1] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE2); + gContestMons[gContestPlayerMonIndex].moves[2] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE3); + gContestMons[gContestPlayerMonIndex].moves[3] = GetMonData(&gPlayerParty[partyIndex], MON_DATA_MOVE4); + gContestMons[gContestPlayerMonIndex].personality = GetMonData(&gPlayerParty[partyIndex], MON_DATA_PERSONALITY); + gContestMons[gContestPlayerMonIndex].otId = GetMonData(&gPlayerParty[partyIndex], MON_DATA_OT_ID); + + heldItem = GetMonData(&gPlayerParty[partyIndex], MON_DATA_HELD_ITEM); + cool = gContestMons[gContestPlayerMonIndex].cool; + beauty = gContestMons[gContestPlayerMonIndex].beauty; + cute = gContestMons[gContestPlayerMonIndex].cute; + smart = gContestMons[gContestPlayerMonIndex].smart; + tough = gContestMons[gContestPlayerMonIndex].tough; + if (heldItem == ITEM_RED_SCARF) + cool += 20; + else if (heldItem == ITEM_BLUE_SCARF) + beauty += 20; + else if (heldItem == ITEM_PINK_SCARF) + cute += 20; + else if (heldItem == ITEM_GREEN_SCARF) + smart += 20; + else if (heldItem == ITEM_YELLOW_SCARF) + tough += 20; + if (cool > 255) + cool = 255; + if (beauty > 255) + beauty = 255; + if (cute > 255) + cute = 255; + if (smart > 255) + smart = 255; + if (tough > 255) + tough = 255; + gContestMons[gContestPlayerMonIndex].cool = cool; + gContestMons[gContestPlayerMonIndex].beauty = beauty; + gContestMons[gContestPlayerMonIndex].cute = cute; + gContestMons[gContestPlayerMonIndex].smart = smart; + gContestMons[gContestPlayerMonIndex].tough = tough; +} + +void Contest_InitAllPokemon(u8 a, u8 b) +{ + s32 i; + u8 opponentsCount = 0; + u8 opponents[64]; + + sub_80AE054(); + + // Find all suitable opponents + for (i = 0; i < 60; i++) + { + if (b == gContestOpponents[i].unk1C_0) + { + if (a == 0 && gContestOpponents[i].unk1C_2) + opponents[opponentsCount++] = i; + else if (a == 1 && gContestOpponents[i].unk1C_3) + opponents[opponentsCount++] = i; + else if (a == 2 && gContestOpponents[i].unk1C_4) + opponents[opponentsCount++] = i; + else if (a == 3 && gContestOpponents[i].unk1C_5) + opponents[opponentsCount++] = i; + else if (a == 4 && gContestOpponents[i].unk1C_6) + opponents[opponentsCount++] = i; + } + } + opponents[opponentsCount] = 0xFF; + + // Choose three random opponents from the list + for (i = 0; i < 3; i++) + { + u16 rnd = Random() % opponentsCount; + s32 j; + + gContestMons[i] = gContestOpponents[opponents[rnd]]; + for (j = rnd; opponents[j] != 0xFF; j++) + opponents[j] = opponents[j + 1]; + opponentsCount--; + } + +#ifndef NONMATCHING + // Compiler, please put i in r5. Thanks. + asm(""::"r"(i)); + asm(""::"r"(i)); + asm(""::"r"(i)); + asm(""::"r"(i)); + asm(""::"r"(i)); +#endif + + Contest_CreatePlayerMon(gUnknown_02038694); +} + +// GetContestAvailability? +u8 sub_80AE47C(struct Pokemon *pkmn) +{ + u8 ribbon; + u8 retVal; + + if (GetMonData(pkmn, MON_DATA_IS_EGG)) + return 3; + if (GetMonData(pkmn, MON_DATA_HP) == 0) + return 4; + switch (gSpecialVar_ContestCategory) + { + case CONTEST_CATEGORY_COOL: + ribbon = GetMonData(pkmn, MON_DATA_COOL_RIBBON); + break; + case CONTEST_CATEGORY_BEAUTY: + ribbon = GetMonData(pkmn, MON_DATA_BEAUTY_RIBBON); + break; + case CONTEST_CATEGORY_CUTE: + ribbon = GetMonData(pkmn, MON_DATA_CUTE_RIBBON); + break; + case CONTEST_CATEGORY_SMART: + ribbon = GetMonData(pkmn, MON_DATA_SMART_RIBBON); + break; + case CONTEST_CATEGORY_TOUGH: + ribbon = GetMonData(pkmn, MON_DATA_TOUGH_RIBBON); + break; + default: + return 0; + } + + // Couldn't get this to match any other way. + // Returns 2, 1, or 0 respectively if ribbon's rank is above, equal, or below + // the current contest rank. + if (ribbon > gSpecialVar_ContestRank) + retVal = 2; + else if (ribbon >= gSpecialVar_ContestRank) + retVal = 1; + else + retVal = 0; + return retVal; +} + +void sub_80AE514(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + { + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA308[gUnknown_02038696[i]][0], + gUnknown_083CA308[gUnknown_02038696[i]][1], + gUnknown_083CA310[gUnknown_02038696[i]][0] + 5, + gUnknown_083CA310[gUnknown_02038696[i]][1] + 1); + sub_80AE5BC(i); + sub_80AE6CC(i); + } +} + +u8 *sub_80AE598(u8 *dest, const u8 *b, u8 c) +{ + dest = StringCopy(dest, gUnknown_083CC59C); + *dest++ = c; + dest = StringCopy(dest, b); + return dest; +} + +void sub_80AE5BC(u8 a) +{ + sub_80AE5D4(a, a + 10); +} + +void sub_80AE5D4(u8 p, u8 b) +{ + u8 *str = gDisplayedStringBattle; + + str = sub_80AE598(str, gEmptyString_81E72B0, b); + str[0] = EXT_CTRL_CODE_BEGIN; + str[1] = 6; + str[2] = 4; + str += 3; + + *str++ = CHAR_SLASH; + + if ((gIsLinkContest & 1) && gLinkPlayers[p].language == LANGUAGE_JAPANESE) + { + StringCopy(str, gLinkPlayers[p].name); + sub_8004D04( + &gUnknown_03004210, + gDisplayedStringBattle, + 592 + gUnknown_02038696[p] * 22, + 251 + gUnknown_083CA310[gUnknown_02038696[p]][0] * 8, + gUnknown_083CA310[gUnknown_02038696[p]][1] * 8, + 1); + } + else + { + StringCopy(str, gContestMons[p].trainerName); + sub_8003460( + &gUnknown_03004210, + gDisplayedStringBattle, + 592 + gUnknown_02038696[p] * 22, + gUnknown_083CA310[gUnknown_02038696[p]][0], + gUnknown_083CA310[gUnknown_02038696[p]][1]); + } +} + +void sub_80AE6CC(u8 a) +{ + sub_80AE6E4(a, a + 10); +} + +void sub_80AE6E4(u8 a, u8 b) +{ + u8 *str = gDisplayedStringBattle; + + str[0] = EXT_CTRL_CODE_BEGIN; + str[1] = 6; + str[2] = 4; + str += 3; + + str = sub_80AE598(str, gContestMons[a].nickname, b); + *str = EOS; + + sub_8004D04( + &gUnknown_03004210, + gDisplayedStringBattle, + 512 + gUnknown_02038696[a] * 20, + 253 + gUnknown_083CA308[gUnknown_02038696[a]][0] * 8, + gUnknown_083CA308[gUnknown_02038696[a]][1] * 8, + 1); +} + +u16 sub_80AE770(u8 a, u8 b) +{ + u8 r5; + u8 r4; + u8 r3; + + switch (b) + { + case 0: + r5 = gContestMons[a].cool; + r4 = gContestMons[a].tough; + r3 = gContestMons[a].beauty; + break; + case 1: + r5 = gContestMons[a].beauty; + r4 = gContestMons[a].cool; + r3 = gContestMons[a].cute; + break; + case 2: + r5 = gContestMons[a].cute; + r4 = gContestMons[a].beauty; + r3 = gContestMons[a].smart; + break; + case 3: + r5 = gContestMons[a].smart; + r4 = gContestMons[a].cute; + r3 = gContestMons[a].tough; + break; + case 4: + default: + r5 = gContestMons[a].tough; + r4 = gContestMons[a].smart; + r3 = gContestMons[a].cool; + break; + } + return r5 + (r4 + r3 + gContestMons[a].sheen) / 2; +} + +void sub_80AE82C(u8 a) +{ + u8 i; + + for (i = 0; i < 4; i++) + gUnknown_02038670[i] = sub_80AE770(i, a); +} + +u8 CreateJudgeSprite(void) +{ + u8 spriteId; + + LoadCompressedObjectPic(&gUnknown_083CA4BC); + LoadCompressedPalette(gContest2Pal, 0x110, 32); + spriteId = CreateSprite(&gSpriteTemplate_83CA4A4, 112, 36, 30); + gSprites[spriteId].oam.paletteNum = 1; + gSprites[spriteId].callback = SpriteCallbackDummy; + return spriteId; +} + +u8 sub_80AE8B4(void) +{ + u8 spriteId; + + LoadCompressedObjectPic(&gUnknown_083CA4C4); + LoadCompressedObjectPalette(&gUnknown_083CA4CC); + spriteId = CreateSprite(&gUnknown_083CA4D4, 96, 10, 29); + gSprites[spriteId].invisible = TRUE; + gSprites[spriteId].data[0] = gSprites[spriteId].oam.tileNum; + return spriteId; +} + +u8 unref_sub_80AE908(void) +{ + u16 species = gContestMons[gContestPlayerMonIndex].species; + u8 spriteId; + + DecompressPicFromTable_2( + &gMonFrontPicTable[species], + gMonFrontPicCoords[species].coords, + gMonFrontPicCoords[species].y_offset, + (void *)0x02000000, + gUnknown_081FAF4C[1], + species); + LoadCompressedPalette(gMonPaletteTable[species].data, 0x110, 32); + GetMonSpriteTemplate_803C56C(gContestMons[gContestPlayerMonIndex].species, 1); + spriteId = CreateSprite( + &gUnknown_02024E8C, + 112, 80 + (8 - gMonFrontPicCoords[gContestMons[gContestPlayerMonIndex].species].coords) * 4, + 30); + gSprites[spriteId].oam.paletteNum = 1; + gSprites[spriteId].callback = SpriteCallbackDummy; + gSprites[spriteId].affineAnims = gSpriteAffineAnimTable_81E7C18; + StartSpriteAffineAnim(&gSprites[spriteId], 0); + return spriteId; +} + +u8 sub_80AE9FC(u16 species, u32 otId, u32 personality) +{ + const u8 *lzPaletteData; + u8 spriteId; + + species = SanitizeSpecies(species); + HandleLoadSpecialPokePic( + &gMonBackPicTable[species], + gMonBackPicCoords[species].coords, + gMonBackPicCoords[species].y_offset, + 0x02000000, + gUnknown_081FAF4C[0], + species, + personality); + lzPaletteData = GetMonSpritePalFromOtIdPersonality(species, otId, personality); + LoadCompressedPalette(lzPaletteData, 0x120, 32); + GetMonSpriteTemplate_803C56C(species, 0); + spriteId = CreateSprite(&gUnknown_02024E8C, 112, sub_8077E44(2, species, 0), 30); + gSprites[spriteId].oam.paletteNum = 2; + gSprites[spriteId].oam.priority = 2; + gSprites[spriteId].subpriority = sub_8079E90(2); + gSprites[spriteId].callback = SpriteCallbackDummy; + gSprites[spriteId].data[0] = gSprites[spriteId].oam.paletteNum; + gSprites[spriteId].data[2] = species; + if (sub_80AEB1C(species)) + gSprites[spriteId].affineAnims = gSpriteAffineAnimTable_81E7C18; + else + gSprites[spriteId].affineAnims = gSpriteAffineAnimTable_81E7BEC; + StartSpriteAffineAnim(&gSprites[spriteId], 0); + return spriteId; +} + +bool8 sub_80AEB1C(u16 species) +{ + if (species == SPECIES_UNOWN) + return FALSE; + else + return TRUE; +} + +void sub_80AEB30(void) +{ + sub_80AEB4C((void *)(VRAM + 0xC000)); + sub_80AEB4C((void *)(VRAM + 0xE000)); +} + +void sub_80AEB4C(void *a) +{ + DmaCopy16Defvars(3, a, (u8 *)a + 0x500, 0x280); +} + +u16 sub_80AEB68(u16 move, u8 b) +{ + u16 var; + + switch (gContestEffects[gContestMoves[move].effect].effectType) + { + case 0: + case 1: + case 8: + var = 0x9082; + break; + case 2: + case 3: + var = 0x9088; + break; + default: + var = 0x9086; + break; + } + var += 0x9000 + (b << 12); + return var; +} + +void sub_80AEBEC(u16 a) +{ + u8 category; + u16 categoryTile; + s32 i; + u8 numHearts; + + FillWindowRect_DefaultPalette(&gUnknown_03004210, 0, 11, 31, 16, 34); + + category = gContestMoves[a].contestCategory; + if (category == CONTEST_CATEGORY_COOL) + categoryTile = 0x4040; + else if (category == CONTEST_CATEGORY_BEAUTY) + categoryTile = 0x4045; + else if (category == CONTEST_CATEGORY_CUTE) + categoryTile = 0x404A; + else if (category == CONTEST_CATEGORY_SMART) + categoryTile = 0x406A; + else + categoryTile = 0x408A; + + for (i = 0; i < 5; i++) + { + *(u16 *)(VRAM + 0xC7D6 + i * 2) = categoryTile; + *(u16 *)(VRAM + 0xC816 + i * 2) = categoryTile + 16; + categoryTile++; + } + + if (gContestEffects[gContestMoves[a].effect].appeal == 0xFF) + numHearts = 0; + else + numHearts = gContestEffects[gContestMoves[a].effect].appeal / 10; + if (numHearts > 8) + numHearts = 8; + for (i = 0; i < 8; i++) + { + if (i < numHearts) + *(u16 *)(VRAM + 0xC7EA + i * 2) = 0x5012; + else + *(u16 *)(VRAM + 0xC7EA + i * 2) = 0x5035; + } + + if (gContestEffects[gContestMoves[a].effect].jam == 0xFF) + numHearts = 0; + else + numHearts = gContestEffects[gContestMoves[a].effect].jam / 10; + if (numHearts > 8) + numHearts = 8; + for (i = 0; i < 8; i++) + { + if (i < numHearts) + *(u16 *)(VRAM + 0xC82A + i * 2) = 0x5014; + else + *(u16 *)(VRAM + 0xC82A + i * 2) = 0x5036; + } + + sub_8003460(&gUnknown_03004210, gContestEffectStrings[gContestMoves[a].effect], 868, 11, 35); + sub_8003460(&gUnknown_03004210, gUnknown_083CC5A2, 866, 16, 31); +} + +void sub_80AED58(void) +{ + FillWindowRect_DefaultPalette(&gUnknown_03004210, 0, 11, 35, 28, 40); +} + +// unused +void sub_80AED7C(u16 move, u8 b) +{ + u8 r5 = gUnknown_02038696[b] * 5 + 2; + + if (!Contest_IsMonsTurnDisabled(b) && move != MOVE_NONE) + { + u16 tile = sub_80AEB68(move, b); + + *(u16 *)(VRAM + 0xC028 + r5 * 64) = tile; + *(u16 *)(VRAM + 0xC028 + r5 * 64 + 2) = tile + 1; + + *(u16 *)(VRAM + 0xC068 + r5 * 64) = tile + 16; + *(u16 *)(VRAM + 0xC068 + r5 * 64 + 2) = tile + 17; + + } + else + { + *(u16 *)(VRAM + 0xC028 + r5 * 64) = 0; + *(u16 *)(VRAM + 0xC028 + r5 * 64 + 2) = 0; + + *(u16 *)(VRAM + 0xC068 + r5 * 64) = 0; + *(u16 *)(VRAM + 0xC068 + r5 * 64 + 2) = 0; + } +} + +void unref_sub_80AEE20(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + sub_80AED7C(sContestantStatus[i].currMove, i); +} + +u16 sub_80AEE4C(u8 unused) +{ + return 0x2034; +} + +bool8 sub_80AEE54(u8 a, u8 b) +{ + u8 r9; + u16 r8; + s32 r4; + + if (sContestantStatus[a].unk10_4 == 0) + return FALSE; + r9 = gUnknown_02038696[a] * 5 + 2; + if (sContestantStatus[a].unk10_4 == 1) + { + r8 = sub_80AEE4C(a); + r4 = 0; + while (sContestantStatus[a].unkD / 10 > r4) + { + *(u16 *)(VRAM + 0xC026 + (r9 + r4) * 64) = r8; + r4++; + } + if (b != 0) + { + PlaySE(SE_EXPMAX); + sContestantStatus[a].unk10_4 = 0; + } + } + else + { + r8 = 0; + r4 = 3; + while (sContestantStatus[a].unkD / 10 < r4) + { + *(u16 *)(VRAM + 0xBFE6 + (r9 + r4) * 64) = r8; + r4--; + } + if (b != 0) + { + PlaySE(SE_FU_ZAKU2); + sContestantStatus[a].unk10_4 = 0; + } + } + return TRUE; +} + +void sub_80AEF50(void) +{ + s32 i; + s32 r4; + + for (i = 0; i < 4; i++) + { + u8 r8 = gUnknown_02038696[i] * 5 + 2; + u16 r6 = sub_80AEE4C(i); + + r4 = 0; + while (r4 < sContestantStatus[i].unkD / 10) + { + *(u16 *)(VRAM + 0xC026 + (r8 + r4) * 64) = r6; + r4++; + } + r6 = 0; + while (r4 < 3) + { + *(u16 *)(VRAM + 0xC026 + (r8 + r4) * 64) = r6; + r4++; + } + } +} + +u16 sub_80AEFE8(u8 unused, u8 b) +{ + u16 var = 0; + + switch (b) + { + case 0: + var = 0x80; + break; + case 1: + var = 0x84; + break; + case 2: + var = 0x86; + break; + case 3: + var = 0x88; + break; + case 4: + var = 0x82; + break; + } + var += 0x9000; + return var; +} + +bool8 sub_80AF038(u8 a) +{ + bool8 r5 = TRUE; + u16 r4 = 0; + u8 r6 = gUnknown_02038696[a] * 5 + 2; + + if (sContestantStatus[a].unk10_0 != 0 || sContestantStatus[a].unk10_1 != 0 || sContestantStatus[a].unk12 != 0 || sContestantStatus[a].unkF != 0) + r4 = sub_80AEFE8(a, 0); + else if (sContestantStatus[a].unkC_0) + r4 = sub_80AEFE8(a, 1); + else if (sContestantStatus[a].unkC_1 != 0 || sContestantStatus[a].unkB_7) + r4 = sub_80AEFE8(a, 2); + else + r5 = FALSE; + if (r5) + { + *(u16 *)(VRAM + 0xC028 + r6 * 64) = r4; + *(u16 *)(VRAM + 0xC028 + r6 * 64 + 2) = r4 + 1; + *(u16 *)(VRAM + 0xC068 + r6 * 64) = r4 + 16; + *(u16 *)(VRAM + 0xC068 + r6 * 64 + 2) = r4 + 17; + } + else + { + *(u16 *)(VRAM + 0xC028 + r6 * 64) = 0; + *(u16 *)(VRAM + 0xC028 + r6 * 64 + 2) = 0; + *(u16 *)(VRAM + 0xC068 + r6 * 64) = 0; + *(u16 *)(VRAM + 0xC068 + r6 * 64 + 2) = 0; + } + return r5; +} + +void sub_80AF120(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + sub_80AF038(i); +} + +void sub_80AF138(void) +{ + FillWindowRect_DefaultPalette(&gUnknown_03004210, 0, 1, 15, 17, 18); +} + +u16 GetChosenMove(u8 a) +{ + if (Contest_IsMonsTurnDisabled(a)) + return 0; + if (a == gContestPlayerMonIndex) + { + return gContestMons[a].moves[sContest.playerMoveChoice]; + } + else + { + u8 moveChoice; + + sub_81288F4(a); + moveChoice = sub_8128944(); + return gContestMons[a].moves[moveChoice]; + } +} + +void sub_80AF1B8(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + sContestantStatus[i].currMove = GetChosenMove(i); +} + +void sub_80AF1E4(u8 a, u8 b) +{ + u8 r3; + + if (b == 0) + r3 = a + 10; + else + r3 = 14; + if (sContestantStatus[a].currMove == MOVE_NONE) + sub_80AE598(gDisplayedStringBattle, gUnknownText_MissedTurn, r3); + else + sub_80AE598(gDisplayedStringBattle, gMoveNames[sContestantStatus[a].currMove], r3); + sub_80AF2A0(a); + sub_8003460( + &gUnknown_03004210, + gDisplayedStringBattle, + 696 + a * 20, + gUnknown_083CA318[a][0], + gUnknown_083CA318[a][1]); +} + +void unref_sub_80AF280(u8 a) +{ + u8 i; + + for (i = 0; i < 4; i++) + sub_80AF1E4(i, a); +} + +void sub_80AF2A0(u8 a) +{ + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA318[a][0], + gUnknown_083CA318[a][1], + gUnknown_083CA318[a][0] + 7, + gUnknown_083CA318[a][1] + 1); +} + +void unref_sub_80AF2E0(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + sub_80AF2A0(i); +} + +void sub_80AF2FC(void) +{ + u8 i; + u8 j; + s16 arr[4]; + + for (i = 0; i < 4; i++) + { + sContestantStatus[i].unk4 += sContestantStatus[i].appeal2; + arr[i] = sContestantStatus[i].unk4; + } + for (i = 0; i < 3; i++) + { + for (j = 3; j > i; j--) + { + if (arr[j - 1] < arr[j]) + { + u16 temp = arr[j]; + + arr[j] = arr[j - 1]; + arr[j - 1] = temp; + } + } + } + for (i = 0; i < 4; i++) + { + for (j = 0; j < 4; j++) + { + if (sContestantStatus[i].unk4 == arr[j]) + { + sContestantStatus[i].unkB_0 = j; + break; + } + } + } + sub_80B0F28(1); + sub_80B159C(); +} + +void sub_80AF3C0(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + u8 attentionLevel; + + if (sContestantStatus[i].currMove == MOVE_NONE) + attentionLevel = 5; + else if (sContestantStatus[i].appeal2 <= 0) + attentionLevel = 0; + else if (sContestantStatus[i].appeal2 < 30) + attentionLevel = 1; + else if (sContestantStatus[i].appeal2 < 60) + attentionLevel = 2; + else if (sContestantStatus[i].appeal2 < 80) + attentionLevel = 3; + else + attentionLevel = 4; + + sContestantStatus[i].attentionLevel = attentionLevel; + } +} + +bool8 sub_80AF404(u8 a) +{ + if (sContestantStatus[a].unkC_1 != 0 || sContestantStatus[a].unkB_7) + return FALSE; + else + return TRUE; +} + +void sub_80AF438(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + { + // This is bitfield hell... + sContestantStatus[i].appeal2 = 0; + sContestantStatus[i].appeal1 = 0; + sContestantStatus[i].unk12 = 0; + if (sContestantStatus[i].unkC_1 > 0) + sContestantStatus[i].unkC_1--; + sContestantStatus[i].unkE = 0; + sContestantStatus[i].unk10_0 = 0; + sContestantStatus[i].unkF = 0; + sContestantStatus[i].unk10_1 = 0; + sContestantStatus[i].unk10_2 = 0; + sContestantStatus[i].unk10_3 = 0; + sContestantStatus[i].unkC_0 = 0; + sContestantStatus[i].unk13 = 0xFF; + sContestantStatus[i].unk14 = -1; + sContestantStatus[i].unk10_4 = 0; + sContestantStatus[i].unk15_2 = sContestantStatus[i].disappointedRepeat; + sContestantStatus[i].disappointedRepeat = FALSE; + sContestantStatus[i].unk11_0 = 0; + sContestantStatus[i].unk11_5 = 0; + if (sContestantStatus[i].unk11_2) + { + sContestantStatus[i].unkC_1 = 1; + sContestantStatus[i].unk11_2 = 0; + } + if (sContestantStatus[i].unk11_3) + { + sContestantStatus[i].unkB_7 = 1; + sContestantStatus[i].unk11_3 = 0; + } + sContestantStatus[i].unk11_4 = 0; + } + for (i = 0; i < 4; i++) + { + sContestantStatus[i].prevMove = sContestantStatus[i].currMove; + sContest.unk19220[sContest.turnNumber][i] = sContestantStatus[i].prevMove; + sContest.unk19248[sContest.turnNumber][i] = Contest_GetMoveExcitement(sContestantStatus[i].currMove); + sContestantStatus[i].currMove = MOVE_NONE; + } + shared19328.bits_8 = 0; +} + +bool8 Contest_IsMonsTurnDisabled(u8 a) +{ + if (sContestantStatus[a].unkC_1 != 0 || sContestantStatus[a].unkB_7) + return TRUE; + else + return FALSE; +} + +bool8 unref_sub_80AF5D0(u8 a, u8 b) +{ + u8 i; + + if (a != gContestPlayerMonIndex) + return TRUE; + for (i = 0; i < 4; i++) + { + if (b == 3) + { + sContest.unk1920A_0 = 1; + return TRUE; + } + if (b == 4) + { + sContest.unk1920A_1 = 1; + return TRUE; + } + if (sContest.unk19206[i] == b) + return TRUE; + if (sContest.unk19206[i] == 0xFF) + { + sContest.unk19206[i] = b; + return TRUE; + } + } + return FALSE; +} + +void sub_80AF630(u8 a) +{ + gUnknown_02038688[a] = sub_80AF688(a); + gUnknown_02038678[a] = gUnknown_02038670[a] + gUnknown_02038688[a]; +} + +void sub_80AF668(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + sub_80AF630(i); + DetermineFinalStandings(); +} + +s16 sub_80AF688(u8 a) +{ + return gUnknown_02038680[a] * 2; +} + +// Determines standing order? +void DetermineFinalStandings(void) +{ + u16 sp0[4] = {0}; + struct UnknownContestStruct6 sp8[4]; + s32 i; + s32 j; + + for (i = 0; i < 4; i++) + { + s32 r2; + + sp0[i] = Random(); + for (r2 = 0; r2 < i; r2++) + { + if (sp0[i] == sp0[r2]) + { + i--; + break; + } + } + } + + for (i = 0; i < 4; i++) + { + sp8[i].unk0 = gUnknown_02038678[i]; + sp8[i].unk4 = gUnknown_02038670[i]; + sp8[i].unk8 = sp0[i]; + sp8[i].unkC = i; + } + + for (i = 0; i < 3; i++) + { + for (j = 3; j > i; j--) + { + if (sub_80AF828(j - 1, j, sp8)) + { + struct UnknownContestStruct6 temp; + + temp.unk0 = sp8[j - 1].unk0; + temp.unk4 = sp8[j - 1].unk4; + temp.unk8 = sp8[j - 1].unk8; + temp.unkC = sp8[j - 1].unkC; + + sp8[j - 1].unk0 = sp8[j].unk0; + sp8[j - 1].unk4 = sp8[j].unk4; + sp8[j - 1].unk8 = sp8[j].unk8; + sp8[j - 1].unkC = sp8[j].unkC; + + sp8[j].unk0 = temp.unk0; + sp8[j].unk4 = temp.unk4; + sp8[j].unk8 = temp.unk8; + sp8[j].unkC = temp.unkC; + } + } + } + + for (i = 0; i < 4; i++) + gContestFinalStandings[sp8[i].unkC] = i; +} + +bool8 sub_80AF828(s32 a, s32 b, struct UnknownContestStruct6 *c) +{ + bool8 retVal; + + if (c[a].unk0 < c[b].unk0) + retVal = TRUE; + else if (c[a].unk0 > c[b].unk0) + retVal = FALSE; + else if (c[a].unk4 < c[b].unk4) + retVal = TRUE; + else if (c[a].unk4 > c[b].unk4) + retVal = FALSE; + else if (c[a].unk8 < c[b].unk8) + retVal = TRUE; + else + retVal = FALSE; + return retVal; +} + +void sub_80AF860(void) +{ + gUnknown_030042A0 = 0; + gUnknown_03004280 = 0; + sub_80AF138(); + sub_8003460(&gMenuWindow, gUnknownText_LinkStandbyAndWinner, 776, 1, 15); +} + +u8 unref_sub_80AF89C(s16 a, s16 b, u8 c, u8 d) +{ + u8 taskId; + u8 r5; + s8 r4; + u16 r0; + + shared19338[d].unk2_2 = 1; + taskId = CreateTask(sub_80AF94C, 20); + r5 = sub_80AFB74(a); + r4 = sub_80AFB74(a + b) - r5; + r0 = sub_80AFB40(d); + gTasks[taskId].data[0] = r5; + gTasks[taskId].data[1] = r4; + gTasks[taskId].data[2] = r0 + c; + gTasks[taskId].data[3] = d; + if (b < 0) + nullsub_19(d); + return taskId; +} + +void sub_80AF94C(u8 taskId) +{ + u8 r5 = gTasks[taskId].data[3]; + + if (gTasks[taskId].data[1] == 0) + { + nullsub_19(r5); + DestroyTask(taskId); + shared19338[r5].unk2_2 = 0; + } + else if (++gTasks[taskId].data[10] > 29) + { + u8 r6; + + gTasks[taskId].data[10] = 0; + if (gTasks[taskId].data[1] < 0) + { + r6 = gTasks[taskId].data[0]--; + gTasks[taskId].data[1]++; + PlaySE(SE_BOO); + } + else + { + r6 = ++gTasks[taskId].data[0]; + gTasks[taskId].data[1]--; + PlaySE(SE_PIN); + } + if ((u16)gTasks[taskId].data[2] != 0xFFFF) + { + RequestSpriteCopy( + &gTasks[taskId].data[2], + (void *)(VRAM + 0xC000 + (147 + r6 + r5 * 160) * 2), + 2); + } + else + { + u8 i; + + for (i = 0; i < 3; i++) + { + if (gTasks[taskId].data[i + 4] < 0) + { + RequestSpriteCopy( + &gTasks[taskId].data[i + 7], + (void *)(VRAM + 0xC000 + (147 + r6 + r5 * 160) * 2), + 2); + gTasks[taskId].data[i + 4]++; + break; + } + } + } + } +} + +void sub_80AFA5C(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + { + DmaClear16(3, (void *)(VRAM + 0xC000 + (86 + i * 160) * 2), 16); + DmaClear16(3, (void *)(VRAM + 0xC000 + (118 + i * 160) * 2), 16); + } +} + +void unref_sub_80AFAB8(s16 a, u8 b) +{ + u8 r5 = sub_80AFB74(a); + u16 r2; + u8 i; + u16 arr[9]; + + if (b == 0) + r2 = 0x50A2; + else if (b == 1) + r2 = 0x60A2; + else if (b == 2) + r2 = 0x70A2; + else + r2 = 0x80A2; + + for (i = 0; i < 9; i++) + { + if (i < r5) + arr[i] = r2; + else + arr[i] = 0; + } + + DmaCopy16Defvars(3, arr, (void *)(VRAM + 0xC000 + (148 + b * 160) * 2), sizeof(arr)); +} + +u16 sub_80AFB40(u8 a) +{ + u16 var; + + if (a == 0) + var = 0x5011; + else if (a == 1) + var = 0x6011; + else if (a == 2) + var = 0x7011; + else + var = 0x8011; + return var + 1; +} + +s8 sub_80AFB74(s16 a) +{ + s8 retVal = a / 10; + + if (retVal > 16) + retVal = 16; + else if (retVal < -16) + retVal = -16; + return retVal; +} + +u8 sub_80AFBA0(s16 a, s16 b, u8 c) +{ + u8 taskId; + s8 r4; + s8 r5; + + shared19338[c].unk2_2 = 1; + taskId = CreateTask(sub_80AFC74, 20); + r4 = sub_80AFB74(a); + r5 = sub_80AFB74(a + b) - r4; + sub_80AFB40(c); // unused return value + gTasks[taskId].data[0] = abs(r4); + gTasks[taskId].data[1] = r5; + if (r4 > 0 || (r4 == 0 && r5 > 0)) + gTasks[taskId].data[2] = 1; + else + gTasks[taskId].data[2] = -1; + gTasks[taskId].data[3] = c; + if (b < 0) + nullsub_19(c); + return taskId; +} + +void sub_80AFC74(u8 taskId) +{ + u8 r7 = gTasks[taskId].data[3]; + s16 r3 = gTasks[taskId].data[0]; + s16 r1 = gTasks[taskId].data[1]; + + if (++gTasks[taskId].data[10] > 14) + { + u16 r6; + u8 r5; + u8 r10; + + gTasks[taskId].data[10] = 0; + if (gTasks[taskId].data[1] == 0) + { + nullsub_19(r7); + DestroyTask(taskId); + shared19338[r7].unk2_2 = 0; + return; + } + else if (r3 == 0) + { + if (r1 < 0) + { + r6 = sub_80AFB40(r7) + 2; + gTasks[taskId].data[1]++; + } + else + { + r6 = sub_80AFB40(r7); + gTasks[taskId].data[1]--; + } + r5 = gTasks[taskId].data[0]++; + } + else + { + if (gTasks[taskId].data[2] < 0) + { + if (r1 < 0) + { + r5 = gTasks[taskId].data[0]++; + gTasks[taskId].data[1]++; + r6 = sub_80AFB40(r7) + 2; + } + else + { + r5 = --gTasks[taskId].data[0]; + r6 = 0; + gTasks[taskId].data[1]--; + } + } + else + { + if (r1 < 0) + { + r5 = --gTasks[taskId].data[0]; + r6 = 0; + gTasks[taskId].data[1]++; + } + else + { + r5 = gTasks[taskId].data[0]++; + gTasks[taskId].data[1]--; + r6 = sub_80AFB40(r7); + } + } + } + r10 = r5; + if (r5 > 7) + r5 += 24; + // Seriously, a 2-byte CpuFill? Why? + CpuFill16(r6, (void *)(VRAM + 0xC000 + (0x56 + r5 + gUnknown_02038696[r7] * 160) * 2), 2); + if (r1 > 0) + { + PlaySE(SE_C_GAJI); + m4aMPlayImmInit(&gMPlay_SE1); + m4aMPlayPitchControl(&gMPlay_SE1, 0xFFFF, r10 * 256); + } + else + { + PlaySE(SE_BOO); + } + if (r5 == 0 && r6 == 0) + gTasks[taskId].data[2] = -gTasks[taskId].data[2]; + } +} + +void sub_80AFE30(void) +{ + s32 i; + + LoadSpriteSheet(&gUnknown_083CA350); + for (i = 0; i < 4; i++) + { + u8 y = gUnknown_083CA338[gUnknown_02038696[i]]; + + shared19338[i].unk0 = CreateSprite(&gSpriteTemplate_83CA3AC, 180, y, 1); + } +} + +void sub_80AFE78(u8 a) +{ + u8 spriteId; + s16 r5; + + shared19338[a].unk2_0 = 1; + spriteId = shared19338[a].unk0; + r5 = sContestantStatus[a].unk4 / 10 * 2; + if (r5 > 56) + r5 = 56; + else if (r5 < 0) + r5 = 0; + gSprites[spriteId].invisible = FALSE; + gSprites[spriteId].data[0] = a; + gSprites[spriteId].data[1] = r5; + if (gSprites[spriteId].data[1] > gSprites[spriteId].pos2.x) + gSprites[spriteId].data[2] = 1; + else + gSprites[spriteId].data[2] = -1; + gSprites[spriteId].callback = sub_80AFF60; +} + +void sub_80AFF10(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + sub_80AFE78(i); +} + +bool8 sub_80AFF28(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + if (shared19338[i].unk2_0) + break; + } + if (i == 4) + return TRUE; + else + return FALSE; +} + +void sub_80AFF60(struct Sprite *sprite) +{ + if (sprite->pos2.x == sprite->data[1]) + { + shared19338[sprite->data[0]].unk2_0 = 0; + sprite->callback = SpriteCallbackDummy; + } + else + { + sprite->pos2.x += sprite->data[2]; + } +} + +void sub_80AFFA0(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + gSprites[shared19338[i].unk0].pos1.y = gUnknown_083CA338[gUnknown_02038696[i]]; +} + +void sub_80AFFE0(bool8 a) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + if (gUnknown_02038696[i] > 1) + { + if (!a) + gSprites[shared19338[i].unk0].pos1.x = 180; + else + gSprites[shared19338[i].unk0].pos1.x = 256; + } + } +} + +void sub_80B0034(void) +{ + s32 i; + + LoadSpritePalette(&gUnknown_083CA3E4); + for (i = 0; i < 4; i++) + { + LoadCompressedObjectPic(&gUnknown_083CA3C4[i]); + shared19338[i].unk1 = CreateSprite( + &gSpriteTemplate_83CA3F4[i], + 204, gUnknown_083CA33C[gUnknown_02038696[i]], + 0); + SetSubspriteTables(&gSprites[shared19338[i].unk1], gSubspriteTables_83CA464); + gSprites[shared19338[i].unk1].invisible = TRUE; + } +} + +void CreateApplauseMeterSprite(void) +{ + u8 spriteId; + + LoadCompressedObjectPic(&gUnknown_083CA46C); + LoadSpritePalette(&gUnknown_083CA474); + spriteId = CreateSprite(&gSpriteTemplate_83CA484, 30, 44, 1); + gSprites[spriteId].invisible = TRUE; + sContest.applauseMeterSpriteId = spriteId; +} + +void nullsub_18(s8 unused) +{ +} + +void unref_sub_80B011C(void) +{ + u8 i; + + LoadCompressedObjectPic(&gUnknown_083CC3AC); + for (i = 0; i < 4; i++) + LoadCompressedObjectPalette(&gUnknown_083CC3B4[i]); + for (i = 0; i < 4; i++) + { + u8 spriteId = CreateSprite( + &gSpriteTemplate_83CC454[i], + gUnknown_083CA330[i][0], gUnknown_083CA330[i][1], + 5); + + gSprites[spriteId].invisible = TRUE; + gSprites[spriteId].data[0] = i; + sContest.unk1920D[i] = spriteId; + } +} + +void unref_sub_80B01B0(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + gSprites[sContest.unk1920D[i]].callback = sub_80B0238; +} + +bool8 unref_sub_80B01E0(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + if (gSprites[sContest.unk1920D[i]].callback != SpriteCallbackDummy) + break; + } + if (i == 4) + return TRUE; + else + return FALSE; +} + +void sub_80B0238(struct Sprite *sprite) +{ + sprite->oam.affineMode = 1; + InitSpriteAffineAnim(sprite); + if (sprite->invisible) + { + sprite->callback = sub_80B02A8; + } + else + { + StartSpriteAffineAnim(sprite, 1); + sprite->callback = sub_80B0280; + } +} + +void sub_80B0280(struct Sprite *sprite) +{ + if (sprite->affineAnimEnded) + { + sprite->invisible = TRUE; + sprite->callback = sub_80B02A8; + } +} + +void sub_80B02A8(struct Sprite *sprite) +{ + sprite->invisible = FALSE; + StartSpriteAnim(sprite, sContestantStatus[sprite->data[0]].unkB_0); + StartSpriteAffineAnim(sprite, 2); + sprite->callback = sub_80B02F4; + PlaySE(SE_JYUNI); +} + +void sub_80B02F4(struct Sprite *sprite) +{ + if (sprite->affineAnimEnded) + { + FreeSpriteOamMatrix(sprite); + sprite->oam.affineMode = 0; + sprite->callback = SpriteCallbackDummy; + } +} + +void sub_80B0324(void) +{ + u8 i; + u8 taskId = CreateTask(sub_80B0458, 30); + + sContest.unk19211 = taskId; + for (i = 0; i < 4; i++) + gTasks[taskId].data[i * 4] = 0xFF; +} + +void sub_80B0368(u8 a) +{ + gTasks[sContest.unk19211].data[a * 4 + 0] = 0; + gTasks[sContest.unk19211].data[a * 4 + 1] = 0; +} + +void sub_80B03A8(u8 a) +{ + u8 taskId = CreateTask(sub_80B03D8, 31); + + gTasks[taskId].data[0] = a; +} + +void sub_80B03D8(u8 taskId) +{ + u8 r4 = gTasks[taskId].data[0]; + + if (gTasks[sContest.unk19211].data[r4 * 4 + 0] == 0 + || gTasks[sContest.unk19211].data[r4 * 4 + 0] == 0xFF) + { + gTasks[sContest.unk19211].data[r4 * 4 + 0] = 0xFF; + gTasks[sContest.unk19211].data[r4 * 4 + 1] = 0; + BlendPalette((sContest.unk19218[r4] + 5) * 16 + 6, 2, 0, 0x4BFF); + DestroyTask(taskId); + } +} + +void sub_80B0458(u8 taskId) +{ + u8 i; + + for (i = 0; i < 4; i++) + { + u8 r3 = i * 4; + + if (gTasks[taskId].data[r3 + 0] != 0xFF) + { + if (gTasks[taskId].data[r3 + 1] == 0) + gTasks[taskId].data[r3 + 0]++; + else + gTasks[taskId].data[r3 + 0]--; + + if (gTasks[taskId].data[r3 + 0] == 16 + || gTasks[taskId].data[r3 + 0] == 0) + gTasks[taskId].data[r3 + 1] ^= 1; + + BlendPalette( + (sContest.unk19218[i] + 5) * 16 + 6, + 2, + gTasks[taskId].data[r3 + 0], + 0x4BFF); + } + } +} + +void sub_80B0518(void) +{ + u8 i; + + sContest.unk19212 = CreateTask(sub_80B05FC, 30); + for (i = 0; i < 4; i++) + sub_80B0548(i); +} + +void sub_80B0548(u8 a) +{ + gTasks[sContest.unk19212].data[a * 4 + 0] = 0xFF; + gTasks[sContest.unk19212].data[a * 4 + 1] = 0; +} + +void sub_80B0588(void) +{ + u8 i; + + for (i = 0; i < 4; i++) + sub_80B05A4(i); +} + +// TODO: Try to write this better +void sub_80B05A4(u8 a) +{ + u32 var; + u32 r0; + + sub_80B0548(a); + + // 2-byte DMA copy? Why? + + r0 = a + 5; + DmaCopy16Defvars( + 3, + gPlttBufferUnfaded + r0 * 16 + 10, + gPlttBufferFaded + r0 * 16 + 10, + 2); + + var = (a + 5) * 16 + 12 + a; + DmaCopy16Defvars( + 3, + gPlttBufferUnfaded + var, + gPlttBufferFaded + var, + 2); +} + +void nullsub_19(int unused) +{ +} + +void sub_80B05FC(u8 taskId) +{ + u8 i; + + for (i = 0; i < 4; i++) + { + u8 r3 = i * 4; + + if (gTasks[taskId].data[r3 + 0] != 0xFF) + { + if (++gTasks[taskId].data[r3 + 2] > 2) + { + gTasks[taskId].data[r3 + 2] = 0; + + if (gTasks[taskId].data[r3 + 1] == 0) + gTasks[taskId].data[r3 + 0]++; + else + gTasks[taskId].data[r3 + 0]--; + + if (gTasks[taskId].data[r3 + 0] == 16 + || gTasks[taskId].data[r3 + 0] == 0) + gTasks[taskId].data[r3 + 1] ^= 1; + + BlendPalette((i + 5) * 16 + 10, 1, gTasks[taskId].data[r3 + 0], 0x4BFF); + BlendPalette((i + 5) * 16 + 12 + i, 1, gTasks[taskId].data[r3 + 0], 0x4BFF); + } + } + } +} + +u8 unref_sub_80B06E0(u8 *a) +{ + u8 i; + u8 taskId = CreateTask(sub_80B0748, 10); + + for (i = 0; i < 4; i++) + { + u8 r0 = i * 4; + + gTasks[taskId].data[r0] = a[i]; + if (a[i] != 0) + shared19338[i].unk2_1 = 1; + } + return taskId; +} + +#ifdef NONMATCHING +void sub_80B0748(u8 taskId) +{ + u8 i; + u8 r4_2; + u8 r1; + u8 r7; + + for (i = 0; i < 4; i++) + { + //#define r4 r4_2 + r4 = gUnknown_02038696[i]; + r1 = r4 * 4; + r7 = gTasks[taskId].data[r1 + 0]; + + if (r7 != 0) + { + //_080B079C + u8 r8 = gTasks[taskId].data[r1 + 1]; + u8 r5 = gTasks[taskId].data[r1 + 2]; + u8 r6 = gTasks[taskId].data[r1 + 3]; + + if (r7 == 1) + { + r6++; + if (r6 == 1) + { + //_080B07D2 + r6 = 0; + BlendPalette((r4 + 5) * 16 + 1, 3, r5, 0x7FFF); + if (r5 == 0 && r8 == 4) + { + gTasks[taskId].data[r1 + 0] = 0; + //asm(""); + } + //_080B0800 + else + { + r5 += 2; + if (r5 > 13) + { + r5 = 0; + r8++; + } + } + } + //to _080B08EA + } + //_080B0818 + else if (r7 == 2 || r7 == 4) + { + r6++; + if (r6 == 3) + { + r6 = 0; + BlendPalette((r4 + 5) * 16 + 1, 3, r5, gUnknown_083CC5A4[r4]); + if (r5 == 0 && r8 == 2) + { + gTasks[taskId].data[r1 + 0] = 0; + } + //_080B0858 + else + { + r5 += 1; + if (r5 == 14) + { + r5 = 0; + r8++; + if (r7 == 4 && r8 == 1) + { + BlendPalette((r4 + 9) * 16 + 2, 1, 4, 0); + BlendPalette((r4 + 9) * 16 + 5, 1, 4, 0); + } + } + } + } + //to _080B08EA + } + //_080B0896 + else if (r7 == 3) + { + r6++; + if (r6 == 12) + { + r6 = 0; + BlendPalette((r4 + 5) * 16 + 1, 3, r5, 0); + r5 += 1; + if (r5 == 5) + { + // What the hell? These aren't pointers. + // This code would crash if run. + { + void *src = (void *)(u32)gPlttBufferFaded[(r4 + 5) * 16 + 1]; + void *dest = (void *)(u32)gPlttBufferUnfaded[(r4 + 5) * 16 + 1]; + u32 size = 6; + DmaCopy16(3, src, dest, size); + } + gTasks[taskId].data[r1 + 0] = 0; + } + } + } + //_080B08EA + gTasks[taskId].data[r1 + 1] = r8; + gTasks[taskId].data[r1 + 2] = r5; + gTasks[taskId].data[r1 + 3] = r6; + } + //_080B0910 + } + //_080B0920 + + #define i r4_2 + for (i = 0; i < 4; i++) // r4 is i + { + if (gTasks[taskId].data[i * 4 + 0] != 0) + break; + } + //_080B0958 + if (i == 4) + { + for (i = 0; i < 4; i++) + shared19338[i].unk2_2 = 0; + DestroyTask(taskId); + } + #undef i +} +#else +__attribute__((naked)) +void sub_80B0748(u8 taskId) +{ + asm(".syntax unified\n\ + push {r4-r7,lr}\n\ + mov r7, r10\n\ + mov r6, r9\n\ + mov r5, r8\n\ + push {r5-r7}\n\ + sub sp, 0x20\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + str r0, [sp]\n\ + movs r0, 0\n\ + str r0, [sp, 0x4]\n\ + ldr r2, _080B07F4 @ =gTasks\n\ + movs r1, 0x8\n\ + adds r1, r2\n\ + mov r10, r1\n\ + ldr r3, [sp]\n\ + lsls r3, 2\n\ + str r3, [sp, 0x1C]\n\ + ldr r1, [sp]\n\ + adds r0, r3, r1\n\ + lsls r0, 3\n\ + str r0, [sp, 0xC]\n\ +_080B0774:\n\ + ldr r0, _080B07F8 @ =gUnknown_02038696\n\ + ldr r3, [sp, 0x4]\n\ + adds r0, r3, r0\n\ + ldrb r4, [r0]\n\ + lsls r0, r4, 26\n\ + lsrs r1, r0, 24\n\ + lsls r0, r1, 1\n\ + str r0, [sp, 0x8]\n\ + ldr r3, [sp]\n\ + lsls r0, r3, 2\n\ + adds r0, r3\n\ + lsls r6, r0, 3\n\ + ldr r3, [sp, 0x8]\n\ + adds r0, r3, r6\n\ + add r0, r10\n\ + mov r9, r0\n\ + ldrb r7, [r0]\n\ + cmp r7, 0\n\ + bne _080B079C\n\ + b _080B0910\n\ +_080B079C:\n\ + adds r3, r1, 0x1\n\ + lsls r0, r3, 1\n\ + adds r0, r6\n\ + add r0, r10\n\ + ldrb r0, [r0]\n\ + mov r8, r0\n\ + adds r2, r1, 0x2\n\ + lsls r0, r2, 1\n\ + adds r0, r6\n\ + add r0, r10\n\ + ldrb r5, [r0]\n\ + adds r1, 0x3\n\ + lsls r0, r1, 1\n\ + adds r0, r6\n\ + add r0, r10\n\ + ldrb r6, [r0]\n\ + str r3, [sp, 0x10]\n\ + str r2, [sp, 0x14]\n\ + str r1, [sp, 0x18]\n\ + cmp r7, 0x1\n\ + bne _080B0818\n\ + adds r0, r6, 0x1\n\ + lsls r0, 24\n\ + lsrs r6, r0, 24\n\ + cmp r6, 0x1\n\ + beq _080B07D2\n\ + b _080B08EA\n\ +_080B07D2:\n\ + movs r6, 0\n\ + adds r0, r4, 0x5\n\ + lsls r0, 4\n\ + adds r0, 0x1\n\ + movs r1, 0x3\n\ + adds r2, r5, 0\n\ + ldr r3, _080B07FC @ =0x00007fff\n\ + bl BlendPalette\n\ + cmp r5, 0\n\ + bne _080B0800\n\ + mov r0, r8\n\ + cmp r0, 0x4\n\ + bne _080B0800\n\ + mov r1, r9\n\ + strh r6, [r1]\n\ + b _080B08EA\n\ + .align 2, 0\n\ +_080B07F4: .4byte gTasks\n\ +_080B07F8: .4byte gUnknown_02038696\n\ +_080B07FC: .4byte 0x00007fff\n\ +_080B0800:\n\ + adds r0, r5, 0x2\n\ + lsls r0, 24\n\ + lsrs r5, r0, 24\n\ + cmp r5, 0xD\n\ + bls _080B08EA\n\ + movs r5, 0\n\ + mov r0, r8\n\ + adds r0, 0x1\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + mov r8, r0\n\ + b _080B08EA\n\ +_080B0818:\n\ + cmp r7, 0x2\n\ + beq _080B0820\n\ + cmp r7, 0x4\n\ + bne _080B0896\n\ +_080B0820:\n\ + adds r0, r6, 0x1\n\ + lsls r0, 24\n\ + lsrs r6, r0, 24\n\ + cmp r6, 0x3\n\ + bne _080B08EA\n\ + movs r6, 0\n\ + adds r0, r4, 0x5\n\ + lsls r0, 4\n\ + adds r0, 0x1\n\ + ldr r2, _080B0854 @ =gUnknown_083CC5A4\n\ + lsls r1, r4, 1\n\ + adds r1, r2\n\ + ldrh r3, [r1]\n\ + movs r1, 0x3\n\ + adds r2, r5, 0\n\ + bl BlendPalette\n\ + cmp r5, 0\n\ + bne _080B0858\n\ + mov r2, r8\n\ + cmp r2, 0x2\n\ + bne _080B0858\n\ + mov r3, r9\n\ + strh r6, [r3]\n\ + b _080B08EA\n\ + .align 2, 0\n\ +_080B0854: .4byte gUnknown_083CC5A4\n\ +_080B0858:\n\ + adds r0, r5, 0x1\n\ + lsls r0, 24\n\ + lsrs r5, r0, 24\n\ + cmp r5, 0xE\n\ + bne _080B08EA\n\ + movs r5, 0\n\ + mov r0, r8\n\ + adds r0, 0x1\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + mov r8, r0\n\ + cmp r7, 0x4\n\ + bne _080B08EA\n\ + cmp r0, 0x1\n\ + bne _080B08EA\n\ + adds r4, 0x9\n\ + lsls r4, 4\n\ + adds r0, r4, 0x2\n\ + movs r1, 0x1\n\ + movs r2, 0x4\n\ + movs r3, 0\n\ + bl BlendPalette\n\ + adds r4, 0x5\n\ + adds r0, r4, 0\n\ + movs r1, 0x1\n\ + movs r2, 0x4\n\ + movs r3, 0\n\ + bl BlendPalette\n\ + b _080B08EA\n\ +_080B0896:\n\ + cmp r7, 0x3\n\ + bne _080B08EA\n\ + adds r0, r6, 0x1\n\ + lsls r0, 24\n\ + lsrs r6, r0, 24\n\ + cmp r6, 0xC\n\ + bne _080B08EA\n\ + movs r6, 0\n\ + adds r0, r4, 0x5\n\ + lsls r0, 4\n\ + adds r4, r0, 0x1\n\ + adds r0, r4, 0\n\ + movs r1, 0x3\n\ + adds r2, r5, 0\n\ + movs r3, 0\n\ + bl BlendPalette\n\ + adds r0, r5, 0x1\n\ + lsls r0, 24\n\ + lsrs r5, r0, 24\n\ + cmp r5, 0x5\n\ + bne _080B08EA\n\ + ldr r0, _080B0930 @ =gPlttBufferFaded\n\ + lsls r1, r4, 1\n\ + adds r0, r1, r0\n\ + ldrh r2, [r0]\n\ + ldr r0, _080B0934 @ =gPlttBufferUnfaded\n\ + adds r1, r0\n\ + ldrh r0, [r1]\n\ + ldr r1, _080B0938 @ =0x040000d4\n\ + str r2, [r1]\n\ + str r0, [r1, 0x4]\n\ + movs r0, 0x80\n\ + lsls r0, 24\n\ + orrs r7, r0\n\ + str r7, [r1, 0x8]\n\ + ldr r0, [r1, 0x8]\n\ + ldr r1, [sp, 0x8]\n\ + ldr r2, [sp, 0xC]\n\ + adds r0, r1, r2\n\ + add r0, r10\n\ + strh r6, [r0]\n\ +_080B08EA:\n\ + ldr r3, [sp, 0x10]\n\ + lsls r0, r3, 1\n\ + ldr r1, [sp, 0xC]\n\ + adds r0, r1\n\ + add r0, r10\n\ + mov r2, r8\n\ + strh r2, [r0]\n\ + ldr r3, [sp, 0x14]\n\ + lsls r0, r3, 1\n\ + adds r0, r1\n\ + add r0, r10\n\ + strh r5, [r0]\n\ + ldr r1, [sp, 0x18]\n\ + lsls r0, r1, 1\n\ + ldr r2, [sp, 0xC]\n\ + adds r0, r2\n\ + add r0, r10\n\ + strh r6, [r0]\n\ + ldr r2, _080B093C @ =gTasks\n\ +_080B0910:\n\ + ldr r0, [sp, 0x4]\n\ + adds r0, 0x1\n\ + lsls r0, 24\n\ + lsrs r0, 24\n\ + str r0, [sp, 0x4]\n\ + cmp r0, 0x3\n\ + bhi _080B0920\n\ + b _080B0774\n\ +_080B0920:\n\ + movs r4, 0\n\ + ldr r3, [sp, 0x1C]\n\ + ldr r1, [sp]\n\ + adds r0, r3, r1\n\ + lsls r1, r0, 3\n\ + adds r2, 0x8\n\ + adds r0, r1, r2\n\ + b _080B0950\n\ + .align 2, 0\n\ +_080B0930: .4byte gPlttBufferFaded\n\ +_080B0934: .4byte gPlttBufferUnfaded\n\ +_080B0938: .4byte 0x040000d4\n\ +_080B093C: .4byte gTasks\n\ +_080B0940:\n\ + adds r0, r4, 0x1\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0x3\n\ + bhi _080B0958\n\ + lsls r0, r4, 3\n\ + adds r0, r1\n\ + adds r0, r2\n\ +_080B0950:\n\ + movs r3, 0\n\ + ldrsh r0, [r0, r3]\n\ + cmp r0, 0\n\ + beq _080B0940\n\ +_080B0958:\n\ + cmp r4, 0x4\n\ + bne _080B0980\n\ + movs r4, 0\n\ + ldr r3, _080B0990 @ =gSharedMem + 0x19338\n\ + movs r5, 0x3\n\ + negs r5, r5\n\ +_080B0964:\n\ + lsls r1, r4, 2\n\ + adds r1, r3\n\ + ldrb r2, [r1, 0x2]\n\ + adds r0, r5, 0\n\ + ands r0, r2\n\ + strb r0, [r1, 0x2]\n\ + adds r0, r4, 0x1\n\ + lsls r0, 24\n\ + lsrs r4, r0, 24\n\ + cmp r4, 0x3\n\ + bls _080B0964\n\ + ldr r0, [sp]\n\ + bl DestroyTask\n\ +_080B0980:\n\ + add sp, 0x20\n\ + pop {r3-r5}\n\ + mov r8, r3\n\ + mov r9, r4\n\ + mov r10, r5\n\ + pop {r4-r7}\n\ + pop {r0}\n\ + bx r0\n\ + .align 2, 0\n\ +_080B0990: .4byte gSharedMem + 0x19338\n\ + .syntax divided\n"); +} +#endif + +void unref_sub_80B0994(u8 a) +{ + if (a != 0) + sContest.unk1920A_2 = 1; +} + +void sub_80B09B0(u8 a) +{ + if (sContestantStatus[a].unk15_4) + sub_80B0368(a); + else + sub_80B03A8(a); +} + +extern const struct CompressedSpriteSheet gUnknown_083CC4B4[]; +extern const struct SpritePalette gUnknown_083CC4D4[]; +extern const struct SpriteTemplate gSpriteTemplate_83CC53C[]; + +u8 sub_80B09E4(u8 a) +{ + u8 r5 = gUnknown_02038696[a] * 40 + 32; + u8 r8; + u8 r6; + volatile u8 zero; + + LoadCompressedObjectPic(&gUnknown_083CC4B4[a]); + LoadSpritePalette(&gUnknown_083CC4D4[a]); + r8 = CreateSprite(&gSpriteTemplate_83CC53C[a], 184, r5, 29); + r6 = CreateSprite(&gSpriteTemplate_83CC53C[a], 248, r5, 29); + gSprites[r6].oam.tileNum += 64; + + CopySpriteTiles(0, 3, (void *)VRAM, (u16 *)(VRAM + 0xE000 + gUnknown_02038696[a] * 5 * 64 + 0x26), (u8 *)(VRAM + 0x10000 + gSprites[r8].oam.tileNum * 32)); + CopySpriteTiles(0, 3, (void *)VRAM, (u16 *)(VRAM + 0xE000 + gUnknown_02038696[a] * 5 * 64 + 0x36), (u8 *)(VRAM + 0x10000 + gSprites[r6].oam.tileNum * 32)); + + { + void *dest = (void *)(VRAM + 0x10000 + (0x28 + gSprites[r8].oam.tileNum) * 32); + u32 size = 0x300; + DmaFill32(3, 0, dest, size); + } + + // What is this? + zero = 0; + zero = 0; + + { + void *dest = (void *)(VRAM + 0x10000 + (0x28 + gSprites[r6].oam.tileNum) * 32); + u32 size = 0x300; + DmaFill32(3, 0, dest, size); + } + + gSprites[r8].data[0] = r6; + gSprites[r6].data[0] = r8; + gSprites[r8].data[1] = a; + gSprites[r6].data[1] = a; + return r8; +} + +void sub_80B0B5C(u8 spriteId) +{ + u8 spriteId2 = gSprites[spriteId].data[0]; + + FreeSpriteOamMatrix(&gSprites[spriteId2]); + DestroySprite(&gSprites[spriteId2]); + DestroySpriteAndFreeResources(&gSprites[spriteId]); +} + +void sub_80B0B98(void) +{ + REG_BLDCNT = 0x3F40; + REG_BLDALPHA = 0x0907; +} + +void sub_80B0BB4(void) +{ + REG_BLDCNT = 0; + REG_BLDALPHA = 0; +} + +void sub_80B0BC4(u8 a, bool8 b) +{ + u8 r5; + + sub_80B0B98(); + shared19338[gSprites[a].data[1]].unk2_1 = 1; + r5 = gSprites[a].data[0]; + StartSpriteAffineAnim(&gSprites[a], 1); + StartSpriteAffineAnim(&gSprites[r5], 1); + gSprites[a].callback = sub_80B0C5C; + gSprites[r5].callback = SpriteCallbackDummy; + if (b == FALSE) + PlaySE(SE_C_PIKON); + else + PlaySE(SE_PC_LOGON); +} + +void sub_80B0C5C(struct Sprite *sprite) +{ + if (sprite->affineAnimEnded) + { + u8 r1 = sprite->data[0]; + + if (gSprites[r1].affineAnimEnded) + { + sprite->invisible = TRUE; + gSprites[r1].invisible = TRUE; + sprite->callback = sub_80B0CB0; + } + } +} + +void sub_80B0CB0(struct Sprite *sprite) +{ + shared19338[sprite->data[1]].unk2_1 = 0; + sub_80B0B5C(sprite->data[0]); + sub_80B0BB4(); +} + +void sub_80B0CDC(u8 a, int unused) +{ + shared19338[a].unk2_1 = 0; +} + +void unref_sub_80B0CF4(void) +{ + //shared18000.unk18000 ^= 1; + gSharedMem[0x18000] ^= 1; + //if (shared18000.unk18000 == 0) + if (gSharedMem[0x18000] == 0) + { + u8 i; + + for (i = 0; i < 4; i++) + { + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA308[i][0], + gUnknown_083CA308[i][1], + gUnknown_083CA310[i][0] + 5, + gUnknown_083CA310[i][1] + 1); + } + sub_80AE514(); + sub_80AEB30(); + } + else + { + sub_80B0D7C(); + } +} + +void sub_80B0D7C(void) +{ + u8 r5 = 0; + u8 sp8[8]; + + if (gSharedMem[0x18000] != 0) + { + u8 i; + s16 r2; + + for (i = 0; i < 4; i++) + { + FillWindowRect_DefaultPalette( + &gUnknown_03004210, + 0, + gUnknown_083CA308[i][0], + gUnknown_083CA308[i][1], + gUnknown_083CA310[i][0] + 5, + gUnknown_083CA310[i][1] + 1); + } + for (i = 0; i < 4; i++) + { + r2 = sContestantStatus[i].unk4; + if (r2 < 0) + { + r2 = -r2; + sp8[0] = CHAR_HYPHEN; + r5++; + } + ConvertIntToDecimalStringN(sp8 + r5, r2, 0, 4); + sub_8003460( + &gUnknown_03004210, + sp8, + 592 + gUnknown_02038696[i] * 22, + gUnknown_083CA310[gUnknown_02038696[i]][0], + gUnknown_083CA310[gUnknown_02038696[i]][1]); + r5 = 0; + } + for (i = 0; i < 4; i++) + { + r2 = sContestantStatus[i].appeal2; + if (r2 < 0) + { + r2 = -r2; + sp8[0] = CHAR_HYPHEN; + r5++; + } + ConvertIntToDecimalStringN(sp8 + r5, r2, 0, 4); + sub_8003460( + &gUnknown_03004210, + sp8, + 512 + gUnknown_02038696[i] * 20, + gUnknown_083CA308[gUnknown_02038696[i]][0], + gUnknown_083CA308[gUnknown_02038696[i]][1]); + r5 = 0; + } + sub_80AEB30(); + } +} + +void unref_sub_80B0EE8(s32 *a, s32 b) +{ + s32 i; + s32 j; + + for (i = 0; i < b - 1; i++) + { + for (j = b - 1; j > i; j--) + { + if (a[j - 1] > a[j]) + { + s32 temp = a[j]; + + a[j] = a[j - 1]; + a[j - 1] = temp; + } + } + } +} + +// something to do with contest NPC opponents, I think. +void sub_80B0F28(u8 a) +{ + u8 sp0[4]; + u16 sp4[4] = {0}; + s32 i; + s32 r2; + s32 r4; + + for (i = 0; i < 4; i++) + { + sp4[i] = Random(); + for (r2 = 0; r2 < i; r2++) + { + if (sp4[i] == sp4[r2]) + { + i--; + break; + } + } + } + + if (a == 0) + { + for (i = 0; i < 4; i++) + { + gUnknown_02038696[i] = i; + for (r4 = 0; r4 < i; r4++) + { + if (gUnknown_02038670[gUnknown_02038696[r4]] < gUnknown_02038670[i] + || (gUnknown_02038670[gUnknown_02038696[r4]] == gUnknown_02038670[i] && sp4[gUnknown_02038696[r4]] < sp4[i])) + { + for (r2 = i; r2 > r4; r2--) + gUnknown_02038696[r2] = gUnknown_02038696[r2 - 1]; + gUnknown_02038696[r4] = i; + break; + } + } + if (r4 == i) + gUnknown_02038696[i] = i; + } + memcpy(sp0, gUnknown_02038696, sizeof(sp0)); + for (i = 0; i < 4; i++) + gUnknown_02038696[sp0[i]] = i; + } + else + { + memset(sp0, 0xFF, sizeof(sp0)); + for (i = 0; i < 4; i++) + { + u8 r2 = sContestantStatus[i].unkB_0; + + while (1) + { + u8 *ptr = &sp0[r2]; + if (*ptr == 0xFF) + { + *ptr = i; + gUnknown_02038696[i] = r2; + break; + } + r2++; + } + } + for (i = 0; i < 3; i++) + { + for (r4 = 3; r4 > i; r4--) + { + if (sContestantStatus[r4 - 1].unkB_0 == sContestantStatus[r4].unkB_0 + && gUnknown_02038696[r4 - 1] < gUnknown_02038696[r4] + && sp4[r4 - 1] < sp4[r4]) + { + u8 temp = gUnknown_02038696[r4]; + + gUnknown_02038696[r4] = gUnknown_02038696[r4 - 1]; + gUnknown_02038696[r4 - 1] = temp; + } + } + } + } +} + +void sub_80B1118(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + //LoadPalette(shared18000.unk18004[5 + i], (gUnknown_02038696[i] + 5) * 16, 32); + LoadPalette(shared18004 + (i + 5) * 16, (gUnknown_02038696[i] + 5) * 16, 32); + } + sub_80AE514(); +} + +void sub_80B114C(u8 contestant) +{ + bool8 r8; + s32 i; + + sContestantStatus[contestant].appeal2 = 0; + sContestantStatus[contestant].appeal1 = 0; + r8 = sub_80AF404(contestant); + if (r8) + { + u16 move = sContestantStatus[contestant].currMove; + u8 effect = gContestMoves[move].effect; + u8 rnd; + + sContestantStatus[contestant].moveCategory = gContestMoves[sContestantStatus[contestant].currMove].contestCategory; + if (sContestantStatus[contestant].currMove == sContestantStatus[contestant].prevMove && sContestantStatus[contestant].currMove != MOVE_NONE) + { + sContestantStatus[contestant].disappointedRepeat = TRUE; + sContestantStatus[contestant].moveRepeatCount++; + } + else + { + sContestantStatus[contestant].moveRepeatCount = 0; + } + sContestantStatus[contestant].appeal1 = gContestEffects[effect].appeal; + sContestantStatus[contestant].appeal2 = gContestEffects[effect].appeal; + shared192D0_.unk4 = gContestEffects[effect].jam; + shared192D0_.unk6 = gContestEffects[effect].jam; + shared192D0_.unk11 = contestant; + for (i = 0; i < 4; i++) + { + sContestantStatus[i].unkE = 0; + shared192D0_.unkD[i] = 0; + } + if (sContestantStatus[contestant].unk15_4 && AreMovesContestCombo(sContestantStatus[contestant].prevMove, sContestantStatus[contestant].currMove) == 0) + sContestantStatus[contestant].unk15_4 = 0; + gContestEffectFuncs[effect](); + if (sContestantStatus[contestant].unk10_4 == 1) + sContestantStatus[contestant].appeal2 += sContestantStatus[contestant].unkD - 10; + else if (sContestantStatus[contestant].unk11_5) + sContestantStatus[contestant].appeal2 += sContestantStatus[contestant].unkD * 3; + else + sContestantStatus[contestant].appeal2 += sContestantStatus[contestant].unkD; + sContestantStatus[contestant].unk16 = 0; + sContestantStatus[contestant].unk15_6 = 0; + if (sub_80B214C(contestant)) + { + u8 r2 = AreMovesContestCombo(sContestantStatus[contestant].prevMove, sContestantStatus[contestant].currMove); + + if (r2 != 0 && sContestantStatus[contestant].unk15_4) + { + sContestantStatus[contestant].unk16 = r2; + sContestantStatus[contestant].unk15_6 = 1; + sContestantStatus[contestant].unk15_4 = 0; + sContestantStatus[contestant].unk17 = sContestantStatus[contestant].appeal1 * sContestantStatus[contestant].unk16; + sContestantStatus[contestant].unk15_3 = 1; + } + else + { + if (gContestMoves[sContestantStatus[contestant].currMove].comboStarterId != 0) + { + sContestantStatus[contestant].unk15_4 = 1; + sContestantStatus[contestant].unk15_6 = 1; + } + else + { + sContestantStatus[contestant].unk15_4 = 0; + } + } + } + if (sContestantStatus[contestant].disappointedRepeat) + sContestantStatus[contestant].unk18 = (sContestantStatus[contestant].moveRepeatCount + 1) * 10; + if (sContestantStatus[contestant].unkC_0) + { + sContestantStatus[contestant].unk15_4 = 0; + sContestantStatus[contestant].appeal2 = 0; + sContestantStatus[contestant].appeal1 = 0; + } + shared19328.bits_0 = Contest_GetMoveExcitement(sContestantStatus[contestant].currMove); + if (sContestantStatus[contestant].unk11_4) + shared19328.bits_0 = 1; + if (shared19328.bits_0 > 0) + { + if (sContest.applauseLevel + shared19328.bits_0 > 4) + shared19328.unk2 = 60; + else + shared19328.unk2 = 10; + } + else + { + shared19328.unk2 = 0; + } + + rnd = Random() % 3; + for (i = 0; i < 4; i++) + { + if (i != contestant) + { + if (rnd == 0) + break; + rnd--; + } + } + sContestantStatus[contestant].unk1B = i; + } +} + +void sub_80B13EC(u8 a, u8 b) +{ + sContestantStatus[a].unk13 = b; +} + +void sub_80B1404(u8 a, u8 b) +{ + sContestantStatus[a].unk14 = b; +} + +void sub_80B141C(u8 a, u8 b) +{ + if (b >= 60) + sub_80B13EC(a, 53); + else if (b >= 40) + sub_80B13EC(a, 52); + else if (b >= 30) + sub_80B13EC(a, 51); + else if (b >= 20) + sub_80B13EC(a, 50); + else if (b >= 10) + sub_80B13EC(a, 49); +} + +void sub_80B146C(u8 a, u8 b) +{ + StringCopy(gStringVar1, gContestMons[a].nickname); + StringCopy(gStringVar2, gMoveNames[sContestantStatus[a].currMove]); + if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_COOL) + StringCopy(gStringVar3, gText_Contest_Shyness); + else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_BEAUTY) + StringCopy(gStringVar3, gText_Contest_Anxiety); + else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_CUTE) + StringCopy(gStringVar3, gText_Contest_Laziness); + else if (gContestMoves[sContestantStatus[shared192D0_.unk11].currMove].contestCategory == CONTEST_CATEGORY_SMART) + StringCopy(gStringVar3, gText_Contest_Hesitancy); + else + StringCopy(gStringVar3, gText_Contest_Fear); + StringExpandPlaceholders(gStringVar4, gUnknown_083CC188[b]); + sub_80AF138(); + sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15); +} + +void sub_80B157C(u8 p) +{ + sContestantStatus[p].unkC_0 = 1; + sContestantStatus[p].currMove = MOVE_NONE; +} + +// Determines turn order? +void sub_80B159C(void) +{ + u8 r12 = 0; + s32 i; + s32 j; + u8 sp0[4]; + u8 sp4[4]; + + for (i = 0; i < 4; i++) + { + sp0[i] = gUnknown_02038696[i]; + sp4[i] = 0; + } + + for (i = 0; i < 4; i++) + { + for (j = 0; j < 4; j++) + { + if (sContestantStatus[j].unk19 == i) + { + sp0[j] = i; + sp4[j] = 1; + break; + } + } + if (j == 4) + { + for (j = 0; j < 4; j++) + { + if (sp4[j] == 0 && sContestantStatus[j].unk19 == 0xFF) + { + r12 = j; + j++; + break; + } + } + for (; j < 4; j++) + { + if (sp4[j] == 0 && sContestantStatus[j].unk19 == 0xFF + && gUnknown_02038696[r12] > gUnknown_02038696[j]) + r12 = j; + } + sp0[r12] = i; + sp4[r12] = 1; + } + } + + for (i = 0; i < 4; i++) + { + shared192D0_.unk0[i] = sp0[i]; + sContestantStatus[i].unk19 = 0xFF; + sContestantStatus[i].unk10_6 = 0; + gUnknown_02038696[i] = sp0[i]; + } +} + +void sub_80B16D0(struct Sprite *sprite) +{ + if (sprite->data[1]++ > 84) + { + sprite->data[1] = 0; + sprite->invisible = TRUE; + sprite->callback = SpriteCallbackDummy; + sContest.unk1920A_4 = 0; + } +} + +void sub_80B1710(u8 a) +{ + u8 spriteId = sContest.unk19216; + + switch (a) + { + case 0: + case 1: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0]; + PlaySE(SE_HAZURE); + break; + case 2: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 4; + PlaySE(SE_SEIKAI); + break; + case 3: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 8; + PlaySE(SE_SEIKAI); + break; + case 4: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 12; + PlaySE(SE_TK_WARPIN); + break; + case 5: // exactly the same as case 4 + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 12; + PlaySE(SE_TK_WARPIN); + break; + case 6: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 16; + PlaySE(SE_TK_WARPIN); + break; + case 8: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 24; + PlaySE(SE_W215); + break; + case 7: + default: + gSprites[spriteId].oam.tileNum = gSprites[spriteId].data[0] + 20; + PlaySE(SE_TK_WARPIN); + break; + } + gSprites[spriteId].data[1] = 0; + gSprites[spriteId].invisible = FALSE; + gSprites[spriteId].callback = sub_80B16D0; + sContest.unk1920A_4 = 1; +} + +void sub_80B1928(void) +{ + s32 i; + + for (i = 0; i < 5; i++) + { + const u8 *src; + + if (i < sContest.applauseLevel) + src = gContestApplauseMeterGfx + 64; + else + src = gContestApplauseMeterGfx; + CpuCopy32(src, (void *)(VRAM + 0x10000 + (gSprites[sContest.applauseMeterSpriteId].oam.tileNum + 17 + i) * 32), 32); + CpuCopy32(src + 32, (void *)(VRAM + 0x10000 + (gSprites[sContest.applauseMeterSpriteId].oam.tileNum + 25 + i) * 32), 32); + if (sContest.applauseLevel > 4) + sub_80B1A2C(); + } +} + +void unref_sub_80B19D0(void) +{ + u8 str[20]; + StringCopy(str, gUnknown_083CC2EC); + sub_8003460(&gUnknown_03004210, str, 680, 0, 0); +} + +s8 Contest_GetMoveExcitement(u16 move) +{ + return gContestExcitementTable[gSpecialVar_ContestCategory][gContestMoves[move].contestCategory]; +} + +// Launches crowd movement task, maybe +u8 sub_80B1A2C(void) +{ + u8 taskId = CreateTask(c3_08130B10, 10); + + gTasks[taskId].data[1] = 1; + gTasks[taskId].data[2] = IndexOfSpritePaletteTag(0x0ABE2); + return taskId; +} + +void c3_08130B10(u8 taskId) +{ + if (++gTasks[taskId].data[0] == 1) + { + gTasks[taskId].data[0] = 0; + if (gTasks[taskId].data[3] == 0) + gTasks[taskId].data[4]++; + else + gTasks[taskId].data[4]--; + BlendPalette(264 + gTasks[taskId].data[2] * 16, 1, gTasks[taskId].data[4], 0x7FFF); + if (gTasks[taskId].data[4] == 0 || gTasks[taskId].data[4] == 16) + { + gTasks[taskId].data[3] ^= 1; + if (sContest.applauseLevel < 5) + { + BlendPalette(264 + gTasks[taskId].data[2] * 16, 1, 0, 31); + DestroyTask(taskId); + } + } + } +} + +void sub_80B1B14(void) +{ + CreateTask(sub_80B1B68, 10); + gSprites[sContest.applauseMeterSpriteId].pos2.x = -70; + gSprites[sContest.applauseMeterSpriteId].invisible = FALSE; + sContest.unk1920A_6 = 1; +} + +void sub_80B1B68(u8 taskId) +{ + struct Sprite *sprite = &gSprites[sContest.applauseMeterSpriteId]; + + gTasks[taskId].data[10] += 1664; + sprite->pos2.x += gTasks[taskId].data[10] >> 8; + gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF; + if (sprite->pos2.x > 0) + sprite->pos2.x = 0; + if (sprite->pos2.x == 0) + { + sContest.unk1920A_6 = 0; + DestroyTask(taskId); + } +} + +void sub_80B1BDC(void) +{ + if (gSprites[sContest.applauseMeterSpriteId].invisible == TRUE) + { + sContest.unk1920A_6 = 0; + } + else + { + CreateTask(sub_80B1C34, 10); + gSprites[sContest.applauseMeterSpriteId].pos2.x = 0; + sContest.unk1920A_6 = 1; + } +} + +void sub_80B1C34(u8 taskId) +{ + struct Sprite *sprite = &gSprites[sContest.applauseMeterSpriteId]; + + gTasks[taskId].data[10] += 1664; + sprite->pos2.x -= gTasks[taskId].data[10] >> 8; + gTasks[taskId].data[10] = gTasks[taskId].data[10] & 0xFF; + if (sprite->pos2.x < -70) + sprite->pos2.x = -70; + if (sprite->pos2.x == -70) + { + sprite->invisible = TRUE; + sContest.unk1920A_6 = 0; + DestroyTask(taskId); + } +} + +void sub_80B1CBC(s8 a) +{ + u8 taskId = CreateTask(sub_80B1CFC, 5); + + gTasks[taskId].data[0] = a; + sContest.unk1920A_5 = 1; +} + +void sub_80B1CFC(u8 taskId) +{ + switch (gTasks[taskId].data[10]) + { + case 0: + sub_80B1B14(); + gTasks[taskId].data[10]++; + break; + case 1: + if (!sContest.unk1920A_6) + { + nullsub_18(gTasks[taskId].data[0]); + gTasks[taskId].data[10]++; + } + break; + case 2: + if (gTasks[taskId].data[11]++ > 20) + { + gTasks[taskId].data[11] = 0; + sub_80B1928(); + sContest.unk1920A_5 = 0; + DestroyTask(taskId); + } + break; + } +} + +void unref_sub_80B1D84(void) +{ + gSprites[sContest.applauseMeterSpriteId].pos2.x = 0; + gSprites[sContest.applauseMeterSpriteId].invisible = FALSE; +} + +void unref_sub_80B1DB8(void) +{ + gSprites[sContest.applauseMeterSpriteId].invisible = TRUE; +} + +void sub_80B1DDC(void) +{ + CreateTask(sub_80B1DFC, 15); + sContest.unk1920A_7 = 1; +} + +void sub_80B1DFC(u8 taskId) +{ + if (gTasks[taskId].data[10]++ > 6) + { + register struct Task *task asm("r0"); + register u32 r4 asm("r4") = taskId * 4; + + gTasks[taskId].data[10] = 0; + if (gTasks[taskId].data[11] == 0) + { + DmaCopy32Defvars(3, shared16800, (void *)(VRAM + 0x2000), 0x1000); + } + else + { + DmaCopy32Defvars(3, shared15800, (void *)(VRAM + 0x2000), 0x1000); + gTasks[taskId].data[12]++; + } + + // Why won't this match the normal way? + asm("add %0, %1, #0\n\t" + "add %0, %3\n\t" + "lsl %0, #3\n\t" + "add %0, %2\n\t" + : "=r"(task):"r"(r4),"r"(gTasks),"r"(taskId)); + + //gTasks[taskId].data[11] ^= 1; + task->data[11] ^= 1; + + //if (gTasks[taskId].data[12] == 9) + if (task->data[12] == 9) + { + sContest.unk1920A_7 = 0; + DestroyTask(taskId); + } + } +} + +#define tBlendColor data[0] +#define tBlendCoeff data[1] + +void sub_80B1EA8(s8 a, s8 b) +{ + u8 taskId = CreateTask(sub_80B1F4C, 10); + u16 blendColor; + u8 blendCoeff; + u8 r3; + + if (a > 0) + { + blendColor = RGB(30, 27, 8); + if (b > 0) + { + blendCoeff = 0; + r3 = sContest.applauseLevel * 3; + } + else + { + blendCoeff = sContest.applauseLevel * 3; + r3 = 0; + } + } + else + { + blendColor = 0; + if (b > 0) + { + blendCoeff = 0; + r3 = 12; + } + else + { + blendCoeff = 12; + r3 = 0; + } + } + gTasks[taskId].tBlendColor = blendColor; + gTasks[taskId].tBlendCoeff = blendCoeff; + gTasks[taskId].data[2] = b; + gTasks[taskId].data[3] = r3; + sContest.unk1920B_0 = 0; +} + +void sub_80B1F4C(u8 taskId) +{ + if (gTasks[taskId].data[10]++ >= 0) + { + gTasks[taskId].data[10] = 0; + if (gTasks[taskId].data[2] > 0) + gTasks[taskId].tBlendCoeff++; + else + gTasks[taskId].tBlendCoeff--; + BlendPalette(17, 1, gTasks[taskId].tBlendCoeff, gTasks[taskId].tBlendColor); + BlendPalette(26, 1, gTasks[taskId].tBlendCoeff, gTasks[taskId].tBlendColor); + if (gTasks[taskId].tBlendCoeff == gTasks[taskId].data[3]) + { + DestroyTask(taskId); + sContest.unk1920B_0 = 0; + } + } +} + +#undef tBlendColor +#undef tBlendCoeff + +void sub_80B1FD0(bool8 a) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + if (sContestantStatus[i].unk10_6 != 0 && a) + { + CpuCopy32( + GetTurnOrderNumberGfx(i), + (void *)(VRAM + 0x10000 + (gSprites[shared19338[i].unk1].oam.tileNum + 5) * 32), + 64); + gSprites[shared19338[i].unk1].pos1.y = gUnknown_083CA33C[gUnknown_02038696[i]]; + gSprites[shared19338[i].unk1].invisible = FALSE; + } + else + { + gSprites[shared19338[i].unk1].invisible = TRUE; + } + } +} + +const u8 *GetTurnOrderNumberGfx(u8 contestant) +{ + if (sContestantStatus[contestant].unk10_6 != 1) + return gContestNextTurnRandomGfx; + else + return gContestNextTurnNumbersGfx + sContestantStatus[contestant].unk19 * 64; +} + +void sub_80B20C4(void) +{ + s32 i; + + for (i = 0; i < 4; i++) + { + if (shared192D0_.unkD[i] != 0 && !Contest_IsMonsTurnDisabled(i)) + { + u8 r4 = gUnknown_02038696[i] * 5 + 2; + u16 r0 = sub_80AEFE8(i, 3); + + *(u16 *)(VRAM + 0xC000 + r4 * 64 + 0x28) = r0; + *(u16 *)(VRAM + 0xC000 + r4 * 64 + 0x2A) = r0 + 1; + *(u16 *)(VRAM + 0xC000 + (r4 + 1) * 64 + 0x28) = r0 + 16; + *(u16 *)(VRAM + 0xC000 + (r4 + 1) * 64 + 0x2A) = r0 + 17; + PlaySE(SE_C_PASI); + } + } +} + +bool8 sub_80B214C(u8 a) +{ + if (sContestantStatus[a].disappointedRepeat || sContestantStatus[a].unkC_0) + return FALSE; + else + return TRUE; +} + +void sub_80B2184(void) +{ + s32 i; + + ((vBgCnt *)®_BG1CNT)->priority = 0; + ((vBgCnt *)®_BG1CNT)->screenSize = 1; + ((vBgCnt *)®_BG1CNT)->areaOverflowMode = 0; + + gUnknown_030042C0 = DISPLAY_WIDTH; + gUnknown_030041B4 = DISPLAY_HEIGHT; + REG_BG1HOFS = DISPLAY_WIDTH; + REG_BG1VOFS = DISPLAY_HEIGHT; + + DmaClear32(3, (void *)(VRAM + 0xF000), 0x1000); + LZDecompressVram(gUnknown_08D17C3C, (void *)(VRAM + 0xF000)); + + ((vBgCnt *)®_BG1CNT)->charBaseBlock = 0; + + for (i = 0; i < 4; i++) + { + gSprites[shared19338[i].unk0].oam.priority = 1; + gSprites[shared19338[i].unk1].oam.priority = 1; + } + + ((vBgCnt *)®_BG2CNT)->priority = 1; + ((vBgCnt *)®_BG0CNT)->priority = 1; + ((vBgCnt *)®_BG1CNT)->screenSize = 2; +} + +void sub_80B2280(void) +{ + s32 i; + + DmaClearLarge32(3, (void *)(VRAM + 0x8000), 0x2000, 0x1000); + DmaClear32(3, (void *)(VRAM + 0xF000), 0x1000); + + gUnknown_030042C0 = 0; + gUnknown_030041B4 = 0; + + ((vBgCnt *)®_BG1CNT)->priority = 1; + ((vBgCnt *)®_BG1CNT)->screenSize = 0; + ((vBgCnt *)®_BG1CNT)->areaOverflowMode = 0; + ((vBgCnt *)®_BG1CNT)->charBaseBlock = 2; + + for (i = 0; i < 4; i++) + { + gSprites[shared19338[i].unk0].oam.priority = 0; + gSprites[shared19338[i].unk1].oam.priority = 0; + } +} + +void sub_80B237C(u8 taskId) +{ + gUnknown_030042C0 = 0; + gUnknown_030041B4 = DISPLAY_HEIGHT; + PlaySE12WithPanning(SE_C_MAKU_D, 0); + gTasks[taskId].func = sub_80B23BC; +} + +void sub_80B23BC(u8 taskId) +{ + gUnknown_030041B4 -= 7; + if (gUnknown_030041B4 < 0) + gUnknown_030041B4 = 0; + if (*(u16 *)&gUnknown_030041B4 == 0) // Why cast? + { + gTasks[taskId].data[0] = 0; + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[2] = 0; + gTasks[taskId].func = sub_80B2400; + } +} + +void sub_80B2400(u8 taskId) +{ + s32 i; + + switch (gTasks[taskId].data[0]) + { + case 0: + for (i = 0; i < 4; i++) + sContest.unk19218[i] = gUnknown_02038696[i]; + sub_80AFA5C(); + sub_80B0588(); + sub_80AEF50(); + sub_80B1118(); + sub_80B1FD0(TRUE); + sub_80AFFA0(); + gTasks[taskId].data[0] = 1; + break; + case 1: + if (gIsLinkContest & 1) + { + u8 taskId2; + + sContest.unk1920B_2 = 1; + if (sub_80AE074()) + sub_80AF438(); + taskId2 = CreateTask(sub_80C8C80, 0); + SetTaskFuncWithFollowupFunc(taskId2, sub_80C8C80, sub_80AD8DC); + sub_80AF860(); + gTasks[taskId].data[0] = 2; + } + else + { + sub_80AF438(); + gTasks[taskId].data[0] = 3; + } + break; + case 2: + if (!sContest.unk1920B_2) + gTasks[taskId].data[0] = 3; + break; + case 3: + sub_80AF120(); + sub_80AEB30(); + gTasks[taskId].data[0] = 0; + gTasks[taskId].func = sub_80B253C; + break; + } +} + +void sub_80B2508(u8 taskId) +{ + gUnknown_030041B4 += 7; + if (gUnknown_030041B4 > DISPLAY_HEIGHT) + gTasks[taskId].func = sub_80ADCDC; +} + +void sub_80B253C(u8 taskId) +{ + if (gTasks[taskId].data[2] < 10) + { + gTasks[taskId].data[2]++; + } + else + { + if (gTasks[taskId].data[1] == 0) + { + if (gTasks[taskId].data[0] == 16) + gTasks[taskId].data[1]++; + else + gTasks[taskId].data[0]++; + } + else + { + if (gTasks[taskId].data[0] == 0) + { + gTasks[taskId].data[1] = 0; + gTasks[taskId].data[2] = 0; + gTasks[taskId].func = sub_80B25A4; + } + else + { + gTasks[taskId].data[0]--; + } + } + } +} + +void sub_80B25A4(u8 taskId) +{ + if (gTasks[taskId].data[2] < 10) + { + gTasks[taskId].data[2]++; + } + else + { + gTasks[taskId].data[2] = 0; + PlaySE12WithPanning(SE_C_MAKU_U, 0); + gTasks[taskId].func = sub_80B2508; + } +} + +void sub_80B25E4(u8 a) +{ + s32 i; + u8 taskId; + + for (i = 0; i < 4; i++) + { + gSprites[shared19338[i].unk0].oam.matrixNum = AllocOamMatrix(); + gSprites[shared19338[i].unk0].oam.affineMode = 1; + StartSpriteAffineAnim(&gSprites[shared19338[i].unk0], a); + if (a == 2) + { + AnimateSprite(&gSprites[shared19338[i].unk0]); + gSprites[shared19338[i].unk0].invisible = FALSE; + } + } + taskId = CreateTask(sub_80B26C8, 5); + gTasks[taskId].data[0] = a; + sContest.unk1920B_1 = 1; +} + +void sub_80B26C8(u8 taskId) +{ + s32 i; + + if (gSprites[shared19338[0].unk0].affineAnimEnded) + { + if ((u8)gTasks[taskId].data[0] == 1) + { + for (i = 0; i < 4; i++) + gSprites[shared19338[i].unk0].invisible = TRUE; + } + for (i = 0; i < 4; i++) + FreeSpriteOamMatrix(&gSprites[shared19338[i].unk0]); + sContest.unk1920B_1 = 0; + DestroyTask(taskId); + } +} + +u16 SanitizeMove(u16 move) +{ + if (move >= NUM_MOVES) + move = MOVE_POUND; + return move; +} + +u16 SanitizeSpecies(u16 species) +{ + if (species >= NUM_SPECIES) + species = SPECIES_NONE; + return species; +} + +void sub_80B2790(u8 a) +{ + s32 i; + u16 move = SanitizeMove(sContestantStatus[a].currMove); + u16 species = SanitizeSpecies(gContestMons[a].species); + u8 r5_2; + + memset(&shared19348_, 0, sizeof(shared19348_)); + battle_anim_clear_some_data(); + for (i = 0; i < 4; i++) + gBattleMonForms[i] = 0; + switch (move) + { + case MOVE_CURSE: + if (gBaseStats[species].type1 == TYPE_GHOST || gBaseStats[species].type2 == TYPE_GHOST) + gUnknown_0202F7C4 = 0; + else + gUnknown_0202F7C4 = 1; + break; + case MOVE_TRANSFORM: + case MOVE_ROLE_PLAY: + r5_2 = sContestantStatus[a].unk1B; + shared19348_.unk2 = SanitizeSpecies(gContestMons[r5_2].species); + shared19348_.unk10 = gContestMons[r5_2].personality; + shared19348_.unk4_0 = 1; + break; + case MOVE_RETURN: + gHappinessMoveAnim = 0xFF; + break; + case MOVE_FRUSTRATION: + gHappinessMoveAnim = 0; + break; + case MOVE_SOLAR_BEAM: + case MOVE_RAZOR_WIND: + case MOVE_SKULL_BASH: + case MOVE_SKY_ATTACK: + if (sContest.unk1925E == 0) + { + sContest.unk1925E = 2; + gUnknown_0202F7C4 = 0; + } + else + { + gUnknown_0202F7C4 = 1; + } + break; + } + sub_80B2968(); +} + +void sub_80B28CC(int unused) +{ + memset(&shared19348_, 0, sizeof(shared19348_)); + if (sContest.unk1925E != 0) + sContest.unk1925E--; +} + +void sub_80B28F0(u8 a) +{ + shared19348_.unk5 = a; + shared19348_.unk0 = SanitizeSpecies(gContestMons[a].species); + shared19348_.unk8 = gContestMons[a].personality; + shared19348_.unkC = gContestMons[a].otId; +} + +void sub_80B292C(void) +{ + gObjectBankIDs[3] = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy); + InitSpriteAffineAnim(&gSprites[gObjectBankIDs[gBankTarget]]); + sub_80B2968(); +} + +void sub_80B2968(void) +{ + struct Sprite *sprite = &gSprites[gObjectBankIDs[3]]; + + sprite->pos2.x = 0; + sprite->pos2.y = 0; + sprite->pos1.x = sub_8077ABC(3, 0); + sprite->pos1.y = sub_8077ABC(3, 1); + sprite->invisible = TRUE; +} + +void SelectContestMoveBankTarget(u16 move) +{ + switch (gBattleMoves[move].target) + { + case F_TARGET_UNK2: + case F_TARGET_USER: + gBankTarget = 2; + break; + case F_TARGET_SELECTED_POKEMON: + case F_TARGET_RANDOM: + case F_TARGET_BOTH_ENEMIES: + case F_TARGET_ALL_EXCEPT_USER: + default: + gBankTarget = 3; + break; + } +} + +bool8 Contest_SaveWinner(u8 a) +{ + s32 i; + u8 r7 = Random() % 3; + + for (i = 0; i < 3; i++) + { + if (gContestFinalStandings[i] == 0) + break; + } + if (a == 0xFF && i != gContestPlayerMonIndex) + return FALSE; + switch (gSpecialVar_ContestCategory) + { + case CONTEST_CATEGORY_COOL: + r7 += 0; + break; + case CONTEST_CATEGORY_BEAUTY: + r7 += 3; + break; + case CONTEST_CATEGORY_CUTE: + r7 += 6; + break; + case CONTEST_CATEGORY_SMART: + r7 += 9; + break; + case CONTEST_CATEGORY_TOUGH: + r7 += 12; + break; + } + if (a != 0xFE) + { + u8 r4 = sub_80B2C4C(a, 1); + + gSaveBlock1.contestWinners[r4].personality = gContestMons[i].personality; + gSaveBlock1.contestWinners[r4].species = gContestMons[i].species; + gSaveBlock1.contestWinners[r4].otId = gContestMons[i].otId; + StringCopy(gSaveBlock1.contestWinners[r4].nickname, gContestMons[i].nickname); + StringCopy(gSaveBlock1.contestWinners[r4].trainerName, gContestMons[i].trainerName); + if (a != 0xFF) + gSaveBlock1.contestWinners[r4].contestCategory = gSpecialVar_ContestCategory; + else + gSaveBlock1.contestWinners[r4].contestCategory = r7; + } + else + { + shared15DE0.personality = gContestMons[i].personality; + shared15DE0.otId = gContestMons[i].otId; + shared15DE0.species = gContestMons[i].species; + StringCopy(shared15DE0.nickname, gContestMons[i].nickname); + if (gIsLinkContest & 1) + StringCopy(shared15DE0.trainerName, gLinkPlayers[i].name); + else + StringCopy(shared15DE0.trainerName, gContestMons[i].trainerName); + shared15DE0.contestCategory = r7; + } + return TRUE; +} + +u8 sub_80B2C4C(u8 a, u8 b) +{ + s32 i; + + switch (a) + { + case 0: + case 1: + return a; + case 2: + if (b != 0) + { + for (i = 4; i >= 3; i--) + memcpy(&gSaveBlock1.contestWinners[i], &gSaveBlock1.contestWinners[i - 1], sizeof(struct ContestWinner)); + } + return 2; + case 3: + if (b != 0) + { + for (i = 7; i >= 6; i--) + memcpy(&gSaveBlock1.contestWinners[i], &gSaveBlock1.contestWinners[i - 1], sizeof(struct ContestWinner)); + } + return 5; + default: + switch (gSpecialVar_ContestCategory) + { + case CONTEST_CATEGORY_COOL: + return 8; + case CONTEST_CATEGORY_BEAUTY: + return 9; + case CONTEST_CATEGORY_CUTE: + return 10; + case CONTEST_CATEGORY_SMART: + return 11; + case CONTEST_CATEGORY_TOUGH: + default: + return 12; + } + } +} + +void Contest_ResetWinners(void) +{ + s32 i; + + for (i = 0; i < 8; i++) + gSaveBlock1.contestWinners[i] = gUnknown_083CC5D0[i]; +} diff --git a/src/debug/matsuda_debug_menu.c b/src/debug/matsuda_debug_menu.c index 0f77d2814..728562b81 100644 --- a/src/debug/matsuda_debug_menu.c +++ b/src/debug/matsuda_debug_menu.c @@ -18,17 +18,16 @@ #include "ewram.h" extern u8 gUnknown_0203856C; -extern u8 gUnknown_0203857D[][64]; extern u16 gUnknown_02038670[]; extern u16 gUnknown_02038678[]; extern u16 gUnknown_02038680[]; -extern u8 gUnknown_02038690[]; +extern u8 gContestFinalStandings[]; extern u8 gUnknown_02038694; extern u8 gIsLinkContest; extern u8 gUnknown_0203869B; extern u8 gContestPlayerMonIndex; -extern u16 gScriptContestCategory; -extern u16 gScriptContestRank; +extern u16 gSpecialVar_ContestCategory; +extern u16 gSpecialVar_ContestRank; extern u16 gUnknown_030042A4; extern u16 gUnknown_030042A0; @@ -321,7 +320,7 @@ u8 MatsudaDebugMenu_CommTest(void) static void sub_80A9C98(u8 taskId) { - sub_80AE098(0); + Contest_CreatePlayerMon(0); SetTaskFuncWithFollowupFunc(taskId, sub_80C8734, sub_80A9CC0); } @@ -360,7 +359,7 @@ static void sub_80A9D58(u8 taskId) dest[i] = gTasks[taskId].data[5 + i]; gUnknown_0203869B = sub_80C4B34(dest); - sub_80AE82C((u8)gScriptContestCategory); + sub_80AE82C((u8)gSpecialVar_ContestCategory); sub_80B0F28(0); SetTaskFuncWithFollowupFunc(taskId, sub_80C8EBC, sub_80A9DBC); } @@ -541,9 +540,9 @@ static void sub_80AA10C(void) gUnknown_02038694 = 0; if (!(gContestMons[0].nickname[0])) - sub_80AE398(0, 0); + Contest_InitAllPokemon(0, 0); - sub_80AE098(gUnknown_02038694); + Contest_CreatePlayerMon(gUnknown_02038694); for (i = 0; i < 6; i++) { @@ -552,10 +551,10 @@ static void sub_80AA10C(void) gMatsudaDebugMenuContestTopLeft[i][1]); } - gScriptContestCategory = gScriptContestRank = 0; + gSpecialVar_ContestCategory = gSpecialVar_ContestRank = 0; zero = 0; // it's possible this was some assignment that matsuda used to quickly edit and test things without changing whats passed to the later functions. sub_80AA5BC(zero); - sub_80AA5E8(gScriptContestRank); + sub_80AA5E8(gSpecialVar_ContestRank); sub_8003460(&gMenuWindow, gMatsudaDebugMenu_GoBackText, 0xD6, 0x12, 0x12); sub_8003460(&gMenuWindow, gMatsudaDebugMenu_BattlePointsText, 0xDC, zero, 0xC); LoadSpriteSheet(gUnknown_083C92B4); @@ -576,19 +575,14 @@ void sub_80AA280(u8 var) // no? FillWindowRect_DefaultPalette(&gMenuWindow, 0, 0, 0, 0x1E, 3); StringCopy(gSharedMem, gMatsudaDebugMenu_StartText); - StringAppend(gSharedMem, &gUnknown_0203857D[var][0]); + StringAppend(gSharedMem, gContestMons[var].trainerName); for (i = 0; i < 4; i++) { if (var == i) - { - sub_8003460(&gMenuWindow, gSharedMem, (10 * i + 2), gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]); - } + sub_8003460(&gMenuWindow, gSharedMem, 10 * i + 2, gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]); else - { - u8 *ptr = gUnknown_0203857D[i]; - sub_8003460(&gMenuWindow, ptr, (10 * i + 2), gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]); - } + sub_8003460(&gMenuWindow, gContestMons[i].trainerName, 10 * i + 2, gUnknown_083C926E[i][0], gUnknown_083C926E[i][1]); } } @@ -873,8 +867,8 @@ void sub_80AABF0(struct Sprite *sprite, s8 var2) r4 = 4; sub_80AA5BC(r4); sprite->data[3] = r4; - gScriptContestCategory = sprite->data[3]; - sub_80AE398(sprite->data[3], gScriptContestRank); + gSpecialVar_ContestCategory = sprite->data[3]; + Contest_InitAllPokemon(sprite->data[3], gSpecialVar_ContestRank); sub_80AA280(sprite->data[2]); sub_80AA658(sprite->data[2]); } @@ -882,13 +876,13 @@ void sub_80AABF0(struct Sprite *sprite, s8 var2) void sub_80AAC5C(struct Sprite *sprite, s8 var2) { if (var2 > 0) - gScriptContestRank++; - else if (gScriptContestRank != 0) - gScriptContestRank--; - if (gScriptContestRank > 3) - gScriptContestRank = 3; - sub_80AA5E8(gScriptContestRank); - sub_80AE398(gScriptContestCategory, gScriptContestRank); + gSpecialVar_ContestRank++; + else if (gSpecialVar_ContestRank != 0) + gSpecialVar_ContestRank--; + if (gSpecialVar_ContestRank > 3) + gSpecialVar_ContestRank = 3; + sub_80AA5E8(gSpecialVar_ContestRank); + Contest_InitAllPokemon(gSpecialVar_ContestCategory, gSpecialVar_ContestRank); sub_80AA280(sprite->data[2]); sub_80AA658(sprite->data[2]); } @@ -901,7 +895,7 @@ void sub_80AACC4(void) SetDebugMonForContest(); if (!(gIsLinkContest & 1)) sub_80AE82C(eMatsudaDebugVar); - SetMainCallback2(sub_80AB47C); + SetMainCallback2(CB2_StartContest); } } @@ -923,7 +917,7 @@ void sub_80AAD44(struct Sprite *sprite, s8 var2) SetDebugMonForContest(); for (i = 0; i < 4; i++) - gUnknown_02038670[i] = sub_80AE770(i, gScriptContestCategory); + gUnknown_02038670[i] = sub_80AE770(i, gSpecialVar_ContestCategory); SetMainCallback2(sub_805469C); } } @@ -1155,10 +1149,10 @@ void sub_80AAF30(void) gUnknown_0203856C = 1; gContestPlayerMonIndex = 3; - sub_80AE098(0); + Contest_CreatePlayerMon(0); for (i = 3; i > -1; i--) - gUnknown_02038690[i] = 3 - i; + gContestFinalStandings[i] = 3 - i; for (i = 0; i < 3; i++) { @@ -1171,7 +1165,7 @@ void sub_80AAF30(void) gUnknown_02038670[3] = 0x12C; gUnknown_02038680[3] = 0x190; gUnknown_02038678[3] = 0x190; - sub_80B2A7C(0xFE); + Contest_SaveWinner(0xFE); } u8 MatsudaDebugMenu_SetHighScore(void) @@ -1201,11 +1195,11 @@ u8 MatsudaDebugMenu_SetArtMuseumItems(void) s32 i; gContestPlayerMonIndex = 3; - sub_80AE098(0); + Contest_CreatePlayerMon(0); for (i = 3; i > -1; i--) - gUnknown_02038690[i] = 3 - i; - for (gScriptContestCategory = 0; gScriptContestCategory < 5; gScriptContestCategory++) - sub_80B2A7C(0xFF); + gContestFinalStandings[i] = 3 - i; + for (gSpecialVar_ContestCategory = 0; gSpecialVar_ContestCategory < 5; gSpecialVar_ContestCategory++) + Contest_SaveWinner(0xFF); CloseMenu(); return 1; } diff --git a/src/engine/cable_club.c b/src/engine/cable_club.c index 4dda372f4..3187de7ed 100644 --- a/src/engine/cable_club.c +++ b/src/engine/cable_club.c @@ -23,7 +23,7 @@ #include "text.h" #include "trainer_card.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern struct TrainerCard gTrainerCards[4]; extern u8 gUnknown_03004860; extern u8 gFieldLinkPlayerCount; @@ -343,8 +343,8 @@ static void sub_8083188(u8 taskId) } else { - gScriptResult = sub_8082D9C(local1, local2); - if (gScriptResult != 0) + gSpecialVar_Result = sub_8082D9C(local1, local2); + if (gSpecialVar_Result != 0) gTasks[taskId].func = sub_8083288; } } @@ -360,10 +360,10 @@ void sub_80831F8(u8 taskId) || sub_8082DF4(taskId) == TRUE) return; - gScriptResult = sub_8082D9C(local1, local2); - if (gScriptResult == 0) + gSpecialVar_Result = sub_8082D9C(local1, local2); + if (gSpecialVar_Result == 0) return; - if (gScriptResult == 3) + if (gSpecialVar_Result == 3) { sub_800832C(); HideFieldMessageBox(); @@ -384,7 +384,7 @@ static void sub_8083288(u8 taskId) if (sub_8082DF4(taskId) == TRUE) return; - if (gScriptResult == 3) + if (gSpecialVar_Result == 3) { sub_800832C(); HideFieldMessageBox(); @@ -425,7 +425,7 @@ static void sub_8083314(u8 taskId) ResetBlockReceivedFlags(); HideFieldMessageBox(); - if (gScriptResult == 1) + if (gSpecialVar_Result == 1) { #if ENGLISH u16 linkType; @@ -461,7 +461,7 @@ static void sub_80833C4(u8 taskId) static void sub_80833EC(u8 taskId) { - gScriptResult = 5; + gSpecialVar_Result = 5; sub_8082D4C(); HideFieldMessageBox(); EnableBothScriptContexts(); @@ -470,7 +470,7 @@ static void sub_80833EC(u8 taskId) static void sub_8083418(u8 taskId) { - gScriptResult = 6; + gSpecialVar_Result = 6; sub_8082D4C(); HideFieldMessageBox(); EnableBothScriptContexts(); @@ -523,7 +523,7 @@ void sub_80834E4(void) void sub_808350C(void) { - gScriptResult = 0; + gSpecialVar_Result = 0; gLinkType = 0x3311; gBattleTypeFlags = 0; sub_8082CD4(2, 4); @@ -537,14 +537,14 @@ static void sub_808353C(u8 taskId) switch (gTasks[taskId].data[0]) { case 0: - if (gScriptResult == 1) + if (gSpecialVar_Result == 1) { playerCount = GetLinkPlayerCount(); for (i = 0; i < playerCount; i++) { if (gLinkPlayers[i].language == LANGUAGE_JAPANESE) { - gScriptResult = 7; + gSpecialVar_Result = 7; sub_8008480(); gTasks[taskId].data[0] = 1; return; diff --git a/src/engine/link.c b/src/engine/link.c index 27afef937..28323207c 100644 --- a/src/engine/link.c +++ b/src/engine/link.c @@ -635,7 +635,7 @@ static void BuildSendCmd(u16 code) break; case 0xAAAB: gSendCmd[0] = 0xAAAB; - gSendCmd[1] = gScriptItemId; + gSendCmd[1] = gSpecialVar_ItemId; break; case 0xCCCC: gSendCmd[0] = 0xCCCC; diff --git a/src/engine/sprite.c b/src/engine/sprite.c index 69fa860c1..c1bb36917 100644 --- a/src/engine/sprite.c +++ b/src/engine/sprite.c @@ -26,14 +26,6 @@ #define SPRITE_TILE_IS_ALLOCATED(n) ((gSpriteTileAllocBitmap[(n) / 8] >> ((n) % 8)) & 1) -struct OamMatrix -{ - s16 a; - s16 b; - s16 c; - s16 d; -}; - struct SpriteCopyRequest { const u8 *src; diff --git a/src/field/battle_tower.c b/src/field/battle_tower.c index db822f71b..6b6064c16 100644 --- a/src/field/battle_tower.c +++ b/src/field/battle_tower.c @@ -350,7 +350,7 @@ bool8 ShouldBattleEReaderTrainer(u8 levelType, u16 winStreak) ValidateEReaderTrainer(); - if (gScriptResult != 0 || gSaveBlock2.battleTower.ereaderTrainer.winStreak != winStreak) + if (gSpecialVar_Result != 0 || gSaveBlock2.battleTower.ereaderTrainer.winStreak != winStreak) { return FALSE; } @@ -1516,7 +1516,7 @@ void CheckPartyBattleTowerBanlist(void) level = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); hp = GetMonData(&gPlayerParty[i], MON_DATA_HP); - CheckMonBattleTowerBanlist(species2, heldItem, hp, gScriptResult, level, validPartySpecies, validPartyHeldItems, &counter); + CheckMonBattleTowerBanlist(species2, heldItem, hp, gSpecialVar_Result, level, validPartySpecies, validPartyHeldItems, &counter); } if (counter < 3) @@ -1549,7 +1549,7 @@ void CheckPartyBattleTowerBanlist(void) else { gSpecialVar_0x8004 = 0; - gSaveBlock2.battleTower.battleTowerLevelType = gScriptResult; + gSaveBlock2.battleTower.battleTowerLevelType = gSpecialVar_Result; } } @@ -1700,7 +1700,7 @@ void sub_8135668(void) gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]++; sub_8135A3C(); - gScriptResult = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]; + gSpecialVar_Result = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]; gStringVar1[0] = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType] + 0xA1; gStringVar1[1] = 0xFF; @@ -1712,7 +1712,7 @@ void sub_8135668(void) } sub_8135A3C(); - gScriptResult = gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]; + gSpecialVar_Result = gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]; break; case 8: gSaveBlock2.battleTower.unk_554 = gSpecialVar_0x8005; @@ -1747,29 +1747,29 @@ void sub_81358A4(void) switch (gSpecialVar_0x8004) { case 0: - gScriptResult = gSaveBlock2.battleTower.var_4AE[battleTowerLevelType]; + gSpecialVar_Result = gSaveBlock2.battleTower.var_4AE[battleTowerLevelType]; break; case 1: - gScriptResult = gSaveBlock2.battleTower.battleTowerLevelType; + gSpecialVar_Result = gSaveBlock2.battleTower.battleTowerLevelType; break; case 2: - gScriptResult = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]; + gSpecialVar_Result = gSaveBlock2.battleTower.curChallengeBattleNum[battleTowerLevelType]; break; case 3: - gScriptResult = gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]; + gSpecialVar_Result = gSaveBlock2.battleTower.curStreakChallengesNum[battleTowerLevelType]; break; case 4: - gScriptResult = gSaveBlock2.battleTower.battleTowerTrainerId; + gSpecialVar_Result = gSaveBlock2.battleTower.battleTowerTrainerId; break; case 5: case 6: case 7: break; case 8: - gScriptResult = gSaveBlock2.battleTower.unk_554; + gSpecialVar_Result = gSaveBlock2.battleTower.unk_554; break; case 9: - gScriptResult = GetCurrentBattleTowerWinStreak(battleTowerLevelType); + gSpecialVar_Result = GetCurrentBattleTowerWinStreak(battleTowerLevelType); break; case 10: SetGameStat(GAME_STAT_BATTLE_TOWER_BEST_STREAK, gSaveBlock2.battleTower.bestBattleTowerWinStreak); @@ -2149,11 +2149,11 @@ void GiveBattleTowerPrize(void) if (AddBagItem(gSaveBlock2.battleTower.prizeItem, 1) == TRUE) { CopyItemName(gSaveBlock2.battleTower.prizeItem, gStringVar1); - gScriptResult = 1; + gSpecialVar_Result = 1; } else { - gScriptResult = 0; + gSpecialVar_Result = 0; gSaveBlock2.battleTower.var_4AE[battleTowerLevelType] = 6; } } @@ -2172,7 +2172,7 @@ void AwardBattleTowerRibbons(void) ribbonType = MON_DATA_VICTORY_RIBBON; } - gScriptResult = 0; + gSpecialVar_Result = 0; if (GetCurrentBattleTowerWinStreak(battleTowerLevelType) > 55) { @@ -2182,13 +2182,13 @@ void AwardBattleTowerRibbons(void) pokemon = &gPlayerParty[partyIndex]; if (!GetMonData(pokemon, ribbonType)) { - gScriptResult = 1; - SetMonData(pokemon, ribbonType, &gScriptResult); + gSpecialVar_Result = 1; + SetMonData(pokemon, ribbonType, &gSpecialVar_Result); } } } - if (gScriptResult != 0) + if (gSpecialVar_Result != 0) { IncrementGameStat(GAME_STAT_RECEIVED_RIBBONS); } @@ -2266,7 +2266,7 @@ void ValidateEReaderTrainer(void) u32 checksum; struct BattleTowerEReaderTrainer *ereaderTrainer; - gScriptResult = 0; + gSpecialVar_Result = 0; ereaderTrainer = &gSaveBlock2.battleTower.ereaderTrainer; checksum = 0; @@ -2277,7 +2277,7 @@ void ValidateEReaderTrainer(void) if (checksum == 0) { - gScriptResult = 1; + gSpecialVar_Result = 1; return; } @@ -2290,7 +2290,7 @@ void ValidateEReaderTrainer(void) if (gSaveBlock2.battleTower.ereaderTrainer.checksum != checksum) { ClearEReaderTrainer(&gSaveBlock2.battleTower.ereaderTrainer); - gScriptResult = 1; + gSpecialVar_Result = 1; } } diff --git a/src/field/berry.c b/src/field/berry.c index 874a60aa7..088267ad0 100644 --- a/src/field/berry.c +++ b/src/field/berry.c @@ -981,7 +981,7 @@ const struct Berry gBerries[] = static const struct BerryTree gBlankBerryTree = {0}; extern u8 S_BerryTree[]; -extern u16 gScriptLastTalked; +extern u16 gSpecialVar_LastTalked; extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; extern u16 gSpecialVar_0x8006; @@ -1368,7 +1368,7 @@ void FieldObjectInteractionGetBerryTreeData(void) id = FieldObjectGetBerryTreeId(gSelectedMapObject); berry = GetBerryTypeByBerryTreeId(id); ResetBerryTreeSparkleFlag(id); - localId = gScriptLastTalked; + localId = gSpecialVar_LastTalked; num = gSaveBlock1.location.mapNum; group = gSaveBlock1.location.mapGroup; if (IsBerryTreeSparkling(localId, num, group)) @@ -1392,7 +1392,7 @@ void Berry_FadeAndGoToBerryBagMenu(void) void FieldObjectInteractionPlantBerryTree(void) { - u8 berry = ItemIdToBerryType(gScriptItemId); + u8 berry = ItemIdToBerryType(gSpecialVar_ItemId); PlantBerryTree(FieldObjectGetBerryTreeId(gSelectedMapObject), berry, 1, TRUE); FieldObjectInteractionGetBerryTreeData(); @@ -1409,7 +1409,7 @@ void FieldObjectInteractionPickBerryTree(void) void FieldObjectInteractionRemoveBerryTree(void) { RemoveBerryTree(FieldObjectGetBerryTreeId(gSelectedMapObject)); - sub_8060288(gScriptLastTalked, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); + sub_8060288(gSpecialVar_LastTalked, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); } bool8 PlayerHasBerries(void) diff --git a/src/field/berry_tag_screen.c b/src/field/berry_tag_screen.c index 694599680..2abbac287 100644 --- a/src/field/berry_tag_screen.c +++ b/src/field/berry_tag_screen.c @@ -133,12 +133,12 @@ static bool8 sub_8146058(void) gMain.state += 1; break; case 8: - berry = gScriptItemId + OFFSET_7B; + berry = gSpecialVar_ItemId + OFFSET_7B; gUnknown_0203932C = CreateBerrySprite(berry, 56, 64); gMain.state += 1; break; case 9: - sub_8146600(gScriptItemId + OFFSET_7B); + sub_8146600(gSpecialVar_ItemId + OFFSET_7B); gMain.state += 1; break; case 10: @@ -277,9 +277,9 @@ static void sub_81464E4(void) u8 buffer[16]; #endif - berryInfo = GetBerryInfo(gScriptItemId + OFFSET_7B + 1); + berryInfo = GetBerryInfo(gSpecialVar_ItemId + OFFSET_7B + 1); - ConvertIntToDecimalStringN(gStringVar1, gScriptItemId - FIRST_BERRY + 1, STR_CONV_MODE_LEADING_ZEROS, 2); + ConvertIntToDecimalStringN(gStringVar1, gSpecialVar_ItemId - FIRST_BERRY + 1, STR_CONV_MODE_LEADING_ZEROS, 2); MenuPrint(gStringVar1, 12, 4); #if ENGLISH @@ -437,7 +437,7 @@ static void sub_8146810(s8 berry) gBagPocketScrollStates[berryPocket].cursorPos += berry; } } - gScriptItemId = gCurrentBagPocketItemSlots[gBagPocketScrollStates[berryPocket].scrollTop + gBagPocketScrollStates[berryPocket].cursorPos].itemId; + gSpecialVar_ItemId = gCurrentBagPocketItemSlots[gBagPocketScrollStates[berryPocket].scrollTop + gBagPocketScrollStates[berryPocket].cursorPos].itemId; DestroySprite(&gSprites[gUnknown_0203932C]); sub_81466A0(); sub_80A7DD4(); @@ -449,7 +449,7 @@ static void sub_81468BC(void) sub_81464E4(); // center of berry sprite - gUnknown_0203932C = CreateBerrySprite(gScriptItemId + OFFSET_7B, 56, 64); + gUnknown_0203932C = CreateBerrySprite(gSpecialVar_ItemId + OFFSET_7B, 56, 64); - sub_8146600(gScriptItemId + OFFSET_7B); + sub_8146600(gSpecialVar_ItemId + OFFSET_7B); } diff --git a/src/field/daycare.c b/src/field/daycare.c index 9ac63b3c7..c28bc65ca 100644 --- a/src/field/daycare.c +++ b/src/field/daycare.c @@ -1758,7 +1758,7 @@ static void HandleDaycareLevelMenuInput(u8 taskId) { HandleDestroyMenuCursors(); PlaySE(SE_SELECT); - gLastFieldPokeMenuOpened = gScriptResult = gTasks[taskId].data[0]; + gLastFieldPokeMenuOpened = gSpecialVar_Result = gTasks[taskId].data[0]; DestroyTask(taskId); MenuZeroFillWindowRect(15, 6, 29, 13); EnableBothScriptContexts(); @@ -1766,7 +1766,7 @@ static void HandleDaycareLevelMenuInput(u8 taskId) else if (gMain.newKeys & B_BUTTON) { HandleDestroyMenuCursors(); - gLastFieldPokeMenuOpened = gScriptResult = 2; + gLastFieldPokeMenuOpened = gSpecialVar_Result = 2; DestroyTask(taskId); MenuZeroFillWindowRect(15, 6, 29, 13); EnableBothScriptContexts(); diff --git a/src/field/decoration.c b/src/field/decoration.c index c36c10a08..8b774afc3 100644 --- a/src/field/decoration.c +++ b/src/field/decoration.c @@ -3647,10 +3647,10 @@ void sub_8100A7C(void) { u16 i; gSpecialVar_0x8005 = 0; - gScriptResult = 0; + gSpecialVar_Result = 0; if (gSpecialVar_0x8004 == gUnknown_02039234) { - gScriptResult = 1; + gSpecialVar_Result = 1; } else if (gDecorations[ewram_1f000.items[gUnknown_020391B4[gSpecialVar_0x8004].decorId]].permission == DECORPERM_SOLID_MAT) { gSpecialVar_0x8005 = gUnknown_020391B4[gSpecialVar_0x8004].flagId; diff --git a/src/field/dewford_trend.c b/src/field/dewford_trend.c index b36459655..b67f3a2bd 100644 --- a/src/field/dewford_trend.c +++ b/src/field/dewford_trend.c @@ -8,7 +8,7 @@ #include "text.h" #include "ewram.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u16 gSpecialVar_0x8004; static void sub_80FA46C(struct EasyChatPair *s, u16 b, u8 c); @@ -219,12 +219,12 @@ void sub_80FA5E4(void) if (!gSaveBlock1.easyChatPairs[0].unk1_6 && gSaveBlock1.easyChatPairs[1].unk1_6) result = 1; } - gScriptResult = result; + gSpecialVar_Result = result; } void sub_80FA648(void) { - gScriptResult = (gSaveBlock1.easyChatPairs[0].words[0] + gSaveBlock1.easyChatPairs[0].words[1]) & 7; + gSpecialVar_Result = (gSaveBlock1.easyChatPairs[0].words[0] + gSaveBlock1.easyChatPairs[0].words[1]) & 7; } static bool8 sub_80FA670(struct EasyChatPair *a, struct EasyChatPair *b, u8 c) diff --git a/src/field/event_data.c b/src/field/event_data.c index 3b3ac7bca..587da8138 100644 --- a/src/field/event_data.c +++ b/src/field/event_data.c @@ -18,9 +18,9 @@ EWRAM_DATA u16 gSpecialVar_0x8008 = 0; EWRAM_DATA u16 gSpecialVar_0x8009 = 0; EWRAM_DATA u16 gSpecialVar_0x800A = 0; EWRAM_DATA u16 gSpecialVar_0x800B = 0; -EWRAM_DATA u16 gScriptResult = 0; -EWRAM_DATA u16 gScriptLastTalked = 0; -EWRAM_DATA u16 gScriptFacing = 0; +EWRAM_DATA u16 gSpecialVar_Result = 0; +EWRAM_DATA u16 gSpecialVar_LastTalked = 0; +EWRAM_DATA u16 gSpecialVar_Facing = 0; EWRAM_DATA u8 gUnknown_0202E8E2[16] = {0}; extern u16 *gSpecialVars[]; diff --git a/src/field/field_control_avatar.c b/src/field/field_control_avatar.c index dd29e9df5..cd7d3a2e2 100644 --- a/src/field/field_control_avatar.c +++ b/src/field/field_control_avatar.c @@ -30,8 +30,8 @@ struct Coords32 s32 y; }; -extern u16 gScriptLastTalked; -extern u16 gScriptFacing; +extern u16 gSpecialVar_LastTalked; +extern u16 gSpecialVar_Facing; extern struct LinkPlayerMapObject gLinkPlayerMapObjects[]; extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; @@ -295,8 +295,8 @@ u8 *sub_80682A8(struct MapPosition *position, u8 unused, u8 c) return NULL; } gSelectedMapObject = r3; - gScriptLastTalked = gMapObjects[r3].localId; - gScriptFacing = c; + gSpecialVar_LastTalked = gMapObjects[r3].localId; + gSpecialVar_Facing = c; return GetFieldObjectScriptPointerByFieldObjectId(r3); } @@ -316,10 +316,10 @@ static u8 *sub_8068364(struct MapPosition *position, u8 b, u8 c) } //_080683E8 gSelectedMapObject = r3; - gScriptLastTalked = gMapObjects[r3].localId; - gScriptFacing = c; + gSpecialVar_LastTalked = gMapObjects[r3].localId; + gSpecialVar_Facing = c; script = GetFieldObjectScriptPointerByFieldObjectId(r3); - script = GetRamScript(gScriptLastTalked, script); + script = GetRamScript(gSpecialVar_LastTalked, script); return script; } diff --git a/src/field/field_poison.c b/src/field/field_poison.c index 74d70cb36..49678f269 100644 --- a/src/field/field_poison.c +++ b/src/field/field_poison.c @@ -9,7 +9,7 @@ #include "task.h" #include "text.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u8 fieldPoisonText_PokemonFainted[]; bool32 CheckMonIsValid(struct Pokemon *pkmn) @@ -93,9 +93,9 @@ void Task_WhiteOut(u8 taskId) break; case 2: //Done checking Pokemon if (AllMonsFainted()) - gScriptResult = 1; + gSpecialVar_Result = 1; else - gScriptResult = 0; + gSpecialVar_Result = 0; EnableBothScriptContexts(); DestroyTask(taskId); break; diff --git a/src/field/field_screen_effect.c b/src/field/field_screen_effect.c index a18190809..a472d5a9c 100644 --- a/src/field/field_screen_effect.c +++ b/src/field/field_screen_effect.c @@ -283,17 +283,17 @@ void sub_80818A4(void) u8 taskId = CreateTask(sub_80816A8, 80); s16 *data = gTasks[taskId].data; - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { data[1] = 0; data[2] = 104; } - else if (gScriptResult == 1) + else if (gSpecialVar_Result == 1) { data[1] = 1; data[2] = 104; } - else if (gScriptResult == 2) + else if (gSpecialVar_Result == 2) { data[1] = 0; data[2] = 120; diff --git a/src/field/field_specials.c b/src/field/field_specials.c index 78c60c94e..87a9e2d5d 100644 --- a/src/field/field_specials.c +++ b/src/field/field_specials.c @@ -46,7 +46,7 @@ extern struct WarpData gUnknown_020297F0; extern u8 gBattleOutcome; extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u8 *const gUnknown_083D1464[3]; @@ -169,7 +169,7 @@ static void DetermineCyclingRoadResults(u32 arg0, u8 arg1) } - gScriptResult = result; + gSpecialVar_Result = result; } void FinishCyclingRoadChallenge(void) { @@ -1112,17 +1112,17 @@ void sub_810E984(u8 taskId) saved_warp2_set_2(0, gUnknown_03000760[gUnknown_0203925B].var1, gUnknown_03000760[gUnknown_0203925B].var2, -1, 2, 1); if (gSpecialVar_0x8005 == gUnknown_0203925B) { - gScriptResult = 0; + gSpecialVar_Result = 0; PlaySE(SE_SELECT); MenuZeroFillWindowRect(0, 0, 29, 12); sub_810EC9C(taskId); } else { - gScriptResult = 1; + gSpecialVar_Result = 1; gSpecialVar_0x8005 = gUnknown_0203925B; sub_810EBEC(); - FieldObjectTurnByLocalIdAndMap(gScriptLastTalked, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, DIR_SOUTH); + FieldObjectTurnByLocalIdAndMap(gSpecialVar_LastTalked, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, DIR_SOUTH); sub_810EEDC(); MenuZeroFillScreen(); DestroyTask(taskId); @@ -1130,7 +1130,7 @@ void sub_810E984(u8 taskId) } else if (gMain.newKeys & B_BUTTON) { - gScriptResult = 0; + gSpecialVar_Result = 0; PlaySE(SE_SELECT); sub_810EEDC(); MenuZeroFillWindowRect(0, 0, 29, 12); @@ -1516,12 +1516,12 @@ void IsGrassTypeInParty(void) species = GetMonData(pokemon, MON_DATA_SPECIES); if (gBaseStats[species].type1 == TYPE_GRASS || gBaseStats[species].type2 == TYPE_GRASS) { - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; return; } } } - gScriptResult = FALSE; + gSpecialVar_Result = FALSE; } const u8 *const gUnknown_083F83C0[] = { @@ -1579,7 +1579,7 @@ void sub_810F118(u8 taskId) if (gMain.newKeys & A_BUTTON) { HandleDestroyMenuCursors(); - gScriptResult = gUnknown_0203925B; + gSpecialVar_Result = gUnknown_0203925B; PlaySE(SE_SELECT); sub_810EEDC(); MenuZeroFillWindowRect(0, 0, 29, 12); @@ -1588,7 +1588,7 @@ void sub_810F118(u8 taskId) if (gMain.newKeys & B_BUTTON) { HandleDestroyMenuCursors(); - gScriptResult = 0x7f; + gSpecialVar_Result = 0x7f; PlaySE(SE_SELECT); sub_810EEDC(); MenuZeroFillWindowRect(0, 0, 29, 12); @@ -2077,27 +2077,27 @@ bool8 sub_810F96C(void) void sub_810F9AC(void) { - if (gScriptResult >= 10000) + if (gSpecialVar_Result >= 10000) { - sub_80BF088(0, gScriptResult); + sub_80BF088(0, gSpecialVar_Result); } - else if (gScriptResult >= 1000) + else if (gSpecialVar_Result >= 1000) { gStringVar1[0] = CHAR_0; - ConvertIntToDecimalStringN(gStringVar1 + 1, gScriptResult, 0, sub_80BF0B8(gScriptResult)); + ConvertIntToDecimalStringN(gStringVar1 + 1, gSpecialVar_Result, 0, sub_80BF0B8(gSpecialVar_Result)); } - else if (gScriptResult >= 100) + else if (gSpecialVar_Result >= 100) { gStringVar1[0] = CHAR_0; gStringVar1[1] = CHAR_0; - ConvertIntToDecimalStringN(gStringVar1 + 2, gScriptResult, 0, sub_80BF0B8(gScriptResult)); + ConvertIntToDecimalStringN(gStringVar1 + 2, gSpecialVar_Result, 0, sub_80BF0B8(gSpecialVar_Result)); } - else if (gScriptResult >= 10) + else if (gSpecialVar_Result >= 10) { gStringVar1[0] = CHAR_0; gStringVar1[1] = CHAR_0; gStringVar1[2] = CHAR_0; - ConvertIntToDecimalStringN(gStringVar1 + 3, gScriptResult, 0, sub_80BF0B8(gScriptResult)); + ConvertIntToDecimalStringN(gStringVar1 + 3, gSpecialVar_Result, 0, sub_80BF0B8(gSpecialVar_Result)); } else { @@ -2105,7 +2105,7 @@ void sub_810F9AC(void) gStringVar1[1] = CHAR_0; gStringVar1[2] = CHAR_0; gStringVar1[3] = CHAR_0; - ConvertIntToDecimalStringN(gStringVar1 + 4, gScriptResult, 0, sub_80BF0B8(gScriptResult)); + ConvertIntToDecimalStringN(gStringVar1 + 4, gSpecialVar_Result, 0, sub_80BF0B8(gSpecialVar_Result)); } } diff --git a/src/field/fldeff_decoration.c b/src/field/fldeff_decoration.c index 7c8ff44db..37f024b9f 100644 --- a/src/field/fldeff_decoration.c +++ b/src/field/fldeff_decoration.c @@ -344,21 +344,21 @@ void GetShieldToyTVDecorationInfo(void) case 822: ConvertIntToDecimalStringN(gStringVar1, 100, STR_CONV_MODE_LEFT_ALIGN, 3); StringCopy(gStringVar2, gSecretBaseText_GoldRank); - gScriptResult = 0; + gSpecialVar_Result = 0; break; case 734: ConvertIntToDecimalStringN(gStringVar1, 50, STR_CONV_MODE_LEFT_ALIGN, 2); StringCopy(gStringVar2, gSecretBaseText_SilverRank); - gScriptResult = 0; + gSpecialVar_Result = 0; break; case 756: - gScriptResult = 1; + gSpecialVar_Result = 1; break; case 757: - gScriptResult = 2; + gSpecialVar_Result = 2; break; case 758: - gScriptResult = 3; + gSpecialVar_Result = 3; break; } } diff --git a/src/field/fldeff_secretpower.c b/src/field/fldeff_secretpower.c index 9bcfaa8c4..bf8e98403 100644 --- a/src/field/fldeff_secretpower.c +++ b/src/field/fldeff_secretpower.c @@ -249,7 +249,7 @@ bool8 SetUpFieldMove_SecretPower(void) sub_80BB63C(); - if (gScriptResult == 1 || player_get_direction_lower_nybble() != DIR_NORTH) + if (gSpecialVar_Result == 1 || player_get_direction_lower_nybble() != DIR_NORTH) return FALSE; GetXYCoordsOneStepInFrontOfPlayer(&gUnknown_0203923C.x, &gUnknown_0203923C.y); diff --git a/src/field/fldeff_strength.c b/src/field/fldeff_strength.c index d9603d094..565ac1651 100644 --- a/src/field/fldeff_strength.c +++ b/src/field/fldeff_strength.c @@ -14,7 +14,7 @@ static void sub_811AA38(void); static void sub_811AA9C(void); extern u8 gLastFieldPokeMenuOpened; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern void (*gFieldCallback)(void); extern void (*gUnknown_03005CE4)(void); @@ -24,7 +24,7 @@ bool8 SetUpFieldMove_Strength(void) { if (ShouldDoBrailleStrengthEffect()) { - gScriptResult = gLastFieldPokeMenuOpened; + gSpecialVar_Result = gLastFieldPokeMenuOpened; gFieldCallback = FieldCallback_Teleport; gUnknown_03005CE4 = sub_811AA38; } @@ -32,7 +32,7 @@ bool8 SetUpFieldMove_Strength(void) { if (npc_before_player_of_type(87) != TRUE) return 0; - gScriptResult = gLastFieldPokeMenuOpened; + gSpecialVar_Result = gLastFieldPokeMenuOpened; gFieldCallback = FieldCallback_Teleport; gUnknown_03005CE4 = sub_811AA18; } diff --git a/src/field/item_menu.c b/src/field/item_menu.c index 8f7cb3d90..4e283ffe9 100644 --- a/src/field/item_menu.c +++ b/src/field/item_menu.c @@ -138,7 +138,7 @@ EWRAM_DATA static s8 sCurrentBagPocket = 0; EWRAM_DATA static u8 gUnknown_0203855A = 0; EWRAM_DATA static s8 gUnknown_0203855B = 0; EWRAM_DATA static s8 gUnknown_0203855C = 0; -EWRAM_DATA u16 gScriptItemId = 0; +EWRAM_DATA u16 gSpecialVar_ItemId = 0; EWRAM_DATA u8 gUnknown_02038560 = 0; EWRAM_DATA u8 gUnknown_02038561 = 0; EWRAM_DATA static u8 gUnknown_02038562 = 0; @@ -1662,7 +1662,7 @@ static void sub_80A4BF0(u16 *a) const u8 *text; if (i == 0) - text = sub_80A4B90(gScriptItemId); + text = sub_80A4B90(gSpecialVar_ItemId); else text = sItemPopupMenuActions[sPopupMenuActionList[i]].text; MenuPrint(text, 1 + (i / 2) * 6, 8 + (i % 2) * 2); @@ -1849,7 +1849,7 @@ static void sub_80A50C8(u8 taskId) { if (r5[10] == 0) { - gScriptItemId = 0; + gSpecialVar_ItemId = 0; gUnknown_083C16BC[sReturnLocation].onBagClose(taskId); } else @@ -1864,7 +1864,7 @@ static void sub_80A50C8(u8 taskId) { PlaySE(SE_SELECT); gUnknown_02038560 = gBagPocketScrollStates[sCurrentBagPocket].scrollTop + gBagPocketScrollStates[sCurrentBagPocket].cursorPos; - gScriptItemId = gCurrentBagPocketItemSlots[gUnknown_02038560].itemId; + gSpecialVar_ItemId = gCurrentBagPocketItemSlots[gUnknown_02038560].itemId; gUnknown_083C16BC[sReturnLocation].onItemSelect(taskId); sub_80F98A4(0); sub_80F98A4(1); @@ -1887,7 +1887,7 @@ static void sub_80A50C8(u8 taskId) { if (sReturnLocation != RETURN_TO_FIELD_5) { - gScriptItemId = 0; + gSpecialVar_ItemId = 0; gUnknown_083C16BC[sReturnLocation].onBagClose(taskId); } } @@ -2527,7 +2527,7 @@ static void sub_80A57C4(void) gUnknown_02038564 = 1; r5 = 9; } - else if (sub_80F92F4(gScriptItemId) == 0) + else if (sub_80F92F4(gSpecialVar_ItemId) == 0) { sPopupMenuActionList = gUnknown_083C16AE[4]; gUnknown_02038564 = 1; @@ -2654,10 +2654,10 @@ void sub_80A5B40(void) static void HandlePopupMenuAction_UseOnField(u8 taskId) { - if (ItemId_GetFieldFunc(gScriptItemId) != NULL) + if (ItemId_GetFieldFunc(gSpecialVar_ItemId) != NULL) { PlaySE(SE_SELECT); - if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gScriptItemId) == 1) + if (CalculatePlayerPartyCount() == 0 && ItemId_GetType(gSpecialVar_ItemId) == 1) { sub_80A5BF8(taskId); } @@ -2665,7 +2665,7 @@ static void HandlePopupMenuAction_UseOnField(u8 taskId) { gTasks[taskId].data[2] = 0; if (sCurrentBagPocket != BAG_POCKET_BERRIES) - ItemId_GetFieldFunc(gScriptItemId)(taskId); + ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId); else sub_80C9C7C(taskId); } @@ -2793,7 +2793,7 @@ static void sub_80A5EA0(u8 taskId) if (gMain.newKeys & A_BUTTON) { PlaySE(SE_SELECT); - sub_80A5DA0(gScriptItemId, gTasks[taskId].data[1]); + sub_80A5DA0(gSpecialVar_ItemId, gTasks[taskId].data[1]); DoYesNoFuncWithChoice(taskId, &gUnknown_083C16F4); } else if (gMain.newKeys & B_BUTTON) @@ -2827,7 +2827,7 @@ static void sub_80A5F80(u8 taskId) static void HandlePopupMenuAction_Register(u8 taskId) { PlaySE(SE_SELECT); - if (gSaveBlock1.registeredItem == gScriptItemId) + if (gSaveBlock1.registeredItem == gSpecialVar_ItemId) { // Un-register the registered item RemoveSelectIconFromRegisteredItem(); @@ -2836,7 +2836,7 @@ static void HandlePopupMenuAction_Register(u8 taskId) else { AddSelectIconToRegisteredItem(); - gSaveBlock1.registeredItem = gScriptItemId; + gSaveBlock1.registeredItem = gSpecialVar_ItemId; } sub_80A7528(0); sub_80A41D4(taskId); @@ -2865,7 +2865,7 @@ static void sub_80A6024(u8 taskId) static void DisplayCannotBeHeldMessage(u8 taskId) { sub_80A73FC(); - CopyItemName(gScriptItemId, gStringVar1); + CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gOtherText_CantBeHeld); sub_80A7590(); DisplayCannotUseItemMessage(taskId, gStringVar4, sub_80A6024, 1); @@ -2874,13 +2874,13 @@ static void DisplayCannotBeHeldMessage(u8 taskId) static void HandlePopupMenuAction_Give(u8 taskId) { PlaySE(SE_SELECT); - if (sub_80F931C(gScriptItemId) == 0) + if (sub_80F931C(gSpecialVar_ItemId) == 0) { sub_80A73FC(); sub_80A7590(); DisplayCannotUseItemMessage(taskId, gOtherText_CantWriteMail, sub_80A6024, 1); } - else if (ItemId_GetImportance(gScriptItemId) == 0) + else if (ItemId_GetImportance(gSpecialVar_ItemId) == 0) { if (CalculatePlayerPartyCount() == 0) { @@ -2931,21 +2931,21 @@ static void OnItemSelect_PkmnList(u8 taskId) { u8 r6 = sCurrentBagPocket + 1; - if (sub_80F931C(gScriptItemId) == 0) + if (sub_80F931C(gSpecialVar_ItemId) == 0) { sub_80A73FC(); sub_80A7590(); DisplayCannotUseItemMessage(taskId, gOtherText_CantWriteMail, sub_80A6024, 1); } - else if (sub_80F92F4(gScriptItemId) == 0) + else if (sub_80F92F4(gSpecialVar_ItemId) == 0) { sub_80A73FC(); - CopyItemName(gScriptItemId, gStringVar1); + CopyItemName(gSpecialVar_ItemId, gStringVar1); StringExpandPlaceholders(gStringVar4, gOtherText_CantBeHeldHere); sub_80A7590(); DisplayCannotUseItemMessage(taskId, gStringVar4, sub_80A6024, 1); } - else if (r6 != 5 && ItemId_GetImportance(gScriptItemId) == 0) + else if (r6 != 5 && ItemId_GetImportance(gSpecialVar_ItemId) == 0) { gTasks[taskId].data[8] = (u32)sub_808A3F8 >> 16; gTasks[taskId].data[9] = (u32)sub_808A3F8; @@ -2983,8 +2983,8 @@ static void OnItemSelect_Shop(u8 taskId) gTasks[taskId].data[10] = gBagPocketScrollStates[sCurrentBagPocket].scrollTop + gBagPocketScrollStates[sCurrentBagPocket].cursorPos + 1; sub_80A48E8(taskId, gBagPocketScrollStates[sCurrentBagPocket].cursorPos, gBagPocketScrollStates[sCurrentBagPocket].cursorPos); sub_80A73FC(); - CopyItemName(gScriptItemId, gStringVar2); - if (ItemId_GetPrice(gScriptItemId) == 0) + CopyItemName(gSpecialVar_ItemId, gStringVar2); + if (ItemId_GetPrice(gSpecialVar_ItemId) == 0) { StringExpandPlaceholders(gStringVar4, gOtherText_CantBuyThat); DisplayCannotUseItemMessage(taskId, gStringVar4, sub_80A6444, 1); @@ -3025,7 +3025,7 @@ static void sub_80A648C(u8 taskId) sub_80A418C(1, 1, 1, 11, 3); else sub_80A418C(1, 1, 1, 11, 2); - BuyMenuDisplayMessage(gScriptItemId, 1); + BuyMenuDisplayMessage(gSpecialVar_ItemId, 1); sub_80A683C(); } @@ -3047,7 +3047,7 @@ static void sub_80A6548(u8 taskId) static void sub_80A6574(u8 taskId) { PlaySE(SE_REGI); - sub_80A6870(gScriptItemId, gTasks[taskId].data[1]); + sub_80A6870(gSpecialVar_ItemId, gTasks[taskId].data[1]); gTasks[taskId].func = sub_80A6548; } @@ -3055,7 +3055,7 @@ static void sub_80A65AC(u8 taskId) { MenuZeroFillWindowRect(7, 6, 13, 12); sub_80A36B8(gBGTilemapBuffers[1], 7, 6, 6, 6); - CopyItemName(gScriptItemId, gStringVar2); + CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gOtherText_SoldItem); DisplayCannotUseItemMessage(taskId, gStringVar4, sub_80A6574, 1); sub_80A3D5C(taskId); @@ -3079,14 +3079,14 @@ static void Task_BuyHowManyDialogueHandleInput(u8 taskId) if (sub_80A5350(taskId) == TRUE) { MenuZeroFillWindowRect(6, 11, 12, 11); - BuyMenuDisplayMessage(gScriptItemId, gTasks[taskId].data[1]); + BuyMenuDisplayMessage(gSpecialVar_ItemId, gTasks[taskId].data[1]); } else if (gMain.newKeys & A_BUTTON) { PlaySE(SE_SELECT); MenuZeroFillWindowRect(0, 10, 13, 13); sub_80A36B8(gBGTilemapBuffers[1], 0, 10, 13, 3); - ConvertIntToDecimalStringN(gStringVar1, ItemId_GetPrice(gScriptItemId) / 2 * gTasks[taskId].data[1], STR_CONV_MODE_LEFT_ALIGN, 6); + ConvertIntToDecimalStringN(gStringVar1, ItemId_GetPrice(gSpecialVar_ItemId) / 2 * gTasks[taskId].data[1], STR_CONV_MODE_LEFT_ALIGN, 6); StringExpandPlaceholders(gStringVar4, gOtherText_CanPay); DisplayCannotUseItemMessage(taskId, gStringVar4, sub_80A6650, 1); } @@ -3227,7 +3227,7 @@ static void sub_80A6A84(u8 taskId) s16 *taskData = gTasks[taskId].data; sub_80A4DA4(gBGTilemapBuffers[1]); - CopyItemName(gScriptItemId, gStringVar1); + CopyItemName(gSpecialVar_ItemId, gStringVar1); ConvertIntToDecimalStringN(gStringVar2, taskData[1], STR_CONV_MODE_LEFT_ALIGN, 3); MenuZeroFillWindowRect(7, 6, 11, 13); sub_80A7528(7); @@ -3250,14 +3250,14 @@ static void sub_80A6B64(u8 taskId) { s16 *taskData = gTasks[taskId].data; - if (ItemId_GetImportance(gScriptItemId) == 2) + if (ItemId_GetImportance(gSpecialVar_ItemId) == 2) { gTasks[taskId].func = sub_80A6B00; sub_80A7528(9); } else { - if (AddPCItem(gScriptItemId, taskData[1]) == TRUE) + if (AddPCItem(gSpecialVar_ItemId, taskData[1]) == TRUE) { sub_80A6A84(taskId); } @@ -3325,7 +3325,7 @@ bool32 sub_80A6D1C(void) FreezeMapObjects(); sub_80594C0(); sub_80597F4(); - gScriptItemId = gSaveBlock1.registeredItem; + gSpecialVar_ItemId = gSaveBlock1.registeredItem; taskId = CreateTask(ItemId_GetFieldFunc(gSaveBlock1.registeredItem), 8); gTasks[taskId].data[2] = 1; return TRUE; @@ -3415,7 +3415,7 @@ static const u8 gUnknown_083C170A[] = {5, 0}; static void sub_80A6FDC(void) { - if (ItemId_GetBattleUsage(gScriptItemId) != 0) + if (ItemId_GetBattleUsage(gSpecialVar_ItemId) != 0) { sPopupMenuActionList = gUnknown_083C1708; gUnknown_02038564 = 2; @@ -3454,10 +3454,10 @@ static void OnBagClose_Battle(u8 taskId) static void HandlePopupMenuAction_UseInBattle(u8 taskId) { - if (ItemId_GetBattleFunc(gScriptItemId) != NULL) + if (ItemId_GetBattleFunc(gSpecialVar_ItemId) != NULL) { PlaySE(SE_SELECT); - ItemId_GetBattleFunc(gScriptItemId)(taskId); + ItemId_GetBattleFunc(gSpecialVar_ItemId)(taskId); } } @@ -3525,7 +3525,7 @@ static void sub_80A7230(u8 taskId) PlaySE(SE_SELECT); sub_80F98A4(2); sub_80F98A4(3); - gScriptItemId = ITEM_POKE_BALL; + gSpecialVar_ItemId = ITEM_POKE_BALL; sPopupMenuActionList = gUnknown_083C1708; gUnknown_02038564 = 2; gTasks[taskId].data[10] = gBagPocketScrollStates[sCurrentBagPocket].scrollTop + gBagPocketScrollStates[sCurrentBagPocket].cursorPos + 1; @@ -3824,7 +3824,7 @@ static void sub_80A7768(void) int var; if (r4->unk1 == 1) - text = sub_80A4B90(gScriptItemId); + text = sub_80A4B90(gSpecialVar_ItemId); else text = sItemPopupMenuActions[sPopupMenuActionList[r4->unk1 - 1]].text; var = r4->unk1 - 1; diff --git a/src/field/item_use.c b/src/field/item_use.c index c2e71070c..37cd8ba78 100644 --- a/src/field/item_use.c +++ b/src/field/item_use.c @@ -80,10 +80,10 @@ void ExecuteSwitchToOverworldFromItemUse(u8 taskId) { u8 taskData; - if (gScriptItemId == 0xAF) + if (gSpecialVar_ItemId == 0xAF) taskData = gTasks[taskId].data[15] - 1; else - taskData = ItemId_GetType(gScriptItemId) - 1; + taskData = ItemId_GetType(gSpecialVar_ItemId) - 1; gTasks[taskId].data[8] = (u32)gExitToOverworldFuncList[taskData] >> 16; gTasks[taskId].data[9] = (u32)gExitToOverworldFuncList[taskData]; @@ -157,7 +157,7 @@ void ItemMenu_ReadMail(u8 taskId) if (!gPaletteFade.active) { - mailStruct.itemId = gScriptItemId; + mailStruct.itemId = gSpecialVar_ItemId; HandleReadMail(&mailStruct, sub_80A5D04, 0); DestroyTask(taskId); } @@ -199,9 +199,9 @@ void ItemUseOutOfBattle_Bike(u8 taskId) void ItemUseOnFieldCB_Bike(u8 taskId) { - if (ItemId_GetSecondaryId(gScriptItemId) == 0) + if (ItemId_GetSecondaryId(gSpecialVar_ItemId) == 0) GetOnOffBike(2); - if (ItemId_GetSecondaryId(gScriptItemId) == 1) + if (ItemId_GetSecondaryId(gSpecialVar_ItemId) == 1) GetOnOffBike(4); sub_8064E2C(); @@ -252,7 +252,7 @@ void ItemUseOutOfBattle_Rod(u8 taskId) void ItemUseOnFieldCB_Rod(u8 taskId) { - StartFishing(ItemId_GetSecondaryId(gScriptItemId)); + StartFishing(ItemId_GetSecondaryId(gSpecialVar_ItemId)); DestroyTask(taskId); } @@ -770,11 +770,11 @@ void ItemUseOutOfBattle_SSTicket(u8 taskId) if (gTasks[taskId].data[2] == 0) { MenuZeroFillWindowRect(0, 0xD, 0xD, 0x14); - DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gScriptItemId)], sub_80C9BB8, 1); + DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gSpecialVar_ItemId)], sub_80C9BB8, 1); } else { - DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gScriptItemId)], sub_80C9BD8, 0); + DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gSpecialVar_ItemId)], sub_80C9BD8, 0); } } @@ -791,13 +791,13 @@ void sub_80C9C7C(u8 taskId) } else { - ItemId_GetFieldFunc(gScriptItemId)(taskId); + ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId); } } void sub_80C9D00(u8 taskId) { - RemoveBagItem(gScriptItemId, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); ScriptContext2_Enable(); ScriptContext1_SetupScript(gUnknown_081A1654); DestroyTask(taskId); @@ -876,7 +876,7 @@ void ItemUseOutOfBattle_TMHM(u8 taskId) { MenuZeroFillWindowRect(0, 0xD, 0xD, 0x14); - if (gScriptItemId >= ITEM_HM01) + if (gSpecialVar_ItemId >= ITEM_HM01) DisplayItemMessageOnField(taskId, gOtherText_BootedHM, sub_80C9EE4, 1); // HM else DisplayItemMessageOnField(taskId, gOtherText_BootedTM, sub_80C9EE4, 1); // TM @@ -892,7 +892,7 @@ void sub_80C9F10(u8 taskId) { if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON) { - StringCopy(gStringVar1, gMoveNames[ItemIdToBattleMoveId(gScriptItemId)]); + StringCopy(gStringVar1, gMoveNames[ItemIdToBattleMoveId(gSpecialVar_ItemId)]); StringExpandPlaceholders(gStringVar4, gOtherText_ContainsMove); DisplayItemMessageOnField(taskId, gStringVar4, sub_80C9F80, 1); } @@ -913,9 +913,9 @@ void sub_80C9FC0(u8 var) static void PrepareItemUseMessage(void) { - RemoveBagItem(gScriptItemId, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); sub_80A3E0C(); - CopyItemName(gScriptItemId, gStringVar2); + CopyItemName(gSpecialVar_ItemId, gStringVar2); StringExpandPlaceholders(gStringVar4, gOtherText_UsedItem); } @@ -923,7 +923,7 @@ void ItemUseOutOfBattle_Repel(u8 var) { if (VarGet(VAR_REPEL_STEP_COUNT) == FALSE) { - VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gScriptItemId)); + VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId)); PrepareItemUseMessage(); DisplayItemMessageOnField(var, gStringVar4, CleanUpItemMenuMessage, 1); } @@ -936,7 +936,7 @@ void ItemUseOutOfBattle_Repel(u8 var) void sub_80CA07C(void) { sub_80A3E0C(); - CopyItemName(gScriptItemId, gStringVar2); + CopyItemName(gSpecialVar_ItemId, gStringVar2); } void sub_80CA098(u8 taskId) @@ -950,7 +950,7 @@ void sub_80CA098(u8 taskId) void ItemUseOutOfBattle_BlackWhiteFlute(u8 taskId) { - if (gScriptItemId == ITEM_WHITE_FLUTE) + if (gSpecialVar_ItemId == ITEM_WHITE_FLUTE) { FlagSet(FLAG_SYS_ENC_UP_ITEM); FlagClear(FLAG_SYS_ENC_DOWN_ITEM); @@ -959,7 +959,7 @@ void ItemUseOutOfBattle_BlackWhiteFlute(u8 taskId) gTasks[taskId].func = sub_80CA098; gTasks[taskId].data[15] = 0; } - else if (gScriptItemId == ITEM_BLACK_FLUTE) + else if (gSpecialVar_ItemId == ITEM_BLACK_FLUTE) { FlagSet(FLAG_SYS_ENC_DOWN_ITEM); FlagClear(FLAG_SYS_ENC_UP_ITEM); @@ -1016,7 +1016,7 @@ void ItemUseInBattle_PokeBall(u8 var) { if (PlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon? { - RemoveBagItem(gScriptItemId, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); sub_80A7094(var); } else @@ -1037,8 +1037,8 @@ void sub_80CA2BC(u8 taskId) if(++gTasks[taskId].data[15] > 7) { PlaySE(SE_KAIFUKU); - RemoveBagItem(gScriptItemId, 1); - DisplayItemMessageOnField(taskId, sub_803F378(gScriptItemId), sub_80CA294, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); + DisplayItemMessageOnField(taskId, sub_803F378(gSpecialVar_ItemId), sub_80CA294, 1); } } @@ -1048,7 +1048,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId) MenuZeroFillWindowRect(0, 0xD, 0xD, 0x14); - if (ExecuteTableBasedItemEffect_(&gPlayerParty[partyId], gScriptItemId, partyId, 0) != FALSE) + if (ExecuteTableBasedItemEffect_(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE) { DisplayItemMessageOnField(taskId, gOtherText_WontHaveAnyEffect, CleanUpItemMenuMessage, 1); } @@ -1097,9 +1097,9 @@ void unref_sub_80CA448(u8 var) { MenuZeroFillWindowRect(0, 0xD, 0xD, 0x14); - if (ExecuteTableBasedItemEffect__(0, gScriptItemId, 0) == FALSE) + if (ExecuteTableBasedItemEffect__(0, gSpecialVar_ItemId, 0) == FALSE) { - RemoveBagItem(gScriptItemId, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); GetMonNickname(&gPlayerParty[0], gStringVar1); StringExpandPlaceholders(gStringVar4, gOtherText_SnapConfusion); DisplayItemMessageOnField(var, gStringVar4, sub_80A7094, 1); @@ -1127,7 +1127,7 @@ void ItemUseInBattle_Escape(u8 taskId) void ItemUseOutOfBattle_EnigmaBerry(u8 taskId) { - switch (GetItemEffectType(gScriptItemId) - 1) + switch (GetItemEffectType(gSpecialVar_ItemId) - 1) { case 1: case 2: @@ -1170,7 +1170,7 @@ void ItemUseOutOfBattle_EnigmaBerry(u8 taskId) void ItemUseInBattle_EnigmaBerry(u8 taskId) { - switch (GetItemEffectType(gScriptItemId)) + switch (GetItemEffectType(gSpecialVar_ItemId)) { case 0: ItemUseInBattle_StatIncrease(taskId); diff --git a/src/field/lottery_corner.c b/src/field/lottery_corner.c index 2cfdb7f88..83febc56e 100644 --- a/src/field/lottery_corner.c +++ b/src/field/lottery_corner.c @@ -7,7 +7,7 @@ #include "string_util.h" #include "text.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u16 gSpecialVar_0x8004; extern struct PokemonStorage gPokemonStorage; extern u16 gSpecialVar_0x8005; @@ -46,7 +46,7 @@ void SetRandomLotteryNumber(u16 i) void RetrieveLotteryNumber(void) { u16 lottoNumber = GetLotteryNumber(); - gScriptResult = lottoNumber; + gSpecialVar_Result = lottoNumber; } void PickLotteryCornerTicket(void) @@ -70,7 +70,7 @@ void PickLotteryCornerTicket(void) if (!GetMonData(pkmn, MON_DATA_IS_EGG)) { u32 otId = GetMonData(pkmn, MON_DATA_OT_ID); - u8 numMatchingDigits = GetMatchingDigits(gScriptResult, otId); + u8 numMatchingDigits = GetMatchingDigits(gSpecialVar_Result, otId); if (numMatchingDigits > gSpecialVar_0x8004 && numMatchingDigits > 1) { @@ -97,7 +97,7 @@ void PickLotteryCornerTicket(void) !GetBoxMonData(pkmn, MON_DATA_IS_EGG)) { u32 otId = GetBoxMonData(pkmn, MON_DATA_OT_ID); - u8 numMatchingDigits = GetMatchingDigits(gScriptResult, otId); + u8 numMatchingDigits = GetMatchingDigits(gSpecialVar_Result, otId); if (numMatchingDigits > gSpecialVar_0x8004 && numMatchingDigits > 1) { diff --git a/src/field/map_obj_lock.c b/src/field/map_obj_lock.c index 91feaf177..954fcb446 100644 --- a/src/field/map_obj_lock.c +++ b/src/field/map_obj_lock.c @@ -6,7 +6,7 @@ #include "script_movement.h" #include "task.h" -extern u16 gScriptFacing; +extern u16 gSpecialVar_Facing; bool8 walkrun_is_standing_still(void) { @@ -109,7 +109,7 @@ void unref_sub_8064E5C(void) void sub_8064EAC(void) { - FieldObjectFaceOppositeDirection(&gMapObjects[gSelectedMapObject], gScriptFacing); + FieldObjectFaceOppositeDirection(&gMapObjects[gSelectedMapObject], gSpecialVar_Facing); } void sub_8064ED4(void) diff --git a/src/field/mauville_man.c b/src/field/mauville_man.c index fad6674db..30f6f5233 100644 --- a/src/field/mauville_man.c +++ b/src/field/mauville_man.c @@ -21,7 +21,7 @@ extern struct MusicPlayerInfo gMPlay_SE2; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u16 gSpecialVar_0x8004; extern const u8 gTextStoryteller_Story1Title[]; @@ -258,12 +258,12 @@ static u8 GetCurrentMauvilleOldMan(void) void ScrSpecial_GetCurrentMauvilleMan(void) { - gScriptResult = GetCurrentMauvilleOldMan(); + gSpecialVar_Result = GetCurrentMauvilleOldMan(); } void ScrSpecial_HasBardSongBeenChanged(void) { - u16 *scriptResult = &gScriptResult; // why?? + u16 *scriptResult = &gSpecialVar_Result; // why?? struct MauvilleManBard *bard = &gSaveBlock1.mauvilleMan.bard; *scriptResult = bard->hasChangedSong; @@ -350,7 +350,7 @@ void ScrSpecial_PlayBardSong(void) void ScrSpecial_GetHipsterSpokenFlag(void) { - u16 *scriptResult = &gScriptResult; // again?? + u16 *scriptResult = &gSpecialVar_Result; // again?? struct MauvilleManHipster *hipster = &gSaveBlock1.mauvilleMan.hipster; *scriptResult = hipster->alreadySpoken; @@ -369,12 +369,12 @@ void ScrSpecial_HipsterTeachWord(void) if (var == 0xFFFF) { - gScriptResult = FALSE; + gSpecialVar_Result = FALSE; } else { EasyChat_GetWordText(gStringVar1, var); - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; } } @@ -384,12 +384,12 @@ void ScrSpecial_GiddyShouldTellAnotherTale(void) if (giddy->taleCounter == 10) { - gScriptResult = FALSE; + gSpecialVar_Result = FALSE; giddy->taleCounter = 0; } else { - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; } } @@ -421,7 +421,7 @@ void ScrSpecial_GenerateGiddyLine(void) else giddy->taleCounter++; - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; } #ifdef NONMATCHING @@ -1251,11 +1251,11 @@ static void Task_StoryListMenu(u8 taskId) break; if (selection == -1 || selection == GetFreeStorySlot()) { - gScriptResult = 0; + gSpecialVar_Result = 0; } else { - gScriptResult = 1; + gSpecialVar_Result = 1; gUnknown_03000748 = selection; } HandleDestroyMenuCursors(); @@ -1266,7 +1266,7 @@ static void Task_StoryListMenu(u8 taskId) } } -// Sets gScriptResult to TRUE if player selected a story +// Sets gSpecialVar_Result to TRUE if player selected a story void ScrSpecial_StorytellerStoryListMenu(void) { CreateTask(Task_StoryListMenu, 0x50); diff --git a/src/field/party_menu.c b/src/field/party_menu.c index 7d21c365a..089f93f9e 100644 --- a/src/field/party_menu.c +++ b/src/field/party_menu.c @@ -4314,7 +4314,7 @@ void TaughtMove(u8 taskId) u16 r4; gTasks[taskId].func = TaskDummy; - sub_806E8D0(taskId, gScriptItemId, sub_808B508); + sub_806E8D0(taskId, gSpecialVar_ItemId, sub_808B508); moveIndex = sub_809FA30(); r4 = GetMonData(ewram1C000.pokemon, MON_DATA_MOVE1 + moveIndex); GetMonNickname(ewram1C000.pokemon, gStringVar1); @@ -4340,7 +4340,7 @@ void StopTryingToTeachMove_806F588(u8 taskId) if (!gPaletteFade.active) { gTasks[taskId].func = TaskDummy; - sub_806E8D0(taskId, gScriptItemId, sub_808B508); + sub_806E8D0(taskId, gSpecialVar_ItemId, sub_808B508); StringCopy(gStringVar2, gMoveNames[ewram1C000.unk8]); StringExpandPlaceholders(gStringVar4, gOtherText_StopTryingTo); sub_806E834(gStringVar4, 1); diff --git a/src/field/pokeblock.c b/src/field/pokeblock.c index 3b70e7d76..4a904fbb1 100644 --- a/src/field/pokeblock.c +++ b/src/field/pokeblock.c @@ -664,7 +664,7 @@ static void sub_810BF7C(u8 taskId) PlaySE(SE_SELECT); if (gUnknown_02039248.unk1 + gUnknown_02039248.unk0 == gUnknown_02039248.unk2) { - gScriptResult = 0xffff; + gSpecialVar_Result = 0xffff; sub_810C31C(taskId); } else @@ -675,7 +675,7 @@ static void sub_810BF7C(u8 taskId) else if (gMain.newKeys & B_BUTTON) { PlaySE(SE_SELECT); - gScriptResult = 0xffff; + gSpecialVar_Result = 0xffff; sub_810C31C(taskId); } } @@ -800,7 +800,7 @@ static void sub_810C31C(u8 taskId) BeginNormalPaletteFade(-1, 0, 0, 16, 0); if (gUnknown_02039244 > 1) { - gScriptItemId = ITEM_NONE; + gSpecialVar_ItemId = ITEM_NONE; } gTasks[taskId].func = sub_810C2C8; } @@ -816,7 +816,7 @@ static void sub_810C368(u8 taskId) MenuDrawTextWindow(7, v0 + 4, 13, 11); PrintMenuItemsReordered(8, v0 + 5, gUnknown_0203924C, gUnknown_083F7EF4, gUnknown_03000758); InitMenu(0, 8, v0 + 5, gUnknown_0203924C, 0, 5); - gScriptItemId = gUnknown_02039248.unk0 + gUnknown_02039248.unk1; + gSpecialVar_ItemId = gUnknown_02039248.unk0 + gUnknown_02039248.unk1; gTasks[taskId].func = sub_810C40C; } @@ -855,7 +855,7 @@ static void sub_810C4C4(u8 taskId) if (!gPaletteFade.active) { sub_810C2B0(); - sub_8136130(&gSaveBlock1.pokeblocks[gScriptItemId], sub_810B96C); + sub_8136130(&gSaveBlock1.pokeblocks[gSpecialVar_ItemId], sub_810B96C); DestroyTask(taskId); } } @@ -939,21 +939,21 @@ static void sub_810C748(u8 taskId) static void sub_810C788(u8 taskId) { - s16 v0 = PokeblockGetGain(GetNature(&gEnemyParty[0]), &gSaveBlock1.pokeblocks[gScriptItemId]); - StringCopy(gBattleTextBuff1, gPokeblockNames[gSaveBlock1.pokeblocks[gScriptItemId].color]); - PokeblockClearIfExists(gScriptItemId); - gScriptItemId = gSaveBlock1.pokeblocks[gScriptItemId].color << 8; + s16 v0 = PokeblockGetGain(GetNature(&gEnemyParty[0]), &gSaveBlock1.pokeblocks[gSpecialVar_ItemId]); + StringCopy(gBattleTextBuff1, gPokeblockNames[gSaveBlock1.pokeblocks[gSpecialVar_ItemId].color]); + PokeblockClearIfExists(gSpecialVar_ItemId); + gSpecialVar_ItemId = gSaveBlock1.pokeblocks[gSpecialVar_ItemId].color << 8; if (v0 == 0) { - gScriptItemId += 1; + gSpecialVar_ItemId += 1; } if (v0 > 0) { - gScriptItemId += 2; + gSpecialVar_ItemId += 2; } if (v0 < 0) { - gScriptItemId += 3; + gSpecialVar_ItemId += 3; } BeginNormalPaletteFade(-1, 0, 0, 16, 0); gTasks[taskId].func = sub_810C2C8; @@ -961,10 +961,10 @@ static void sub_810C788(u8 taskId) static void sub_810C854(u8 taskId) { - SafariZoneActivatePokeblockFeeder(gScriptItemId); - StringCopy(gStringVar1, gPokeblockNames[gSaveBlock1.pokeblocks[gScriptItemId].color]); - gScriptResult = gScriptItemId; - PokeblockClearIfExists(gScriptItemId); + SafariZoneActivatePokeblockFeeder(gSpecialVar_ItemId); + StringCopy(gStringVar1, gPokeblockNames[gSaveBlock1.pokeblocks[gSpecialVar_ItemId].color]); + gSpecialVar_Result = gSpecialVar_ItemId; + PokeblockClearIfExists(gSpecialVar_ItemId); BeginNormalPaletteFade(-1, 0, 0, 16, 0); gTasks[taskId].func = sub_810C2C8; } diff --git a/src/field/safari_zone.c b/src/field/safari_zone.c index 73fb01f3e..e9ca3a9f9 100644 --- a/src/field/safari_zone.c +++ b/src/field/safari_zone.c @@ -37,7 +37,7 @@ extern u8 gUnknown_081C3448; extern u8 gUnknown_081C3459; extern u8 *gPokeblockNames[]; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; bool32 GetSafariZoneFlag(void) { @@ -137,13 +137,13 @@ void SafariZoneGetPokeblockNameInFeeder(void) && gPokeblockFeeders[i].x == x && gPokeblockFeeders[i].y == y) { - gScriptResult = i; + gSpecialVar_Result = i; StringCopy(gStringVar1, gPokeblockNames[gPokeblockFeeders[i].pokeblock.color]); return; } } - gScriptResult = -1; + gSpecialVar_Result = -1; } static void GetPokeblockFeederWithinRange(void) @@ -166,23 +166,23 @@ static void GetPokeblockFeederWithinRange(void) y *= -1; if ((x + y) <= 5) { - gScriptResult = i; + gSpecialVar_Result = i; return; } } } - gScriptResult = -1; + gSpecialVar_Result = -1; } struct Pokeblock *unref_sub_80C8418(void) { SafariZoneGetPokeblockNameInFeeder(); - if (gScriptResult == 0xFFFF) + if (gSpecialVar_Result == 0xFFFF) return NULL; else - return &gPokeblockFeeders[gScriptResult].pokeblock; + return &gPokeblockFeeders[gSpecialVar_Result].pokeblock; } @@ -190,10 +190,10 @@ struct Pokeblock *SafariZoneGetActivePokeblock(void) { GetPokeblockFeederWithinRange(); - if (gScriptResult == 0xFFFF) + if (gSpecialVar_Result == 0xFFFF) return NULL; else - return &gPokeblockFeeders[gScriptResult].pokeblock; + return &gPokeblockFeeders[gSpecialVar_Result].pokeblock; } @@ -240,13 +240,13 @@ bool8 unref_sub_80C853C(void) { SafariZoneGetPokeblockNameInFeeder(); - if (gScriptResult == 0xFFFF) + if (gSpecialVar_Result == 0xFFFF) { return FALSE; } ConvertIntToDecimalStringN(gStringVar2, - gPokeblockFeeders[gScriptResult].stepCounter, + gPokeblockFeeders[gSpecialVar_Result].stepCounter, STR_CONV_MODE_LEADING_ZEROS, 3); return TRUE; diff --git a/src/field/scrcmd.c b/src/field/scrcmd.c index e6305d9c4..d5fc56e8d 100644 --- a/src/field/scrcmd.c +++ b/src/field/scrcmd.c @@ -61,9 +61,9 @@ extern u16 gSpecialVar_0x8001; extern u16 gSpecialVar_0x8002; extern u16 gSpecialVar_0x8004; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; -extern u16 gScriptContestCategory; +extern u16 gSpecialVar_ContestCategory; extern SpecialFunc gSpecials[]; extern u8 *gStdScripts[]; @@ -479,25 +479,25 @@ bool8 ScrCmd_random(struct ScriptContext *ctx) { u16 max = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = Random() % max; + gSpecialVar_Result = Random() % max; return FALSE; } -bool8 ScrCmd_additem(struct ScriptContext *ctx) +bool8 ScrCmd_giveitem(struct ScriptContext *ctx) { u16 itemId = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = AddBagItem(itemId, (u8)quantity); + gSpecialVar_Result = AddBagItem(itemId, (u8)quantity); return FALSE; } -bool8 ScrCmd_removeitem(struct ScriptContext *ctx) +bool8 ScrCmd_takeitem(struct ScriptContext *ctx) { u16 itemId = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = RemoveBagItem(itemId, (u8)quantity); + gSpecialVar_Result = RemoveBagItem(itemId, (u8)quantity); return FALSE; } @@ -506,7 +506,7 @@ bool8 ScrCmd_checkitemspace(struct ScriptContext *ctx) u16 itemId = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = CheckBagHasSpace(itemId, (u8)quantity); + gSpecialVar_Result = CheckBagHasSpace(itemId, (u8)quantity); return FALSE; } @@ -515,7 +515,7 @@ bool8 ScrCmd_checkitem(struct ScriptContext *ctx) u16 itemId = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = CheckBagHasItem(itemId, (u8)quantity); + gSpecialVar_Result = CheckBagHasItem(itemId, (u8)quantity); return FALSE; } @@ -523,16 +523,16 @@ bool8 ScrCmd_checkitemtype(struct ScriptContext *ctx) { u16 itemId = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = GetPocketByItemId(itemId); + gSpecialVar_Result = GetPocketByItemId(itemId); return FALSE; } -bool8 ScrCmd_addpcitem(struct ScriptContext *ctx) +bool8 ScrCmd_givepcitem(struct ScriptContext *ctx) { u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = AddPCItem(itemId, quantity); + gSpecialVar_Result = AddPCItem(itemId, quantity); return FALSE; } @@ -541,39 +541,39 @@ bool8 ScrCmd_checkpcitem(struct ScriptContext *ctx) u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 quantity = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = CheckPCHasItem(itemId, quantity); + gSpecialVar_Result = CheckPCHasItem(itemId, quantity); return FALSE; } -bool8 ScrCmd_adddecor(struct ScriptContext *ctx) +bool8 ScrCmd_givedecoration(struct ScriptContext *ctx) { - u32 decorId = VarGet(ScriptReadHalfword(ctx)); + u32 decoration = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = IsThereStorageSpaceForDecoration(decorId); + gSpecialVar_Result = IsThereStorageSpaceForDecoration(decoration); return FALSE; } -bool8 ScrCmd_removedecor(struct ScriptContext *ctx) +bool8 ScrCmd_takedecoration(struct ScriptContext *ctx) { - u32 decorId = VarGet(ScriptReadHalfword(ctx)); + u32 decoration = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = sub_81340A8(decorId); + gSpecialVar_Result = sub_81340A8(decoration); return FALSE; } -bool8 ScrCmd_checkdecor(struct ScriptContext *ctx) +bool8 ScrCmd_checkdecorspace(struct ScriptContext *ctx) { u32 decorId = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = sub_8134074(decorId); + gSpecialVar_Result = sub_8134074(decorId); return FALSE; } -bool8 ScrCmd_hasdecor(struct ScriptContext *ctx) +bool8 ScrCmd_checkdecor(struct ScriptContext *ctx) { u32 decorId = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = sub_8133FE4(decorId); + gSpecialVar_Result = sub_8133FE4(decorId); return FALSE; } @@ -601,14 +601,14 @@ bool8 ScrCmd_incrementgamestat(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_animdarklevel(struct ScriptContext *ctx) +bool8 ScrCmd_animateflash(struct ScriptContext *ctx) { sub_8081594(ScriptReadByte(ctx)); ScriptContext1_Stop(); return TRUE; } -bool8 ScrCmd_setdarklevel(struct ScriptContext *ctx) +bool8 ScrCmd_setflashradius(struct ScriptContext *ctx) { u16 flashLevel = VarGet(ScriptReadHalfword(ctx)); @@ -631,7 +631,7 @@ bool8 ScrCmd_fadescreen(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_fadescreendelay(struct ScriptContext *ctx) +bool8 ScrCmd_fadescreenspeed(struct ScriptContext *ctx) { u8 duration = ScriptReadByte(ctx); u8 delay = ScriptReadByte(ctx); @@ -641,7 +641,7 @@ bool8 ScrCmd_fadescreendelay(struct ScriptContext *ctx) return TRUE; } -bool8 s28_pause_asm() +bool8 RunPauseTimer() { sPauseCounter--; @@ -654,7 +654,7 @@ bool8 s28_pause_asm() bool8 ScrCmd_delay(struct ScriptContext *ctx) { sPauseCounter = ScriptReadHalfword(ctx); - SetupNativeScript(ctx, s28_pause_asm); + SetupNativeScript(ctx, RunPauseTimer); return TRUE; } @@ -702,7 +702,7 @@ bool8 ScrCmd_doweather(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_tileeffect(struct ScriptContext *ctx) +bool8 ScrCmd_setstepcallback(struct ScriptContext *ctx) { ActivatePerStepCallback(ScriptReadByte(ctx)); return FALSE; @@ -859,9 +859,9 @@ bool8 ScrCmd_getplayerxy(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_countpokemon(struct ScriptContext *ctx) +bool8 ScrCmd_getpartysize(struct ScriptContext *ctx) { - gScriptResult = CalculatePlayerPartyCount(); + gSpecialVar_Result = CalculatePlayerPartyCount(); return FALSE; } @@ -871,7 +871,7 @@ bool8 ScrCmd_playse(struct ScriptContext *ctx) return FALSE; } -static bool8 WaitForSoundEffectFinish() +static bool8 WaitForSoundEffectFinish(void) { if (!IsSEPlaying()) return TRUE; @@ -891,7 +891,7 @@ bool8 ScrCmd_playfanfare(struct ScriptContext *ctx) return FALSE; } -static bool8 WaitForFanfareFinish() +static bool8 WaitForFanfareFinish(void) { return IsFanfareTaskInactive(); } @@ -1073,7 +1073,7 @@ bool8 ScrCmd_moveobjectoffscreen(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_showobject(struct ScriptContext *ctx) +bool8 ScrCmd_showobjectat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); @@ -1083,7 +1083,7 @@ bool8 ScrCmd_showobject(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_hideobject(struct ScriptContext *ctx) +bool8 ScrCmd_hideobjectat(struct ScriptContext *ctx) { u16 localId = VarGet(ScriptReadHalfword(ctx)); u8 mapGroup = ScriptReadByte(ctx); @@ -1267,7 +1267,7 @@ static bool8 WaitForAorBPress(void) return FALSE; } -bool8 ScrCmd_waitbutton(struct ScriptContext *ctx) +bool8 ScrCmd_waitbuttonpress(struct ScriptContext *ctx) { SetupNativeScript(ctx, WaitForAorBPress); return TRUE; @@ -1386,7 +1386,7 @@ bool8 ScrCmd_drawboxtext(struct ScriptContext *ctx) } } -bool8 ScrCmd_drawpokepic(struct ScriptContext *ctx) +bool8 ScrCmd_drawmonpic(struct ScriptContext *ctx) { u16 species = VarGet(ScriptReadHalfword(ctx)); u8 x = ScriptReadByte(ctx); @@ -1396,7 +1396,7 @@ bool8 ScrCmd_drawpokepic(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_erasepokepic(struct ScriptContext *ctx) +bool8 ScrCmd_erasemonpic(struct ScriptContext *ctx) { bool8 (*func)(void) = ScriptMenu_GetPicboxWaitFunc(); @@ -1441,7 +1441,7 @@ bool8 ScrCmd_vmessage(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getspeciesname(struct ScriptContext *ctx) +bool8 ScrCmd_bufferspeciesname(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 species = VarGet(ScriptReadHalfword(ctx)); @@ -1450,7 +1450,7 @@ bool8 ScrCmd_getspeciesname(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getfirstpartypokename(struct ScriptContext *ctx) +bool8 ScrCmd_bufferleadmonspeciesname(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); @@ -1461,7 +1461,7 @@ bool8 ScrCmd_getfirstpartypokename(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getpartypokename(struct ScriptContext *ctx) +bool8 ScrCmd_bufferpartymonnick(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 partyIndex = VarGet(ScriptReadHalfword(ctx)); @@ -1471,7 +1471,7 @@ bool8 ScrCmd_getpartypokename(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getitemname(struct ScriptContext *ctx) +bool8 ScrCmd_bufferitemname(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 itemId = VarGet(ScriptReadHalfword(ctx)); @@ -1480,7 +1480,7 @@ bool8 ScrCmd_getitemname(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getdecorname(struct ScriptContext *ctx) +bool8 ScrCmd_bufferdecorationname(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 decorId = VarGet(ScriptReadHalfword(ctx)); @@ -1489,7 +1489,7 @@ bool8 ScrCmd_getdecorname(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getmovename(struct ScriptContext *ctx) +bool8 ScrCmd_buffermovename(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 moveId = VarGet(ScriptReadHalfword(ctx)); @@ -1498,7 +1498,7 @@ bool8 ScrCmd_getmovename(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getnumberstring(struct ScriptContext *ctx) +bool8 ScrCmd_buffernumberstring(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 v1 = VarGet(ScriptReadHalfword(ctx)); @@ -1508,7 +1508,7 @@ bool8 ScrCmd_getnumberstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getstdstring(struct ScriptContext *ctx) +bool8 ScrCmd_bufferstdstring(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u16 index = VarGet(ScriptReadHalfword(ctx)); @@ -1517,7 +1517,7 @@ bool8 ScrCmd_getstdstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_getstring(struct ScriptContext *ctx) +bool8 ScrCmd_bufferstring(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u8 *text = (u8 *)ScriptReadWord(ctx); @@ -1526,7 +1526,7 @@ bool8 ScrCmd_getstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_vloadword(struct ScriptContext *ctx) +bool8 ScrCmd_vloadptr(struct ScriptContext *ctx) { u8 *ptr = (u8 *)(ScriptReadWord(ctx) - gUnknown_0202E8B0); @@ -1534,7 +1534,7 @@ bool8 ScrCmd_vloadword(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_vgetstring(struct ScriptContext *ctx) +bool8 ScrCmd_vbufferstring(struct ScriptContext *ctx) { u8 stringVarIndex = ScriptReadByte(ctx); u32 addr = ScriptReadWord(ctx); @@ -1545,7 +1545,7 @@ bool8 ScrCmd_vgetstring(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_givepoke(struct ScriptContext *ctx) +bool8 ScrCmd_givemon(struct ScriptContext *ctx) { u16 species = VarGet(ScriptReadHalfword(ctx)); u8 level = ScriptReadByte(ctx); @@ -1554,7 +1554,7 @@ bool8 ScrCmd_givepoke(struct ScriptContext *ctx) u32 unkParam2 = ScriptReadWord(ctx); u8 unkParam3 = ScriptReadByte(ctx); - gScriptResult = ScriptGiveMon(species, level, item, unkParam1, unkParam2, unkParam3); + gSpecialVar_Result = ScriptGiveMon(species, level, item, unkParam1, unkParam2, unkParam3); return FALSE; } @@ -1562,11 +1562,11 @@ bool8 ScrCmd_giveegg(struct ScriptContext *ctx) { u16 species = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = ScriptGiveEgg(species); + gSpecialVar_Result = ScriptGiveEgg(species); return FALSE; } -bool8 ScrCmd_setpokemove(struct ScriptContext *ctx) +bool8 ScrCmd_setmonmove(struct ScriptContext *ctx) { u8 partyIndex = ScriptReadByte(ctx); u8 slot = ScriptReadByte(ctx); @@ -1576,13 +1576,13 @@ bool8 ScrCmd_setpokemove(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_checkpokemove(struct ScriptContext *ctx) +bool8 ScrCmd_checkpartymove(struct ScriptContext *ctx) { u8 i; u16 moveId = ScriptReadHalfword(ctx); - gScriptResult = 6; - for (i = 0; i < 6; i++) + gSpecialVar_Result = 6; + for (i = 0; i < PARTY_SIZE; i++) { u16 species = GetMonData(&gPlayerParty[i], MON_DATA_SPECIES, NULL); if (!species) @@ -1590,7 +1590,7 @@ bool8 ScrCmd_checkpokemove(struct ScriptContext *ctx) // UB: GetMonData() arguments don't match function definition if (!GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) && pokemon_has_move(&gPlayerParty[i], moveId) == TRUE) { - gScriptResult = i; + gSpecialVar_Result = i; gSpecialVar_0x8004 = species; break; } @@ -1624,7 +1624,7 @@ bool8 ScrCmd_checkmoney(struct ScriptContext *ctx) u8 ignore = ScriptReadByte(ctx); if (!ignore) - gScriptResult = IsEnoughMoney(gSaveBlock1.money, amount); + gSpecialVar_Result = IsEnoughMoney(gSaveBlock1.money, amount); return FALSE; } @@ -1692,19 +1692,19 @@ bool8 ScrCmd_trainerbattle(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_battlebegin(struct ScriptContext *ctx) +bool8 ScrCmd_trainerbattlebegin(struct ScriptContext *ctx) { BattleSetup_StartTrainerBattle(); return TRUE; } -bool8 ScrCmd_ontrainerbattleend(struct ScriptContext *ctx) +bool8 ScrCmd_gotopostbattlescript(struct ScriptContext *ctx) { ctx->scriptPtr = BattleSetup_GetScriptAddrAfterBattle(); return FALSE; } -bool8 ScrCmd_ontrainerbattleendgoto(struct ScriptContext *ctx) +bool8 ScrCmd_gotobeatenscript(struct ScriptContext *ctx) { ctx->scriptPtr = BattleSetup_GetTrainerPostBattleScript(); return FALSE; @@ -1760,7 +1760,7 @@ bool8 ScrCmd_pokemart(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_pokemartdecor(struct ScriptContext *ctx) +bool8 ScrCmd_pokemartdecoration(struct ScriptContext *ctx) { void *ptr = (void *)ScriptReadWord(ctx); @@ -1769,7 +1769,7 @@ bool8 ScrCmd_pokemartdecor(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_pokemartbp(struct ScriptContext *ctx) +bool8 ScrCmd_pokemartdecoration2(struct ScriptContext *ctx) { void *ptr = (void *)ScriptReadWord(ctx); @@ -1787,7 +1787,7 @@ bool8 ScrCmd_playslotmachine(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_plantberrytree(struct ScriptContext *ctx) +bool8 ScrCmd_setberrytree(struct ScriptContext *ctx) { u8 treeId = ScriptReadByte(ctx); u8 berry = ScriptReadByte(ctx); @@ -1804,11 +1804,11 @@ bool8 ScrCmd_getpricereduction(struct ScriptContext *ctx) { u16 value = VarGet(ScriptReadHalfword(ctx)); - gScriptResult = GetPriceReduction(value); + gSpecialVar_Result = GetPriceReduction(value); return FALSE; } -bool8 ScrCmd_choosecontestpkmn(struct ScriptContext *ctx) +bool8 ScrCmd_choosecontestmon(struct ScriptContext *ctx) { sub_80F99CC(); ScriptContext1_Stop(); @@ -1831,7 +1831,7 @@ bool8 ScrCmd_showcontestresults(struct ScriptContext *ctx) bool8 ScrCmd_contestlinktransfer(struct ScriptContext *ctx) { - sub_80C4980(gScriptContestCategory); + sub_80C4980(gSpecialVar_ContestCategory); ScriptContext1_Stop(); return TRUE; } @@ -1845,7 +1845,7 @@ bool8 ScrCmd_dofieldeffect(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_setfieldeffect(struct ScriptContext *ctx) +bool8 ScrCmd_setfieldeffectargument(struct ScriptContext *ctx) { u8 argNum = ScriptReadByte(ctx); @@ -1868,7 +1868,7 @@ bool8 ScrCmd_waitfieldeffect(struct ScriptContext *ctx) return TRUE; } -bool8 ScrCmd_sethealplace(struct ScriptContext *ctx) +bool8 ScrCmd_setrespawn(struct ScriptContext *ctx) { u16 healLocationId = VarGet(ScriptReadHalfword(ctx)); @@ -1878,11 +1878,11 @@ bool8 ScrCmd_sethealplace(struct ScriptContext *ctx) bool8 ScrCmd_checkplayergender(struct ScriptContext *ctx) { - gScriptResult = gSaveBlock2.playerGender; + gSpecialVar_Result = gSaveBlock2.playerGender; return FALSE; } -bool8 ScrCmd_playpokecry(struct ScriptContext *ctx) +bool8 ScrCmd_playmoncry(struct ScriptContext *ctx) { u16 species = VarGet(ScriptReadHalfword(ctx)); u16 mode = VarGet(ScriptReadHalfword(ctx)); @@ -1891,25 +1891,25 @@ bool8 ScrCmd_playpokecry(struct ScriptContext *ctx) return FALSE; } -bool8 ScrCmd_waitpokecry(struct ScriptContext *ctx) +bool8 ScrCmd_waitmoncry(struct ScriptContext *ctx) { SetupNativeScript(ctx, IsCryFinished); return TRUE; } -bool8 ScrCmd_setmaptile(struct ScriptContext *ctx) +bool8 ScrCmd_setmetatile(struct ScriptContext *ctx) { u16 x = VarGet(ScriptReadHalfword(ctx)); u16 y = VarGet(ScriptReadHalfword(ctx)); - u16 tileId = VarGet(ScriptReadHalfword(ctx)); + u16 metatileId = VarGet(ScriptReadHalfword(ctx)); u16 v8 = VarGet(ScriptReadHalfword(ctx)); x += 7; y += 7; if (!v8) - MapGridSetMetatileIdAt(x, y, tileId); + MapGridSetMetatileIdAt(x, y, metatileId); else - MapGridSetMetatileIdAt(x, y, tileId | 0xC00); + MapGridSetMetatileIdAt(x, y, metatileId | 0xC00); return FALSE; } @@ -2002,9 +2002,9 @@ bool8 ScrCmd_givecoins(struct ScriptContext *ctx) u16 coins = VarGet(ScriptReadHalfword(ctx)); if (GiveCoins(coins) == TRUE) - gScriptResult = 0; + gSpecialVar_Result = 0; else - gScriptResult = 1; + gSpecialVar_Result = 1; return FALSE; } @@ -2013,8 +2013,8 @@ bool8 ScrCmd_takecoins(struct ScriptContext *ctx) u16 coins = VarGet(ScriptReadHalfword(ctx)); if (TakeCoins(coins) == TRUE) - gScriptResult = 0; + gSpecialVar_Result = 0; else - gScriptResult = 1; + gSpecialVar_Result = 1; return FALSE; } diff --git a/src/field/script_menu.c b/src/field/script_menu.c index 1f8c2c45e..9f3ab75cc 100644 --- a/src/field/script_menu.c +++ b/src/field/script_menu.c @@ -580,7 +580,7 @@ const u8 *const gUnknown_083CE048[] = extern u8 gPCText_WhichPCShouldBeAccessed[]; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; static void Task_HandleMultichoiceInput(u8); static void Task_HandleYesNoInput(u8); @@ -599,7 +599,7 @@ bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPress) } else { - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; DrawMultichoiceMenu(left, top, gMultichoiceLists[multichoiceId].count, gMultichoiceLists[multichoiceId].list, ignoreBPress, 0); return TRUE; } @@ -613,7 +613,7 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 multichoiceId, u8 ig } else { - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; DrawMultichoiceMenu(left, top, gMultichoiceLists[multichoiceId].count, gMultichoiceLists[multichoiceId].list, ignoreBPress, defaultChoice); return TRUE; } @@ -698,11 +698,11 @@ static void Task_HandleMultichoiceInput(u8 taskId) if (gTasks[taskId].tIgnoreBPress) return; PlaySE(SE_SELECT); - gScriptResult = 127; + gSpecialVar_Result = 127; } else { - gScriptResult = selection; + gSpecialVar_Result = selection; } HandleDestroyMenuCursors(); MenuZeroFillWindowRect(gTasks[taskId].tLeft, gTasks[taskId].tTop, gTasks[taskId].tRight, gTasks[taskId].tBottom); @@ -720,7 +720,7 @@ bool8 Multichoice(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPress) } else { - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; sub_80B53B4(left, top, gMultichoiceLists[multichoiceId].count, gMultichoiceLists[multichoiceId].list, ignoreBPress); return TRUE; } @@ -760,7 +760,7 @@ bool8 ScriptMenu_YesNo(u8 left, u8 top) } else { - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; DisplayYesNoMenu(left, top, 1); taskId = CreateTask(Task_HandleYesNoInput, 0x50); gTasks[taskId].tLeft = left; @@ -772,7 +772,7 @@ bool8 ScriptMenu_YesNo(u8 left, u8 top) // unused bool8 IsScriptActive(void) { - if (gScriptResult == 0xFF) + if (gSpecialVar_Result == 0xFF) return FALSE; else return TRUE; @@ -795,10 +795,10 @@ static void Task_HandleYesNoInput(u8 taskId) case -1: case 1: PlaySE(SE_SELECT); - gScriptResult = 0; + gSpecialVar_Result = 0; break; case 0: - gScriptResult = 1; + gSpecialVar_Result = 1; break; } @@ -823,7 +823,7 @@ bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPr u8 taskId; u8 width; - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; sub_807274C(left, top, gMultichoiceLists[multichoiceId].count, 0, gMultichoiceLists[multichoiceId].list, columnCount, 0); @@ -860,11 +860,11 @@ static void Task_HandleMultichoiceGridInput(u8 taskId) if (gTasks[taskId].tIgnoreBPress) return; PlaySE(SE_SELECT); - gScriptResult = 127; + gSpecialVar_Result = 127; } else { - gScriptResult = selection; + gSpecialVar_Result = selection; } HandleDestroyMenuCursors(); MenuZeroFillWindowRect(gTasks[taskId].tLeft, gTasks[taskId].tTop, gTasks[taskId].tRight, gTasks[taskId].tBottom); @@ -888,7 +888,7 @@ bool8 ScrSpecial_CreatePCMenu(void) } else { - gScriptResult = 0xFF; + gSpecialVar_Result = 0xFF; ScriptMenu_CreatePCMenu(); return TRUE; } diff --git a/src/field/secret_base.c b/src/field/secret_base.c index bb7716190..7589ab1e3 100644 --- a/src/field/secret_base.c +++ b/src/field/secret_base.c @@ -175,11 +175,11 @@ void sub_80BB5D0(void) void sub_80BB5E4(void) { u16 i; - gScriptResult = 0; + gSpecialVar_Result = 0; for (i = 0; i < MAX_SECRET_BASES; i++) { if (gUnknown_020387DC != gSaveBlock1.secretBases[i].secretBaseId) continue; - gScriptResult = 1; + gSpecialVar_Result = 1; VarSet(VAR_0x4054, i); break; } @@ -188,9 +188,9 @@ void sub_80BB5E4(void) void sub_80BB63C(void) // 80bb63c { if (gSaveBlock1.secretBases[0].secretBaseId) - gScriptResult = 1; + gSpecialVar_Result = 1; else - gScriptResult = 0; + gSpecialVar_Result = 0; } u8 sub_80BB66C(void) // 80bb66c @@ -462,13 +462,13 @@ void sub_80BBDD0(void) gSpecialVar_0x8007 = roomdecorpos[decidx] & 0xF; metatile = MapGridGetMetatileBehaviorAt(gSpecialVar_0x8006 + 7, gSpecialVar_0x8007 + 7); if (sub_80572D8(metatile) == TRUE || sub_80572EC(metatile) == TRUE) { - gScriptResult = gMapHeader.events->mapObjects[objid].graphicsId + VAR_0x3F20; - VarSet(gScriptResult, gDecorations[roomdecor[decidx]].tiles[0]); - gScriptResult = gMapHeader.events->mapObjects[objid].localId; + gSpecialVar_Result = gMapHeader.events->mapObjects[objid].graphicsId + VAR_0x3F20; + VarSet(gSpecialVar_Result, gDecorations[roomdecor[decidx]].tiles[0]); + gSpecialVar_Result = gMapHeader.events->mapObjects[objid].localId; FlagClear(gSpecialVar_0x8004 + 0xAE); - show_sprite(gScriptResult, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); - sub_805C0F8(gScriptResult, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, gSpecialVar_0x8006, gSpecialVar_0x8007); - sub_805C78C(gScriptResult, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); + show_sprite(gSpecialVar_Result, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); + sub_805C0F8(gSpecialVar_Result, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup, gSpecialVar_0x8006, gSpecialVar_0x8007); + sub_805C78C(gSpecialVar_Result, gSaveBlock1.location.mapNum, gSaveBlock1.location.mapGroup); gSpecialVar_0x8004 ++; } } @@ -504,7 +504,7 @@ bool8 sub_80BC050(void) { sub_80BB5D0(); sub_80BB5E4(); - if (gScriptResult == 1) + if (gSpecialVar_Result == 1) return FALSE; return TRUE; } @@ -539,9 +539,9 @@ void sub_80BC0F8(void) { void sub_80BC114(void) { if (gSaveBlock1.secretBases[0].secretBaseId != gUnknown_020387DC) - gScriptResult = 1; + gSpecialVar_Result = 1; else - gScriptResult = 0; + gSpecialVar_Result = 0; } u8 sub_80BC14C(u8 sbid) @@ -862,15 +862,15 @@ void sub_80BC56C(void) u8 secretBaseIndex = sub_80BC14C(gUnknown_020387DC); if (sub_80BC268(secretBaseIndex) == TRUE) { - gScriptResult = 1; + gSpecialVar_Result = 1; } else if (sub_80BC538() > 9) { - gScriptResult = 2; + gSpecialVar_Result = 2; } else { - gScriptResult = 0; + gSpecialVar_Result = 0; } } @@ -1237,7 +1237,7 @@ void sub_80BCE1C(void) void sub_80BCE4C() { - gSaveBlock1.secretBases[VarGet(VAR_0x4054)].sbr_field_1_5 = gScriptResult; + gSaveBlock1.secretBases[VarGet(VAR_0x4054)].sbr_field_1_5 = gSpecialVar_Result; } void sub_80BCE90() @@ -1257,7 +1257,7 @@ void sub_80BCE90() } gSpecialVar_0x8004 = sub_80BCCA4(curBaseIndex); - gScriptResult = gSaveBlock1.secretBases[curBaseIndex].sbr_field_1_5; + gSpecialVar_Result = gSaveBlock1.secretBases[curBaseIndex].sbr_field_1_5; } void sub_80BCF1C(u8 taskId) diff --git a/src/field/start_menu.c b/src/field/start_menu.c index 9f4eacd09..dccf1714e 100644 --- a/src/field/start_menu.c +++ b/src/field/start_menu.c @@ -50,7 +50,7 @@ static bool8 savingComplete; extern bool8 gDifferentSaveFile; extern u16 gSaveFileStatus; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u8 gUnknown_03004860; @@ -528,10 +528,10 @@ static void Task_SaveDialog(u8 taskId) { case SAVE_CANCELED: case SAVE_ERROR: - gScriptResult = 0; + gSpecialVar_Result = 0; break; case SAVE_SUCCESS: - gScriptResult = status; + gSpecialVar_Result = status; break; case SAVE_IN_PROGRESS: return; diff --git a/src/field/starter_choose.c b/src/field/starter_choose.c index 149eaa03d..701d4087a 100644 --- a/src/field/starter_choose.c +++ b/src/field/starter_choose.c @@ -16,7 +16,7 @@ #include "trig.h" #include "unknown_task.h" -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern struct SpriteTemplate gUnknown_02024E8C; //-------------------------------------------------- @@ -439,7 +439,7 @@ static void Task_StarterChoose5(u8 taskId) { case 0: // YES //Return the starter choice and exit. - gScriptResult = gTasks[taskId].tStarterSelection; + gSpecialVar_Result = gTasks[taskId].tStarterSelection; SetMainCallback2(gMain.savedCallback); break; case 1: // NO diff --git a/src/field/trader.c b/src/field/trader.c index c4fe73ba1..61cb0b4a2 100644 --- a/src/field/trader.c +++ b/src/field/trader.c @@ -179,7 +179,7 @@ void Task_HandleGetDecorationMenuInput(u8 taskId) void ScrSpecial_GetTraderTradedFlag(void) { struct MauvilleManTrader *trader = &gSaveBlock1.mauvilleMan.trader; - gScriptResult = trader->alreadyTraded; + gSpecialVar_Result = trader->alreadyTraded; } void ScrSpecial_DoesPlayerHaveNoDecorations(void) @@ -190,21 +190,21 @@ void ScrSpecial_DoesPlayerHaveNoDecorations(void) { if (sub_8134194(i)) { - gScriptResult = FALSE; + gSpecialVar_Result = FALSE; return; } } - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; } void ScrSpecial_IsDecorationFull(void) { - gScriptResult = FALSE; + gSpecialVar_Result = FALSE; if (gDecorations[gSpecialVar_0x8004].category != gDecorations[gSpecialVar_0x8006].category && sub_8133F9C(gDecorations[gSpecialVar_0x8004].category) == -1) { sub_80FE7D4(gStringVar2, gDecorations[gSpecialVar_0x8004].category); - gScriptResult = TRUE; + gSpecialVar_Result = TRUE; } } diff --git a/src/field/tv.c b/src/field/tv.c index db96775e3..1d5bf929c 100644 --- a/src/field/tv.c +++ b/src/field/tv.c @@ -68,10 +68,10 @@ extern struct TVSaleItem gUnknown_02038724[3]; struct UnkTvStruct gUnknown_03005D38; -extern u16 gScriptLastTalked; +extern u16 gSpecialVar_LastTalked; -extern u8 gScriptContestCategory; -extern u8 gScriptContestRank; +extern u8 gSpecialVar_ContestCategory; +extern u8 gSpecialVar_ContestRank; extern u8 gUnknown_03004316[11]; extern u8 gBattleOutcome; @@ -447,8 +447,8 @@ void ClearTVShowData(void) bool8 sub_80BF1B4(u8); void sub_80BF20C(void); -extern u8 gScriptContestCategory; -extern u8 gScriptContestRank; +extern u8 gSpecialVar_ContestCategory; +extern u8 gSpecialVar_ContestRank; extern u8 gUnknown_03004316[11]; extern u8 gBattleOutcome; @@ -983,8 +983,8 @@ void sub_80BE284(u8 a0) if (gUnknown_03005D38.var0 != -1) { bravoTrainer->contestResult = a0; - bravoTrainer->contestCategory = gScriptContestCategory; - bravoTrainer->contestRank = gScriptContestRank; + bravoTrainer->contestCategory = gSpecialVar_ContestCategory; + bravoTrainer->contestRank = gSpecialVar_ContestRank; bravoTrainer->species = GetMonData(&gPlayerParty[gUnknown_02038694], MON_DATA_SPECIES, NULL); GetMonData(&gPlayerParty[gUnknown_02038694], MON_DATA_NICKNAME, bravoTrainer->pokemonNickname); } @@ -1047,7 +1047,7 @@ void sub_80BE3BC(void) void sub_80BE478(void) { sub_80BF478(); - if (gScriptResult == 1) + if (gSpecialVar_Result == 1) return; GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_NICKNAME, gStringVar1); @@ -1414,7 +1414,7 @@ void sub_80BECE8(void) arg0 = sub_80BECA0(); if (arg0 == 0xff) { - gScriptResult = 0; + gSpecialVar_Result = 0; return; } if (gSaveBlock1.unknown_2ABC[arg0].val2 == 0) @@ -1433,7 +1433,7 @@ void sub_80BECE8(void) gSaveBlock1.unknown_2ABC[arg0].val1 = 0; ShowFieldMessage(gTVNewsTextGroup1[gSaveBlock1.unknown_2ABC[arg0].val0]); } - gScriptResult = 1; + gSpecialVar_Result = 1; } bool8 GetPriceReduction(u8 arg0) @@ -1462,7 +1462,7 @@ bool8 IsPriceDiscounted(u8 arg0) case 1: if (gSaveBlock1.location.mapGroup == MAP_GROUP(SLATEPORT_CITY) && gSaveBlock1.location.mapNum == MAP_NUM(SLATEPORT_CITY) - && gScriptLastTalked == 0x1a) + && gSpecialVar_LastTalked == 0x1a) return TRUE; else return FALSE; @@ -1660,7 +1660,7 @@ void sub_80BF25C(u8 showType) { if(gSaveBlock1.tvShows[i].common.var01 == 1) { - gScriptResult = 1; + gSpecialVar_Result = 1; } else { @@ -1676,7 +1676,7 @@ void sub_80BF25C(u8 showType) void sub_80BF2C4(void) { - gScriptResult = 0; + gSpecialVar_Result = 0; switch (gSpecialVar_0x8005) { case TVSHOW_FAN_CLUB_LETTER: @@ -1708,7 +1708,7 @@ void sub_80BF334(void) struct TVShowFanClubLetter *fanclubLetter; sub_80BF25C(TVSHOW_FAN_CLUB_LETTER); - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, 0)]); fanclubLetter = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].fanclubLetter; @@ -1721,7 +1721,7 @@ void sub_80BF3A4(void) struct TVShowRecentHappenings *recentHappenings; sub_80BF25C(TVSHOW_RECENT_HAPPENINGS); - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { recentHappenings = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].recentHappenings; sub_80EB6FC(recentHappenings->var04, 6); @@ -1733,7 +1733,7 @@ void sub_80BF3DC(void) struct TVShowFanclubOpinions *fanclubOpinions; sub_80BF25C(TVSHOW_PKMN_FAN_CLUB_OPINIONS); - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { StringCopy(gStringVar1, gSpeciesNames[GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_SPECIES, 0)]); GetMonData(&gPlayerParty[GetLeadMonIndex()], MON_DATA_NICKNAME, gStringVar2); @@ -1745,7 +1745,7 @@ void sub_80BF3DC(void) void sub_80BF46C(void) { - gScriptResult = 1; + gSpecialVar_Result = 1; } void sub_80BF478(void) @@ -1758,7 +1758,7 @@ void sub_80BF484(void) struct TVShowBravoTrainerPokemonProfiles *bravoTrainer; sub_80BF25C(TVSHOW_BRAVO_TRAINER_POKEMON_PROFILE); - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { bravoTrainer = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].bravoTrainer; sub_80EB6FC(bravoTrainer->var04, 2); @@ -1770,7 +1770,7 @@ void sub_80BF4BC(void) struct TVShowBravoTrainerBattleTowerSpotlight *bravoTrainerTower; sub_80BF25C(TVSHOW_BRAVO_TRAINER_BATTLE_TOWER_PROFILE); - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { bravoTrainerTower = &gSaveBlock1.tvShows[gUnknown_03005D38.var0].bravoTrainerTower; sub_80EB6FC(bravoTrainerTower->var18, 1); // wrong struct ident, fix later @@ -1898,9 +1898,9 @@ void sub_80BF6D8(void) gUnknown_03005D38.var0 = sub_80BF720(gSaveBlock1.tvShows); gSpecialVar_0x8006 = gUnknown_03005D38.var0; if (gUnknown_03005D38.var0 == -1) - gScriptResult = 1; + gSpecialVar_Result = 1; else - gScriptResult = 0; + gSpecialVar_Result = 0; } s8 sub_80BF720(TVShow tvShow[]) @@ -2095,9 +2095,9 @@ void sub_80BFAE0(void) void sub_80BFB10(void) { if (GetPlayerTrainerId() == GetMonData(&(gPlayerParty[gSpecialVar_0x8004]), MON_DATA_OT_ID, 0)) - gScriptResult = 0; + gSpecialVar_Result = 0; else - gScriptResult = 1; + gSpecialVar_Result = 1; } u8 sub_80BFB54(u8 arg0) @@ -2869,7 +2869,7 @@ void DoTVShowBravoTrainerPokemonProfile(void) struct TVShowBravoTrainerPokemonProfiles *bravoTrainer = &gSaveBlock1.tvShows[gSpecialVar_0x8004].bravoTrainer; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch(state) { @@ -2940,7 +2940,7 @@ void DoTVShowBravoTrainerBattleTowerProfile(void) struct TVShowBravoTrainerBattleTowerSpotlight *bravoTrainerTower = &gSaveBlock1.tvShows[gSpecialVar_0x8004].bravoTrainerTower; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch(state) { @@ -3029,7 +3029,7 @@ void DoTVShowTodaysSmartShopper(void) struct TVShowSmartShopper *smartShopper = &gSaveBlock1.tvShows[gSpecialVar_0x8004].smartshopperShow; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch(state) { @@ -3117,7 +3117,7 @@ void DoTVShowTheNameRaterShow(void) struct TVShowNameRaterShow *nameRaterShow = &gSaveBlock1.tvShows[gSpecialVar_0x8004].nameRaterShow; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3213,7 +3213,7 @@ void DoTVShowPokemonTodaySuccessfulCapture(void) struct TVShowPokemonToday *pokemonToday = &gSaveBlock1.tvShows[gSpecialVar_0x8004].pokemonToday; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3282,7 +3282,7 @@ void DoTVShowPokemonTodayFailedCapture(void) struct TVShowPokemonTodayFailed *pokemonTodayFailed = &gSaveBlock1.tvShows[gSpecialVar_0x8004].pokemonTodayFailed; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3327,7 +3327,7 @@ void DoTVShowPokemonFanClubLetter(void) u8 state; u16 rval; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3379,7 +3379,7 @@ void DoTVShowRecentHappenings(void) struct TVShowRecentHappenings *recentHappenings = &gSaveBlock1.tvShows[gSpecialVar_0x8004].recentHappenings; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3413,7 +3413,7 @@ void DoTVShowPokemonFanClubOpinions(void) struct TVShowFanclubOpinions *fanclubOpinions = &gSaveBlock1.tvShows[gSpecialVar_0x8004].fanclubOpinions; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3459,7 +3459,7 @@ void DoTVShowInSearchOfTrainers(void) { u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3501,7 +3501,7 @@ void DoTVShowInSearchOfTrainers(void) EasyChat_GetWordText(gStringVar1, gSaveBlock1.gabbyAndTyData.quote); StringCopy(gStringVar2, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon1]); StringCopy(gStringVar3, gSpeciesNames[gSaveBlock1.gabbyAndTyData.mon2]); - gScriptResult = 1; + gSpecialVar_Result = 1; gUnknown_020387E8 = 0;; TakeTVShowInSearchOfTrainersOffTheAir(); break; @@ -3514,7 +3514,7 @@ void DoTVShowPokemonAngler(void) struct TVShowPokemonAngler *pokemonAngler = &gSaveBlock1.tvShows[gSpecialVar_0x8004].pokemonAngler; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; if (pokemonAngler->var02 < pokemonAngler->var03) gUnknown_020387E8 = 0; else @@ -3543,7 +3543,7 @@ void DoTVShowTheWorldOfMasters(void) struct TVShowWorldOfMasters *worldOfMasters = &gSaveBlock1.tvShows[gSpecialVar_0x8004].worldOfMasters; u8 state; - gScriptResult = 0; + gSpecialVar_Result = 0; state = gUnknown_020387E8; switch (state) { @@ -3571,7 +3571,7 @@ void DoTVShowTheWorldOfMasters(void) void TVShowDone(void) { - gScriptResult = 1; + gSpecialVar_Result = 1; gUnknown_020387E8 = 0; gSaveBlock1.tvShows[gSpecialVar_0x8004].common.var01 = 0; } diff --git a/src/field/use_pokeblock.c b/src/field/use_pokeblock.c index 8155b4216..7253ac901 100644 --- a/src/field/use_pokeblock.c +++ b/src/field/use_pokeblock.c @@ -105,7 +105,7 @@ EWRAM_DATA u8 gPokeblockMonID = 0; EWRAM_DATA s16 gPokeblockGain = 0; extern u16 gKeyRepeatStartDelay; -extern u16 gScriptItemId; // FIXME: remove after merge of #349 Pokeblock +extern u16 gSpecialVar_ItemId; // FIXME: remove after merge of #349 Pokeblock static void launch_c3_walk_stairs_and_run_once(void (*const)(void)); static void sub_81361E4(void); @@ -574,7 +574,7 @@ static void sub_81369CC(void) case 5: if (gMain.newKeys & (A_BUTTON | B_BUTTON) && !sub_8136D00()) { - PokeblockClearIfExists((u8)gScriptItemId); + PokeblockClearIfExists((u8)gSpecialVar_ItemId); launch_c3_walk_stairs_and_run_once(sub_8136B44); } break; diff --git a/src/field/wild_encounter.c b/src/field/wild_encounter.c index cc4468728..4bf83cad8 100644 --- a/src/field/wild_encounter.c +++ b/src/field/wild_encounter.c @@ -3695,7 +3695,7 @@ const u16 gRoute119WaterTileData[] = 0x5C, 0x8B, 0x12A, }; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern u8 S_RepelWoreOff[]; EWRAM_DATA static u8 sWildEncountersDisabled = 0; @@ -4167,18 +4167,18 @@ void ScrSpecial_RockSmashWildEncounter(void) if (wildPokemonInfo == NULL) { - gScriptResult = 0; + gSpecialVar_Result = 0; return; } else if (DoWildEncounterTest(wildPokemonInfo->encounterRate, 1) == TRUE && GenerateWildMon(wildPokemonInfo, 2, TRUE) == TRUE) { BattleSetup_StartWildBattle(); - gScriptResult = 1; + gSpecialVar_Result = 1; return; } } - gScriptResult = 0; + gSpecialVar_Result = 0; return; } diff --git a/src/pokemon/learn_move.c b/src/pokemon/learn_move.c index 8aa10254c..5eee45b23 100644 --- a/src/pokemon/learn_move.c +++ b/src/pokemon/learn_move.c @@ -1,4 +1,5 @@ #include "global.h" +#include "contest.h" #include "data2.h" #include "field_fadetransition.h" #include "main.h" @@ -24,8 +25,6 @@ extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; extern u8 gTileBuffer[]; -extern const struct ContestMove gContestMoves[]; -extern const struct ContestEffect gContestEffects[]; extern const struct WindowConfig gWindowConfig_81E6CE4; extern const struct WindowConfig gWindowConfig_81E7240; extern const u8 *const gContestEffectStrings[]; diff --git a/src/pokemon/pokeblock_feed.c b/src/pokemon/pokeblock_feed.c index 389c4bb25..8e3adda12 100644 --- a/src/pokemon/pokeblock_feed.c +++ b/src/pokemon/pokeblock_feed.c @@ -645,7 +645,7 @@ static bool8 sub_8147B20(struct Pokemon* mon) ewram1FFFF++; break; case 5: - SetPokeblockFeedSpritePal(gScriptItemId); + SetPokeblockFeedSpritePal(gSpecialVar_ItemId); LoadCompressedObjectPalette(&sPokeblockFeedSpritePal); ewram1FFFF++; break; @@ -722,7 +722,7 @@ static void Task_WaitForAtePokeblockText(u8 taskID) static void Task_PrintAtePokeblockText(u8 taskID) { struct Pokemon* mon = &gPlayerParty[gPokeblockMonID]; - struct Pokeblock* pokeblock = &gSaveBlock1.pokeblocks[gScriptItemId]; + struct Pokeblock* pokeblock = &gSaveBlock1.pokeblocks[gSpecialVar_ItemId]; gPokeblockGain = PokeblockGetGain(GetNature(mon), pokeblock); GetMonNickname(mon, gStringVar1); diff --git a/src/pokemon/pokemon_menu.c b/src/pokemon/pokemon_menu.c index f6f5e24e7..d2a5197a0 100644 --- a/src/pokemon/pokemon_menu.c +++ b/src/pokemon/pokemon_menu.c @@ -435,7 +435,7 @@ static void sub_808A1E0(u8 taskID) static void sub_808A228(u8 taskID) { - if (ItemIsMail(gScriptItemId) && gUnknown_0202E8F4 != 0) + if (ItemIsMail(gSpecialVar_ItemId) && gUnknown_0202E8F4 != 0) { BeginNormalPaletteFade(-1, 0, 0, 0x10, 0); gTasks[taskID].func = sub_808A180; @@ -451,7 +451,7 @@ static void sub_808A228(u8 taskID) static void sub_808A2AC(u8 taskID) { if (!gPaletteFade.active) - PartyMenuTryGiveMonHeldItem(taskID, gScriptItemId, sub_808A228); + PartyMenuTryGiveMonHeldItem(taskID, gSpecialVar_ItemId, sub_808A228); } static void sub_808A2DC(u8 taskID) @@ -463,7 +463,7 @@ static void sub_808A2DC(u8 taskID) static void sub_808A330(u8 taskID) { - PartyMenuTryGiveMonHeldItem(taskID, gScriptItemId, sub_808A2DC); + PartyMenuTryGiveMonHeldItem(taskID, gSpecialVar_ItemId, sub_808A2DC); } static void sub_808A34C(void) @@ -507,7 +507,7 @@ static void sub_808A3A4(void) void sub_808A3F8(void) { - if (ItemIsMail(gScriptItemId)) + if (ItemIsMail(gSpecialVar_ItemId)) { u8 taskID = CreateTask(sub_808A330, 0); gPaletteFade.bufferTransferDisabled = 1; @@ -523,7 +523,7 @@ void sub_808A3F8(void) DestroyTask(taskID); } gPaletteFade.bufferTransferDisabled = 1; - if (gScriptItemId) + if (gSpecialVar_ItemId) { SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0xFF, sub_808A2AC, 0xFF); SetMainCallback2(sub_808A358); @@ -554,7 +554,7 @@ static void sub_808A4D4(void) void sub_808A520(void) { gPaletteFade.bufferTransferDisabled = 1; - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { if (gUnknown_0202E8F8) RemoveBagItem(gUnknown_0202E8F8, 1); @@ -572,7 +572,7 @@ static void sub_808A5BC(u8 taskID) { if (!gPaletteFade.active) { - DisplayGiveHeldItemMessage(gLastFieldPokeMenuOpened, gScriptItemId, 0); + DisplayGiveHeldItemMessage(gLastFieldPokeMenuOpened, gSpecialVar_ItemId, 0); gTasks[taskID].func = sub_808A1E0; } } @@ -915,7 +915,7 @@ static bool8 SetUpFieldMove_Waterfall(void) static void sub_808AE8C(void) { u8 i; - u8 arg = gScriptItemId - 33; + u8 arg = gSpecialVar_ItemId - 33; for (i = 0; i < 6; i++) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES)) @@ -923,7 +923,7 @@ static void sub_808AE8C(void) sub_806D668(i); if (GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) || !CanMonLearnTMHM(&gPlayerParty[i], arg)) sub_806BC3C(i, 0x9A); - else if (pokemon_has_move(&gPlayerParty[i], ItemIdToBattleMoveId(gScriptItemId))) + else if (pokemon_has_move(&gPlayerParty[i], ItemIdToBattleMoveId(gSpecialVar_ItemId))) sub_806BC3C(i, 0xA8); else sub_806BC3C(i, 0x8C); @@ -938,7 +938,7 @@ static void sub_808AF20(void) { if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES)) { - if (GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) || !GetEvolutionTargetSpecies(&gPlayerParty[i], 3, gScriptItemId)) + if (GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG) || !GetEvolutionTargetSpecies(&gPlayerParty[i], 3, gSpecialVar_ItemId)) { sub_806D668(i); sub_806BC3C(i, 0); @@ -955,7 +955,7 @@ static void sub_808AF80(void) { if (gUnknown_02038561 == 0) { - switch (CheckIfItemIsTMHMOrEvolutionStone(gScriptItemId)) + switch (CheckIfItemIsTMHMOrEvolutionStone(gSpecialVar_ItemId)) { case 1: sub_808AE8C(); @@ -983,7 +983,7 @@ void sub_808B020(void) switch (gUnknown_02038561) { case 0: - if (CheckIfItemIsTMHMOrEvolutionStone(gScriptItemId) == 1) + if (CheckIfItemIsTMHMOrEvolutionStone(gSpecialVar_ItemId) == 1) SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B0C0, 20); else SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B0C0, 3); @@ -1013,11 +1013,11 @@ void sub_808B0C0(u8 taskID) { sub_806D5A4(); if (gUnknown_02038561 == 0) - gUnknown_03004AE4(taskID, gScriptItemId, sub_808B224); + gUnknown_03004AE4(taskID, gSpecialVar_ItemId, sub_808B224); if (gUnknown_02038561 == 1) { PlaySE(SE_SELECT); - PartyMenuTryGiveMonHeldItem(taskID, gScriptItemId, sub_808B2EC); + PartyMenuTryGiveMonHeldItem(taskID, gSpecialVar_ItemId, sub_808B2EC); } if (gUnknown_02038561 == 3) { @@ -1042,7 +1042,7 @@ void sub_808B0C0(u8 taskID) static void sub_808B1EC(u8 taskID) { if (!gPaletteFade.active) - gUnknown_03004AE4(taskID, gScriptItemId, sub_808B224); + gUnknown_03004AE4(taskID, gSpecialVar_ItemId, sub_808B224); } static void sub_808B224(u8 taskID) @@ -1120,7 +1120,7 @@ static void sub_808B3EC(void) IntrCallback callback; gPaletteFade.bufferTransferDisabled = 1; - if (gScriptResult == 0) + if (gSpecialVar_Result == 0) { if (gUnknown_0202E8F8) RemoveBagItem(gUnknown_0202E8F8, 1); @@ -1143,7 +1143,7 @@ static void sub_808B4A4(u8 taskID) { if (!gPaletteFade.active) { - DisplayGiveHeldItemMessage(gLastFieldPokeMenuOpened, gScriptItemId, 1); + DisplayGiveHeldItemMessage(gLastFieldPokeMenuOpened, gSpecialVar_ItemId, 1); gTasks[taskID].func = sub_808B4EC; } } diff --git a/src/pokemon/pokemon_size_record.c b/src/pokemon/pokemon_size_record.c index 2ab289416..f92a95bfb 100644 --- a/src/pokemon/pokemon_size_record.c +++ b/src/pokemon/pokemon_size_record.c @@ -15,7 +15,7 @@ struct UnknownStruct u16 unk4; }; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; static const struct UnknownStruct sBigMonSizeTable[] = { @@ -104,13 +104,13 @@ static void FormatMonSizeRecord(u8 *string, u32 size) static u8 CompareMonSize(u16 species, u16 *sizeRecord) { - if (gScriptResult == 0xFF) + if (gSpecialVar_Result == 0xFF) { return 0; } else { - struct Pokemon *pkmn = &gPlayerParty[gScriptResult]; + struct Pokemon *pkmn = &gPlayerParty[gSpecialVar_Result]; // UB: Too few arguments for function 'GetMonData' if (GetMonData(pkmn, MON_DATA_IS_EGG) == TRUE || GetMonData(pkmn, MON_DATA_SPECIES) != species) @@ -169,7 +169,7 @@ void CompareShroomishSize(void) { u16 *sizeRecord = GetVarPointer(VAR_SHROOMISH_SIZE_RECORD); - gScriptResult = CompareMonSize(SPECIES_SHROOMISH, sizeRecord); + gSpecialVar_Result = CompareMonSize(SPECIES_SHROOMISH, sizeRecord); } void InitBarboachSizeRecord(void) @@ -188,7 +188,7 @@ void CompareBarboachSize(void) { u16 *sizeRecord = GetVarPointer(VAR_BARBOACH_SIZE_RECORD); - gScriptResult = CompareMonSize(SPECIES_BARBOACH, sizeRecord); + gSpecialVar_Result = CompareMonSize(SPECIES_BARBOACH, sizeRecord); } void GiveGiftRibbonToParty(u8 index, u8 ribbonId) diff --git a/src/pokemon/pokemon_summary_screen.c b/src/pokemon/pokemon_summary_screen.c index 532f30aaa..4de5f5345 100644 --- a/src/pokemon/pokemon_summary_screen.c +++ b/src/pokemon/pokemon_summary_screen.c @@ -1,11 +1,14 @@ #include "global.h" +#include "constants/items.h" +#include "constants/songs.h" +#include "constants/species.h" #include "battle.h" +#include "contest.h" #include "data2.h" #include "decompress.h" #include "event_data.h" #include "ewram.h" #include "item.h" -#include "constants/items.h" #include "learn_move.h" #include "link.h" #include "m4a.h" @@ -19,9 +22,7 @@ #include "pokemon.h" #include "pokemon_summary_screen.h" #include "region_map.h" -#include "constants/songs.h" #include "sound.h" -#include "constants/species.h" #include "sprite.h" #include "string_util.h" #include "strings.h" diff --git a/src/rom6.c b/src/rom6.c index c25f0f9f5..e71484b0a 100644 --- a/src/rom6.c +++ b/src/rom6.c @@ -13,7 +13,7 @@ #include "sprite.h" #include "task.h" -extern u16 gScriptLastTalked; +extern u16 gSpecialVar_LastTalked; extern void (*gFieldCallback)(void); extern u8 gLastFieldPokeMenuOpened; extern void (*gUnknown_03005CE4)(void); @@ -43,7 +43,7 @@ bool8 npc_before_player_of_type(u8 a) } else { - gScriptLastTalked = gMapObjects[mapObjId].localId; + gSpecialVar_LastTalked = gMapObjects[mapObjId].localId; return TRUE; } } diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c index 8fea7f710..347f113c3 100644 --- a/src/rom_8077ABC.c +++ b/src/rom_8077ABC.c @@ -51,13 +51,6 @@ struct Struct_gUnknown_0837F578 { u8 field_1; }; -struct OamMatrix { - s16 a; - s16 b; - s16 c; - s16 d; -}; - struct Struct_2017810 { u8 filler_0[6]; u8 field_6; @@ -70,12 +63,6 @@ struct Color { u16 b:5; }; -struct Struct_sub_8078914 { - u8 *field_0; - u8 *field_4; - u8 field_8; -}; - struct BGCnt { u16 priority:2; u16 charBase:2; @@ -1742,7 +1729,7 @@ u8 sub_8079F44(u16 species, u8 isBackpic, u8 a3, s16 a4, s16 a5, u8 a6, u32 a7, sprite = CreateSprite(&gSpriteTemplate_837F5B0[a3], a4, a5 + gMonBackPicCoords[species].y_offset, a6); } if (NotInBattle()) { - gSprites[sprite].affineAnims = &gSpriteAffineAnimTable_81E7C18; + gSprites[sprite].affineAnims = gSpriteAffineAnimTable_81E7C18; StartSpriteAffineAnim(&gSprites[sprite], 0); } return sprite; diff --git a/src/scene/berry_blender.c b/src/scene/berry_blender.c index 47ed314a8..d147d11ce 100644 --- a/src/scene/berry_blender.c +++ b/src/scene/berry_blender.c @@ -208,7 +208,7 @@ extern void de_sub_8073110(); extern struct MusicPlayerInfo gMPlay_SE2; extern struct MusicPlayerInfo gMPlay_BGM; -extern u16 gScriptItemId; +extern u16 gSpecialVar_ItemId; extern u8 gUnknown_020297ED; extern u8 byte_3002A68; @@ -1192,7 +1192,7 @@ static void sub_804E9F8(void) case 8: gBerryBlenderData->field_0++; gBerryBlenderData->field_13C = 0; - Blender_CopyBerryData(&gBerryBlenderData->blendedBerries[0], gScriptItemId); + Blender_CopyBerryData(&gBerryBlenderData->blendedBerries[0], gSpecialVar_ItemId); memcpy(gBlockSendBuffer, &gBerryBlenderData->blendedBerries[0], sizeof(struct BlenderBerry)); sub_80084A4(); gBerryBlenderData->framesToWait = 0; @@ -1438,9 +1438,9 @@ static void sub_804F378(void) { case 0: sub_804F0F4(); - Blender_SetBankBerryData(0, gScriptItemId); - Blender_CopyBerryData(&gBerryBlenderData->blendedBerries[0], gScriptItemId); - sub_804F1BC(gScriptItemId, gBerryBlenderData->playersNo, &gBerryBlenderData->blendedBerries[0]); + Blender_SetBankBerryData(0, gSpecialVar_ItemId); + Blender_CopyBerryData(&gBerryBlenderData->blendedBerries[0], gSpecialVar_ItemId); + sub_804F1BC(gSpecialVar_ItemId, gBerryBlenderData->playersNo, &gBerryBlenderData->blendedBerries[0]); for (i = 0; i < BLENDER_MAX_PLAYERS; i++) { gBerryBlenderData->field_70[i] = 0; @@ -3431,7 +3431,7 @@ static bool8 Blender_PrintBlendingResults(void) Blender_PrintMadePokeblockString(&pokeblock, gBerryBlenderData->stringVar); CreateTask(sub_8052BD0, 6); MenuPrintMessage(gBerryBlenderData->stringVar, 1, 15); - RemoveBagItem(gScriptItemId, 1); + RemoveBagItem(gSpecialVar_ItemId, 1); sub_810CA34(&pokeblock); gBerryBlenderData->field_0++; break; diff --git a/src/scene/new_game.c b/src/scene/new_game.c index ee042a0de..0279f99c6 100644 --- a/src/scene/new_game.c +++ b/src/scene/new_game.c @@ -24,6 +24,7 @@ #include "rtc.h" #include "script.h" #include "secret_base.h" +#include "text.h" #include "tv.h" EWRAM_DATA u8 gDifferentSaveFile = 0; @@ -35,14 +36,10 @@ extern u16 gSaveFileStatus; extern u8 gUnknown_0819FA81[]; -const struct SB1_2EFC_Struct gUnknown_08216604 = +static const struct ContestWinner sEmptyMuseumPortrait = { - 0x0000, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - } + .nickname = {EOS}, + .trainerName = {EOS}, }; void write_word_to_mem(u32 var, u8 *dataPtr) @@ -83,13 +80,13 @@ void ClearPokedexFlags(void) memset(&gSaveBlock2.pokedex.seen, 0, sizeof(gSaveBlock2.pokedex.seen)); } -void sub_8052DA8(void) +void ResetContestAndMuseumWinners(void) { s32 i; - sub_80B2D1C(); + Contest_ResetWinners(); for (i = 0; i < 5; i++) - gSaveBlock1.sbStruct.unkSB1.sb1_2EFC_struct[i] = gUnknown_08216604; + gSaveBlock1.museumPortraits[i] = sEmptyMuseumPortrait; } void ZeroBattleTowerData(void) @@ -142,7 +139,7 @@ void NewGameInitData(void) gSaveBlock1.money = 3000; ResetLinkContestBoolean(); ResetGameStats(); - sub_8052DA8(); + ResetContestAndMuseumWinners(); InitLinkBattleRecords(); InitShroomishSizeRecord(); InitBarboachSizeRecord(); diff --git a/src/script_pokemon_util_80C4BF0.c b/src/script_pokemon_util_80C4BF0.c index 9d1aaa125..164d71cb5 100644 --- a/src/script_pokemon_util_80C4BF0.c +++ b/src/script_pokemon_util_80C4BF0.c @@ -38,22 +38,22 @@ extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; extern u16 gSpecialVar_0x8006; -extern u16 gScriptContestCategory; -extern u16 gScriptContestRank; -extern u16 gScriptResult; +extern u16 gSpecialVar_ContestCategory; +extern u16 gSpecialVar_ContestRank; +extern u16 gSpecialVar_Result; extern u32 gUnknown_03005D28; extern u8 gUnknown_02038694; extern u8 gUnknown_0203856C; -extern u8 gUnknown_02038690[]; +extern u8 gContestFinalStandings[]; extern u16 gUnknown_02038678[]; void sub_80C4BF0(void) { - gSaveBlock1.vars[0x10] = gContestMons[0].unk16; - gSaveBlock1.vars[0x11] = gContestMons[1].unk16; - gSaveBlock1.vars[0x12] = gContestMons[2].unk16; + gSaveBlock1.vars[0x10] = gContestMons[0].trainerGfxId; + gSaveBlock1.vars[0x11] = gContestMons[1].trainerGfxId; + gSaveBlock1.vars[0x12] = gContestMons[2].trainerGfxId; } void sub_80C4C28(void) @@ -91,7 +91,7 @@ void sub_80C4C78(void) u16 var; u16 returnVar; - switch(gScriptContestCategory) + switch(gSpecialVar_ContestCategory) { case 0: var = 8; @@ -111,7 +111,7 @@ void sub_80C4C78(void) break; } - returnVar = gSaveBlock1.sbStruct.unkSB2.sb1_2EFC_struct2[var].var; + returnVar = gSaveBlock1.contestWinners[var].species; if(returnVar == 0) gSpecialVar_0x8004 = returnVar; @@ -121,13 +121,13 @@ void sub_80C4C78(void) void sub_80C4CEC(void) { - sub_80B2A7C(0xFF); + Contest_SaveWinner(0xFF); } void sub_80C4CF8(void) { - if(!gUnknown_02038690[gContestPlayerMonIndex] - && gScriptContestRank == 3 + if(!gContestFinalStandings[gContestPlayerMonIndex] + && gSpecialVar_ContestRank == 3 && (s16)gUnknown_02038678[gContestPlayerMonIndex] >= 800) { gSpecialVar_0x8004 = 1; @@ -144,7 +144,7 @@ u8 sub_80C4D50(void) int i; for (i = 0; i < 5; i++) - if (gSaveBlock1.sbStruct.unkSB2.sb1_2EFC_struct2[i + 8].var) + if (gSaveBlock1.museumPortraits[i].species != 0) retVar++; return retVar; @@ -367,7 +367,7 @@ void ShowContestWinner(void) sub_80AAF30(); BATTLE_STRUCT->unk15DDF = 1; BATTLE_STRUCT->unk15DDE = sub_80B2C4C(254, 0); - sub_80B2A7C(3); + Contest_SaveWinner(3); gUnknown_0203856C = 0; } SetMainCallback2(CB2_ContestPainting); @@ -376,10 +376,10 @@ void ShowContestWinner(void) void sub_80C4F70(void) { - VarSet(0x4010, gContestMons[0].unk16); - VarSet(0x4011, gContestMons[1].unk16); - VarSet(0x4012, gContestMons[2].unk16); - VarSet(0x4013, gContestMons[3].unk16); + VarSet(0x4010, gContestMons[0].trainerGfxId); + VarSet(0x4011, gContestMons[1].trainerGfxId); + VarSet(0x4012, gContestMons[2].trainerGfxId); + VarSet(0x4013, gContestMons[3].trainerGfxId); } bool8 GiveMonArtistRibbon(void) @@ -387,8 +387,8 @@ bool8 GiveMonArtistRibbon(void) u8 ribbon = GetMonData(&gPlayerParty[gUnknown_02038694], MON_DATA_ARTIST_RIBBON); if(ribbon == FALSE - && gUnknown_02038690[gContestPlayerMonIndex] == 0 - && gScriptContestRank == 3 + && gContestFinalStandings[gContestPlayerMonIndex] == 0 + && gSpecialVar_ContestRank == 3 && (s16)gUnknown_02038678[gContestPlayerMonIndex] >= 800) { ribbon = TRUE; @@ -421,8 +421,8 @@ void ShowContestEntryMonPic(void) MenuDrawTextWindow(left, top, 19, 13); species = gContestMons[gSpecialVar_0x8006].species; - var1 = gContestMons[gSpecialVar_0x8006].unk38; // v2 - var2 = gContestMons[gSpecialVar_0x8006].unk3C; // v3 + var1 = gContestMons[gSpecialVar_0x8006].personality; + var2 = gContestMons[gSpecialVar_0x8006].otId; taskId = CreateTask(sub_80C5190, 0x50); gTasks[taskId].data[0] = 0; gTasks[taskId].data[1] = species; @@ -488,9 +488,9 @@ void sub_80C5190(u8 taskId) void ScriptGetMultiplayerId(void) { if(gIsLinkContest & 1) - gScriptResult = GetMultiplayerId(); + gSpecialVar_Result = GetMultiplayerId(); else - gScriptResult = 4; + gSpecialVar_Result = 4; } void ScriptRandom(void) @@ -502,11 +502,11 @@ void ScriptRandom(void) { gUnknown_03005D28 = 1103515245 * gUnknown_03005D28 + 24691; random = gUnknown_03005D28 >> 16; - scriptPtr = &gScriptResult; + scriptPtr = &gSpecialVar_Result; } else { - scriptPtr = &gScriptResult; + scriptPtr = &gSpecialVar_Result; random = Random(); } *scriptPtr = random % *scriptPtr; @@ -587,13 +587,13 @@ void CheckForAlivePartyMons(void) switch(var) { case 1: - gScriptResult = var; + gSpecialVar_Result = var; break; case 0: - gScriptResult = var; + gSpecialVar_Result = var; break; case 2: - gScriptResult = var; + gSpecialVar_Result = var; break; } } @@ -657,10 +657,10 @@ void sub_80C5580(void) switch(var) { case 0: - gScriptResult = 0; + gSpecialVar_Result = 0; break; default: - gScriptResult = 1; + gSpecialVar_Result = 1; break; } @@ -681,11 +681,11 @@ void SetBattleTowerPlayerParty(void) { case 0: // player quit battle tower? LoadPlayerParty(); - gScriptResult = 0; + gSpecialVar_Result = 0; break; default: // load battle tower. ReducePlayerPartyToThree(); - gScriptResult = 1; + gSpecialVar_Result = 1; break; } diff --git a/src/script_pokemon_util_80F99CC.c b/src/script_pokemon_util_80F99CC.c index aed11bb7e..33e7620f7 100644 --- a/src/script_pokemon_util_80F99CC.c +++ b/src/script_pokemon_util_80F99CC.c @@ -23,7 +23,7 @@ extern u8 gPlayerPartyCount; extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8005; extern u8 gUnknown_02038694; -extern u16 gScriptResult; +extern u16 gSpecialVar_Result; extern void (*gFieldCallback)(void); @@ -281,11 +281,11 @@ void ScrSpecial_CountPokemonMoves(void) // count pokemon moves { u8 i; - gScriptResult = 0; + gSpecialVar_Result = 0; for (i = 0; i < 4; i++) // checks MOVE1-MOVE4 if (GetMonData(&gPlayerParty[gSpecialVar_0x8004], MON_DATA_MOVE1 + i)) - gScriptResult++; + gSpecialVar_Result++; } void ScrSpecial_GetPokemonNicknameAndMoveName(void) @@ -437,8 +437,8 @@ void sub_80FA0DC(void) void sub_80FA148(void) { struct Pokemon *party = &gPlayerParty[gSpecialVar_0x8004]; - gScriptResult = 0; + gSpecialVar_Result = 0; if (GetMonData(party, MON_DATA_IS_EGG)) - gScriptResult = 1; + gSpecialVar_Result = 1; } diff --git a/sym_ewram.txt b/sym_ewram.txt index b3bf568ac..bc74103f1 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -476,7 +476,7 @@ gUnknown_02038680: @ 2038680 gUnknown_02038688: @ 2038688 .space 0x8 -gUnknown_02038690: @ 2038690 +gContestFinalStandings: @ 2038690 .space 0x4 gUnknown_02038694: @ 2038694 @@ -494,10 +494,10 @@ gIsLinkContest: @ 203869A gUnknown_0203869B: @ 203869B .space 0x1 -gScriptContestCategory: @ 203869C +gSpecialVar_ContestCategory: @ 203869C .space 0x2 -gScriptContestRank: @ 203869E +gSpecialVar_ContestRank: @ 203869E .space 0x2 .include "src/field/shop.o" |