start decompiling pokemon animation

This commit is contained in:
DizzyEggg 2018-01-22 21:32:50 +01:00
parent f57340b729
commit ad73f92061
6 changed files with 1020 additions and 738 deletions

View File

@ -4,547 +4,9 @@
.syntax unified .syntax unified
.text .text
thumb_func_start nullsub_69
nullsub_69: @ 817F3EC
bx lr
thumb_func_end nullsub_69
thumb_func_start sub_817F3F0
sub_817F3F0: @ 817F3F0
push {r4-r6,lr}
mov r6, r9
mov r5, r8
push {r5,r6}
sub sp, 0x4
mov r9, r0
mov r8, r1
adds r5, r2, 0
adds r4, r3, 0
lsls r5, 16
negs r5, r5
lsls r4, 16
negs r4, r4
lsrs r4, 16
mov r0, r8
lsls r0, 16
asrs r0, 16
mov r8, r0
asrs r5, 16
adds r1, r5, 0
bl Cos
adds r6, r0, 0
lsls r4, 16
asrs r4, 16
mov r0, r8
adds r1, r4, 0
bl Sin
subs r6, r0
lsls r6, 16
lsrs r6, 16
mov r0, r8
adds r1, r4, 0
bl Cos
adds r2, r0, 0
mov r0, r8
adds r1, r5, 0
str r2, [sp]
bl Sin
ldr r2, [sp]
adds r2, r0
negs r5, r5
negs r4, r4
lsls r6, 16
asrs r6, 16
lsls r5, 16
asrs r5, 16
adds r6, r5
mov r0, r9
strh r6, [r0, 0x24]
lsls r2, 16
asrs r2, 16
lsls r4, 16
asrs r4, 16
adds r2, r4
strh r2, [r0, 0x26]
add sp, 0x4
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_817F3F0
thumb_func_start GetSpeciesBackAnimId
GetSpeciesBackAnimId: @ 817F474
push {lr}
lsls r0, 16
lsrs r0, 16
ldr r1, =gUnknown_0860A8C8
adds r0, r1
ldrb r0, [r0]
cmp r0, 0
bne _0817F48C
movs r0, 0
b _0817F492
.pool
_0817F48C:
subs r0, 0x1
lsls r0, 24
lsrs r0, 24
_0817F492:
pop {r1}
bx r1
thumb_func_end GetSpeciesBackAnimId
thumb_func_start sub_817F498
sub_817F498: @ 817F498
push {r4-r7,lr}
mov r7, r8
push {r7}
lsls r0, 24
lsrs r5, r0, 24
ldr r1, =gTasks
lsls r6, r5, 2
adds r0, r6, r5
lsls r0, 3
adds r2, r0, r1
movs r3, 0xA
ldrsh r0, [r2, r3]
lsls r3, r0, 16
movs r4, 0xC
ldrsh r0, [r2, r4]
orrs r3, r0
movs r0, 0x8
ldrsh r4, [r2, r0]
mov r8, r1
ldr r0, =SpriteCallbackDummy
mov r12, r0
cmp r4, 0
bne _0817F508
ldrh r0, [r3, 0x2E]
strh r0, [r2, 0x10]
ldrh r0, [r3, 0x32]
strh r0, [r2, 0x12]
movs r0, 0x1
strh r0, [r3, 0x30]
strh r4, [r3, 0x2E]
movs r0, 0x2
adds r1, r6, 0
ldr r6, =gUnknown_0860AA88
ldr r7, =gUnknown_03001274
movs r4, 0
adds r2, r3, 0
adds r2, 0x32
_0817F4E2:
strh r4, [r2]
adds r2, 0x2
adds r0, 0x1
cmp r0, 0x7
bls _0817F4E2
adds r1, r5
lsls r1, 3
add r1, r8
movs r2, 0xE
ldrsh r0, [r1, r2]
lsls r0, 2
adds r0, r6
ldr r0, [r0]
str r0, [r3, 0x1C]
movs r0, 0
str r0, [r7]
ldrh r0, [r1, 0x8]
adds r0, 0x1
strh r0, [r1, 0x8]
_0817F508:
ldr r0, [r3, 0x1C]
cmp r0, r12
bne _0817F528
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
add r0, r8
ldrh r1, [r0, 0x10]
movs r2, 0
strh r1, [r3, 0x2E]
ldrh r0, [r0, 0x12]
strh r0, [r3, 0x32]
strh r2, [r3, 0x30]
adds r0, r5, 0
bl DestroyTask
_0817F528:
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_817F498
thumb_func_start LaunchAnimationTaskForFrontSprite
LaunchAnimationTaskForFrontSprite: @ 817F544
push {r4,r5,lr}
adds r5, r0, 0
lsls r4, r1, 24
lsrs r4, 24
ldr r0, =sub_817F498
movs r1, 0x80
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, =gTasks
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
adds r1, r2
lsrs r0, r5, 16
strh r0, [r1, 0xA]
strh r5, [r1, 0xC]
strh r4, [r1, 0xE]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end LaunchAnimationTaskForFrontSprite
thumb_func_start sub_817F578
sub_817F578: @ 817F578
lsls r1, 24
ldr r3, =gUnknown_03001274
movs r2, 0x1
str r2, [r3]
ldr r2, =gUnknown_0860AA88
lsrs r1, 22
adds r1, r2
ldr r1, [r1]
str r1, [r0, 0x1C]
bx lr
.pool
thumb_func_end sub_817F578
thumb_func_start LaunchAnimationTaskForBackSprite
LaunchAnimationTaskForBackSprite: @ 817F594
push {r4-r6,lr}
adds r5, r0, 0
lsls r6, r1, 24
lsrs r6, 24
ldr r0, =sub_817F498
movs r1, 0x80
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r1, =gTasks
lsls r4, r0, 2
adds r4, r0
lsls r4, 3
adds r4, r1
lsrs r0, r5, 16
strh r0, [r4, 0xA]
strh r5, [r4, 0xC]
ldrh r0, [r5, 0x2E]
lsls r0, 24
ldr r1, =gBattlePartyID
lsrs r0, 23
adds r0, r1
ldrh r1, [r0]
movs r0, 0x64
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
bl GetNature
lsls r0, 24
lsrs r0, 24
lsls r1, r6, 1
ldr r2, =gUnknown_0860AD2F
adds r0, r2
adds r1, r6
ldrb r0, [r0]
adds r1, r0
lsls r1, 24
lsrs r1, 24
ldr r0, =gUnknown_0860ACE4
adds r1, r0
ldrb r0, [r1]
strh r0, [r4, 0xE]
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end LaunchAnimationTaskForBackSprite
thumb_func_start sub_817F60C
sub_817F60C: @ 817F60C
ldr r1, =nullsub_69
str r1, [r0, 0x1C]
bx lr
.pool
thumb_func_end sub_817F60C
thumb_func_start sub_817F618
sub_817F618: @ 817F618
push {r4,r5,lr}
sub sp, 0x10
lsls r1, 16
lsls r3, 16
lsrs r3, 16
ldr r4, =0xffff0000
lsls r2, 16
lsrs r1, 16
orrs r1, r2
str r1, [sp]
ldr r1, [sp, 0x4]
ands r1, r4
orrs r1, r3
str r1, [sp, 0x4]
ldrb r4, [r0, 0x3]
lsls r4, 26
lsrs r4, 27
add r5, sp, 0x8
mov r0, sp
adds r1, r5, 0
movs r2, 0x1
movs r3, 0x2
bl ObjAffineSet
ldr r0, =gOamMatrices
lsls r4, 3
adds r4, r0
ldrh r0, [r5]
strh r0, [r4]
ldrh r0, [r5, 0x2]
strh r0, [r4, 0x2]
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x4]
ldrh r0, [r5, 0x6]
strh r0, [r4, 0x6]
add sp, 0x10
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_817F618
thumb_func_start sub_817F670
sub_817F670: @ 817F670
push {r4,lr}
adds r4, r0, 0
ldrb r0, [r4, 0x1]
movs r1, 0x3
orrs r0, r1
strb r0, [r4, 0x1]
ldr r0, =gSpriteAffineAnimTable_860AD68
str r0, [r4, 0x10]
ldr r0, =gUnknown_03001274
ldr r0, [r0]
cmp r0, 0x1
bne _0817F68E
adds r0, r4, 0
bl InitSpriteAffineAnim
_0817F68E:
movs r1, 0x30
ldrsh r0, [r4, r1]
cmp r0, 0
bne _0817F6A8
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAffineAnim
b _0817F6B0
.pool
_0817F6A8:
adds r0, r4, 0
movs r1, 0
bl StartSpriteAffineAnim
_0817F6B0:
ldrb r3, [r4, 0x1]
lsrs r1, r3, 6
ldrb r2, [r4, 0x3]
lsrs r2, 6
lsls r3, 30
lsrs r3, 30
adds r0, r4, 0
bl CalcCenterToCornerVec
adds r2, r4, 0
adds r2, 0x2C
ldrb r0, [r2]
movs r1, 0x80
orrs r0, r1
strb r0, [r2]
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_817F670
thumb_func_start sub_817F6D4
sub_817F6D4: @ 817F6D4
push {r4,r5,lr}
adds r4, r0, 0
lsls r1, 16
lsrs r1, 16
lsls r2, 16
lsrs r2, 16
lsls r3, 16
lsrs r3, 16
movs r5, 0x30
ldrsh r0, [r4, r5]
cmp r0, 0
bne _0817F6F8
lsls r0, r1, 16
negs r0, r0
lsrs r1, r0, 16
negs r0, r3
lsls r0, 16
lsrs r3, r0, 16
_0817F6F8:
lsls r1, 16
asrs r1, 16
lsls r2, 16
asrs r2, 16
adds r0, r4, 0
bl sub_817F618
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_817F6D4
thumb_func_start sub_817F70C
sub_817F70C: @ 817F70C
push {lr}
adds r1, r0, 0
movs r2, 0x30
ldrsh r0, [r1, r2]
cmp r0, 0
bne _0817F720
movs r2, 0x24
ldrsh r0, [r1, r2]
negs r0, r0
strh r0, [r1, 0x24]
_0817F720:
pop {r0}
bx r0
thumb_func_end sub_817F70C
thumb_func_start sub_817F724
sub_817F724: @ 817F724
push {lr}
lsls r0, 24
lsrs r2, r0, 24
cmp r2, 0x3
bhi _0817F750
ldr r1, =gUnknown_03001240
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r0, r1
movs r2, 0
strh r2, [r0, 0x6]
strh r2, [r0]
movs r1, 0x1
strh r1, [r0, 0x4]
strh r2, [r0, 0x2]
strh r2, [r0, 0x8]
movs r0, 0x1
b _0817F752
.pool
_0817F750:
movs r0, 0
_0817F752:
pop {r1}
bx r1
thumb_func_end sub_817F724
thumb_func_start sub_817F758
sub_817F758: @ 817F758
push {r4,lr}
ldr r4, =gUnknown_03001270
ldrb r1, [r4]
adds r2, r1, 0x1
adds r0, r2, 0
asrs r0, 2
lsls r0, 2
subs r0, r2, r0
strb r0, [r4]
ldrb r0, [r4]
bl sub_817F724
ldrb r0, [r4]
pop {r4}
pop {r1}
bx r1
.pool
thumb_func_end sub_817F758
thumb_func_start sub_817F77C
sub_817F77C: @ 817F77C
push {r4,r5,lr}
adds r4, r0, 0
ldrb r0, [r4, 0x1]
movs r3, 0x4
negs r3, r3
ands r3, r0
movs r5, 0x1
orrs r3, r5
strb r3, [r4, 0x1]
lsrs r1, r3, 6
ldrb r2, [r4, 0x3]
lsrs r2, 6
lsls r3, 30
lsrs r3, 30
adds r0, r4, 0
bl CalcCenterToCornerVec
ldr r0, =gUnknown_03001274
ldr r0, [r0]
cmp r0, 0x1
bne _0817F800
movs r1, 0x30
ldrsh r0, [r4, r1]
cmp r0, 0
bne _0817F7C0
adds r1, r4, 0
adds r1, 0x3F
ldrb r0, [r1]
orrs r0, r5
strb r0, [r1]
adds r5, r1, 0
b _0817F7D0
.pool
_0817F7C0:
adds r0, r4, 0
adds r0, 0x3F
ldrb r2, [r0]
movs r1, 0x2
negs r1, r1
ands r1, r2
strb r1, [r0]
adds r5, r0, 0
_0817F7D0:
ldrb r0, [r4, 0x3]
lsls r0, 26
lsrs r0, 27
bl FreeOamMatrix
ldrb r2, [r4, 0x3]
lsls r1, r2, 26
lsrs r1, 27
ldrb r0, [r5]
lsls r0, 31
lsrs r0, 31
lsls r0, 3
orrs r1, r0
lsls r1, 1
movs r0, 0x3F
negs r0, r0
ands r0, r2
orrs r0, r1
strb r0, [r4, 0x3]
ldrb r1, [r4, 0x1]
movs r0, 0x4
negs r0, r0
ands r0, r1
strb r0, [r4, 0x1]
_0817F800:
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_817F77C
thumb_func_start pokemonanimfunc_01 thumb_func_start pokemonanimfunc_01
pokemonanimfunc_01: @ 817F808 pokemonanimfunc_01: @ 817F808

