Merge branch 'master' into battle_frontier_2

This commit is contained in:
DizzyEggg 2018-10-30 21:48:18 +01:00
commit 90ef269426
88 changed files with 63739 additions and 58616 deletions

File diff suppressed because it is too large Load Diff

9550
asm/battle_anim_effects_1.s Normal file

File diff suppressed because it is too large Load Diff

7544
asm/battle_anim_effects_2.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

2035
asm/battle_intro.s Normal file

File diff suppressed because it is too large Load Diff

791
asm/bug.s Normal file
View File

@ -0,0 +1,791 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8110368
sub_8110368: @ 8110368
push {r4-r6,lr}
adds r6, r0, 0
bl IsContest
lsls r0, 24
cmp r0, 0
beq _08110394
adds r0, r6, 0
movs r1, 0x2
bl StartSpriteAffineAnim
ldr r0, =gBattleAnimArgs
ldrh r1, [r0, 0x4]
negs r1, r1
strh r1, [r0, 0x4]
ldrh r1, [r0]
negs r1, r1
strh r1, [r0]
b _081103C4
.pool
_08110394:
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _081103C4
adds r0, r6, 0
movs r1, 0x1
bl StartSpriteAffineAnim
ldr r1, =gBattleAnimArgs
ldrh r0, [r1, 0x2]
negs r0, r0
strh r0, [r1, 0x2]
ldrh r0, [r1, 0x4]
negs r0, r0
strh r0, [r1, 0x4]
ldrh r0, [r1, 0x6]
negs r0, r0
strh r0, [r1, 0x6]
ldrh r0, [r1]
negs r0, r0
strh r0, [r1]
_081103C4:
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord2
lsls r0, 24
ldr r4, =gBattleAnimArgs
lsrs r0, 24
ldrh r1, [r4]
adds r0, r1
strh r0, [r6, 0x20]
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x2]
adds r0, r1
strh r0, [r6, 0x22]
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x4]
adds r0, r1
strh r0, [r6, 0x32]
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r4, [r4, 0x6]
adds r0, r4
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_8110368
thumb_func_start sub_8110438
sub_8110438: @ 8110438
push {r4-r6,lr}
adds r6, r0, 0
bl IsContest
lsls r0, 24
cmp r0, 0
beq _0811045C
ldr r1, =gBattleAnimArgs
ldrh r0, [r1]
negs r0, r0
strh r0, [r1]
adds r0, r6, 0
movs r1, 0x2
bl StartSpriteAffineAnim
b _08110478
.pool
_0811045C:
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08110478
ldr r0, =gBattleAnimArgs
ldrh r1, [r0, 0x2]
negs r1, r1
strh r1, [r0, 0x2]
ldrh r1, [r0]
negs r1, r1
strh r1, [r0]
_08110478:
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord2
lsls r0, 24
ldr r4, =gBattleAnimArgs
lsrs r0, 24
ldrh r1, [r4]
adds r0, r1
strh r0, [r6, 0x20]
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x2]
adds r0, r1
strh r0, [r6, 0x22]
ldrh r0, [r4, 0x4]
strh r0, [r6, 0x2E]
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x32]
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_8110438
thumb_func_start sub_81104E4
sub_81104E4: @ 81104E4
push {r4,r5,lr}
adds r5, r0, 0
bl IsContest
lsls r0, 24
cmp r0, 0
beq _08110500
ldr r0, =gBattleAnimArgs
movs r2, 0x4
ldrsh r1, [r0, r2]
lsrs r2, r1, 31
adds r1, r2
asrs r1, 1
strh r1, [r0, 0x4]
_08110500:
adds r0, r5, 0
movs r1, 0x1
bl sub_80A69CC
ldr r1, =gBattleAnimArgs
ldrh r0, [r1, 0x4]
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
ldrh r0, [r5, 0x22]
strh r0, [r5, 0x34]
movs r2, 0x8
ldrsh r0, [r1, r2]
cmp r0, 0
bne _08110548
ldr r4, =gBattleAnimTarget
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
b _0811055A
.pool
_08110548:
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
bl SetAverageBattlerPositions
_0811055A:
adds r0, r5, 0
bl sub_80A6FD4
ldr r0, =gBattleAnimArgs
ldrh r0, [r0, 0x6]
strh r0, [r5, 0x38]
ldr r0, =sub_811057C
str r0, [r5, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81104E4
thumb_func_start sub_811057C
sub_811057C: @ 811057C
push {r4,lr}
adds r4, r0, 0
bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08110592
adds r0, r4, 0
bl DestroyAnimSprite
b _081105AE
_08110592:
movs r1, 0x3A
ldrsh r0, [r4, r1]
movs r2, 0x38
ldrsh r1, [r4, r2]
bl Sin
ldrh r1, [r4, 0x24]
adds r0, r1
strh r0, [r4, 0x24]
ldrh r0, [r4, 0x3A]
adds r0, 0xD
movs r1, 0xFF
ands r0, r1
strh r0, [r4, 0x3A]
_081105AE:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_811057C
thumb_func_start sub_81105B4
sub_81105B4: @ 81105B4
push {r4,lr}
adds r4, r0, 0
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
adds r3, r4, 0
adds r3, 0x22
movs r1, 0
bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _081105F0
ldr r0, =gBattleAnimArgs
ldrh r1, [r4, 0x20]
ldrh r2, [r0]
subs r1, r2
strh r1, [r4, 0x20]
b _081105FC
.pool
_081105F0:
ldr r1, =gBattleAnimArgs
ldrh r0, [r1]
ldrh r2, [r4, 0x20]
adds r0, r2
strh r0, [r4, 0x20]
adds r0, r1, 0
_081105FC:
ldrh r0, [r0, 0x2]
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x22]
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08110618
ldrh r0, [r4, 0x22]
adds r0, 0x8
strh r0, [r4, 0x22]
_08110618:
ldr r0, =sub_8110630
str r0, [r4, 0x1C]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81105B4
thumb_func_start sub_8110630
sub_8110630: @ 8110630
push {lr}
adds r3, r0, 0
ldrh r0, [r3, 0x2E]
adds r0, 0x1
strh r0, [r3, 0x2E]
lsls r0, 16
asrs r0, 16
cmp r0, 0x3
bne _08110664
movs r0, 0
strh r0, [r3, 0x2E]
movs r0, 0x3E
adds r0, r3
mov r12, r0
ldrb r2, [r0]
lsls r0, r2, 29
lsrs r0, 31
movs r1, 0x1
eors r1, r0
lsls r1, 2
movs r0, 0x5
negs r0, r0
ands r0, r2
orrs r0, r1
mov r1, r12
strb r0, [r1]
_08110664:
ldrh r0, [r3, 0x30]
adds r0, 0x1
strh r0, [r3, 0x30]
lsls r0, 16
asrs r0, 16
cmp r0, 0x33
bne _08110678
adds r0, r3, 0
bl DestroyAnimSprite
_08110678:
pop {r0}
bx r0
thumb_func_end sub_8110630
thumb_func_start sub_811067C
sub_811067C: @ 811067C
push {r4,lr}
adds r4, r0, 0
movs r1, 0xFD
lsls r1, 6
movs r0, 0x50
bl SetGpuReg
movs r0, 0x52
movs r1, 0x10
bl SetGpuReg
movs r0, 0x10
strh r0, [r4, 0x2E]
ldr r0, =sub_81106A4
str r0, [r4, 0x1C]
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_811067C
thumb_func_start sub_81106A4
sub_81106A4: @ 81106A4
push {r4,lr}
adds r4, r0, 0
ldrh r1, [r4, 0x32]
movs r2, 0x32
ldrsh r0, [r4, r2]
cmp r0, 0x13
bgt _081106B8
adds r0, r1, 0x1
strh r0, [r4, 0x32]
b _081106F6
_081106B8:
ldrh r1, [r4, 0x30]
adds r0, r1, 0x1
strh r0, [r4, 0x30]
movs r0, 0x1
ands r0, r1
cmp r0, 0
beq _081106F6
ldrh r1, [r4, 0x2E]
subs r1, 0x1
strh r1, [r4, 0x2E]
movs r0, 0x10
subs r0, r1
lsls r0, 8
orrs r1, r0
lsls r1, 16
lsrs r1, 16
movs r0, 0x52
bl SetGpuReg
movs r1, 0x2E
ldrsh r0, [r4, r1]
cmp r0, 0
bne _081106F6
adds r2, r4, 0
adds r2, 0x3E
ldrb r0, [r2]
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
ldr r0, =sub_8110700
str r0, [r4, 0x1C]
_081106F6:
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_81106A4
thumb_func_start sub_8110700
sub_8110700: @ 8110700
push {r4,lr}
adds r4, r0, 0
movs r0, 0x50
movs r1, 0
bl SetGpuReg
movs r0, 0x52
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_8110700
thumb_func_start sub_8110720
sub_8110720: @ 8110720
push {r4-r7,lr}
sub sp, 0x4
adds r7, r0, 0
bl IsContest
lsls r0, 24
cmp r0, 0
beq _08110740
ldr r1, =gBattleAnimArgs
ldrh r0, [r1, 0x4]
negs r0, r0
strh r0, [r1, 0x4]
b _08110762
.pool
_08110740:
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _08110762
ldr r1, =gBattleAnimArgs
ldrh r0, [r1, 0x4]
negs r0, r0
strh r0, [r1, 0x4]
ldrh r0, [r1, 0x2]
negs r0, r0
strh r0, [r1, 0x2]
ldrh r0, [r1, 0x6]
negs r0, r0
strh r0, [r1, 0x6]
_08110762:
bl IsContest
lsls r0, 24
cmp r0, 0
bne _081107B2
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
adds r4, r0, 0
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
bl GetBattlerSide
lsls r4, 24
lsls r0, 24
cmp r4, r0
bne _081107B2
ldrb r0, [r5]
bl GetBattlerPosition
lsls r0, 24
cmp r0, 0
beq _081107A0
ldrb r0, [r5]
bl GetBattlerPosition
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _081107B2
_081107A0:
ldr r0, =gBattleAnimArgs
movs r2, 0x4
ldrsh r1, [r0, r2]
negs r1, r1
strh r1, [r0, 0x4]
movs r2, 0
ldrsh r1, [r0, r2]
negs r1, r1
strh r1, [r0]
_081107B2:
adds r0, r7, 0
movs r1, 0x1
bl sub_80A69CC
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord
adds r4, r0, 0
lsls r4, 24
ldr r6, =gBattleAnimArgs
lsrs r4, 24
ldrh r0, [r6, 0x4]
adds r4, r0
lsls r4, 16
lsrs r4, 16
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
ldrh r2, [r6, 0x6]
adds r1, r2
lsls r1, 16
ldrh r2, [r7, 0x20]
lsls r0, r4, 16
asrs r0, 16
subs r0, r2
lsls r0, 16
asrs r0, 16
ldrh r2, [r7, 0x22]
lsrs r5, r1, 16
asrs r1, 16
subs r1, r2
lsls r1, 16
asrs r1, 16
bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
adds r0, r1
lsrs r0, 16
movs r3, 0x80
lsls r3, 1
str r0, [sp]
adds r0, r7, 0
movs r1, 0
adds r2, r3, 0
bl sub_80A73E0
ldrh r0, [r6, 0x8]
strh r0, [r7, 0x2E]
strh r4, [r7, 0x32]
strh r5, [r7, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r7, 0x1C]
ldr r1, =DestroyAnimSprite
adds r0, r7, 0
bl StoreSpriteCallbackInData6
add sp, 0x4
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_8110720
thumb_func_start sub_8110850
sub_8110850: @ 8110850
push {r4-r6,lr}
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _08110870
ldr r1, =gBattleAnimArgs
ldrh r0, [r1, 0x4]
negs r0, r0
strh r0, [r1, 0x4]
_08110870:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x4]
adds r0, r1
strh r0, [r6, 0x32]
ldrb r0, [r5]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x6]
adds r0, r1
strh r0, [r6, 0x36]
ldrh r0, [r4, 0xA]
strh r0, [r6, 0x38]
adds r0, r6, 0
bl sub_80A68D4
ldr r0, =sub_81108CC
str r0, [r6, 0x1C]
adds r2, r6, 0
adds r2, 0x3E
ldrb r0, [r2]
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_8110850
thumb_func_start sub_81108CC
sub_81108CC: @ 81108CC
push {r4-r7,lr}
mov r7, r8
push {r7}
sub sp, 0x14
adds r4, r0, 0
adds r2, r4, 0
adds r2, 0x3E
ldrb r0, [r2]
movs r1, 0x5
negs r1, r1
ands r1, r0
strb r1, [r2]
adds r0, r4, 0
bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081108F8
adds r0, r4, 0
bl DestroyAnimSprite
b _08110988
_081108F8:
movs r0, 0x2E
adds r0, r4
mov r8, r0
ldrh r7, [r4, 0x20]
ldrh r5, [r4, 0x24]
ldrh r1, [r4, 0x22]
mov r12, r1
ldrh r6, [r4, 0x26]
mov r2, r8
add r1, sp, 0x4
movs r3, 0x7
_0811090E:
ldrh r0, [r2]
strh r0, [r1]
adds r2, 0x2
adds r1, 0x2
subs r3, 0x1
cmp r3, 0
bge _0811090E
adds r0, r7, r5
lsls r0, 16
lsrs r5, r0, 16
mov r2, r12
adds r0, r2, r6
lsls r0, 16
lsrs r6, r0, 16
adds r0, r4, 0
bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _08110988
ldrh r0, [r4, 0x24]
ldrh r1, [r4, 0x20]
adds r0, r1
lsls r1, r5, 16
asrs r1, 16
subs r0, r1
lsls r0, 16
asrs r0, 16
ldrh r1, [r4, 0x26]
ldrh r2, [r4, 0x22]
adds r1, r2
lsls r2, r6, 16
asrs r2, 16
subs r1, r2
lsls r1, 16
asrs r1, 16
bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
adds r0, r1
lsrs r0, 16
movs r3, 0x80
lsls r3, 1
str r0, [sp]
adds r0, r4, 0
movs r1, 0
adds r2, r3, 0
bl sub_80A73E0
add r2, sp, 0x4
mov r1, r8
movs r3, 0x7
_0811097A:
ldrh r0, [r2]
strh r0, [r1]
adds r2, 0x2
adds r1, 0x2
subs r3, 0x1
cmp r3, 0
bge _0811097A
_08110988:
add sp, 0x14
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_81108CC
thumb_func_start sub_8110994
sub_8110994: @ 8110994
push {r4,r5,lr}
adds r5, r0, 0
ldr r0, =gBattleAnimArgs
movs r1, 0
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081109B0
ldr r4, =gBattleAnimAttacker
b _081109B2
.pool
_081109B0:
ldr r4, =gBattleAnimTarget
_081109B2:
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r0, 0x12
strh r0, [r5, 0x22]
ldr r1, =move_anim_8074EE0
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A67BC
str r0, [r5, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8110994
.align 2, 0

2199
asm/dark.s Normal file

File diff suppressed because it is too large Load Diff

793
asm/dragon.s Normal file
View File

@ -0,0 +1,793 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8113064
sub_8113064: @ 8113064
push {r4,r5,lr}
adds r5, r0, 0
ldr r4, =gBattleAnimAttacker
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
ldrb r0, [r4]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _081130B4
ldr r2, =gBattleAnimArgs
ldrh r0, [r5, 0x20]
ldrh r1, [r2]
subs r0, r1
strh r0, [r5, 0x20]
ldrh r0, [r2, 0x6]
negs r0, r0
strh r0, [r2, 0x6]
ldrh r0, [r2, 0x8]
negs r0, r0
strh r0, [r2, 0x8]
adds r1, r2, 0
b _081130BE
.pool
_081130B4:
ldr r1, =gBattleAnimArgs
ldrh r0, [r1]
ldrh r2, [r5, 0x20]
adds r0, r2
strh r0, [r5, 0x20]
_081130BE:
ldrh r0, [r1, 0x2]
ldrh r2, [r5, 0x22]
adds r0, r2
strh r0, [r5, 0x22]
ldrh r0, [r1, 0x4]
strh r0, [r5, 0x2E]
ldrh r0, [r1, 0x6]
strh r0, [r5, 0x30]
ldrh r0, [r1, 0x8]
strh r0, [r5, 0x34]
ldrh r0, [r1, 0xA]
strh r0, [r5, 0x38]
adds r2, r5, 0
adds r2, 0x3E
ldrb r0, [r2]
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
ldr r1, =move_anim_8074EE0
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A66DC
str r0, [r5, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8113064
thumb_func_start sub_8113100
sub_8113100: @ 8113100
push {r4,r5,lr}
adds r5, r0, 0
bl sub_80A6838
ldr r4, =gBattleAnimTarget
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _08113164
ldr r2, =gBattleAnimArgs
ldrh r0, [r5, 0x20]
ldrh r1, [r2, 0x2]
subs r0, r1
strh r0, [r5, 0x20]
ldrh r0, [r5, 0x22]
adds r1, r0
strh r1, [r5, 0x22]
ldrh r0, [r5, 0x32]
ldrh r1, [r2, 0x4]
subs r0, r1
strh r0, [r5, 0x32]
ldrh r0, [r2, 0x6]
ldrh r1, [r5, 0x36]
adds r0, r1
strh r0, [r5, 0x36]
b _0811318E
.pool
_08113164:
ldr r1, =gBattleAnimArgs
ldrh r0, [r1]
ldrh r2, [r5, 0x20]
adds r0, r2
strh r0, [r5, 0x20]
ldrh r0, [r1, 0x2]
ldrh r2, [r5, 0x22]
adds r0, r2
strh r0, [r5, 0x22]
ldrh r0, [r1, 0x4]
ldrh r2, [r5, 0x32]
adds r0, r2
strh r0, [r5, 0x32]
ldrh r0, [r1, 0x6]
ldrh r1, [r5, 0x36]
adds r0, r1
strh r0, [r5, 0x36]
adds r0, r5, 0
movs r1, 0x1
bl StartSpriteAnim
_0811318E:
ldr r0, =gBattleAnimArgs
ldrh r0, [r0, 0x8]
strh r0, [r5, 0x2E]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
ldr r1, =move_anim_8074EE0
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_8113100
thumb_func_start sub_81131B4
sub_81131B4: @ 81131B4
push {r4,r5,lr}
adds r5, r0, 0
ldr r0, =gBattleAnimArgs
movs r1, 0
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081131D0
ldr r4, =gBattleAnimAttacker
b _081131D2
.pool
_081131D0:
ldr r4, =gBattleAnimTarget
_081131D2:
ldrb r0, [r4]
movs r1, 0
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x1
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
ldr r4, =gBattleAnimArgs
movs r0, 0x2
ldrsh r1, [r4, r0]
adds r0, r5, 0
bl sub_80A6864
ldrh r0, [r4, 0x4]
ldrh r1, [r5, 0x22]
adds r0, r1
strh r0, [r5, 0x22]
ldr r0, =sub_80A67D8
str r0, [r5, 0x1C]
ldr r1, =move_anim_8074EE0
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_81131B4
thumb_func_start sub_8113224
sub_8113224: @ 8113224
push {r4,lr}
adds r4, r0, 0
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0811323E
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAffineAnim
_0811323E:
adds r0, r4, 0
bl sub_8113100
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_8113224
thumb_func_start sub_8113250
sub_8113250: @ 8113250
push {r4-r7,lr}
adds r6, r0, 0
ldr r4, =gBattleAnimAttacker
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
movs r5, 0
strh r0, [r6, 0x20]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x22]
strh r5, [r6, 0x36]
movs r0, 0x1
strh r0, [r6, 0x38]
ldr r0, =gBattleAnimArgs
ldrh r0, [r0]
strh r0, [r6, 0x3A]
ldr r4, =gBattlerAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A861C
lsls r7, r0, 16
lsrs r5, r7, 16
ldrb r0, [r4]
movs r1, 0x1
bl sub_80A861C
lsls r1, r0, 16
lsrs r0, r1, 16
cmp r5, r0
bls _081132B0
lsrs r0, r7, 17
b _081132B2
.pool
_081132B0:
lsrs r0, r1, 17
_081132B2:
strh r0, [r6, 0x3C]
movs r1, 0x3A
ldrsh r0, [r6, r1]
movs r2, 0x3C
ldrsh r1, [r6, r2]
bl Cos
strh r0, [r6, 0x24]
movs r1, 0x3A
ldrsh r0, [r6, r1]
movs r2, 0x3C
ldrsh r1, [r6, r2]
bl Sin
strh r0, [r6, 0x26]
ldr r0, =sub_81132E0
str r0, [r6, 0x1C]
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_8113250
thumb_func_start sub_81132E0
sub_81132E0: @ 81132E0
push {r4,r5,lr}
adds r4, r0, 0
movs r0, 0x2E
ldrsh r5, [r4, r0]
cmp r5, 0
beq _081132F2
cmp r5, 0x1
beq _0811335E
b _081133E2
_081132F2:
ldrh r0, [r4, 0x3A]
ldrh r1, [r4, 0x38]
subs r0, r1
movs r1, 0xFF
ands r0, r1
strh r0, [r4, 0x3A]
movs r1, 0x3A
ldrsh r0, [r4, r1]
movs r2, 0x3C
ldrsh r1, [r4, r2]
bl Cos
strh r0, [r4, 0x24]
movs r1, 0x3A
ldrsh r0, [r4, r1]
movs r2, 0x3C
ldrsh r1, [r4, r2]
bl Sin
strh r0, [r4, 0x26]
ldrh r0, [r4, 0x36]
adds r0, 0x1
strh r0, [r4, 0x36]
lsls r0, 16
asrs r0, 16
cmp r0, 0x5
ble _08113344
strh r5, [r4, 0x36]
ldrh r1, [r4, 0x38]
movs r2, 0x38
ldrsh r0, [r4, r2]
cmp r0, 0xF
bgt _08113344
adds r0, r1, 0x1
strh r0, [r4, 0x38]
lsls r0, 16
asrs r0, 16
cmp r0, 0xF
ble _08113344
movs r0, 0x10
strh r0, [r4, 0x38]
_08113344:
ldrh r0, [r4, 0x34]
adds r0, 0x1
strh r0, [r4, 0x34]
lsls r0, 16
asrs r0, 16
cmp r0, 0x3C
ble _081133E2
movs r0, 0
strh r0, [r4, 0x34]
ldrh r0, [r4, 0x2E]
adds r0, 0x1
strh r0, [r4, 0x2E]
b _081133E2
_0811335E:
ldrh r0, [r4, 0x3A]
ldrh r1, [r4, 0x38]
subs r0, r1
movs r1, 0xFF
ands r0, r1
strh r0, [r4, 0x3A]
ldrh r1, [r4, 0x3C]
movs r2, 0x3C
ldrsh r0, [r4, r2]
cmp r0, 0x95
bgt _08113386
adds r0, r1, 0
adds r0, 0x8
strh r0, [r4, 0x3C]
lsls r0, 16
asrs r0, 16
cmp r0, 0x95
ble _08113386
movs r0, 0x96
strh r0, [r4, 0x3C]
_08113386:
movs r1, 0x3A
ldrsh r0, [r4, r1]
movs r2, 0x3C
ldrsh r1, [r4, r2]
bl Cos
strh r0, [r4, 0x24]
movs r1, 0x3A
ldrsh r0, [r4, r1]
movs r2, 0x3C
ldrsh r1, [r4, r2]
bl Sin
strh r0, [r4, 0x26]
ldrh r0, [r4, 0x36]
adds r0, 0x1
strh r0, [r4, 0x36]
lsls r0, 16
asrs r0, 16
cmp r0, 0x5
ble _081133CE
movs r0, 0
strh r0, [r4, 0x36]
ldrh r1, [r4, 0x38]
movs r2, 0x38
ldrsh r0, [r4, r2]
cmp r0, 0xF
bgt _081133CE
adds r0, r1, 0x1
strh r0, [r4, 0x38]
lsls r0, 16
asrs r0, 16
cmp r0, 0xF
ble _081133CE
movs r0, 0x10
strh r0, [r4, 0x38]
_081133CE:
ldrh r0, [r4, 0x34]
adds r0, 0x1
strh r0, [r4, 0x34]
lsls r0, 16
asrs r0, 16
cmp r0, 0x14
ble _081133E2
adds r0, r4, 0
bl DestroyAnimSprite
_081133E2:
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_81132E0
thumb_func_start sub_81133E8
sub_81133E8: @ 81133E8
push {r4-r6,lr}
sub sp, 0xC
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
ldr r0, =gTasks
adds r4, r1, r0
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _08113424
ldr r0, =0x04000014
str r0, [sp]
ldr r0, =gBattle_BG1_X
b _0811342A
.pool
_08113424:
ldr r0, =0x04000018
str r0, [sp]
ldr r0, =gBattle_BG2_X
_0811342A:
ldrh r0, [r0]
strh r0, [r4, 0xC]
ldr r0, =0xa2600001
str r0, [sp, 0x4]
mov r1, sp
movs r5, 0
movs r0, 0x1
strb r0, [r1, 0x8]
mov r0, sp
strb r5, [r0, 0x9]
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
subs r1, 0x20
strh r1, [r4, 0xE]
adds r0, 0x20
strh r0, [r4, 0x10]
cmp r1, 0
bge _0811345A
strh r5, [r4, 0xE]
_0811345A:
ldrh r3, [r4, 0xE]
movs r1, 0x10
ldrsh r0, [r4, r1]
cmp r3, r0
bgt _08113488
ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
_0811346C:
lsls r1, r3, 1
adds r2, r1, r5
ldrh r0, [r4, 0xC]
strh r0, [r2]
adds r1, r6
ldrh r0, [r4, 0xC]
strh r0, [r1]
adds r0, r3, 0x1
lsls r0, 16
lsrs r3, r0, 16
movs r1, 0x10
ldrsh r0, [r4, r1]
cmp r3, r0
ble _0811346C
_08113488:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
bl ScanlineEffect_SetParams
ldr r0, =sub_81134B8
str r0, [r4]
add sp, 0xC
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_81133E8
thumb_func_start sub_81134B8
sub_81134B8: @ 81134B8
push {lr}
lsls r0, 24
lsrs r3, r0, 24
lsls r0, r3, 2
adds r0, r3
lsls r0, 3
ldr r1, =gTasks
adds r2, r0, r1
movs r1, 0x8
ldrsh r0, [r2, r1]
cmp r0, 0x4
bhi _0811356E
lsls r0, 2
ldr r1, =_081134E4
adds r0, r1
ldr r0, [r0]
mov pc, r0
.pool
.align 2, 0
_081134E4:
.4byte _081134F8
.4byte _0811351A
.4byte _0811352A
.4byte _08113556
.4byte _08113568
_081134F8:
ldrh r0, [r2, 0x16]
adds r0, 0x1
strh r0, [r2, 0x16]
lsls r0, 16
asrs r0, 16
cmp r0, 0x1
ble _0811354E
movs r0, 0
strh r0, [r2, 0x16]
ldrh r0, [r2, 0x14]
adds r0, 0x1
strh r0, [r2, 0x14]
lsls r0, 16
asrs r0, 16
cmp r0, 0x3
bne _0811354E
b _08113548
_0811351A:
ldrh r0, [r2, 0xA]
adds r0, 0x1
strh r0, [r2, 0xA]
lsls r0, 16
asrs r0, 16
cmp r0, 0x3C
ble _0811354E
b _08113548
_0811352A:
ldrh r0, [r2, 0x16]
adds r0, 0x1
strh r0, [r2, 0x16]
lsls r0, 16
asrs r0, 16
cmp r0, 0x1
ble _0811354E
movs r0, 0
strh r0, [r2, 0x16]
ldrh r0, [r2, 0x14]
subs r0, 0x1
strh r0, [r2, 0x14]
lsls r0, 16
cmp r0, 0
bne _0811354E
_08113548:
ldrh r0, [r2, 0x8]
adds r0, 0x1
strh r0, [r2, 0x8]
_0811354E:
adds r0, r2, 0
bl sub_8113574
b _0811356E
_08113556:
ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
ldrh r0, [r2, 0x8]
adds r0, 0x1
strh r0, [r2, 0x8]
b _0811356E
.pool
_08113568:
adds r0, r3, 0
bl DestroyAnimVisualTask
_0811356E:
pop {r0}
bx r0
thumb_func_end sub_81134B8
thumb_func_start sub_8113574
sub_8113574: @ 8113574
push {r4-r7,lr}
mov r7, r8
push {r7}
adds r5, r0, 0
ldrh r3, [r5, 0x12]
ldrh r4, [r5, 0xE]
movs r1, 0x10
ldrsh r0, [r5, r1]
cmp r4, r0
bgt _081135CA
ldr r7, =gScanlineEffectRegBuffers
mov r12, r7
ldr r0, =gSineTable
mov r8, r0
ldr r6, =gScanlineEffect
_08113592:
lsls r2, r4, 1
ldrb r1, [r6, 0x14]
lsls r0, r1, 4
subs r0, r1
lsls r0, 7
adds r2, r0
add r2, r12
lsls r0, r3, 1
add r0, r8
movs r7, 0
ldrsh r1, [r0, r7]
movs r7, 0x14
ldrsh r0, [r5, r7]
muls r0, r1
asrs r0, 7
ldrh r1, [r5, 0xC]
adds r0, r1
strh r0, [r2]
adds r3, 0x8
movs r0, 0xFF
ands r3, r0
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
movs r7, 0x10
ldrsh r0, [r5, r7]
cmp r4, r0
ble _08113592
_081135CA:
ldrh r0, [r5, 0x12]
adds r0, 0x9
movs r1, 0xFF
ands r0, r1
strh r0, [r5, 0x12]
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.pool
thumb_func_end sub_8113574
thumb_func_start sub_81135EC
sub_81135EC: @ 81135EC
push {r4-r6,lr}
mov r6, r8
push {r6}
adds r4, r0, 0
ldr r5, =gBattleAnimArgs
movs r0, 0x4
ldrsh r1, [r5, r0]
lsls r0, r1, 1
adds r0, r1
movs r1, 0x5
bl __divsi3
adds r6, r0, 0
ldr r1, =gBattleAnimAttacker
mov r8, r1
ldrb r0, [r1]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
mov r2, r8
ldrb r0, [r2]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r3, [r5, 0x8]
adds r0, r3
strh r0, [r4, 0x22]
movs r1, 0x2
ldrsh r0, [r5, r1]
movs r2, 0x4
ldrsh r1, [r5, r2]
bl Cos
strh r0, [r4, 0x30]
movs r3, 0x2
ldrsh r0, [r5, r3]
lsls r6, 16
asrs r6, 16
adds r1, r6, 0
bl Sin
strh r0, [r4, 0x32]
ldrh r1, [r4, 0x30]
ldrh r2, [r5]
adds r3, r2, 0
muls r3, r1
adds r1, r3, 0
ldrh r3, [r4, 0x20]
adds r1, r3
strh r1, [r4, 0x20]
adds r1, r2, 0
muls r1, r0
adds r0, r1, 0
ldrh r2, [r4, 0x22]
adds r0, r2
strh r0, [r4, 0x22]
ldrh r0, [r5, 0x6]
strh r0, [r4, 0x34]
ldr r0, =sub_811369C
str r0, [r4, 0x1C]
adds r4, 0x2E
ldr r2, =gUnknown_0203A100
movs r1, 0x6
_08113674:
ldrh r0, [r4]
strh r0, [r2]
adds r4, 0x2
adds r2, 0x2
subs r1, 0x1
cmp r1, 0
bge _08113674
pop {r3}
mov r8, r3
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_81135EC
thumb_func_start sub_811369C
sub_811369C: @ 811369C
push {r4,lr}
adds r4, r0, 0
ldrh r0, [r4, 0x30]
ldrh r1, [r4, 0x36]
adds r0, r1
strh r0, [r4, 0x36]
ldrh r0, [r4, 0x32]
ldrh r2, [r4, 0x38]
adds r0, r2
strh r0, [r4, 0x38]
movs r1, 0x36
ldrsh r0, [r4, r1]
movs r1, 0xA
bl __divsi3
strh r0, [r4, 0x24]
movs r2, 0x38
ldrsh r0, [r4, r2]
movs r1, 0xA
bl __divsi3
strh r0, [r4, 0x26]
ldrh r0, [r4, 0x2E]
adds r0, 0x1
strh r0, [r4, 0x2E]
lsls r0, 16
asrs r0, 16
movs r2, 0x34
ldrsh r1, [r4, r2]
cmp r0, r1
ble _081136E0
adds r0, r4, 0
bl DestroyAnimSprite
_081136E0:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_811369C
.align 2, 0

2547
asm/electric.s Normal file

File diff suppressed because it is too large Load Diff

1649
asm/fight.s Normal file

File diff suppressed because it is too large Load Diff

2397
asm/fire.s Normal file

File diff suppressed because it is too large Load Diff

2551
asm/flying.s Normal file

File diff suppressed because it is too large Load Diff

3251
asm/ghost.s Normal file

File diff suppressed because it is too large Load Diff

1675
asm/ground.s Normal file

File diff suppressed because it is too large Load Diff

2944
asm/ice.s Normal file

File diff suppressed because it is too large Load Diff

1876
asm/normal.s Normal file

File diff suppressed because it is too large Load Diff

306
asm/poison.s Normal file
View File

@ -0,0 +1,306 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_810DBAC
sub_810DBAC: @ 810DBAC
push {r4,r5,lr}
adds r5, r0, 0
ldr r4, =gBattleAnimArgs
movs r1, 0x6
ldrsh r0, [r4, r1]
cmp r0, 0
bne _0810DBC2
adds r0, r5, 0
movs r1, 0x2
bl StartSpriteAnim
_0810DBC2:
adds r0, r5, 0
movs r1, 0x1
bl sub_80A69CC
ldrh r0, [r4, 0x4]
strh r0, [r5, 0x2E]
ldr r4, =gBattleAnimTarget
ldrb r0, [r4]
movs r1, 0x2
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
ldr r0, =0x0000ffe2
strh r0, [r5, 0x38]
adds r0, r5, 0
bl sub_80A68D4
ldr r0, =sub_810DC10
str r0, [r5, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_810DBAC
thumb_func_start sub_810DC10
sub_810DC10: @ 810DC10
push {r4,lr}
adds r4, r0, 0
bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810DC24
adds r0, r4, 0
bl DestroyAnimSprite
_0810DC24:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_810DC10
thumb_func_start sub_810DC2C
sub_810DC2C: @ 810DC2C
push {r4-r6,lr}
sub sp, 0x4
adds r4, r0, 0
ldr r5, =gBattleAnimArgs
movs r1, 0x6
ldrsh r0, [r5, r1]
cmp r0, 0
bne _0810DC44
adds r0, r4, 0
movs r1, 0x2
bl StartSpriteAnim
_0810DC44:
adds r0, r4, 0
movs r1, 0x1
bl sub_80A69CC
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
mov r6, sp
adds r6, 0x2
movs r1, 0x1
mov r2, sp
adds r3, r6, 0
bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0810DC72
ldrh r0, [r5, 0x8]
negs r0, r0
strh r0, [r5, 0x8]
_0810DC72:
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2E]
mov r1, sp
ldrh r0, [r5, 0x8]
ldrh r1, [r1]
adds r0, r1
strh r0, [r4, 0x32]
ldrh r0, [r5, 0xA]
ldrh r6, [r6]
adds r0, r6
strh r0, [r4, 0x36]
ldr r0, =0x0000ffe2
strh r0, [r4, 0x38]
adds r0, r4, 0
bl sub_80A68D4
ldr r0, =sub_810DCB4
str r0, [r4, 0x1C]
add sp, 0x4
pop {r4-r6}
pop {r0}
bx r0
.pool
thumb_func_end sub_810DC2C
thumb_func_start sub_810DCB4
sub_810DCB4: @ 810DCB4
push {r4,lr}
adds r4, r0, 0
bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810DCC8
adds r0, r4, 0
bl DestroyAnimSprite
_0810DCC8:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_810DCB4
thumb_func_start sub_810DCD0
sub_810DCD0: @ 810DCD0
push {r4,r5,lr}
adds r4, r0, 0
ldr r5, =gBattleAnimArgs
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2E]
ldrh r0, [r4, 0x20]
strh r0, [r4, 0x30]
ldrh r1, [r5]
adds r0, r1
strh r0, [r4, 0x32]
ldrh r0, [r4, 0x22]
strh r0, [r4, 0x34]
ldrh r1, [r5, 0x2]
adds r0, r1
strh r0, [r4, 0x36]
adds r0, r4, 0
bl sub_80A6E14
movs r1, 0x30
ldrsh r0, [r4, r1]
movs r2, 0x4
ldrsh r1, [r5, r2]
bl __divsi3
strh r0, [r4, 0x38]
movs r1, 0x32
ldrsh r0, [r4, r1]
movs r2, 0x4
ldrsh r1, [r5, r2]
bl __divsi3
strh r0, [r4, 0x3A]
ldr r0, =sub_810DD24
str r0, [r4, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_810DCD0
thumb_func_start sub_810DD24
sub_810DD24: @ 810DD24
push {r4,lr}
adds r4, r0, 0
bl sub_80A656C
ldrh r0, [r4, 0x30]
ldrh r1, [r4, 0x38]
subs r0, r1
strh r0, [r4, 0x30]
ldrh r0, [r4, 0x32]
ldrh r1, [r4, 0x3A]
subs r0, r1
strh r0, [r4, 0x32]
movs r1, 0x2E
ldrsh r0, [r4, r1]
cmp r0, 0
bne _0810DD4A
adds r0, r4, 0
bl DestroyAnimSprite
_0810DD4A:
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_810DD24
thumb_func_start sub_810DD50
sub_810DD50: @ 810DD50
push {r4,lr}
adds r4, r0, 0
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0810DD7C
ldr r1, =gBattleAnimArgs
ldrh r0, [r1]
negs r0, r0
strh r0, [r1]
_0810DD7C:
ldr r0, =gBattleAnimArgs
ldrh r2, [r0]
ldrh r1, [r4, 0x20]
adds r2, r1
strh r2, [r4, 0x20]
ldrh r1, [r0, 0x2]
ldrh r3, [r4, 0x22]
adds r1, r3
strh r1, [r4, 0x22]
ldrh r3, [r0, 0x8]
strh r3, [r4, 0x2E]
ldrh r0, [r0, 0x4]
adds r2, r0
strh r2, [r4, 0x32]
adds r1, r3
strh r1, [r4, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
pop {r0}
bx r0
.pool
thumb_func_end sub_810DD50
thumb_func_start sub_810DDC4
sub_810DDC4: @ 810DDC4
push {r4,r5,lr}
adds r4, r0, 0
ldr r5, =gBattleAnimArgs
movs r1, 0x4
ldrsh r0, [r5, r1]
cmp r0, 0
bne _0810DDE0
adds r0, r4, 0
movs r1, 0x1
bl sub_80A6980
b _0810DE16
.pool
_0810DDE0:
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0810DE06
ldrh r0, [r5]
negs r0, r0
strh r0, [r5]
_0810DE06:
ldrh r0, [r5]
ldrh r1, [r4, 0x20]
adds r0, r1
strh r0, [r4, 0x20]
ldrh r0, [r5, 0x2]
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x22]
_0810DE16:
ldr r0, =sub_810DE2C
str r0, [r4, 0x1C]
pop {r4,r5}
pop {r0}
bx r0
.pool
thumb_func_end sub_810DDC4
.align 2, 0

2172
asm/psychic.s Normal file

File diff suppressed because it is too large Load Diff

1469
asm/rock.s Normal file

File diff suppressed because it is too large Load Diff

3607
asm/water.s Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,4 @@
#include "constants/battle_anim.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
@ -13,8 +14,8 @@ gUnknown_0853EDF8:: @ 853EDF8
.align 2
gUnknown_0853EDFC:: @ 853EDFC
spr_template 0x2714, 0x2714, gUnknown_0852490C, gUnknown_0853EDF8, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
spr_template 0x2714, 0x2714, gUnknown_0852490C, gUnknown_0853EDF8, NULL, gDummySpriteAffineAnimTable, sub_80A8A6C
spr_template ANIM_TAG_UNUSED_ORB, ANIM_TAG_UNUSED_ORB, gUnknown_0852490C, gUnknown_0853EDF8, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
spr_template ANIM_TAG_UNUSED_ORB, ANIM_TAG_UNUSED_ORB, gUnknown_0852490C, gUnknown_0853EDF8, NULL, gDummySpriteAffineAnimTable, sub_80A8A6C
.align 2
gUnknown_0853EE2C:: @ 853EE2C
@ -26,11 +27,11 @@ gUnknown_0853EE34:: @ 853EE34
.align 2
gUnknown_0853EE38:: @ 853EE38
spr_template 0x282b, 0x282b, gUnknown_08524914, gUnknown_0853EE34, NULL, gDummySpriteAffineAnimTable, sub_80A8E30
spr_template ANIM_TAG_WEATHER_BALL, ANIM_TAG_WEATHER_BALL, gUnknown_08524914, gUnknown_0853EE34, NULL, gDummySpriteAffineAnimTable, sub_80A8E30
.align 2
gUnknown_0853EE50:: @ 853EE50
spr_template 0x282b, 0x282b, gUnknown_08524914, gUnknown_0853EE34, NULL, gDummySpriteAffineAnimTable, sub_80A8EE4
spr_template ANIM_TAG_WEATHER_BALL, ANIM_TAG_WEATHER_BALL, gUnknown_08524914, gUnknown_0853EE34, NULL, gDummySpriteAffineAnimTable, sub_80A8EE4
.align 2
gUnknown_0853EE68:: @ 853EE68
@ -42,8 +43,8 @@ gUnknown_0853EE80:: @ 853EE80
.align 2
gUnknown_0853EE84:: @ 853EE84
spr_template 0x2757, 0x2757, gUnknown_08524914, gUnknown_0853EE80, NULL, gDummySpriteAffineAnimTable, sub_80A8B64
spr_template 0x2743, 0x2743, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
spr_template ANIM_TAG_SPARKLE_4, ANIM_TAG_SPARKLE_4, gUnknown_08524914, gUnknown_0853EE80, NULL, gDummySpriteAffineAnimTable, sub_80A8B64
spr_template ANIM_TAG_UNUSED_MONSTER_FOOT, ANIM_TAG_UNUSED_MONSTER_FOOT, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
.align 2
gUnknown_0853EEB4:: @ 853EEB4
@ -65,7 +66,7 @@ gUnknown_0853EECC:: @ 853EECC
.align 2
gUnknown_0853EED8:: @ 853EED8
spr_template 0x2797, 0x2797, gUnknown_08524914, gUnknown_0853EECC, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
spr_template ANIM_TAG_IMPACT, ANIM_TAG_IMPACT, gUnknown_08524914, gUnknown_0853EECC, NULL, gDummySpriteAffineAnimTable, sub_80A8AEC
.align 2
gUnknown_0853EEF0:: @ 853EEF0
@ -85,4 +86,4 @@ gUnknown_0853EF14:: @ 853EF14
.align 2
gUnknown_0853EF18:: @ 853EF18
spr_template 0x2714, 0x2714, gUnknown_085249CC, gUnknown_0853EEF8, NULL, gUnknown_0853EF14, sub_80A8A6C
spr_template ANIM_TAG_UNUSED_ORB, ANIM_TAG_UNUSED_ORB, gUnknown_085249CC, gUnknown_0853EEF8, NULL, gUnknown_0853EF14, sub_80A8A6C

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,4 @@
#include "constants/battle_anim.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
@ -15,15 +16,15 @@ gUnknown_085CE01C:: @ 85CE01C
.align 2
gUnknown_085CE020:: @ 85CE020
spr_template 0x2799, 0x2799, gUnknown_08524A34, gUnknown_085CE01C, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
spr_template ANIM_TAG_SCRATCH, ANIM_TAG_SCRATCH, gUnknown_08524A34, gUnknown_085CE01C, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
.align 2
gUnknown_085CE038:: @ 85CE038
spr_template 0x2720, 0x2720, gUnknown_08524934, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A0D4
spr_template ANIM_TAG_BLACK_SMOKE, ANIM_TAG_BLACK_SMOKE, gUnknown_08524934, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A0D4
.align 2
gUnknown_085CE050:: @ 85CE050
spr_template 0x2721, 0x2721, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A78AC
spr_template ANIM_TAG_BLACK_BALL, ANIM_TAG_BLACK_BALL, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A78AC
.align 2
gUnknown_085CE068:: @ 85CE068
@ -36,15 +37,15 @@ gUnknown_085CE078:: @ 85CE078
.align 2
gUnknown_085CE07C:: @ 85CE07C
spr_template 0x27ce, 0x27ce, gUnknown_08524914, gUnknown_085CE078, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
spr_template ANIM_TAG_OPENING_EYE, ANIM_TAG_OPENING_EYE, gUnknown_08524914, gUnknown_085CE078, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
.align 2
gUnknown_085CE094::
spr_template 0x27cf, 0x27cf, gUnknown_08524A3C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A1B0
spr_template ANIM_TAG_ROUND_WHITE_HALO, ANIM_TAG_ROUND_WHITE_HALO, gUnknown_08524A3C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A1B0
.align 2
gUnknown_085CE0AC::
spr_template 0x27cd, 0x27cd, gUnknown_08524974, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A254
spr_template ANIM_TAG_TEAL_ALERT, ANIM_TAG_TEAL_ALERT, gUnknown_08524974, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A254
.align 2
gUnknown_085CE0C4:: @ 85CE0C4
@ -66,11 +67,11 @@ gUnknown_085CE0FC:: @ 85CE0FC
.align 2
gUnknown_085CE104:: @ 85CE104
spr_template 0x27cb, 0x27cb, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_085CE0FC, sub_815A2F0
spr_template ANIM_TAG_EYE, ANIM_TAG_EYE, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_085CE0FC, sub_815A2F0
.align 2
gUnknown_085CE11C:: @ 85CE11C
spr_template 0x27a8, 0x27a8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A6C4
spr_template ANIM_TAG_SPIKES, ANIM_TAG_SPIKES, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815A6C4
.align 2
gUnknown_085CE134:: @ 85CE134
@ -84,7 +85,7 @@ gUnknown_085CE14C:: @ 85CE14C
.align 2
gUnknown_085CE150:: @ 85CE150
spr_template 0x272b, 0x272b, gUnknown_08524914, gUnknown_085CE14C, NULL, gDummySpriteAffineAnimTable, sub_815A7B0
spr_template ANIM_TAG_LEER, ANIM_TAG_LEER, gUnknown_08524914, gUnknown_085CE14C, NULL, gDummySpriteAffineAnimTable, sub_815A7B0
.align 2
gUnknown_085CE168:: @ 85CE168
@ -106,7 +107,7 @@ gUnknown_085CE18C:: @ 85CE18C
.align 2
gUnknown_085CE190:: @ 85CE190
spr_template 0x27f4, 0x27f4, gUnknown_08524974, gUnknown_085CE170, NULL, gUnknown_085CE18C, sub_815A7EC
spr_template ANIM_TAG_LETTER_Z, ANIM_TAG_LETTER_Z, gUnknown_08524974, gUnknown_085CE170, NULL, gUnknown_085CE18C, sub_815A7EC
.align 2
gUnknown_085CE1A8:: @ 85CE1A8
@ -128,7 +129,7 @@ gUnknown_085CE1D8:: @ 85CE1D8
.align 2
gUnknown_085CE1DC:: @ 85CE1DC
spr_template 0x27d0, 0x27d0, gUnknown_085249D4, gUnknown_085CE1BC, NULL, gUnknown_085CE1D8, sub_815A8AC
spr_template ANIM_TAG_FANG_ATTACK, ANIM_TAG_FANG_ATTACK, gUnknown_085249D4, gUnknown_085CE1BC, NULL, gUnknown_085CE1D8, sub_815A8AC
.align 2
gUnknown_085CE1F4:: @ 85CE1F4
@ -149,15 +150,15 @@ gUnknown_085CE224:: @ 85CE224
.align 2
gUnknown_085CE22C:: @ 85CE22C
spr_template 0x27f3, 0x27f3, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815A934
spr_template ANIM_TAG_SPOTLIGHT, ANIM_TAG_SPOTLIGHT, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815A934
.align 2
gUnknown_085CE244::
spr_template 0x2807, 0x2807, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815AAA4
spr_template ANIM_TAG_TAG_HAND, ANIM_TAG_TAG_HAND, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815AAA4
.align 2
gUnknown_085CE25C::
spr_template 0x2807, 0x2807, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815ABD0
spr_template ANIM_TAG_TAG_HAND, ANIM_TAG_TAG_HAND, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815ABD0
.align 2
gUnknown_085CE274:: @ 85CE274
@ -170,7 +171,7 @@ gUnknown_085CE284:: @ 85CE284
.align 2
gUnknown_085CE288:: @ 85CE288
spr_template 0x27f5, 0x27f5, gUnknown_08524934, gUnknown_085CE284, NULL, gDummySpriteAffineAnimTable, sub_815ACD0
spr_template ANIM_TAG_RAPID_SPIN, ANIM_TAG_RAPID_SPIN, gUnknown_08524934, gUnknown_085CE284, NULL, gDummySpriteAffineAnimTable, sub_815ACD0
.align 2
gUnknown_085CE2A0:: @ 85CE2A0
@ -195,7 +196,7 @@ gUnknown_085CE2F4:: @ 85CE2F4
.align 2
gUnknown_085CE2F8:: @ 85CE2F8
spr_template 0x27f6, 0x27f6, gUnknown_085249DC, gUnknown_085CE2C8, NULL, gUnknown_085CE2F4, sub_815B27C
spr_template ANIM_TAG_TRI_FORCE_TRIANGLE, ANIM_TAG_TRI_FORCE_TRIANGLE, gUnknown_085249DC, gUnknown_085CE2C8, NULL, gUnknown_085CE2F4, sub_815B27C
.align 2
gUnknown_085CE310:: @ 85CE310
@ -208,7 +209,7 @@ gUnknown_085CE334:: @ 85CE334
.align 2
gUnknown_085CE338:: @ 85CE338
spr_template 0x27fa, 0x27fa, gUnknown_08524914, gUnknown_085CE334, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
spr_template ANIM_TAG_ECLIPSING_ORB, ANIM_TAG_ECLIPSING_ORB, gUnknown_08524914, gUnknown_085CE334, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
.align 2
gUnknown_085CE350:: @ 85CE350
@ -216,15 +217,15 @@ gUnknown_085CE350:: @ 85CE350
.align 2
gUnknown_085CE370:: @ 85CE370
spr_template 0x27f2, 0x27f2, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B394
spr_template ANIM_TAG_POKEBALL, ANIM_TAG_POKEBALL, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B394
.align 2
gUnknown_085CE388:: @ 85CE388
spr_template 0x27f9, 0x27f9, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B49C
spr_template ANIM_TAG_GOLD_STARS, ANIM_TAG_GOLD_STARS, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B49C
.align 2
gUnknown_085CE3A0:: @ 85CE3A0
spr_template 0x27f9, 0x27f9, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B570
spr_template ANIM_TAG_GOLD_STARS, ANIM_TAG_GOLD_STARS, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B570
.align 2
gUnknown_085CE3B8:: @ 85CE3B8
@ -238,7 +239,7 @@ gUnknown_085CE3E0:: @ 85CE3E0
.align 2
gUnknown_085CE418:: @ 85CE418
spr_template 0x27fc, 0x27fc, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B70C
spr_template ANIM_TAG_BLUE_ORB, ANIM_TAG_BLUE_ORB, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815B70C
.align 2
gUnknown_085CE430:: @ 85CE430
@ -269,7 +270,7 @@ gUnknown_085CE480:: @ 85CE480
.align 2
gUnknown_085CE48C:: @ 85CE48C
spr_template 0x2801, 0x2801, gUnknown_0852490C, gUnknown_085CE480, NULL, gDummySpriteAffineAnimTable, sub_815BE04
spr_template ANIM_TAG_GREEN_STAR, ANIM_TAG_GREEN_STAR, gUnknown_0852490C, gUnknown_085CE480, NULL, gDummySpriteAffineAnimTable, sub_815BE04
.align 2
gUnknown_085CE4A4:: @ 85CE4A4
@ -285,7 +286,7 @@ gUnknown_085CE4B0:: @ 85CE4B0
.align 2
gUnknown_085CE4D0:: @ 85CE4D0
spr_template 0x2767, 0x2767, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815C400
spr_template ANIM_TAG_ANGER, ANIM_TAG_ANGER, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815C400
.align 2
gUnknown_085CE4E8:: @ 85CE4E8
@ -309,7 +310,7 @@ gUnknown_085CE538:: @ 85CE538
.align 2
gUnknown_085CE544:: @ 85CE544
spr_template 0x27fe, 0x27fe, gUnknown_08524904, gUnknown_085CE538, NULL, gDummySpriteAffineAnimTable, sub_815C6B0
spr_template ANIM_TAG_PINK_PETAL, ANIM_TAG_PINK_PETAL, gUnknown_08524904, gUnknown_085CE538, NULL, gDummySpriteAffineAnimTable, sub_815C6B0
.align 2
gUnknown_085CE55C:: @ 85CE55C
@ -325,13 +326,13 @@ gUnknown_085CE58C:: @ 85CE58C
.align 2
gUnknown_085CE590:: @ 85CE590
spr_template 0x27ff, 0x27ff, gUnknown_0852490C, gUnknown_085CE58C, NULL, gDummySpriteAffineAnimTable, sub_815C95C
spr_template ANIM_TAG_PAIN_SPLIT, ANIM_TAG_PAIN_SPLIT, gUnknown_0852490C, gUnknown_085CE58C, NULL, gDummySpriteAffineAnimTable, sub_815C95C
gUnknown_085CE5A8::
spr_template 0x2800, 0x2800, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CB88
spr_template ANIM_TAG_CONFETTI, ANIM_TAG_CONFETTI, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CB88
gUnknown_085CE5C0::
spr_template 0x27f3, 0x27f3, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815CC94
spr_template ANIM_TAG_SPOTLIGHT, ANIM_TAG_SPOTLIGHT, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815CC94
gBattleAnimSpriteTemplate_85CE5D8::
spr_template 0x27fc, 0x27fc, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CDB4
spr_template ANIM_TAG_BLUE_ORB, ANIM_TAG_BLUE_ORB, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CDB4
.align 2
gUnknown_085CE5F0:: @ 85CE5F0
@ -358,7 +359,7 @@ gUnknown_085CE680:: @ 85CE680
.align 2
gUnknown_085CE68C:: @ 85CE68C
spr_template 0x2802, 0x2802, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_085CE680, sub_815D7B4
spr_template ANIM_TAG_PINK_CLOUD, ANIM_TAG_PINK_CLOUD, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_085CE680, sub_815D7B4
.align 2
gUnknown_085CE6A4:: @ 85CE6A4
@ -385,7 +386,7 @@ gUnknown_085CE724:: @ 85CE724
.align 2
gUnknown_085CE734:: @ 85CE734
spr_template 0x2802, 0x2802, gUnknown_085249D4, gDummySpriteAnimTable, NULL, gUnknown_085CE724, sub_815D870
spr_template ANIM_TAG_PINK_CLOUD, ANIM_TAG_PINK_CLOUD, gUnknown_085249D4, gDummySpriteAnimTable, NULL, gUnknown_085CE724, sub_815D870
.align 2
gUnknown_085CE74C:: @ 85CE74C
@ -393,7 +394,7 @@ gUnknown_085CE74C:: @ 85CE74C
.align 2
gUnknown_085CE76C:: @ 85CE76C
spr_template 0x2803, 0x2803, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815DEBC
spr_template ANIM_TAG_SWEAT_DROP, ANIM_TAG_SWEAT_DROP, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815DEBC
.align 2
gUnknown_085CE784:: @ 85CE784
@ -415,13 +416,13 @@ gUnknown_085CE7CC:: @ 85CE7CC
.align 2
gUnknown_085CE7D4:: @ 85CE7D4
spr_template 0x2745, 0x2745, gUnknown_08524914, gUnknown_085CE7CC, NULL, gDummySpriteAffineAnimTable, sub_815E01C
spr_template ANIM_TAG_NOISE_LINE, ANIM_TAG_NOISE_LINE, gUnknown_08524914, gUnknown_085CE7CC, NULL, gDummySpriteAffineAnimTable, sub_815E01C
.align 2
gUnknown_085CE7EC:: @ 85CE7EC
spr_template 0x2808, 0x2808, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E404
spr_template ANIM_TAG_SMALL_RED_EYE, ANIM_TAG_SMALL_RED_EYE, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E404
gUnknown_085CE804::
spr_template 0x280c, 0x280c, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E444
spr_template ANIM_TAG_PAW_PRINT, ANIM_TAG_PAW_PRINT, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E444
.align 2
gUnknown_085CE81C:: @ 85CE81C
@ -439,11 +440,11 @@ gUnknown_085CE844:: @ 85CE844
.align 2
gUnknown_085CE84C:: @ 85CE84C
spr_template 0x280e, 0x280e, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_085CE844, SpriteCallbackDummy
spr_template ANIM_TAG_RED_BALL, ANIM_TAG_RED_BALL, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_085CE844, SpriteCallbackDummy
.align 2
gUnknown_085CE864::
spr_template 0x2807, 0x2807, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E6D8
spr_template ANIM_TAG_TAG_HAND, ANIM_TAG_TAG_HAND, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E6D8
.align 2
gUnknown_085CE87C:: @ 85CE87C
@ -451,19 +452,19 @@ gUnknown_085CE87C:: @ 85CE87C
.align 2
gUnknown_085CE894:: @ 85CE894
spr_template 0x280f, 0x280f, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E954
spr_template ANIM_TAG_SMELLINGSALT_EFFECT, ANIM_TAG_SMELLINGSALT_EFFECT, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815E954
gUnknown_085CE8AC::
spr_template 0x2807, 0x2807, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815EA14
spr_template ANIM_TAG_TAG_HAND, ANIM_TAG_TAG_HAND, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815EA14
gUnknown_085CE8C4::
spr_template 0x2812, 0x2812, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815EE84
spr_template ANIM_TAG_MAGNIFYING_GLASS, ANIM_TAG_MAGNIFYING_GLASS, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815EE84
gUnknown_085CE8DC::
spr_template 0x27f9, 0x27f9, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815F18C
spr_template ANIM_TAG_GOLD_STARS, ANIM_TAG_GOLD_STARS, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815F18C
gUnknown_085CE8F4::
spr_template 0x27f9, 0x27f9, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81061C4
spr_template ANIM_TAG_GOLD_STARS, ANIM_TAG_GOLD_STARS, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81061C4
gUnknown_085CE90C::
spr_template 0x280a, 0x280a, gUnknown_0852491C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815F48C
spr_template ANIM_TAG_X_SIGN, ANIM_TAG_X_SIGN, gUnknown_0852491C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815F48C
gUnknown_085CE924::
spr_template 0x27f0, 0x27f0, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815FE80
spr_template ANIM_TAG_ITEM_BAG, ANIM_TAG_ITEM_BAG, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815FE80
.align 2
gUnknown_085CE93C:: @ 85CE93C
@ -488,7 +489,7 @@ gUnknown_085CE97C:: @ 85CE97C
.align 2
gUnknown_085CE984:: @ 85CE984
spr_template 0x2825, 0x2825, gUnknown_0852497C, gUnknown_085CE948, NULL, gUnknown_085CE97C, sub_8160338
spr_template ANIM_TAG_SLAM_HIT_2, ANIM_TAG_SLAM_HIT_2, gUnknown_0852497C, gUnknown_085CE948, NULL, gUnknown_085CE97C, sub_8160338
.align 2
gUnknown_085CE99C:: @ 85CE99C
@ -500,7 +501,7 @@ gUnknown_085CE9AC:: @ 85CE9AC
.align 2
gUnknown_085CE9B0:: @ 85CE9B0
spr_template 0x2826, 0x2826, gUnknown_08524A9C, gDummySpriteAnimTable, NULL, gUnknown_085CE9AC, sub_81603A8
spr_template ANIM_TAG_RECYCLE, ANIM_TAG_RECYCLE, gUnknown_08524A9C, gDummySpriteAnimTable, NULL, gUnknown_085CE9AC, sub_81603A8
.align 2
gUnknown_085CE9C8:: @ 85CE9C8

View File

@ -1,3 +1,4 @@
#include "constants/battle_anim.h"
.include "asm/macros.inc"
.include "constants/constants.inc"
@ -141,7 +142,7 @@ gUnknown_085E5310:: @ 85E5310
.align 2
gBattleAnimSpriteTemplate_85E5338:: @ 85E5338
spr_template 0x281d, 0x281d, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_817330C
spr_template ANIM_TAG_UNUSED_RED_BRICK, ANIM_TAG_UNUSED_RED_BRICK, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_817330C
.align 2
gUnknown_085E5350:: @ 8535350
@ -152,5 +153,5 @@ gUnknown_085E5358:: @ 8535358
.4byte gUnknown_085E5350
.align 2
spr_template 0x274a, 0x274a, gUnknown_08524914, gUnknown_085E5358, NULL, gDummySpriteAffineAnimTable, sub_817330C
spr_template ANIM_TAG_ROCKS, ANIM_TAG_ROCKS, gUnknown_08524914, gUnknown_085E5358, NULL, gDummySpriteAffineAnimTable, sub_817330C

File diff suppressed because it is too large Load Diff

View File

@ -1,907 +0,0 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.section .rodata
.align 2, 0
gUnknown_08524904:: @ 8524904
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852490C:: @ 852490C
.byte 0x00, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524914:: @ 8524914
.byte 0x00, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852491C:: @ 852491C
.byte 0x00, 0x00, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524924:: @ 8524924
.byte 0x00, 0x40, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852492C:: @ 852492C
.byte 0x00, 0x40, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524934:: @ 8524934
.byte 0x00, 0x40, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852493C:: @ 852493C
.byte 0x00, 0x40, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524944:: @ 8524944
.byte 0x00, 0x80, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852494C:: @ 852494C
.byte 0x00, 0x80, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524954:: @ 8524954
.byte 0x00, 0x80, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852495C:: @ 852495C
.byte 0x00, 0x80, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524964:: @ 8524964
.byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852496C:: @ 852496C
.byte 0x00, 0x01, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524974:: @ 8524974
.byte 0x00, 0x01, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852497C:: @ 852497C
.byte 0x00, 0x01, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524984:: @ 8524984
.byte 0x00, 0x41, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852498C:: @ 852498C
.byte 0x00, 0x41, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524994:: @ 8524994
.byte 0x00, 0x41, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_0852499C:: @ 852499C
.byte 0x00, 0x41, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249A4:: @ 85249A4
.byte 0x00, 0x81, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249AC:: @ 85249AC
.byte 0x00, 0x81, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249B4:: @ 85249B4
.byte 0x00, 0x81, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249BC:: @ 85249BC
.byte 0x00, 0x81, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249C4:: @ 85249C4
.byte 0x00, 0x03, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249CC:: @ 85249CC
.byte 0x00, 0x03, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249D4:: @ 85249D4
.byte 0x00, 0x03, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249DC:: @ 85249DC
.byte 0x00, 0x03, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249E4:: @ 85249E4
.byte 0x00, 0x43, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249EC:: @ 85249EC
.byte 0x00, 0x43, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249F4:: @ 85249F4
.byte 0x00, 0x43, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_085249FC:: @ 85249FC
.byte 0x00, 0x43, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A04:: @ 8524A04
.byte 0x00, 0x83, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A0C:: @ 8524A0C
.byte 0x00, 0x83, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A14:: @ 8524A14
.byte 0x00, 0x83, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A1C:: @ 8524A1C
.byte 0x00, 0x83, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A24:: @ 8524A24
.byte 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A2C:: @ 8524A2C
.byte 0x00, 0x04, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A34:: @ 8524A34
.byte 0x00, 0x04, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A3C:: @ 8524A3C
.byte 0x00, 0x04, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A44:: @ 8524A44
.byte 0x00, 0x44, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A4C:: @ 8524A4C
.byte 0x00, 0x44, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A54:: @ 8524A54
.byte 0x00, 0x44, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A5C:: @ 8524A5C
.byte 0x00, 0x44, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A64:: @ 8524A64
.byte 0x00, 0x84, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A6C:: @ 8524A6C
.byte 0x00, 0x84, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A74:: @ 8524A74
.byte 0x00, 0x84, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A7C:: @ 8524A7C
.byte 0x00, 0x84, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A84:: @ 8524A84
.byte 0x00, 0x05, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A8C:: @ 8524A8C
.byte 0x00, 0x05, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A94:: @ 8524A94
.byte 0x00, 0x05, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524A9C:: @ 8524A9C
.byte 0x00, 0x05, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AA4:: @ 8524AA4
.byte 0x00, 0x45, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AAC:: @ 8524AAC
.byte 0x00, 0x45, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AB4:: @ 8524AB4
.byte 0x00, 0x45, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524ABC:: @ 8524ABC
.byte 0x00, 0x45, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AC4:: @ 8524AC4
.byte 0x00, 0x85, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524ACC:: @ 8524ACC
.byte 0x00, 0x85, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AD4:: @ 8524AD4
.byte 0x00, 0x85, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524ADC:: @ 8524ADC
.byte 0x00, 0x85, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AE4:: @ 8524AE4
.byte 0x00, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AEC:: @ 8524AEC
.byte 0x00, 0x07, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AF4:: @ 8524AF4
.byte 0x00, 0x07, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524AFC:: @ 8524AFC
.byte 0x00, 0x07, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B04:: @ 8524B04
.byte 0x00, 0x47, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B0C:: @ 8524B0C
.byte 0x00, 0x47, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B14:: @ 8524B14
.byte 0x00, 0x47, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B1C:: @ 8524B1C
.byte 0x00, 0x47, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B24:: @ 8524B24
.byte 0x00, 0x87, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B2C:: @ 8524B2C
.byte 0x00, 0x87, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B34:: @ 8524B34
.byte 0x00, 0x87, 0x00, 0x80, 0x00, 0x08, 0x00, 0x00
.align 2
gUnknown_08524B3C:: @ 8524B3C
.byte 0x00, 0x87, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00
.align 2
gBattleAnimPicTable:: @ 8524B44
obj_tiles gBattleAnimSpriteSheet_000, 0x0200, 0x2710
obj_tiles gBattleAnimSpriteSheet_001, 0x0300, 0x2711
obj_tiles gBattleAnimSpriteSheet_002, 0x0200, 0x2712
obj_tiles gBattleAnimSpriteSheet_003, 0x0100, 0x2713
obj_tiles gBattleAnimSpriteSheet_004, 0x0200, 0x2714
obj_tiles gBattleAnimSpriteSheet_005, 0x0400, 0x2715
obj_tiles gBattleAnimSpriteSheet_006, 0x0180, 0x2716
obj_tiles gBattleAnimSpriteSheet_007, 0x0800, 0x2717
obj_tiles gBattleAnimSpriteSheet_008, 0x0020, 0x2718
obj_tiles gBattleAnimSpriteSheet_009, 0x0400, 0x2719
obj_tiles gBattleAnimSpriteSheet_010, 0x1200, 0x271a
obj_tiles gBattleAnimSpriteSheet_011, 0x0180, 0x271b
obj_tiles gBattleAnimSpriteSheet_012, 0x0080, 0x271c
obj_tiles gBattleAnimSpriteSheet_013, 0x0080, 0x271d
obj_tiles gBattleAnimSpriteSheet_014, 0x0280, 0x271e
obj_tiles gBattleAnimSpriteSheet_015, 0x0080, 0x271f
obj_tiles gBattleAnimSpriteSheet_016, 0x0100, 0x2720
obj_tiles gBattleAnimSpriteSheet_017, 0x0020, 0x2721
obj_tiles gBattleAnimSpriteSheet_018, 0x0080, 0x2722
obj_tiles gBattleAnimSpriteSheet_019, 0x0400, 0x2723
obj_tiles gBattleAnimSpriteSheet_020, 0x0200, 0x2724
obj_tiles gBattleAnimSpriteSheet_021, 0x0a00, 0x2725
obj_tiles gBattleAnimSpriteSheet_021, 0x0a00, 0x2726
obj_tiles gBattleAnimSpriteSheet_023, 0x0380, 0x2727
obj_tiles gBattleAnimSpriteSheet_024, 0x0300, 0x2728
obj_tiles gBattleAnimSpriteSheet_025, 0x0a00, 0x2729
obj_tiles gBattleAnimSpriteSheet_026, 0x0a00, 0x272a
obj_tiles gBattleAnimSpriteSheet_027, 0x0a00, 0x272b
obj_tiles gBattleAnimSpriteSheet_028, 0x0a00, 0x272c
obj_tiles gBattleAnimSpriteSheet_029, 0x0a00, 0x272d
obj_tiles gBattleAnimSpriteSheet_030, 0x0a00, 0x272e
obj_tiles gBattleAnimSpriteSheet_031, 0x0e00, 0x272f
obj_tiles gBattleAnimSpriteSheet_032, 0x0380, 0x2730
obj_tiles gBattleAnimSpriteSheet_033, 0x1000, 0x2731
obj_tiles gBattleAnimSpriteSheet_034, 0x0800, 0x2732
obj_tiles gBattleAnimSpriteSheet_035, 0x0a00, 0x2733
obj_tiles gBattleAnimSpriteSheet_036, 0x0800, 0x2734
obj_tiles gBattleAnimSpriteSheet_037, 0x0a00, 0x2735
obj_tiles gBattleAnimSpriteSheet_038, 0x0a00, 0x2736
obj_tiles gBattleAnimSpriteSheet_039, 0x0a00, 0x2737
obj_tiles gBattleAnimSpriteSheet_040, 0x0a00, 0x2738
obj_tiles gBattleAnimSpriteSheet_041, 0x0a00, 0x2739
obj_tiles gBattleAnimSpriteSheet_042, 0x0a00, 0x273a
obj_tiles gBattleAnimSpriteSheet_043, 0x0a00, 0x273b
obj_tiles gBattleAnimSpriteSheet_044, 0x0a00, 0x273c
obj_tiles gBattleAnimSpriteSheet_045, 0x0a00, 0x273d
obj_tiles gBattleAnimSpriteSheet_046, 0x1000, 0x273e
obj_tiles gBattleAnimSpriteSheet_046, 0x1000, 0x273f
obj_tiles gBattleAnimSpriteSheet_048, 0x1000, 0x2740
obj_tiles gBattleAnimSpriteSheet_048, 0x1000, 0x2741
obj_tiles gBattleAnimSpriteSheet_050, 0x0200, 0x2742
obj_tiles gBattleAnimSpriteSheet_051, 0x0200, 0x2743
obj_tiles gBattleAnimSpriteSheet_052, 0x0200, 0x2744
obj_tiles gBattleAnimSpriteSheet_053, 0x0800, 0x2745
obj_tiles gBattleAnimSpriteSheet_054, 0x0080, 0x2746
obj_tiles gBattleAnimSpriteSheet_055, 0x0200, 0x2747
obj_tiles gBattleAnimSpriteSheet_056, 0x1000, 0x2748
obj_tiles gBattleAnimSpriteSheet_057, 0x0180, 0x2749
obj_tiles gBattleAnimSpriteSheet_058, 0x0c00, 0x274a
obj_tiles gBattleAnimSpriteSheet_059, 0x0100, 0x274b
obj_tiles gBattleAnimSpriteSheet_060, 0x0040, 0x274c
obj_tiles gBattleAnimSpriteSheet_061, 0x0180, 0x274d
obj_tiles gBattleAnimSpriteSheet_062, 0x0800, 0x274e
obj_tiles gBattleAnimSpriteSheet_063, 0x0480, 0x274f
obj_tiles gBattleAnimSpriteSheet_064, 0x0200, 0x2750
obj_tiles gBattleAnimSpriteSheet_065, 0x0200, 0x2751
obj_tiles gBattleAnimSpriteSheet_066, 0x0100, 0x2752
obj_tiles gBattleAnimSpriteSheet_065, 0x0200, 0x2753
obj_tiles gBattleAnimSpriteSheet_065, 0x0200, 0x2754
obj_tiles gBattleAnimSpriteSheet_065, 0x0200, 0x2755
obj_tiles gBattleAnimSpriteSheet_070, 0x0200, 0x2756
obj_tiles gBattleAnimSpriteSheet_071, 0x0a00, 0x2757
obj_tiles gBattleAnimSpriteSheet_072, 0x0300, 0x2758
obj_tiles gBattleAnimSpriteSheet_073, 0x0180, 0x2759
obj_tiles gBattleAnimSpriteSheet_074, 0x00a0, 0x275a
obj_tiles gBattleAnimSpriteSheet_075, 0x0700, 0x275b
obj_tiles gBattleAnimSpriteSheet_076, 0x0400, 0x275c
obj_tiles gBattleAnimSpriteSheet_077, 0x0200, 0x275d
obj_tiles gBattleAnimSpriteSheet_078, 0x0300, 0x275e
obj_tiles gBattleAnimSpriteSheet_079, 0x0c00, 0x275f
obj_tiles gBattleAnimSpriteSheet_080, 0x0a00, 0x2760
obj_tiles gBattleAnimSpriteSheet_081, 0x0080, 0x2761
obj_tiles gBattleAnimSpriteSheet_082, 0x0040, 0x2762
obj_tiles gBattleAnimSpriteSheet_083, 0x0e00, 0x2763
obj_tiles gBattleAnimSpriteSheet_084, 0x0e00, 0x2764
obj_tiles gBattleAnimSpriteSheet_085, 0x0280, 0x2765
obj_tiles gBattleAnimSpriteSheet_086, 0x0200, 0x2766
obj_tiles gBattleAnimSpriteSheet_087, 0x0080, 0x2767
obj_tiles gBattleAnimSpriteSheet_088, 0x00c0, 0x2768
obj_tiles gBattleAnimSpriteSheet_089, 0x0a00, 0x2769
obj_tiles gBattleAnimSpriteSheet_090, 0x0200, 0x276a
obj_tiles gBattleAnimSpriteSheet_091, 0x0180, 0x276b
obj_tiles gBattleAnimSpriteSheet_092, 0x0080, 0x276c
obj_tiles gBattleAnimSpriteSheet_093, 0x1000, 0x276d
obj_tiles gBattleAnimSpriteSheet_094, 0x0a00, 0x276e
obj_tiles gBattleAnimSpriteSheet_095, 0x0180, 0x276f
obj_tiles gBattleAnimSpriteSheet_096, 0x0380, 0x2770
obj_tiles gBattleAnimSpriteSheet_097, 0x0c00, 0x2771
obj_tiles gBattleAnimSpriteSheet_098, 0x0200, 0x2772
obj_tiles gBattleAnimSpriteSheet_099, 0x0200, 0x2773
obj_tiles gBattleAnimSpriteSheet_100, 0x0200, 0x2774
obj_tiles gBattleAnimSpriteSheet_101, 0x0200, 0x2775
obj_tiles gBattleAnimSpriteSheet_102, 0x0400, 0x2776
obj_tiles gBattleAnimSpriteSheet_103, 0x0080, 0x2777
obj_tiles gBattleAnimSpriteSheet_104, 0x0400, 0x2778
obj_tiles gBattleAnimSpriteSheet_105, 0x0c00, 0x2779
obj_tiles gBattleAnimSpriteSheet_106, 0x0200, 0x277a
obj_tiles gBattleAnimSpriteSheet_107, 0x1000, 0x277b
obj_tiles gBattleAnimSpriteSheet_108, 0x0a00, 0x277c
obj_tiles gBattleAnimSpriteSheet_109, 0x0020, 0x277d
obj_tiles gBattleAnimSpriteSheet_110, 0x0e00, 0x277e
obj_tiles gBattleAnimSpriteSheet_111, 0x0080, 0x277f
obj_tiles gBattleAnimSpriteSheet_112, 0x0a00, 0x2780
obj_tiles gBattleAnimSpriteSheet_113, 0x0400, 0x2781
obj_tiles gBattleAnimSpriteSheet_114, 0x0200, 0x2782
obj_tiles gBattleAnimSpriteSheet_115, 0x0700, 0x2783
obj_tiles gBattleAnimSpriteSheet_116, 0x0800, 0x2784
obj_tiles gBattleAnimSpriteSheet_117, 0x0a00, 0x2785
obj_tiles gBattleAnimSpriteSheet_118, 0x0600, 0x2786
obj_tiles gBattleAnimSpriteSheet_119, 0x0800, 0x2787
obj_tiles gBattleAnimSpriteSheet_120, 0x0200, 0x2788
obj_tiles gBattleAnimSpriteSheet_121, 0x0040, 0x2789
obj_tiles gBattleAnimSpriteSheet_122, 0x0180, 0x278a
obj_tiles gBattleAnimSpriteSheet_123, 0x0600, 0x278b
obj_tiles gBattleAnimSpriteSheet_124, 0x0600, 0x278c
obj_tiles gBattleAnimSpriteSheet_125, 0x0200, 0x278d
obj_tiles gBattleAnimSpriteSheet_126, 0x0080, 0x278e
obj_tiles gBattleAnimSpriteSheet_127, 0x0200, 0x278f
obj_tiles gBattleAnimSpriteSheet_128, 0x0800, 0x2790
obj_tiles gBattleAnimSpriteSheet_129, 0x0080, 0x2791
obj_tiles gBattleAnimSpriteSheet_130, 0x0a00, 0x2792
obj_tiles gBattleAnimSpriteSheet_131, 0x0280, 0x2793
obj_tiles gBattleAnimSpriteSheet_132, 0x0280, 0x2794
obj_tiles gBattleAnimSpriteSheet_133, 0x0100, 0x2795
obj_tiles gBattleAnimSpriteSheet_134, 0x0200, 0x2796
obj_tiles gBattleAnimSpriteSheet_135, 0x0200, 0x2797
obj_tiles gBattleAnimSpriteSheet_136, 0x0020, 0x2798
obj_tiles gBattleAnimSpriteSheet_137, 0x0a00, 0x2799
obj_tiles gBattleAnimSpriteSheet_138, 0x0800, 0x279a
obj_tiles gBattleAnimSpriteSheet_139, 0x0800, 0x279b
obj_tiles gBattleAnimSpriteSheet_140, 0x00c0, 0x279c
obj_tiles gBattleAnimSpriteSheet_141, 0x01c0, 0x279d
obj_tiles gBattleAnimSpriteSheet_142, 0x0100, 0x279e
obj_tiles gBattleAnimSpriteSheet_143, 0x0800, 0x279f
obj_tiles gBattleAnimSpriteSheet_144, 0x0200, 0x27a0
obj_tiles gBattleAnimSpriteSheet_145, 0x0800, 0x27a1
obj_tiles gBattleAnimSpriteSheet_146, 0x0180, 0x27a2
obj_tiles gBattleAnimSpriteSheet_147, 0x0180, 0x27a3
obj_tiles gBattleAnimSpriteSheet_148, 0x0200, 0x27a4
obj_tiles gBattleAnimSpriteSheet_149, 0x0200, 0x27a5
obj_tiles gBattleAnimSpriteSheet_150, 0x0180, 0x27a6
obj_tiles gBattleAnimSpriteSheet_151, 0x0400, 0x27a7
obj_tiles gBattleAnimSpriteSheet_152, 0x0080, 0x27a8
obj_tiles gBattleAnimSpriteSheet_153, 0x0100, 0x27a9
obj_tiles gBattleAnimSpriteSheet_154, 0x0100, 0x27aa
obj_tiles gBattleAnimSpriteSheet_155, 0x0140, 0x27ab
obj_tiles gBattleAnimSpriteSheet_156, 0x0800, 0x27ac
obj_tiles gBattleAnimSpriteSheet_157, 0x0200, 0x27ad
obj_tiles gBattleAnimSpriteSheet_158, 0x0100, 0x27ae
obj_tiles gBattleAnimSpriteSheet_159, 0x00a0, 0x27af
obj_tiles gBattleAnimSpriteSheet_160, 0x0100, 0x27b0
obj_tiles gBattleAnimSpriteSheet_161, 0x0080, 0x27b1
obj_tiles gBattleAnimSpriteSheet_162, 0x0300, 0x27b2
obj_tiles gBattleAnimSpriteSheet_163, 0x0100, 0x27b3
obj_tiles gBattleAnimSpriteSheet_163, 0x0100, 0x27b4
obj_tiles gBattleAnimSpriteSheet_163, 0x0100, 0x27b5
obj_tiles gBattleAnimSpriteSheet_166, 0x0800, 0x27b6
obj_tiles gBattleAnimSpriteSheet_166, 0x0800, 0x27b7
obj_tiles gBattleAnimSpriteSheet_166, 0x0800, 0x27b8
obj_tiles gBattleAnimSpriteSheet_166, 0x0800, 0x27b9
obj_tiles gBattleAnimSpriteSheet_166, 0x0800, 0x27ba
obj_tiles gBattleAnimSpriteSheet_171, 0x0080, 0x27bb
obj_tiles gBattleAnimSpriteSheet_144, 0x0200, 0x27bc
obj_tiles gBattleAnimSpriteSheet_173, 0x0200, 0x27bd
obj_tiles gBattleAnimSpriteSheet_174, 0x0200, 0x27be
obj_tiles gBattleAnimSpriteSheet_175, 0x0080, 0x27bf
obj_tiles gBattleAnimSpriteSheet_176, 0x0200, 0x27c0
obj_tiles gBattleAnimSpriteSheet_177, 0x0500, 0x27c1
obj_tiles gBattleAnimSpriteSheet_178, 0x0800, 0x27c2
obj_tiles gBattleAnimSpriteSheet_179, 0x0400, 0x27c3
obj_tiles gBattleAnimSpriteSheet_180, 0x0020, 0x27c4
obj_tiles gBattleAnimSpriteSheet_181, 0x0800, 0x27c5
obj_tiles gBattleAnimSpriteSheet_182, 0x0100, 0x27c6
obj_tiles gBattleAnimSpriteSheet_183, 0x0800, 0x27c7
obj_tiles gBattleAnimSpriteSheet_184, 0x0400, 0x27c8
obj_tiles gBattleAnimSpriteSheet_185, 0x0a00, 0x27c9
obj_tiles gBattleAnimSpriteSheet_186, 0x1000, 0x27ca
obj_tiles gBattleAnimSpriteSheet_187, 0x0800, 0x27cb
obj_tiles gBattleAnimSpriteSheet_188, 0x0400, 0x27cc
obj_tiles gBattleAnimSpriteSheet_189, 0x0200, 0x27cd
obj_tiles gBattleAnimSpriteSheet_190, 0x0800, 0x27ce
obj_tiles gBattleAnimSpriteSheet_191, 0x0800, 0x27cf
obj_tiles gBattleAnimSpriteSheet_192, 0x0800, 0x27d0
obj_tiles gBattleAnimSpriteSheet_193, 0x0200, 0x27d1
obj_tiles gBattleAnimSpriteSheet_194, 0x0800, 0x27d2
obj_tiles gBattleAnimSpriteSheet_195, 0x0200, 0x27d3
obj_tiles gBattleAnimSpriteSheet_196, 0x0800, 0x27d4
obj_tiles gBattleAnimSpriteSheet_197, 0x0200, 0x27d5
obj_tiles gBattleAnimSpriteSheet_198, 0x0800, 0x27d6
obj_tiles gBattleAnimSpriteSheet_199, 0x0400, 0x27d7
obj_tiles gBattleAnimSpriteSheet_200, 0x0200, 0x27d8
obj_tiles gBattleAnimSpriteSheet_201, 0x0a80, 0x27d9
obj_tiles gBattleAnimSpriteSheet_202, 0x0600, 0x27da
obj_tiles gBattleAnimSpriteSheet_203, 0x0800, 0x27db
obj_tiles gBattleAnimSpriteSheet_204, 0x0200, 0x27dc
obj_tiles gBattleAnimSpriteSheet_205, 0x0600, 0x27dd
obj_tiles gBattleAnimSpriteSheet_206, 0x0800, 0x27de
obj_tiles gBattleAnimSpriteSheet_207, 0x0180, 0x27df
obj_tiles gBattleAnimSpriteSheet_208, 0x0800, 0x27e0
obj_tiles gBattleAnimSpriteSheet_209, 0x0800, 0x27e1
obj_tiles gBattleAnimSpriteSheet_210, 0x0080, 0x27e2
obj_tiles gBattleAnimSpriteSheet_211, 0x0080, 0x27e3
obj_tiles gBattleAnimSpriteSheet_212, 0x0800, 0x27e4
obj_tiles gBattleAnimSpriteSheet_213, 0x0800, 0x27e5
obj_tiles gBattleAnimSpriteSheet_214, 0x0600, 0x27e6
obj_tiles gBattleAnimSpriteSheet_215, 0x0600, 0x27e7
obj_tiles gBattleAnimSpriteSheet_210, 0x0080, 0x27e8
obj_tiles gBattleAnimSpriteSheet_217, 0x0080, 0x27e9
obj_tiles gBattleAnimSpriteSheet_218, 0x0180, 0x27ea
obj_tiles gBattleAnimSpriteSheet_210, 0x0080, 0x27eb
obj_tiles gBattleAnimSpriteSheet_220, 0x0200, 0x27ec
obj_tiles gBattleAnimSpriteSheet_221, 0x0400, 0x27ed
obj_tiles gBattleAnimSpriteSheet_222, 0x0a00, 0x27ee
obj_tiles gBattleAnimSpriteSheet_223, 0x0800, 0x27ef
obj_tiles gBattleAnimSpriteSheet_224, 0x0200, 0x27f0
obj_tiles gBattleAnimSpriteSheet_225, 0x0400, 0x27f1
obj_tiles gBattleAnimSpriteSheet_226, 0x0080, 0x27f2
obj_tiles gBattleAnimSpriteSheet_227, 0x0800, 0x27f3
obj_tiles gBattleAnimSpriteSheet_228, 0x0200, 0x27f4
obj_tiles gBattleAnimSpriteSheet_229, 0x0300, 0x27f5
obj_tiles gBattleAnimSpriteSheet_230, 0x0800, 0x27f6
obj_tiles gBattleAnimSpriteSheet_231, 0x0380, 0x27f7
obj_tiles gBattleAnimSpriteSheet_232, 0x0800, 0x27f8
obj_tiles gBattleAnimSpriteSheet_233, 0x00c0, 0x27f9
obj_tiles gBattleAnimSpriteSheet_234, 0x0800, 0x27fa
obj_tiles gBattleAnimSpriteSheet_235, 0x0060, 0x27fb
obj_tiles gBattleAnimSpriteSheet_235, 0x0060, 0x27fc
obj_tiles gBattleAnimSpriteSheet_235, 0x0060, 0x27fd
obj_tiles gBattleAnimSpriteSheet_238, 0x0080, 0x27fe
obj_tiles gBattleAnimSpriteSheet_239, 0x0180, 0x27ff
obj_tiles gBattleAnimSpriteSheet_240, 0x0180, 0x2800
obj_tiles gBattleAnimSpriteSheet_241, 0x0200, 0x2801
obj_tiles gBattleAnimSpriteSheet_242, 0x0200, 0x2802
obj_tiles gBattleAnimSpriteSheet_243, 0x0020, 0x2803
obj_tiles gBattleAnimSpriteSheet_244, 0x0400, 0x2804
obj_tiles gBattleAnimSpriteSheet_245, 0x0600, 0x2805
obj_tiles gBattleAnimSpriteSheet_246, 0x1000, 0x2806
obj_tiles gBattleAnimSpriteSheet_247, 0x0400, 0x2807
obj_tiles gBattleAnimSpriteSheet_248, 0x0020, 0x2808
obj_tiles gBattleAnimSpriteSheet_249, 0x0080, 0x2809
obj_tiles gBattleAnimSpriteSheet_250, 0x0800, 0x280a
obj_tiles gBattleAnimSpriteSheet_251, 0x0080, 0x280b
obj_tiles gBattleAnimSpriteSheet_252, 0x0200, 0x280c
obj_tiles gBattleAnimSpriteSheet_253, 0x0400, 0x280d
obj_tiles gBattleAnimSpriteSheet_254, 0x0200, 0x280e
obj_tiles gBattleAnimSpriteSheet_255, 0x0200, 0x280f
obj_tiles gBattleAnimSpriteSheet_256, 0x0800, 0x2810
obj_tiles gBattleAnimSpriteSheet_257, 0x0280, 0x2811
obj_tiles gBattleAnimSpriteSheet_258, 0x0200, 0x2812
obj_tiles gBattleAnimSpriteSheet_149, 0x0200, 0x2813
obj_tiles gBattleAnimSpriteSheet_260, 0x0400, 0x2814
obj_tiles gBattleAnimSpriteSheet_261, 0x0200, 0x2815
obj_tiles gBattleAnimSpriteSheet_262, 0x0200, 0x2816
obj_tiles gBattleAnimSpriteSheet_263, 0x0080, 0x2817
obj_tiles gBattleAnimSpriteSheet_264, 0x0020, 0x2818
obj_tiles gBattleAnimSpriteSheet_264, 0x0020, 0x2819
obj_tiles gBattleAnimSpriteSheet_266, 0x0080, 0x281a
obj_tiles gBattleAnimSpriteSheet_212, 0x0800, 0x281b
obj_tiles gBattleAnimSpriteSheet_264, 0x0020, 0x281c
obj_tiles gBattleAnimSpriteSheet_269, 0x0080, 0x281d
obj_tiles gBattleAnimSpriteSheet_270, 0x0400, 0x281e
obj_tiles gBattleAnimSpriteSheet_271, 0x0080, 0x281f
obj_tiles gBattleAnimSpriteSheet_272, 0x0800, 0x2820
obj_tiles gBattleAnimSpriteSheet_273, 0x0020, 0x2821
obj_tiles gBattleAnimSpriteSheet_274, 0x0800, 0x2822
obj_tiles gBattleAnimSpriteSheet_275, 0x0800, 0x2823
obj_tiles gBattleAnimSpriteSheet_276, 0x0800, 0x2824
obj_tiles gBattleAnimSpriteSheet_277, 0x1000, 0x2825
obj_tiles gBattleAnimSpriteSheet_278, 0x0800, 0x2826
obj_tiles gBattleAnimSpriteSheet_279, 0x00a0, 0x2827
obj_tiles gBattleAnimSpriteSheet_280, 0x0800, 0x2828
obj_tiles gBattleAnimSpriteSheet_281, 0x0200, 0x2829
obj_tiles gBattleAnimSpriteSheet_282, 0x0600, 0x282a
obj_tiles gBattleAnimSpriteSheet_283, 0x0200, 0x282b
obj_tiles gBattleAnimSpriteSheet_284, 0x0800, 0x282c
obj_tiles gBattleAnimSpriteSheet_285, 0x0200, 0x282d
obj_tiles gBattleAnimSpriteSheet_183, 0x0800, 0x282e
obj_tiles gBattleAnimSpriteSheet_056, 0x1000, 0x282f
obj_tiles gBattleAnimSpriteSheet_163, 0x0100, 0x2830
.align 2
gBattleAnimPaletteTable:: @ 852544C
obj_pal gBattleAnimSpritePalette_000, 0x2710
obj_pal gBattleAnimSpritePalette_001, 0x2711
obj_pal gBattleAnimSpritePalette_002, 0x2712
obj_pal gBattleAnimSpritePalette_003, 0x2713
obj_pal gBattleAnimSpritePalette_004, 0x2714
obj_pal gBattleAnimSpritePalette_005, 0x2715
obj_pal gBattleAnimSpritePalette_006, 0x2716
obj_pal gBattleAnimSpritePalette_007, 0x2717
obj_pal gBattleAnimSpritePalette_008, 0x2718
obj_pal gBattleAnimSpritePalette_009, 0x2719
obj_pal gBattleAnimSpritePalette_010, 0x271a
obj_pal gBattleAnimSpritePalette_011, 0x271b
obj_pal gBattleAnimSpritePalette_012, 0x271c
obj_pal gBattleAnimSpritePalette_013, 0x271d
obj_pal gBattleAnimSpritePalette_014, 0x271e
obj_pal gBattleAnimSpritePalette_015, 0x271f
obj_pal gBattleAnimSpritePalette_016, 0x2720
obj_pal gBattleAnimSpritePalette_016, 0x2721
obj_pal gBattleAnimSpritePalette_018, 0x2722
obj_pal gBattleAnimSpritePalette_019, 0x2723
obj_pal gBattleAnimSpritePalette_020, 0x2724
obj_pal gBattleAnimSpritePalette_021, 0x2725
obj_pal gBattleAnimSpritePalette_022, 0x2726
obj_pal gBattleAnimSpritePalette_023, 0x2727
obj_pal gBattleAnimSpritePalette_024, 0x2728
obj_pal gBattleAnimSpritePalette_025, 0x2729
obj_pal gBattleAnimSpritePalette_026, 0x272a
obj_pal gBattleAnimSpritePalette_027, 0x272b
obj_pal gBattleAnimSpritePalette_028, 0x272c
obj_pal gBattleAnimSpritePalette_029, 0x272d
obj_pal gBattleAnimSpritePalette_030, 0x272e
obj_pal gBattleAnimSpritePalette_031, 0x272f
obj_pal gBattleAnimSpritePalette_032, 0x2730
obj_pal gBattleAnimSpritePalette_033, 0x2731
obj_pal gBattleAnimSpritePalette_033, 0x2732
obj_pal gBattleAnimSpritePalette_033, 0x2733
obj_pal gBattleAnimSpritePalette_036, 0x2734
obj_pal gBattleAnimSpritePalette_036, 0x2735
obj_pal gBattleAnimSpritePalette_038, 0x2736
obj_pal gBattleAnimSpritePalette_039, 0x2737
obj_pal gBattleAnimSpritePalette_038, 0x2738
obj_pal gBattleAnimSpritePalette_038, 0x2739
obj_pal gBattleAnimSpritePalette_042, 0x273a
obj_pal gBattleAnimSpritePalette_043, 0x273b
obj_pal gBattleAnimSpritePalette_044, 0x273c
obj_pal gBattleAnimSpritePalette_045, 0x273d
obj_pal gBattleAnimSpritePalette_046, 0x273e
obj_pal gBattleAnimSpritePalette_047, 0x273e
obj_pal gBattleAnimSpritePalette_048, 0x2740
obj_pal gBattleAnimSpritePalette_049, 0x2741
obj_pal gBattleAnimSpritePalette_050, 0x2742
obj_pal gBattleAnimSpritePalette_050, 0x2743
obj_pal gBattleAnimSpritePalette_050, 0x2744
obj_pal gBattleAnimSpritePalette_026, 0x2745
obj_pal gBattleAnimSpritePalette_054, 0x2746
obj_pal gBattleAnimSpritePalette_050, 0x2747
obj_pal gBattleAnimSpritePalette_056, 0x2748
obj_pal gBattleAnimSpritePalette_057, 0x2749
obj_pal gBattleAnimSpritePalette_058, 0x274a
obj_pal gBattleAnimSpritePalette_059, 0x274b
obj_pal gBattleAnimSpritePalette_060, 0x274c
obj_pal gBattleAnimSpritePalette_061, 0x274d
obj_pal gBattleAnimSpritePalette_062, 0x274e
obj_pal gBattleAnimSpritePalette_063, 0x274f
obj_pal gBattleAnimSpritePalette_064, 0x2750
obj_pal gBattleAnimSpritePalette_065, 0x2751
obj_pal gBattleAnimSpritePalette_066, 0x2752
obj_pal gBattleAnimSpritePalette_067, 0x2753
obj_pal gBattleAnimSpritePalette_068, 0x2754
obj_pal gBattleAnimSpritePalette_065, 0x2755
obj_pal gBattleAnimSpritePalette_070, 0x2756
obj_pal gBattleAnimSpritePalette_070, 0x2757
obj_pal gBattleAnimSpritePalette_072, 0x2758
obj_pal gBattleAnimSpritePalette_073, 0x2759
obj_pal gBattleAnimSpritePalette_074, 0x275a
obj_pal gBattleAnimSpritePalette_075, 0x275b
obj_pal gBattleAnimSpritePalette_076, 0x275c
obj_pal gBattleAnimSpritePalette_076, 0x275d
obj_pal gBattleAnimSpritePalette_078, 0x275e
obj_pal gBattleAnimSpritePalette_078, 0x275f
obj_pal gBattleAnimSpritePalette_080, 0x2760
obj_pal gBattleAnimSpritePalette_081, 0x2761
obj_pal gBattleAnimSpritePalette_082, 0x2762
obj_pal gBattleAnimSpritePalette_083, 0x2763
obj_pal gBattleAnimSpritePalette_084, 0x2764
obj_pal gBattleAnimSpritePalette_085, 0x2765
obj_pal gBattleAnimSpritePalette_086, 0x2766
obj_pal gBattleAnimSpritePalette_087, 0x2767
obj_pal gBattleAnimSpritePalette_088, 0x2768
obj_pal gBattleAnimSpritePalette_089, 0x2769
obj_pal gBattleAnimSpritePalette_090, 0x276a
obj_pal gBattleAnimSpritePalette_091, 0x276b
obj_pal gBattleAnimSpritePalette_092, 0x276c
obj_pal gBattleAnimSpritePalette_093, 0x276d
obj_pal gBattleAnimSpritePalette_094, 0x276e
obj_pal gBattleAnimSpritePalette_095, 0x276f
obj_pal gBattleAnimSpritePalette_096, 0x2770
obj_pal gBattleAnimSpritePalette_097, 0x2771
obj_pal gBattleAnimSpritePalette_094, 0x2772
obj_pal gBattleAnimSpritePalette_099, 0x2773
obj_pal gBattleAnimSpritePalette_100, 0x2774
obj_pal gBattleAnimSpritePalette_101, 0x2775
obj_pal gBattleAnimSpritePalette_101, 0x2776
obj_pal gBattleAnimSpritePalette_103, 0x2777
obj_pal gBattleAnimSpritePalette_104, 0x2778
obj_pal gBattleAnimSpritePalette_105, 0x2779
obj_pal gBattleAnimSpritePalette_105, 0x277a
obj_pal gBattleAnimSpritePalette_107, 0x277b
obj_pal gBattleAnimSpritePalette_107, 0x277c
obj_pal gBattleAnimSpritePalette_109, 0x277d
obj_pal gBattleAnimSpritePalette_109, 0x277e
obj_pal gBattleAnimSpritePalette_111, 0x277f
obj_pal gBattleAnimSpritePalette_112, 0x2780
obj_pal gBattleAnimSpritePalette_113, 0x2781
obj_pal gBattleAnimSpritePalette_114, 0x2782
obj_pal gBattleAnimSpritePalette_115, 0x2783
obj_pal gBattleAnimSpritePalette_116, 0x2784
obj_pal gBattleAnimSpritePalette_117, 0x2785
obj_pal gBattleAnimSpritePalette_118, 0x2786
obj_pal gBattleAnimSpritePalette_119, 0x2787
obj_pal gBattleAnimSpritePalette_120, 0x2788
obj_pal gBattleAnimSpritePalette_121, 0x2789
obj_pal gBattleAnimSpritePalette_122, 0x278a
obj_pal gBattleAnimSpritePalette_122, 0x278b
obj_pal gBattleAnimSpritePalette_124, 0x278c
obj_pal gBattleAnimSpritePalette_125, 0x278d
obj_pal gBattleAnimSpritePalette_126, 0x278e
obj_pal gBattleAnimSpritePalette_127, 0x278f
obj_pal gBattleAnimSpritePalette_128, 0x2790
obj_pal gBattleAnimSpritePalette_128, 0x2791
obj_pal gBattleAnimSpritePalette_130, 0x2792
obj_pal gBattleAnimSpritePalette_130, 0x2793
obj_pal gBattleAnimSpritePalette_132, 0x2794
obj_pal gBattleAnimSpritePalette_133, 0x2795
obj_pal gBattleAnimSpritePalette_133, 0x2796
obj_pal gBattleAnimSpritePalette_135, 0x2797
obj_pal gBattleAnimSpritePalette_136, 0x2798
obj_pal gBattleAnimSpritePalette_135, 0x2799
obj_pal gBattleAnimSpritePalette_135, 0x279a
obj_pal gBattleAnimSpritePalette_139, 0x279b
obj_pal gBattleAnimSpritePalette_140, 0x279c
obj_pal gBattleAnimSpritePalette_141, 0x279d
obj_pal gBattleAnimSpritePalette_141, 0x279e
obj_pal gBattleAnimSpritePalette_143, 0x279f
obj_pal gBattleAnimSpritePalette_144, 0x27a0
obj_pal gBattleAnimSpritePalette_139, 0x27a1
obj_pal gBattleAnimSpritePalette_115, 0x27a2
obj_pal gBattleAnimSpritePalette_147, 0x27a3
obj_pal gBattleAnimSpritePalette_148, 0x27a4
obj_pal gBattleAnimSpritePalette_148, 0x27a5
obj_pal gBattleAnimSpritePalette_150, 0x27a6
obj_pal gBattleAnimSpritePalette_150, 0x27a7
obj_pal gBattleAnimSpritePalette_152, 0x27a8
obj_pal gBattleAnimSpritePalette_153, 0x27a9
obj_pal gBattleAnimSpritePalette_154, 0x27aa
obj_pal gBattleAnimSpritePalette_155, 0x27ab
obj_pal gBattleAnimSpritePalette_156, 0x27ac
obj_pal gBattleAnimSpritePalette_157, 0x27ad
obj_pal gBattleAnimSpritePalette_158, 0x27ae
obj_pal gBattleAnimSpritePalette_159, 0x27af
obj_pal gBattleAnimSpritePalette_160, 0x27b0
obj_pal gBattleAnimSpritePalette_161, 0x27b1
obj_pal gBattleAnimSpritePalette_162, 0x27b2
obj_pal gBattleAnimSpritePalette_163, 0x27b3
obj_pal gBattleAnimSpritePalette_164, 0x27b4
obj_pal gBattleAnimSpritePalette_165, 0x27b5
obj_pal gBattleAnimSpritePalette_166, 0x27b6
obj_pal gBattleAnimSpritePalette_167, 0x27b7
obj_pal gBattleAnimSpritePalette_168, 0x27b8
obj_pal gBattleAnimSpritePalette_169, 0x27b9
obj_pal gBattleAnimSpritePalette_170, 0x27ba
obj_pal gBattleAnimSpritePalette_171, 0x27bb
obj_pal gBattleAnimSpritePalette_172, 0x27bc
obj_pal gBattleAnimSpritePalette_001, 0x27bd
obj_pal gBattleAnimSpritePalette_174, 0x27be
obj_pal gBattleAnimSpritePalette_175, 0x27bf
obj_pal gBattleAnimSpritePalette_176, 0x27c0
obj_pal gBattleAnimSpritePalette_177, 0x27c1
obj_pal gBattleAnimSpritePalette_178, 0x27c2
obj_pal gBattleAnimSpritePalette_179, 0x27c3
obj_pal gBattleAnimSpritePalette_179, 0x27c4
obj_pal gBattleAnimSpritePalette_179, 0x27c5
obj_pal gBattleAnimSpritePalette_182, 0x27c6
obj_pal gBattleAnimSpritePalette_183, 0x27c7
obj_pal gBattleAnimSpritePalette_184, 0x27c8
obj_pal gBattleAnimSpritePalette_185, 0x27c9
obj_pal gBattleAnimSpritePalette_186, 0x27ca
obj_pal gBattleAnimSpritePalette_187, 0x27cb
obj_pal gBattleAnimSpritePalette_188, 0x27cc
obj_pal gBattleAnimSpritePalette_189, 0x27cd
obj_pal gBattleAnimSpritePalette_190, 0x27ce
obj_pal gBattleAnimSpritePalette_191, 0x27cf
obj_pal gBattleAnimSpritePalette_192, 0x27d0
obj_pal gBattleAnimSpritePalette_193, 0x27d1
obj_pal gBattleAnimSpritePalette_194, 0x27d2
obj_pal gBattleAnimSpritePalette_195, 0x27d3
obj_pal gBattleAnimSpritePalette_196, 0x27d4
obj_pal gBattleAnimSpritePalette_197, 0x27d5
obj_pal gBattleAnimSpritePalette_198, 0x27d6
obj_pal gBattleAnimSpritePalette_199, 0x27d7
obj_pal gBattleAnimSpritePalette_200, 0x27d8
obj_pal gBattleAnimSpritePalette_201, 0x27d9
obj_pal gBattleAnimSpritePalette_202, 0x27da
obj_pal gBattleAnimSpritePalette_203, 0x27db
obj_pal gBattleAnimSpritePalette_204, 0x27dc
obj_pal gBattleAnimSpritePalette_205, 0x27dd
obj_pal gBattleAnimSpritePalette_206, 0x27de
obj_pal gBattleAnimSpritePalette_207, 0x27df
obj_pal gBattleAnimSpritePalette_167, 0x27e0
obj_pal gBattleAnimSpritePalette_209, 0x27e1
obj_pal gBattleAnimSpritePalette_210, 0x27e2
obj_pal gBattleAnimSpritePalette_211, 0x27e3
obj_pal gBattleAnimSpritePalette_211, 0x27e4
obj_pal gBattleAnimSpritePalette_211, 0x27e5
obj_pal gBattleAnimSpritePalette_064, 0x27e6
obj_pal gBattleAnimSpritePalette_215, 0x27e7
obj_pal gBattleAnimSpritePalette_216, 0x27e8
obj_pal gBattleAnimSpritePalette_217, 0x27e9
obj_pal gBattleAnimSpritePalette_218, 0x27ea
obj_pal gBattleAnimSpritePalette_219, 0x27eb
obj_pal gBattleAnimSpritePalette_220, 0x27ec
obj_pal gBattleAnimSpritePalette_221, 0x27ed
obj_pal gBattleAnimSpritePalette_222, 0x27ee
obj_pal gBattleAnimSpritePalette_223, 0x27ef
obj_pal gBattleAnimSpritePalette_224, 0x27f0
obj_pal gBattleAnimSpritePalette_225, 0x27f1
obj_pal gBattleAnimSpritePalette_226, 0x27f2
obj_pal gBattleAnimSpritePalette_226, 0x27f3
obj_pal gBattleAnimSpritePalette_228, 0x27f4
obj_pal gBattleAnimSpritePalette_229, 0x27f5
obj_pal gBattleAnimSpritePalette_230, 0x27f6
obj_pal gBattleAnimSpritePalette_231, 0x27f7
obj_pal gBattleAnimSpritePalette_231, 0x27f8
obj_pal gBattleAnimSpritePalette_233, 0x27f9
obj_pal gBattleAnimSpritePalette_234, 0x27fa
obj_pal gBattleAnimSpritePalette_235, 0x27fb
obj_pal gBattleAnimSpritePalette_236, 0x27fc
obj_pal gBattleAnimSpritePalette_237, 0x27fd
obj_pal gBattleAnimSpritePalette_238, 0x27fe
obj_pal gBattleAnimSpritePalette_239, 0x27ff
obj_pal gBattleAnimSpritePalette_240, 0x2800
obj_pal gBattleAnimSpritePalette_241, 0x2801
obj_pal gBattleAnimSpritePalette_242, 0x2802
obj_pal gBattleAnimSpritePalette_243, 0x2803
obj_pal gBattleAnimSpritePalette_244, 0x2804
obj_pal gBattleAnimSpritePalette_245, 0x2805
obj_pal gBattleAnimSpritePalette_245, 0x2806
obj_pal gBattleAnimSpritePalette_064, 0x2807
obj_pal gBattleAnimSpritePalette_248, 0x2808
obj_pal gBattleAnimSpritePalette_249, 0x2809
obj_pal gBattleAnimSpritePalette_249, 0x280a
obj_pal gBattleAnimSpritePalette_251, 0x280b
obj_pal gBattleAnimSpritePalette_252, 0x280c
obj_pal gBattleAnimSpritePalette_253, 0x280d
obj_pal gBattleAnimSpritePalette_254, 0x280e
obj_pal gBattleAnimSpritePalette_255, 0x280f
obj_pal gBattleAnimSpritePalette_256, 0x2810
obj_pal gBattleAnimSpritePalette_257, 0x2811
obj_pal gBattleAnimSpritePalette_258, 0x2812
obj_pal gBattleAnimSpritePalette_259, 0x2813
obj_pal gBattleAnimSpritePalette_260, 0x2814
obj_pal gBattleAnimSpritePalette_261, 0x2815
obj_pal gBattleAnimSpritePalette_262, 0x2816
obj_pal gBattleAnimSpritePalette_263, 0x2817
obj_pal gBattleAnimSpritePalette_264, 0x2818
obj_pal gBattleAnimSpritePalette_265, 0x2819
obj_pal gBattleAnimSpritePalette_266, 0x281a
obj_pal gBattleAnimSpritePalette_267, 0x281b
obj_pal gBattleAnimSpritePalette_268, 0x281c
obj_pal gBattleAnimSpritePalette_269, 0x281d
obj_pal gBattleAnimSpritePalette_270, 0x281e
obj_pal gBattleAnimSpritePalette_271, 0x281f
obj_pal gBattleAnimSpritePalette_272, 0x2820
obj_pal gBattleAnimSpritePalette_272, 0x2821
obj_pal gBattleAnimSpritePalette_274, 0x2822
obj_pal gBattleAnimSpritePalette_274, 0x2823
obj_pal gBattleAnimSpritePalette_274, 0x2824
obj_pal gBattleAnimSpritePalette_277, 0x2825
obj_pal gBattleAnimSpritePalette_278, 0x2826
obj_pal gBattleAnimSpritePalette_279, 0x2827
obj_pal gBattleAnimSpritePalette_280, 0x2828
obj_pal gBattleAnimSpritePalette_281, 0x2829
obj_pal gBattleAnimSpritePalette_282, 0x282a
obj_pal gBattleAnimSpritePalette_283, 0x282b
obj_pal gBattleAnimSpritePalette_284, 0x282c
obj_pal gBattleAnimSpritePalette_285, 0x282d
obj_pal gBattleAnimSpritePalette_286, 0x282e
obj_pal gBattleAnimSpritePalette_287, 0x282f
obj_pal gBattleAnimSpritePalette_288, 0x2830
.align 2
gBattleAnimBackgroundTable:: @ 8525D54
.4byte gBattleAnimBackgroundImage_00, gBattleAnimBackgroundPalette_00, gBattleAnimBackgroundTilemap_00
.4byte gBattleAnimBackgroundImage_00, gBattleAnimBackgroundPalette_00, gBattleAnimBackgroundTilemap_00
.4byte gBattleAnimBackgroundImage_02, gBattleAnimBackgroundPalette_02, gBattleAnimBackgroundTilemap_02
.4byte gBattleAnimBackgroundImage_03, gBattleAnimBackgroundPalette_03, gBattleAnimBackgroundTilemap_03
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_04, gBattleAnimBackgroundTilemap_04
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_04, gBattleAnimBackgroundTilemap_05
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_04, gBattleAnimBackgroundTilemap_06
.4byte gBattleAnimBackgroundImage_07, gBattleAnimBackgroundPalette_07, gBattleAnimBackgroundTilemap_07
.4byte gBattleAnimBackgroundImage_07, gBattleAnimBackgroundPalette_07, gBattleAnimBackgroundTilemap_08
.4byte gBattleAnimBackgroundImage_09, gBattleAnimBackgroundPalette_09, gBattleAnimBackgroundTilemap_09
.4byte gBattleAnimBackgroundImage_09, gBattleAnimBackgroundPalette_09, gBattleAnimBackgroundTilemap_10
.4byte gBattleAnimBackgroundImage_11, gBattleAnimBackgroundPalette_11, gBattleAnimBackgroundTilemap_11
.4byte gBattleAnimBackgroundImage_12, gBattleAnimBackgroundPalette_12, gBattleAnimBackgroundTilemap_12
.4byte gBattleAnimBackgroundImage_12, gBattleAnimBackgroundPalette_12, gBattleAnimBackgroundTilemap_13
.4byte gBattleAnimBackgroundImage_12, gBattleAnimBackgroundPalette_12, gBattleAnimBackgroundTilemap_14
.4byte gBattleAnimBackgroundImage_15, gBattleAnimBackgroundPalette_15, gBattleAnimBackgroundTilemap_15
.4byte gBattleAnimBackgroundImage_16, gBattleAnimBackgroundPalette_16, gBattleAnimBackgroundTilemap_16
.4byte gBattleAnimBackgroundImage_17, gBattleAnimBackgroundPalette_17, gBattleAnimBackgroundTilemap_17
.4byte gBattleAnimBackgroundImage_07, gBattleAnimBackgroundPalette_18, gBattleAnimBackgroundTilemap_07
.4byte gBattleAnimBackgroundImage_07, gBattleAnimBackgroundPalette_18, gBattleAnimBackgroundTilemap_08
.4byte gBattleAnimBackgroundImage_20, gBattleAnimBackgroundPalette_20, gBattleAnimBackgroundTilemap_20
.4byte gBattleAnimBackgroundImage_21, gBattleAnimBackgroundPalette_21, gBattleAnimBackgroundTilemap_21
.4byte gBattleAnimBackgroundImage_09, gBattleAnimBackgroundPalette_22, gBattleAnimBackgroundTilemap_09
.4byte gBattleAnimBackgroundImage_09, gBattleAnimBackgroundPalette_22, gBattleAnimBackgroundTilemap_10
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_24, gBattleAnimBackgroundTilemap_04
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_24, gBattleAnimBackgroundTilemap_05
.4byte gBattleAnimBackgroundImage_04, gBattleAnimBackgroundPalette_24, gBattleAnimBackgroundTilemap_06

View File

@ -1,6 +1,9 @@
#ifndef GUARD_BATTLE_ANIM_H
#define GUARD_BATTLE_ANIM_H
#include "battle.h"
#include "constants/battle_anim.h"
enum
{
BG_ANIM_SCREEN_SIZE,
@ -126,4 +129,49 @@ u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 arg2, u8 ballId);
u8 GetBattlerSpriteFinal_Y(u8, u16, u8);
extern const struct OamData gUnknown_08524944;
extern const struct OamData gUnknown_08524A8C;
extern const struct OamData gUnknown_08524904;
extern const struct OamData gUnknown_085249C4;
extern const struct OamData gUnknown_0852490C;
extern const struct OamData gUnknown_08524934;
extern const struct OamData gUnknown_08524974;
extern const struct OamData gUnknown_0852499C;
extern const struct OamData gUnknown_085249CC;
extern const struct OamData gUnknown_08524914;
extern const struct OamData gUnknown_0852496C;
extern const struct OamData gUnknown_08524A34;
extern const struct OamData gUnknown_08524A3C;
extern const struct OamData gUnknown_08524A94;
extern const struct OamData gUnknown_08524954;
extern const struct OamData gUnknown_08524AE4;
extern const struct OamData gUnknown_085249D4;
extern const struct OamData gUnknown_08524A9C;
extern const struct OamData gUnknown_08524ADC;
extern const struct OamData gUnknown_08524B14;
extern const struct OamData gUnknown_08524A54;
extern const struct OamData gUnknown_08524A14;
extern const struct OamData gUnknown_08524A1C;
extern const struct OamData gUnknown_085249BC;
extern const struct OamData gUnknown_08524AF4;
extern const struct OamData gUnknown_085249DC;
extern const struct OamData gUnknown_08524AFC;
extern const struct OamData gUnknown_08524B1C;
extern const struct OamData gUnknown_08524A04;
extern const struct OamData gUnknown_08524A2C;
extern const struct OamData gUnknown_08524AEC;
extern const struct OamData gUnknown_08524964;
extern const struct OamData gUnknown_08524B24;
extern const struct OamData gUnknown_08524A24;
extern const struct OamData gUnknown_08524AC4;
extern const struct OamData gUnknown_08524A84;
extern const struct OamData gUnknown_08524A64;
extern const struct OamData gUnknown_0852491C;
extern const struct OamData gUnknown_0852495C;
extern const struct OamData gUnknown_0852497C;
extern const struct OamData gUnknown_085249F4;
extern const struct OamData gUnknown_0852493C;
extern const struct OamData gUnknown_08524A5C;
extern const struct OamData gUnknown_08524A74;
#endif // GUARD_BATTLE_ANIM_H

View File

@ -7,305 +7,295 @@
// Particle ids.
#define ANIM_SPRITES_START 10000
#define ANIM_TAG_BONE (ANIM_SPRITES_START + 0)
#define ANIM_TAG_SPARK (ANIM_SPRITES_START + 1)
#define ANIM_TAG_PENCIL (ANIM_SPRITES_START + 2)
#define ANIM_TAG_AIR_WAVE (ANIM_SPRITES_START + 3)
#define ANIM_TAG_004 (ANIM_SPRITES_START + 4) // ?
#define ANIM_TAG_SWORD (ANIM_SPRITES_START + 5)
#define ANIM_TAG_SEED (ANIM_SPRITES_START + 6)
#define ANIM_TAG_007 (ANIM_SPRITES_START + 7) // ?
#define ANIM_TAG_008 (ANIM_SPRITES_START + 8) // ?
#define ANIM_TAG_GUST (ANIM_SPRITES_START + 9)
#define ANIM_TAG_ICE_CUBE (ANIM_SPRITES_START + 10)
#define ANIM_TAG_SPARK_2 (ANIM_SPRITES_START + 11)
#define ANIM_TAG_012 (ANIM_SPRITES_START + 12) // ?
#define ANIM_TAG_YELLOW_BALL (ANIM_SPRITES_START + 13)
#define ANIM_TAG_LOCK_ON (ANIM_SPRITES_START + 14)
#define ANIM_TAG_TIED_BAG (ANIM_SPRITES_START + 15)
#define ANIM_TAG_BLACK_SMOKE (ANIM_SPRITES_START + 16)
#define ANIM_TAG_BLACK_BALL (ANIM_SPRITES_START + 17)
#define ANIM_TAG_CONVERSION (ANIM_SPRITES_START + 18)
#define ANIM_TAG_019 (ANIM_SPRITES_START + 19) // ?
#define ANIM_TAG_HORN_HIT (ANIM_SPRITES_START + 20)
#define ANIM_TAG_021 (ANIM_SPRITES_START + 21) // ?
#define ANIM_TAG_022 (ANIM_SPRITES_START + 22) // ?
#define ANIM_TAG_023 (ANIM_SPRITES_START + 23) // ?
#define ANIM_TAG_024 (ANIM_SPRITES_START + 24) // ?
#define ANIM_TAG_025 (ANIM_SPRITES_START + 25) // ?
#define ANIM_TAG_026 (ANIM_SPRITES_START + 26) // ?
#define ANIM_TAG_GLARE (ANIM_SPRITES_START + 27)
#define ANIM_TAG_028 (ANIM_SPRITES_START + 28) // ?
#define ANIM_TAG_SMALL_EMBER (ANIM_SPRITES_START + 29)
#define ANIM_TAG_GRAY_SMOKE (ANIM_SPRITES_START + 30)
#define ANIM_TAG_BLUE_STAR (ANIM_SPRITES_START + 31)
#define ANIM_TAG_032 (ANIM_SPRITES_START + 32) // ?
#define ANIM_TAG_FIRE (ANIM_SPRITES_START + 33)
#define ANIM_TAG_034 (ANIM_SPRITES_START + 34) // ?
#define ANIM_TAG_035 (ANIM_SPRITES_START + 35) // ?
#define ANIM_TAG_036 (ANIM_SPRITES_START + 36) // ?
#define ANIM_TAG_LIGHTNING (ANIM_SPRITES_START + 37)
#define ANIM_TAG_038 (ANIM_SPRITES_START + 38) // ?
#define ANIM_TAG_CLAW_SLASH (ANIM_SPRITES_START + 39)
#define ANIM_TAG_040 (ANIM_SPRITES_START + 40) // ?
#define ANIM_TAG_041 (ANIM_SPRITES_START + 41) // ?
#define ANIM_TAG_042 (ANIM_SPRITES_START + 42) // ?
#define ANIM_TAG_ICE_CHUNK (ANIM_SPRITES_START + 43)
#define ANIM_TAG_044 (ANIM_SPRITES_START + 44) // ?
#define ANIM_TAG_PINK_HEART (ANIM_SPRITES_START + 45) // ?
#define ANIM_TAG_046 (ANIM_SPRITES_START + 46) // ?
#define ANIM_TAG_047 (ANIM_SPRITES_START + 47) // ?
#define ANIM_TAG_048 (ANIM_SPRITES_START + 48) // ?
#define ANIM_TAG_SPARKLE (ANIM_SPRITES_START + 49)
#define ANIM_TAG_050 (ANIM_SPRITES_START + 50) // ?
#define ANIM_TAG_051 (ANIM_SPRITES_START + 51)
#define ANIM_TAG_052 (ANIM_SPRITES_START + 52)
#define ANIM_TAG_053 (ANIM_SPRITES_START + 53)
#define ANIM_TAG_054 (ANIM_SPRITES_START + 54)
#define ANIM_TAG_RED_FIST (ANIM_SPRITES_START + 55)
#define ANIM_TAG_056 (ANIM_SPRITES_START + 56)
#define ANIM_TAG_057 (ANIM_SPRITES_START + 57)
#define ANIM_TAG_058 (ANIM_SPRITES_START + 58)
#define ANIM_TAG_059 (ANIM_SPRITES_START + 59)
#define ANIM_TAG_060 (ANIM_SPRITES_START + 60)
#define ANIM_TAG_061 (ANIM_SPRITES_START + 61)
#define ANIM_TAG_062 (ANIM_SPRITES_START + 62)
#define ANIM_TAG_063 (ANIM_SPRITES_START + 63)
#define ANIM_TAG_064 (ANIM_SPRITES_START + 64)
#define ANIM_TAG_065 (ANIM_SPRITES_START + 65)
#define ANIM_TAG_066 (ANIM_SPRITES_START + 66)
#define ANIM_TAG_067 (ANIM_SPRITES_START + 67)
#define ANIM_TAG_068 (ANIM_SPRITES_START + 68)
#define ANIM_TAG_069 (ANIM_SPRITES_START + 69)
#define ANIM_TAG_070 (ANIM_SPRITES_START + 70)
#define ANIM_TAG_071 (ANIM_SPRITES_START + 71)
#define ANIM_TAG_MUSIC_NOTES2 (ANIM_SPRITES_START + 72)
#define ANIM_TAG_DUCK (ANIM_SPRITES_START + 73)
#define ANIM_TAG_074 (ANIM_SPRITES_START + 74)
#define ANIM_TAG_075 (ANIM_SPRITES_START + 75)
#define ANIM_TAG_076 (ANIM_SPRITES_START + 76)
#define ANIM_TAG_077 (ANIM_SPRITES_START + 77)
#define ANIM_TAG_078 (ANIM_SPRITES_START + 78)
#define ANIM_TAG_079 (ANIM_SPRITES_START + 79)
#define ANIM_TAG_080 (ANIM_SPRITES_START + 80)
#define ANIM_TAG_081 (ANIM_SPRITES_START + 81)
#define ANIM_TAG_082 (ANIM_SPRITES_START + 82)
#define ANIM_TAG_083 (ANIM_SPRITES_START + 83)
#define ANIM_TAG_084 (ANIM_SPRITES_START + 84)
#define ANIM_TAG_085 (ANIM_SPRITES_START + 85)
#define ANIM_TAG_086 (ANIM_SPRITES_START + 86)
#define ANIM_TAG_ANGER (ANIM_SPRITES_START + 87)
#define ANIM_TAG_088 (ANIM_SPRITES_START + 88)
#define ANIM_TAG_089 (ANIM_SPRITES_START + 89)
#define ANIM_TAG_090 (ANIM_SPRITES_START + 90)
#define ANIM_TAG_091 (ANIM_SPRITES_START + 91)
#define ANIM_TAG_092 (ANIM_SPRITES_START + 92)
#define ANIM_TAG_093 (ANIM_SPRITES_START + 93)
#define ANIM_TAG_094 (ANIM_SPRITES_START + 94)
#define ANIM_TAG_095 (ANIM_SPRITES_START + 95)
#define ANIM_TAG_096 (ANIM_SPRITES_START + 96)
#define ANIM_TAG_BENT_SPOON (ANIM_SPRITES_START + 97)
#define ANIM_TAG_098 (ANIM_SPRITES_START + 98)
#define ANIM_TAG_MILK_BOTTLE (ANIM_SPRITES_START + 99)
#define ANIM_TAG_100 (ANIM_SPRITES_START + 100)
#define ANIM_TAG_101 (ANIM_SPRITES_START + 101)
#define ANIM_TAG_102 (ANIM_SPRITES_START + 102)
#define ANIM_TAG_103 (ANIM_SPRITES_START + 103)
#define ANIM_TAG_104 (ANIM_SPRITES_START + 104)
#define ANIM_TAG_105 (ANIM_SPRITES_START + 105)
#define ANIM_TAG_106 (ANIM_SPRITES_START + 106)
#define ANIM_TAG_107 (ANIM_SPRITES_START + 107)
#define ANIM_TAG_108 (ANIM_SPRITES_START + 108)
#define ANIM_TAG_109 (ANIM_SPRITES_START + 109)
#define ANIM_TAG_110 (ANIM_SPRITES_START + 110)
#define ANIM_TAG_111 (ANIM_SPRITES_START + 111)
#define ANIM_TAG_112 (ANIM_SPRITES_START + 112)
#define ANIM_TAG_113 (ANIM_SPRITES_START + 113)
#define ANIM_TAG_114 (ANIM_SPRITES_START + 114)
#define ANIM_TAG_115 (ANIM_SPRITES_START + 115)
#define ANIM_TAG_116 (ANIM_SPRITES_START + 116)
#define ANIM_TAG_117 (ANIM_SPRITES_START + 117)
#define ANIM_TAG_118 (ANIM_SPRITES_START + 118)
#define ANIM_TAG_119 (ANIM_SPRITES_START + 119)
#define ANIM_TAG_ITEM_BAG2 (ANIM_SPRITES_START + 120)
#define ANIM_TAG_121 (ANIM_SPRITES_START + 121)
#define ANIM_TAG_122 (ANIM_SPRITES_START + 122)
#define ANIM_TAG_123 (ANIM_SPRITES_START + 123)
#define ANIM_TAG_124 (ANIM_SPRITES_START + 124)
#define ANIM_TAG_125 (ANIM_SPRITES_START + 125)
#define ANIM_TAG_126 (ANIM_SPRITES_START + 126)
#define ANIM_TAG_127 (ANIM_SPRITES_START + 127)
#define ANIM_TAG_128 (ANIM_SPRITES_START + 128)
#define ANIM_TAG_129 (ANIM_SPRITES_START + 129)
#define ANIM_TAG_130 (ANIM_SPRITES_START + 130)
#define ANIM_TAG_131 (ANIM_SPRITES_START + 131)
#define ANIM_TAG_132 (ANIM_SPRITES_START + 132)
#define ANIM_TAG_133 (ANIM_SPRITES_START + 133)
#define ANIM_TAG_134 (ANIM_SPRITES_START + 134)
#define ANIM_TAG_135 (ANIM_SPRITES_START + 135)
#define ANIM_TAG_136 (ANIM_SPRITES_START + 136)
#define ANIM_TAG_137 (ANIM_SPRITES_START + 137)
#define ANIM_TAG_138 (ANIM_SPRITES_START + 138)
#define ANIM_TAG_139 (ANIM_SPRITES_START + 139)
#define ANIM_TAG_140 (ANIM_SPRITES_START + 140)
#define ANIM_TAG_141 (ANIM_SPRITES_START + 141)
#define ANIM_TAG_142 (ANIM_SPRITES_START + 142)
#define ANIM_TAG_143 (ANIM_SPRITES_START + 143)
#define ANIM_TAG_144 (ANIM_SPRITES_START + 144)
#define ANIM_TAG_145 (ANIM_SPRITES_START + 145)
#define ANIM_TAG_146 (ANIM_SPRITES_START + 146)
#define ANIM_TAG_147 (ANIM_SPRITES_START + 147)
#define ANIM_TAG_148 (ANIM_SPRITES_START + 148)
#define ANIM_TAG_149 (ANIM_SPRITES_START + 149)
#define ANIM_TAG_POISON_BUBBLE (ANIM_SPRITES_START + 150)
#define ANIM_TAG_TOXIC_BUBBLE (ANIM_SPRITES_START + 151)
#define ANIM_TAG_152 (ANIM_SPRITES_START + 152)
#define ANIM_TAG_153 (ANIM_SPRITES_START + 153)
#define ANIM_TAG_154 (ANIM_SPRITES_START + 154)
#define ANIM_TAG_155 (ANIM_SPRITES_START + 155)
#define ANIM_TAG_156 (ANIM_SPRITES_START + 156)
#define ANIM_TAG_157 (ANIM_SPRITES_START + 157)
#define ANIM_TAG_158 (ANIM_SPRITES_START + 158)
#define ANIM_TAG_159 (ANIM_SPRITES_START + 159)
#define ANIM_TAG_160 (ANIM_SPRITES_START + 160)
#define ANIM_TAG_161 (ANIM_SPRITES_START + 161)
#define ANIM_TAG_162 (ANIM_SPRITES_START + 162)
#define ANIM_TAG_163 (ANIM_SPRITES_START + 163)
#define ANIM_TAG_164 (ANIM_SPRITES_START + 164)
#define ANIM_TAG_165 (ANIM_SPRITES_START + 165)
#define ANIM_TAG_166 (ANIM_SPRITES_START + 166)
#define ANIM_TAG_167 (ANIM_SPRITES_START + 167)
#define ANIM_TAG_168 (ANIM_SPRITES_START + 168)
#define ANIM_TAG_169 (ANIM_SPRITES_START + 169)
#define ANIM_TAG_170 (ANIM_SPRITES_START + 170)
#define ANIM_TAG_171 (ANIM_SPRITES_START + 171)
#define ANIM_TAG_172 (ANIM_SPRITES_START + 172)
#define ANIM_TAG_173 (ANIM_SPRITES_START + 173)
#define ANIM_TAG_174 (ANIM_SPRITES_START + 174)
#define ANIM_TAG_175 (ANIM_SPRITES_START + 175)
#define ANIM_TAG_176 (ANIM_SPRITES_START + 176)
#define ANIM_TAG_177 (ANIM_SPRITES_START + 177)
#define ANIM_TAG_178 (ANIM_SPRITES_START + 178)
#define ANIM_TAG_179 (ANIM_SPRITES_START + 179)
#define ANIM_TAG_WEB_THREAD (ANIM_SPRITES_START + 180)
#define ANIM_TAG_SPIDER_WEB (ANIM_SPRITES_START + 181)
#define ANIM_TAG_182 (ANIM_SPRITES_START + 182)
#define ANIM_TAG_183 (ANIM_SPRITES_START + 183)
#define ANIM_TAG_184 (ANIM_SPRITES_START + 184)
#define ANIM_TAG_185 (ANIM_SPRITES_START + 185)
#define ANIM_TAG_186 (ANIM_SPRITES_START + 186)
#define ANIM_TAG_EYE (ANIM_SPRITES_START + 187)
#define ANIM_TAG_188 (ANIM_SPRITES_START + 188)
#define ANIM_TAG_189 (ANIM_SPRITES_START + 189)
#define ANIM_TAG_OPENING_EYE (ANIM_SPRITES_START + 190)
#define ANIM_TAG_191 (ANIM_SPRITES_START + 191)
#define ANIM_TAG_192 (ANIM_SPRITES_START + 192)
#define ANIM_TAG_193 (ANIM_SPRITES_START + 193)
#define ANIM_TAG_MOON (ANIM_SPRITES_START + 194)
#define ANIM_TAG_GREEN_SPARKLE (ANIM_SPRITES_START + 195)
#define ANIM_TAG_196 (ANIM_SPRITES_START + 196)
#define ANIM_TAG_197 (ANIM_SPRITES_START + 197)
#define ANIM_TAG_EXPLOSION (ANIM_SPRITES_START + 198)
#define ANIM_TAG_NAIL (ANIM_SPRITES_START + 199)
#define ANIM_TAG_200 (ANIM_SPRITES_START + 200)
#define ANIM_TAG_201 (ANIM_SPRITES_START + 201)
#define ANIM_TAG_BREAKING_EGG (ANIM_SPRITES_START + 202)
#define ANIM_TAG_203 (ANIM_SPRITES_START + 203)
#define ANIM_TAG_204 (ANIM_SPRITES_START + 204)
#define ANIM_TAG_BELL (ANIM_SPRITES_START + 205)
#define ANIM_TAG_MUSIC_NOTES (ANIM_SPRITES_START + 206)
#define ANIM_TAG_207 (ANIM_SPRITES_START + 207)
#define ANIM_TAG_208 (ANIM_SPRITES_START + 208)
#define ANIM_TAG_209 (ANIM_SPRITES_START + 209)
#define ANIM_TAG_PURPLE_HEART (ANIM_SPRITES_START + 210)
#define ANIM_TAG_211 (ANIM_SPRITES_START + 211)
#define ANIM_TAG_212 (ANIM_SPRITES_START + 212)
#define ANIM_TAG_213 (ANIM_SPRITES_START + 213)
#define ANIM_TAG_214 (ANIM_SPRITES_START + 214)
#define ANIM_TAG_215 (ANIM_SPRITES_START + 215)
#define ANIM_TAG_216 (ANIM_SPRITES_START + 216)
#define ANIM_TAG_217 (ANIM_SPRITES_START + 217)
#define ANIM_TAG_218 (ANIM_SPRITES_START + 218)
#define ANIM_TAG_219 (ANIM_SPRITES_START + 219)
#define ANIM_TAG_ANGEL (ANIM_SPRITES_START + 220)
#define ANIM_TAG_EVIL_ANGEL (ANIM_SPRITES_START + 221)
#define ANIM_TAG_222 (ANIM_SPRITES_START + 222)
#define ANIM_TAG_223 (ANIM_SPRITES_START + 223)
#define ANIM_TAG_ITEM_BAG (ANIM_SPRITES_START + 224)
#define ANIM_TAG_225 (ANIM_SPRITES_START + 225)
#define ANIM_TAG_226 (ANIM_SPRITES_START + 226)
#define ANIM_TAG_227 (ANIM_SPRITES_START + 227)
#define ANIM_TAG_LETTER_Z (ANIM_SPRITES_START + 228)
#define ANIM_TAG_229 (ANIM_SPRITES_START + 229)
#define ANIM_TAG_TRI_FORCE_TRIANGLE (ANIM_SPRITES_START + 230)
#define ANIM_TAG_231 (ANIM_SPRITES_START + 231)
#define ANIM_TAG_232 (ANIM_SPRITES_START + 232)
#define ANIM_TAG_233 (ANIM_SPRITES_START + 233)
#define ANIM_TAG_234 (ANIM_SPRITES_START + 234)
#define ANIM_TAG_235 (ANIM_SPRITES_START + 235)
#define ANIM_TAG_236 (ANIM_SPRITES_START + 236)
#define ANIM_TAG_237 (ANIM_SPRITES_START + 237)
#define ANIM_TAG_238 (ANIM_SPRITES_START + 238)
#define ANIM_TAG_239 (ANIM_SPRITES_START + 239)
#define ANIM_TAG_240 (ANIM_SPRITES_START + 240)
#define ANIM_TAG_GREEN_STAR (ANIM_SPRITES_START + 241)
#define ANIM_TAG_242 (ANIM_SPRITES_START + 242)
#define ANIM_TAG_243 (ANIM_SPRITES_START + 243)
#define ANIM_TAG_244 (ANIM_SPRITES_START + 244)
#define ANIM_TAG_245 (ANIM_SPRITES_START + 245)
#define ANIM_TAG_246 (ANIM_SPRITES_START + 246)
#define ANIM_TAG_HAND (ANIM_SPRITES_START + 247)
#define ANIM_TAG_248 (ANIM_SPRITES_START + 248)
#define ANIM_TAG_249 (ANIM_SPRITES_START + 249)
#define ANIM_TAG_X_SIGN (ANIM_SPRITES_START + 250)
#define ANIM_TAG_251 (ANIM_SPRITES_START + 251)
#define ANIM_TAG_252 (ANIM_SPRITES_START + 252)
#define ANIM_TAG_253 (ANIM_SPRITES_START + 253)
#define ANIM_TAG_254 (ANIM_SPRITES_START + 254)
#define ANIM_TAG_255 (ANIM_SPRITES_START + 255)
#define ANIM_TAG_256 (ANIM_SPRITES_START + 256)
#define ANIM_TAG_257 (ANIM_SPRITES_START + 257)
#define ANIM_TAG_MAGNIFYING_GLASS (ANIM_SPRITES_START + 258)
#define ANIM_TAG_259 (ANIM_SPRITES_START + 259)
#define ANIM_TAG_260 (ANIM_SPRITES_START + 260)
#define ANIM_TAG_261 (ANIM_SPRITES_START + 261)
#define ANIM_TAG_262 (ANIM_SPRITES_START + 262)
#define ANIM_TAG_263 (ANIM_SPRITES_START + 263)
#define ANIM_TAG_264 (ANIM_SPRITES_START + 264)
#define ANIM_TAG_265 (ANIM_SPRITES_START + 265)
#define ANIM_TAG_266 (ANIM_SPRITES_START + 266)
#define ANIM_TAG_267 (ANIM_SPRITES_START + 267)
#define ANIM_TAG_268 (ANIM_SPRITES_START + 268)
#define ANIM_TAG_269 (ANIM_SPRITES_START + 269)
#define ANIM_TAG_270 (ANIM_SPRITES_START + 270)
#define ANIM_TAG_271 (ANIM_SPRITES_START + 271)
#define ANIM_TAG_272 (ANIM_SPRITES_START + 272)
#define ANIM_TAG_273 (ANIM_SPRITES_START + 273)
#define ANIM_TAG_274 (ANIM_SPRITES_START + 274)
#define ANIM_TAG_275 (ANIM_SPRITES_START + 275)
#define ANIM_TAG_276 (ANIM_SPRITES_START + 276)
#define ANIM_TAG_277 (ANIM_SPRITES_START + 277)
#define ANIM_TAG_RECYCLE (ANIM_SPRITES_START + 278)
#define ANIM_TAG_279 (ANIM_SPRITES_START + 279)
#define ANIM_TAG_PROTECT (ANIM_SPRITES_START + 280)
#define ANIM_TAG_281 (ANIM_SPRITES_START + 281)
#define ANIM_TAG_282 (ANIM_SPRITES_START + 282)
#define ANIM_TAG_283 (ANIM_SPRITES_START + 283)
#define ANIM_TAG_284 (ANIM_SPRITES_START + 284)
#define ANIM_TAG_285 (ANIM_SPRITES_START + 285)
#define ANIM_TAG_286 (ANIM_SPRITES_START + 286)
#define ANIM_TAG_287 (ANIM_SPRITES_START + 287)
#define ANIM_TAG_288 (ANIM_SPRITES_START + 288)
#define ANIM_TAG_289 (ANIM_SPRITES_START + 289)
#define ANIM_TAG_290 (ANIM_SPRITES_START + 290)
#define ANIM_TAG_291 (ANIM_SPRITES_START + 291)
#define ANIM_TAG_292 (ANIM_SPRITES_START + 292)
#define ANIM_TAG_293 (ANIM_SPRITES_START + 293)
#define ANIM_TAG_294 (ANIM_SPRITES_START + 294)
#define ANIM_TAG_295 (ANIM_SPRITES_START + 295)
#define ANIM_TAG_296 (ANIM_SPRITES_START + 296)
#define ANIM_TAG_297 (ANIM_SPRITES_START + 297)
#define ANIM_TAG_298 (ANIM_SPRITES_START + 298)
#define ANIM_TAG_BONE (ANIM_SPRITES_START + 0)
#define ANIM_TAG_SPARK (ANIM_SPRITES_START + 1)
#define ANIM_TAG_PENCIL (ANIM_SPRITES_START + 2)
#define ANIM_TAG_AIR_WAVE (ANIM_SPRITES_START + 3)
#define ANIM_TAG_UNUSED_ORB (ANIM_SPRITES_START + 4)
#define ANIM_TAG_SWORD (ANIM_SPRITES_START + 5)
#define ANIM_TAG_SEED (ANIM_SPRITES_START + 6)
#define ANIM_TAG_UNUSED_EXPLOSION (ANIM_SPRITES_START + 7)
#define ANIM_TAG_UNUSED_PINK_ORB (ANIM_SPRITES_START + 8)
#define ANIM_TAG_GUST (ANIM_SPRITES_START + 9)
#define ANIM_TAG_ICE_CUBE (ANIM_SPRITES_START + 10)
#define ANIM_TAG_SPARK_2 (ANIM_SPRITES_START + 11)
#define ANIM_TAG_UNUSED_ORANGE (ANIM_SPRITES_START + 12)
#define ANIM_TAG_YELLOW_BALL (ANIM_SPRITES_START + 13)
#define ANIM_TAG_LOCK_ON (ANIM_SPRITES_START + 14)
#define ANIM_TAG_TIED_BAG (ANIM_SPRITES_START + 15)
#define ANIM_TAG_BLACK_SMOKE (ANIM_SPRITES_START + 16)
#define ANIM_TAG_BLACK_BALL (ANIM_SPRITES_START + 17)
#define ANIM_TAG_CONVERSION (ANIM_SPRITES_START + 18)
#define ANIM_TAG_UNUSED_GLASS (ANIM_SPRITES_START + 19)
#define ANIM_TAG_HORN_HIT (ANIM_SPRITES_START + 20)
#define ANIM_TAG_UNUSED_HIT (ANIM_SPRITES_START + 21)
#define ANIM_TAG_UNUSED_HIT_2 (ANIM_SPRITES_START + 22)
#define ANIM_TAG_UNUSED_BLUE_SHARDS (ANIM_SPRITES_START + 23)
#define ANIM_TAG_UNUSED_CLOSING_EYE (ANIM_SPRITES_START + 24)
#define ANIM_TAG_UNUSED_WAVING_HAND (ANIM_SPRITES_START + 25)
#define ANIM_TAG_UNUSED_HIT_DUPLICATE (ANIM_SPRITES_START + 26)
#define ANIM_TAG_LEER (ANIM_SPRITES_START + 27)
#define ANIM_TAG_UNUSED_BLUE_BURST (ANIM_SPRITES_START + 28)
#define ANIM_TAG_SMALL_EMBER (ANIM_SPRITES_START + 29)
#define ANIM_TAG_GRAY_SMOKE (ANIM_SPRITES_START + 30)
#define ANIM_TAG_BLUE_STAR (ANIM_SPRITES_START + 31)
#define ANIM_TAG_UNUSED_BUBBLE_BURST (ANIM_SPRITES_START + 32)
#define ANIM_TAG_FIRE (ANIM_SPRITES_START + 33)
#define ANIM_TAG_UNUSED_SPINNING_FIRE (ANIM_SPRITES_START + 34)
#define ANIM_TAG_FIRE_PLUME (ANIM_SPRITES_START + 35)
#define ANIM_TAG_UNUSED_LIGHTNING (ANIM_SPRITES_START + 36)
#define ANIM_TAG_LIGHTNING (ANIM_SPRITES_START + 37)
#define ANIM_TAG_UNUSED_CLAW_SLASH (ANIM_SPRITES_START + 38)
#define ANIM_TAG_CLAW_SLASH (ANIM_SPRITES_START + 39)
#define ANIM_TAG_UNUSED_SCRATCH (ANIM_SPRITES_START + 40)
#define ANIM_TAG_UNUSED_SCRATCH_2 (ANIM_SPRITES_START + 41)
#define ANIM_TAG_UNUSED_BUBBLE_BURST_2 (ANIM_SPRITES_START + 42)
#define ANIM_TAG_ICE_CHUNK (ANIM_SPRITES_START + 43)
#define ANIM_TAG_UNUSED_GLASS_2 (ANIM_SPRITES_START + 44)
#define ANIM_TAG_UNUSED_PINK_HEART (ANIM_SPRITES_START + 45)
#define ANIM_TAG_UNUSED_SAP_DRIP (ANIM_SPRITES_START + 46)
#define ANIM_TAG_UNUSED_SAP_DRIP_2 (ANIM_SPRITES_START + 47)
#define ANIM_TAG_SPARKLE_1 (ANIM_SPRITES_START + 48)
#define ANIM_TAG_SPARKLE_2 (ANIM_SPRITES_START + 49)
#define ANIM_TAG_HUMANOID_FOOT (ANIM_SPRITES_START + 50)
#define ANIM_TAG_UNUSED_MONSTER_FOOT (ANIM_SPRITES_START + 51)
#define ANIM_TAG_UNUSED_HUMANOID_HAND (ANIM_SPRITES_START + 52)
#define ANIM_TAG_NOISE_LINE (ANIM_SPRITES_START + 53)
#define ANIM_TAG_UNUSED_YELLOW_UNK (ANIM_SPRITES_START + 54)
#define ANIM_TAG_UNUSED_RED_FIST (ANIM_SPRITES_START + 55)
#define ANIM_TAG_SLAM_HIT (ANIM_SPRITES_START + 56)
#define ANIM_TAG_UNUSED_RING (ANIM_SPRITES_START + 57)
#define ANIM_TAG_ROCKS (ANIM_SPRITES_START + 58)
#define ANIM_TAG_UNUSED_Z (ANIM_SPRITES_START + 59)
#define ANIM_TAG_UNUSED_YELLOW_UNK_2 (ANIM_SPRITES_START + 60)
#define ANIM_TAG_UNUSED_AIR_SLASH (ANIM_SPRITES_START + 61)
#define ANIM_TAG_UNUSED_SPINNING_GREEN_ORBS (ANIM_SPRITES_START + 62)
#define ANIM_TAG_LEAF (ANIM_SPRITES_START + 63)
#define ANIM_TAG_FINGER (ANIM_SPRITES_START + 64)
#define ANIM_TAG_POISON_POWDER (ANIM_SPRITES_START + 65)
#define ANIM_TAG_UNUSED_BROWN_TRIANGLE (ANIM_SPRITES_START + 66)
#define ANIM_TAG_SLEEP_POWDER (ANIM_SPRITES_START + 67)
#define ANIM_TAG_STUN_SPORE (ANIM_SPRITES_START + 68)
#define ANIM_TAG_UNUSED_POWDER (ANIM_SPRITES_START + 69)
#define ANIM_TAG_SPARKLE_3 (ANIM_SPRITES_START + 70)
#define ANIM_TAG_SPARKLE_4 (ANIM_SPRITES_START + 71)
#define ANIM_TAG_MUSIC_NOTES (ANIM_SPRITES_START + 72)
#define ANIM_TAG_DUCK (ANIM_SPRITES_START + 73)
#define ANIM_TAG_MUD_SAND (ANIM_SPRITES_START + 74)
#define ANIM_TAG_ALERT (ANIM_SPRITES_START + 75)
#define ANIM_TAG_UNUSED_BLUE_FLAMES (ANIM_SPRITES_START + 76)
#define ANIM_TAG_UNUSED_BLUE_FLAMES_2 (ANIM_SPRITES_START + 77)
#define ANIM_TAG_UNUSED_SHOCK (ANIM_SPRITES_START + 78)
#define ANIM_TAG_SHOCK (ANIM_SPRITES_START + 79)
#define ANIM_TAG_UNUSED_BELL (ANIM_SPRITES_START + 80)
#define ANIM_TAG_UNUSED_PINK_GLOVE (ANIM_SPRITES_START + 81)
#define ANIM_TAG_UNUSED_BLUE_LINES (ANIM_SPRITES_START + 82)
#define ANIM_TAG_UNUSED_IMPACT (ANIM_SPRITES_START + 83)
#define ANIM_TAG_UNUSED_IMPACT_2 (ANIM_SPRITES_START + 84)
#define ANIM_TAG_UNUSED_RETICLE (ANIM_SPRITES_START + 85)
#define ANIM_TAG_BREATH (ANIM_SPRITES_START + 86)
#define ANIM_TAG_ANGER (ANIM_SPRITES_START + 87)
#define ANIM_TAG_UNUSED_SNOWBALL (ANIM_SPRITES_START + 88)
#define ANIM_TAG_UNUSED_VINE (ANIM_SPRITES_START + 89)
#define ANIM_TAG_UNUSED_SWORD (ANIM_SPRITES_START + 90)
#define ANIM_TAG_UNUSED_CLAPPING (ANIM_SPRITES_START + 91)
#define ANIM_TAG_UNUSED_RED_TUBE (ANIM_SPRITES_START + 92)
#define ANIM_TAG_AMNESIA (ANIM_SPRITES_START + 93)
#define ANIM_TAG_UNUSED_STRING (ANIM_SPRITES_START + 94)
#define ANIM_TAG_UNUSED_PENCIL (ANIM_SPRITES_START + 95)
#define ANIM_TAG_UNUSED_PETAL (ANIM_SPRITES_START + 96)
#define ANIM_TAG_BENT_SPOON (ANIM_SPRITES_START + 97)
#define ANIM_TAG_UNUSED_WEB (ANIM_SPRITES_START + 98)
#define ANIM_TAG_MILK_BOTTLE (ANIM_SPRITES_START + 99)
#define ANIM_TAG_COIN (ANIM_SPRITES_START + 100)
#define ANIM_TAG_UNUSED_CRACKED_EGG (ANIM_SPRITES_START + 101)
#define ANIM_TAG_UNUSED_HATCHED_EGG (ANIM_SPRITES_START + 102)
#define ANIM_TAG_UNUSED_FRESH_EGG (ANIM_SPRITES_START + 103)
#define ANIM_TAG_UNUSED_FANGS (ANIM_SPRITES_START + 104)
#define ANIM_TAG_UNUSED_EXPLOSION_2 (ANIM_SPRITES_START + 105)
#define ANIM_TAG_UNUSED_EXPLOSION_3 (ANIM_SPRITES_START + 106)
#define ANIM_TAG_UNUSED_WATER_DROPLET (ANIM_SPRITES_START + 107)
#define ANIM_TAG_UNUSED_WATER_DROPLET_2 (ANIM_SPRITES_START + 108)
#define ANIM_TAG_UNUSED_SEED (ANIM_SPRITES_START + 109)
#define ANIM_TAG_UNUSED_SPROUT (ANIM_SPRITES_START + 110)
#define ANIM_TAG_UNUSED_RED_WAND (ANIM_SPRITES_START + 111)
#define ANIM_TAG_UNUSED_PURPLE_GREEN_UNK (ANIM_SPRITES_START + 112)
#define ANIM_TAG_UNUSED_WATER_COLUMN (ANIM_SPRITES_START + 113)
#define ANIM_TAG_UNUSED_MUD_UNK (ANIM_SPRITES_START + 114)
#define ANIM_TAG_RAIN_DROPS (ANIM_SPRITES_START + 115)
#define ANIM_TAG_UNUSED_FURY_SWIPES (ANIM_SPRITES_START + 116)
#define ANIM_TAG_UNUSED_VINE_2 (ANIM_SPRITES_START + 117)
#define ANIM_TAG_UNUSED_TEETH (ANIM_SPRITES_START + 118)
#define ANIM_TAG_UNUSED_BONE (ANIM_SPRITES_START + 119)
#define ANIM_TAG_UNUSED_WHITE_BAG (ANIM_SPRITES_START + 120)
#define ANIM_TAG_UNUSED_UNKNOWN (ANIM_SPRITES_START + 121)
#define ANIM_TAG_UNUSED_PURPLE_CORAL (ANIM_SPRITES_START + 122)
#define ANIM_TAG_UNUSED_PURPLE_DROPLET (ANIM_SPRITES_START + 123)
#define ANIM_TAG_UNUSED_SHOCK_2 (ANIM_SPRITES_START + 124)
#define ANIM_TAG_UNUSED_CLOSING_EYE_2 (ANIM_SPRITES_START + 125)
#define ANIM_TAG_UNUSED_METAL_BALL (ANIM_SPRITES_START + 126)
#define ANIM_TAG_UNUSED_MONSTER_DOLL (ANIM_SPRITES_START + 127)
#define ANIM_TAG_UNUSED_WHIRLWIND (ANIM_SPRITES_START + 128)
#define ANIM_TAG_UNUSED_WHIRLWIND_2 (ANIM_SPRITES_START + 129)
#define ANIM_TAG_UNUSED_EXPLOSION_4 (ANIM_SPRITES_START + 130)
#define ANIM_TAG_UNUSED_EXPLOSION_5 (ANIM_SPRITES_START + 131)
#define ANIM_TAG_UNUSED_TONGUE (ANIM_SPRITES_START + 132)
#define ANIM_TAG_UNUSED_SMOKE (ANIM_SPRITES_START + 133)
#define ANIM_TAG_UNUSED_SMOKE_2 (ANIM_SPRITES_START + 134)
#define ANIM_TAG_IMPACT (ANIM_SPRITES_START + 135)
#define ANIM_TAG_CIRCLE_IMPACT (ANIM_SPRITES_START + 136)
#define ANIM_TAG_SCRATCH (ANIM_SPRITES_START + 137)
#define ANIM_TAG_CUT (ANIM_SPRITES_START + 138)
#define ANIM_TAG_SHARP_TEETH (ANIM_SPRITES_START + 139)
#define ANIM_TAG_RAINBOW_RINGS (ANIM_SPRITES_START + 140)
#define ANIM_TAG_ICE_CRYSTALS (ANIM_SPRITES_START + 141)
#define ANIM_TAG_ICE_SPIKES (ANIM_SPRITES_START + 142)
#define ANIM_TAG_HANDS_AND_FEET (ANIM_SPRITES_START + 143)
#define ANIM_TAG_MIST_CLOUD (ANIM_SPRITES_START + 144)
#define ANIM_TAG_CLAMP (ANIM_SPRITES_START + 145)
#define ANIM_TAG_BUBBLE (ANIM_SPRITES_START + 146)
#define ANIM_TAG_ORBS (ANIM_SPRITES_START + 147)
#define ANIM_TAG_WATER_IMPACT (ANIM_SPRITES_START + 148)
#define ANIM_TAG_WATER_ORB (ANIM_SPRITES_START + 149)
#define ANIM_TAG_POISON_BUBBLE (ANIM_SPRITES_START + 150)
#define ANIM_TAG_TOXIC_BUBBLE (ANIM_SPRITES_START + 151)
#define ANIM_TAG_SPIKES (ANIM_SPRITES_START + 152)
#define ANIM_TAG_HORN_HIT_2 (ANIM_SPRITES_START + 153)
#define ANIM_TAG_AIR_WAVE_2 (ANIM_SPRITES_START + 154)
#define ANIM_TAG_SMALL_BUBBLES (ANIM_SPRITES_START + 155)
#define ANIM_TAG_ROUND_SHADOW (ANIM_SPRITES_START + 156)
#define ANIM_TAG_SUNLIGHT (ANIM_SPRITES_START + 157)
#define ANIM_TAG_SPORE (ANIM_SPRITES_START + 158)
#define ANIM_TAG_FLOWER (ANIM_SPRITES_START + 159)
#define ANIM_TAG_RAZOR_LEAF (ANIM_SPRITES_START + 160)
#define ANIM_TAG_NEEDLE (ANIM_SPRITES_START + 161)
#define ANIM_TAG_WHIRLWIND_LINES (ANIM_SPRITES_START + 162)
#define ANIM_TAG_GOLD_RING (ANIM_SPRITES_START + 163)
#define ANIM_TAG_PURPLE_RING (ANIM_SPRITES_START + 164)
#define ANIM_TAG_BLUE_RING (ANIM_SPRITES_START + 165)
#define ANIM_TAG_GREEN_LIGHT_WALL (ANIM_SPRITES_START + 166)
#define ANIM_TAG_BLUE_LIGHT_WALL (ANIM_SPRITES_START + 167)
#define ANIM_TAG_RED_LIGHT_WALL (ANIM_SPRITES_START + 168)
#define ANIM_TAG_GRAY_LIGHT_WALL (ANIM_SPRITES_START + 169)
#define ANIM_TAG_ORANGE_LIGHT_WALL (ANIM_SPRITES_START + 170)
#define ANIM_TAG_BLACK_BALL_2 (ANIM_SPRITES_START + 171)
#define ANIM_TAG_PURPLE_GAS_CLOUD (ANIM_SPRITES_START + 172)
#define ANIM_TAG_SPARK_H (ANIM_SPRITES_START + 173)
#define ANIM_TAG_YELLOW_STAR (ANIM_SPRITES_START + 174)
#define ANIM_TAG_LARGE_FRESH_EGG (ANIM_SPRITES_START + 175)
#define ANIM_TAG_SHADOW_BALL (ANIM_SPRITES_START + 176)
#define ANIM_TAG_LICK (ANIM_SPRITES_START + 177)
#define ANIM_TAG_UNUSED_VOID_LINES (ANIM_SPRITES_START + 178)
#define ANIM_TAG_STRING (ANIM_SPRITES_START + 179)
#define ANIM_TAG_WEB_THREAD (ANIM_SPRITES_START + 180)
#define ANIM_TAG_SPIDER_WEB (ANIM_SPRITES_START + 181)
#define ANIM_TAG_UNUSED_LIGHTBULB (ANIM_SPRITES_START + 182)
#define ANIM_TAG_SLASH (ANIM_SPRITES_START + 183)
#define ANIM_TAG_FOCUS_ENERGY (ANIM_SPRITES_START + 184)
#define ANIM_TAG_SPHERE_TO_CUBE (ANIM_SPRITES_START + 185)
#define ANIM_TAG_TENDRILS (ANIM_SPRITES_START + 186)
#define ANIM_TAG_EYE (ANIM_SPRITES_START + 187)
#define ANIM_TAG_WHITE_SHADOW (ANIM_SPRITES_START + 188)
#define ANIM_TAG_TEAL_ALERT (ANIM_SPRITES_START + 189)
#define ANIM_TAG_OPENING_EYE (ANIM_SPRITES_START + 190)
#define ANIM_TAG_ROUND_WHITE_HALO (ANIM_SPRITES_START + 191)
#define ANIM_TAG_FANG_ATTACK (ANIM_SPRITES_START + 192)
#define ANIM_TAG_PURPLE_HAND_OUTLINE (ANIM_SPRITES_START + 193)
#define ANIM_TAG_MOON (ANIM_SPRITES_START + 194)
#define ANIM_TAG_GREEN_SPARKLE (ANIM_SPRITES_START + 195)
#define ANIM_TAG_SPIRAL (ANIM_SPRITES_START + 196)
#define ANIM_TAG_SNORE_Z (ANIM_SPRITES_START + 197)
#define ANIM_TAG_EXPLOSION (ANIM_SPRITES_START + 198)
#define ANIM_TAG_NAIL (ANIM_SPRITES_START + 199)
#define ANIM_TAG_GHOSTLY_SPIRIT (ANIM_SPRITES_START + 200)
#define ANIM_TAG_WARM_ROCK (ANIM_SPRITES_START + 201)
#define ANIM_TAG_BREAKING_EGG (ANIM_SPRITES_START + 202)
#define ANIM_TAG_THIN_RING (ANIM_SPRITES_START + 203)
#define ANIM_TAG_UNUSED_PUNCH_IMPACT (ANIM_SPRITES_START + 204)
#define ANIM_TAG_BELL (ANIM_SPRITES_START + 205)
#define ANIM_TAG_MUSIC_NOTES_2 (ANIM_SPRITES_START + 206)
#define ANIM_TAG_SPEED_DUST (ANIM_SPRITES_START + 207)
#define ANIM_TAG_TORN_METAL (ANIM_SPRITES_START + 208)
#define ANIM_TAG_THOUGHT_BUBBLE (ANIM_SPRITES_START + 209)
#define ANIM_TAG_MAGENTA_HEART (ANIM_SPRITES_START + 210)
#define ANIM_TAG_ELECTRIC_ORBS (ANIM_SPRITES_START + 211)
#define ANIM_TAG_CIRCLE_OF_LIGHT (ANIM_SPRITES_START + 212)
#define ANIM_TAG_ELECTRICITY (ANIM_SPRITES_START + 213)
#define ANIM_TAG_FINGER_2 (ANIM_SPRITES_START + 214)
#define ANIM_TAG_MOVEMENT_WAVES (ANIM_SPRITES_START + 215)
#define ANIM_TAG_RED_HEART (ANIM_SPRITES_START + 216)
#define ANIM_TAG_RED_ORB (ANIM_SPRITES_START + 217)
#define ANIM_TAG_EYE_SPARKLE (ANIM_SPRITES_START + 218)
#define ANIM_TAG_PINK_HEART (ANIM_SPRITES_START + 219)
#define ANIM_TAG_ANGEL (ANIM_SPRITES_START + 220)
#define ANIM_TAG_DEVIL (ANIM_SPRITES_START + 221)
#define ANIM_TAG_SWIPE (ANIM_SPRITES_START + 222)
#define ANIM_TAG_ROOTS (ANIM_SPRITES_START + 223)
#define ANIM_TAG_ITEM_BAG (ANIM_SPRITES_START + 224)
#define ANIM_TAG_JAGGED_MUSIC_NOTE (ANIM_SPRITES_START + 225)
#define ANIM_TAG_POKEBALL (ANIM_SPRITES_START + 226)
#define ANIM_TAG_SPOTLIGHT (ANIM_SPRITES_START + 227)
#define ANIM_TAG_LETTER_Z (ANIM_SPRITES_START + 228)
#define ANIM_TAG_RAPID_SPIN (ANIM_SPRITES_START + 229)
#define ANIM_TAG_TRI_FORCE_TRIANGLE (ANIM_SPRITES_START + 230)
#define ANIM_TAG_WISP_ORB (ANIM_SPRITES_START + 231)
#define ANIM_TAG_WISP_FIRE (ANIM_SPRITES_START + 232)
#define ANIM_TAG_GOLD_STARS (ANIM_SPRITES_START + 233)
#define ANIM_TAG_ECLIPSING_ORB (ANIM_SPRITES_START + 234)
#define ANIM_TAG_GRAY_ORB (ANIM_SPRITES_START + 235)
#define ANIM_TAG_BLUE_ORB (ANIM_SPRITES_START + 236)
#define ANIM_TAG_RED_ORB_2 (ANIM_SPRITES_START + 237)
#define ANIM_TAG_PINK_PETAL (ANIM_SPRITES_START + 238)
#define ANIM_TAG_PAIN_SPLIT (ANIM_SPRITES_START + 239)
#define ANIM_TAG_CONFETTI (ANIM_SPRITES_START + 240)
#define ANIM_TAG_GREEN_STAR (ANIM_SPRITES_START + 241)
#define ANIM_TAG_PINK_CLOUD (ANIM_SPRITES_START + 242)
#define ANIM_TAG_SWEAT_DROP (ANIM_SPRITES_START + 243)
#define ANIM_TAG_GUARD_RING (ANIM_SPRITES_START + 244)
#define ANIM_TAG_PURPLE_SCRATCH (ANIM_SPRITES_START + 245)
#define ANIM_TAG_PURPLE_SWIPE (ANIM_SPRITES_START + 246)
#define ANIM_TAG_TAG_HAND (ANIM_SPRITES_START + 247)
#define ANIM_TAG_SMALL_RED_EYE (ANIM_SPRITES_START + 248)
#define ANIM_TAG_HOLLOW_ORB (ANIM_SPRITES_START + 249)
#define ANIM_TAG_X_SIGN (ANIM_SPRITES_START + 250)
#define ANIM_TAG_BLUEGREEN_ORB (ANIM_SPRITES_START + 251)
#define ANIM_TAG_PAW_PRINT (ANIM_SPRITES_START + 252)
#define ANIM_TAG_PURPLE_FLAME (ANIM_SPRITES_START + 253)
#define ANIM_TAG_RED_BALL (ANIM_SPRITES_START + 254)
#define ANIM_TAG_SMELLINGSALT_EFFECT (ANIM_SPRITES_START + 255)
#define ANIM_TAG_METEOR (ANIM_SPRITES_START + 256)
#define ANIM_TAG_FLAT_ROCK (ANIM_SPRITES_START + 257)
#define ANIM_TAG_MAGNIFYING_GLASS (ANIM_SPRITES_START + 258)
#define ANIM_TAG_BROWN_ORB (ANIM_SPRITES_START + 259)
#define ANIM_TAG_METAL_SOUND_WAVES (ANIM_SPRITES_START + 260)
#define ANIM_TAG_FLYING_DIRT (ANIM_SPRITES_START + 261)
#define ANIM_TAG_ICICLE_SPEAR (ANIM_SPRITES_START + 262)
#define ANIM_TAG_HAIL (ANIM_SPRITES_START + 263)
#define ANIM_TAG_GLOWY_RED_ORB (ANIM_SPRITES_START + 264)
#define ANIM_TAG_GLOWY_GREEN_ORB (ANIM_SPRITES_START + 265)
#define ANIM_TAG_GREEN_SPIKE (ANIM_SPRITES_START + 266)
#define ANIM_TAG_WHITE_CIRCLE_OF_LIGHT (ANIM_SPRITES_START + 267)
#define ANIM_TAG_GLOWY_BLUE_ORB (ANIM_SPRITES_START + 268)
#define ANIM_TAG_UNUSED_RED_BRICK (ANIM_SPRITES_START + 269)
#define ANIM_TAG_WHITE_FEATHER (ANIM_SPRITES_START + 270)
#define ANIM_TAG_SPARKLE_6 (ANIM_SPRITES_START + 271)
#define ANIM_TAG_SPLASH (ANIM_SPRITES_START + 272)
#define ANIM_TAG_SWEAT_BEAD (ANIM_SPRITES_START + 273)
#define ANIM_TAG_UNUSED_GEM_1 (ANIM_SPRITES_START + 274)
#define ANIM_TAG_UNUSED_GEM_2 (ANIM_SPRITES_START + 275)
#define ANIM_TAG_UNUSED_GEM_3 (ANIM_SPRITES_START + 276)
#define ANIM_TAG_SLAM_HIT_2 (ANIM_SPRITES_START + 277)
#define ANIM_TAG_RECYCLE (ANIM_SPRITES_START + 278)
#define ANIM_TAG_UNUSED_RED_PARTICLES (ANIM_SPRITES_START + 279)
#define ANIM_TAG_PROTECT (ANIM_SPRITES_START + 280)
#define ANIM_TAG_DIRT_MOUND (ANIM_SPRITES_START + 281)
#define ANIM_TAG_SHOCK_3 (ANIM_SPRITES_START + 282)
#define ANIM_TAG_WEATHER_BALL (ANIM_SPRITES_START + 283)
#define ANIM_TAG_BIRD (ANIM_SPRITES_START + 284)
#define ANIM_TAG_CROSS_IMPACT (ANIM_SPRITES_START + 285)
#define ANIM_TAG_SLASH_2 (ANIM_SPRITES_START + 286)
#define ANIM_TAG_WHIP_HIT (ANIM_SPRITES_START + 287)
#define ANIM_TAG_BLUE_RING_2 (ANIM_SPRITES_START + 288)
// battlers
#define ANIM_ATTACKER 0
@ -420,4 +410,33 @@
#define ANIM_WEATHER_SANDSTORM 3
#define ANIM_WEATHER_HAIL 4
// Battle mon back animations.
#define BACK_ANIM_NONE 0x00
#define BACK_ANIM_H_SLIDE_QUICK 0x01
#define BACK_ANIM_H_SLIDE 0x02
#define BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1 0x03
#define BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2 0x04
#define BACK_ANIM_SHRINK_GROW_1 0x05
#define BACK_ANIM_GROW_1 0x06
#define BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE 0x07
#define BACK_ANIM_HORIZONTAL_SHAKE 0x08
#define BACK_ANIM_VERTICAL_SHAKE 0x09
#define BACK_ANIM_V_SHAKE_WITH_H_SLIDE 0x0a
#define BACK_ANIM_VERTICAL_STRETCH 0x0b
#define BACK_ANIM_HORIZONTAL_STRETCH 0x0c
#define BACK_ANIM_GROW_2 0x0d
#define BACK_ANIM_V_SHAKE_WITH_PAUSE 0x0e
#define BACK_ANIM_CIRCLE_MOVE_CLOCKWISE 0x0f
#define BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL 0x10
#define BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE 0x11
#define BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE 0x12
#define BACK_ANIM_DIP_RIGHT_SIDE 0x13
#define BACK_ANIM_SHRINK_GROW_2 0x14
#define BACK_ANIM_JOLT_RIGHT 0x15
#define BACK_ANIM_FLASH_YELLOW_WITH_SHAKE 0x16
#define BACK_ANIM_FADE_RED_WITH_SHAKE 0x17
#define BACK_ANIM_FADE_GREEN_WITH_SHAKE 0x18
#define BACK_ANIM_FADE_BLUE_WITH_SHAKE 0x19
#endif // GUARD_CONSTANTS_BATTLE_ANIM_H

View File

@ -4099,4 +4099,602 @@ extern const u32 gUnknown_08D83C3C[];
extern const u32 gUnknown_08D83900[];
extern const u32 gBattleFrontierGfx_DomeOptions[];
extern const u32 gBattleAnimSpriteSheet_000[];
extern const u32 gBattleAnimSpriteSheet_001[];
extern const u32 gBattleAnimSpriteSheet_002[];
extern const u32 gBattleAnimSpriteSheet_003[];
extern const u32 gBattleAnimSpriteSheet_004[];
extern const u32 gBattleAnimSpriteSheet_005[];
extern const u32 gBattleAnimSpriteSheet_006[];
extern const u32 gBattleAnimSpriteSheet_007[];
extern const u32 gBattleAnimSpriteSheet_008[];
extern const u32 gBattleAnimSpriteSheet_009[];
extern const u32 gBattleAnimSpriteSheet_010[];
extern const u32 gBattleAnimSpriteSheet_011[];
extern const u32 gBattleAnimSpriteSheet_012[];
extern const u32 gBattleAnimSpriteSheet_013[];
extern const u32 gBattleAnimSpriteSheet_014[];
extern const u32 gBattleAnimSpriteSheet_015[];
extern const u32 gBattleAnimSpriteSheet_016[];
extern const u32 gBattleAnimSpriteSheet_017[];
extern const u32 gBattleAnimSpriteSheet_018[];
extern const u32 gBattleAnimSpriteSheet_019[];
extern const u32 gBattleAnimSpriteSheet_020[];
extern const u32 gBattleAnimSpriteSheet_021[];
extern const u32 gBattleAnimSpriteSheet_021[];
extern const u32 gBattleAnimSpriteSheet_023[];
extern const u32 gBattleAnimSpriteSheet_024[];
extern const u32 gBattleAnimSpriteSheet_025[];
extern const u32 gBattleAnimSpriteSheet_026[];
extern const u32 gBattleAnimSpriteSheet_027[];
extern const u32 gBattleAnimSpriteSheet_028[];
extern const u32 gBattleAnimSpriteSheet_029[];
extern const u32 gBattleAnimSpriteSheet_030[];
extern const u32 gBattleAnimSpriteSheet_031[];
extern const u32 gBattleAnimSpriteSheet_032[];
extern const u32 gBattleAnimSpriteSheet_033[];
extern const u32 gBattleAnimSpriteSheet_034[];
extern const u32 gBattleAnimSpriteSheet_035[];
extern const u32 gBattleAnimSpriteSheet_036[];
extern const u32 gBattleAnimSpriteSheet_037[];
extern const u32 gBattleAnimSpriteSheet_038[];
extern const u32 gBattleAnimSpriteSheet_039[];
extern const u32 gBattleAnimSpriteSheet_040[];
extern const u32 gBattleAnimSpriteSheet_041[];
extern const u32 gBattleAnimSpriteSheet_042[];
extern const u32 gBattleAnimSpriteSheet_043[];
extern const u32 gBattleAnimSpriteSheet_044[];
extern const u32 gBattleAnimSpriteSheet_045[];
extern const u32 gBattleAnimSpriteSheet_046[];
extern const u32 gBattleAnimSpriteSheet_046[];
extern const u32 gBattleAnimSpriteSheet_048[];
extern const u32 gBattleAnimSpriteSheet_048[];
extern const u32 gBattleAnimSpriteSheet_050[];
extern const u32 gBattleAnimSpriteSheet_051[];
extern const u32 gBattleAnimSpriteSheet_052[];
extern const u32 gBattleAnimSpriteSheet_053[];
extern const u32 gBattleAnimSpriteSheet_054[];
extern const u32 gBattleAnimSpriteSheet_055[];
extern const u32 gBattleAnimSpriteSheet_056[];
extern const u32 gBattleAnimSpriteSheet_057[];
extern const u32 gBattleAnimSpriteSheet_058[];
extern const u32 gBattleAnimSpriteSheet_059[];
extern const u32 gBattleAnimSpriteSheet_060[];
extern const u32 gBattleAnimSpriteSheet_061[];
extern const u32 gBattleAnimSpriteSheet_062[];
extern const u32 gBattleAnimSpriteSheet_063[];
extern const u32 gBattleAnimSpriteSheet_064[];
extern const u32 gBattleAnimSpriteSheet_065[];
extern const u32 gBattleAnimSpriteSheet_066[];
extern const u32 gBattleAnimSpriteSheet_070[];
extern const u32 gBattleAnimSpriteSheet_071[];
extern const u32 gBattleAnimSpriteSheet_072[];
extern const u32 gBattleAnimSpriteSheet_073[];
extern const u32 gBattleAnimSpriteSheet_074[];
extern const u32 gBattleAnimSpriteSheet_075[];
extern const u32 gBattleAnimSpriteSheet_076[];
extern const u32 gBattleAnimSpriteSheet_077[];
extern const u32 gBattleAnimSpriteSheet_078[];
extern const u32 gBattleAnimSpriteSheet_079[];
extern const u32 gBattleAnimSpriteSheet_080[];
extern const u32 gBattleAnimSpriteSheet_081[];
extern const u32 gBattleAnimSpriteSheet_082[];
extern const u32 gBattleAnimSpriteSheet_083[];
extern const u32 gBattleAnimSpriteSheet_084[];
extern const u32 gBattleAnimSpriteSheet_085[];
extern const u32 gBattleAnimSpriteSheet_086[];
extern const u32 gBattleAnimSpriteSheet_087[];
extern const u32 gBattleAnimSpriteSheet_088[];
extern const u32 gBattleAnimSpriteSheet_089[];
extern const u32 gBattleAnimSpriteSheet_090[];
extern const u32 gBattleAnimSpriteSheet_091[];
extern const u32 gBattleAnimSpriteSheet_092[];
extern const u32 gBattleAnimSpriteSheet_093[];
extern const u32 gBattleAnimSpriteSheet_094[];
extern const u32 gBattleAnimSpriteSheet_095[];
extern const u32 gBattleAnimSpriteSheet_096[];
extern const u32 gBattleAnimSpriteSheet_097[];
extern const u32 gBattleAnimSpriteSheet_098[];
extern const u32 gBattleAnimSpriteSheet_099[];
extern const u32 gBattleAnimSpriteSheet_100[];
extern const u32 gBattleAnimSpriteSheet_101[];
extern const u32 gBattleAnimSpriteSheet_102[];
extern const u32 gBattleAnimSpriteSheet_103[];
extern const u32 gBattleAnimSpriteSheet_104[];
extern const u32 gBattleAnimSpriteSheet_105[];
extern const u32 gBattleAnimSpriteSheet_106[];
extern const u32 gBattleAnimSpriteSheet_107[];
extern const u32 gBattleAnimSpriteSheet_108[];
extern const u32 gBattleAnimSpriteSheet_109[];
extern const u32 gBattleAnimSpriteSheet_110[];
extern const u32 gBattleAnimSpriteSheet_111[];
extern const u32 gBattleAnimSpriteSheet_112[];
extern const u32 gBattleAnimSpriteSheet_113[];
extern const u32 gBattleAnimSpriteSheet_114[];
extern const u32 gBattleAnimSpriteSheet_115[];
extern const u32 gBattleAnimSpriteSheet_116[];
extern const u32 gBattleAnimSpriteSheet_117[];
extern const u32 gBattleAnimSpriteSheet_118[];
extern const u32 gBattleAnimSpriteSheet_119[];
extern const u32 gBattleAnimSpriteSheet_120[];
extern const u32 gBattleAnimSpriteSheet_121[];
extern const u32 gBattleAnimSpriteSheet_122[];
extern const u32 gBattleAnimSpriteSheet_123[];
extern const u32 gBattleAnimSpriteSheet_124[];
extern const u32 gBattleAnimSpriteSheet_125[];
extern const u32 gBattleAnimSpriteSheet_126[];
extern const u32 gBattleAnimSpriteSheet_127[];
extern const u32 gBattleAnimSpriteSheet_128[];
extern const u32 gBattleAnimSpriteSheet_129[];
extern const u32 gBattleAnimSpriteSheet_130[];
extern const u32 gBattleAnimSpriteSheet_131[];
extern const u32 gBattleAnimSpriteSheet_132[];
extern const u32 gBattleAnimSpriteSheet_133[];
extern const u32 gBattleAnimSpriteSheet_134[];
extern const u32 gBattleAnimSpriteSheet_135[];
extern const u32 gBattleAnimSpriteSheet_136[];
extern const u32 gBattleAnimSpriteSheet_137[];
extern const u32 gBattleAnimSpriteSheet_138[];
extern const u32 gBattleAnimSpriteSheet_139[];
extern const u32 gBattleAnimSpriteSheet_140[];
extern const u32 gBattleAnimSpriteSheet_141[];
extern const u32 gBattleAnimSpriteSheet_142[];
extern const u32 gBattleAnimSpriteSheet_143[];
extern const u32 gBattleAnimSpriteSheet_144[];
extern const u32 gBattleAnimSpriteSheet_145[];
//extern const struct CompressedSpriteSheet gBattleAnimSpriteSheet_146[];
extern const u32 gBattleAnimSpriteSheet_146[];
extern const u32 gBattleAnimSpriteSheet_147[];
extern const u32 gBattleAnimSpriteSheet_148[];
extern const u32 gBattleAnimSpriteSheet_149[];
extern const u32 gBattleAnimSpriteSheet_150[];
extern const u32 gBattleAnimSpriteSheet_151[];
extern const u32 gBattleAnimSpriteSheet_152[];
extern const u32 gBattleAnimSpriteSheet_153[];
extern const u32 gBattleAnimSpriteSheet_154[];
extern const u32 gBattleAnimSpriteSheet_155[];
extern const u32 gBattleAnimSpriteSheet_156[];
extern const u32 gBattleAnimSpriteSheet_157[];
extern const u32 gBattleAnimSpriteSheet_158[];
extern const u32 gBattleAnimSpriteSheet_159[];
extern const u32 gBattleAnimSpriteSheet_160[];
extern const u32 gBattleAnimSpriteSheet_161[];
extern const u32 gBattleAnimSpriteSheet_162[];
extern const u32 gBattleAnimSpriteSheet_163[];
extern const u32 gBattleAnimSpriteSheet_166[];
extern const u32 gBattleAnimSpriteSheet_171[];
extern const u32 gBattleAnimSpriteSheet_173[];
extern const u32 gBattleAnimSpriteSheet_174[];
extern const u32 gBattleAnimSpriteSheet_175[];
extern const u32 gBattleAnimSpriteSheet_176[];
extern const u32 gBattleAnimSpriteSheet_177[];
extern const u32 gBattleAnimSpriteSheet_178[];
extern const u32 gBattleAnimSpriteSheet_179[];
extern const u32 gBattleAnimSpriteSheet_180[];
extern const u32 gBattleAnimSpriteSheet_181[];
extern const u32 gBattleAnimSpriteSheet_182[];
extern const u32 gBattleAnimSpriteSheet_183[];
extern const u32 gBattleAnimSpriteSheet_184[];
extern const u32 gBattleAnimSpriteSheet_185[];
extern const u32 gBattleAnimSpriteSheet_186[];
extern const u32 gBattleAnimSpriteSheet_187[];
extern const u32 gBattleAnimSpriteSheet_188[];
extern const u32 gBattleAnimSpriteSheet_189[];
extern const u32 gBattleAnimSpriteSheet_190[];
extern const u32 gBattleAnimSpriteSheet_191[];
extern const u32 gBattleAnimSpriteSheet_192[];
extern const u32 gBattleAnimSpriteSheet_193[];
extern const u32 gBattleAnimSpriteSheet_194[];
extern const u32 gBattleAnimSpriteSheet_195[];
extern const u32 gBattleAnimSpriteSheet_196[];
extern const u32 gBattleAnimSpriteSheet_197[];
extern const u32 gBattleAnimSpriteSheet_198[];
extern const u32 gBattleAnimSpriteSheet_199[];
extern const u32 gBattleAnimSpriteSheet_200[];
extern const u32 gBattleAnimSpriteSheet_201[];
extern const u32 gBattleAnimSpriteSheet_202[];
extern const u32 gBattleAnimSpriteSheet_203[];
extern const u32 gBattleAnimSpriteSheet_204[];
extern const u32 gBattleAnimSpriteSheet_205[];
extern const u32 gBattleAnimSpriteSheet_206[];
extern const u32 gBattleAnimSpriteSheet_207[];
extern const u32 gBattleAnimSpriteSheet_208[];
extern const u32 gBattleAnimSpriteSheet_209[];
extern const u32 gBattleAnimSpriteSheet_210[];
extern const u32 gBattleAnimSpriteSheet_211[];
extern const u32 gBattleAnimSpriteSheet_212[];
extern const u32 gBattleAnimSpriteSheet_213[];
extern const u32 gBattleAnimSpriteSheet_214[];
extern const u32 gBattleAnimSpriteSheet_215[];
extern const u32 gBattleAnimSpriteSheet_210[];
extern const u32 gBattleAnimSpriteSheet_217[];
extern const u32 gBattleAnimSpriteSheet_218[];
extern const u32 gBattleAnimSpriteSheet_210[];
extern const u32 gBattleAnimSpriteSheet_220[];
extern const u32 gBattleAnimSpriteSheet_221[];
extern const u32 gBattleAnimSpriteSheet_222[];
extern const u32 gBattleAnimSpriteSheet_223[];
extern const u32 gBattleAnimSpriteSheet_224[];
extern const u32 gBattleAnimSpriteSheet_225[];
extern const u32 gBattleAnimSpriteSheet_226[];
extern const u32 gBattleAnimSpriteSheet_227[];
extern const u32 gBattleAnimSpriteSheet_228[];
extern const u32 gBattleAnimSpriteSheet_229[];
extern const u32 gBattleAnimSpriteSheet_230[];
extern const u32 gBattleAnimSpriteSheet_231[];
extern const u32 gBattleAnimSpriteSheet_232[];
extern const u32 gBattleAnimSpriteSheet_233[];
extern const u32 gBattleAnimSpriteSheet_234[];
extern const u32 gBattleAnimSpriteSheet_235[];
extern const u32 gBattleAnimSpriteSheet_235[];
extern const u32 gBattleAnimSpriteSheet_235[];
extern const u32 gBattleAnimSpriteSheet_238[];
extern const u32 gBattleAnimSpriteSheet_239[];
extern const u32 gBattleAnimSpriteSheet_240[];
extern const u32 gBattleAnimSpriteSheet_241[];
extern const u32 gBattleAnimSpriteSheet_242[];
extern const u32 gBattleAnimSpriteSheet_243[];
extern const u32 gBattleAnimSpriteSheet_244[];
extern const u32 gBattleAnimSpriteSheet_245[];
extern const u32 gBattleAnimSpriteSheet_246[];
extern const u32 gBattleAnimSpriteSheet_247[];
extern const u32 gBattleAnimSpriteSheet_248[];
extern const u32 gBattleAnimSpriteSheet_249[];
extern const u32 gBattleAnimSpriteSheet_250[];
extern const u32 gBattleAnimSpriteSheet_251[];
extern const u32 gBattleAnimSpriteSheet_252[];
extern const u32 gBattleAnimSpriteSheet_253[];
extern const u32 gBattleAnimSpriteSheet_254[];
extern const u32 gBattleAnimSpriteSheet_255[];
extern const u32 gBattleAnimSpriteSheet_256[];
extern const u32 gBattleAnimSpriteSheet_257[];
extern const u32 gBattleAnimSpriteSheet_258[];
extern const u32 gBattleAnimSpriteSheet_260[];
extern const u32 gBattleAnimSpriteSheet_261[];
extern const u32 gBattleAnimSpriteSheet_262[];
extern const u32 gBattleAnimSpriteSheet_263[];
extern const u32 gBattleAnimSpriteSheet_264[];
extern const u32 gBattleAnimSpriteSheet_266[];
extern const u32 gBattleAnimSpriteSheet_269[];
extern const u32 gBattleAnimSpriteSheet_270[];
extern const u32 gBattleAnimSpriteSheet_271[];
extern const u32 gBattleAnimSpriteSheet_272[];
extern const u32 gBattleAnimSpriteSheet_273[];
extern const u32 gBattleAnimSpriteSheet_274[];
extern const u32 gBattleAnimSpriteSheet_275[];
extern const u32 gBattleAnimSpriteSheet_276[];
extern const u32 gBattleAnimSpriteSheet_277[];
extern const u32 gBattleAnimSpriteSheet_278[];
extern const u32 gBattleAnimSpriteSheet_279[];
extern const u32 gBattleAnimSpriteSheet_280[];
extern const u32 gBattleAnimSpriteSheet_281[];
extern const u32 gBattleAnimSpriteSheet_282[];
extern const u32 gBattleAnimSpriteSheet_283[];
extern const u32 gBattleAnimSpriteSheet_284[];
extern const u32 gBattleAnimSpriteSheet_285[];
extern const u32 gBattleAnimSpritePalette_000[];
extern const u32 gBattleAnimSpritePalette_001[];
extern const u32 gBattleAnimSpritePalette_002[];
extern const u32 gBattleAnimSpritePalette_003[];
extern const u32 gBattleAnimSpritePalette_004[];
extern const u32 gBattleAnimSpritePalette_005[];
extern const u32 gBattleAnimSpritePalette_006[];
extern const u32 gBattleAnimSpritePalette_007[];
extern const u32 gBattleAnimSpritePalette_008[];
extern const u32 gBattleAnimSpritePalette_009[];
extern const u32 gBattleAnimSpritePalette_010[];
extern const u32 gBattleAnimSpritePalette_011[];
extern const u32 gBattleAnimSpritePalette_012[];
extern const u32 gBattleAnimSpritePalette_013[];
extern const u32 gBattleAnimSpritePalette_014[];
extern const u32 gBattleAnimSpritePalette_015[];
extern const u32 gBattleAnimSpritePalette_016[];
extern const u32 gBattleAnimSpritePalette_016[];
extern const u32 gBattleAnimSpritePalette_018[];
extern const u32 gBattleAnimSpritePalette_019[];
extern const u32 gBattleAnimSpritePalette_020[];
extern const u32 gBattleAnimSpritePalette_021[];
extern const u32 gBattleAnimSpritePalette_022[];
extern const u32 gBattleAnimSpritePalette_023[];
extern const u32 gBattleAnimSpritePalette_024[];
extern const u32 gBattleAnimSpritePalette_025[];
extern const u32 gBattleAnimSpritePalette_026[];
extern const u32 gBattleAnimSpritePalette_027[];
extern const u32 gBattleAnimSpritePalette_028[];
extern const u32 gBattleAnimSpritePalette_029[];
extern const u32 gBattleAnimSpritePalette_030[];
extern const u32 gBattleAnimSpritePalette_031[];
extern const u32 gBattleAnimSpritePalette_032[];
extern const u32 gBattleAnimSpritePalette_033[];
extern const u32 gBattleAnimSpritePalette_033[];
extern const u32 gBattleAnimSpritePalette_033[];
extern const u32 gBattleAnimSpritePalette_036[];
extern const u32 gBattleAnimSpritePalette_036[];
extern const u32 gBattleAnimSpritePalette_038[];
extern const u32 gBattleAnimSpritePalette_039[];
extern const u32 gBattleAnimSpritePalette_038[];
extern const u32 gBattleAnimSpritePalette_038[];
extern const u32 gBattleAnimSpritePalette_042[];
extern const u32 gBattleAnimSpritePalette_043[];
extern const u32 gBattleAnimSpritePalette_044[];
extern const u32 gBattleAnimSpritePalette_045[];
extern const u32 gBattleAnimSpritePalette_046[];
extern const u32 gBattleAnimSpritePalette_047[];
extern const u32 gBattleAnimSpritePalette_048[];
extern const u32 gBattleAnimSpritePalette_049[];
extern const u32 gBattleAnimSpritePalette_050[];
extern const u32 gBattleAnimSpritePalette_050[];
extern const u32 gBattleAnimSpritePalette_050[];
extern const u32 gBattleAnimSpritePalette_026[];
extern const u32 gBattleAnimSpritePalette_054[];
extern const u32 gBattleAnimSpritePalette_050[];
extern const u32 gBattleAnimSpritePalette_056[];
extern const u32 gBattleAnimSpritePalette_057[];
extern const u32 gBattleAnimSpritePalette_058[];
extern const u32 gBattleAnimSpritePalette_059[];
extern const u32 gBattleAnimSpritePalette_060[];
extern const u32 gBattleAnimSpritePalette_061[];
extern const u32 gBattleAnimSpritePalette_062[];
extern const u32 gBattleAnimSpritePalette_063[];
extern const u32 gBattleAnimSpritePalette_064[];
extern const u32 gBattleAnimSpritePalette_065[];
extern const u32 gBattleAnimSpritePalette_066[];
extern const u32 gBattleAnimSpritePalette_067[];
extern const u32 gBattleAnimSpritePalette_068[];
extern const u32 gBattleAnimSpritePalette_065[];
extern const u32 gBattleAnimSpritePalette_070[];
extern const u32 gBattleAnimSpritePalette_070[];
extern const u32 gBattleAnimSpritePalette_072[];
extern const u32 gBattleAnimSpritePalette_073[];
extern const u32 gBattleAnimSpritePalette_074[];
extern const u32 gBattleAnimSpritePalette_075[];
extern const u32 gBattleAnimSpritePalette_076[];
extern const u32 gBattleAnimSpritePalette_076[];
extern const u32 gBattleAnimSpritePalette_078[];
extern const u32 gBattleAnimSpritePalette_078[];
extern const u32 gBattleAnimSpritePalette_080[];
extern const u32 gBattleAnimSpritePalette_081[];
extern const u32 gBattleAnimSpritePalette_082[];
extern const u32 gBattleAnimSpritePalette_083[];
extern const u32 gBattleAnimSpritePalette_084[];
extern const u32 gBattleAnimSpritePalette_085[];
extern const u32 gBattleAnimSpritePalette_086[];
extern const u32 gBattleAnimSpritePalette_087[];
extern const u32 gBattleAnimSpritePalette_088[];
extern const u32 gBattleAnimSpritePalette_089[];
extern const u32 gBattleAnimSpritePalette_090[];
extern const u32 gBattleAnimSpritePalette_091[];
extern const u32 gBattleAnimSpritePalette_092[];
extern const u32 gBattleAnimSpritePalette_093[];
extern const u32 gBattleAnimSpritePalette_094[];
extern const u32 gBattleAnimSpritePalette_095[];
extern const u32 gBattleAnimSpritePalette_096[];
extern const u32 gBattleAnimSpritePalette_097[];
extern const u32 gBattleAnimSpritePalette_094[];
extern const u32 gBattleAnimSpritePalette_099[];
extern const u32 gBattleAnimSpritePalette_100[];
extern const u32 gBattleAnimSpritePalette_101[];
extern const u32 gBattleAnimSpritePalette_101[];
extern const u32 gBattleAnimSpritePalette_103[];
extern const u32 gBattleAnimSpritePalette_104[];
extern const u32 gBattleAnimSpritePalette_105[];
extern const u32 gBattleAnimSpritePalette_105[];
extern const u32 gBattleAnimSpritePalette_107[];
extern const u32 gBattleAnimSpritePalette_107[];
extern const u32 gBattleAnimSpritePalette_109[];
extern const u32 gBattleAnimSpritePalette_109[];
extern const u32 gBattleAnimSpritePalette_111[];
extern const u32 gBattleAnimSpritePalette_112[];
extern const u32 gBattleAnimSpritePalette_113[];
extern const u32 gBattleAnimSpritePalette_114[];
extern const u32 gBattleAnimSpritePalette_115[];
extern const u32 gBattleAnimSpritePalette_116[];
extern const u32 gBattleAnimSpritePalette_117[];
extern const u32 gBattleAnimSpritePalette_118[];
extern const u32 gBattleAnimSpritePalette_119[];
extern const u32 gBattleAnimSpritePalette_120[];
extern const u32 gBattleAnimSpritePalette_121[];
extern const u32 gBattleAnimSpritePalette_122[];
extern const u32 gBattleAnimSpritePalette_122[];
extern const u32 gBattleAnimSpritePalette_124[];
extern const u32 gBattleAnimSpritePalette_125[];
extern const u32 gBattleAnimSpritePalette_126[];
extern const u32 gBattleAnimSpritePalette_127[];
extern const u32 gBattleAnimSpritePalette_128[];
extern const u32 gBattleAnimSpritePalette_128[];
extern const u32 gBattleAnimSpritePalette_130[];
extern const u32 gBattleAnimSpritePalette_130[];
extern const u32 gBattleAnimSpritePalette_132[];
extern const u32 gBattleAnimSpritePalette_133[];
extern const u32 gBattleAnimSpritePalette_133[];
extern const u32 gBattleAnimSpritePalette_135[];
extern const u32 gBattleAnimSpritePalette_136[];
extern const u32 gBattleAnimSpritePalette_135[];
extern const u32 gBattleAnimSpritePalette_135[];
extern const u32 gBattleAnimSpritePalette_139[];
extern const u32 gBattleAnimSpritePalette_140[];
extern const u32 gBattleAnimSpritePalette_141[];
extern const u32 gBattleAnimSpritePalette_141[];
extern const u32 gBattleAnimSpritePalette_143[];
extern const u32 gBattleAnimSpritePalette_144[];
extern const u32 gBattleAnimSpritePalette_139[];
extern const u32 gBattleAnimSpritePalette_115[];
extern const u32 gBattleAnimSpritePalette_147[];
extern const u32 gBattleAnimSpritePalette_148[];
extern const u32 gBattleAnimSpritePalette_148[];
extern const u32 gBattleAnimSpritePalette_150[];
extern const u32 gBattleAnimSpritePalette_150[];
extern const u32 gBattleAnimSpritePalette_152[];
extern const u32 gBattleAnimSpritePalette_153[];
extern const u32 gBattleAnimSpritePalette_154[];
extern const u32 gBattleAnimSpritePalette_155[];
extern const u32 gBattleAnimSpritePalette_156[];
extern const u32 gBattleAnimSpritePalette_157[];
extern const u32 gBattleAnimSpritePalette_158[];
extern const u32 gBattleAnimSpritePalette_159[];
extern const u32 gBattleAnimSpritePalette_160[];
extern const u32 gBattleAnimSpritePalette_161[];
extern const u32 gBattleAnimSpritePalette_162[];
extern const u32 gBattleAnimSpritePalette_163[];
extern const u32 gBattleAnimSpritePalette_164[];
extern const u32 gBattleAnimSpritePalette_165[];
extern const u32 gBattleAnimSpritePalette_166[];
extern const u32 gBattleAnimSpritePalette_167[];
extern const u32 gBattleAnimSpritePalette_168[];
extern const u32 gBattleAnimSpritePalette_169[];
extern const u32 gBattleAnimSpritePalette_170[];
extern const u32 gBattleAnimSpritePalette_171[];
extern const u32 gBattleAnimSpritePalette_172[];
extern const u32 gBattleAnimSpritePalette_174[];
extern const u32 gBattleAnimSpritePalette_175[];
extern const u32 gBattleAnimSpritePalette_176[];
extern const u32 gBattleAnimSpritePalette_177[];
extern const u32 gBattleAnimSpritePalette_178[];
extern const u32 gBattleAnimSpritePalette_179[];
extern const u32 gBattleAnimSpritePalette_182[];
extern const u32 gBattleAnimSpritePalette_183[];
extern const u32 gBattleAnimSpritePalette_184[];
extern const u32 gBattleAnimSpritePalette_185[];
extern const u32 gBattleAnimSpritePalette_186[];
extern const u32 gBattleAnimSpritePalette_187[];
extern const u32 gBattleAnimSpritePalette_188[];
extern const u32 gBattleAnimSpritePalette_189[];
extern const u32 gBattleAnimSpritePalette_190[];
extern const u32 gBattleAnimSpritePalette_191[];
extern const u32 gBattleAnimSpritePalette_192[];
extern const u32 gBattleAnimSpritePalette_193[];
extern const u32 gBattleAnimSpritePalette_194[];
extern const u32 gBattleAnimSpritePalette_195[];
extern const u32 gBattleAnimSpritePalette_196[];
extern const u32 gBattleAnimSpritePalette_197[];
extern const u32 gBattleAnimSpritePalette_198[];
extern const u32 gBattleAnimSpritePalette_199[];
extern const u32 gBattleAnimSpritePalette_200[];
extern const u32 gBattleAnimSpritePalette_201[];
extern const u32 gBattleAnimSpritePalette_202[];
extern const u32 gBattleAnimSpritePalette_203[];
extern const u32 gBattleAnimSpritePalette_204[];
extern const u32 gBattleAnimSpritePalette_205[];
extern const u32 gBattleAnimSpritePalette_206[];
extern const u32 gBattleAnimSpritePalette_207[];
extern const u32 gBattleAnimSpritePalette_209[];
extern const u32 gBattleAnimSpritePalette_210[];
extern const u32 gBattleAnimSpritePalette_211[];
extern const u32 gBattleAnimSpritePalette_215[];
extern const u32 gBattleAnimSpritePalette_216[];
extern const u32 gBattleAnimSpritePalette_217[];
extern const u32 gBattleAnimSpritePalette_218[];
extern const u32 gBattleAnimSpritePalette_219[];
extern const u32 gBattleAnimSpritePalette_220[];
extern const u32 gBattleAnimSpritePalette_221[];
extern const u32 gBattleAnimSpritePalette_222[];
extern const u32 gBattleAnimSpritePalette_223[];
extern const u32 gBattleAnimSpritePalette_224[];
extern const u32 gBattleAnimSpritePalette_225[];
extern const u32 gBattleAnimSpritePalette_226[];
extern const u32 gBattleAnimSpritePalette_228[];
extern const u32 gBattleAnimSpritePalette_229[];
extern const u32 gBattleAnimSpritePalette_230[];
extern const u32 gBattleAnimSpritePalette_231[];
extern const u32 gBattleAnimSpritePalette_233[];
extern const u32 gBattleAnimSpritePalette_234[];
extern const u32 gBattleAnimSpritePalette_235[];
extern const u32 gBattleAnimSpritePalette_236[];
extern const u32 gBattleAnimSpritePalette_237[];
extern const u32 gBattleAnimSpritePalette_238[];
extern const u32 gBattleAnimSpritePalette_239[];
extern const u32 gBattleAnimSpritePalette_240[];
extern const u32 gBattleAnimSpritePalette_241[];
extern const u32 gBattleAnimSpritePalette_242[];
extern const u32 gBattleAnimSpritePalette_243[];
extern const u32 gBattleAnimSpritePalette_244[];
extern const u32 gBattleAnimSpritePalette_245[];
extern const u32 gBattleAnimSpritePalette_248[];
extern const u32 gBattleAnimSpritePalette_249[];
extern const u32 gBattleAnimSpritePalette_251[];
extern const u32 gBattleAnimSpritePalette_252[];
extern const u32 gBattleAnimSpritePalette_253[];
extern const u32 gBattleAnimSpritePalette_254[];
extern const u32 gBattleAnimSpritePalette_255[];
extern const u32 gBattleAnimSpritePalette_256[];
extern const u32 gBattleAnimSpritePalette_257[];
extern const u32 gBattleAnimSpritePalette_258[];
extern const u32 gBattleAnimSpritePalette_259[];
extern const u32 gBattleAnimSpritePalette_260[];
extern const u32 gBattleAnimSpritePalette_261[];
extern const u32 gBattleAnimSpritePalette_262[];
extern const u32 gBattleAnimSpritePalette_263[];
extern const u32 gBattleAnimSpritePalette_264[];
extern const u32 gBattleAnimSpritePalette_265[];
extern const u32 gBattleAnimSpritePalette_266[];
extern const u32 gBattleAnimSpritePalette_267[];
extern const u32 gBattleAnimSpritePalette_268[];
extern const u32 gBattleAnimSpritePalette_269[];
extern const u32 gBattleAnimSpritePalette_270[];
extern const u32 gBattleAnimSpritePalette_271[];
extern const u32 gBattleAnimSpritePalette_272[];
extern const u32 gBattleAnimSpritePalette_274[];
extern const u32 gBattleAnimSpritePalette_277[];
extern const u32 gBattleAnimSpritePalette_278[];
extern const u32 gBattleAnimSpritePalette_279[];
extern const u32 gBattleAnimSpritePalette_280[];
extern const u32 gBattleAnimSpritePalette_281[];
extern const u32 gBattleAnimSpritePalette_282[];
extern const u32 gBattleAnimSpritePalette_283[];
extern const u32 gBattleAnimSpritePalette_284[];
extern const u32 gBattleAnimSpritePalette_285[];
extern const u32 gBattleAnimSpritePalette_286[];
extern const u32 gBattleAnimSpritePalette_287[];
extern const u32 gBattleAnimSpritePalette_288[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_00[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_02[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_03[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_04[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_07[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_09[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_11[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_12[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_15[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_16[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_17[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_20[];
extern struct BattleAnimBackground gBattleAnimBackgroundImage_21[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_00[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_02[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_03[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_04[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_07[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_09[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_11[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_12[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_15[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_16[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_17[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_18[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_20[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_21[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_22[];
extern struct BattleAnimBackground gBattleAnimBackgroundPalette_24[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_00[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_02[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_03[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_04[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_05[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_06[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_07[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_08[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_09[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_10[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_11[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_12[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_13[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_14[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_15[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_16[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_17[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_20[];
extern struct BattleAnimBackground gBattleAnimBackgroundTilemap_21[];
#endif //GUARD_GRAPHICS_H

View File

@ -103,12 +103,19 @@ struct AffineAnimJumpCmd
u16 target;
};
struct AffineAnimEndCmdAlt
{
s16 type;
u16 val;
};
union AffineAnimCmd
{
s16 type;
struct AffineAnimFrameCmd frame;
struct AffineAnimLoopCmd loop;
struct AffineAnimJumpCmd jump;
struct AffineAnimEndCmdAlt end; // unused in code
};
#define AFFINEANIMCMDTYPE_LOOP 0x7FFD
@ -123,6 +130,8 @@ union AffineAnimCmd
{.jump = {.type = AFFINEANIMCMDTYPE_JUMP, .target = _target}}
#define AFFINEANIMCMD_END \
{.type = AFFINEANIMCMDTYPE_END}
#define AFFINEANIMCMD_END_ALT(_val) \
{.end = {.type = AFFINEANIMCMDTYPE_END, .val = _val}}
struct AffineAnimState
{

View File

@ -3,7 +3,7 @@
enum
{
WINDOW_PRIORITY,
WINDOW_BG,
WINDOW_TILEMAP_LEFT,
WINDOW_TILEMAP_TOP,
WINDOW_WIDTH,
@ -15,7 +15,7 @@ enum
struct WindowTemplate
{
u8 priority;
u8 bg;
u8 tilemapLeft;
u8 tilemapTop;
u8 width;

View File

@ -156,7 +156,25 @@ SECTIONS {
src/safari_zone.o(.text);
asm/contest_link_80FC4F4.o(.text);
src/item_use.o(.text);
asm/battle_anim_80FE840.o(.text);
asm/battle_anim_effects_1.o(.text);
asm/battle_anim_effects_2.o(.text);
asm/water.o(.text);
asm/fire.o(.text);
asm/electric.o(.text);
asm/ice.o(.text);
asm/fight.o(.text);
asm/poison.o(.text);
asm/flying.o(.text);
asm/psychic.o(.text);
asm/bug.o(.text);
asm/rock.o(.text);
asm/ghost.o(.text);
asm/dragon.o(.text);
asm/dark.o(.text);
asm/ground.o(.text);
asm/normal.o(.text);
asm/battle_anim_utility_funcs.o(.text);
asm/battle_intro.o(.text);
src/bike.o(.text);
src/easy_chat.o(.text);
asm/easy_chat.o(.text);
@ -418,7 +436,6 @@ SECTIONS {
src/tileset_anims.o(.rodata);
src/palette.o(.rodata);
data/fanfares.o(.rodata);
data/battle_anims.o(.rodata);
src/battle_anim.o(.rodata);
src/battle_anim_80A5C6C.o(.rodata);
data/map_events.o(.rodata);
@ -459,7 +476,25 @@ SECTIONS {
src/field_special_scene.o(.rodata);
src/rotating_gate.o(.rodata);
src/item_use.o(.rodata);
data/battle_anim_80FE840.o(.rodata);
src/effects_1.o(.rodata);
src/effects_2.o(.rodata);
src/water.o(.rodata);
src/fire.o(.rodata);
src/electric.o(.rodata);
src/ice.o(.rodata);
src/fight.o(.rodata);
src/poison.o(.rodata);
src/flying.o(.rodata);
src/psychic.o(.rodata);
src/bug.o(.rodata);
src/rock.o(.rodata);
src/ghost.o(.rodata);
src/dragon.o(.rodata);
src/dark.o(.rodata);
src/ground.o(.rodata);
src/normal.o(.rodata);
src/battle_anim_utility_funcs.o(.rodata);
src/battle_intro.o(.rodata);
src/bike.o(.rodata);
data/easy_chat.o(.rodata);
src/mon_markings.o(.rodata);

File diff suppressed because it is too large Load Diff

View File

@ -56,8 +56,8 @@ static const struct SpriteTemplate gUnknown_0853EF48 =
static const struct SpriteTemplate gUnknown_0853EF60 =
{
.tileTag = ANIM_TAG_136,
.paletteTag = ANIM_TAG_136,
.tileTag = ANIM_TAG_CIRCLE_IMPACT,
.paletteTag = ANIM_TAG_CIRCLE_IMPACT,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
@ -73,8 +73,8 @@ u8 sub_80A9C70(u8 battlerId, bool8 b)
u8 spriteId2;
u8 i;
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_CIRCLE_IMPACT)]);
gTasks[taskId].data[0] = battlerId;
if (b)
{

View File

@ -0,0 +1,10 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
const u16 gUnknown_08597418 = RGB(31, 31, 31);
// no clue what these are...
// possibly some register offsets
const u8 gUnknown_0859741A[] = {0x08, 0x0a, 0x0c, 0x0e};
const u8 gUnknown_0859741E[] = {0x08, 0x0a, 0x0c, 0x0e};

View File

@ -162,10 +162,10 @@ const struct BgTemplate gBattleBgTemplates[] =
},
};
static const struct WindowTemplate gUnknown_0831AA18[] =
static const struct WindowTemplate gUnknown_0831AA18[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@ -174,7 +174,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0090,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@ -183,7 +183,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x01c0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@ -192,7 +192,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0190,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@ -201,7 +201,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0300,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@ -210,7 +210,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0310,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@ -219,7 +219,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0320,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@ -228,7 +228,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0330,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@ -237,7 +237,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0290,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@ -246,7 +246,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@ -255,7 +255,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@ -264,7 +264,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@ -273,7 +273,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x02b0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@ -282,7 +282,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0100,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@ -300,7 +300,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x016e,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@ -309,7 +309,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 6,
@ -318,7 +318,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@ -327,7 +327,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0020,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 6,
@ -336,7 +336,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0040,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@ -345,7 +345,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0060,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 2,
.tilemapTop = 6,
.width = 6,
@ -354,7 +354,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x0080,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 2,
.width = 6,
@ -363,7 +363,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 2,
.width = 7,
@ -372,7 +372,7 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
.baseBlock = 0x00a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 7,
@ -383,10 +383,10 @@ static const struct WindowTemplate gUnknown_0831AA18[] =
DUMMY_WIN_TEMPLATE
};
static const struct WindowTemplate gUnknown_0831AAE0[] =
static const struct WindowTemplate gUnknown_0831AAE0[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0090,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 35,
.width = 14,
@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x01c0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 35,
.width = 12,
@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0190,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 55,
.width = 8,
@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0300,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 55,
.width = 8,
@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0310,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 57,
.width = 8,
@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0320,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 57,
.width = 8,
@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0330,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 4,
@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0290,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 0,
@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 25,
.tilemapTop = 55,
.width = 4,
@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0298,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 57,
.width = 8,
@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02a0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 55,
.width = 8,
@ -494,7 +494,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x02b0,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 26,
.tilemapTop = 9,
.width = 3,
@ -503,7 +503,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 8,
.width = 10,
@ -512,7 +512,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 18,
.tilemapTop = 0,
.width = 12,
@ -521,7 +521,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x016e,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 6,
.tilemapTop = 1,
.width = 8,
@ -530,7 +530,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0100,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 1,
.width = 2,
@ -539,7 +539,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0110,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 8,
@ -548,7 +548,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0114,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 4,
.width = 6,
@ -557,7 +557,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0124,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 6,
.width = 6,
@ -566,7 +566,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0130,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 12,
.tilemapTop = 8,
.width = 6,
@ -575,7 +575,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x013c,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 11,
.width = 14,
@ -584,7 +584,7 @@ static const struct WindowTemplate gUnknown_0831AAE0[] =
.baseBlock = 0x0148,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,

View File

@ -786,7 +786,7 @@ static const struct BgTemplate gUnknown_0860CE84[4] =
static const struct WindowTemplate gUnknown_0860CE94[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 3,
.width = 8,
@ -795,7 +795,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 16,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 3,
.width = 8,
@ -804,7 +804,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
.baseBlock = 144,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 1,
.width = 14,
@ -818,7 +818,7 @@ static const struct WindowTemplate gUnknown_0860CE94[] =
static const struct WindowTemplate gUnknown_0860CEB4[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@ -827,7 +827,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@ -836,7 +836,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@ -845,7 +845,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@ -854,7 +854,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@ -863,7 +863,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@ -872,7 +872,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@ -881,7 +881,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@ -890,7 +890,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,
@ -899,7 +899,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 372,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 2,
.width = 26,
@ -908,7 +908,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 1,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 16,
.tilemapTop = 5,
.width = 8,
@ -917,7 +917,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 53,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 19,
.tilemapTop = 7,
.width = 9,
@ -926,7 +926,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 69,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 16,
.tilemapTop = 10,
.width = 8,
@ -935,7 +935,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 96,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 12,
.width = 26,
@ -944,7 +944,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 112,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 23,
@ -953,7 +953,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 294,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 8,
@ -962,7 +962,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 340,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 20,
.tilemapTop = 5,
.width = 8,
@ -971,7 +971,7 @@ static const struct WindowTemplate gUnknown_0860CEB4[] =
.baseBlock = 356,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 16,
.width = 26,

View File

@ -323,7 +323,7 @@ static const struct BgTemplate sSelect_BgTemplates[] =
static const struct WindowTemplate sSelect_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@ -332,7 +332,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@ -341,7 +341,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@ -350,7 +350,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@ -359,7 +359,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@ -368,7 +368,7 @@ static const struct WindowTemplate sSelect_WindowTemplates[] =
.baseBlock = 0x009b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,
@ -907,7 +907,7 @@ static const struct BgTemplate sSwap_BgTemplates[4] =
static const struct WindowTemplate sSwap_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 2,
.width = 12,
@ -916,7 +916,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0001,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@ -925,7 +925,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x0019,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 15,
.width = 20,
@ -934,7 +934,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x002f,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 14,
.width = 9,
@ -943,7 +943,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 14,
.width = 8,
@ -952,7 +952,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00a1,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 21,
.tilemapTop = 15,
.width = 9,
@ -961,7 +961,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x006b,
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 10,
.tilemapTop = 2,
.width = 4,
@ -970,7 +970,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 19,
.tilemapTop = 2,
.width = 11,
@ -979,7 +979,7 @@ static const struct WindowTemplate sSwap_WindowTemplates[] =
.baseBlock = 0x00c9,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 0,
.width = 15,

21
src/battle_intro.c Normal file
View File

@ -0,0 +1,21 @@
#include "global.h"
#include "task.h"
extern void task_battle_intro_80BC47C(u8);
extern void task00_battle_intro_80BC6C8(u8);
extern void task_battle_intro_80BC47C(u8);
extern void task_battle_intro_anim(u8);
const TaskFunc gUnknown_08597424[] =
{
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task00_battle_intro_80BC6C8,
task00_battle_intro_80BC6C8,
task00_battle_intro_80BC6C8,
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task_battle_intro_80BC47C,
task_battle_intro_anim,
task_battle_intro_anim,
};

View File

@ -188,7 +188,7 @@ static const u8 sColorTable[][3] =
static const struct WindowTemplate gUnknown_0861F328[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@ -197,7 +197,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 30
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@ -206,7 +206,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 270
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -215,7 +215,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
.baseBlock = 354
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@ -229,7 +229,7 @@ static const struct WindowTemplate gUnknown_0861F328[] =
static const struct WindowTemplate gUnknown_0861F350[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@ -238,7 +238,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@ -247,7 +247,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@ -256,7 +256,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@ -265,7 +265,7 @@ static const struct WindowTemplate gUnknown_0861F350[] =
.baseBlock = 472
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,

View File

@ -65,7 +65,7 @@ static const struct BgTemplate sTrainerHillRecordsBgTemplates[] =
static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@ -78,7 +78,7 @@ static const struct WindowTemplate sTrainerHillRecordsWindowTemplates[] =
static const struct WindowTemplate sLinkBattleRecordsWindow =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,

View File

@ -323,7 +323,7 @@ static const struct BgTemplate sBerryBlenderBgTemplates[3] =
static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 6,
.width = 7,
@ -332,7 +332,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x28,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 6,
.width = 7,
@ -341,7 +341,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x36,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 7,
@ -350,7 +350,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x44,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 12,
.width = 7,
@ -359,7 +359,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x52,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -368,7 +368,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
.baseBlock = 0x60,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 3,
.width = 21,
@ -381,7 +381,7 @@ static const struct WindowTemplate sBerryBlender_WindowTemplates[] =
static const struct WindowTemplate sBlender_YesNoWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@ -846,7 +846,7 @@ static const u8 sUnknown_08339CD2[] =
static const struct WindowTemplate sBlenderRecordWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 6,
.tilemapTop = 4,
.width = 18,

View File

@ -102,7 +102,7 @@ static const u8 sTextColors[2][3] =
static const struct WindowTemplate sWindowTemplates[] =
{
{ // WIN_BERRY_NAME
.priority = 1,
.bg = 1,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 8,
@ -111,7 +111,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 69,
},
{ // WIN_SIZE_FIRM
.priority = 1,
.bg = 1,
.tilemapLeft = 11,
.tilemapTop = 7,
.width = 18,
@ -120,7 +120,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 85,
},
{ // WIN_DESC
.priority = 1,
.bg = 1,
.tilemapLeft = 4,
.tilemapTop = 14,
.width = 25,
@ -129,7 +129,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 157,
},
{ // WIN_BERRY_TAG
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 0,
.width = 8,

189
src/bug.c Normal file
View File

@ -0,0 +1,189 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8110368(struct Sprite *);
extern void sub_8110438(struct Sprite *);
extern void sub_81104E4(struct Sprite *);
extern void sub_81105B4(struct Sprite *);
extern void sub_811067C(struct Sprite *);
extern void sub_8110720(struct Sprite *);
extern void sub_8110850(struct Sprite *);
extern void sub_8110994(struct Sprite *);
const union AffineAnimCmd gUnknown_08596938[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 30, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596948[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, -99, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596958[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 94, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596968[] =
{
gUnknown_08596938,
gUnknown_08596948,
gUnknown_08596958,
};
const struct SpriteTemplate gUnknown_08596974 =
{
.tileTag = ANIM_TAG_HORN_HIT_2,
.paletteTag = ANIM_TAG_HORN_HIT_2,
.oam = &gUnknown_085249F4,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596968,
.callback = sub_8110368,
};
const union AffineAnimCmd gUnknown_0859698C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -33, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_0859699C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085969AC[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085969BC[] =
{
gUnknown_0859698C,
gUnknown_0859699C,
gUnknown_085969AC,
};
const struct SpriteTemplate gUnknown_085969C8 =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085969BC,
.callback = sub_8110438,
};
const struct SpriteTemplate gUnknown_085969E0 =
{
.tileTag = ANIM_TAG_WEB_THREAD,
.paletteTag = ANIM_TAG_WEB_THREAD,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81104E4,
};
const struct SpriteTemplate gUnknown_085969F8 =
{
.tileTag = ANIM_TAG_STRING,
.paletteTag = ANIM_TAG_STRING,
.oam = &gUnknown_0852493C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81105B4,
};
const union AffineAnimCmd gUnknown_08596A10[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596A28[] =
{
gUnknown_08596A10,
};
const struct SpriteTemplate gUnknown_08596A2C =
{
.tileTag = ANIM_TAG_SPIDER_WEB,
.paletteTag = ANIM_TAG_SPIDER_WEB,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596A28,
.callback = sub_811067C,
};
const struct SpriteTemplate gLinearStingerSpriteTemplate =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110720,
};
const struct SpriteTemplate gPinMissileSpriteTemplate =
{
.tileTag = ANIM_TAG_NEEDLE,
.paletteTag = ANIM_TAG_NEEDLE,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110850,
};
const struct SpriteTemplate gIcicleSpearSpriteTemplate =
{
.tileTag = ANIM_TAG_ICICLE_SPEAR,
.paletteTag = ANIM_TAG_ICICLE_SPEAR,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110850,
};
const union AffineAnimCmd gUnknown_08596A8C[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 18),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 8),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 8),
AFFINEANIMCMD_LOOP(5),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596AC4[] =
{
gUnknown_08596A8C,
};
const struct SpriteTemplate gUnknown_08596AC8 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596AC4,
.callback = sub_8110994,
};

View File

@ -34,7 +34,7 @@ extern u8 gUnknown_02032298[2];
extern u8 gUnknown_0203CEF8[];
static const struct WindowTemplate gUnknown_08550594 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 11,
.width = 11,
@ -421,7 +421,7 @@ bool32 sub_80B2AF4(u16 *arg0, u16 *arg1)
gStringVar1[0] = EOS;
gStringVar2[0] = EOS;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 2; j++)
@ -1151,7 +1151,7 @@ static void sub_80B3950(void)
void nullsub_37(void)
{
}
void sub_80B3968(void)

View File

@ -11,8 +11,8 @@
#include "text_window.h"
#include "constants/songs.h"
extern u8 gText_ClearAllSaveData[];
extern u8 gText_ClearingData[];
extern const u8 gText_ClearAllSaveData[];
extern const u8 gText_ClearingData[];
static void Task_DoClearSaveDataScreenYesNo(u8);
static void Task_ClearSaveDataScreenYesNoChoice(u8);
@ -46,7 +46,7 @@ static const struct BgTemplate sClearSaveBgTemplates[2] =
static const struct WindowTemplate sClearSaveTextWindow[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 26,
@ -60,7 +60,7 @@ static const struct WindowTemplate sClearSaveTextWindow[] =
static const struct WindowTemplate sClearSaveYesNo[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 5,

View File

@ -949,7 +949,7 @@ static const struct BgTemplate gUnknown_085E6F68[] =
static const struct WindowTemplate gUnknown_085E6F6C[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 9,
.width = 30,
@ -1142,7 +1142,7 @@ static void sub_81754DC(void)
{
RunTasks();
AnimateSprites();
if ((gMain.heldKeys & B_BUTTON)
&& gHasHallOfFameRecords != 0
&& gTasks[gUnknown_0203BCE2].func == sub_8175774)
@ -1182,9 +1182,9 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
{
u8 x;
u8 color[3];
color[0] = 0;
if (a2 == 1)
{
color[1] = 3;
@ -1195,7 +1195,7 @@ static void sub_81755BC(const u8 *string, u8 y, u8 a2)
color[1] = 1;
color[2] = 2;
}
x = GetStringCenterAlignXOffsetWithLetterSpacing(1, string, 0xF0, 1);
AddTextPrinterParameterized4(0, 1, x, y, 1, 0, color, -1, string);
}
@ -1230,7 +1230,7 @@ void sub_8175620(void)
gTasks[taskIdC].data[TDC_0] = 40;
SetGpuReg(REG_OFFSET_BG0VOFS, 0xFFFC);
taskIdB = CreateTask(sub_8175DA0, 0);
gTasks[taskIdB].data[TDB_TASK_A_ID] = taskIdA;
@ -1546,9 +1546,9 @@ static void sub_8175DA0(u8 taskIdB)
{
for (i = 0; i < 5; i++)
sub_81755BC(gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->text, 5 + i * 16, gCreditsEntryPointerTable[gTasks[taskIdB].data[TDB_CURRENT_PAGE]][i]->var_1);
CopyWindowToVram(0, 2);
gTasks[taskIdB].data[TDB_CURRENT_PAGE] += 1;
gTasks[taskIdB].data[TDB_0] += 1;

169
src/dark.c Normal file
View File

@ -0,0 +1,169 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_81138D4(struct Sprite *);
extern void sub_81139DC(struct Sprite *);
extern void sub_8113A90(struct Sprite *);
extern void sub_81144BC(struct Sprite *);
const struct SpriteTemplate gUnknown_08596FC8 =
{
.tileTag = ANIM_TAG_TIED_BAG,
.paletteTag = ANIM_TAG_TIED_BAG,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81138D4,
};
const union AffineAnimCmd gUnknown_08596FE0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596FF0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 32, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597000[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 64, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597010[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597020[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -128, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597030[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -96, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597040[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -64, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597050[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -32, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08597060[] =
{
gUnknown_08596FE0,
gUnknown_08596FF0,
gUnknown_08597000,
gUnknown_08597010,
gUnknown_08597020,
gUnknown_08597030,
gUnknown_08597040,
gUnknown_08597050,
};
const struct SpriteTemplate gUnknown_08597080 =
{
.tileTag = ANIM_TAG_SHARP_TEETH,
.paletteTag = ANIM_TAG_SHARP_TEETH,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597060,
.callback = sub_81139DC,
};
const struct SpriteTemplate gUnknown_08597098 =
{
.tileTag = ANIM_TAG_CLAMP,
.paletteTag = ANIM_TAG_CLAMP,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597060,
.callback = sub_81139DC,
};
const union AffineAnimCmd gUnknown_085970B0[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 80, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, -2, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085970C8[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, -80, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 2, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085970E0[] =
{
gUnknown_085970B0,
gUnknown_085970C8,
};
const struct SpriteTemplate gUnknown_085970E8 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085970E0,
.callback = sub_8113A90,
};
const union AnimCmd gUnknown_08597100[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08597118[] =
{
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
ANIMCMD_FRAME(48, 4, .hFlip = TRUE),
ANIMCMD_FRAME(64, 4, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08597130[] =
{
gUnknown_08597100,
gUnknown_08597118,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8597138 =
{
.tileTag = ANIM_TAG_CLAW_SLASH,
.paletteTag = ANIM_TAG_CLAW_SLASH,
.oam = &gUnknown_08524914,
.anims = gUnknown_08597130,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81144BC,
};

View File

@ -63,7 +63,7 @@ EWRAM_DATA static u16 sHatchedEggMotherMoves[4] = {0};
static const struct WindowTemplate sDaycareLevelMenuWindowTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,

View File

@ -217,7 +217,7 @@ void (*const SecretBasePC_SelectedDecorActions[][2])(u8 taskId) = {
const struct WindowTemplate gUnknown_085A6B90[4] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 18,
@ -226,7 +226,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0001
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@ -235,7 +235,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x0091
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 1,
.width = 12,
@ -244,7 +244,7 @@ const struct WindowTemplate gUnknown_085A6B90[4] =
.baseBlock = 0x017b
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 13,
.width = 13,

View File

@ -11,19 +11,14 @@
#include "window.h"
#include "string_util.h"
#include "text.h"
#include "overworld.h"
#include "menu.h"
extern void reset_temp_tile_data_buffers(void);
extern int decompress_and_copy_tile_data_to_vram(u8 bg_id, void *src, int size, u16 offset, u8 mode);
extern bool8 free_temp_tile_data_buffers_if_possible(void);
extern void sub_80861E8(void); // rom4
extern bool16 sub_80C0944(void);
extern void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 *color, s8 speed, u8 *str);
extern u16 gUnknown_0860F074[];
extern u8 gText_DexNational[];
extern u8 gText_DexHoenn[];
extern u8 gText_PokedexDiploma[];
extern const u8 gText_DexNational[];
extern const u8 gText_DexHoenn[];
extern const u8 gText_PokedexDiploma[];
static void MainCB2(void);
static void Task_DiplomaFadeIn(u8);
@ -34,7 +29,7 @@ static void InitDiplomaBg(void);
static void InitDiplomaWindow(void);
static void PrintDiplomaText(u8 *, u8, u8);
EWRAM_DATA static void **sDiplomaTilemapPtr = {NULL};
EWRAM_DATA static u8 *sDiplomaTilemapPtr = NULL;
static void VBlankCB(void)
{
@ -186,7 +181,7 @@ static void InitDiplomaBg(void)
static const struct WindowTemplate sDiplomaWinTemplates[2] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 5,
.tilemapTop = 2,
.width = 20,

180
src/dragon.c Normal file
View File

@ -0,0 +1,180 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8113064(struct Sprite *);
extern void sub_8113224(struct Sprite *);
extern void sub_81131B4(struct Sprite *);
extern void sub_8113224(struct Sprite *);
extern void sub_8113250(struct Sprite *);
extern void sub_81135EC(struct Sprite *);
const union AnimCmd gUnknown_08596E60[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596E78[] =
{
gUnknown_08596E60,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E7C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596E78,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8113064,
};
const union AnimCmd gUnknown_08596E94[] =
{
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08596EA4[] =
{
ANIMCMD_FRAME(16, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(32, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(48, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596EB4[] =
{
gUnknown_08596E94,
gUnknown_08596EA4,
};
const union AffineAnimCmd gUnknown_08596EBC[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 127, 0),
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596ED4[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
AFFINEANIMCMD_FRAME(0xD, 0xD, 0, 100),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596EEC[] =
{
gUnknown_08596EBC,
gUnknown_08596ED4,
};
const struct SpriteTemplate gUnknown_08596EF4 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08596EB4,
.images = NULL,
.affineAnims = gUnknown_08596EEC,
.callback = sub_8113224,
};
const union AnimCmd gUnknown_08596F0C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596F24[] =
{
gUnknown_08596F0C,
};
const struct SpriteTemplate gUnknown_08596F28 =
{
.tileTag = ANIM_TAG_FIRE_PLUME,
.paletteTag = ANIM_TAG_FIRE_PLUME,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596F24,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81131B4,
};
const union AnimCmd gUnknown_08596F40[] =
{
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596F50[] =
{
gUnknown_08596F40,
gUnknown_08596F40,
};
const union AffineAnimCmd gUnknown_08596F58[] =
{
AFFINEANIMCMD_FRAME(0x64, 0x64, 127, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596F68[] =
{
AFFINEANIMCMD_FRAME(0x64, 0x64, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596F78[] =
{
gUnknown_08596F58,
gUnknown_08596F68,
};
const struct SpriteTemplate gUnknown_08596F80 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08596F50,
.images = NULL,
.affineAnims = gUnknown_08596F78,
.callback = sub_8113224,
};
const struct SpriteTemplate gUnknown_08596F98 =
{
.tileTag = ANIM_TAG_HOLLOW_ORB,
.paletteTag = ANIM_TAG_HOLLOW_ORB,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8113250,
};
const struct SpriteTemplate gUnknown_08596FB0 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596E78,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81135EC,
};

2093
src/effects_1.c Normal file

File diff suppressed because it is too large Load Diff

1197
src/effects_2.c Normal file

File diff suppressed because it is too large Load Diff

View File

@ -26,6 +26,11 @@
#include "constants/abilities.h"
#include "daycare.h"
#include "overworld.h"
#include "scanline_effect.h"
#include "field_weather.h"
#include "international_string_util.h"
#include "naming_screen.h"
#include "field_screen.h"
#include "battle.h" // to get rid of later
struct EggHatchData
@ -55,14 +60,7 @@ extern const u32 gUnknown_08331F60[]; // tilemap gameboy circle
extern const u8 gText_HatchedFromEgg[];
extern const u8 gText_NickHatchPrompt[];
extern u8 sav1_map_get_name(void);
extern void TVShowConvertInternationalString(u8* str1, u8* str2, u8);
extern void FadeScreen(u8, u8);
extern void overworld_free_bg_tilemaps(void);
extern void sub_80AF168(void);
extern void ScanlineEffect_Stop(void);
extern void play_some_sound(void);
extern void DoNamingScreen(u8, const u8*, u16, u8, u32, MainCallback);
extern u16 sub_80D22D0(void);
extern u8 CountPartyAliveNonEggMonsExcept(u8);
@ -254,7 +252,7 @@ static const struct BgTemplate sBgTemplates_EggHatch[2] =
static const struct WindowTemplate sWinTemplates_EggHatch[2] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 26,
@ -267,7 +265,7 @@ static const struct WindowTemplate sWinTemplates_EggHatch[2] =
static const struct WindowTemplate sYesNoWinTemplate =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,

438
src/electric.c Normal file
View File

@ -0,0 +1,438 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810A1A8(struct Sprite *);
extern void sub_810A214(struct Sprite *);
extern void sub_810A274(struct Sprite *);
extern void sub_810A308(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_810A46C(struct Sprite *);
extern void sub_810A5BC(struct Sprite *);
extern void sub_810A628(struct Sprite *);
extern void sub_810A75C(struct Sprite *);
extern void sub_810A9DC(struct Sprite *);
extern void sub_810AA2C(struct Sprite *);
extern void sub_810ACD8(struct Sprite *);
extern void sub_810AD30(struct Sprite *);
extern void sub_810AD98(struct Sprite *);
extern void sub_810B1F0(struct Sprite *);
extern void sub_810B23C(struct Sprite *);
extern void sub_810B51C(struct Sprite *);
const union AnimCmd gUnknown_085956A4[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 8),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085956BC[] =
{
gUnknown_085956A4,
};
const struct SpriteTemplate gUnknown_085956C0 =
{
.tileTag = ANIM_TAG_LIGHTNING,
.paletteTag = ANIM_TAG_LIGHTNING,
.oam = &gUnknown_08524914,
.anims = gUnknown_085956BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A1A8,
};
const union AffineAnimCmd gUnknown_085956D8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 20),
AFFINEANIMCMD_FRAME(0x0, 0x0, -16, 60),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085956F8[] =
{
gUnknown_085956D8,
};
const struct SpriteTemplate gUnknown_085956FC =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085956F8,
.callback = sub_810A214,
};
const union AnimCmd gUnknown_08595714[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_FRAME(80, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595730[] =
{
gUnknown_08595714,
};
const struct SpriteTemplate gUnknown_08595734 =
{
.tileTag = ANIM_TAG_SHOCK,
.paletteTag = ANIM_TAG_SHOCK,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595730,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A274,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_859574C =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A308,
};
const struct SpriteTemplate gUnknown_08595764 =
{
.tileTag = ANIM_TAG_BLACK_BALL_2,
.paletteTag = ANIM_TAG_BLACK_BALL_2,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const union AffineAnimCmd gUnknown_0859577C[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_0859578C[] =
{
gUnknown_0859577C,
};
const struct SpriteTemplate gUnknown_08595790 =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859578C,
.callback = sub_810A46C,
};
const union AnimCmd gUnknown_085957A8[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085957B8[] =
{
gUnknown_085957A8,
};
const union AffineAnimCmd gUnknown_085957BC[] =
{
AFFINEANIMCMD_FRAME(0xE8, 0xE8, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_085957DC[] =
{
gUnknown_085957BC,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85957E0 =
{
.tileTag = ANIM_TAG_SHOCK_3,
.paletteTag = ANIM_TAG_SHOCK_3,
.oam = &gUnknown_08524974,
.anims = gUnknown_085957B8,
.images = NULL,
.affineAnims = gUnknown_085957DC,
.callback = sub_810A5BC,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85957F8 =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859578C,
.callback = sub_810A628,
};
const struct SpriteTemplate gElectricitySpriteTemplate =
{
.tileTag = ANIM_TAG_SPARK_2,
.paletteTag = ANIM_TAG_SPARK_2,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A75C,
};
const struct SpriteTemplate gUnknown_08595828 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810A9DC,
};
const struct SpriteTemplate gUnknown_08595840 =
{
.tileTag = ANIM_TAG_SPARK_H,
.paletteTag = ANIM_TAG_SPARK_H,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810AA2C,
};
const s8 gUnknown_08595858[][2] =
{
{ 58, -60},
{-56, -36},
{ 8, -56},
{-16, 56},
{ 58, -10},
{-58, 10},
{ 48, -18},
{-8, 56},
{ 16, -56},
{-58, -42},
{ 58, 30},
{-48, 40},
{ 12, -48},
{ 48, -12},
{-56, 18},
{ 48, 48},
};
const union AnimCmd gUnknown_08595878[] =
{
ANIMCMD_FRAME(3, 1),
ANIMCMD_FRAME(2, 1),
ANIMCMD_FRAME(1, 1),
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859588C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(1, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(3, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085958A0[] =
{
gUnknown_08595878,
gUnknown_0859588C,
};
const struct SpriteTemplate gUnknown_085958A8 =
{
.tileTag = ANIM_TAG_ELECTRIC_ORBS,
.paletteTag = ANIM_TAG_ELECTRIC_ORBS,
.oam = &gUnknown_08524904,
.anims = gUnknown_085958A0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
const union AffineAnimCmd gUnknown_085958C0[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 60),
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
AFFINEANIMCMD_LOOP(10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595900[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 0, 5),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 5),
AFFINEANIMCMD_JUMP(3),
};
const union AffineAnimCmd gUnknown_08595930[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 30),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 30),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595950[] =
{
gUnknown_085958C0,
gUnknown_08595900,
gUnknown_08595930,
};
const struct SpriteTemplate gUnknown_0859595C =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810ACD8,
};
const union AnimCmd gUnknown_08595974[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595988[] =
{
gUnknown_08595974,
};
const struct SpriteTemplate gUnknown_0859598C =
{
.tileTag = ANIM_TAG_ELECTRICITY,
.paletteTag = ANIM_TAG_ELECTRICITY,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595988,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810AD30,
};
const struct SpriteTemplate gUnknown_085959A4 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810AD98,
};
const union AnimCmd gUnknown_085959BC[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959C4[] =
{
ANIMCMD_FRAME(2, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959CC[] =
{
ANIMCMD_FRAME(4, 3),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085959D4[] =
{
ANIMCMD_FRAME(6, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085959DC[] =
{
gUnknown_085959BC,
gUnknown_085959C4,
gUnknown_085959CC,
gUnknown_085959D4,
};
const union AffineAnimCmd gUnknown_085959EC[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 64, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085959FC[] =
{
gUnknown_085959EC,
};
const struct SpriteTemplate gUnknown_08595A00 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524A04,
.anims = gUnknown_085959DC,
.images = NULL,
.affineAnims = gUnknown_085959FC,
.callback = sub_810B1F0,
};
const struct SpriteTemplate gUnknown_08595A18 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595950,
.callback = sub_810B23C,
};
const struct SpriteTemplate gUnknown_08595A30 =
{
.tileTag = ANIM_TAG_SPARK,
.paletteTag = ANIM_TAG_SPARK,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B51C,
};

View File

@ -58,7 +58,7 @@ static const struct BgTemplate gUnknown_085E5068[] = {
static const struct WindowTemplate gUnknown_085E5070[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 17,
.tilemapTop = 17,
.width = 12,
@ -67,7 +67,7 @@ static const struct WindowTemplate gUnknown_085E5070[] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 1,
.width = 7,

View File

@ -1680,7 +1680,7 @@ void sub_8139980(void)
}
const struct WindowTemplate gUnknown_085B2BAC = {
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 1,
.width = 8,
@ -3005,7 +3005,7 @@ void sub_813A8FC(void)
void sub_813A958(void)
{
static const struct WindowTemplate gUnknown_085B311C = {
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 6,
@ -3058,7 +3058,7 @@ u16 sub_813AA04(void)
void sub_813AA18(void)
{
static const struct WindowTemplate gUnknown_085B3124 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 9,
.width = 4,
@ -3220,7 +3220,7 @@ void sub_813AC7C(void)
static void sub_813ACE8(u8 a0, u16 a1)
{
static const struct WindowTemplate gUnknown_085B3220 = {
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 7,
.width = 12,

398
src/fight.c Normal file
View File

@ -0,0 +1,398 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void unc_080B08A0(struct Sprite *);
extern void sub_810CE68(struct Sprite *);
extern void sub_810CEB4(struct Sprite *);
extern void sub_810CEE0(struct Sprite *);
extern void sub_810CF30(struct Sprite *);
extern void sub_810D10C(struct Sprite *);
extern void sub_810D1B4(struct Sprite *);
extern void sub_810D278(struct Sprite *);
extern void sub_810D2E4(struct Sprite *);
extern void sub_810D37C(struct Sprite *);
extern void sub_810D40C(struct Sprite *);
extern void sub_810D4F4(struct Sprite *);
extern void sub_810D608(struct Sprite *);
extern void sub_810D714(struct Sprite *);
extern void sub_810D874(struct Sprite *);
extern void sub_810D984(struct Sprite *);
extern void sub_810DA10(struct Sprite *);
extern void sub_810DA7C(struct Sprite *);
const struct SpriteTemplate gUnknown_08595E14 =
{
.tileTag = ANIM_TAG_HUMANOID_FOOT,
.paletteTag = ANIM_TAG_HUMANOID_FOOT,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = unc_080B08A0,
};
const union AnimCmd gUnknown_08595E2C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E34[] =
{
ANIMCMD_FRAME(16, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E3C[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E44[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595E4C[] =
{
ANIMCMD_FRAME(48, 1, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595E54[] =
{
gUnknown_08595E2C,
};
const union AnimCmd *const gUnknown_08595E58[] =
{
gUnknown_08595E34,
gUnknown_08595E3C,
};
const union AnimCmd *const gUnknown_08595E60[] =
{
gUnknown_08595E44,
gUnknown_08595E4C,
};
const struct SpriteTemplate gUnknown_08595E68 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CE68,
};
const struct SpriteTemplate gUnknown_08595E80 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CEB4,
};
const struct SpriteTemplate gFistFootSpriteTemplate =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CEE0,
};
const struct SpriteTemplate gUnknown_08595EB0 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CF30,
};
const struct SpriteTemplate gUnknown_08595EC8 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E60,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D10C,
};
const struct SpriteTemplate gUnknown_08595EE0 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E58,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D1B4,
};
const union AffineAnimCmd gUnknown_08595EF8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 20, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08595F10[] =
{
gUnknown_08595EF8,
};
const struct SpriteTemplate gUnknown_08595F14 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08595F10,
.callback = sub_810D278,
};
const union AffineAnimCmd gUnknown_08595F2C[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFC, 0xFFFC, 20, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08595F44[] =
{
gUnknown_08595F2C,
};
const struct SpriteTemplate gMegaPunchKickSpriteTemplate =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08595F44,
.callback = sub_810D278,
};
const struct SpriteTemplate gUnknown_08595F60 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E58,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D2E4,
};
const struct SpriteTemplate gUnknown_08595F78 =
{
.tileTag = ANIM_TAG_DUCK,
.paletteTag = ANIM_TAG_DUCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D37C,
};
const struct SpriteTemplate gUnknown_08595F90 =
{
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D40C,
};
const struct SpriteTemplate gUnknown_08595FA8 =
{
.tileTag = ANIM_TAG_TORN_METAL,
.paletteTag = ANIM_TAG_TORN_METAL,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D4F4,
};
const union AffineAnimCmd gUnknown_08595FC0[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 64),
AFFINEANIMCMD_FRAME(0xFFFA, 0xFFFA, 0, 8),
AFFINEANIMCMD_FRAME(0x6, 0x6, 0, 8),
AFFINEANIMCMD_JUMP(2),
};
const union AffineAnimCmd *const gUnknown_08595FE8[] =
{
gUnknown_08595FC0,
};
const struct SpriteTemplate gUnknown_08595FEC =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595FE8,
.callback = sub_810D608,
};
const struct SpriteTemplate gUnknown_08596004 =
{
.tileTag = ANIM_TAG_FLAT_ROCK,
.paletteTag = ANIM_TAG_FLAT_ROCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D714,
};
const struct SpriteTemplate gUnknown_0859601C =
{
.tileTag = ANIM_TAG_METEOR,
.paletteTag = ANIM_TAG_METEOR,
.oam = &gUnknown_0852491C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D874,
};
const struct SpriteTemplate gUnknown_08596034 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810D984,
};
const union AnimCmd gUnknown_0859604C[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859605C[] =
{
ANIMCMD_FRAME(0, 4, .vFlip = TRUE),
ANIMCMD_FRAME(16, 4, .vFlip = TRUE),
ANIMCMD_FRAME(32, 4, .vFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859606C[] =
{
ANIMCMD_FRAME(0, 4, .hFlip = TRUE),
ANIMCMD_FRAME(16, 4, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859607C[] =
{
gUnknown_0859604C,
gUnknown_0859605C,
gUnknown_0859606C,
};
const struct SpriteTemplate gUnknown_08596088 =
{
.tileTag = ANIM_TAG_PURPLE_SCRATCH,
.paletteTag = ANIM_TAG_PURPLE_SCRATCH,
.oam = &gUnknown_08524914,
.anims = gUnknown_0859607C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DA10,
};
const union AnimCmd gUnknown_085960A0[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(64, 6),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085960AC[] =
{
ANIMCMD_FRAME(0, 6, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(64, 6, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085960B8[] =
{
ANIMCMD_FRAME(0, 6, .hFlip = TRUE),
ANIMCMD_FRAME(64, 6, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085960C4[] =
{
gUnknown_085960A0,
gUnknown_085960AC,
gUnknown_085960B8,
};
const struct SpriteTemplate gUnknown_085960D0 =
{
.tileTag = ANIM_TAG_PURPLE_SWIPE,
.paletteTag = ANIM_TAG_PURPLE_SWIPE,
.oam = &gUnknown_0852491C,
.anims = gUnknown_085960C4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DA10,
};
const union AffineAnimCmd gUnknown_085960E8[] =
{
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
AFFINEANIMCMD_FRAME(0xFFE0, 0xFFE0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596100[] =
{
gUnknown_085960E8,
};
const struct SpriteTemplate gUnknown_08596104 =
{
.tileTag = ANIM_TAG_HANDS_AND_FEET,
.paletteTag = ANIM_TAG_HANDS_AND_FEET,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595E54,
.images = NULL,
.affineAnims = gUnknown_08596100,
.callback = sub_810DA7C,
};

438
src/fire.c Normal file
View File

@ -0,0 +1,438 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8108EC8(struct Sprite *);
extern void sub_8108F08(struct Sprite *);
extern void sub_8108FBC(struct Sprite *);
extern void sub_8108F4C(struct Sprite *);
extern void sub_8109064(struct Sprite *);
extern void sub_810916C(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_8109198(struct Sprite *);
extern void sub_8109200(struct Sprite *);
extern void sub_810921C(struct Sprite *);
extern void sub_8109364(struct Sprite *);
extern void sub_81093A4(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern void sub_81098EC(struct Sprite *);
extern void sub_8109A10(struct Sprite *);
extern void sub_8109AFC(struct Sprite *);
extern void sub_8109CB0(struct Sprite *);
const union AnimCmd gUnknown_08595340[] =
{
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08595350[] =
{
ANIMCMD_FRAME(16, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(32, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_FRAME(48, 4, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595360[] =
{
gUnknown_08595340,
gUnknown_08595350,
};
const struct SpriteTemplate gUnknown_08595368 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595360,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108EC8,
};
const struct SpriteTemplate gUnknown_08595380 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595360,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F08,
};
const union AnimCmd gUnknown_08595398[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_FRAME(80, 3),
ANIMCMD_FRAME(96, 3),
ANIMCMD_FRAME(112, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085953BC[] =
{
gUnknown_08595398,
};
const union AnimCmd gUnknown_085953C0[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_FRAME(64, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085953D8[] =
{
gUnknown_085953C0,
};
const union AffineAnimCmd gUnknown_085953DC[] =
{
AFFINEANIMCMD_FRAME(0x32, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x20, 0x0, 0, 7),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085953F4[] =
{
gUnknown_085953DC,
};
const struct SpriteTemplate gUnknown_085953F8 =
{
.tileTag = ANIM_TAG_FIRE,
.paletteTag = ANIM_TAG_FIRE,
.oam = &gUnknown_08524974,
.anims = gUnknown_085953BC,
.images = NULL,
.affineAnims = gUnknown_085953F4,
.callback = sub_8108FBC,
};
const struct SpriteTemplate gUnknown_08595410 =
{
.tileTag = ANIM_TAG_FIRE,
.paletteTag = ANIM_TAG_FIRE,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108FBC,
};
const struct SpriteTemplate gUnknown_08595428 =
{
.tileTag = ANIM_TAG_FIRE_PLUME,
.paletteTag = ANIM_TAG_FIRE_PLUME,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953D8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F4C,
};
const struct SpriteTemplate gUnknown_08595440 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085953D8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108F4C,
};
const union AnimCmd gUnknown_08595458[] =
{
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595468[] =
{
gUnknown_08595458,
};
const struct SpriteTemplate gUnknown_0859546C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595468,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109064,
};
const union AffineAnimCmd gUnknown_08595484[] =
{
AFFINEANIMCMD_FRAME(0x50, 0x50, 0, 0),
AFFINEANIMCMD_FRAME(0x2, 0x2, 10, 1),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_0859549C[] =
{
gUnknown_08595484,
};
const struct SpriteTemplate gUnknown_085954A0 =
{
.tileTag = ANIM_TAG_SUNLIGHT,
.paletteTag = ANIM_TAG_SUNLIGHT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859549C,
.callback = sub_810916C,
};
const union AnimCmd gUnknown_085954B8[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085954D0[] =
{
gUnknown_085954B8,
};
const struct SpriteTemplate gEmberSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const struct SpriteTemplate gEmberFlareSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109198,
};
const struct SpriteTemplate gUnknown_08595504 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109200,
};
const struct SpriteTemplate gUnknown_0859551C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810921C,
};
const union AnimCmd gUnknown_08595534[] =
{
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595540[] =
{
gUnknown_08595534,
};
const union AffineAnimCmd gUnknown_08595544[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595554[] =
{
AFFINEANIMCMD_FRAME(0xA0, 0xA0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595564[] =
{
gUnknown_08595544,
gUnknown_08595554,
};
const struct SpriteTemplate gUnknown_0859556C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595540,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109364,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8595584 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81093A4,
};
const struct SpriteTemplate gUnknown_0859559C =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A8EE4,
};
const struct SpriteTemplate gUnknown_085955B4 =
{
.tileTag = ANIM_TAG_WARM_ROCK,
.paletteTag = ANIM_TAG_WARM_ROCK,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81098EC,
};
// gHeatedRockCoords
const s16 gUnknown_085955CC[][2] =
{
{-2, -5},
{-1, -1},
{ 3, -6},
{ 4, -2},
{ 2, -8},
{-5, -5},
{ 4, -7},
};
const struct SpriteTemplate gUnknown_085955E8 =
{
.tileTag = ANIM_TAG_WARM_ROCK,
.paletteTag = ANIM_TAG_WARM_ROCK,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109A10,
};
const union AnimCmd gUnknown_08595600[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(12, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08595614[] =
{
ANIMCMD_FRAME(16, 5),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859561C[] =
{
ANIMCMD_FRAME(20, 5),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595624[] =
{
ANIMCMD_FRAME(20, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859562C[] =
{
gUnknown_08595600,
gUnknown_08595614,
gUnknown_0859561C,
gUnknown_08595624,
};
const struct SpriteTemplate gUnknown_0859563C =
{
.tileTag = ANIM_TAG_WISP_ORB,
.paletteTag = ANIM_TAG_WISP_ORB,
.oam = &gUnknown_0852490C,
.anims = gUnknown_0859562C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109AFC,
};
const union AnimCmd gUnknown_08595654[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(32, 5),
ANIMCMD_FRAME(48, 5),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595668[] =
{
gUnknown_08595654,
};
const struct SpriteTemplate gUnknown_0859566C =
{
.tileTag = ANIM_TAG_WISP_FIRE,
.paletteTag = ANIM_TAG_WISP_FIRE,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595668,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8109CB0,
};
const s8 gUnknown_08595684[16] =
{
-1, -1, 0, 1, 1, 0, 0, -1, -1, 1, 1, 0, 0, -1, 0, 1,
};
const s8 gUnknown_08595694[16] =
{
-1, 0, 1, 0, -1, 1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1,
};

328
src/flying.c Normal file
View File

@ -0,0 +1,328 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810DE70(struct Sprite *);
extern void sub_810DFA8(struct Sprite *);
extern void sub_810E044(struct Sprite *);
extern void sub_810E13C(struct Sprite *);
extern void sub_810E1C8(struct Sprite *);
extern void sub_810E314(struct Sprite *);
extern void sub_810EA4C(struct Sprite *);
extern void sub_810EAA0(struct Sprite *);
extern void sub_810EC34(struct Sprite *);
extern void sub_810EC94(struct Sprite *);
extern void sub_810ED28(struct Sprite *);
extern void sub_810EE14(struct Sprite *);
extern void sub_810EEF8(struct Sprite *);
extern void sub_810F004(struct Sprite *);
extern void sub_810F084(struct Sprite *);
const struct SpriteTemplate gUnknown_08596270 =
{
.tileTag = ANIM_TAG_GUST,
.paletteTag = ANIM_TAG_GUST,
.oam = &gUnknown_0852495C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810DE70,
};
const union AffineAnimCmd gUnknown_08596288[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xA, 0x0, 0, 24),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085962A0[] =
{
gUnknown_08596288,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85962A4 =
{
.tileTag = ANIM_TAG_GUST,
.paletteTag = ANIM_TAG_GUST,
.oam = &gUnknown_085249BC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_085962A0,
.callback = sub_810DFA8,
};
const union AnimCmd gUnknown_085962BC[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(0, 3, .hFlip = TRUE),
ANIMCMD_FRAME(0, 3, .vFlip = TRUE),
ANIMCMD_FRAME(0, 3, .vFlip = TRUE, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085962D0[] =
{
gUnknown_085962BC,
};
const struct SpriteTemplate gUnknown_085962D4 =
{
.tileTag = ANIM_TAG_AIR_WAVE_2,
.paletteTag = ANIM_TAG_AIR_WAVE_2,
.oam = &gUnknown_08524934,
.anims = gUnknown_085962D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810E044,
};
const union AffineAnimCmd gUnknown_085962EC[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596314[] =
{
gUnknown_085962EC,
};
const union AffineAnimCmd gUnknown_08596318[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 50, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596328[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -40, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596338[] =
{
gUnknown_08596318,
gUnknown_08596328,
};
const struct SpriteTemplate gUnknown_08596340 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596314,
.callback = sub_810E13C,
};
const struct SpriteTemplate gUnknown_08596358 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_0852497C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596338,
.callback = sub_810E1C8,
};
const union AnimCmd gUnknown_08596370[] =
{
ANIMCMD_FRAME(0, 0),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596378[] =
{
ANIMCMD_FRAME(16, 0, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596380[] =
{
gUnknown_08596370,
gUnknown_08596378,
};
const struct SpriteTemplate gUnknown_08596388 =
{
.tileTag = ANIM_TAG_WHITE_FEATHER,
.paletteTag = ANIM_TAG_WHITE_FEATHER,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596380,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810E314,
};
const struct SpriteTemplate gUnknown_085963A0 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EA4C,
};
const union AnimCmd gUnknown_085963B8[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(8, 1),
ANIMCMD_FRAME(16, 1),
ANIMCMD_FRAME(8, 1, .hFlip = TRUE),
ANIMCMD_FRAME(0, 1, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085963D0[] =
{
gUnknown_085963B8,
};
const struct SpriteTemplate gUnknown_085963D4 =
{
.tileTag = ANIM_TAG_WHIRLWIND_LINES,
.paletteTag = ANIM_TAG_WHIRLWIND_LINES,
.oam = &gUnknown_08524934,
.anims = gUnknown_085963D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EAA0,
};
const union AffineAnimCmd gUnknown_085963EC[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFEC, 0x0, 0, 7),
AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, 0, 5),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859641C[] =
{
gUnknown_085963EC,
};
const struct SpriteTemplate gUnknown_08596420 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859641C,
.callback = sub_810EC34,
};
const union AffineAnimCmd gUnknown_08596438[] =
{
AFFINEANIMCMD_FRAME(0xA0, 0x100, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596448[] =
{
gUnknown_08596438,
};
const struct SpriteTemplate gUnknown_0859644C =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596448,
.callback = sub_810EC94,
};
const union AffineAnimCmd gUnknown_08596464[] =
{
AFFINEANIMCMD_FRAME(0x10, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0x28, 0x0, 0, 6),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 5),
AFFINEANIMCMD_FRAME(0xFFF0, 0x20, 0, 10),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859648C[] =
{
gUnknown_08596464,
};
const struct SpriteTemplate gUnknown_08596490 =
{
.tileTag = ANIM_TAG_ROUND_SHADOW,
.paletteTag = ANIM_TAG_ROUND_SHADOW,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_0859648C,
.callback = sub_810ED28,
};
const union AffineAnimCmd gUnknown_085964A8[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x0, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x20, 0, 12),
AFFINEANIMCMD_FRAME(0x0, 0xFFE0, 0, 11),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085964C8[] =
{
gUnknown_085964A8,
};
const struct SpriteTemplate gUnknown_085964CC =
{
.tileTag = ANIM_TAG_SPLASH,
.paletteTag = ANIM_TAG_SPLASH,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EE14,
};
const struct SpriteTemplate gUnknown_085964E4 =
{
.tileTag = ANIM_TAG_SWEAT_BEAD,
.paletteTag = ANIM_TAG_SWEAT_BEAD,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810EEF8,
};
const struct SpriteTemplate gUnknown_085964FC =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F004,
};
const struct SpriteTemplate gUnknown_08596514 =
{
.tileTag = ANIM_TAG_BIRD,
.paletteTag = ANIM_TAG_BIRD,
.oam = &gUnknown_085249DC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F084,
};

186
src/ghost.c Normal file
View File

@ -0,0 +1,186 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_811160C(struct Sprite *);
extern void sub_81117F4(struct Sprite *);
extern void sub_81119E0(struct Sprite *);
extern void sub_8111B9C(struct Sprite *);
extern void sub_8112264(struct Sprite *);
extern void sub_81129F0(struct Sprite *);
extern void sub_8112B78(struct Sprite *);
extern void sub_8112E9C(struct Sprite *);
extern void sub_8112F60(struct Sprite *);
const union AffineAnimCmd gUnknown_08596CF8[] =
{
AFFINEANIMCMD_FRAME(0x1E, 0x1E, 10, 5),
AFFINEANIMCMD_FRAME(0xFFE2, 0xFFE2, 10, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596D10[] =
{
gUnknown_08596CF8,
};
const struct SpriteTemplate gUnknown_08596D14 =
{
.tileTag = ANIM_TAG_YELLOW_BALL,
.paletteTag = ANIM_TAG_YELLOW_BALL,
.oam = &gUnknown_085249CC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596D10,
.callback = sub_811160C,
};
const struct SpriteTemplate gUnknown_08596D2C =
{
.tileTag = ANIM_TAG_YELLOW_BALL,
.paletteTag = ANIM_TAG_YELLOW_BALL,
.oam = &gUnknown_08524A2C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81117F4,
};
const union AffineAnimCmd gUnknown_08596D44[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596D54[] =
{
gUnknown_08596D44,
};
const struct SpriteTemplate gUnknown_08596D58 =
{
.tileTag = ANIM_TAG_SHADOW_BALL,
.paletteTag = ANIM_TAG_SHADOW_BALL,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596D54,
.callback = sub_81119E0,
};
const union AnimCmd gUnknown_08596D70[] =
{
ANIMCMD_FRAME(0, 2),
ANIMCMD_FRAME(8, 2),
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(24, 2),
ANIMCMD_FRAME(32, 2),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596D88[] =
{
gUnknown_08596D70,
};
const struct SpriteTemplate gUnknown_08596D8C =
{
.tileTag = ANIM_TAG_LICK,
.paletteTag = ANIM_TAG_LICK,
.oam = &gUnknown_08524954,
.anims = gUnknown_08596D88,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8111B9C,
};
const union AffineAnimCmd gUnknown_08596DA4[] =
{
AFFINEANIMCMD_FRAME(0x200, 0x200, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596DB4[] =
{
gUnknown_08596DA4,
};
const struct SpriteTemplate gUnknown_08596DB8 =
{
.tileTag = ANIM_TAG_WHITE_SHADOW,
.paletteTag = ANIM_TAG_WHITE_SHADOW,
.oam = &gUnknown_08524A5C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112264,
};
const struct SpriteTemplate gUnknown_08596DD0 =
{
.tileTag = ANIM_TAG_NAIL,
.paletteTag = ANIM_TAG_NAIL,
.oam = &gUnknown_08524A54,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81129F0,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596DE8 =
{
.tileTag = ANIM_TAG_GHOSTLY_SPIRIT,
.paletteTag = ANIM_TAG_GHOSTLY_SPIRIT,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112B78,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596E00 =
{
.tileTag = ANIM_TAG_DEVIL,
.paletteTag = ANIM_TAG_DEVIL,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112B78,
};
const union AnimCmd gUnknown_08596E18[] =
{
ANIMCMD_FRAME(0, 4),
ANIMCMD_FRAME(8, 4),
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(24, 4),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08596E2C[] =
{
gUnknown_08596E18,
};
const struct SpriteTemplate gUnknown_08596E30 =
{
.tileTag = ANIM_TAG_PURPLE_FLAME,
.paletteTag = ANIM_TAG_PURPLE_FLAME,
.oam = &gUnknown_08524A74,
.anims = gUnknown_08596E2C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112E9C,
};
const struct SpriteTemplate gUnknown_08596E48 =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8112F60,
};

121
src/ground.c Normal file
View File

@ -0,0 +1,121 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_8114994(struct Sprite *);
extern void sub_8114A7C(struct Sprite *);
extern void sub_8114AF0(struct Sprite *);
extern void sub_8114AF0(struct Sprite *);
extern void sub_8114B80(struct Sprite *);
extern void sub_81151A0(struct Sprite *);
extern void sub_8115244(struct Sprite *);
const union AffineAnimCmd gUnknown_08597150[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 15, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08597160[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 20, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08597170[] =
{
gUnknown_08597150,
};
const union AffineAnimCmd *const gUnknown_08597174[] =
{
gUnknown_08597160,
};
const struct SpriteTemplate gUnknown_08597178 =
{
.tileTag = ANIM_TAG_BONE,
.paletteTag = ANIM_TAG_BONE,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597170,
.callback = sub_8114994,
};
const struct SpriteTemplate gUnknown_08597190 =
{
.tileTag = ANIM_TAG_BONE,
.paletteTag = ANIM_TAG_BONE,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597174,
.callback = sub_8114A7C,
};
const struct SpriteTemplate gUnknown_085971A8 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114AF0,
};
const union AnimCmd gUnknown_085971C0[] =
{
ANIMCMD_FRAME(1, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085971C8[] =
{
gUnknown_085971C0,
};
const struct SpriteTemplate gUnknown_085971CC =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_0852490C,
.anims = gUnknown_085971C8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114AF0,
};
const struct SpriteTemplate gUnknown_085971E4 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8114B80,
};
const struct SpriteTemplate gUnknown_085971FC =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81151A0,
};
const struct SpriteTemplate gUnknown_08597214 =
{
.tileTag = ANIM_TAG_DIRT_MOUND,
.paletteTag = ANIM_TAG_DIRT_MOUND,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8115244,
};

491
src/ice.c Normal file
View File

@ -0,0 +1,491 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810B6C4(struct Sprite *);
extern void sub_810B8AC(struct Sprite *);
extern void sub_810B8EC(struct Sprite *);
extern void sub_810B974(struct Sprite *);
extern void sub_810BA24(struct Sprite *);
extern void sub_810BC94(struct Sprite *);
extern void sub_810BE48(struct Sprite *);
extern void sub_810BED0(struct Sprite *);
extern void sub_810C2F0(struct Sprite *);
extern void sub_810C560(struct Sprite *);
extern void sub_810CB58(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern void unc_080B06FC(struct Sprite *);
extern void sub_810CD4C(struct Sprite *);
const union AnimCmd gUnknown_08595A48[] =
{
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(1, 5, .hFlip = TRUE),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595A54[] =
{
gUnknown_08595A48,
};
// unknown sprite template
const struct SpriteTemplate gUnknown_08595A58 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B6C4,
};
const union AnimCmd gUnknown_08595A70[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A78[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A80[] =
{
ANIMCMD_FRAME(6, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A88[] =
{
ANIMCMD_FRAME(7, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A90[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595A98[] =
{
ANIMCMD_FRAME(12, 6),
ANIMCMD_FRAME(13, 6),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595AA4[] =
{
gUnknown_08595A70,
};
const union AnimCmd *const gUnknown_08595AA8[] =
{
gUnknown_08595A78,
};
const union AnimCmd *const gUnknown_08595AAC[] =
{
gUnknown_08595A80,
};
const union AnimCmd *const gUnknown_08595AB0[] =
{
gUnknown_08595A88,
};
const union AnimCmd *const gUnknown_08595AB4[] =
{
gUnknown_08595A90,
};
const union AnimCmd *const gUnknown_08595AB8[] =
{
gUnknown_08595A98,
};
const union AffineAnimCmd gUnknown_08595ABC[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 40, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595ACC[] =
{
gUnknown_08595ABC,
};
const struct SpriteTemplate gUnknown_08595AD0 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524B24,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595ACC,
.callback = sub_810B8AC,
};
const struct SpriteTemplate gUnknown_08595AE8 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A24,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B8AC,
};
const union AffineAnimCmd gUnknown_08595B00[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 10, 1),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595B10[] =
{
gUnknown_08595B00,
};
const struct SpriteTemplate gUnknown_08595B14 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524AC4,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595B10,
.callback = sub_810B8EC,
};
const struct SpriteTemplate gUnknown_08595B2C =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A24,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810B8EC,
};
const union AffineAnimCmd gUnknown_08595B44[] =
{
AFFINEANIMCMD_FRAME(0xCE, 0xCE, 0, 0),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 6),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595B64[] =
{
gUnknown_08595B44,
};
const struct SpriteTemplate gUnknown_08595B68 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524AC4,
.anims = gUnknown_08595AA8,
.images = NULL,
.affineAnims = gUnknown_08595B64,
.callback = sub_810B974,
};
const struct SpriteTemplate gUnknown_08595B80 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524A84,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gUnknown_08595B64,
.callback = sub_810B974,
};
const struct SpriteTemplate gUnknown_08595B98 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BA24,
};
const struct SpriteTemplate gUnknown_08595BB0 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08595AB4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BC94,
};
const struct SpriteTemplate gUnknown_08595BC8 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BC94,
};
const union AnimCmd gUnknown_08595BE0[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(6, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(2, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595C00[] =
{
gUnknown_08595BE0,
};
const struct SpriteTemplate gUnknown_08595C04 =
{
.tileTag = ANIM_TAG_ICE_SPIKES,
.paletteTag = ANIM_TAG_ICE_SPIKES,
.oam = &gUnknown_08524A64,
.anims = gUnknown_08595C00,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BE48,
};
const union AnimCmd gUnknown_08595C1C[] =
{
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595C28[] =
{
gUnknown_08595C1C,
};
const struct SpriteTemplate gUnknown_08595C2C =
{
.tileTag = ANIM_TAG_MIST_CLOUD,
.paletteTag = ANIM_TAG_MIST_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BED0,
};
const struct SpriteTemplate gUnknown_08595C44 =
{
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810BED0,
};
const u8 gUnknown_08595C5C[] =
{
0, 1, 2, 2, 2, 2, 3, 4, 4, 4, 5, 6, 6, 6, 6, 7, 8, 8, 8, 9,
};
const struct SpriteTemplate gUnknown_08595C70 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852490C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810C2F0,
};
const u8 gUnknown_08595C88[] =
{
0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5,
};
const struct SpriteTemplate gUnknown_08595C9C =
{
.tileTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.paletteTag = ANIM_TAG_PURPLE_GAS_CLOUD,
.oam = &gUnknown_08524A54,
.anims = gUnknown_08595C28,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810C560,
};
const u8 gUnknown_08595CB4[][4] =
{
{0x64, 0xE0, 0x01, 0x20},
{0x55, 0xE0, 0x01, 0x00},
{0xF2, 0xE0, 0x11, 0x10},
{0x42, 0xE0, 0x21, 0x10},
{0xB6, 0xE0, 0x31, 0x00},
{0x3C, 0xE0, 0x01, 0x20},
{0xD6, 0xE0, 0x11, 0x00},
{0x71, 0xE0, 0x01, 0x10},
{0xD2, 0xE0, 0x31, 0x10},
{0x26, 0xE0, 0x21, 0x00},
};
const union AffineAnimCmd gUnknown_08595CDC[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595CEC[] =
{
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595CFC[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595D0C[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595D1C[] =
{
gUnknown_08595CDC,
gUnknown_08595CEC,
gUnknown_08595CFC,
};
const union AffineAnimCmd *const gUnknown_08595D28[] =
{
gUnknown_08595D0C,
};
const struct SpriteTemplate gUnknown_08595D2C =
{
.tileTag = ANIM_TAG_HAIL,
.paletteTag = ANIM_TAG_HAIL,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595D1C,
.callback = sub_810CB58,
};
const struct SpriteTemplate gUnknown_08595D44 =
{
.tileTag = ANIM_TAG_HAIL,
.paletteTag = ANIM_TAG_HAIL,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08595D28,
.callback = sub_80A8EE4,
};
const union AnimCmd gUnknown_08595D5C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595D64[] =
{
ANIMCMD_FRAME(16, 4),
ANIMCMD_FRAME(32, 4),
ANIMCMD_FRAME(48, 4),
ANIMCMD_FRAME(64, 4),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595D78[] =
{
gUnknown_08595D5C,
gUnknown_08595D64,
};
const union AffineAnimCmd gUnknown_08595D80[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595D90[] =
{
AFFINEANIMCMD_FRAME(0x118, 0x118, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DA0[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DB0[] =
{
AFFINEANIMCMD_FRAME(0x180, 0x180, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08595DC0[] =
{
AFFINEANIMCMD_FRAME(0x1C0, 0x1C0, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08595DD0[] =
{
gUnknown_08595D80,
gUnknown_08595D90,
gUnknown_08595DA0,
gUnknown_08595DB0,
gUnknown_08595DC0,
};
const struct SpriteTemplate gUnknown_08595DE4 =
{
.tileTag = ANIM_TAG_ICE_CHUNK,
.paletteTag = ANIM_TAG_ICE_CHUNK,
.oam = &gUnknown_085249D4,
.anims = gUnknown_08595D78,
.images = NULL,
.affineAnims = gUnknown_08595DD0,
.callback = unc_080B06FC,
};
const struct SpriteTemplate gUnknown_08595DFC =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AAC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810CD4C,
};

View File

@ -1542,8 +1542,8 @@ static void Task_IntroLoadPart1Graphics3(u8 taskId)
LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000));
LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000));
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_ROCKS)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
}

View File

@ -268,7 +268,7 @@ const u8 gUnknown_08614164[][3] = {
const struct WindowTemplate gUnknown_08614174[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@ -277,7 +277,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x27,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@ -286,7 +286,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x117,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 1,
.width = 8,
@ -295,7 +295,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x1A1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 5,
@ -304,7 +304,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x16B,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 7,
.tilemapTop = 13,
.width = 4,
@ -313,7 +313,7 @@ const struct WindowTemplate gUnknown_08614174[] =
.baseBlock = 0x189,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -327,7 +327,7 @@ const struct WindowTemplate gUnknown_08614174[] =
const struct WindowTemplate gUnknown_086141AC[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 17,
.width = 7,
@ -336,7 +336,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 22,
.tilemapTop = 15,
.width = 7,
@ -345,7 +345,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 15,
.width = 14,
@ -354,7 +354,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 15,
.tilemapTop = 13,
.width = 14,
@ -363,7 +363,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -372,7 +372,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x1B1,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 15,
.width = 5,
@ -381,7 +381,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@ -390,7 +390,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 24,
.tilemapTop = 17,
.width = 5,
@ -399,7 +399,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x21D,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@ -408,7 +408,7 @@ const struct WindowTemplate gUnknown_086141AC[] =
.baseBlock = 0x245,
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,

View File

@ -146,7 +146,7 @@ static const struct BgTemplate sUnknown_0859F290[] = {
static const struct WindowTemplate sUnknown_0859F29C[] = {
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 3,
.width = 26,

View File

@ -165,7 +165,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// No saved game
// NEW GAME
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN0,
.width = MENU_WIDTH,
@ -175,7 +175,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTIONS
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN1,
.width = MENU_WIDTH,
@ -186,7 +186,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
// Has saved game
// CONTINUE
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN2,
.width = MENU_WIDTH,
@ -196,7 +196,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// NEW GAME
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN3,
.width = MENU_WIDTH,
@ -206,7 +206,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY GIFT
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN4,
.width = MENU_WIDTH,
@ -216,7 +216,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION / MYSTERY EVENTS
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN5,
.width = MENU_WIDTH,
@ -226,7 +226,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// OPTION
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT,
.tilemapTop = MENU_TOP_WIN6,
.width = MENU_WIDTH,
@ -236,7 +236,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
},
// Error message window
{
.priority = 0,
.bg = 0,
.tilemapLeft = MENU_LEFT_ERROR,
.tilemapTop = MENU_TOP_ERROR,
.width = MENU_WIDTH_ERROR,
@ -250,7 +250,7 @@ static const struct WindowTemplate sWindowTemplates_MainMenu[] =
static const struct WindowTemplate gUnknown_082FF080[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -259,7 +259,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 5,
.width = 6,
@ -268,7 +268,7 @@ static const struct WindowTemplate gUnknown_082FF080[] =
.baseBlock = 0x6D
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 2,
.width = 9,
@ -323,7 +323,7 @@ static const union AffineAnimCmd sSpriteAffineAnim_PlayerShrink[] = {
AFFINEANIMCMD_END
};
static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
static const union AffineAnimCmd *const sSpriteAffineAnimTable_PlayerShrink[] =
{
sSpriteAffineAnim_PlayerShrink
};
@ -2083,21 +2083,21 @@ static void DrawMainMenuWindowBorder(const struct WindowTemplate *template, u16
u16 sp14 = 7 + baseTileNum;
u16 r6 = 8 + baseTileNum;
FillBgTilemapBufferRect(template->priority, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
FillBgTilemapBufferRect(template->priority, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->priority, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->priority, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
FillBgTilemapBufferRect(template->priority, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
FillBgTilemapBufferRect(template->priority, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
CopyBgTilemapBufferToVram(template->priority);
FillBgTilemapBufferRect(template->bg, baseTileNum, template->tilemapLeft - 1, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, r9, template->tilemapLeft, template->tilemapTop - 1, template->width, 1, 2);
FillBgTilemapBufferRect(template->bg, r10, template->tilemapLeft + template->width, template->tilemapTop - 1, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, sp18, template->tilemapLeft - 1, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->bg, spC, template->tilemapLeft + template->width, template->tilemapTop, 1, template->height, 2);
FillBgTilemapBufferRect(template->bg, sp10, template->tilemapLeft - 1, template->tilemapTop + template->height, 1, 1, 2);
FillBgTilemapBufferRect(template->bg, sp14, template->tilemapLeft, template->tilemapTop + template->height, template->width, 1, 2);
FillBgTilemapBufferRect(template->bg, r6, template->tilemapLeft + template->width, template->tilemapTop + template->height, 1, 1, 2);
CopyBgTilemapBufferToVram(template->bg);
}
static void ClearMainMenuWindowTilemap(const struct WindowTemplate *template)
{
FillBgTilemapBufferRect(template->priority, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
CopyBgTilemapBufferToVram(template->priority);
FillBgTilemapBufferRect(template->bg, 0, template->tilemapLeft - 1, template->tilemapTop - 1, template->tilemapLeft + template->width + 1, template->tilemapTop + template->height + 1, 2);
CopyBgTilemapBufferToVram(template->bg);
}
static void NewGameBirchSpeech_ClearGenderWindowTilemap(u8 a, u8 b, u8 c, u8 d, u8 e, u8 unused)

View File

@ -541,7 +541,7 @@ static void LoadMapNamePopUpWindowBg(void)
}
popUpThemeId = gRegionMapSectionId_To_PopUpThemeIdMapping[regionMapSectionId];
LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_PRIORITY), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
LoadBgTiles(GetWindowAttribute(popupWindowId, WINDOW_BG), &(gMapPopUp_Outline_Table[popUpThemeId][0]), 0x400, 0x21D);
CallWindowFunction(popupWindowId, sub_80D4A78);
PutWindowTilemap(popupWindowId);
if(gMapHeader.weather == WEATHER_BUBBLES)

View File

@ -66,7 +66,7 @@ static const u8 gUnknown_0860F094[] = { 8, 4, 1 };
static const struct WindowTemplate gUnknown_0860F098[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -79,7 +79,7 @@ static const struct WindowTemplate gUnknown_0860F098[] =
static const struct WindowTemplate gUnknown_0860F0A8 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@ -782,9 +782,9 @@ u8 sub_81980F0(u8 bg, u8 xPos, u8 yPos, u8 palette, u16 baseTile)
memset(&window, 0, sizeof(window));
if (bg > 3)
window.priority = 0;
window.bg = 0;
else
window.priority = bg;
window.bg = bg;
window.tilemapTop = yPos;
window.height = 2;
@ -1147,7 +1147,7 @@ void sub_81989B8(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const stru
void SetWindowTemplateFields(struct WindowTemplate *template, u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock)
{
template->priority = bg;
template->bg = bg;
template->tilemapLeft = left;
template->tilemapTop = top;
template->width = width;

View File

@ -43,7 +43,7 @@ static const struct BgTemplate sBgTemplates[] =
static const struct WindowTemplate sWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 4,
.tilemapTop = 15,
.width = 22,
@ -52,7 +52,7 @@ static const struct WindowTemplate sWindowTemplates[] =
.baseBlock = 20
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 7,
.tilemapTop = 6,
.width = 16,

View File

@ -103,7 +103,7 @@ static const struct BgTemplate gUnknown_0858BE00[] =
static const struct WindowTemplate gUnknown_0858BE10[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@ -112,7 +112,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 3,
.tilemapTop = 10,
.width = 19,
@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x0C8
},
{
.priority = 3,
.bg = 3,
.tilemapLeft = 8,
.tilemapTop = 6,
.width = 17,
@ -130,7 +130,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x030
},
{
.priority = 3,
.bg = 3,
.tilemapLeft = 8,
.tilemapTop = 4,
.width = 17,
@ -139,7 +139,7 @@ static const struct WindowTemplate gUnknown_0858BE10[] =
.baseBlock = 0x052
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 30,

233
src/normal.c Normal file
View File

@ -0,0 +1,233 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_811572C(struct Sprite *);
extern void sub_81157FC(struct Sprite *);
extern void sub_81158A4(struct Sprite *);
extern void sub_81159B4(struct Sprite *);
extern void sub_81160A4(struct Sprite *);
extern void sub_8116388(struct Sprite *);
extern void sub_8116420(struct Sprite *);
extern void sub_8116458(struct Sprite *);
extern void sub_81164F0(struct Sprite *);
extern void sub_8116560(struct Sprite *);
extern void sub_81165A8(struct Sprite *);
extern void sub_81163D0(struct Sprite *);
const union AnimCmd gUnknown_0859722C[] =
{
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(4, 8),
ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd gUnknown_08597240[] =
{
ANIMCMD_FRAME(0, 8, .hFlip = TRUE),
ANIMCMD_FRAME(4, 8),
ANIMCMD_FRAME(0, 8),
ANIMCMD_FRAME(8, 8),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08597254[] =
{
gUnknown_0859722C,
gUnknown_08597240,
};
const struct SpriteTemplate gConfusionDuckSpriteTemplate =
{
.tileTag = ANIM_TAG_DUCK,
.paletteTag = ANIM_TAG_DUCK,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08597254,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811572C,
};
const struct SpriteTemplate gSimplePaletteBlendSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81157FC,
};
const struct SpriteTemplate gComplexPaletteBlendSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81158A4,
};
const union AnimCmd gUnknown_085972A4[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085972BC[] =
{
gUnknown_085972A4,
};
const struct SpriteTemplate gUnknown_085972C0 =
{
.tileTag = ANIM_TAG_SPARKLE_4,
.paletteTag = ANIM_TAG_SPARKLE_4,
.oam = &gUnknown_08524914,
.anims = gUnknown_085972BC,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81159B4,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85972D8 =
{
.tileTag = 0,
.paletteTag = 0,
.oam = &gDummyOamData,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81160A4,
};
const union AffineAnimCmd gUnknown_085972F0[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597300[] =
{
AFFINEANIMCMD_FRAME(0xD8, 0xD8, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597318[] =
{
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08597330[] =
{
AFFINEANIMCMD_FRAME(0x80, 0x80, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08597348[] =
{
gUnknown_085972F0,
gUnknown_08597300,
gUnknown_08597318,
gUnknown_08597330,
};
const struct SpriteTemplate gBasicHitSplatSpriteTemplate =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116388,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8597370 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116420,
};
const struct SpriteTemplate gUnknown_08597388 =
{
.tileTag = ANIM_TAG_WATER_IMPACT,
.paletteTag = ANIM_TAG_WATER_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116388,
};
const struct SpriteTemplate gUnknown_085973A0 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_8116458,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_85973B8 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81164F0,
};
const struct SpriteTemplate gUnknown_085973D0 =
{
.tileTag = ANIM_TAG_CROSS_IMPACT,
.paletteTag = ANIM_TAG_CROSS_IMPACT,
.oam = &gUnknown_08524A34,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8116560,
};
const struct SpriteTemplate gUnknown_085973E8 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524974,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81165A8,
};
const struct SpriteTemplate gUnknown_08597400 =
{
.tileTag = ANIM_TAG_IMPACT,
.paletteTag = ANIM_TAG_IMPACT,
.oam = &gUnknown_08524A94,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08597348,
.callback = sub_81163D0,
};

View File

@ -92,7 +92,7 @@ static const u8 *const sOptionMenuItemsNames[MENUITEM_COUNT] =
static const struct WindowTemplate sOptionMenuWinTemplates[] =
{
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 26,
@ -101,7 +101,7 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
.baseBlock = 2
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 5,
.width = 26,

View File

@ -185,7 +185,7 @@ const struct MenuAction gMailboxMailOptions[] =
static const struct WindowTemplate gUnknown_085DFF24[3] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@ -194,7 +194,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 9,
@ -203,7 +203,7 @@ static const struct WindowTemplate gUnknown_085DFF24[3] =
.baseBlock = 1
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@ -243,7 +243,7 @@ static const struct ListMenuTemplate gUnknown_085DFF44 =
static const struct WindowTemplate gUnknown_085DFF5C[5] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 1,
.width = 13,
@ -252,7 +252,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0001
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 13,
@ -261,7 +261,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x00EB
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 8,
.width = 3,
@ -270,7 +270,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0153
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 13,
@ -279,7 +279,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
.baseBlock = 0x0139
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 9,
.width = 6,
@ -291,7 +291,7 @@ static const struct WindowTemplate gUnknown_085DFF5C[5] =
static const struct WindowTemplate gUnknown_085DFF84 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 9,
.tilemapTop = 7,
.width = 5,

185
src/poison.c Normal file
View File

@ -0,0 +1,185 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_80A77C8(struct Sprite *);
extern void sub_810DBAC(struct Sprite *);
extern void sub_810DC2C(struct Sprite *);
extern void sub_810DCD0(struct Sprite *);
extern void sub_810DD50(struct Sprite *);
extern void sub_810DDC4(struct Sprite *);
extern void sub_810DDC4(struct Sprite *);
extern const union AnimCmd *const gUnknown_08595200[];
const union AnimCmd gUnknown_0859611C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(24, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596130[] =
{
gUnknown_0859611C,
};
const struct SpriteTemplate gUnknown_08596134 =
{
.tileTag = ANIM_TAG_TOXIC_BUBBLE,
.paletteTag = ANIM_TAG_TOXIC_BUBBLE,
.oam = &gUnknown_08524954,
.anims = gUnknown_08596130,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A77C8,
};
const union AnimCmd gUnknown_0859614C[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596154[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_0859615C[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596164[] =
{
gUnknown_0859614C,
};
const union AnimCmd *const gUnknown_08596168[] =
{
gUnknown_08596154,
};
const union AnimCmd *const gUnknown_0859616C[] =
{
gUnknown_0859615C,
};
const union AffineAnimCmd gUnknown_08596170[] =
{
AFFINEANIMCMD_FRAME(0x160, 0x160, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 10),
AFFINEANIMCMD_FRAME(0xA, 0xA, 0, 10),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08596190[] =
{
AFFINEANIMCMD_FRAME(0xEC, 0xEC, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085961A0[] =
{
gUnknown_08596170,
};
const union AffineAnimCmd *const gUnknown_085961A4[] =
{
gUnknown_08596190,
};
const struct SpriteTemplate gUnknown_085961A8 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_085961A0,
.callback = sub_810DBAC,
};
const struct SpriteTemplate gUnknown_085961C0 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_085961A0,
.callback = sub_810DC2C,
};
const struct SpriteTemplate gUnknown_085961D8 =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_0852496C,
.anims = gUnknown_0859616C,
.images = NULL,
.affineAnims = gUnknown_085961A4,
.callback = sub_810DCD0,
};
const union AffineAnimCmd gUnknown_085961F0[] =
{
AFFINEANIMCMD_FRAME(0xFFF0, 0x10, 0, 6),
AFFINEANIMCMD_FRAME(0x10, 0xFFF0, 0, 6),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596208[] =
{
gUnknown_085961F0,
};
const struct SpriteTemplate gUnknown_0859620C =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_085249CC,
.anims = gUnknown_08596168,
.images = NULL,
.affineAnims = gUnknown_08596208,
.callback = sub_810DD50,
};
const union AffineAnimCmd gUnknown_08596224[] =
{
AFFINEANIMCMD_FRAME(0x9C, 0x9C, 0, 0),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 20),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_0859623C[] =
{
gUnknown_08596224,
};
const struct SpriteTemplate gPoisonBubbleSpriteTemplate =
{
.tileTag = ANIM_TAG_POISON_BUBBLE,
.paletteTag = ANIM_TAG_POISON_BUBBLE,
.oam = &gUnknown_0852496C,
.anims = gUnknown_08596164,
.images = NULL,
.affineAnims = gUnknown_0859623C,
.callback = sub_810DDC4,
};
const struct SpriteTemplate gWaterBubbleSpriteTemplate =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_08595200,
.images = NULL,
.affineAnims = gUnknown_0859623C,
.callback = sub_810DDC4,
};

View File

@ -295,7 +295,7 @@ static const struct Pokeblock sFavoritePokeblocksTable[] =
static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@ -304,7 +304,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x1E
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 1,
.width = 14,
@ -313,7 +313,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x30
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 13,
.width = 5,
@ -322,7 +322,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x12C
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 5,
@ -331,7 +331,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x136
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 17,
.width = 5,
@ -340,7 +340,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x140
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 13,
.width = 5,
@ -349,7 +349,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x14A
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 8,
.tilemapTop = 15,
.width = 5,
@ -358,7 +358,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x154
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 17,
.width = 2,
@ -367,7 +367,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x15E
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 7,
.tilemapTop = 5,
.width = 6,
@ -376,7 +376,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x162
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 7,
.tilemapTop = 7,
.width = 6,
@ -385,7 +385,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
.baseBlock = 0x186
},
{
.priority = 1,
.bg = 1,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -398,7 +398,7 @@ static const struct WindowTemplate sWindowTemplatesForPokeblockMenu[] =
static const struct WindowTemplate sTossPkblockWindowTemplate =
{
.priority = 1,
.bg = 1,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,

View File

@ -6,6 +6,8 @@
#include "task.h"
#include "util.h"
#include "constants/rgb.h"
#include "constants/battle_anim.h"
#include "constants/species.h"
struct UnkAnimStruct
{
@ -183,418 +185,392 @@ static IWRAM_DATA bool32 sUnknown_03001274;
// const rom data
static const u8 sSpeciesToBackAnimSet[] =
{
0x00, // SPECIES_NONE
0x13, // SPECIES_BULBASAUR
0x02, // SPECIES_IVYSAUR
0x08, // SPECIES_VENUSAUR
0x12, // SPECIES_CHARMANDER
0x15, // SPECIES_CHARMELEON
0x17, // SPECIES_CHARIZARD
0x12, // SPECIES_SQUIRTLE
0x12, // SPECIES_WARTORTLE
0x19, // SPECIES_BLASTOISE
0x02, // SPECIES_CATERPIE
0x13, // SPECIES_METAPOD
0x11, // SPECIES_BUTTERFREE
0x02, // SPECIES_WEEDLE
0x13, // SPECIES_KAKUNA
0x01, // SPECIES_BEEDRILL
0x0f, // SPECIES_PIDGEY
0x15, // SPECIES_PIDGEOTTO
0x0f, // SPECIES_PIDGEOT
0x0a, // SPECIES_RATTATA
0x0a, // SPECIES_RATICATE
0x0f, // SPECIES_SPEAROW
0x15, // SPECIES_FEAROW
0x0f, // SPECIES_EKANS
0x09, // SPECIES_ARBOK
0x16, // SPECIES_PIKACHU
0x16, // SPECIES_RAICHU
0x12, // SPECIES_SANDSHREW
0x10, // SPECIES_SANDSLASH
0x12, // SPECIES_NIDORAN_F
0x15, // SPECIES_NIDORINA
0x09, // SPECIES_NIDOQUEEN
0x12, // SPECIES_NIDORAN_M
0x15, // SPECIES_NIDORINO
0x09, // SPECIES_NIDOKING
0x13, // SPECIES_CLEFAIRY
0x13, // SPECIES_CLEFABLE
0x10, // SPECIES_VULPIX
0x01, // SPECIES_NINETALES
0x13, // SPECIES_JIGGLYPUFF
0x06, // SPECIES_WIGGLYTUFF
0x11, // SPECIES_ZUBAT
0x09, // SPECIES_GOLBAT
0x02, // SPECIES_ODDISH
0x02, // SPECIES_GLOOM
0x14, // SPECIES_VILEPLUME
0x02, // SPECIES_PARAS
0x08, // SPECIES_PARASECT
0x0a, // SPECIES_VENONAT
0x11, // SPECIES_VENOMOTH
0x09, // SPECIES_DIGLETT
0x09, // SPECIES_DUGTRIO
0x10, // SPECIES_MEOWTH
0x0f, // SPECIES_PERSIAN
0x02, // SPECIES_PSYDUCK
0x14, // SPECIES_GOLDUCK
0x10, // SPECIES_MANKEY
0x10, // SPECIES_PRIMEAPE
0x15, // SPECIES_GROWLITHE
0x15, // SPECIES_ARCANINE
0x12, // SPECIES_POLIWAG
0x09, // SPECIES_POLIWHIRL
0x0e, // SPECIES_POLIWRATH
0x14, // SPECIES_ABRA
0x14, // SPECIES_KADABRA
0x0d, // SPECIES_ALAKAZAM
0x15, // SPECIES_MACHOP
0x09, // SPECIES_MACHOKE
0x09, // SPECIES_MACHAMP
0x0b, // SPECIES_BELLSPROUT
0x0b, // SPECIES_WEEPINBELL
0x0b, // SPECIES_VICTREEBEL
0x02, // SPECIES_TENTACOOL
0x02, // SPECIES_TENTACRUEL
0x0e, // SPECIES_GEODUDE
0x08, // SPECIES_GRAVELER
0x08, // SPECIES_GOLEM
0x17, // SPECIES_PONYTA
0x15, // SPECIES_RAPIDASH
0x02, // SPECIES_SLOWPOKE
0x13, // SPECIES_SLOWBRO
0x0f, // SPECIES_MAGNEMITE
0x0f, // SPECIES_MAGNETON
0x02, // SPECIES_FARFETCHD
0x0f, // SPECIES_DODUO
0x15, // SPECIES_DODRIO
0x13, // SPECIES_SEEL
0x02, // SPECIES_DEWGONG
0x0b, // SPECIES_GRIMER
0x0c, // SPECIES_MUK
0x13, // SPECIES_SHELLDER
0x0f, // SPECIES_CLOYSTER
0x01, // SPECIES_GASTLY
0x01, // SPECIES_HAUNTER
0x14, // SPECIES_GENGAR
0x09, // SPECIES_ONIX
0x13, // SPECIES_DROWZEE
0x14, // SPECIES_HYPNO
0x0a, // SPECIES_KRABBY
0x09, // SPECIES_KINGLER
0x15, // SPECIES_VOLTORB
0x15, // SPECIES_ELECTRODE
0x02, // SPECIES_EXEGGCUTE
0x10, // SPECIES_EXEGGUTOR
0x15, // SPECIES_CUBONE
0x10, // SPECIES_MAROWAK
0x02, // SPECIES_HITMONLEE
0x0f, // SPECIES_HITMONCHAN
0x02, // SPECIES_LICKITUNG
0x06, // SPECIES_KOFFING
0x06, // SPECIES_WEEZING
0x0e, // SPECIES_RHYHORN
0x0e, // SPECIES_RHYDON
0x12, // SPECIES_CHANSEY
0x0b, // SPECIES_TANGELA
0x12, // SPECIES_KANGASKHAN
0x13, // SPECIES_HORSEA
0x11, // SPECIES_SEADRA
0x11, // SPECIES_GOLDEEN
0x11, // SPECIES_SEAKING
0x13, // SPECIES_STARYU
0x19, // SPECIES_STARMIE
0x14, // SPECIES_MR_MIME
0x0f, // SPECIES_SCYTHER
0x13, // SPECIES_JYNX
0x16, // SPECIES_ELECTABUZZ
0x17, // SPECIES_MAGMAR
0x0e, // SPECIES_PINSIR
0x0e, // SPECIES_TAUROS
0x10, // SPECIES_MAGIKARP
0x09, // SPECIES_GYARADOS
0x19, // SPECIES_LAPRAS
0x05, // SPECIES_DITTO
0x12, // SPECIES_EEVEE
0x19, // SPECIES_VAPOREON
0x16, // SPECIES_JOLTEON
0x17, // SPECIES_FLAREON
0x01, // SPECIES_PORYGON
0x13, // SPECIES_OMANYTE
0x13, // SPECIES_OMASTAR
0x13, // SPECIES_KABUTO
0x15, // SPECIES_KABUTOPS
0x15, // SPECIES_AERODACTYL
0x13, // SPECIES_SNORLAX
0x19, // SPECIES_ARTICUNO
0x16, // SPECIES_ZAPDOS
0x17, // SPECIES_MOLTRES
0x02, // SPECIES_DRATINI
0x0f, // SPECIES_DRAGONAIR
0x09, // SPECIES_DRAGONITE
0x0d, // SPECIES_MEWTWO
0x12, // SPECIES_MEW
0x12, // SPECIES_CHIKORITA
0x02, // SPECIES_BAYLEEF
0x09, // SPECIES_MEGANIUM
0x12, // SPECIES_CYNDAQUIL
0x15, // SPECIES_QUILAVA
0x17, // SPECIES_TYPHLOSION
0x15, // SPECIES_TOTODILE
0x15, // SPECIES_CROCONAW
0x09, // SPECIES_FERALIGATR
0x12, // SPECIES_SENTRET
0x10, // SPECIES_FURRET
0x11, // SPECIES_HOOTHOOT
0x0f, // SPECIES_NOCTOWL
0x0a, // SPECIES_LEDYBA
0x11, // SPECIES_LEDIAN
0x0a, // SPECIES_SPINARAK
0x02, // SPECIES_ARIADOS
0x0f, // SPECIES_CROBAT
0x0b, // SPECIES_CHINCHOU
0x16, // SPECIES_LANTURN
0x12, // SPECIES_PICHU
0x13, // SPECIES_CLEFFA
0x13, // SPECIES_IGGLYBUFF
0x13, // SPECIES_TOGEPI
0x11, // SPECIES_TOGETIC
0x12, // SPECIES_NATU
0x14, // SPECIES_XATU
0x12, // SPECIES_MAREEP
0x13, // SPECIES_FLAAFFY
0x16, // SPECIES_AMPHAROS
0x11, // SPECIES_BELLOSSOM
0x12, // SPECIES_MARILL
0x13, // SPECIES_AZUMARILL
0x02, // SPECIES_SUDOWOODO
0x10, // SPECIES_POLITOED
0x11, // SPECIES_HOPPIP
0x11, // SPECIES_SKIPLOOM
0x11, // SPECIES_JUMPLUFF
0x10, // SPECIES_AIPOM
0x13, // SPECIES_SUNKERN
0x02, // SPECIES_SUNFLORA
0x11, // SPECIES_YANMA
0x0b, // SPECIES_WOOPER
0x02, // SPECIES_QUAGSIRE
0x14, // SPECIES_ESPEON
0x14, // SPECIES_UMBREON
0x12, // SPECIES_MURKROW
0x13, // SPECIES_SLOWKING
0x01, // SPECIES_MISDREAVUS
0x14, // SPECIES_UNOWN
0x0b, // SPECIES_WOBBUFFET
0x14, // SPECIES_GIRAFARIG
0x08, // SPECIES_PINECO
0x09, // SPECIES_FORRETRESS
0x0f, // SPECIES_DUNSPARCE
0x05, // SPECIES_GLIGAR
0x09, // SPECIES_STEELIX
0x15, // SPECIES_SNUBBULL
0x09, // SPECIES_GRANBULL
0x0d, // SPECIES_QWILFISH
0x15, // SPECIES_SCIZOR
0x13, // SPECIES_SHUCKLE
0x15, // SPECIES_HERACROSS
0x0f, // SPECIES_SNEASEL
0x13, // SPECIES_TEDDIURSA
0x09, // SPECIES_URSARING
0x17, // SPECIES_SLUGMA
0x17, // SPECIES_MAGCARGO
0x0a, // SPECIES_SWINUB
0x08, // SPECIES_PILOSWINE
0x02, // SPECIES_CORSOLA
0x02, // SPECIES_REMORAID
0x05, // SPECIES_OCTILLERY
0x0f, // SPECIES_DELIBIRD
0x02, // SPECIES_MANTINE
0x15, // SPECIES_SKARMORY
0x09, // SPECIES_HOUNDOUR
0x09, // SPECIES_HOUNDOOM
0x19, // SPECIES_KINGDRA
0x15, // SPECIES_PHANPY
0x0e, // SPECIES_DONPHAN
0x01, // SPECIES_PORYGON2
0x13, // SPECIES_STANTLER
0x02, // SPECIES_SMEARGLE
0x0f, // SPECIES_TYROGUE
0x07, // SPECIES_HITMONTOP
0x02, // SPECIES_SMOOCHUM
0x08, // SPECIES_ELEKID
0x17, // SPECIES_MAGBY
0x02, // SPECIES_MILTANK
0x13, // SPECIES_BLISSEY
0x16, // SPECIES_RAIKOU
0x17, // SPECIES_ENTEI
0x19, // SPECIES_SUICUNE
0x0e, // SPECIES_LARVITAR
0x09, // SPECIES_PUPITAR
0x0e, // SPECIES_TYRANITAR
0x19, // SPECIES_LUGIA
0x17, // SPECIES_HO_OH
0x18, // SPECIES_CELEBI
0x00, // SPECIES_OLD_UNOWN_B
0x00, // SPECIES_OLD_UNOWN_C
0x00, // SPECIES_OLD_UNOWN_D
0x00, // SPECIES_OLD_UNOWN_E
0x00, // SPECIES_OLD_UNOWN_F
0x00, // SPECIES_OLD_UNOWN_G
0x00, // SPECIES_OLD_UNOWN_H
0x00, // SPECIES_OLD_UNOWN_I
0x00, // SPECIES_OLD_UNOWN_J
0x00, // SPECIES_OLD_UNOWN_K
0x00, // SPECIES_OLD_UNOWN_L
0x00, // SPECIES_OLD_UNOWN_M
0x00, // SPECIES_OLD_UNOWN_N
0x00, // SPECIES_OLD_UNOWN_O
0x00, // SPECIES_OLD_UNOWN_P
0x00, // SPECIES_OLD_UNOWN_Q
0x00, // SPECIES_OLD_UNOWN_R
0x00, // SPECIES_OLD_UNOWN_S
0x00, // SPECIES_OLD_UNOWN_T
0x00, // SPECIES_OLD_UNOWN_U
0x00, // SPECIES_OLD_UNOWN_V
0x00, // SPECIES_OLD_UNOWN_W
0x00, // SPECIES_OLD_UNOWN_X
0x00, // SPECIES_OLD_UNOWN_Y
0x00, // SPECIES_OLD_UNOWN_Z
0x10, // SPECIES_TREECKO
0x15, // SPECIES_GROVYLE
0x09, // SPECIES_SCEPTILE
0x12, // SPECIES_TORCHIC
0x10, // SPECIES_COMBUSKEN
0x17, // SPECIES_BLAZIKEN
0x02, // SPECIES_MUDKIP
0x12, // SPECIES_MARSHTOMP
0x19, // SPECIES_SWAMPERT
0x12, // SPECIES_POOCHYENA
0x08, // SPECIES_MIGHTYENA
0x0f, // SPECIES_ZIGZAGOON
0x15, // SPECIES_LINOONE
0x0b, // SPECIES_WURMPLE
0x08, // SPECIES_SILCOON
0x11, // SPECIES_BEAUTIFLY
0x08, // SPECIES_CASCOON
0x0f, // SPECIES_DUSTOX
0x02, // SPECIES_LOTAD
0x10, // SPECIES_LOMBRE
0x10, // SPECIES_LUDICOLO
0x13, // SPECIES_SEEDOT
0x09, // SPECIES_NUZLEAF
0x14, // SPECIES_SHIFTRY
0x0a, // SPECIES_NINCADA
0x01, // SPECIES_NINJASK
0x14, // SPECIES_SHEDINJA
0x12, // SPECIES_TAILLOW
0x15, // SPECIES_SWELLOW
0x13, // SPECIES_SHROOMISH
0x15, // SPECIES_BRELOOM
0x07, // SPECIES_SPINDA
0x11, // SPECIES_WINGULL
0x11, // SPECIES_PELIPPER
0x03, // SPECIES_SURSKIT
0x11, // SPECIES_MASQUERAIN
0x19, // SPECIES_WAILMER
0x19, // SPECIES_WAILORD
0x13, // SPECIES_SKITTY
0x12, // SPECIES_DELCATTY
0x01, // SPECIES_KECLEON
0x13, // SPECIES_BALTOY
0x14, // SPECIES_CLAYDOL
0x0e, // SPECIES_NOSEPASS
0x17, // SPECIES_TORKOAL
0x01, // SPECIES_SABLEYE
0x0b, // SPECIES_BARBOACH
0x09, // SPECIES_WHISCASH
0x04, // SPECIES_LUVDISC
0x0f, // SPECIES_CORPHISH
0x15, // SPECIES_CRAWDAUNT
0x03, // SPECIES_FEEBAS
0x19, // SPECIES_MILOTIC
0x04, // SPECIES_CARVANHA
0x15, // SPECIES_SHARPEDO
0x13, // SPECIES_TRAPINCH
0x01, // SPECIES_VIBRAVA
0x0f, // SPECIES_FLYGON
0x0e, // SPECIES_MAKUHITA
0x0e, // SPECIES_HARIYAMA
0x15, // SPECIES_ELECTRIKE
0x09, // SPECIES_MANECTRIC
0x0e, // SPECIES_NUMEL
0x17, // SPECIES_CAMERUPT
0x13, // SPECIES_SPHEAL
0x09, // SPECIES_SEALEO
0x09, // SPECIES_WALREIN
0x0a, // SPECIES_CACNEA
0x08, // SPECIES_CACTURNE
0x0f, // SPECIES_SNORUNT
0x0f, // SPECIES_GLALIE
0x13, // SPECIES_LUNATONE
0x13, // SPECIES_SOLROCK
0x10, // SPECIES_AZURILL
0x10, // SPECIES_SPOINK
0x14, // SPECIES_GRUMPIG
0x12, // SPECIES_PLUSLE
0x12, // SPECIES_MINUN
0x09, // SPECIES_MAWILE
0x14, // SPECIES_MEDITITE
0x14, // SPECIES_MEDICHAM
0x11, // SPECIES_SWABLU
0x11, // SPECIES_ALTARIA
0x12, // SPECIES_WYNAUT
0x01, // SPECIES_DUSKULL
0x01, // SPECIES_DUSCLOPS
0x18, // SPECIES_ROSELIA
0x02, // SPECIES_SLAKOTH
0x10, // SPECIES_VIGOROTH
0x08, // SPECIES_SLAKING
0x0b, // SPECIES_GULPIN
0x0b, // SPECIES_SWALOT
0x0e, // SPECIES_TROPIUS
0x13, // SPECIES_WHISMUR
0x09, // SPECIES_LOUDRED
0x0d, // SPECIES_EXPLOUD
0x13, // SPECIES_CLAMPERL
0x11, // SPECIES_HUNTAIL
0x11, // SPECIES_GOREBYSS
0x14, // SPECIES_ABSOL
0x01, // SPECIES_SHUPPET
0x01, // SPECIES_BANETTE
0x0b, // SPECIES_SEVIPER
0x15, // SPECIES_ZANGOOSE
0x02, // SPECIES_RELICANTH
0x15, // SPECIES_ARON
0x09, // SPECIES_LAIRON
0x0e, // SPECIES_AGGRON
0x11, // SPECIES_CASTFORM
0x11, // SPECIES_VOLBEAT
0x11, // SPECIES_ILLUMISE
0x0c, // SPECIES_LILEEP
0x0b, // SPECIES_CRADILY
0x0f, // SPECIES_ANORITH
0x09, // SPECIES_ARMALDO
0x14, // SPECIES_RALTS
0x14, // SPECIES_KIRLIA
0x14, // SPECIES_GARDEVOIR
0x09, // SPECIES_BAGON
0x09, // SPECIES_SHELGON
0x08, // SPECIES_SALAMENCE
0x0f, // SPECIES_BELDUM
0x15, // SPECIES_METANG
0x09, // SPECIES_METAGROSS
0x09, // SPECIES_REGIROCK
0x09, // SPECIES_REGICE
0x09, // SPECIES_REGISTEEL
0x19, // SPECIES_KYOGRE
0x17, // SPECIES_GROUDON
0x0d, // SPECIES_RAYQUAZA
0x01, // SPECIES_LATIAS
0x01, // SPECIES_LATIOS
0x11, // SPECIES_JIRACHI
0x14, // SPECIES_DEOXYS
0x11, // SPECIES_CHIMECHO
[SPECIES_BULBASAUR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_IVYSAUR] = BACK_ANIM_H_SLIDE,
[SPECIES_VENUSAUR] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_CHARMANDER] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CHARMELEON] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_CHARIZARD] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SQUIRTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_WARTORTLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_BLASTOISE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_CATERPIE] = BACK_ANIM_H_SLIDE,
[SPECIES_METAPOD] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BUTTERFREE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WEEDLE] = BACK_ANIM_H_SLIDE,
[SPECIES_KAKUNA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BEEDRILL] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_PIDGEY] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_PIDGEOTTO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_PIDGEOT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_RATTATA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_RATICATE] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_SPEAROW] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_FEAROW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_EKANS] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_ARBOK] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_PIKACHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_RAICHU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_SANDSHREW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SANDSLASH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_NIDORAN_F] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_NIDORINA] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_NIDOQUEEN] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_NIDORAN_M] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_NIDORINO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_NIDOKING] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CLEFAIRY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLEFABLE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_VULPIX] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_NINETALES] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_JIGGLYPUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_WIGGLYTUFF] = BACK_ANIM_GROW_1,
[SPECIES_ZUBAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOLBAT] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_ODDISH] = BACK_ANIM_H_SLIDE,
[SPECIES_GLOOM] = BACK_ANIM_H_SLIDE,
[SPECIES_VILEPLUME] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PARAS] = BACK_ANIM_H_SLIDE,
[SPECIES_PARASECT] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_VENONAT] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_VENOMOTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_DIGLETT] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DUGTRIO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEOWTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_PERSIAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_PSYDUCK] = BACK_ANIM_H_SLIDE,
[SPECIES_GOLDUCK] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MANKEY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_PRIMEAPE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GROWLITHE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_ARCANINE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_POLIWAG] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_POLIWHIRL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_POLIWRATH] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_ABRA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KADABRA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_ALAKAZAM] = BACK_ANIM_GROW_2,
[SPECIES_MACHOP] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MACHOKE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MACHAMP] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_BELLSPROUT] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_WEEPINBELL] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_VICTREEBEL] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_TENTACOOL] = BACK_ANIM_H_SLIDE,
[SPECIES_TENTACRUEL] = BACK_ANIM_H_SLIDE,
[SPECIES_GEODUDE] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_GRAVELER] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_GOLEM] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_PONYTA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_RAPIDASH] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SLOWPOKE] = BACK_ANIM_H_SLIDE,
[SPECIES_SLOWBRO] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_MAGNEMITE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MAGNETON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_FARFETCHD] = BACK_ANIM_H_SLIDE,
[SPECIES_DODUO] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_DODRIO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SEEL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_DEWGONG] = BACK_ANIM_H_SLIDE,
[SPECIES_GRIMER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_MUK] = BACK_ANIM_HORIZONTAL_STRETCH,
[SPECIES_SHELLDER] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLOYSTER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GASTLY] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_HAUNTER] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_GENGAR] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_ONIX] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DROWZEE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HYPNO] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KRABBY] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_KINGLER] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_VOLTORB] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_ELECTRODE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_EXEGGCUTE] = BACK_ANIM_H_SLIDE,
[SPECIES_EXEGGUTOR] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_CUBONE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MAROWAK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HITMONLEE] = BACK_ANIM_H_SLIDE,
[SPECIES_HITMONCHAN] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LICKITUNG] = BACK_ANIM_H_SLIDE,
[SPECIES_KOFFING] = BACK_ANIM_GROW_1,
[SPECIES_WEEZING] = BACK_ANIM_GROW_1,
[SPECIES_RHYHORN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_RHYDON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CHANSEY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_TANGELA] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_KANGASKHAN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_HORSEA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SEADRA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOLDEEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SEAKING] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_STARYU] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_STARMIE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_MR_MIME] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SCYTHER] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_JYNX] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_ELECTABUZZ] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_MAGMAR] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_PINSIR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_TAUROS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_MAGIKARP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GYARADOS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_LAPRAS] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_DITTO] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_EEVEE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_VAPOREON] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_JOLTEON] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_FLAREON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_PORYGON] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_OMANYTE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_OMASTAR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_KABUTO] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_KABUTOPS] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_AERODACTYL] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SNORLAX] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_ARTICUNO] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_ZAPDOS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_MOLTRES] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_DRATINI] = BACK_ANIM_H_SLIDE,
[SPECIES_DRAGONAIR] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_DRAGONITE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEWTWO] = BACK_ANIM_GROW_2,
[SPECIES_MEW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CHIKORITA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_BAYLEEF] = BACK_ANIM_H_SLIDE,
[SPECIES_MEGANIUM] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CYNDAQUIL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_QUILAVA] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_TYPHLOSION] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_TOTODILE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_CROCONAW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_FERALIGATR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SENTRET] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_FURRET] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HOOTHOOT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_NOCTOWL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LEDYBA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_LEDIAN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SPINARAK] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_ARIADOS] = BACK_ANIM_H_SLIDE,
[SPECIES_CROBAT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_CHINCHOU] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_LANTURN] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_PICHU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_CLEFFA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_IGGLYBUFF] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_TOGEPI] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_TOGETIC] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_NATU] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_XATU] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MAREEP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_FLAAFFY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_AMPHAROS] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_BELLOSSOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_MARILL] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_AZUMARILL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SUDOWOODO] = BACK_ANIM_H_SLIDE,
[SPECIES_POLITOED] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_HOPPIP] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SKIPLOOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_JUMPLUFF] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_AIPOM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SUNKERN] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SUNFLORA] = BACK_ANIM_H_SLIDE,
[SPECIES_YANMA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WOOPER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_QUAGSIRE] = BACK_ANIM_H_SLIDE,
[SPECIES_ESPEON] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_UMBREON] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MURKROW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SLOWKING] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_MISDREAVUS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_UNOWN] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_WOBBUFFET] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_GIRAFARIG] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PINECO] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_FORRETRESS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_DUNSPARCE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GLIGAR] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_STEELIX] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SNUBBULL] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_GRANBULL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_QWILFISH] = BACK_ANIM_GROW_2,
[SPECIES_SCIZOR] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SHUCKLE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HERACROSS] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SNEASEL] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_TEDDIURSA] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_URSARING] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SLUGMA] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MAGCARGO] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SWINUB] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_PILOSWINE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_CORSOLA] = BACK_ANIM_H_SLIDE,
[SPECIES_REMORAID] = BACK_ANIM_H_SLIDE,
[SPECIES_OCTILLERY] = BACK_ANIM_SHRINK_GROW_1,
[SPECIES_DELIBIRD] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MANTINE] = BACK_ANIM_H_SLIDE,
[SPECIES_SKARMORY] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_HOUNDOUR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_HOUNDOOM] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_KINGDRA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_PHANPY] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_DONPHAN] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_PORYGON2] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_STANTLER] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SMEARGLE] = BACK_ANIM_H_SLIDE,
[SPECIES_TYROGUE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_HITMONTOP] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
[SPECIES_SMOOCHUM] = BACK_ANIM_H_SLIDE,
[SPECIES_ELEKID] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_MAGBY] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MILTANK] = BACK_ANIM_H_SLIDE,
[SPECIES_BLISSEY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_RAIKOU] = BACK_ANIM_FLASH_YELLOW_WITH_SHAKE,
[SPECIES_ENTEI] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SUICUNE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_LARVITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_PUPITAR] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_TYRANITAR] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_LUGIA] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_HO_OH] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_CELEBI] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
[SPECIES_TREECKO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GROVYLE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SCEPTILE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_TORCHIC] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_COMBUSKEN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_BLAZIKEN] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_MUDKIP] = BACK_ANIM_H_SLIDE,
[SPECIES_MARSHTOMP] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SWAMPERT] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_POOCHYENA] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MIGHTYENA] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_ZIGZAGOON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LINOONE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_WURMPLE] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_SILCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_BEAUTIFLY] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_CASCOON] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_DUSTOX] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LOTAD] = BACK_ANIM_H_SLIDE,
[SPECIES_LOMBRE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_LUDICOLO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SEEDOT] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_NUZLEAF] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SHIFTRY] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_NINCADA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_NINJASK] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_SHEDINJA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_TAILLOW] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_SWELLOW] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SHROOMISH] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_BRELOOM] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_SPINDA] = BACK_ANIM_CIRCLE_MOVE_COUNTERCLOCKWISE,
[SPECIES_WINGULL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_PELIPPER] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_SURSKIT] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
[SPECIES_MASQUERAIN] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WAILMER] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_WAILORD] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_SKITTY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_DELCATTY] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_KECLEON] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BALTOY] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_CLAYDOL] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_NOSEPASS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_TORKOAL] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SABLEYE] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BARBOACH] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_WHISCASH] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_LUVDISC] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
[SPECIES_CORPHISH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_CRAWDAUNT] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_FEEBAS] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_1,
[SPECIES_MILOTIC] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_CARVANHA] = BACK_ANIM_H_SLIDE_WITH_V_COMPRESS_2,
[SPECIES_SHARPEDO] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_TRAPINCH] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_VIBRAVA] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_FLYGON] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_MAKUHITA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_HARIYAMA] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_ELECTRIKE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_MANECTRIC] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_NUMEL] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CAMERUPT] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_SPHEAL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SEALEO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_WALREIN] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_CACNEA] = BACK_ANIM_V_SHAKE_WITH_H_SLIDE,
[SPECIES_CACTURNE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_SNORUNT] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_GLALIE] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_LUNATONE] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_SOLROCK] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_AZURILL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SPOINK] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_GRUMPIG] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_PLUSLE] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MINUN] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_MAWILE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_MEDITITE] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_MEDICHAM] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SWABLU] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ALTARIA] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_WYNAUT] = BACK_ANIM_CONCAVE_UP_ARC_SWAY_LARGE,
[SPECIES_DUSKULL] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_DUSCLOPS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_ROSELIA] = BACK_ANIM_FADE_GREEN_WITH_SHAKE,
[SPECIES_SLAKOTH] = BACK_ANIM_H_SLIDE,
[SPECIES_VIGOROTH] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_SMALL,
[SPECIES_SLAKING] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_GULPIN] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_SWALOT] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_TROPIUS] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_WHISMUR] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_LOUDRED] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_EXPLOUD] = BACK_ANIM_GROW_2,
[SPECIES_CLAMPERL] = BACK_ANIM_DIP_RIGHT_SIDE,
[SPECIES_HUNTAIL] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_GOREBYSS] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ABSOL] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_SHUPPET] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_BANETTE] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_SEVIPER] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_ZANGOOSE] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_RELICANTH] = BACK_ANIM_H_SLIDE,
[SPECIES_ARON] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_LAIRON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_AGGRON] = BACK_ANIM_V_SHAKE_WITH_PAUSE,
[SPECIES_CASTFORM] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_VOLBEAT] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_ILLUMISE] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_LILEEP] = BACK_ANIM_HORIZONTAL_STRETCH,
[SPECIES_CRADILY] = BACK_ANIM_VERTICAL_STRETCH,
[SPECIES_ANORITH] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_ARMALDO] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_RALTS] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_KIRLIA] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_GARDEVOIR] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_BAGON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SHELGON] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_SALAMENCE] = BACK_ANIM_HORIZONTAL_SHAKE,
[SPECIES_BELDUM] = BACK_ANIM_CIRCLE_MOVE_CLOCKWISE,
[SPECIES_METANG] = BACK_ANIM_JOLT_RIGHT,
[SPECIES_METAGROSS] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGIROCK] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGICE] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_REGISTEEL] = BACK_ANIM_VERTICAL_SHAKE,
[SPECIES_KYOGRE] = BACK_ANIM_FADE_BLUE_WITH_SHAKE,
[SPECIES_GROUDON] = BACK_ANIM_FADE_RED_WITH_SHAKE,
[SPECIES_RAYQUAZA] = BACK_ANIM_GROW_2,
[SPECIES_LATIAS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_LATIOS] = BACK_ANIM_H_SLIDE_QUICK,
[SPECIES_JIRACHI] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
[SPECIES_DEOXYS] = BACK_ANIM_SHRINK_GROW_2,
[SPECIES_CHIMECHO] = BACK_ANIM_CONCAVE_DOWN_ARC_SWAY_LARGE,
};
static const u8 sUnknown_0860AA64[][2] =

View File

@ -314,7 +314,7 @@ static const s8 gUnknown_0861CC1C[] = {0, 2, 3, 1, 4, 5};
static const struct WindowTemplate gUnknown_0861CC24[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@ -323,7 +323,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 1,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@ -332,7 +332,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 23,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@ -341,7 +341,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 45,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 11,
@ -350,7 +350,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 67,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@ -359,7 +359,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 89,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@ -368,7 +368,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 105,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 0,
.width = 8,
@ -377,7 +377,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 121,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 0,
@ -386,7 +386,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 18,
@ -395,7 +395,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 137,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 6,
.width = 18,
@ -404,7 +404,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 173,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 7,
.width = 6,
@ -413,7 +413,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 209,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 7,
.width = 5,
@ -422,7 +422,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 245,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 14,
.width = 11,
@ -431,7 +431,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 275,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 18,
.width = 6,
@ -440,7 +440,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 319,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 9,
@ -449,7 +449,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 331,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 15,
.width = 5,
@ -458,7 +458,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 367,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 0,
@ -467,7 +467,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 2,
.width = 4,
@ -476,7 +476,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 387,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 12,
.width = 9,
@ -485,7 +485,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
.baseBlock = 395,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 14,
.width = 9,
@ -498,7 +498,7 @@ static const struct WindowTemplate gUnknown_0861CC24[] =
static const struct WindowTemplate gUnknown_0861CCCC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 4,
.width = 11,
@ -507,7 +507,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 22,
.tilemapTop = 4,
.width = 7,
@ -516,7 +516,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 471,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 9,
.width = 18,
@ -525,7 +525,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
.baseBlock = 485,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 11,
.tilemapTop = 14,
.width = 18,
@ -537,7 +537,7 @@ static const struct WindowTemplate gUnknown_0861CCCC[] =
static const struct WindowTemplate gUnknown_0861CCEC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 4,
.width = 10,
@ -546,7 +546,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 20,
.tilemapTop = 4,
.width = 10,
@ -555,7 +555,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 469,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 16,
.tilemapTop = 7,
.width = 6,
@ -564,7 +564,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 489,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 27,
.tilemapTop = 7,
.width = 3,
@ -573,7 +573,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
.baseBlock = 525,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 14,
.width = 6,
@ -585,7 +585,7 @@ static const struct WindowTemplate gUnknown_0861CCEC[] =
static const struct WindowTemplate gUnknown_0861CD14[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 15,
.tilemapTop = 4,
.width = 9,
@ -594,7 +594,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 449,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 4,
.width = 6,
@ -603,7 +603,7 @@ static const struct WindowTemplate gUnknown_0861CD14[] =
.baseBlock = 539,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 10,
.tilemapTop = 15,
.width = 20,

405
src/psychic.c Normal file
View File

@ -0,0 +1,405 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_80A77C8(struct Sprite *);
extern void sub_810F1EC(struct Sprite *);
extern void sub_810F1EC(struct Sprite *);
extern void sub_810F58C(struct Sprite *);
extern void TranslateAnimSpriteToTargetMonLocation(struct Sprite *);
extern void sub_810F634(struct Sprite *);
extern void sub_810F6B0(struct Sprite *);
extern void sub_810FBA8(struct Sprite *);
extern void sub_810FDF0(struct Sprite *);
extern void sub_80A77C8(struct Sprite *);
extern void sub_8110240(struct Sprite *);
const union AffineAnimCmd gUnknown_0859652C[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFFE, 0xFFFE, -10, 120),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596544[] =
{
gUnknown_0859652C,
};
const struct SpriteTemplate gUnknown_08596548 =
{
.tileTag = ANIM_TAG_SPIRAL,
.paletteTag = ANIM_TAG_SPIRAL,
.oam = &gUnknown_08524A9C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596544,
.callback = sub_80A77C8,
};
const struct SpriteTemplate gUnknown_08596560 =
{
.tileTag = ANIM_TAG_GREEN_LIGHT_WALL,
.paletteTag = ANIM_TAG_GREEN_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_08596578 =
{
.tileTag = ANIM_TAG_BLUE_LIGHT_WALL,
.paletteTag = ANIM_TAG_BLUE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_08596590 =
{
.tileTag = ANIM_TAG_RED_LIGHT_WALL,
.paletteTag = ANIM_TAG_RED_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_085965A8 =
{
.tileTag = ANIM_TAG_GRAY_LIGHT_WALL,
.paletteTag = ANIM_TAG_GRAY_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const struct SpriteTemplate gUnknown_085965C0 =
{
.tileTag = ANIM_TAG_ORANGE_LIGHT_WALL,
.paletteTag = ANIM_TAG_ORANGE_LIGHT_WALL,
.oam = &gUnknown_08524A3C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F1EC,
};
const union AnimCmd gUnknown_085965D8[] =
{
ANIMCMD_FRAME(0, 3),
ANIMCMD_FRAME(16, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(48, 3),
ANIMCMD_FRAME(64, 3),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085965F0[] =
{
gUnknown_085965D8,
};
const struct SpriteTemplate gUnknown_085965F4 =
{
.tileTag = ANIM_TAG_SPARKLE_4,
.paletteTag = ANIM_TAG_SPARKLE_4,
.oam = &gUnknown_08524914,
.anims = gUnknown_085965F0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F58C,
};
const union AnimCmd gUnknown_0859660C[] =
{
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(12, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596620[] =
{
gUnknown_0859660C,
};
const struct SpriteTemplate gUnknown_08596624 =
{
.tileTag = ANIM_TAG_SPARKLE_3,
.paletteTag = ANIM_TAG_SPARKLE_3,
.oam = &gUnknown_0852490C,
.anims = gUnknown_08596620,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F58C,
};
const struct SpriteTemplate gUnknown_0859663C =
{
.tileTag = ANIM_TAG_GOLD_RING,
.paletteTag = ANIM_TAG_GOLD_RING,
.oam = &gUnknown_08524954,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = TranslateAnimSpriteToTargetMonLocation,
};
const union AnimCmd gUnknown_08596654[] =
{
ANIMCMD_FRAME(8, 60, .hFlip = TRUE),
ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
ANIMCMD_LOOP(0),
ANIMCMD_FRAME(16, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_FRAME(0, 5, .hFlip = TRUE),
ANIMCMD_FRAME(8, 5, .hFlip = TRUE),
ANIMCMD_LOOP(1),
ANIMCMD_FRAME(8, 22, .hFlip = TRUE),
ANIMCMD_FRAME(24, 3, .hFlip = TRUE),
ANIMCMD_FRAME(32, 3, .hFlip = TRUE),
ANIMCMD_FRAME(40, 22, .hFlip = TRUE),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596694[] =
{
ANIMCMD_FRAME(8, 60),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 22),
ANIMCMD_LOOP(0),
ANIMCMD_FRAME(16, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_FRAME(0, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_LOOP(1),
ANIMCMD_FRAME(8, 22),
ANIMCMD_FRAME(24, 3),
ANIMCMD_FRAME(32, 3),
ANIMCMD_FRAME(40, 22),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_085966D4[] =
{
gUnknown_08596654,
gUnknown_08596694,
};
const struct SpriteTemplate gUnknown_085966DC =
{
.tileTag = ANIM_TAG_BENT_SPOON,
.paletteTag = ANIM_TAG_BENT_SPOON,
.oam = &gUnknown_08524954,
.anims = gUnknown_085966D4,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F634,
};
const union AnimCmd gUnknown_085966F4[] =
{
ANIMCMD_FRAME(0, 6),
ANIMCMD_FRAME(16, 6),
ANIMCMD_FRAME(32, 6),
ANIMCMD_FRAME(48, 6),
ANIMCMD_FRAME(64, 6),
ANIMCMD_FRAME(80, 6),
ANIMCMD_FRAME(96, 18),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596714[] =
{
gUnknown_085966F4,
};
const union AffineAnimCmd gUnknown_08596718[] =
{
AFFINEANIMCMD_FRAME(0, 0, 4, 4),
AFFINEANIMCMD_FRAME(0, 0, -4, 8),
AFFINEANIMCMD_FRAME(0, 0, 4, 4),
AFFINEANIMCMD_LOOP(2),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596740[] =
{
gUnknown_08596718,
};
const struct SpriteTemplate gUnknown_08596744 =
{
.tileTag = ANIM_TAG_AMNESIA,
.paletteTag = ANIM_TAG_AMNESIA,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596714,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810F6B0,
};
const union AffineAnimCmd gUnknown_0859675C[] =
{
AFFINEANIMCMD_FRAME(-8, 10, 0, 16),
AFFINEANIMCMD_FRAME(18, -18, 0, 16),
AFFINEANIMCMD_FRAME(-20, 16, 0, 8),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_0859677C[] =
{
AFFINEANIMCMD_FRAME(64, -4, 0, 20),
AFFINEANIMCMD_FRAME(0, 0, 0, -56),
AFFINEANIMCMD_END,
};
const struct SpriteTemplate gUnknown_08596794 =
{
.tileTag = ANIM_TAG_HOLLOW_ORB,
.paletteTag = ANIM_TAG_HOLLOW_ORB,
.oam = &gUnknown_08524A2C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
const struct SpriteTemplate gUnknown_085967AC =
{
.tileTag = 10250,
.paletteTag = 10250,
.oam = &gUnknown_0852491C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810FBA8,
};
const union AffineAnimCmd gUnknown_085967C4[] =
{
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 8),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_085967DC[] =
{
AFFINEANIMCMD_FRAME(0xF0, 0xF0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd gUnknown_08596804[] =
{
AFFINEANIMCMD_FRAME(0xD0, 0xD0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 4),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd gUnknown_0859682C[] =
{
AFFINEANIMCMD_FRAME(0xB0, 0xB0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 2),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 8),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 6),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596854[] =
{
gUnknown_085967C4,
gUnknown_085967DC,
gUnknown_08596804,
gUnknown_0859682C,
};
const struct SpriteTemplate gUnknown_08596864 =
{
.tileTag = ANIM_TAG_BLUEGREEN_ORB,
.paletteTag = ANIM_TAG_BLUEGREEN_ORB,
.oam = &gUnknown_0852496C,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596854,
.callback = sub_810FDF0,
};
const union AffineAnimCmd gUnknown_0859687C[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x4, 0x4, 0, 120),
AFFINEANIMCMD_END_ALT(1),
};
const union AffineAnimCmd *const gUnknown_08596894[] =
{
gUnknown_0859687C,
};
const struct SpriteTemplate gUnknown_08596898 =
{
.tileTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_WHITE_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596894,
.callback = sub_80A77C8,
};
const union AffineAnimCmd gUnknown_085968B0[] =
{
AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0),
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 17),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 10),
AFFINEANIMCMD_FRAME(0x8, 0x8, 0, 10),
AFFINEANIMCMD_LOOP(4),
AFFINEANIMCMD_LOOP(0),
AFFINEANIMCMD_FRAME(0xFFF0, 0xFFF0, 0, 5),
AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 5),
AFFINEANIMCMD_LOOP(7),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_08596908[] =
{
AFFINEANIMCMD_FRAME(0xFFEC, 0x18, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_08596918[] =
{
gUnknown_085968B0,
gUnknown_08596908,
};
const struct SpriteTemplate gUnknown_08596920 =
{
.tileTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT,
.oam = &gUnknown_08524AFC,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08596918,
.callback = sub_8110240,
};

293
src/rock.c Normal file
View File

@ -0,0 +1,293 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_81109F0(struct Sprite *);
extern void sub_8110AB4(struct Sprite *);
extern void sub_8110B38(struct Sprite *);
extern void sub_8110E4C(struct Sprite *);
extern void sub_8110F30(struct Sprite *);
extern void sub_811131C(struct Sprite *);
extern void sub_8111388(struct Sprite *);
extern void sub_8111418(struct Sprite *);
extern void sub_8111444(struct Sprite *);
extern void sub_80FF268(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern const union AnimCmd *const gUnknown_085950E0[];
extern const union AnimCmd *const gUnknown_085954D0[];
const union AnimCmd gUnknown_08596AE0[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596AE8[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596AF0[] =
{
ANIMCMD_FRAME(64, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596AF8[] =
{
gUnknown_08596AE0,
gUnknown_08596AE8,
gUnknown_08596AF0,
};
const struct SpriteTemplate gUnknown_08596B04 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596AF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81109F0,
};
const struct SpriteTemplate gUnknown_08596B1C =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596AF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110AB4,
};
const struct SpriteTemplate gUnknown_08596B34 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110B38,
};
const union AffineAnimCmd gUnknown_08596B4C[] =
{
AFFINEANIMCMD_FRAME(0xC0, 0xC0, 0, 0),
AFFINEANIMCMD_FRAME(0x2, 0xFFFD, 0, 5),
AFFINEANIMCMD_FRAME(0xFFFE, 0x3, 0, 5),
AFFINEANIMCMD_JUMP(1),
};
const union AffineAnimCmd *const gUnknown_08596B6C[] =
{
gUnknown_08596B4C,
};
const struct SpriteTemplate gUnknown_08596B70 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_08596B6C,
.callback = sub_8110B38,
};
const struct SpriteTemplate gUnknown_08596B88 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_085954D0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110B38,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8596BA0 =
{
.tileTag = ANIM_TAG_FLYING_DIRT,
.paletteTag = ANIM_TAG_FLYING_DIRT,
.oam = &gUnknown_08524934,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110E4C,
};
const struct Subsprite gUnknown_08596BB8[] =
{
{.x = -16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 0, .priority = 1},
{.x = 16, .y = 0, .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 8, .priority = 1},
};
const struct SubspriteTable gUnknown_08596BC0[] =
{
{ARRAY_COUNT(gUnknown_08596BB8), gUnknown_08596BB8},
};
const union AnimCmd gUnknown_08596BC8[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BD0[] =
{
ANIMCMD_FRAME(16, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BD8[] =
{
ANIMCMD_FRAME(32, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BE0[] =
{
ANIMCMD_FRAME(48, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BE8[] =
{
ANIMCMD_FRAME(64, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08596BF0[] =
{
ANIMCMD_FRAME(80, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08596BF8[] =
{
gUnknown_08596BC8,
gUnknown_08596BD0,
};
const union AnimCmd *const gUnknown_08596C00[] =
{
gUnknown_08596BD8,
gUnknown_08596BE0,
};
const union AnimCmd *const gUnknown_08596C08[] =
{
gUnknown_08596BE8,
gUnknown_08596BF0,
};
const struct SpriteTemplate gUnknown_08596C10 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8110F30,
};
const struct SpriteTemplate gUnknown_08596C28 =
{
.tileTag = ANIM_TAG_MUD_SAND,
.paletteTag = ANIM_TAG_MUD_SAND,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811131C,
};
const struct SpriteTemplate gUnknown_08596C40 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_811131C,
};
const struct SpriteTemplate gUnknown_08596C58 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8111388,
};
const union AffineAnimCmd gUnknown_08596C70[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, -5, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd gUnknown_08596C80[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 5, 5),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08596C90[] =
{
gUnknown_08596C70,
gUnknown_08596C80,
};
const struct SpriteTemplate gUnknown_08596C98 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_8111418,
};
const struct SpriteTemplate gUnknown_08596CB0 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596BF8,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_8111444,
};
const struct SpriteTemplate gUnknown_08596CC8 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524914,
.anims = gUnknown_08596C08,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_80FF268,
};
const struct SpriteTemplate gUnknown_08596CE0 =
{
.tileTag = ANIM_TAG_ROCKS,
.paletteTag = ANIM_TAG_ROCKS,
.oam = &gUnknown_08524974,
.anims = gUnknown_08596C00,
.images = NULL,
.affineAnims = gUnknown_08596C90,
.callback = sub_80A8EE4,
};

View File

@ -95,7 +95,7 @@ static const struct BgTemplate gUnknown_085EFD88[3] =
static const struct WindowTemplate gUnknown_085EFD94[] =
{
{
.priority = 255,
.bg = 255,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 0,
@ -108,7 +108,7 @@ static const struct WindowTemplate gUnknown_085EFD94[] =
static const struct WindowTemplate gUnknown_085EFD9C[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 13,
.width = 28,
@ -121,7 +121,7 @@ static const struct WindowTemplate gUnknown_085EFD9C[] =
static const struct WindowTemplate gUnknown_085EFDA4[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 9,
.width = 2,

View File

@ -95,14 +95,14 @@ static const struct YesNoFuncTable sShopPurchaseYesNoFuncs =
BuyMenuReturnToItemList
};
static const struct MenuAction sShopMenuActions_BuySellQuit[] =
static const struct MenuAction sShopMenuActions_BuySellQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopSell, {.void_u8=Task_HandleShopMenuSell} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
};
static const struct MenuAction sShopMenuActions_BuyQuit[] =
static const struct MenuAction sShopMenuActions_BuyQuit[] =
{
{ gText_ShopBuy, {.void_u8=Task_HandleShopMenuBuy} },
{ gText_ShopQuit, {.void_u8=Task_HandleShopMenuQuit} }
@ -111,7 +111,7 @@ static const struct MenuAction sShopMenuActions_BuyQuit[] =
static const struct WindowTemplate sShopMenuWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@ -120,7 +120,7 @@ static const struct WindowTemplate sShopMenuWindowTemplates[] =
.baseBlock = 0x0008,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 1,
.width = 9,
@ -195,7 +195,7 @@ static const struct BgTemplate sShopBuyMenuBgTemplates[] =
static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 1,
.width = 10,
@ -204,7 +204,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x001E,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 14,
.tilemapTop = 2,
.width = 15,
@ -213,7 +213,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0032,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 13,
.width = 14,
@ -222,7 +222,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0122,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 1,
.tilemapTop = 11,
.width = 12,
@ -231,7 +231,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x0176,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 18,
.tilemapTop = 11,
.width = 10,
@ -240,7 +240,7 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
.baseBlock = 0x018E,
},
{
.priority = 0,
.bg = 0,
.tilemapLeft = 2,
.tilemapTop = 15,
.width = 27,
@ -251,9 +251,9 @@ static const struct WindowTemplate sShopBuyMenuWindowTemplates[] =
DUMMY_WIN_TEMPLATE
};
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
static const struct WindowTemplate sShopBuyMenuYesNoWindowTemplates =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 21,
.tilemapTop = 9,
.width = 5,
@ -808,7 +808,7 @@ static void BuyMenuCollectEventObjectData(void)
gShopDataPtr->viewportObjects[r8][X_COORD] = x;
gShopDataPtr->viewportObjects[r8][Y_COORD] = y;
gShopDataPtr->viewportObjects[r8][LAYER_TYPE] = MapGridGetMetatileLayerTypeAt(facingX - 4 + x, facingY - 2 + y);
switch (gEventObjects[eventObjId].facingDirection)
{
case DIR_SOUTH:
@ -850,7 +850,7 @@ static void BuyMenuDrawEventObjects(void)
(u16)gShopDataPtr->viewportObjects[i][X_COORD] * 16 + 8,
(u16)gShopDataPtr->viewportObjects[i][Y_COORD] * 16 + 48 - graphicsInfo->height / 2,
2);
if (BuyMenuCheckIfEventObjectOverlapsMenuBg(gShopDataPtr->viewportObjects[i]) == TRUE)
{
gSprites[spriteId].subspriteTableNum = 4;
@ -867,7 +867,7 @@ static bool8 BuyMenuCheckIfEventObjectOverlapsMenuBg(s16 *object)
{
return TRUE;
}
else
else
{
return FALSE;
}
@ -1000,7 +1000,7 @@ static void Task_BuyHowManyDialogueInit(u8 taskId)
{
gShopDataPtr->maxQuantity = maxQuantity;
}
gTasks[taskId].func = Task_BuyHowManyDialogueHandleInput;
}

View File

@ -73,10 +73,10 @@ const u32 gUnknown_085B18AC[] = INCBIN_U32("graphics/misc/birch_ballarrow.4bpp.l
const u32 gUnknown_085B1BCC[] = INCBIN_U32("graphics/misc/birch_circle.4bpp.lz");
static const struct WindowTemplate gUnknown_085B1DCC[] =
static const struct WindowTemplate gUnknown_085B1DCC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 15,
.width = 24,
@ -87,9 +87,9 @@ static const struct WindowTemplate gUnknown_085B1DCC[] =
DUMMY_WIN_TEMPLATE,
};
static const struct WindowTemplate gUnknown_085B1DDC =
static const struct WindowTemplate gUnknown_085B1DDC =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,
@ -98,9 +98,9 @@ static const struct WindowTemplate gUnknown_085B1DDC =
.baseBlock = 0x0260
};
static const struct WindowTemplate gUnknown_085B1DE4 =
static const struct WindowTemplate gUnknown_085B1DE4 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 0,
.tilemapTop = 0,
.width = 13,

View File

@ -93,7 +93,7 @@ const struct TilesPal *GetWindowFrameTilesPal(u8 id)
void LoadMessageBoxGfx(u8 windowId, u16 destOffset, u8 palOffset)
{
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), gMessageBox_Gfx, 0x1C0, destOffset);
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), gMessageBox_Gfx, 0x1C0, destOffset);
LoadPalette(GetOverworldTextboxPalettePtr(), palOffset, 0x20);
}
@ -104,7 +104,7 @@ void LoadUserWindowBorderGfx_(u8 windowId, u16 destOffset, u8 palOffset)
void LoadWindowGfx(u8 windowId, u8 frameId, u16 destOffset, u8 palOffset)
{
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_PRIORITY), sWindowFrames[frameId].tiles, 0x120, destOffset);
LoadBgTiles(GetWindowAttribute(windowId, WINDOW_BG), sWindowFrames[frameId].tiles, 0x120, destOffset);
LoadPalette(sWindowFrames[frameId].pal, palOffset, 0x20);
}
@ -115,7 +115,7 @@ void LoadUserWindowBorderGfx(u8 windowId, u16 destOffset, u8 palOffset)
void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@ -133,7 +133,7 @@ void sub_8098858(u8 windowId, u16 tileNum, u8 palNum)
void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);
@ -151,7 +151,7 @@ void sub_80989E0(u8 windowId, u16 tileNum, u8 palNum)
void rbox_fill_rectangle(u8 windowId)
{
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_PRIORITY);
u8 bgLayer = GetWindowAttribute(windowId, WINDOW_BG);
u16 tilemapLeft = GetWindowAttribute(windowId, WINDOW_TILEMAP_LEFT);
u16 tilemapTop = GetWindowAttribute(windowId, WINDOW_TILEMAP_TOP);
u16 width = GetWindowAttribute(windowId, WINDOW_WIDTH);

View File

@ -60,10 +60,10 @@ static void SpriteCB_PMIndicator(struct Sprite *sprite);
static const u32 sUnknown_085B1F58[] = INCBIN_U32("graphics/wallclock/graphics_85b1f58.4bpp.lz");
static const u16 sUnknown_085B21D4[] = INCBIN_U16("graphics/wallclock/palette_85b21d4.gbapal");
static const struct WindowTemplate gUnknown_085B21DC[] =
static const struct WindowTemplate gUnknown_085B21DC[] =
{
{
.priority = 0,
.bg = 0,
.tilemapLeft = 3,
.tilemapTop = 17,
.width = 24,
@ -72,7 +72,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
.baseBlock = 512
},
{
.priority = 2,
.bg = 2,
.tilemapLeft = 24,
.tilemapTop = 16,
.width = 6,
@ -84,7 +84,7 @@ static const struct WindowTemplate gUnknown_085B21DC[] =
};
static const struct WindowTemplate gUnknown_085B21F4 =
{
.priority = 0,
.bg = 0,
.tilemapLeft = 24,
.tilemapTop = 9,
.width = 5,

442
src/water.c Normal file
View File

@ -0,0 +1,442 @@
#include "global.h"
#include "battle_anim.h"
#include "constants/rgb.h"
extern void sub_810721C(struct Sprite *);
extern void sub_8107260(struct Sprite *);
extern void sub_810744C(struct Sprite *);
extern void sub_81075EC(struct Sprite *);
extern void sub_8107730(struct Sprite *);
extern void sub_81077C0(struct Sprite *);
extern void sub_80A78AC(struct Sprite *);
extern void sub_8107894(struct Sprite *);
extern void sub_81078D0(struct Sprite *);
extern void sub_8108034(struct Sprite *);
extern void sub_810851C(struct Sprite *);
extern void sub_8108BE0(struct Sprite *);
extern void sub_8108C54(struct Sprite *);
extern void sub_80A8EE4(struct Sprite *);
extern const union AffineAnimCmd *const gUnknown_08593420[];
extern const union AffineAnimCmd *const gUnknown_08596208[];
extern const union AnimCmd *const gUnknown_08595AB8[];
// what is this?
const u8 gUnknown_8593C80[] = INCBIN_U8("graphics/unknown/unknown_593C80.4bpp");
const u8 gUnknown_8593FFC[] = INCBIN_U8("graphics/unknown/unknown_593FFC.bin");
const union AnimCmd gUnknown_08594FFC[] =
{
ANIMCMD_FRAME(0, 2),
ANIMCMD_FRAME(8, 2),
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(24, 6),
ANIMCMD_FRAME(32, 2),
ANIMCMD_FRAME(40, 2),
ANIMCMD_FRAME(48, 2),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_0859501C[] =
{
gUnknown_08594FFC,
};
const struct SpriteTemplate gUnknown_08595020 =
{
.tileTag = ANIM_TAG_RAIN_DROPS,
.paletteTag = ANIM_TAG_RAIN_DROPS,
.oam = &gUnknown_08524954,
.anims = gUnknown_0859501C,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810721C,
};
const union AffineAnimCmd gUnknown_08595038[] =
{
AFFINEANIMCMD_FRAME(0xFFFB, 0xFFFB, 0, 10),
AFFINEANIMCMD_FRAME(0x5, 0x5, 0, 10),
AFFINEANIMCMD_JUMP(0),
};
const union AffineAnimCmd *const gUnknown_08595050[] =
{
gUnknown_08595038,
};
const union AnimCmd gUnknown_08595054[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(4, 5),
ANIMCMD_FRAME(8, 5),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595064[] =
{
gUnknown_08595054,
};
const struct SpriteTemplate gBattleAnimSpriteTemplate_8595068 =
{
.tileTag = ANIM_TAG_BUBBLE,
.paletteTag = ANIM_TAG_BUBBLE,
.oam = &gUnknown_08524A8C,
.anims = gUnknown_08595064,
.images = NULL,
.affineAnims = gUnknown_08595050,
.callback = sub_8107260,
};
const union AnimCmd gUnknown_08595080[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595088[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595090[] =
{
gUnknown_08595080,
gUnknown_08595088,
};
const union AffineAnimCmd gUnknown_08595098[] =
{
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 1),
AFFINEANIMCMD_FRAME(0x60, 0x60, 0, 1),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085950B0[] =
{
gUnknown_08595098,
};
// Multi-colored rings used in Aurora Beam.
const struct SpriteTemplate gUnknown_085950B4 =
{
.tileTag = ANIM_TAG_RAINBOW_RINGS,
.paletteTag = ANIM_TAG_RAINBOW_RINGS,
.oam = &gUnknown_08524A04,
.anims = gUnknown_08595090,
.images = NULL,
.affineAnims = gUnknown_085950B0,
.callback = sub_810744C,
};
const union AnimCmd gUnknown_085950CC[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_FRAME(4, 1),
ANIMCMD_FRAME(8, 1),
ANIMCMD_FRAME(12, 1),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_085950E0[] =
{
gUnknown_085950CC,
};
const struct SpriteTemplate gUnknown_085950E4 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_085950FC =
{
.tileTag = ANIM_TAG_BROWN_ORB,
.paletteTag = ANIM_TAG_BROWN_ORB,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_08595114 =
{
.tileTag = ANIM_TAG_GLOWY_RED_ORB,
.paletteTag = ANIM_TAG_GLOWY_RED_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_0859512C =
{
.tileTag = ANIM_TAG_GLOWY_GREEN_ORB,
.paletteTag = ANIM_TAG_GLOWY_GREEN_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const union AnimCmd gUnknown_08595144[] =
{
ANIMCMD_FRAME(16, 2),
ANIMCMD_FRAME(32, 2),
ANIMCMD_FRAME(48, 2),
ANIMCMD_JUMP(0),
};
const union AnimCmd *const gUnknown_08595154[] =
{
gUnknown_08595144,
};
const struct SpriteTemplate gUnknown_08595158 =
{
.tileTag = ANIM_TAG_SMALL_EMBER,
.paletteTag = ANIM_TAG_SMALL_EMBER,
.oam = &gUnknown_08524914,
.anims = gUnknown_08595154,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81075EC,
};
const struct SpriteTemplate gUnknown_08595170 =
{
.tileTag = ANIM_TAG_BLUE_RING,
.paletteTag = ANIM_TAG_BLUE_RING,
.oam = &gUnknown_08524A14,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gUnknown_08593420,
.callback = sub_81075EC,
};
const union AffineAnimCmd gUnknown_08595188[] =
{
AFFINEANIMCMD_FRAME(0x3, 0x3, 10, 50),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 10),
AFFINEANIMCMD_FRAME(0xFFEC, 0xFFEC, -10, 20),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085951A8[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085951B8[] =
{
gUnknown_08595188,
};
const union AffineAnimCmd *const gUnknown_085951BC[] =
{
gUnknown_085951A8,
};
const struct SpriteTemplate gUnknown_085951C0 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_085951B8,
.callback = sub_8107730,
};
const struct SpriteTemplate gUnknown_085951D8 =
{
.tileTag = ANIM_TAG_WATER_ORB,
.paletteTag = ANIM_TAG_WATER_ORB,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_085950E0,
.images = NULL,
.affineAnims = gUnknown_085951BC,
.callback = sub_81077C0,
};
const union AnimCmd gUnknown_085951F0[] =
{
ANIMCMD_FRAME(0, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_085951F8[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595200[] =
{
gUnknown_085951F0,
};
const union AnimCmd *const gUnknown_08595204[] =
{
gUnknown_085951F8,
};
const struct SpriteTemplate gUnknown_08595208 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524A2C,
.anims = gUnknown_08595200,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_80A78AC,
};
const struct SpriteTemplate gUnknown_08595220 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524AEC,
.anims = gUnknown_08595204,
.images = NULL,
.affineAnims = gUnknown_08596208,
.callback = sub_8107894,
};
const struct SpriteTemplate gUnknown_08595238 =
{
.tileTag = ANIM_TAG_ICE_CRYSTALS,
.paletteTag = ANIM_TAG_ICE_CRYSTALS,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595AB8,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_81078D0,
};
const struct SpriteTemplate gUnknown_08595250 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108034,
};
const struct SpriteTemplate gUnknown_08595268 =
{
.tileTag = ANIM_TAG_GLOWY_BLUE_ORB,
.paletteTag = ANIM_TAG_GLOWY_BLUE_ORB,
.oam = &gUnknown_08524904,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_810851C,
};
const union AnimCmd gUnknown_08595280[] =
{
ANIMCMD_FRAME(8, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595288[] =
{
ANIMCMD_FRAME(9, 1),
ANIMCMD_END,
};
const union AnimCmd gUnknown_08595290[] =
{
ANIMCMD_FRAME(4, 1),
ANIMCMD_END,
};
const union AnimCmd *const gUnknown_08595298[] =
{
gUnknown_08595280,
gUnknown_08595288,
};
const union AnimCmd *const gUnknown_085952A0[] =
{
gUnknown_08595290,
};
const union AffineAnimCmd gUnknown_085952A4[] =
{
AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF6, 0xFFF6, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085952BC[] =
{
AFFINEANIMCMD_FRAME(0xE0, 0xE0, 0, 0),
AFFINEANIMCMD_FRAME(0xFFF8, 0xFFF8, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd gUnknown_085952D4[] =
{
AFFINEANIMCMD_FRAME(0x150, 0x150, 0, 0),
AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 15),
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const gUnknown_085952EC[] =
{
gUnknown_085952A4,
gUnknown_085952BC,
};
const union AffineAnimCmd *const gUnknown_085952F4[] =
{
gUnknown_085952D4,
};
const struct SpriteTemplate gUnknown_085952F8 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524904,
.anims = gUnknown_08595298,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = sub_8108BE0,
};
const struct SpriteTemplate gUnknown_08595310 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_08524964,
.anims = gUnknown_08595298,
.images = NULL,
.affineAnims = gUnknown_085952EC,
.callback = sub_8108C54,
};
const struct SpriteTemplate gUnknown_08595328 =
{
.tileTag = ANIM_TAG_SMALL_BUBBLES,
.paletteTag = ANIM_TAG_SMALL_BUBBLES,
.oam = &gUnknown_0852496C,
.anims = gUnknown_085952A0,
.images = NULL,
.affineAnims = gUnknown_085952F4,
.callback = sub_80A8EE4,
};

View File

@ -52,7 +52,7 @@ bool16 InitWindows(const struct WindowTemplate *templates)
gWindows[i].tileData = NULL;
}
for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].priority; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].priority)
for (i = 0, allocatedBaseBlock = 0, bgLayer = templates[i].bg; bgLayer != 0xFF && i < 0x20; ++i, bgLayer = templates[i].bg)
{
if (gUnneededFireRedVariable == 1)
{
@ -121,14 +121,14 @@ u16 AddWindow(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
if ((bgLayer = gWindows[win].window.priority) == 0xFF)
if ((bgLayer = gWindows[win].window.bg) == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@ -190,14 +190,14 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
for (win = 0; win < WINDOWS_MAX; ++win)
{
if (gWindows[win].window.priority == 0xFF)
if (gWindows[win].window.bg == 0xFF)
break;
}
if (win == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
allocatedBaseBlock = 0;
if (gUnneededFireRedVariable == 1)
@ -221,7 +221,7 @@ int AddWindowWithoutTileMap(const struct WindowTemplate *template)
void RemoveWindow(u8 windowId)
{
u8 bgLayer = gWindows[windowId].window.priority;
u8 bgLayer = gWindows[windowId].window.bg;
if (gUnneededFireRedVariable == 1)
{
@ -277,14 +277,14 @@ void CopyWindowToVram(u8 windowId, u8 mode)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(windowLocal.window.priority);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
break;
case 3:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
CopyBgTilemapBufferToVram(windowLocal.window.priority);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData, windowSize, windowLocal.window.baseBlock);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@ -309,14 +309,14 @@ void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(windowLocal.window.priority);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
case 2:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
break;
case 3:
LoadBgTiles(windowLocal.window.priority, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
CopyBgTilemapBufferToVram(windowLocal.window.priority);
LoadBgTiles(windowLocal.window.bg, windowLocal.tileData + (rectPos * 32), rectSize, windowLocal.window.baseBlock + rectPos);
CopyBgTilemapBufferToVram(windowLocal.window.bg);
break;
}
}
@ -327,8 +327,8 @@ void PutWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
GetBgAttribute(windowLocal.window.priority, 0xA) + windowLocal.window.baseBlock,
windowLocal.window.bg,
GetBgAttribute(windowLocal.window.bg, 0xA) + windowLocal.window.baseBlock,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
windowLocal.window.width,
@ -340,13 +340,13 @@ void PutWindowTilemap(u8 windowId)
void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 palette)
{
struct Window windowLocal = gWindows[windowId];
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@ -364,7 +364,7 @@ void ClearWindowTilemap(u8 windowId)
struct Window windowLocal = gWindows[windowId];
FillBgTilemapBufferRect(
windowLocal.window.priority,
windowLocal.window.bg,
gUnknown_03002F60,
windowLocal.window.tilemapLeft,
windowLocal.window.tilemapTop,
@ -376,13 +376,13 @@ void ClearWindowTilemap(u8 windowId)
void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height)
{
struct Window windowLocal = gWindows[windowId];
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.priority, 0xA);
u16 currentRow = windowLocal.window.baseBlock + (y * windowLocal.window.width) + x + GetBgAttribute(windowLocal.window.bg, 0xA);
int i;
for (i = 0; i < height; ++i)
{
WriteSequenceToBgTilemapBuffer(
windowLocal.window.priority,
windowLocal.window.bg,
currentRow,
windowLocal.window.tilemapLeft + x,
windowLocal.window.tilemapTop + y + i,
@ -529,7 +529,7 @@ void ScrollWindow(u8 windowId, u8 direction, u8 distance, u8 fillValue)
void CallWindowFunction(u8 windowId, void ( *func)(u8, u8, u8, u8, u8, u8))
{
struct WindowTemplate window = gWindows[windowId].window;
func(window.priority, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
func(window.bg, window.tilemapLeft, window.tilemapTop, window.width, window.height, window.paletteNum);
}
bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
@ -551,7 +551,7 @@ bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value)
case WINDOW_TILE_DATA:
gWindows[windowId].tileData = (u8*)(value);
return TRUE;
case WINDOW_PRIORITY:
case WINDOW_BG:
case WINDOW_WIDTH:
case WINDOW_HEIGHT:
default:
@ -563,8 +563,8 @@ u32 GetWindowAttribute(u8 windowId, u8 attributeId)
{
switch (attributeId)
{
case WINDOW_PRIORITY:
return gWindows[windowId].window.priority;
case WINDOW_BG:
return gWindows[windowId].window.bg;
case WINDOW_TILEMAP_LEFT:
return gWindows[windowId].window.tilemapLeft;
case WINDOW_TILEMAP_TOP:
@ -590,7 +590,7 @@ static u8 GetNumActiveWindowsOnBg(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
if (gWindows[i].window.priority == bgId)
if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;
@ -609,12 +609,12 @@ u16 AddWindow8Bit(struct WindowTemplate *template)
for (windowId = 0; windowId < 32; windowId++)
{
if (gWindows[windowId].window.priority == 0xFF)
if (gWindows[windowId].window.bg == 0xFF)
break;
}
if (windowId == WINDOWS_MAX)
return 0xFF;
bgLayer = template->priority;
bgLayer = template->bg;
if (gUnknown_03002F70[bgLayer] == 0)
{
u16 attribute = GetBgAttribute(bgLayer, 8);
@ -693,14 +693,14 @@ void CopyWindowToVram8Bit(u8 windowId, u8 mode)
switch (mode)
{
case 1:
CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
case 2:
LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
break;
case 3:
LoadBgTiles(sWindowPtr->window.priority, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
CopyBgTilemapBufferToVram(sWindowPtr->window.priority);
LoadBgTiles(sWindowPtr->window.bg, sWindowPtr->tileData, sWindowSize, sWindowPtr->window.baseBlock);
CopyBgTilemapBufferToVram(sWindowPtr->window.bg);
break;
}
}
@ -711,7 +711,7 @@ static u8 GetNumActiveWindowsOnBg8Bit(u8 bgId)
s32 i;
for (i = 0; i < WINDOWS_MAX; i++)
{
if (gWindows[i].window.priority == bgId)
if (gWindows[i].window.bg == bgId)
windowsNum++;
}
return windowsNum;