Merge pull request #320 from DizzyEggg/anims

Document battle animation scripts
This commit is contained in:
Marcus Huderle 2018-10-06 08:20:41 -05:00 committed by GitHub
commit b9e38a569e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
20 changed files with 7087 additions and 6944 deletions

View File

@ -4077,8 +4077,8 @@ _080A7B90:
bx r0 bx r0
thumb_func_end sub_80A7AFC thumb_func_end sub_80A7AFC
thumb_func_start sub_80A7B98 thumb_func_start AnimTask_BlendMonInAndOut
sub_80A7B98: @ 80A7B98 AnimTask_BlendMonInAndOut: @ 80A7B98
push {r4,lr} push {r4,lr}
lsls r0, 24 lsls r0, 24
lsrs r4, r0, 24 lsrs r4, r0, 24
@ -4117,7 +4117,7 @@ _080A7BE2:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80A7B98 thumb_func_end AnimTask_BlendMonInAndOut
thumb_func_start sub_80A7BF4 thumb_func_start sub_80A7BF4
sub_80A7BF4: @ 80A7BF4 sub_80A7BF4: @ 80A7BF4
@ -4802,8 +4802,8 @@ _080A8136:
.pool .pool
thumb_func_end sub_80A80C8 thumb_func_end sub_80A80C8
thumb_func_start sub_80A8140 thumb_func_start AnimTask_GetFrustrationPowerLevel
sub_80A8140: @ 80A8140 AnimTask_GetFrustrationPowerLevel: @ 80A8140
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r2, r0, 24 lsrs r2, r0, 24
@ -4827,7 +4827,7 @@ _080A815E:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80A8140 thumb_func_end AnimTask_GetFrustrationPowerLevel
thumb_func_start sub_80A8174 thumb_func_start sub_80A8174
sub_80A8174: @ 80A8174 sub_80A8174: @ 80A8174

View File

@ -867,7 +867,7 @@ LaunchStatusAnimation: @ 80AA364
strb r4, [r0] strb r4, [r0]
ldr r0, =gBattleAnimTarget ldr r0, =gBattleAnimTarget
strb r4, [r0] strb r4, [r0]
ldr r0, =gBattleAnims_Statuses ldr r0, =gBattleAnims_StatusConditions
movs r2, 0 movs r2, 0
bl LaunchBattleAnimation bl LaunchBattleAnimation
ldr r0, =task0A_80788BC ldr r0, =task0A_80788BC

View File

@ -5,8 +5,8 @@
.text .text
thumb_func_start sub_80D51AC thumb_func_start AnimTask_ShakeMon
sub_80D51AC: @ 80D51AC AnimTask_ShakeMon: @ 80D51AC
push {r4,r5,lr} push {r4,r5,lr}
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
@ -56,7 +56,7 @@ _080D520C:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D51AC thumb_func_end AnimTask_ShakeMon
thumb_func_start sub_80D5220 thumb_func_start sub_80D5220
sub_80D5220: @ 80D5220 sub_80D5220: @ 80D5220
@ -151,8 +151,8 @@ _080D52CA:
bx r0 bx r0
thumb_func_end sub_80D5220 thumb_func_end sub_80D5220
thumb_func_start sub_80D52D0 thumb_func_start AnimTask_ShakeMon2
sub_80D52D0: @ 80D52D0 AnimTask_ShakeMon2: @ 80D52D0
push {r4-r6,lr} push {r4-r6,lr}
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
@ -265,7 +265,7 @@ _080D53A6:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D52D0 thumb_func_end AnimTask_ShakeMon2
thumb_func_start sub_80D53BC thumb_func_start sub_80D53BC
sub_80D53BC: @ 80D53BC sub_80D53BC: @ 80D53BC
@ -372,8 +372,8 @@ _080D5478:
bx r0 bx r0
thumb_func_end sub_80D53BC thumb_func_end sub_80D53BC
thumb_func_start sub_80D5484 thumb_func_start AnimTask_ShakeMonInPlace
sub_80D5484: @ 80D5484 AnimTask_ShakeMonInPlace: @ 80D5484
push {r4-r6,lr} push {r4-r6,lr}
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
@ -432,7 +432,7 @@ _080D54F6:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D5484 thumb_func_end AnimTask_ShakeMonInPlace
thumb_func_start sub_80D5508 thumb_func_start sub_80D5508
sub_80D5508: @ 80D5508 sub_80D5508: @ 80D5508
@ -595,8 +595,8 @@ _080D563C:
bx r0 bx r0
thumb_func_end sub_80D5508 thumb_func_end sub_80D5508
thumb_func_start sub_80D5644 thumb_func_start AnimTask_ShakeAndSinkMon
sub_80D5644: @ 80D5644 AnimTask_ShakeAndSinkMon: @ 80D5644
push {r4,r5,lr} push {r4,r5,lr}
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
@ -635,7 +635,7 @@ sub_80D5644: @ 80D5644
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D5644 thumb_func_end AnimTask_ShakeAndSinkMon
thumb_func_start sub_80D56A4 thumb_func_start sub_80D56A4
sub_80D56A4: @ 80D56A4 sub_80D56A4: @ 80D56A4
@ -837,8 +837,8 @@ _080D5822:
.pool .pool
thumb_func_end sub_80D57B8 thumb_func_end sub_80D57B8
thumb_func_start sub_80D5830 thumb_func_start AnimTask_TranslateMonEllipticalRespectSide
sub_80D5830: @ 80D5830 AnimTask_TranslateMonEllipticalRespectSide: @ 80D5830
push {r4,lr} push {r4,lr}
lsls r0, 24 lsls r0, 24
lsrs r4, r0, 24 lsrs r4, r0, 24
@ -859,7 +859,7 @@ _080D584C:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D5830 thumb_func_end AnimTask_TranslateMonEllipticalRespectSide
thumb_func_start sub_80D5860 thumb_func_start sub_80D5860
sub_80D5860: @ 80D5860 sub_80D5860: @ 80D5860
@ -1325,8 +1325,8 @@ sub_80D5C20: @ 80D5C20
.pool .pool
thumb_func_end sub_80D5C20 thumb_func_end sub_80D5C20
thumb_func_start sub_80D5C50 thumb_func_start AnimTask_WindUpLunge
sub_80D5C50: @ 80D5C50 AnimTask_WindUpLunge: @ 80D5C50
push {r4-r7,lr} push {r4-r7,lr}
lsls r0, 24 lsls r0, 24
lsrs r6, r0, 24 lsrs r6, r0, 24
@ -1390,7 +1390,7 @@ _080D5C82:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D5C50 thumb_func_end AnimTask_WindUpLunge
thumb_func_start sub_80D5CE4 thumb_func_start sub_80D5CE4
sub_80D5CE4: @ 80D5CE4 sub_80D5CE4: @ 80D5CE4
@ -1617,8 +1617,8 @@ _080D5EAA:
.pool .pool
thumb_func_end sub_80D5E6C thumb_func_end sub_80D5E6C
thumb_func_start sub_80D5EB8 thumb_func_start AnimTask_SwayMon
sub_80D5EB8: @ 80D5EB8 AnimTask_SwayMon: @ 80D5EB8
push {r4-r6,lr} push {r4-r6,lr}
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
@ -1676,7 +1676,7 @@ _080D5F18:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D5EB8 thumb_func_end AnimTask_SwayMon
thumb_func_start sub_80D5F3C thumb_func_start sub_80D5F3C
sub_80D5F3C: @ 80D5F3C sub_80D5F3C: @ 80D5F3C
@ -1828,8 +1828,8 @@ _080D6050:
.pool .pool
thumb_func_end sub_80D5F3C thumb_func_end sub_80D5F3C
thumb_func_start sub_80D6064 thumb_func_start AnimTask_ScaleMonAndRestore
sub_80D6064: @ 80D6064 AnimTask_ScaleMonAndRestore: @ 80D6064
push {r4-r6,lr} push {r4-r6,lr}
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
@ -1867,7 +1867,7 @@ sub_80D6064: @ 80D6064
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_80D6064 thumb_func_end AnimTask_ScaleMonAndRestore
thumb_func_start sub_80D60BC thumb_func_start sub_80D60BC
sub_80D60BC: @ 80D60BC sub_80D60BC: @ 80D60BC

View File