View File

@ -3,204 +3,6 @@
.section .rodata .section .rodata
gUnknown_0860A8C8:: @ 860A8C8
.byte 0x00, 0x13, 0x02, 0x08, 0x12, 0x15, 0x17, 0x12, 0x12, 0x19, 0x02, 0x13, 0x11, 0x02, 0x13, 0x01, 0x0f, 0x15, 0x0f, 0x0a, 0x0a, 0x0f, 0x15, 0x0f, 0x09, 0x16, 0x16, 0x12, 0x10, 0x12, 0x15, 0x09
.byte 0x12, 0x15, 0x09, 0x13, 0x13, 0x10, 0x01, 0x13, 0x06, 0x11, 0x09, 0x02, 0x02, 0x14, 0x02, 0x08, 0x0a, 0x11, 0x09, 0x09, 0x10, 0x0f, 0x02, 0x14, 0x10, 0x10, 0x15, 0x15, 0x12, 0x09, 0x0e, 0x14
.byte 0x14, 0x0d, 0x15, 0x09, 0x09, 0x0b, 0x0b, 0x0b, 0x02, 0x02, 0x0e, 0x08, 0x08, 0x17, 0x15, 0x02, 0x13, 0x0f, 0x0f, 0x02, 0x0f, 0x15, 0x13, 0x02, 0x0b, 0x0c, 0x13, 0x0f, 0x01, 0x01, 0x14, 0x09
.byte 0x13, 0x14, 0x0a, 0x09, 0x15, 0x15, 0x02, 0x10, 0x15, 0x10, 0x02, 0x0f, 0x02, 0x06, 0x06, 0x0e, 0x0e, 0x12, 0x0b, 0x12, 0x13, 0x11, 0x11, 0x11, 0x13, 0x19, 0x14, 0x0f, 0x13, 0x16, 0x17, 0x0e
.byte 0x0e, 0x10, 0x09, 0x19, 0x05, 0x12, 0x19, 0x16, 0x17, 0x01, 0x13, 0x13, 0x13, 0x15, 0x15, 0x13, 0x19, 0x16, 0x17, 0x02, 0x0f, 0x09, 0x0d, 0x12, 0x12, 0x02, 0x09, 0x12, 0x15, 0x17, 0x15, 0x15
.byte 0x09, 0x12, 0x10, 0x11, 0x0f, 0x0a, 0x11, 0x0a, 0x02, 0x0f, 0x0b, 0x16, 0x12, 0x13, 0x13, 0x13, 0x11, 0x12, 0x14, 0x12, 0x13, 0x16, 0x11, 0x12, 0x13, 0x02, 0x10, 0x11, 0x11, 0x11, 0x10, 0x13
.byte 0x02, 0x11, 0x0b, 0x02, 0x14, 0x14, 0x12, 0x13, 0x01, 0x14, 0x0b, 0x14, 0x08, 0x09, 0x0f, 0x05, 0x09, 0x15, 0x09, 0x0d, 0x15, 0x13, 0x15, 0x0f, 0x13, 0x09, 0x17, 0x17, 0x0a, 0x08, 0x02, 0x02
.byte 0x05, 0x0f, 0x02, 0x15, 0x09, 0x09, 0x19, 0x15, 0x0e, 0x01, 0x13, 0x02, 0x0f, 0x07, 0x02, 0x08, 0x17, 0x02, 0x13, 0x16, 0x17, 0x19, 0x0e, 0x09, 0x0e, 0x19, 0x17, 0x18, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x15, 0x09, 0x12, 0x10, 0x17, 0x02, 0x12, 0x19, 0x12, 0x08
.byte 0x0f, 0x15, 0x0b, 0x08, 0x11, 0x08, 0x0f, 0x02, 0x10, 0x10, 0x13, 0x09, 0x14, 0x0a, 0x01, 0x14, 0x12, 0x15, 0x13, 0x15, 0x07, 0x11, 0x11, 0x03, 0x11, 0x19, 0x19, 0x13, 0x12, 0x01, 0x13, 0x14
.byte 0x0e, 0x17, 0x01, 0x0b, 0x09, 0x04, 0x0f, 0x15, 0x03, 0x19, 0x04, 0x15, 0x13, 0x01, 0x0f, 0x0e, 0x0e, 0x15, 0x09, 0x0e, 0x17, 0x13, 0x09, 0x09, 0x0a, 0x08, 0x0f, 0x0f, 0x13, 0x13, 0x10, 0x10
.byte 0x14, 0x12, 0x12, 0x09, 0x14, 0x14, 0x11, 0x11, 0x12, 0x01, 0x01, 0x18, 0x02, 0x10, 0x08, 0x0b, 0x0b, 0x0e, 0x13, 0x09, 0x0d, 0x13, 0x11, 0x11, 0x14, 0x01, 0x01, 0x0b, 0x15, 0x02, 0x15, 0x09
.byte 0x0e, 0x11, 0x11, 0x11, 0x0c, 0x0b, 0x0f, 0x09, 0x14, 0x14, 0x14, 0x09, 0x09, 0x08, 0x0f, 0x15, 0x09, 0x09, 0x09, 0x09, 0x19, 0x17, 0x0d, 0x01, 0x01, 0x11, 0x14, 0x11
gUnknown_0860AA64:: @ 860AA64
.byte 0x00, 0x05, 0x01, 0x01, 0x00, 0x0f, 0x01, 0x04, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x01, 0x02, 0x00, 0x02, 0x00, 0xff
gUnknown_0860AA80:: @ 860AA80
.byte 0x06, 0x1e, 0xfe, 0x0f, 0x06, 0x1e, 0xff, 0x00
.align 2
gUnknown_0860AA88:: @ 860AA88
.4byte pokemonanimfunc_00
.4byte pokemonanimfunc_01
.4byte pokemonanimfunc_02
.4byte pokemonanimfunc_03
.4byte pokemonanimfunc_04
.4byte pokemonanimfunc_05
.4byte pokemonanimfunc_06
.4byte pokemonanimfunc_07
.4byte pokemonanimfunc_08
.4byte pokemonanimfunc_09
.4byte pokemonanimfunc_0A
.4byte pokemonanimfunc_0B
.4byte pokemonanimfunc_0C
.4byte pokemonanimfunc_0D
.4byte pokemonanimfunc_0E
.4byte pokemonanimfunc_0F
.4byte pokemonanimfunc_10
.4byte pokemonanimfunc_11
.4byte pokemonanimfunc_12
.4byte pokemonanimfunc_13
.4byte pokemonanimfunc_14
.4byte pokemonanimfunc_15
.4byte pokemonanimfunc_16
.4byte pokemonanimfunc_17
.4byte pokemonanimfunc_18
.4byte pokemonanimfunc_19
.4byte pokemonanimfunc_1A
.4byte pokemonanimfunc_1B
.4byte pokemonanimfunc_1C
.4byte pokemonanimfunc_1D
.4byte pokemonanimfunc_1E
.4byte pokemonanimfunc_1F
.4byte pokemonanimfunc_20
.4byte pokemonanimfunc_21
.4byte pokemonanimfunc_22
.4byte pokemonanimfunc_23
.4byte pokemonanimfunc_24
.4byte pokemonanimfunc_25
.4byte pokemonanimfunc_26
.4byte pokemonanimfunc_27
.4byte pokemonanimfunc_28
.4byte pokemonanimfunc_29
.4byte pokemonanimfunc_2A
.4byte pokemonanimfunc_2B
.4byte pokemonanimfunc_2C
.4byte pokemonanimfunc_2D
.4byte pokemonanimfunc_2E
.4byte pokemonanimfunc_2F
.4byte pokemonanimfunc_30
.4byte pokemonanimfunc_31
.4byte pokemonanimfunc_32
.4byte pokemonanimfunc_33
.4byte pokemonanimfunc_34
.4byte pokemonanimfunc_35
.4byte pokemonanimfunc_36
.4byte pokemonanimfunc_37
.4byte pokemonanimfunc_38
.4byte pokemonanimfunc_39
.4byte pokemonanimfunc_3A
.4byte pokemonanimfunc_3B
.4byte pokemonanimfunc_3C
.4byte pokemonanimfunc_3D
.4byte pokemonanimfunc_3E
.4byte pokemonanimfunc_3F
.4byte pokemonanimfunc_40
.4byte pokemonanimfunc_41
.4byte pokemonanimfunc_42
.4byte pokemonanimfunc_43
.4byte pokemonanimfunc_44
.4byte pokemonanimfunc_45
.4byte pokemonanimfunc_46
.4byte pokemonanimfunc_47
.4byte pokemonanimfunc_48
.4byte pokemonanimfunc_49
.4byte pokemonanimfunc_4A
.4byte pokemonanimfunc_4B
.4byte pokemonanimfunc_4C
.4byte pokemonanimfunc_4D
.4byte pokemonanimfunc_4E
.4byte pokemonanimfunc_4F
.4byte pokemonanimfunc_50
.4byte pokemonanimfunc_51
.4byte pokemonanimfunc_52
.4byte pokemonanimfunc_53
.4byte pokemonanimfunc_54
.4byte pokemonanimfunc_55
.4byte pokemonanimfunc_56
.4byte pokemonanimfunc_57
.4byte pokemonanimfunc_58
.4byte pokemonanimfunc_59
.4byte pokemonanimfunc_5A
.4byte pokemonanimfunc_5B
.4byte pokemonanimfunc_5C
.4byte pokemonanimfunc_5D
.4byte pokemonanimfunc_5E
.4byte pokemonanimfunc_5F
.4byte pokemonanimfunc_60
.4byte pokemonanimfunc_61
.4byte pokemonanimfunc_62
.4byte pokemonanimfunc_63
.4byte pokemonanimfunc_64
.4byte pokemonanimfunc_65
.4byte pokemonanimfunc_66
.4byte pokemonanimfunc_67
.4byte pokemonanimfunc_68
.4byte pokemonanimfunc_69
.4byte pokemonanimfunc_6A
.4byte pokemonanimfunc_6B
.4byte pokemonanimfunc_6C
.4byte pokemonanimfunc_6D
.4byte pokemonanimfunc_6E
.4byte pokemonanimfunc_6F
.4byte pokemonanimfunc_70
.4byte pokemonanimfunc_71
.4byte pokemonanimfunc_72
.4byte pokemonanimfunc_73
.4byte pokemonanimfunc_74
.4byte pokemonanimfunc_75
.4byte pokemonanimfunc_76
.4byte pokemonanimfunc_77
.4byte pokemonanimfunc_78
.4byte pokemonanimfunc_79
.4byte pokemonanimfunc_7A
.4byte pokemonanimfunc_7B
.4byte pokemonanimfunc_7C
.4byte pokemonanimfunc_7D
.4byte pokemonanimfunc_7E
.4byte pokemonanimfunc_7F
.4byte pokemonanimfunc_80
.4byte pokemonanimfunc_81
.4byte pokemonanimfunc_82
.4byte pokemonanimfunc_83
.4byte pokemonanimfunc_84
.4byte pokemonanimfunc_85
.4byte pokemonanimfunc_86
.4byte pokemonanimfunc_87
.4byte pokemonanimfunc_88
.4byte pokemonanimfunc_89
.4byte pokemonanimfunc_8A
.4byte pokemonanimfunc_8B
.4byte pokemonanimfunc_8C
.4byte pokemonanimfunc_8D
.4byte pokemonanimfunc_8E
.4byte pokemonanimfunc_8F
.4byte pokemonanimfunc_90
.4byte pokemonanimfunc_91
.4byte pokemonanimfunc_92
.4byte pokemonanimfunc_93
.4byte pokemonanimfunc_94
.4byte pokemonanimfunc_95
.4byte pokemonanimfunc_96
gUnknown_0860ACE4:: @ 860ACE4
.byte 0x60, 0x5f, 0x02, 0x5e, 0x03, 0x46, 0x6d, 0x3e, 0x6e, 0x6f, 0x70, 0x3f, 0x71, 0x13, 0x72, 0x6c, 0x6b, 0x3a, 0x64, 0x14, 0x4f, 0x5d, 0x0f, 0x4c, 0x61, 0x57, 0x58, 0x67, 0x66, 0x59, 0x74, 0x73
.byte 0x5a, 0x75, 0x76, 0x5b, 0x77, 0x78, 0x65, 0x63, 0x5c, 0x62, 0x6a, 0x69, 0x68, 0x7b, 0x7a, 0x79, 0x7e, 0x7d, 0x7c, 0x81, 0x80, 0x7f, 0x84, 0x82, 0x83, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b
.byte 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96
gUnknown_0860AD2F:: @ 860AD2F
.byte 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x02, 0x01, 0x02, 0x01
.align 2
gSpriteAffineAnim_860AD48:: @ 860AD48
obj_rot_scal_anim_frame 0x100, 0x100, 0, 0
obj_rot_scal_anim_end
.align 2
gSpriteAffineAnim_860AD58:: @ 860AD58
obj_rot_scal_anim_frame -0x100, 0x100, 0, 0
obj_rot_scal_anim_end
.align 2
gSpriteAffineAnimTable_860AD68:: @ 860AD68
.4byte gSpriteAffineAnim_860AD48
.4byte gSpriteAffineAnim_860AD58
gUnknown_0860AD70:: @ 860AD70 gUnknown_0860AD70:: @ 860AD70
.byte 0xff, 0xff, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xfe, 0xfe, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xff, 0xff, 0x06, 0x00, 0x00, 0x00 .byte 0xff, 0xff, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xfe, 0xfe, 0x06, 0x02, 0x00, 0x06, 0xfe, 0x02, 0x06, 0x02, 0x00, 0x06, 0xff, 0xff, 0x06, 0x00, 0x00, 0x00

