diff options
author | ultima-soul <akshayjhanji@hotmail.com> | 2019-04-07 14:19:02 -0700 |
---|---|---|
committer | huderlem <huderlem@gmail.com> | 2019-04-07 16:36:15 -0500 |
commit | 0a16dd0df08213b58a804b0711a7fdeb79377ce6 (patch) | |
tree | e55162aca184cb88ed0e47e95a35a4b343e2c4ea /asm | |
parent | 963d165e06f4428605fca5c1369c9f417e8e7156 (diff) |
Decompile/port rest of battle_anim plus fix 1 NONMATCHING.
Diffstat (limited to 'asm')
-rw-r--r-- | asm/battle_anim_812C144.s | 1714 |
1 files changed, 0 insertions, 1714 deletions
diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s deleted file mode 100644 index 45ab2de2a..000000000 --- a/asm/battle_anim_812C144.s +++ /dev/null @@ -1,1714 +0,0 @@ - .include "constants/gba_constants.inc" - .include "include/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_81318F0 -sub_81318F0: @ 81318F0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r3, _0813193C @ =gBattleAnimArgs - movs r2, 0 - strh r2, [r3, 0xE] - ldr r1, _08131940 @ =gAnimFriendship - ldrb r0, [r1] - ldrb r1, [r1] - adds r0, r1, 0 - subs r0, 0x3D - lsls r0, 24 - lsrs r0, 24 - adds r2, r1, 0 - cmp r0, 0x1E - bhi _08131914 - movs r0, 0x1 - strh r0, [r3, 0xE] -_08131914: - adds r0, r2, 0 - subs r0, 0x5C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6C - bhi _08131924 - movs r0, 0x2 - strh r0, [r3, 0xE] -_08131924: - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0xC8 - bls _08131930 - movs r0, 0x3 - strh r0, [r3, 0xE] -_08131930: - adds r0, r4, 0 - bl DestroyAnimVisualTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813193C: .4byte gBattleAnimArgs -_08131940: .4byte gAnimFriendship - thumb_func_end sub_81318F0 - - thumb_func_start sub_8131944 -sub_8131944: @ 8131944 - 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 - ldr r1, _08131974 @ =gTasks - lsls r0, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - movs r1, 0x8 - ldrsh r0, [r0, r1] - cmp r0, 0x4 - bls _0813196A - b _08131EA0 -_0813196A: - lsls r0, 2 - ldr r1, _08131978 @ =_0813197C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08131974: .4byte gTasks -_08131978: .4byte _0813197C - .align 2, 0 -_0813197C: - .4byte _08131990 - .4byte _08131A44 - .4byte _08131C20 - .4byte _08131D40 - .4byte _08131DC4 -_08131990: - movs r0, 0 - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _081319DC @ =gTasks - mov r2, r8 - lsls r4, r2, 2 - adds r0, r4, r2 - lsls r0, 3 - adds r6, r0, r1 - movs r3, 0x80 - lsls r3, 4 - adds r0, r3, 0 - ldrh r1, [r6, 0xA] - adds r0, r1 - strh r0, [r6, 0xA] - ldr r0, _081319E0 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - bne _081319E8 - ldr r2, _081319E4 @ =gSprites - lsls r3, r7, 4 - adds r1, r3, r7 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r6, 0xA] - lsls r0, 16 - asrs r0, 24 - ldrh r4, [r1, 0x24] - adds r0, r4 - strh r0, [r1, 0x24] - b _08131A02 - .align 2, 0 -_081319DC: .4byte gTasks -_081319E0: .4byte gBattleAnimAttacker -_081319E4: .4byte gSprites -_081319E8: - ldr r3, _08131A3C @ =gSprites - lsls r4, r7, 4 - adds r2, r4, r7 - lsls r2, 2 - adds r2, r3 - ldrh r1, [r6, 0xA] - lsls r1, 16 - asrs r1, 24 - ldrh r0, [r2, 0x24] - subs r0, r1 - strh r0, [r2, 0x24] - adds r2, r3, 0 - adds r3, r4, 0 -_08131A02: - ldr r1, _08131A40 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r4, r0, r1 - ldrb r0, [r4, 0xA] - strh r0, [r4, 0xA] - adds r1, r3, r7 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x24] - ldrh r1, [r1, 0x20] - adds r0, r1 - lsls r0, 16 - movs r1, 0x80 - lsls r1, 14 - adds r0, r1 - movs r1, 0x98 - lsls r1, 17 - cmp r0, r1 - bhi _08131A2E - b _08131EA0 -_08131A2E: - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08131EA0 - .align 2, 0 -_08131A3C: .4byte gSprites -_08131A40: .4byte gTasks -_08131A44: - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _08131A74 - ldr r0, _08131A6C @ =gSharedMem + 0x19348 - ldr r2, [r0, 0x8] - mov r10, r2 - ldr r3, [r0, 0xC] - mov r9, r3 - ldrh r5, [r0] - ldr r0, _08131A70 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSubpriority - lsls r0, 24 - lsrs r4, r0, 24 - movs r7, 0 - b _08131B92 - .align 2, 0 -_08131A6C: .4byte gSharedMem + 0x19348 -_08131A70: .4byte gBattleAnimAttacker -_08131A74: - ldr r4, _08131AD4 @ =gBattleAnimAttacker - ldrb r0, [r4] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08131B10 - ldr r7, _08131AD8 @ =gBattlerPartyIndexes - ldrb r0, [r4] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, _08131ADC @ =gPlayerParty - adds r0, r5 - movs r1, 0 - bl GetMonData - mov r10, r0 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x1 - bl GetMonData - mov r9, r0 - ldrb r2, [r4] - lsls r1, r2, 2 - ldr r0, _08131AE0 @ =gSharedMem + 0x17800 - adds r1, r0 - ldrh r0, [r1, 0x2] - cmp r0, 0 - bne _08131AE4 - lsls r0, r2, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - b _08131AE6 - .align 2, 0 -_08131AD4: .4byte gBattleAnimAttacker -_08131AD8: .4byte gBattlerPartyIndexes -_08131ADC: .4byte gPlayerParty -_08131AE0: .4byte gSharedMem + 0x17800 -_08131AE4: - ldrh r5, [r1, 0x2] -_08131AE6: - movs r0, 0x1 - bl GetAnimBattlerSpriteId - ldr r2, _08131B0C @ =gSprites - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x43 - ldrb r0, [r1] - adds r0, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - movs r7, 0 - movs r6, 0x88 - lsls r6, 1 - b _08131B94 - .align 2, 0 -_08131B0C: .4byte gSprites -_08131B10: - ldr r7, _08131B64 @ =gBattlerPartyIndexes - ldrb r0, [r4] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - movs r6, 0x64 - muls r0, r6 - ldr r5, _08131B68 @ =gEnemyParty - adds r0, r5 - movs r1, 0 - bl GetMonData - mov r10, r0 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0x1 - bl GetMonData - mov r9, r0 - ldrb r2, [r4] - lsls r1, r2, 2 - ldr r0, _08131B6C @ =gSharedMem + 0x17800 - adds r1, r0 - ldrh r0, [r1, 0x2] - cmp r0, 0 - bne _08131B70 - lsls r0, r2, 1 - adds r0, r7 - ldrh r0, [r0] - muls r0, r6 - adds r0, r5 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - b _08131B72 - .align 2, 0 -_08131B64: .4byte gBattlerPartyIndexes -_08131B68: .4byte gEnemyParty -_08131B6C: .4byte gSharedMem + 0x17800 -_08131B70: - ldrh r5, [r1, 0x2] -_08131B72: - movs r0, 0x1 - bl GetAnimBattlerSpriteId - ldr r2, _08131C04 @ =gSprites - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x43 - ldrb r0, [r1] - subs r0, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - movs r7, 0x1 -_08131B92: - ldr r6, _08131C08 @ =0x0000ffe0 -_08131B94: - ldr r0, _08131C0C @ =gBattleAnimTarget - ldrb r0, [r0] - movs r1, 0x1 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - lsls r3, r6, 16 - asrs r3, 16 - str r0, [sp] - str r4, [sp, 0x4] - mov r4, r10 - str r4, [sp, 0x8] - mov r0, r9 - str r0, [sp, 0xC] - adds r0, r5, 0 - adds r1, r7, 0 - movs r2, 0 - bl sub_8079F44 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _08131C10 @ =gBattleAnimAttacker - ldrb r0, [r0] - lsls r0, 2 - ldr r1, _08131C14 @ =gSharedMem + 0x17800 - adds r0, r1 - ldrh r0, [r0, 0x2] - cmp r0, 0 - beq _08131BF2 - ldr r1, _08131C04 @ =gSprites - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x5] - lsrs r0, 4 - lsls r0, 4 - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - orrs r0, r1 - ldr r3, _08131C18 @ =0x00007fff - movs r1, 0x10 - movs r2, 0x6 - bl BlendPalette -_08131BF2: - ldr r0, _08131C1C @ =gTasks - mov r3, r8 - lsls r1, r3, 2 - add r1, r8 - lsls r1, 3 - adds r1, r0 - strh r5, [r1, 0x26] - b _08131DB6 - .align 2, 0 -_08131C04: .4byte gSprites -_08131C08: .4byte 0x0000ffe0 -_08131C0C: .4byte gBattleAnimTarget -_08131C10: .4byte gBattleAnimAttacker -_08131C14: .4byte gSharedMem + 0x17800 -_08131C18: .4byte 0x00007fff -_08131C1C: .4byte gTasks -_08131C20: - ldr r1, _08131C6C @ =gTasks - mov r0, r8 - lsls r4, r0, 2 - adds r0, r4, r0 - lsls r0, 3 - adds r6, r0, r1 - ldrh r0, [r6, 0x26] - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x80 - lsls r1, 4 - adds r0, r1, 0 - ldrh r2, [r6, 0xA] - adds r0, r2 - strh r0, [r6, 0xA] - ldr r0, _08131C70 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - bne _08131C78 - ldr r3, _08131C74 @ =gSprites - lsls r4, r5, 4 - adds r2, r4, r5 - lsls r2, 2 - adds r2, r3 - ldrh r1, [r6, 0xA] - lsls r1, 16 - asrs r1, 24 - ldrh r0, [r2, 0x24] - subs r0, r1 - strh r0, [r2, 0x24] - adds r2, r3, 0 - adds r3, r4, 0 - b _08131C8E - .align 2, 0 -_08131C6C: .4byte gTasks -_08131C70: .4byte gBattleAnimAttacker -_08131C74: .4byte gSprites -_08131C78: - ldr r2, _08131CDC @ =gSprites - lsls r3, r5, 4 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r6, 0xA] - lsls r0, 16 - asrs r0, 24 - ldrh r4, [r1, 0x24] - adds r0, r4 - strh r0, [r1, 0x24] -_08131C8E: - ldr r1, _08131CE0 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r6, r0, r1 - ldrb r0, [r6, 0xA] - strh r0, [r6, 0xA] - adds r1, r3, r5 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x24] - ldrh r1, [r1, 0x20] - adds r0, r1 - lsls r0, 16 - lsrs r5, r0, 16 - movs r1, 0x24 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _08131D0E - ldr r0, _08131CE4 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08131CEC - lsls r4, r5, 16 - asrs r4, 16 - ldr r0, _08131CE8 @ =gBattleAnimTarget - ldrb r0, [r0] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bge _08131D0E - b _08131D02 - .align 2, 0 -_08131CDC: .4byte gSprites -_08131CE0: .4byte gTasks -_08131CE4: .4byte gBattleAnimAttacker -_08131CE8: .4byte gBattleAnimTarget -_08131CEC: - lsls r4, r5, 16 - asrs r4, 16 - ldr r0, _08131D30 @ =gBattleAnimTarget - ldrb r0, [r0] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - ble _08131D0E -_08131D02: - ldrh r0, [r6, 0x24] - adds r0, 0x1 - strh r0, [r6, 0x24] - ldr r1, _08131D34 @ =gBattleAnimArgs - ldr r0, _08131D38 @ =0x0000ffff - strh r0, [r1, 0xE] -_08131D0E: - lsls r0, r5, 16 - movs r2, 0x80 - lsls r2, 14 - adds r0, r2 - movs r1, 0x98 - lsls r1, 17 - cmp r0, r1 - bhi _08131D20 - b _08131EA0 -_08131D20: - ldr r0, _08131D3C @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0xA] - b _08131DB6 - .align 2, 0 -_08131D30: .4byte gBattleAnimTarget -_08131D34: .4byte gBattleAnimArgs -_08131D38: .4byte 0x0000ffff -_08131D3C: .4byte gTasks -_08131D40: - movs r0, 0 - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _08131D8C @ =gTasks - mov r3, r8 - lsls r4, r3, 2 - adds r0, r4, r3 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x26] - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 4 - adds r0, r5 - lsls r0, 2 - ldr r5, _08131D90 @ =gSprites - adds r0, r5 - bl sub_807A0F4 - ldr r0, _08131D94 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - mov r9, r4 - cmp r0, 0 - bne _08131D98 - lsls r1, r7, 4 - adds r1, r7 - lsls r1, 2 - adds r1, r5 - ldrh r0, [r1, 0x20] - negs r0, r0 - subs r0, 0x20 - strh r0, [r1, 0x24] - b _08131DAC - .align 2, 0 -_08131D8C: .4byte gTasks -_08131D90: .4byte gSprites -_08131D94: .4byte gBattleAnimAttacker -_08131D98: - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r0, r5 - ldrh r2, [r0, 0x20] - movs r4, 0x88 - lsls r4, 1 - adds r1, r4, 0 - subs r1, r2 - strh r1, [r0, 0x24] -_08131DAC: - ldr r0, _08131DC0 @ =gTasks - mov r1, r9 - add r1, r8 - lsls r1, 3 - adds r1, r0 -_08131DB6: - ldrh r0, [r1, 0x8] - adds r0, 0x1 - strh r0, [r1, 0x8] - b _08131EA0 - .align 2, 0 -_08131DC0: .4byte gTasks -_08131DC4: - movs r0, 0 - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _08131E38 @ =gTasks - mov r0, r8 - lsls r4, r0, 2 - adds r0, r4, r0 - lsls r0, 3 - adds r2, r0, r1 - movs r1, 0x80 - lsls r1, 4 - adds r0, r1, 0 - ldrh r3, [r2, 0xA] - adds r0, r3 - strh r0, [r2, 0xA] - ldr r0, _08131E3C @ =gBattleAnimAttacker - mov r10, r0 - ldrb r0, [r0] - str r2, [sp, 0x10] - bl GetBattlerSide - lsls r0, 24 - mov r9, r4 - ldr r2, [sp, 0x10] - cmp r0, 0 - bne _08131E44 - ldr r1, _08131E40 @ =gSprites - lsls r5, r7, 4 - adds r0, r5, r7 - lsls r0, 2 - adds r6, r0, r1 - ldrh r0, [r2, 0xA] - lsls r0, 16 - asrs r0, 24 - ldrh r1, [r6, 0x24] - adds r0, r1 - strh r0, [r6, 0x24] - movs r2, 0x24 - ldrsh r4, [r6, r2] - movs r3, 0x20 - ldrsh r0, [r6, r3] - adds r4, r0 - mov r1, r10 - ldrb r0, [r1] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - adds r3, r5, 0 - cmp r4, r0 - blt _08131E7C - movs r2, 0 - strh r2, [r6, 0x24] - b _08131E7C - .align 2, 0 -_08131E38: .4byte gTasks -_08131E3C: .4byte gBattleAnimAttacker -_08131E40: .4byte gSprites -_08131E44: - ldr r1, _08131EB0 @ =gSprites - lsls r5, r7, 4 - adds r0, r5, r7 - lsls r0, 2 - adds r6, r0, r1 - ldrh r1, [r2, 0xA] - lsls r1, 16 - asrs r1, 24 - ldrh r0, [r6, 0x24] - subs r0, r1 - strh r0, [r6, 0x24] - movs r3, 0x24 - ldrsh r4, [r6, r3] - movs r1, 0x20 - ldrsh r0, [r6, r1] - adds r4, r0 - mov r2, r10 - ldrb r0, [r2] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - adds r3, r5, 0 - cmp r4, r0 - bgt _08131E7C - movs r4, 0 - strh r4, [r6, 0x24] -_08131E7C: - ldr r1, _08131EB4 @ =gTasks - mov r0, r9 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r0, 0xA] - strh r1, [r0, 0xA] - ldr r1, _08131EB0 @ =gSprites - adds r0, r3, r7 - lsls r0, 2 - adds r0, r1 - movs r1, 0x24 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _08131EA0 - mov r0, r8 - bl DestroyAnimVisualTask -_08131EA0: - 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 -_08131EB0: .4byte gSprites -_08131EB4: .4byte gTasks - thumb_func_end sub_8131944 - - thumb_func_start sub_8131EB8 -sub_8131EB8: @ 8131EB8 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x3C - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _08131ECA - cmp r0, 0x1 - beq _08131F72 - b _08131FF4 -_08131ECA: - ldr r0, _08131F50 @ =gBattleAnimArgs - movs r2, 0xE - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _08131F64 - movs r0, 0x3F - bl BattleAnimAdjustPanning - adds r1, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0x7A - bl PlaySE12WithPanning - ldr r0, _08131F54 @ =gBattleAnimTarget - ldrb r0, [r0] - movs r1, 0x1 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x10 - strh r0, [r4, 0x22] - ldr r0, _08131F58 @ =0x0000ffe0 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x3C] - adds r0, 0x1 - strh r0, [r4, 0x3C] - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldr r0, _08131F5C @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08131FF4 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _08131FF4 - movs r0, 0x1 - bl GetAnimBattlerSpriteId - ldr r2, _08131F60 @ =gSprites - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r1, 0x43 - ldrb r0, [r1] - subs r0, 0x1 - adds r1, r4, 0 - adds r1, 0x43 - strb r0, [r1] - b _08131FF4 - .align 2, 0 -_08131F50: .4byte gBattleAnimArgs -_08131F54: .4byte gBattleAnimTarget -_08131F58: .4byte 0x0000ffe0 -_08131F5C: .4byte gBattleAnimAttacker -_08131F60: .4byte gSprites -_08131F64: - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - b _08131FF4 -_08131F72: - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r2, 0x2E - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r4, 0x26] - ldrh r2, [r4, 0x30] - adds r0, r2, 0x5 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x7F - ble _08131FA6 - movs r1, 0x2E - ldrsh r0, [r4, r1] - lsrs r1, r0, 31 - adds r0, r1 - asrs r0, 1 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] - adds r0, r2, 0 - subs r0, 0x7A - strh r0, [r4, 0x30] -_08131FA6: - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - ldrh r1, [r4, 0x32] - adds r0, r1 - strh r0, [r4, 0x32] - ldr r0, _08131FD0 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08131FD4 - ldrh r2, [r4, 0x32] - lsls r1, r2, 16 - asrs r1, 24 - ldrh r0, [r4, 0x24] - subs r0, r1 - strh r0, [r4, 0x24] - adds r1, r2, 0 - b _08131FE0 - .align 2, 0 -_08131FD0: .4byte gBattleAnimAttacker -_08131FD4: - ldrh r1, [r4, 0x32] - lsls r0, r1, 16 - asrs r0, 24 - ldrh r2, [r4, 0x24] - adds r0, r2 - strh r0, [r4, 0x24] -_08131FE0: - movs r0, 0xFF - ands r0, r1 - strh r0, [r4, 0x32] - movs r1, 0x34 - ldrsh r0, [r4, r1] - cmp r0, 0x2 - bne _08131FF4 - adds r0, r4, 0 - bl DestroyAnimSprite -_08131FF4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8131EB8 - - thumb_func_start sub_8131FFC -sub_8131FFC: @ 8131FFC - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08132024 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r2, 0x26 - ldrsh r0, [r0, r2] - adds r3, r1, 0 - cmp r0, 0x4 - bls _08132018 - b _0813216A -_08132018: - lsls r0, 2 - ldr r1, _08132028 @ =_0813202C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08132024: .4byte gTasks -_08132028: .4byte _0813202C - .align 2, 0 -_0813202C: - .4byte _08132040 - .4byte _08132090 - .4byte _081320EC - .4byte _08132104 - .4byte _0813216A -_08132040: - ldr r0, _08132084 @ =gBattleAnimAttacker - ldrb r0, [r0] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r0, _08132088 @ =gBattleAnimTarget - ldrb r0, [r0] - movs r1, 0 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - ldr r1, _0813208C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r1 - movs r0, 0x6 - strh r0, [r1, 0x8] - cmp r5, r2 - ble _08132076 - negs r0, r0 - strh r0, [r1, 0x8] -_08132076: - strh r5, [r1, 0xA] - strh r2, [r1, 0xC] - ldrh r0, [r1, 0x26] - adds r0, 0x1 - strh r0, [r1, 0x26] - b _08132188 - .align 2, 0 -_08132084: .4byte gBattleAnimAttacker -_08132088: .4byte gBattleAnimTarget -_0813208C: .4byte gTasks -_08132090: - ldr r1, _081320CC @ =gBankSpriteIds - ldr r0, _081320D0 @ =gBattleAnimAttacker - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - ldr r1, _081320D4 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r1 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r2, r0, r3 - ldrh r0, [r2, 0x8] - ldrh r3, [r1, 0x24] - adds r0, r3 - strh r0, [r1, 0x24] - movs r3, 0x8 - ldrsh r0, [r2, r3] - cmp r0, 0 - ble _081320D8 - movs r3, 0x20 - ldrsh r0, [r1, r3] - movs r3, 0x24 - ldrsh r1, [r1, r3] - adds r0, r1 - movs r3, 0xC - ldrsh r1, [r2, r3] - b _0813215E - .align 2, 0 -_081320CC: .4byte gBankSpriteIds -_081320D0: .4byte gBattleAnimAttacker -_081320D4: .4byte gSprites -_081320D8: - movs r3, 0x20 - ldrsh r0, [r1, r3] - movs r3, 0x24 - ldrsh r1, [r1, r3] - adds r0, r1 - movs r3, 0xC - ldrsh r1, [r2, r3] - cmp r0, r1 - bgt _08132188 - b _08132162 -_081320EC: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r3 - movs r2, 0x8 - ldrsh r1, [r0, r2] - negs r1, r1 - strh r1, [r0, 0x8] - ldrh r1, [r0, 0x26] - adds r1, 0x1 - strh r1, [r0, 0x26] - b _08132188 -_08132104: - ldr r1, _08132144 @ =gBankSpriteIds - ldr r0, _08132148 @ =gBattleAnimAttacker - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - ldr r1, _0813214C @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r1 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r2, r0, r3 - ldrh r0, [r2, 0x8] - ldrh r3, [r1, 0x24] - adds r0, r3 - strh r0, [r1, 0x24] - movs r3, 0x8 - ldrsh r0, [r2, r3] - cmp r0, 0 - bge _08132150 - movs r3, 0x20 - ldrsh r0, [r1, r3] - movs r3, 0x24 - ldrsh r1, [r1, r3] - adds r0, r1 - movs r3, 0xA - ldrsh r1, [r2, r3] - cmp r0, r1 - bgt _08132188 - b _08132162 - .align 2, 0 -_08132144: .4byte gBankSpriteIds -_08132148: .4byte gBattleAnimAttacker -_0813214C: .4byte gSprites -_08132150: - movs r3, 0x20 - ldrsh r0, [r1, r3] - movs r3, 0x24 - ldrsh r1, [r1, r3] - adds r0, r1 - movs r3, 0xA - ldrsh r1, [r2, r3] -_0813215E: - cmp r0, r1 - blt _08132188 -_08132162: - ldrh r0, [r2, 0x26] - adds r0, 0x1 - strh r0, [r2, 0x26] - b _08132188 -_0813216A: - ldr r1, _08132190 @ =gBankSpriteIds - ldr r0, _08132194 @ =gBattleAnimAttacker - ldrb r0, [r0] - adds r0, r1 - ldrb r2, [r0] - ldr r1, _08132198 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - strh r1, [r0, 0x24] - adds r0, r4, 0 - bl DestroyAnimVisualTask -_08132188: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08132190: .4byte gBankSpriteIds -_08132194: .4byte gBattleAnimAttacker -_08132198: .4byte gSprites - thumb_func_end sub_8131FFC - - thumb_func_start sub_813219C -sub_813219C: @ 813219C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _08132204 @ =gTasks - adds r4, r1, r0 - movs r0, 0 - bl GetAnimBattlerSpriteId - lsls r0, 24 - lsrs r0, 24 - movs r5, 0 - strh r0, [r4, 0xE] - ldr r0, _08132208 @ =gBattleAnimAttacker - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - movs r2, 0x1 - negs r2, r2 - adds r1, r2, 0 - cmp r0, 0 - bne _081321D0 - movs r1, 0x1 -_081321D0: - strh r1, [r4, 0x10] - ldr r2, _0813220C @ =gSprites - movs r0, 0xE - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x22] - strh r0, [r4, 0x14] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x20] - strh r0, [r4, 0x12] - strh r5, [r4, 0x1A] - strh r5, [r4, 0x1E] - movs r0, 0x1 - strh r0, [r4, 0x1C] - strh r5, [r4, 0x20] - ldr r0, _08132210 @ =sub_8132214 - str r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08132204: .4byte gTasks -_08132208: .4byte gBattleAnimAttacker -_0813220C: .4byte gSprites -_08132210: .4byte sub_8132214 - thumb_func_end sub_813219C - - thumb_func_start sub_8132214 -sub_8132214: @ 8132214 - push {r4-r6,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _08132238 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _081322BC - cmp r0, 0x1 - bgt _0813223C - cmp r0, 0 - beq _08132242 - b _08132312 - .align 2, 0 -_08132238: .4byte gTasks -_0813223C: - cmp r0, 0x2 - beq _0813230C - b _08132312 -_08132242: - ldrh r0, [r4, 0x1E] - adds r0, 0x8 - movs r2, 0xFF - ands r0, r2 - strh r0, [r4, 0x1E] - ldr r5, _081322B4 @ =gSprites - movs r6, 0xE - ldrsh r0, [r4, r6] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r5 - ldr r3, _081322B8 @ =gSineTable - movs r6, 0x1E - ldrsh r0, [r4, r6] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 21 - strh r0, [r1, 0x24] - ldrh r0, [r4, 0x1A] - adds r0, 0x2 - ands r0, r2 - strh r0, [r4, 0x1A] - movs r1, 0xE - ldrsh r0, [r4, r1] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r5 - movs r6, 0x1A - ldrsh r0, [r4, r6] - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 19 - ldrh r1, [r4, 0x10] - muls r0, r1 - ldrh r1, [r4, 0x12] - adds r0, r1 - strh r0, [r2, 0x20] - movs r6, 0x1A - ldrsh r0, [r4, r6] - cmp r0, 0 - bne _08132312 - movs r0, 0xE - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrh r1, [r4, 0x12] - strh r1, [r0, 0x20] - b _081322FC - .align 2, 0 -_081322B4: .4byte gSprites -_081322B8: .4byte gSineTable -_081322BC: - ldrh r0, [r4, 0x1E] - adds r0, 0x8 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x1E] - ldr r3, _08132304 @ =gSprites - movs r1, 0xE - ldrsh r0, [r4, r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldr r2, _08132308 @ =gSineTable - movs r5, 0x1E - ldrsh r0, [r4, r5] - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - lsls r0, 16 - asrs r0, 21 - strh r0, [r1, 0x24] - movs r6, 0x1E - ldrsh r2, [r4, r6] - cmp r2, 0 - bne _08132312 - movs r1, 0xE - ldrsh r0, [r4, r1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - strh r2, [r1, 0x24] -_081322FC: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _08132312 - .align 2, 0 -_08132304: .4byte gSprites -_08132308: .4byte gSineTable -_0813230C: - adds r0, r2, 0 - bl DestroyAnimVisualTask -_08132312: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8132214 - - thumb_func_start sub_8132318 -sub_8132318: @ 8132318 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _0813236C @ =gBattleAnimTarget - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - ldrh r0, [r4, 0x2E] - ldrh r1, [r4, 0x30] - adds r0, r1 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x30] - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r1, 0x14 - bl Cos - strh r0, [r4, 0x24] - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r1, 0x14 - bl Sin - strh r0, [r4, 0x26] - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0813235E - adds r0, r4, 0 - bl DestroyAnimSprite -_0813235E: - ldrh r0, [r4, 0x32] - adds r0, 0x1 - strh r0, [r4, 0x32] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813236C: .4byte gBattleAnimTarget - thumb_func_end sub_8132318 - - thumb_func_start sub_8132370 -sub_8132370: @ 8132370 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _081323A8 @ =gBattleAnimTarget - ldrb r0, [r0] - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _081323B4 - ldr r2, _081323AC @ =gBattleAnimArgs - ldrh r0, [r4, 0x20] - ldrh r1, [r2] - subs r0, r1 - strh r0, [r4, 0x20] - ldrh r0, [r2, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - ldr r0, _081323B0 @ =0x0000fff5 - strh r0, [r4, 0x2E] - movs r0, 0xC0 - strh r0, [r4, 0x30] - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - b _081323CE - .align 2, 0 -_081323A8: .4byte gBattleAnimTarget -_081323AC: .4byte gBattleAnimArgs -_081323B0: .4byte 0x0000fff5 -_081323B4: - movs r0, 0xB - strh r0, [r4, 0x2E] - movs r0, 0xC0 - strh r0, [r4, 0x30] - ldr r1, _081323D8 @ =gBattleAnimArgs - ldrh r0, [r1] - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - ldrh r0, [r1, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] -_081323CE: - ldr r0, _081323DC @ =sub_8132318 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081323D8: .4byte gBattleAnimArgs -_081323DC: .4byte sub_8132318 - thumb_func_end sub_8132370 - - thumb_func_start sub_81323E0 -sub_81323E0: @ 81323E0 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _08132424 @ =gBattleAnimAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBattlerSpriteCoord - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - strh r0, [r5, 0x22] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xF - bgt _0813240A - movs r0, 0x10 - strh r0, [r5, 0x22] -_0813240A: - movs r0, 0 - strh r0, [r5, 0x3A] - movs r1, 0x10 - strh r1, [r5, 0x3C] - ldr r0, _08132428 @ =sub_8132430 - str r0, [r5, 0x1C] - ldr r0, _0813242C @ =REG_BLDALPHA - lsls r1, 8 - strh r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08132424: .4byte gBattleAnimAttacker -_08132428: .4byte sub_8132430 -_0813242C: .4byte REG_BLDALPHA - thumb_func_end sub_81323E0 - - thumb_func_start sub_8132430 -sub_8132430: @ 8132430 - push {r4,lr} - adds r3, r0, 0 - movs r0, 0x32 - ldrsh r1, [r3, r0] - cmp r1, 0x1 - beq _081324A8 - cmp r1, 0x1 - bgt _08132446 - cmp r1, 0 - beq _08132450 - b _08132522 -_08132446: - cmp r1, 0x2 - beq _081324BE - cmp r1, 0x3 - beq _0813251C - b _08132522 -_08132450: - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _08132522 - strh r1, [r3, 0x2E] - ldrh r1, [r3, 0x30] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0813247A - ldrh r2, [r3, 0x3A] - movs r4, 0x3A - ldrsh r0, [r3, r4] - cmp r0, 0xF - bgt _08132488 - adds r0, r2, 0x1 - strh r0, [r3, 0x3A] - b _08132488 -_0813247A: - ldrh r2, [r3, 0x3C] - movs r4, 0x3C - ldrsh r0, [r3, r4] - cmp r0, 0 - beq _08132488 - subs r0, r2, 0x1 - strh r0, [r3, 0x3C] -_08132488: - adds r0, r1, 0x1 - strh r0, [r3, 0x30] - ldr r2, _081324A4 @ =REG_BLDALPHA - ldrh r0, [r3, 0x3C] - lsls r0, 8 - ldrh r1, [r3, 0x3A] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x3C - ldrsh r0, [r3, r1] - cmp r0, 0 - bne _08132522 - b _08132510 - .align 2, 0 -_081324A4: .4byte REG_BLDALPHA -_081324A8: - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - movs r1, 0 - strh r0, [r3, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _08132522 - strh r1, [r3, 0x2E] - strh r1, [r3, 0x30] - b _08132510 -_081324BE: - ldrh r0, [r3, 0x2E] - adds r0, 0x1 - strh r0, [r3, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _08132522 - movs r0, 0 - strh r0, [r3, 0x2E] - ldrh r1, [r3, 0x30] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _081324EA - ldrh r2, [r3, 0x3A] - movs r4, 0x3A - ldrsh r0, [r3, r4] - cmp r0, 0 - beq _081324F8 - subs r0, r2, 0x1 - strh r0, [r3, 0x3A] - b _081324F8 -_081324EA: - ldrh r2, [r3, 0x3C] - movs r4, 0x3C - ldrsh r0, [r3, r4] - cmp r0, 0xF - bgt _081324F8 - adds r0, r2, 0x1 - strh r0, [r3, 0x3C] -_081324F8: - adds r0, r1, 0x1 - strh r0, [r3, 0x30] - ldr r2, _08132518 @ =REG_BLDALPHA - ldrh r0, [r3, 0x3C] - lsls r0, 8 - ldrh r1, [r3, 0x3A] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x3C - ldrsh r0, [r3, r1] - cmp r0, 0x10 - bne _08132522 -_08132510: - ldrh r0, [r3, 0x32] - adds r0, 0x1 - strh r0, [r3, 0x32] - b _08132522 - .align 2, 0 -_08132518: .4byte REG_BLDALPHA -_0813251C: - adds r0, r3, 0 - bl move_anim_8074EE0 -_08132522: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8132430 - - thumb_func_start sub_8132528 -sub_8132528: @ 8132528 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, _08132544 @ =gBattleAnimArgs - movs r0, 0 - strh r0, [r2, 0xE] - ldr r0, _08132548 @ =gWeatherMoveAnim - ldrh r1, [r0] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _0813254C - movs r0, 0x1 - b _0813256E - .align 2, 0 -_08132544: .4byte gBattleAnimArgs -_08132548: .4byte gWeatherMoveAnim -_0813254C: - movs r0, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08132558 - movs r0, 0x2 - b _0813256E -_08132558: - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _08132564 - movs r0, 0x3 - b _0813256E -_08132564: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _08132570 - movs r0, 0x4 -_0813256E: - strh r0, [r2, 0xE] -_08132570: - adds r0, r3, 0 - bl DestroyAnimVisualTask - pop {r0} - bx r0 - thumb_func_end sub_8132528 - - thumb_func_start sub_813257C -sub_813257C: @ 813257C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r0, _081325B4 @ =gTasks - adds r4, r0 - movs r0, 0 - strh r0, [r4, 0x8] - ldr r0, _081325B8 @ =gBattleAnimArgs - ldrb r0, [r0] - bl GetAnimBattlerSpriteId - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - strh r1, [r4, 0x26] - ldr r2, _081325BC @ =gUnknown_08402B28 - adds r0, r4, 0 - bl sub_80798F4 - ldr r0, _081325C0 @ =sub_81325C4 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_081325B4: .4byte gTasks -_081325B8: .4byte gBattleAnimArgs -_081325BC: .4byte gUnknown_08402B28 -_081325C0: .4byte sub_81325C4 - thumb_func_end sub_813257C - - thumb_func_start sub_81325C4 -sub_81325C4: @ 81325C4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r2, _0813261C @ =gTasks - adds r3, r0, r2 - ldrh r0, [r3, 0x8] - adds r1, r0, 0x1 - movs r5, 0 - strh r1, [r3, 0x8] - subs r0, 0x10 - lsls r0, 16 - lsrs r0, 16 - adds r6, r2, 0 - cmp r0, 0x16 - bhi _08132628 - ldrh r0, [r3, 0xA] - adds r0, 0x1 - strh r0, [r3, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _08132638 - strh r5, [r3, 0xA] - ldrh r0, [r3, 0xC] - adds r0, 0x1 - strh r0, [r3, 0xC] - movs r5, 0x1 - ands r0, r5 - cmp r0, 0 - bne _08132628 - ldr r2, _08132620 @ =gSprites - movs r0, 0x26 - ldrsh r1, [r3, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _08132624 @ =0x0000ffff - strh r1, [r0, 0x24] - b _08132638 - .align 2, 0 -_0813261C: .4byte gTasks -_08132620: .4byte gSprites -_08132624: .4byte 0x0000ffff -_08132628: - ldr r2, _08132658 @ =gSprites - movs r0, 0x26 - ldrsh r1, [r3, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r5, [r0, 0x24] -_08132638: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r6 - bl sub_807992C - lsls r0, 24 - cmp r0, 0 - bne _08132650 - adds r0, r4, 0 - bl DestroyAnimVisualTask -_08132650: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08132658: .4byte gSprites - thumb_func_end sub_81325C4 - - .align 2, 0 @ Don't pad with nop. |