@ -7975,7 +7975,7 @@ _08102794:
mov r12, r5 mov r12, r5
ldr r7, =gUnknown_08592EBC ldr r7, =gUnknown_08592EBC
mov r8, r7 mov r8, r7
ldr r6, =gUnknown_08592EEC ldr r6, =gBattleAnimSpriteTemplate_8592EEC
movs r5, 0x1 movs r5, 0x1
_081027B2: _081027B2:
lsls r0, r2, 4 lsls r0, r2, 4
@ -17049,8 +17049,8 @@ _08107118:
.pool .pool
thumb_func_end sub_81070AC thumb_func_end sub_81070AC
thumb_func_start sub_8107144 thumb_func_start AnimTask_IsFuryCutterHitRight
sub_8107144: @ 8107144 AnimTask_IsFuryCutterHitRight: @ 8107144
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -17065,10 +17065,10 @@ sub_8107144: @ 8107144
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8107144 thumb_func_end AnimTask_IsFuryCutterHitRight
thumb_func_start sub_8107168 thumb_func_start AnimTask_GetFuryCutterHitCount
sub_8107168: @ 8107168 AnimTask_GetFuryCutterHitCount: @ 8107168
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -17081,10 +17081,10 @@ sub_8107168: @ 8107168
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8107168 thumb_func_end AnimTask_GetFuryCutterHitCount
thumb_func_start sub_8107188 thumb_func_start AnimTask_CreateRaindrops
sub_8107188: @ 8107188 AnimTask_CreateRaindrops: @ 8107188
push {r4-r6,lr} push {r4-r6,lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -17150,7 +17150,7 @@ _0810720A:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8107188 thumb_func_end AnimTask_CreateRaindrops
thumb_func_start sub_810721C thumb_func_start sub_810721C
sub_810721C: @ 810721C sub_810721C: @ 810721C
@ -18033,8 +18033,8 @@ _0810794C:
bx r0 bx r0
thumb_func_end sub_810790C thumb_func_end sub_810790C
thumb_func_start sub_8107954 thumb_func_start AnimTask_CreateSurfWave
sub_8107954: @ 8107954 AnimTask_CreateSurfWave: @ 8107954
push {r4-r7,lr} push {r4-r7,lr}
mov r7, r10 mov r7, r10
mov r6, r9 mov r6, r9
@ -18256,7 +18256,7 @@ _08107B58:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8107954 thumb_func_end AnimTask_CreateSurfWave
thumb_func_start sub_8107B84 thumb_func_start sub_8107B84
sub_8107B84: @ 8107B84 sub_8107B84: @ 8107B84
@ -22914,8 +22914,8 @@ _0810A054:
.pool .pool
thumb_func_end sub_8109E2C thumb_func_end sub_8109E2C
thumb_func_start sub_810A060 thumb_func_start AnimTask_BlendBackground
sub_810A060: @ 810A060 AnimTask_BlendBackground: @ 810A060
push {r4,lr} push {r4,lr}
sub sp, 0x10 sub sp, 0x10
adds r4, r0, 0 adds r4, r0, 0
@ -22938,7 +22938,7 @@ sub_810A060: @ 810A060
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_810A060 thumb_func_end AnimTask_BlendBackground
thumb_func_start sub_810A094 thumb_func_start sub_810A094
sub_810A094: @ 810A094 sub_810A094: @ 810A094
@ -28522,8 +28522,8 @@ _0810CDF6:
bx r0 bx r0
thumb_func_end sub_810CDB0 thumb_func_end sub_810CDB0
thumb_func_start sub_810CDFC thumb_func_start AnimTask_GetRolloutCounter
sub_810CDFC: @ 810CDFC AnimTask_GetRolloutCounter: @ 810CDFC
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -28544,7 +28544,7 @@ sub_810CDFC: @ 810CDFC
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_810CDFC thumb_func_end AnimTask_GetRolloutCounter
thumb_func_start unc_080B08A0 thumb_func_start unc_080B08A0
unc_080B08A0: @ 810CE2C unc_080B08A0: @ 810CE2C
@ -28796,7 +28796,7 @@ _0810D028:
mov r1, r9 mov r1, r9
ldrh r0, [r1, 0x2] ldrh r0, [r1, 0x2]
strh r0, [r5, 0x2E] strh r0, [r5, 0x2E]
ldr r0, =gUnknown_08597358 ldr r0, =gBasicHitSplatSpriteTemplate
movs r2, 0x20 movs r2, 0x20
ldrsh r1, [r5, r2] ldrsh r1, [r5, r2]
movs r3, 0x22 movs r3, 0x22
@ -36190,8 +36190,8 @@ _08110BC6:
bx r0 bx r0
thumb_func_end sub_8110B80 thumb_func_end sub_8110B80
thumb_func_start sub_8110BCC thumb_func_start AnimTask_LoadSandstormBackground
sub_8110BCC: @ 8110BCC AnimTask_LoadSandstormBackground: @ 8110BCC
push {r4-r6,lr} push {r4-r6,lr}
sub sp, 0x10 sub sp, 0x10
lsls r0, 24 lsls r0, 24
@ -36275,7 +36275,7 @@ _08110C6E:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8110BCC thumb_func_end AnimTask_LoadSandstormBackground
thumb_func_start sub_8110CB0 thumb_func_start sub_8110CB0
sub_8110CB0: @ 8110CB0 sub_8110CB0: @ 8110CB0
@ -37293,8 +37293,8 @@ _081114E6:
bx r0 bx r0
thumb_func_end sub_811149C thumb_func_end sub_811149C
thumb_func_start sub_81114EC thumb_func_start AnimTask_GetSeismicTossDamageLevel
sub_81114EC: @ 81114EC AnimTask_GetSeismicTossDamageLevel: @ 81114EC
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r3, r0, 24 lsrs r3, r0, 24
@ -37326,7 +37326,7 @@ _0811151A:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_81114EC thumb_func_end AnimTask_GetSeismicTossDamageLevel
thumb_func_start sub_811152C thumb_func_start sub_811152C
sub_811152C: @ 811152C sub_811152C: @ 811152C
@ -45184,8 +45184,8 @@ _081155F4:
.pool .pool
thumb_func_end sub_8115588 thumb_func_end sub_8115588
thumb_func_start sub_8115600 thumb_func_start AnimTask_IsPowerOver99
sub_8115600: @ 8115600 AnimTask_IsPowerOver99: @ 8115600
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r1, r0, 24 lsrs r1, r0, 24
@ -45203,7 +45203,7 @@ _08115614:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8115600 thumb_func_end AnimTask_IsPowerOver99
thumb_func_start sub_8115628 thumb_func_start sub_8115628
sub_8115628: @ 8115628 sub_8115628: @ 8115628
@ -47427,8 +47427,8 @@ _08116832:
.pool .pool
thumb_func_end sub_811675C thumb_func_end sub_811675C
thumb_func_start sub_8116848 thumb_func_start AnimTask_BlendParticle
sub_8116848: @ 8116848 AnimTask_BlendParticle: @ 8116848
push {r4,lr} push {r4,lr}
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
@ -47447,7 +47447,7 @@ sub_8116848: @ 8116848
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8116848 thumb_func_end AnimTask_BlendParticle
thumb_func_start sub_8116874 thumb_func_start sub_8116874
sub_8116874: @ 8116874 sub_8116874: @ 8116874
@ -49190,8 +49190,8 @@ _0811773E:
.pool .pool
thumb_func_end sub_81176D8 thumb_func_end sub_81176D8
thumb_func_start sub_8117754 thumb_func_start AnimTask_IsAttackerOpponentSide
sub_8117754: @ 8117754 AnimTask_IsAttackerOpponentSide: @ 8117754
push {r4,lr} push {r4,lr}
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
@ -49209,10 +49209,10 @@ sub_8117754: @ 8117754
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8117754 thumb_func_end AnimTask_IsAttackerOpponentSide
thumb_func_start sub_8117780 thumb_func_start AnimTask_IsTargetOpponentSide
sub_8117780: @ 8117780 AnimTask_IsTargetOpponentSide: @ 8117780
push {r4,lr} push {r4,lr}
adds r4, r0, 0 adds r4, r0, 0
lsls r4, 24 lsls r4, 24
@ -49230,10 +49230,10 @@ sub_8117780: @ 8117780
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8117780 thumb_func_end AnimTask_IsTargetOpponentSide
thumb_func_start sub_81177AC thumb_func_start AnimTask_IsTargetPartner
sub_81177AC: @ 81177AC AnimTask_IsTargetPartner: @ 81177AC
push {r4,r5,lr} push {r4,r5,lr}
lsls r0, 24 lsls r0, 24
lsrs r3, r0, 24 lsrs r3, r0, 24
@ -49256,7 +49256,7 @@ _081177C8:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_81177AC thumb_func_end AnimTask_IsTargetPartner
thumb_func_start sub_81177E4 thumb_func_start sub_81177E4
sub_81177E4: @ 81177E4 sub_81177E4: @ 81177E4
@ -49753,8 +49753,8 @@ _08117C0C:
.pool .pool
thumb_func_end sub_8117A60 thumb_func_end sub_8117A60
thumb_func_start sub_8117C24 thumb_func_start AnimTask_GetBattleTerrain
sub_8117C24: @ 8117C24 AnimTask_GetBattleTerrain: @ 8117C24
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r0, 24 lsrs r0, 24
@ -49766,7 +49766,7 @@ sub_8117C24: @ 8117C24
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8117C24 thumb_func_end AnimTask_GetBattleTerrain
thumb_func_start sub_8117C44 thumb_func_start sub_8117C44
sub_8117C44: @ 8117C44 sub_8117C44: @ 8117C44
@ -50032,8 +50032,8 @@ _08117E34:
.pool .pool
thumb_func_end sub_8117DD8 thumb_func_end sub_8117DD8
thumb_func_start sub_8117E60 thumb_func_start AnimTask_IsContest
sub_8117E60: @ 8117E60 AnimTask_IsContest: @ 8117E60
push {r4,lr} push {r4,lr}
lsls r0, 24 lsls r0, 24
lsrs r4, r0, 24 lsrs r4, r0, 24
@ -50057,7 +50057,7 @@ _08117E84:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8117E60 thumb_func_end AnimTask_IsContest
thumb_func_start sub_8117E94 thumb_func_start sub_8117E94
sub_8117E94: @ 8117E94 sub_8117E94: @ 8117E94
@ -50078,8 +50078,8 @@ sub_8117E94: @ 8117E94
.pool .pool
thumb_func_end sub_8117E94 thumb_func_end sub_8117E94
thumb_func_start sub_8117EC4 thumb_func_start AnimTask_IsTargetSameSide
sub_8117EC4: @ 8117EC4 AnimTask_IsTargetSameSide: @ 8117EC4
push {r4,r5,lr} push {r4,r5,lr}
lsls r0, 24 lsls r0, 24
lsrs r5, r0, 24 lsrs r5, r0, 24
@ -50109,7 +50109,7 @@ _08117EFC:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8117EC4 thumb_func_end AnimTask_IsTargetSameSide
thumb_func_start sub_8117F10 thumb_func_start sub_8117F10
sub_8117F10: @ 8117F10 sub_8117F10: @ 8117F10

View File

@ -1012,8 +1012,8 @@ _0815A8C2:
bx r0 bx r0
thumb_func_end sub_815A8AC thumb_func_end sub_815A8AC
thumb_func_start sub_815A8C8 thumb_func_start AnimTask_IsTargetPlayerSide
sub_815A8C8: @ 815A8C8 AnimTask_IsTargetPlayerSide: @ 815A8C8
push {r4,lr} push {r4,lr}
lsls r0, 24 lsls r0, 24
lsrs r4, r0, 24 lsrs r4, r0, 24
@ -1039,10 +1039,10 @@ _0815A8F0:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_815A8C8 thumb_func_end AnimTask_IsTargetPlayerSide
thumb_func_start sub_815A904 thumb_func_start AnimTask_IsHealingMove
sub_815A904: @ 815A904 AnimTask_IsHealingMove: @ 815A904
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r2, r0, 24 lsrs r2, r0, 24
@ -1064,7 +1064,7 @@ _0815A924:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_815A904 thumb_func_end AnimTask_IsHealingMove
thumb_func_start sub_815A934 thumb_func_start sub_815A934
sub_815A934: @ 815A934 sub_815A934: @ 815A934
@ -10048,8 +10048,8 @@ _0815F1DE:
.pool .pool
thumb_func_end sub_815F18C thumb_func_end sub_815F18C
thumb_func_start sub_815F20C thumb_func_start AnimTask_MonToSubstitute
sub_815F20C: @ 815F20C AnimTask_MonToSubstitute: @ 815F20C
push {r4-r7,lr} push {r4-r7,lr}
mov r7, r9 mov r7, r9
mov r6, r8 mov r6, r8
@ -10183,7 +10183,7 @@ _0815F310:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_815F20C thumb_func_end AnimTask_MonToSubstitute
thumb_func_start sub_815F330 thumb_func_start sub_815F330
sub_815F330: @ 815F330 sub_815F330: @ 815F330
@ -10861,8 +10861,8 @@ _0815F896:
.pool .pool
thumb_func_end sub_815F7C4 thumb_func_end sub_815F7C4
thumb_func_start sub_815F8A0 thumb_func_start AnimTask_GetReturnPowerLevel
sub_815F8A0: @ 815F8A0 AnimTask_GetReturnPowerLevel: @ 815F8A0
push {r4,lr} push {r4,lr}
lsls r0, 24 lsls r0, 24
lsrs r4, r0, 24 lsrs r4, r0, 24
@ -10904,7 +10904,7 @@ _0815F8E0:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_815F8A0 thumb_func_end AnimTask_GetReturnPowerLevel
thumb_func_start sub_815F8F4 thumb_func_start sub_815F8F4
sub_815F8F4: @ 815F8F4 sub_815F8F4: @ 815F8F4
@ -12336,8 +12336,8 @@ _081604E8:
bx r0 bx r0
thumb_func_end sub_81603F4 thumb_func_end sub_81603F4
thumb_func_start sub_81604F0 thumb_func_start AnimTask_GetWeather
sub_81604F0: @ 81604F0 AnimTask_GetWeather: @ 81604F0
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r3, r0, 24 lsrs r3, r0, 24
@ -12380,7 +12380,7 @@ _08160538:
bl DestroyAnimVisualTask bl DestroyAnimVisualTask
pop {r0} pop {r0}
bx r0 bx r0
thumb_func_end sub_81604F0 thumb_func_end AnimTask_GetWeather
thumb_func_start sub_8160544 thumb_func_start sub_8160544
sub_8160544: @ 8160544 sub_8160544: @ 8160544

View File

@ -1030,8 +1030,8 @@ sub_8170D24: @ 8170D24
.pool .pool
thumb_func_end sub_8170D24 thumb_func_end sub_8170D24
thumb_func_start sub_8170D4C thumb_func_start AnimTask_IsBallBlockedByTrainer
sub_8170D4C: @ 8170D4C AnimTask_IsBallBlockedByTrainer: @ 8170D4C
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r2, r0, 24 lsrs r2, r0, 24
@ -1055,7 +1055,7 @@ _08170D74:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_8170D4C thumb_func_end AnimTask_IsBallBlockedByTrainer
thumb_func_start ItemIdToBallId thumb_func_start ItemIdToBallId
ItemIdToBallId: @ 8170D84 ItemIdToBallId: @ 8170D84
@ -5757,8 +5757,8 @@ _081734A0:
.pool .pool
thumb_func_end sub_817345C thumb_func_end sub_817345C
thumb_func_start sub_81734B4 thumb_func_start AnimTask_GetTrappedMoveAnimId
sub_81734B4: @ 81734B4 AnimTask_GetTrappedMoveAnimId: @ 81734B4
push {lr} push {lr}
lsls r0, 24 lsls r0, 24
lsrs r2, r0, 24 lsrs r2, r0, 24
@ -5805,7 +5805,7 @@ _0817350C:
pop {r0} pop {r0}
bx r0 bx r0
.pool .pool
thumb_func_end sub_81734B4 thumb_func_end AnimTask_GetTrappedMoveAnimId
thumb_func_start sub_817351C thumb_func_start sub_817351C
sub_817351C: @ 817351C sub_817351C: @ 817351C

View File

@ -66,9 +66,9 @@
.byte \battler .byte \battler
.endm .endm
.macro setalpha param0 .macro setalpha eva, evb
.byte 0xc .byte 0x0C
.2byte \param0 .2byte ((\evb) << 8) | (\eva)
.endm .endm
.macro blendoff .macro blendoff
@ -266,3 +266,16 @@
.macro stopsound .macro stopsound
.byte 0x2f .byte 0x2f
.endm .endm
@ useful macros
.macro jumpreteq value, ptr
jumpargeq ARG_RET_ID, \value, \ptr
.endm
.macro jumprettrue ptr
jumpreteq TRUE, \ptr
.endm
.macro jumpretfalse ptr
jumpreteq FALSE, \ptr
.endm

View File

@ -14,15 +14,15 @@ gUnknown_08592114:: @ 8592114
.4byte gUnknown_085920F0 .4byte gUnknown_085920F0
.align 2 .align 2
gUnknown_08592118:: @ 8592118 gSleepPowderParticleSpriteTemplate:: @ 8592118
spr_template 0x2753, 0x2753, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840 spr_template 0x2753, 0x2753, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2 .align 2
gUnknown_08592130:: @ 8592130 gStunSporeParticleSpriteTemplate:: @ 8592130
spr_template 0x2754, 0x2754, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840 spr_template 0x2754, 0x2754, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2 .align 2
gUnknown_08592148:: @ 8592148 gPoisonPowderParticleSpriteTemplate:: @ 8592148
spr_template 0x2751, 0x2751, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840 spr_template 0x2751, 0x2751, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2 .align 2
@ -142,7 +142,7 @@ gUnknown_085922B4:: @ 85922B4
.4byte gUnknown_085922A8 .4byte gUnknown_085922A8
.align 2 .align 2
gUnknown_085922BC:: @ 85922BC gLeechSeedSpriteTemplate:: @ 85922BC
spr_template 0x2716, 0x2716, gUnknown_0852490C, gUnknown_085922B4, NULL, gDummySpriteAffineAnimTable, sub_80FEC48 spr_template 0x2716, 0x2716, gUnknown_0852490C, gUnknown_085922B4, NULL, gDummySpriteAffineAnimTable, sub_80FEC48
.align 2 .align 2
@ -230,7 +230,7 @@ gUnknown_08592400:: @ 8592400
.4byte gUnknown_085923F0 .4byte gUnknown_085923F0
.align 2 .align 2
gUnknown_08592404:: @ 8592404 gSwiftStarSpriteTemplate:: @ 8592404
spr_template 0x27be, 0x27be, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_08592400, sub_80FF0F4 spr_template 0x27be, 0x27be, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_08592400, sub_80FF0F4
.align 2 .align 2
@ -353,7 +353,7 @@ gUnknown_08592610:: @ 8592610
spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFB18 spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFB18
.align 2 .align 2
gUnknown_08592628:: @ 8592628 gBattleAnimSpriteTemplate_8592628:: @ 8592628
spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFBF4 spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFBF4
.align 2 .align 2
@ -599,7 +599,7 @@ gUnknown_08592A18:: @ 8592A18
.4byte gUnknown_08592A04 .4byte gUnknown_08592A04
.align 2 .align 2
gUnknown_08592A1C:: @ 8592A1C gCuttingSliceSpriteTemplate:: @ 8592A1C
spr_template 0x279a, 0x279a, gUnknown_08524A34, gUnknown_08592A18, NULL, gDummySpriteAffineAnimTable, sub_8100AE0 spr_template 0x279a, 0x279a, gUnknown_08524A34, gUnknown_08592A18, NULL, gDummySpriteAffineAnimTable, sub_8100AE0
.align 2 .align 2
@ -888,7 +888,7 @@ gUnknown_08592EE8:: @ 8592EE8
.4byte gUnknown_08592ED4 .4byte gUnknown_08592ED4
.align 2 .align 2
gUnknown_08592EEC:: @ 8592EEC gBattleAnimSpriteTemplate_8592EEC:: @ 8592EEC
spr_template 0x27d3, 0x27d3, gUnknown_0852490C, gUnknown_08592EE8, NULL, gDummySpriteAffineAnimTable, sub_8102540 spr_template 0x27d3, 0x27d3, gUnknown_0852490C, gUnknown_08592EE8, NULL, gDummySpriteAffineAnimTable, sub_8102540
.align 2 .align 2
@ -1157,11 +1157,11 @@ gUnknown_0859337C:: @ 859337C
.4byte gUnknown_0859335C .4byte gUnknown_0859335C
.align 2 .align 2
gUnknown_08593380:: @ 8593380 gBattleAnimSpriteTemplate_8593380:: @ 8593380
spr_template 0x2715, 0x2715, gUnknown_08524ADC, gDummySpriteAnimTable, NULL, gUnknown_0859337C, sub_810387C spr_template 0x2715, 0x2715, gUnknown_08524ADC, gDummySpriteAnimTable, NULL, gUnknown_0859337C, sub_810387C
.align 2 .align 2
gUnknown_08593398:: @ 8593398 gSonicBoomSpriteTemplate:: @ 8593398
spr_template 0x2713, 0x2713, gUnknown_08524B14, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81038C8 spr_template 0x2713, 0x2713, gUnknown_08524B14, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81038C8
.align 2 .align 2
@ -1189,11 +1189,11 @@ gUnknown_08593424:: @ 8593424
.4byte gUnknown_085933E0 .4byte gUnknown_085933E0
.align 2 .align 2
gUnknown_08593428:: @ 8593428 gSupersonicWaveSpriteTemplate:: @ 8593428
spr_template 0x27b3, 0x27b3, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820 spr_template 0x27b3, 0x27b3, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820
.align 2 .align 2
gUnknown_08593440:: @ 8593440 gScreechWaveSpriteTemplate:: @ 8593440
spr_template 0x27b4, 0x27b4, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820 spr_template 0x27b4, 0x27b4, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820
.align 2 .align 2
@ -1357,7 +1357,7 @@ gUnknown_08593718:: @ 8593718
.4byte gUnknown_08593704 .4byte gUnknown_08593704
.align 2 .align 2
gUnknown_0859371C:: @ 859371C gBattleAnimSpriteTemplate_859371C:: @ 859371C
spr_template 0x27d6, 0x27d6, gUnknown_08524914, gUnknown_08593718, NULL, gDummySpriteAffineAnimTable, sub_80A77C8 spr_template 0x27d6, 0x27d6, gUnknown_08524914, gUnknown_08593718, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
.align 2 .align 2
@ -1436,7 +1436,7 @@ gUnknown_08593880:: @ 8593880
spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593818, sub_81052A4 spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593818, sub_81052A4
.align 2 .align 2
gUnknown_08593898:: @ 8593898 gBattleAnimSpriteTemplate_8593898:: @ 8593898
spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593810, sub_81054E8 spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593810, sub_81054E8
.align 2 .align 2
@ -1497,7 +1497,7 @@ gUnknown_085939A0:: @ 85939A0
spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106140 spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106140
.align 2 .align 2
gUnknown_085939B8:: @ 85939B8 gBattleAnimSpriteTemplate_85939B8:: @ 85939B8
spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81061C4 spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81061C4
.align 2 .align 2
@ -1514,11 +1514,11 @@ gUnknown_08593A00:: @ 8593A00
.4byte gUnknown_085939E8 .4byte gUnknown_085939E8
.align 2 .align 2
gUnknown_08593A04:: @ 8593A04 gHiddenPowerOrbSpriteTemplate:: @ 8593A04
spr_template 0x27e9, 0x27e9, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_810673C spr_template 0x27e9, 0x27e9, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_810673C
.align 2 .align 2
gUnknown_08593A1C:: @ 8593A1C gHiddenPowerOrbScatterSpriteTemplate:: @ 8593A1C
spr_template 0x27e9, 0x27e9, gUnknown_085249CC, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_8106878 spr_template 0x27e9, 0x27e9, gUnknown_085249CC, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_8106878
.align 2 .align 2
@ -1620,7 +1620,7 @@ gUnknown_08593B98:: @ 8593B98
.2byte 0xfff8, 0x000c, 0x0400, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 .2byte 0xfff8, 0x000c, 0x0400, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2 .align 2
gUnknown_08593BB8:: @ 8593BB8 gBattleAnimSpriteTemplate_8593BB8:: @ 8593BB8
spr_template 0x27f1, 0x27f1, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106E00 spr_template 0x27f1, 0x27f1, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106E00
.align 2 .align 2
@ -1703,7 +1703,7 @@ gUnknown_08595064:: @ 8595064
.4byte gUnknown_08595054 .4byte gUnknown_08595054
.align 2 .align 2
gUnknown_08595068:: @ 8595068 gBattleAnimSpriteTemplate_8595068:: @ 8595068
spr_template 0x27a2, 0x27a2, gUnknown_08524A8C, gUnknown_08595064, NULL, gUnknown_08595050, sub_8107260 spr_template 0x27a2, 0x27a2, gUnknown_08524A8C, gUnknown_08595064, NULL, gUnknown_08595050, sub_8107260
.align 2 .align 2
@ -1990,11 +1990,11 @@ gUnknown_085954D0:: @ 85954D0
.4byte gUnknown_085954B8 .4byte gUnknown_085954B8
.align 2 .align 2
gUnknown_085954D4:: @ 85954D4 gEmberSpriteTemplate:: @ 85954D4
spr_template 0x272d, 0x272d, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820 spr_template 0x272d, 0x272d, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820
.align 2 .align 2
gUnknown_085954EC:: @ 85954EC gEmberFlareSpriteTemplate:: @ 85954EC
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8109198 spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8109198
.align 2 .align 2
@ -2031,7 +2031,7 @@ gUnknown_0859556C:: @ 859556C
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08595540, NULL, gDummySpriteAffineAnimTable, sub_8109364 spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08595540, NULL, gDummySpriteAffineAnimTable, sub_8109364
.align 2 .align 2
gUnknown_08595584:: @ 8595584 gBattleAnimSpriteTemplate_8595584:: @ 8595584
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_81093A4 spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_81093A4
.align 2 .align 2
@ -2138,7 +2138,7 @@ gUnknown_08595734:: @ 8595734
spr_template 0x275f, 0x275f, gUnknown_08524914, gUnknown_08595730, NULL, gDummySpriteAffineAnimTable, sub_810A274 spr_template 0x275f, 0x275f, gUnknown_08524914, gUnknown_08595730, NULL, gDummySpriteAffineAnimTable, sub_810A274
.align 2 .align 2
gUnknown_0859574C:: @ 859574C gBattleAnimSpriteTemplate_859574C:: @ 859574C
spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A308 spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A308
.align 2 .align 2
@ -2175,15 +2175,15 @@ gUnknown_085957DC:: @ 85957DC
.4byte gUnknown_085957BC .4byte gUnknown_085957BC
.align 2 .align 2
gUnknown_085957E0:: @ 85957E0 gBattleAnimSpriteTemplate_85957E0:: @ 85957E0
spr_template 0x282a, 0x282a, gUnknown_08524974, gUnknown_085957B8, NULL, gUnknown_085957DC, sub_810A5BC spr_template 0x282a, 0x282a, gUnknown_08524974, gUnknown_085957B8, NULL, gUnknown_085957DC, sub_810A5BC
.align 2 .align 2
gUnknown_085957F8:: @ 85957F8 gBattleAnimSpriteTemplate_85957F8:: @ 85957F8
spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_0859578C, sub_810A628 spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_0859578C, sub_810A628
.align 2 .align 2
gUnknown_08595810:: @ 8595810 gElectricitySpriteTemplate:: @ 8595810
spr_template 0x271b, 0x271b, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A75C spr_template 0x271b, 0x271b, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A75C
.align 2 .align 2
@ -2613,7 +2613,7 @@ gUnknown_08595E80:: @ 8595E80
spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEB4 spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEB4
.align 2 .align 2
gUnknown_08595E98:: @ 8595E98 gFistFootSpriteTemplate:: @ 8595E98
spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEE0 spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEE0
.align 2 .align 2
@ -2651,7 +2651,7 @@ gUnknown_08595F44:: @ 8595F44
.4byte gUnknown_08595F2C .4byte gUnknown_08595F2C
.align 2 .align 2
gUnknown_08595F48:: @ 8595F48 gMegaPunchKickSpriteTemplate:: @ 8595F48
spr_template 0x279f, 0x279f, gUnknown_085249D4, gUnknown_08595E54, NULL, gUnknown_08595F44, sub_810D278 spr_template 0x279f, 0x279f, gUnknown_085249D4, gUnknown_08595E54, NULL, gUnknown_08595F44, sub_810D278
.align 2 .align 2
@ -2841,11 +2841,11 @@ gUnknown_0859623C:: @ 859623C
.4byte gUnknown_08596224 .4byte gUnknown_08596224
.align 2 .align 2
gUnknown_08596240:: @ 8596240 gPoisonBubbleSpriteTemplate:: @ 8596240
spr_template 0x27a6, 0x27a6, gUnknown_0852496C, gUnknown_08596164, NULL, gUnknown_0859623C, sub_810DDC4 spr_template 0x27a6, 0x27a6, gUnknown_0852496C, gUnknown_08596164, NULL, gUnknown_0859623C, sub_810DDC4
.align 2 .align 2
gUnknown_08596258:: @ 8596258 gWaterBubbleSpriteTemplate:: @ 8596258
spr_template 0x27ab, 0x27ab, gUnknown_08524A8C, gUnknown_08595200, NULL, gUnknown_0859623C, sub_810DDC4 spr_template 0x27ab, 0x27ab, gUnknown_08524A8C, gUnknown_08595200, NULL, gUnknown_0859623C, sub_810DDC4
.align 2 .align 2
@ -2862,7 +2862,7 @@ gUnknown_085962A0:: @ 85962A0
.4byte gUnknown_08596288 .4byte gUnknown_08596288
.align 2 .align 2
gUnknown_085962A4:: @ 85962A4 gBattleAnimSpriteTemplate_85962A4:: @ 85962A4
spr_template 0x2719, 0x2719, gUnknown_085249BC, gDummySpriteAnimTable, NULL, gUnknown_085962A0, sub_810DFA8 spr_template 0x2719, 0x2719, gUnknown_085249BC, gDummySpriteAnimTable, NULL, gUnknown_085962A0, sub_810DFA8
.align 2 .align 2
@ -3268,15 +3268,15 @@ gUnknown_08596A2C:: @ 8596A2C
spr_template 0x27c5, 0x27c5, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08596A28, sub_811067C spr_template 0x27c5, 0x27c5, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08596A28, sub_811067C
.align 2 .align 2
gUnknown_08596A44:: @ 8596A44 gLinearStingerSpriteTemplate:: @ 8596A44
spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110720 spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110720
.align 2 .align 2
gUnknown_08596A5C:: @ 8596A5C gPinMissileSpriteTemplate:: @ 8596A5C
spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850 spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850
.align 2 .align 2
gUnknown_08596A74:: @ 8596A74 gIcicleSpearSpriteTemplate:: @ 8596A74
spr_template 0x2816, 0x2816, gUnknown_08524974, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850 spr_template 0x2816, 0x2816, gUnknown_08524974, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850
.align 2 .align 2
@ -3342,7 +3342,7 @@ gUnknown_08596B88:: @ 8596B88
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8110B38 spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8110B38
.align 2 .align 2
gUnknown_08596BA0:: @ 8596BA0 gBattleAnimSpriteTemplate_8596BA0:: @ 8596BA0
spr_template 0x2815, 0x2815, gUnknown_08524934, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110E4C spr_template 0x2815, 0x2815, gUnknown_08524934, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110E4C
.align 2 .align 2
@ -3500,11 +3500,11 @@ gUnknown_08596DD0:: @ 8596DD0
spr_template 0x27d7, 0x27d7, gUnknown_08524A54, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81129F0 spr_template 0x27d7, 0x27d7, gUnknown_08524A54, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81129F0
.align 2 .align 2
gUnknown_08596DE8:: @ 8596DE8 gBattleAnimSpriteTemplate_8596DE8:: @ 8596DE8
spr_template 0x27d8, 0x27d8, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78 spr_template 0x27d8, 0x27d8, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78
.align 2 .align 2
gUnknown_08596E00:: @ 8596E00 gBattleAnimSpriteTemplate_8596E00:: @ 8596E00
spr_template 0x27ed, 0x27ed, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78 spr_template 0x27ed, 0x27ed, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78
.align 2 .align 2
@ -3533,7 +3533,7 @@ gUnknown_08596E78:: @ 8596E78
.4byte gUnknown_08596E60 .4byte gUnknown_08596E60
.align 2 .align 2
gUnknown_08596E7C:: @ 8596E7C gBattleAnimSpriteTemplate_8596E7C:: @ 8596E7C
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08596E78, NULL, gDummySpriteAffineAnimTable, sub_8113064 spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08596E78, NULL, gDummySpriteAffineAnimTable, sub_8113064
.align 2 .align 2
@ -3705,7 +3705,7 @@ gUnknown_08597130:: @ 8597130
.4byte gUnknown_08597118 .4byte gUnknown_08597118
.align 2 .align 2
gUnknown_08597138:: @ 8597138 gBattleAnimSpriteTemplate_8597138:: @ 8597138
spr_template 0x2737, 0x2737, gUnknown_08524914, gUnknown_08597130, NULL, gDummySpriteAffineAnimTable, sub_81144BC spr_template 0x2737, 0x2737, gUnknown_08524914, gUnknown_08597130, NULL, gDummySpriteAffineAnimTable, sub_81144BC
.align 2 .align 2
@ -3774,15 +3774,15 @@ gUnknown_08597254:: @ 8597254
.4byte gUnknown_08597240 .4byte gUnknown_08597240
.align 2 .align 2
gUnknown_0859725C:: @ 859725C gConfusionDuckSpriteTemplate:: @ 859725C
spr_template 0x2759, 0x2759, gUnknown_0852490C, gUnknown_08597254, NULL, gDummySpriteAffineAnimTable, sub_811572C spr_template 0x2759, 0x2759, gUnknown_0852490C, gUnknown_08597254, NULL, gDummySpriteAffineAnimTable, sub_811572C
.align 2 .align 2
gUnknown_08597274:: @ 8597274 gSimplePaletteBlendSpriteTemplate:: @ 8597274
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81157FC spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81157FC
.align 2 .align 2
gUnknown_0859728C:: @ 859728C gComplexPaletteBlendSpriteTemplate:: @ 859728C
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81158A4 spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81158A4
.align 2 .align 2
@ -3799,7 +3799,7 @@ gUnknown_085972C0:: @ 85972C0
spr_template 0x2757, 0x2757, gUnknown_08524914, gUnknown_085972BC, NULL, gDummySpriteAffineAnimTable, sub_81159B4 spr_template 0x2757, 0x2757, gUnknown_08524914, gUnknown_085972BC, NULL, gDummySpriteAffineAnimTable, sub_81159B4
.align 2 .align 2
gUnknown_085972D8:: @ 85972D8 gBattleAnimSpriteTemplate_85972D8:: @ 85972D8
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81160A4 spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81160A4
.align 2 .align 2
@ -3829,11 +3829,11 @@ gUnknown_08597348:: @ 8597348
.4byte gUnknown_08597330 .4byte gUnknown_08597330
.align 2 .align 2
gUnknown_08597358:: @ 8597358 gBasicHitSplatSpriteTemplate:: @ 8597358
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116388 spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116388
.align 2 .align 2
gUnknown_08597370:: @ 8597370 gBattleAnimSpriteTemplate_8597370:: @ 8597370
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116420 spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116420
.align 2 .align 2
@ -3845,7 +3845,7 @@ gUnknown_085973A0:: @ 85973A0
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116458 spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116458
.align 2 .align 2
gUnknown_085973B8:: @ 85973B8 gBattleAnimSpriteTemplate_85973B8:: @ 85973B8
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_81164F0 spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_81164F0
.align 2 .align 2

View File

@ -330,7 +330,7 @@ gUnknown_085CE5A8::
spr_template 0x2800, 0x2800, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CB88 spr_template 0x2800, 0x2800, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CB88
gUnknown_085CE5C0:: gUnknown_085CE5C0::
spr_template 0x27f3, 0x27f3, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815CC94 spr_template 0x27f3, 0x27f3, gUnknown_085249DC, gDummySpriteAnimTable, NULL, gUnknown_085CE224, sub_815CC94
gUnknown_085CE5D8:: gBattleAnimSpriteTemplate_85CE5D8::
spr_template 0x27fc, 0x27fc, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CDB4 spr_template 0x27fc, 0x27fc, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CDB4
.align 2 .align 2

View File

@ -140,7 +140,7 @@ gUnknown_085E5310:: @ 85E5310
.2byte 0x0100, 0x0503, 0x0506, 0x0004 .2byte 0x0100, 0x0503, 0x0506, 0x0004
.align 2 .align 2
gUnknown_085E5338:: @ 85E5338 gBattleAnimSpriteTemplate_85E5338:: @ 85E5338
spr_template 0x281d, 0x281d, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_817330C spr_template 0x281d, 0x281d, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_817330C
.align 2 .align 2

File diff suppressed because it is too large Load Diff

View File

@ -6,6 +6,7 @@
#include "constants/abilities.h" #include "constants/abilities.h"
#include "constants/moves.h" #include "constants/moves.h"
#include "constants/songs.h" #include "constants/songs.h"
#include "constants/game_stat.h"
.include "asm/macros.inc" .include "asm/macros.inc"
.include "asm/macros/battle_script.inc" .include "asm/macros/battle_script.inc"
.include "constants/constants.inc" .include "constants/constants.inc"
@ -922,7 +923,7 @@ BattleScript_EffectFocusEnergy::
BattleScript_EffectRecoil:: BattleScript_EffectRecoil::
setmoveeffect MOVE_EFFECT_RECOIL_25 | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN setmoveeffect MOVE_EFFECT_RECOIL_25 | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN
jumpifnotmove MOVE_STRUGGLE, BattleScript_EffectHit jumpifnotmove MOVE_STRUGGLE, BattleScript_EffectHit
incrementgamestat 0x1B incrementgamestat GAME_STAT_USED_STRUGGLE
goto BattleScript_EffectHit goto BattleScript_EffectHit
BattleScript_EffectConfuse:: BattleScript_EffectConfuse::
@ -1200,7 +1201,7 @@ BattleScript_EffectSplash::
ppreduce ppreduce
attackanimation attackanimation
waitanimation waitanimation
incrementgamestat 0x1A incrementgamestat GAME_STAT_USED_SPLASH
printstring STRINGID_BUTNOTHINGHAPPENED printstring STRINGID_BUTNOTHINGHAPPENED
waitmessage 0x40 waitmessage 0x40
goto BattleScript_MoveEnd goto BattleScript_MoveEnd
@ -3741,7 +3742,7 @@ BattleScript_SAtkDown2End::
BattleScript_FocusPunchSetUp:: BattleScript_FocusPunchSetUp::
printstring STRINGID_EMPTYSTRING3 printstring STRINGID_EMPTYSTRING3
waitmessage 0x1 waitmessage 0x1
playanimation BS_ATTACKER, B_ANIM_x14, NULL playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP, NULL
printstring STRINGID_PKMNTIGHTENINGFOCUS printstring STRINGID_PKMNTIGHTENINGFOCUS
waitmessage 0x40 waitmessage 0x40
end2 end2

View File

@ -190,7 +190,7 @@ BattleScript_ActionGetNear:
BattleScript_ActionThrowPokeblock: BattleScript_ActionThrowPokeblock:
printstring STRINGID_THREWPOKEBLOCKATPKMN printstring STRINGID_THREWPOKEBLOCKATPKMN
waitmessage 0x40 waitmessage 0x40
playanimation BS_ATTACKER, B_ANIM_x4, NULL playanimation BS_ATTACKER, B_ANIM_POKEBLOCK_THROW, NULL
printfromtable gSafariPokeblockResultStringIds printfromtable gSafariPokeblockResultStringIds
waitmessage 0x40 waitmessage 0x40
end2 end2

View File

@ -38,17 +38,6 @@
#define MAX_TRAINER_ITEMS 4 #define MAX_TRAINER_ITEMS 4
#define MAX_MON_MOVES 4 #define MAX_MON_MOVES 4
#define BATTLE_TERRAIN_GRASS 0
#define BATTLE_TERRAIN_LONG_GRASS 1
#define BATTLE_TERRAIN_SAND 2
#define BATTLE_TERRAIN_UNDERWATER 3
#define BATTLE_TERRAIN_WATER 4
#define BATTLE_TERRAIN_POND 5
#define BATTLE_TERRAIN_MOUNTAIN 6
#define BATTLE_TERRAIN_CAVE 7
#define BATTLE_TERRAIN_BUILDING 8
#define BATTLE_TERRAIN_PLAIN 9
// array entries for battle communication // array entries for battle communication
#define MULTIUSE_STATE 0x0 #define MULTIUSE_STATE 0x0
#define CURSOR_POSITION 0x1 #define CURSOR_POSITION 0x1
@ -609,7 +598,7 @@ struct BattleScripting
// rom_80A5C6C // rom_80A5C6C
u8 GetBattlerSide(u8 battler); u8 GetBattlerSide(u8 battler);
u8 GetBattlerPosition(u8 battler); u8 GetBattlerPosition(u8 battler);
u8 GetBattlerAtPosition(u8 battler); u8 GetBattlerAtPosition(u8 position);
struct BattleSpriteInfo struct BattleSpriteInfo
{ {

View File

@ -281,4 +281,16 @@
#define MOVE_EFFECT_AFFECTS_USER 0x40 #define MOVE_EFFECT_AFFECTS_USER 0x40
#define MOVE_EFFECT_CERTAIN 0x80 #define MOVE_EFFECT_CERTAIN 0x80
// Battle terrain defines for gBattleTerrain.
#define BATTLE_TERRAIN_GRASS 0
#define BATTLE_TERRAIN_LONG_GRASS 1
#define BATTLE_TERRAIN_SAND 2
#define BATTLE_TERRAIN_UNDERWATER 3
#define BATTLE_TERRAIN_WATER 4
#define BATTLE_TERRAIN_POND 5
#define BATTLE_TERRAIN_MOUNTAIN 6
#define BATTLE_TERRAIN_CAVE 7
#define BATTLE_TERRAIN_BUILDING 8
#define BATTLE_TERRAIN_PLAIN 9
#endif // GUARD_CONSTANTS_BATTLE_H #endif // GUARD_CONSTANTS_BATTLE_H

View File

@ -1,6 +1,312 @@
#ifndef GUARD_CONSTANTS_BATTLE_ANIM_H #ifndef GUARD_CONSTANTS_BATTLE_ANIM_H
#define GUARD_CONSTANTS_BATTLE_ANIM_H #define GUARD_CONSTANTS_BATTLE_ANIM_H
// Sprites start at 10000 and thus must be subtracted of 10000 to account for the true index.
#define GET_TRUE_SPRITE_INDEX(i) ((i - ANIM_SPRITES_START))
// 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)
// battlers // battlers
#define ANIM_ATTACKER 0 #define ANIM_ATTACKER 0
#define ANIM_TARGET 1 #define ANIM_TARGET 1
@ -41,7 +347,7 @@
#define B_ANIM_STATS_CHANGE 0x1 #define B_ANIM_STATS_CHANGE 0x1
#define B_ANIM_SUBSTITUTE_FADE 0x2 #define B_ANIM_SUBSTITUTE_FADE 0x2
#define B_ANIM_SUBSTITUTE_APPEAR 0x3 #define B_ANIM_SUBSTITUTE_APPEAR 0x3
#define B_ANIM_x4 0x4 #define B_ANIM_POKEBLOCK_THROW 0x4
#define B_ANIM_ITEM_KNOCKOFF 0x5 #define B_ANIM_ITEM_KNOCKOFF 0x5
#define B_ANIM_TURN_TRAP 0x6 #define B_ANIM_TURN_TRAP 0x6
#define B_ANIM_ITEM_EFFECT 0x7 #define B_ANIM_ITEM_EFFECT 0x7
@ -57,7 +363,7 @@
#define B_ANIM_SNATCH_MOVE 0x11 #define B_ANIM_SNATCH_MOVE 0x11
#define B_ANIM_FUTURE_SIGHT_HIT 0x12 #define B_ANIM_FUTURE_SIGHT_HIT 0x12
#define B_ANIM_DOOM_DESIRE_HIT 0x13 #define B_ANIM_DOOM_DESIRE_HIT 0x13
#define B_ANIM_x14 0x14 #define B_ANIM_FOCUS_PUNCH_SETUP 0x14
#define B_ANIM_INGRAIN_HEAL 0x15 #define B_ANIM_INGRAIN_HEAL 0x15
#define B_ANIM_WISH_HEAL 0x16 #define B_ANIM_WISH_HEAL 0x16
@ -82,4 +388,22 @@
#define B_ANIM_STATUS_NIGHTMARE 0x8 #define B_ANIM_STATUS_NIGHTMARE 0x8
#define B_ANIM_STATUS_WRAPPED 0x9 // does not actually exist #define B_ANIM_STATUS_WRAPPED 0x9 // does not actually exist
// Most tasks return a value to gBattleAnimArgs[7].
#define ARG_RET_ID 0x7
// Trapping Wrap-like moves end turn animation.
#define TRAP_ANIM_BIND 0
#define TRAP_ANIM_WRAP 0
#define TRAP_ANIM_FIRE_SPIN 1
#define TRAP_ANIM_WHIRLPOOL 2
#define TRAP_ANIM_CLAMP 3
#define TRAP_ANIM_SAND_TOMB 4
// Weather defines for battle animation scripts.
#define ANIM_WEATHER_NONE 0
#define ANIM_WEATHER_SUN 1
#define ANIM_WEATHER_RAIN 2
#define ANIM_WEATHER_SANDSTORM 3
#define ANIM_WEATHER_HAIL 4
#endif // GUARD_CONSTANTS_BATTLE_ANIM_H #endif // GUARD_CONSTANTS_BATTLE_ANIM_H

View File

@ -16,9 +16,6 @@
#include "palette.h" #include "palette.h"
#include "main.h" #include "main.h"
// sprites start at 10000 and thus must be subtracted of 10000 to account for the true index.
#define GET_TRUE_SPRITE_INDEX(i) ((i - 10000))
#define ANIM_SPRITE_INDEX_COUNT 8 #define ANIM_SPRITE_INDEX_COUNT 8
extern u16 gBattle_WIN0H; extern u16 gBattle_WIN0H;
@ -33,8 +30,8 @@ extern struct MusicPlayerInfo gMPlayInfo_BGM;
extern struct MusicPlayerInfo gMPlayInfo_SE1; extern struct MusicPlayerInfo gMPlayInfo_SE1;
extern struct MusicPlayerInfo gMPlayInfo_SE2; extern struct MusicPlayerInfo gMPlayInfo_SE2;
extern const u16 gUnknown_082C8D64[]; extern const u16 gMovesWithQuietBGM[];
extern const u8 * const gBattleAnims_Moves[]; extern const u8 *const gBattleAnims_Moves[];
extern const struct CompressedSpriteSheet gBattleAnimPicTable[]; extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[]; extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
extern const struct BattleAnimBackground gBattleAnimBackgroundTable[]; extern const struct BattleAnimBackground gBattleAnimBackgroundTable[];
@ -260,9 +257,9 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
if (isMoveAnim) if (isMoveAnim)
{ {
for (i = 0; gUnknown_082C8D64[i] != 0xFFFF; i++) for (i = 0; gMovesWithQuietBGM[i] != 0xFFFF; i++)
{ {
if (tableId == gUnknown_082C8D64[i]) if (tableId == gMovesWithQuietBGM[i])
{ {
m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128); m4aMPlayVolumeControl(&gMPlayInfo_BGM, 0xFFFF, 128);
break; break;

View File

@ -29,7 +29,7 @@ extern struct MusicPlayerInfo gMPlayInfo_SE2;
extern struct MusicPlayerInfo gMPlayInfo_BGM; extern struct MusicPlayerInfo gMPlayInfo_BGM;
extern const u8 gUnknown_0831C604[]; extern const u8 gUnknown_0831C604[];
extern const u8 * const gBattleAnims_VariousTable[]; extern const u8 * const gBattleAnims_General[];
extern const u8 * const gBattleAnims_Special[]; extern const u8 * const gBattleAnims_Special[];
extern const struct CompressedSpriteSheet gMonFrontPicTable[]; extern const struct CompressedSpriteSheet gMonFrontPicTable[];
extern const struct CompressedSpriteSheet gMonBackPicTable[]; extern const struct CompressedSpriteSheet gMonBackPicTable[];
@ -437,7 +437,7 @@ bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattler, u8 atkBattler, u8 de
gBattleAnimAttacker = atkBattler; gBattleAnimAttacker = atkBattler;
gBattleAnimTarget = defBattler; gBattleAnimTarget = defBattler;
gBattleSpritesDataPtr->animationData->animArg = argument; gBattleSpritesDataPtr->animationData->animArg = argument;
LaunchBattleAnimation(gBattleAnims_VariousTable, tableId, FALSE); LaunchBattleAnimation(gBattleAnims_General, tableId, FALSE);
taskId = CreateTask(Task_ClearBitWhenBattleTableAnimDone, 10); taskId = CreateTask(Task_ClearBitWhenBattleTableAnimDone, 10);
gTasks[taskId].tBattlerId = activeBattler; gTasks[taskId].tBattlerId = activeBattler;
gBattleSpritesDataPtr->healthBoxesData[gTasks[taskId].tBattlerId].animFromTableActive = 1; gBattleSpritesDataPtr->healthBoxesData[gTasks[taskId].tBattlerId].animFromTableActive = 1;

View File

@ -25,6 +25,7 @@
#include "blend_palette.h" #include "blend_palette.h"
#include "title_screen.h" #include "title_screen.h"
#include "constants/rgb.h" #include "constants/rgb.h"
#include "constants/battle_anim.h"
extern const struct CompressedSpriteSheet gBattleAnimPicTable[]; extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[]; extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
@ -118,7 +119,7 @@ static const struct SpriteTemplate gUnknown_085E4AB8 =
}; };
static const u8 gUnknown_085E4AD0[][2] = static const u8 gUnknown_085E4AD0[][2] =
{ {
{0x7C, 0x28}, {0x7C, 0x28},
{0x66, 0x1E}, {0x66, 0x1E},
{0x4D, 0x1E}, {0x4D, 0x1E},
{0x36, 0x0F}, {0x36, 0x0F},
@ -664,25 +665,25 @@ static const s16 gUnknown_085E4E94[][2] =
{5, 20}, {5, 20},
{3, 28}, {3, 28},
}; };
static const union AffineAnimCmd gUnknown_085E4ED8[] = static const union AffineAnimCmd gUnknown_085E4ED8[] =
{ {
AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_FRAME(128, 128, 0, 0),
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
static const union AffineAnimCmd gUnknown_085E4EE8[] = static const union AffineAnimCmd gUnknown_085E4EE8[] =
{ {
AFFINEANIMCMD_FRAME(128, 128, 0, 0), AFFINEANIMCMD_FRAME(128, 128, 0, 0),
AFFINEANIMCMD_FRAME(16, 16, 0, 16), AFFINEANIMCMD_FRAME(16, 16, 0, 16),
AFFINEANIMCMD_FRAME(-16, -16, 0, 8), AFFINEANIMCMD_FRAME(-16, -16, 0, 8),
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
static const union AffineAnimCmd gUnknown_085E4F08[] = static const union AffineAnimCmd gUnknown_085E4F08[] =
{ {
AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(256, 256, 0, 0),
AFFINEANIMCMD_FRAME(8, 8, 0, 48), AFFINEANIMCMD_FRAME(8, 8, 0, 48),
AFFINEANIMCMD_END, AFFINEANIMCMD_END,
}; };
static const union AffineAnimCmd gUnknown_085E4F20[] = static const union AffineAnimCmd gUnknown_085E4F20[] =
{ {
AFFINEANIMCMD_FRAME(256, 256, 0, 0), AFFINEANIMCMD_FRAME(256, 256, 0, 0),
AFFINEANIMCMD_FRAME(2, 2, 0, 48), AFFINEANIMCMD_FRAME(2, 2, 0, 48),
@ -695,7 +696,7 @@ static const union AffineAnimCmd *const gUnknown_085E4F38[] =
gUnknown_085E4F08, gUnknown_085E4F08,
gUnknown_085E4F20, gUnknown_085E4F20,
}; };
static const u16 gUnknown_085E4F48[] = static const u16 gUnknown_085E4F48[] =
{ {
0x100, 0xC0, 0x80, 0x40, 0x00, 0x40, 0x80, 0xC0, 0x100 0x100, 0xC0, 0x80, 0x40, 0x00, 0x40, 0x80, 0xC0, 0x100
}; };
@ -1086,10 +1087,10 @@ static void Task_IntroWaterDrops(u8 taskId)
if (gIntroFrameCounter == 256) if (gIntroFrameCounter == 256)
CreateTask(Task_IntroWaterDrops_2, 0); CreateTask(Task_IntroWaterDrops_2, 0);
if (gIntroFrameCounter == 368) if (gIntroFrameCounter == 368)
CreateWaterDrop(48, 0, 0x400, 5, 0x70, TRUE); CreateWaterDrop(48, 0, 0x400, 5, 0x70, TRUE);
if (gIntroFrameCounter == 384) if (gIntroFrameCounter == 384)
CreateWaterDrop(200, 60, 0x400, 9, 0x80, TRUE); CreateWaterDrop(200, 60, 0x400, 9, 0x80, TRUE);
@ -1113,7 +1114,7 @@ static void Task_IntroWaterDrops_3(u8 taskId)
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
if (++data[2] & 1) if (++data[2] & 1)
data[3]++; data[3]++;
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
@ -1127,7 +1128,7 @@ static void Task_IntroWaterDrops_3(u8 taskId)
data[0] = 0; data[0] = 0;
break; break;
} }
if (data[3] > 0x3C) if (data[3] > 0x3C)
DestroyTask(taskId); DestroyTask(taskId);
} }
@ -1206,25 +1207,25 @@ static void Task_IntroStartBikeRide(u8 taskId)
LoadCompressedObjectPic(gIntro2BrendanSpriteSheet); LoadCompressedObjectPic(gIntro2BrendanSpriteSheet);
else else
LoadCompressedObjectPic(gIntro2MaySpriteSheet); LoadCompressedObjectPic(gIntro2MaySpriteSheet);
LoadCompressedObjectPic(gIntro2BicycleSpriteSheet); LoadCompressedObjectPic(gIntro2BicycleSpriteSheet);
LoadCompressedObjectPic(gIntro2FlygonSpriteSheet); LoadCompressedObjectPic(gIntro2FlygonSpriteSheet);
for (spriteId = 0; spriteId < 3; spriteId++) for (spriteId = 0; spriteId < 3; spriteId++)
{ {
LoadCompressedObjectPic(&gUnknown_085E4AE8[spriteId]); LoadCompressedObjectPic(&gUnknown_085E4AE8[spriteId]);
} }
LoadSpritePalettes(gUnknown_085F530C); LoadSpritePalettes(gUnknown_085F530C);
LoadSpritePalettes(gUnknown_085E4B08); LoadSpritePalettes(gUnknown_085E4B08);
CreateSprite(&gUnknown_085E4BDC, 0x110, 0x80, 0); CreateSprite(&gUnknown_085E4BDC, 0x110, 0x80, 0);
CreateSprite(&gUnknown_085E4BA4, 0x120, 0x6E, 1); CreateSprite(&gUnknown_085E4BA4, 0x120, 0x6E, 1);
if (gUnknown_0203BCC8 == 0) if (gUnknown_0203BCC8 == 0)
spriteId = intro_create_brendan_sprite(0x110, 100); spriteId = intro_create_brendan_sprite(0x110, 100);
else else
spriteId = intro_create_may_sprite(0x110, 100); spriteId = intro_create_may_sprite(0x110, 100);
gSprites[spriteId].callback = sub_816F9D4; gSprites[spriteId].callback = sub_816F9D4;
gSprites[spriteId].anims = gUnknown_085E4DC4; gSprites[spriteId].anims = gUnknown_085E4DC4;
gTasks[taskId].data[1] = spriteId; gTasks[taskId].data[1] = spriteId;
@ -1243,7 +1244,7 @@ static void Task_IntroHandleBikeAndFlygonMovement(u8 taskId)
{ {
s16 a; s16 a;
u16 sine; u16 sine;
if (gIntroFrameCounter == 1856) if (gIntroFrameCounter == 1856)
{ {
gUnknown_0203BD28 = 2; gUnknown_0203BD28 = 2;
@ -1427,7 +1428,7 @@ static void sub_816D9C0(struct Sprite *sprite)
case 4: case 4:
if (sprite->animEnded) if (sprite->animEnded)
sprite->pos1.x += 4; sprite->pos1.x += 4;
if (sprite->pos1.x > 336) if (sprite->pos1.x > 336)
{ {
StartSpriteAnim(sprite, 1); StartSpriteAnim(sprite, 1);
@ -1506,7 +1507,7 @@ static void Task_IntroLoadPart3Graphics(u8 taskId)
static void Task_IntroSpinAndZoomPokeball(u8 taskId) static void Task_IntroSpinAndZoomPokeball(u8 taskId)
{ {
gTasks[taskId].data[0] += 0x400; gTasks[taskId].data[0] += 0x400;
if (gTasks[taskId].data[1] <= 0x6BF) if (gTasks[taskId].data[1] <= 0x6BF)
{ {
gTasks[taskId].data[1] += gTasks[taskId].data[2]; gTasks[taskId].data[1] += gTasks[taskId].data[2];
@ -1516,9 +1517,9 @@ static void Task_IntroSpinAndZoomPokeball(u8 taskId)
{ {
gTasks[taskId].func = Task_IntroWaitToSetupPart3LegendsFight; gTasks[taskId].func = Task_IntroWaitToSetupPart3LegendsFight;
} }
sub_816F2A8(0x78, 0x50, 0x10000 / gTasks[taskId].data[1], gTasks[taskId].data[0]); sub_816F2A8(0x78, 0x50, 0x10000 / gTasks[taskId].data[1], gTasks[taskId].data[0]);
if (gIntroFrameCounter == 28) if (gIntroFrameCounter == 28)
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_WHITEALPHA); BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_WHITEALPHA);
} }
@ -1531,8 +1532,6 @@ static void Task_IntroWaitToSetupPart3LegendsFight(u8 taskId)
static void Task_IntroLoadPart1Graphics3(u8 taskId) static void Task_IntroLoadPart1Graphics3(u8 taskId)
{ {
u16 i;
if (!gPaletteFade.active) if (!gPaletteFade.active)
{ {
intro_reset_and_hide_bgs(); intro_reset_and_hide_bgs();
@ -1543,8 +1542,8 @@ static void Task_IntroLoadPart1Graphics3(u8 taskId)
LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000)); LZDecompressVram(gIntro3GroudonTilemap, (void *)(VRAM + 0xC000));
LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000)); LZDecompressVram(gIntro3LegendBgGfx, (void *)(VRAM + 0x4000));
LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000)); LZDecompressVram(gIntro3GroudonBgTilemap, (void *)(VRAM + 0xE000));
LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[0x3A]); LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[0x3A]); LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal)); CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4; gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
} }
@ -1584,12 +1583,10 @@ static void Task_IntroLoadPart1Graphics4(u8 taskId)
static void Task_IntroLoadPart1Graphics5(u8 taskId) static void Task_IntroLoadPart1Graphics5(u8 taskId)
{ {
u16 foo = gTasks[taskId].data[0];
if (gTasks[taskId].data[0] != 32) if (gTasks[taskId].data[0] != 32)
{ {
gTasks[taskId].data[0] += 4; gTasks[taskId].data[0] += 4;
SetGpuReg(REG_OFFSET_WIN0V, (gTasks[taskId].data[0] * 256) - (foo -= 0x9C)); SetGpuReg(REG_OFFSET_WIN0V, (gTasks[taskId].data[0] * 256) - (gTasks[taskId].data[0] - 160));
} }
else else
{ {
@ -1613,7 +1610,7 @@ static void Task_IntroLoadPart1Graphics7(u8 taskId)
static void Task_IntroLoadPart1Graphics8(u8 taskId) static void Task_IntroLoadPart1Graphics8(u8 taskId)
{ {
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
data[5]++; data[5]++;
if ((u16)(data[0] - 1) < 7 && data[5] % 2 == 0) if ((u16)(data[0] - 1) < 7 && data[5] % 2 == 0)
data[4] ^= 3; data[4] ^= 3;
@ -1720,7 +1717,7 @@ static void sub_816E190(u8 a0)
{ {
int i; int i;
u8 spriteId; u8 spriteId;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
{ {
spriteId = CreateSprite(gUnknown_08596C10, gUnknown_085E4C64[i][0], 0xA0, i); spriteId = CreateSprite(gUnknown_08596C10, gUnknown_085E4C64[i][0], 0xA0, i);
@ -1737,7 +1734,7 @@ static void sub_816E1F8(struct Sprite *sprite)
sprite->data[3]++; sprite->data[3]++;
if (sprite->data[3] % 2 == 0) if (sprite->data[3] % 2 == 0)
sprite->pos2.y ^= 3; sprite->pos2.y ^= 3;
switch(sprite->data[0]) switch(sprite->data[0])
{ {
case 0: case 0:
@ -1752,7 +1749,7 @@ static void sub_816E1F8(struct Sprite *sprite)
sprite->pos1.x -= 2; sprite->pos1.x -= 2;
else else
sprite->pos1.x += 2; sprite->pos1.x += 2;
if (sprite->pos1.y < 0x50) if (sprite->pos1.y < 0x50)
sprite->pos1.y -= 2; sprite->pos1.y -= 2;
else else
@ -1783,9 +1780,9 @@ static void Task_IntroLoadPart1Graphics9(u8 taskId)
static void Task_IntroFadeIn0(u8 taskId) static void Task_IntroFadeIn0(u8 taskId)
{ {
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
sub_816F2A8(data[1], data[2], data[3], 0); sub_816F2A8(data[1], data[2], data[3], 0);
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
@ -1928,7 +1925,7 @@ static void sub_816E6D4(u8 a0)
{ {
int i; int i;
u8 spriteId; u8 spriteId;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
{ {
spriteId = CreateSprite(&gUnknown_085E4D14, gUnknown_085E4CA8[i][0], gUnknown_085E4CA8[i][1], i); spriteId = CreateSprite(&gUnknown_085E4D14, gUnknown_085E4CA8[i][0], gUnknown_085E4CA8[i][1], i);
@ -1943,7 +1940,7 @@ static void sub_816E74C(void)
{ {
int i; int i;
u8 spriteId; u8 spriteId;
for (i = 0; i < 6; i++) for (i = 0; i < 6; i++)
{ {
spriteId = CreateSprite(&gUnknown_085E4D14, gUnknown_085E4CA8[i + 6][0], gUnknown_085E4CA8[i + 6][1], i); spriteId = CreateSprite(&gUnknown_085E4D14, gUnknown_085E4CA8[i + 6][0], gUnknown_085E4CA8[i + 6][1], i);
@ -1980,7 +1977,7 @@ static void sub_816E7B4(struct Sprite *sprite)
sprite->pos1.x -= 3; sprite->pos1.x -= 3;
else else
sprite->pos1.x += 3; sprite->pos1.x += 3;
if (sprite->pos1.y < 80) if (sprite->pos1.y < 80)
sprite->pos1.y -= 3; sprite->pos1.y -= 3;
else else
@ -2053,10 +2050,10 @@ static void Task_IntroFadeIn3(u8 taskId)
static void Task_IntroFadeIn4(u8 taskId) static void Task_IntroFadeIn4(u8 taskId)
{ {
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
SetGpuReg(REG_OFFSET_BG0HOFS, (data[6] >> 8)); SetGpuReg(REG_OFFSET_BG0HOFS, (data[6] >> 8));
SetGpuReg(REG_OFFSET_BG1HOFS, -(data[6] >> 8)); SetGpuReg(REG_OFFSET_BG1HOFS, -(data[6] >> 8));
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
@ -2070,7 +2067,7 @@ static void Task_IntroFadeIn4(u8 taskId)
case 1: case 1:
if (data[6] == 0x2800) if (data[6] == 0x2800)
BeginNormalPaletteFade(0x0000FFFE, 3, 0, 16, RGB(9, 10, 10)); BeginNormalPaletteFade(0x0000FFFE, 3, 0, 16, RGB(9, 10, 10));
if (data[6] != 0) if (data[6] != 0)
data[6] -= 0x80; data[6] -= 0x80;
else if (!gPaletteFade.active) else if (!gPaletteFade.active)
@ -2103,7 +2100,7 @@ static void Task_IntroFadeIn6(u8 taskId)
{ {
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
u8 spriteId; u8 spriteId;
switch (data[0]) switch (data[0])
{ {
case 0: case 0:
@ -2141,7 +2138,7 @@ static void sub_816EC6C(struct Sprite *sprite)
{ {
if (sprite->animEnded) if (sprite->animEnded)
sprite->invisible = TRUE; sprite->invisible = TRUE;
switch(sprite->data[0]) switch(sprite->data[0])
{ {
case 0: case 0:
@ -2171,7 +2168,7 @@ static void sub_816EC6C(struct Sprite *sprite)
static void Task_IntroFadeIn7(u8 taskId) static void Task_IntroFadeIn7(u8 taskId)
{ {
u8 newTaskId; u8 newTaskId;
LoadCompressedObjectPic(gUnknown_085E5048); LoadCompressedObjectPic(gUnknown_085E5048);
LoadSpritePalettes(gUnknown_085E5058); LoadSpritePalettes(gUnknown_085E5058);
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0 SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0
@ -2194,12 +2191,12 @@ static void Task_IntroFadeIn7(u8 taskId)
static void Task_IntroFadeIn8(u8 taskId) static void Task_IntroFadeIn8(u8 taskId)
{ {
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
if (data[7] % 2 == 0) if (data[7] % 2 == 0)
data[6] ^= 2; data[6] ^= 2;
data[7]++; data[7]++;
switch(data[0]) switch(data[0])
{ {
case 0: case 0:
@ -2248,9 +2245,9 @@ static void sub_816EEA8(u8 taskId)
{ {
u8 spriteId; u8 spriteId;
s16 *data = gTasks[taskId].data; s16 *data = gTasks[taskId].data;
data[2]++; data[2]++;
switch(data[0]) switch(data[0])
{ {
case 0: case 0:
@ -2377,7 +2374,7 @@ static void Task_IntroWaterDrops_1(u8 taskId)
if (gTasks[taskId].data[1] != 0) if (gTasks[taskId].data[1] != 0)
{ {
u8 tmp; u8 tmp;
gTasks[taskId].data[1]--; gTasks[taskId].data[1]--;
tmp = gTasks[taskId].data[1] / 2; tmp = gTasks[taskId].data[1] / 2;
SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]); SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]);
@ -2420,7 +2417,7 @@ static void Task_IntroWaterDrops_2(u8 taskId)
if (gTasks[taskId].data[1] < 62) if (gTasks[taskId].data[1] < 62)
{ {
u8 tmp; u8 tmp;
gTasks[taskId].data[1]++; gTasks[taskId].data[1]++;
tmp = gTasks[taskId].data[1] / 2; tmp = gTasks[taskId].data[1] / 2;
SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]); SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]);
@ -2903,7 +2900,7 @@ static u8 sub_816FDB8(s16 a0, s16 a1, s16 a2)
{ {
u16 i; u16 i;
u8 spriteId; u8 spriteId;
for (i = 0; i < 9; i++) for (i = 0; i < 9; i++)
{ {
spriteId = CreateSprite(&gUnknown_085E4F5C, gUnknown_085E4E94[i][1] + a0, a1 - 4, 0); spriteId = CreateSprite(&gUnknown_085E4F5C, gUnknown_085E4E94[i][1] + a0, a1 - 4, 0);
@ -2926,7 +2923,7 @@ static u8 sub_816FDB8(s16 a0, s16 a1, s16 a2)
static void sub_816FEDC(struct Sprite *sprite) static void sub_816FEDC(struct Sprite *sprite)
{ {
sprite->data[7]++; sprite->data[7]++;
if (sprite->data[0] != 0) if (sprite->data[0] != 0)
{ {
s16 sin1; s16 sin1;
@ -2944,7 +2941,7 @@ static void sub_816FEDC(struct Sprite *sprite)
SetOamMatrix(1, a, b, c, d); SetOamMatrix(1, a, b, c, d);
} }
switch (sprite->data[0]) switch (sprite->data[0])
{ {
case 0: case 0:

View File

@ -414,7 +414,7 @@ static const struct SpriteTemplate gUnknown_0857FE10 =
.callback = SpriteCallbackDummy, .callback = SpriteCallbackDummy,
}; };
const struct SpriteTemplate gUnknown_0857FE28 = const struct SpriteTemplate gHorizontalLungeSpriteTemplate =
{ {
.tileTag = 0, .tileTag = 0,
.paletteTag = 0, .paletteTag = 0,
@ -425,7 +425,7 @@ const struct SpriteTemplate gUnknown_0857FE28 =
.callback = sub_80D5860, .callback = sub_80D5860,
}; };
const struct SpriteTemplate gUnknown_0857FE40 = const struct SpriteTemplate gVerticalDipSpriteTemplate =
{ {
.tileTag = 0, .tileTag = 0,
.paletteTag = 0, .paletteTag = 0,
@ -436,7 +436,7 @@ const struct SpriteTemplate gUnknown_0857FE40 =
.callback = sub_80D58F8, .callback = sub_80D58F8,
}; };
const struct SpriteTemplate gUnknown_0857FE58 = const struct SpriteTemplate gSlideMonToOriginalPosSpriteTemplate =
{ {
.tileTag = 0, .tileTag = 0,
.paletteTag = 0, .paletteTag = 0,
@ -447,7 +447,7 @@ const struct SpriteTemplate gUnknown_0857FE58 =
.callback = sub_80D5968, .callback = sub_80D5968,
}; };
const struct SpriteTemplate gUnknown_0857FE70 = const struct SpriteTemplate gSlideMonToOffsetSpriteTemplate =
{ {
.tileTag = 0, .tileTag = 0,
.paletteTag = 0, .paletteTag = 0,