View File

@ -1,7 +1,7 @@
#ifndef GUARD_POKEMON_ANIMATION_H #ifndef GUARD_POKEMON_ANIMATION_H
#define GUARD_POKEMON_ANIMATION_H #define GUARD_POKEMON_ANIMATION_H
void LaunchAnimationTaskForFrontSprite(struct Sprite* sprite, u8 frontAnimId); void LaunchAnimationTaskForFrontSprite(struct Sprite *sprite, u8 frontAnimId);
void LaunchAnimationTaskForBackSprite(struct Sprite* sprite, u8 backAnimId); void LaunchAnimationTaskForBackSprite(struct Sprite *sprite, u8 backAnimId);
#endif // GUARD_POKEMON_ANIMATION_H #endif // GUARD_POKEMON_ANIMATION_H

View File

@ -233,6 +233,7 @@ extern s16 gSpriteCoordOffsetX;
extern s16 gSpriteCoordOffsetY; extern s16 gSpriteCoordOffsetY;
extern struct Sprite gSprites[]; extern struct Sprite gSprites[];
extern struct OamMatrix gOamMatrices[];
void ResetSpriteData(void); void ResetSpriteData(void);
void AnimateSprites(void); void AnimateSprites(void);

View File

@ -240,6 +240,7 @@ SECTIONS {
src/bard_music.o(.text); src/bard_music.o(.text);
src/fldeff_teleport.o(.text); src/fldeff_teleport.o(.text);
asm/battle_link_817C95C.o(.text); asm/battle_link_817C95C.o(.text);
src/pokemon_animation.o(.text);
asm/pokemon_animation.o(.text); asm/pokemon_animation.o(.text);
src/recorded_battle.o(.text); src/recorded_battle.o(.text);
src/battle_controller_recorded_opponent.o(.text); src/battle_controller_recorded_opponent.o(.text);
@ -514,6 +515,7 @@ SECTIONS {
src/evolution_graphics.o(.rodata); src/evolution_graphics.o(.rodata);
src/bard_music.o(.rodata); src/bard_music.o(.rodata);
data/battle_link_817C95C.o(.rodata); data/battle_link_817C95C.o(.rodata);
src/pokemon_animation.o(.rodata);
data/pokemon_animation.o(.rodata); data/pokemon_animation.o(.rodata);
src/battle_controller_recorded_opponent.o(.rodata); src/battle_controller_recorded_opponent.o(.rodata);
src/battle_controller_recorded_player.o(.rodata); src/battle_controller_recorded_player.o(.rodata);

1015
src/pokemon_animation.c Normal file

File diff suppressed because it is too large Load Diff