summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiegoisawesome <diego@domoreaweso.me>2018-10-13 12:44:23 -0500
committerDiegoisawesome <diego@domoreaweso.me>2018-10-13 12:44:23 -0500
commita26380663c5acc636fb8c163c014187129afae8f (patch)
tree79eb899d0c0e3281a11f1d447879090dc208ef80
parent35c69388140243c391b925fd8b9012d2d1703810 (diff)
parenta2a6700966cc802185577e44ba88a9154429c93b (diff)
Merge branch 'master' of github.com:pret/pokeemerald
-rw-r--r--asm/battle_anim_80A5C6C.s6526
-rw-r--r--asm/battle_anim_80A9C70.s930
-rw-r--r--asm/battle_anim_80D51AC.s2446
-rw-r--r--asm/battle_anim_80FE840.s336
-rw-r--r--asm/battle_anim_815A0D4.s48
-rw-r--r--asm/battle_anim_8170478.s18
-rw-r--r--asm/macros/battle_anim_script.inc19
-rw-r--r--data/battle_anim_80A9C70.s17
-rw-r--r--data/battle_anim_80FE840.s106
-rw-r--r--data/battle_anim_815A0D4.s2
-rw-r--r--data/battle_anim_8170478.s2
-rw-r--r--data/battle_anim_scripts.s13494
-rw-r--r--data/battle_scripts_1.s7
-rw-r--r--data/battle_scripts_2.s2
-rw-r--r--data/rom_8525F58.s34
-rw-r--r--include/battle.h13
-rw-r--r--include/battle_anim.h44
-rw-r--r--include/constants/battle.h12
-rw-r--r--include/constants/battle_anim.h328
-rw-r--r--include/contest.h16
-rw-r--r--include/global.h11
-rw-r--r--ld_script.txt119
-rw-r--r--songs.mk165
-rw-r--r--sound/song_table.inc34
-rw-r--r--sound/songs/midi/se_a.midbin0 -> 75 bytes
-rw-r--r--sound/songs/midi/se_ban.midbin0 -> 148 bytes
-rw-r--r--sound/songs/midi/se_basabasa.midbin0 -> 266 bytes
-rw-r--r--sound/songs/midi/se_bidoro.midbin0 -> 135 bytes
-rw-r--r--sound/songs/midi/se_boo.midbin0 -> 91 bytes
-rw-r--r--sound/songs/midi/se_bowa.midbin0 -> 86 bytes
-rw-r--r--sound/songs/midi/se_bowa2.midbin0 -> 181 bytes
-rw-r--r--sound/songs/midi/se_bt_start.midbin0 -> 334 bytes
-rw-r--r--sound/songs/midi/se_c_gaji.midbin0 -> 80 bytes
-rw-r--r--sound/songs/midi/se_c_maku_d.midbin0 -> 195 bytes
-rw-r--r--sound/songs/midi/se_c_maku_u.midbin0 -> 195 bytes
-rw-r--r--sound/songs/midi/se_c_pasi.midbin0 -> 86 bytes
-rw-r--r--sound/songs/midi/se_c_pikon.midbin0 -> 112 bytes
-rw-r--r--sound/songs/midi/se_c_syu.midbin0 -> 112 bytes
-rw-r--r--sound/songs/midi/se_card.midbin0 -> 184 bytes
-rw-r--r--sound/songs/midi/se_curtain.midbin0 -> 427 bytes
-rw-r--r--sound/songs/midi/se_curtain1.midbin0 -> 418 bytes
-rw-r--r--sound/songs/midi/se_dansa.midbin0 -> 83 bytes
-rw-r--r--sound/songs/midi/se_daugi.midbin0 -> 149 bytes
-rw-r--r--sound/songs/midi/se_dendou.midbin0 -> 703 bytes
-rw-r--r--sound/songs/midi/se_doku.midbin0 -> 107 bytes
-rw-r--r--sound/songs/midi/se_door.midbin0 -> 76 bytes
-rw-r--r--sound/songs/midi/se_e.midbin0 -> 75 bytes
-rw-r--r--sound/songs/midi/se_elebeta.midbin0 -> 104 bytes
-rw-r--r--sound/songs/midi/se_esuka.midbin0 -> 174 bytes
-rw-r--r--sound/songs/midi/se_exp.midbin0 -> 621 bytes
-rw-r--r--sound/songs/midi/se_expmax.midbin0 -> 138 bytes
-rw-r--r--sound/songs/midi/se_fu_zaku.midbin0 -> 124 bytes
-rw-r--r--sound/songs/midi/se_fu_zaku2.midbin0 -> 92 bytes
-rw-r--r--sound/songs/midi/se_fu_zuzuzu.midbin0 -> 140 bytes
-rw-r--r--sound/songs/midi/se_fuusen1.midbin0 -> 118 bytes
-rw-r--r--sound/songs/midi/se_fuusen2.midbin0 -> 110 bytes
-rw-r--r--sound/songs/midi/se_fuusen3.midbin0 -> 142 bytes
-rw-r--r--sound/songs/midi/se_hantei1.midbin0 -> 105 bytes
-rw-r--r--sound/songs/midi/se_hantei2.midbin0 -> 143 bytes
-rw-r--r--sound/songs/midi/se_hashi.midbin0 -> 86 bytes
-rw-r--r--sound/songs/midi/se_hazure.midbin0 -> 99 bytes
-rw-r--r--sound/songs/midi/se_hi_turun.midbin0 -> 132 bytes
-rw-r--r--sound/songs/midi/se_hinsi.midbin0 -> 106 bytes
-rw-r--r--sound/songs/midi/se_i.midbin0 -> 75 bytes
-rw-r--r--sound/songs/midi/se_jido_doa.midbin0 -> 72 bytes
-rw-r--r--sound/songs/midi/se_jihanki.midbin0 -> 88 bytes
-rw-r--r--sound/songs/midi/se_jite_pyoko.midbin0 -> 83 bytes
-rw-r--r--sound/songs/midi/se_jitensya.midbin0 -> 68 bytes
-rw-r--r--sound/songs/midi/se_jyuni.midbin0 -> 267 bytes
-rw-r--r--sound/songs/midi/se_kaidan.midbin0 -> 124 bytes
-rw-r--r--sound/songs/midi/se_kaifuku.midbin0 -> 91 bytes
-rw-r--r--sound/songs/midi/se_ki_gasyan.midbin0 -> 152 bytes
-rw-r--r--sound/songs/midi/se_kon.midbin0 -> 103 bytes
-rw-r--r--sound/songs/midi/se_kon2.midbin0 -> 103 bytes
-rw-r--r--sound/songs/midi/se_kon3.midbin0 -> 103 bytes
-rw-r--r--sound/songs/midi/se_kon4.midbin0 -> 103 bytes
-rw-r--r--sound/songs/midi/se_kouka_h.midbin0 -> 271 bytes
-rw-r--r--sound/songs/midi/se_kouka_l.midbin0 -> 103 bytes
-rw-r--r--sound/songs/midi/se_kouka_m.midbin0 -> 123 bytes
-rw-r--r--sound/songs/se_a.s45
-rw-r--r--sound/songs/se_ban.s70
-rw-r--r--sound/songs/se_basabasa.s123
-rw-r--r--sound/songs/se_bidoro.s61
-rw-r--r--sound/songs/se_boo.s47
-rw-r--r--sound/songs/se_bowa.s45
-rw-r--r--sound/songs/se_bowa2.s83
-rw-r--r--sound/songs/se_bt_start.s212
-rw-r--r--sound/songs/se_c_gaji.s44
-rw-r--r--sound/songs/se_c_maku_d.s95
-rw-r--r--sound/songs/se_c_maku_u.s95
-rw-r--r--sound/songs/se_c_pasi.s45
-rw-r--r--sound/songs/se_c_pikon.s54
-rw-r--r--sound/songs/se_c_syu.s54
-rw-r--r--sound/songs/se_card.s84
-rw-r--r--sound/songs/se_curtain.s166
-rw-r--r--sound/songs/se_curtain1.s168
-rw-r--r--sound/songs/se_dansa.s46
-rw-r--r--sound/songs/se_daugi.s80
-rw-r--r--sound/songs/se_dendou.s197
-rw-r--r--sound/songs/se_doku.s50
-rw-r--r--sound/songs/se_door.s42
-rw-r--r--sound/songs/se_e.s45
-rw-r--r--sound/songs/se_elebeta.s71
-rw-r--r--sound/songs/se_esuka.s93
-rw-r--r--sound/songs/se_exp.s333
-rw-r--r--sound/songs/se_expmax.s76
-rw-r--r--sound/songs/se_fu_zaku.s54
-rw-r--r--sound/songs/se_fu_zaku2.s48
-rw-r--r--sound/songs/se_fu_zuzuzu.s73
-rw-r--r--sound/songs/se_fuusen1.s53
-rw-r--r--sound/songs/se_fuusen2.s52
-rw-r--r--sound/songs/se_fuusen3.s60
-rw-r--r--sound/songs/se_hantei1.s58
-rw-r--r--sound/songs/se_hantei2.s70
-rw-r--r--sound/songs/se_hashi.s46
-rw-r--r--sound/songs/se_hazure.s55
-rw-r--r--sound/songs/se_hi_turun.s62
-rw-r--r--sound/songs/se_hinsi.s50
-rw-r--r--sound/songs/se_i.s45
-rw-r--r--sound/songs/se_jido_doa.s41
-rw-r--r--sound/songs/se_jihanki.s46
-rw-r--r--sound/songs/se_jite_pyoko.s45
-rw-r--r--sound/songs/se_jitensya.s40
-rw-r--r--sound/songs/se_jyuni.s127
-rw-r--r--sound/songs/se_kaidan.s61
-rw-r--r--sound/songs/se_kaifuku.s46
-rw-r--r--sound/songs/se_ki_gasyan.s76
-rw-r--r--sound/songs/se_kon.s53
-rw-r--r--sound/songs/se_kon2.s53
-rw-r--r--sound/songs/se_kon3.s53
-rw-r--r--sound/songs/se_kon4.s53
-rw-r--r--sound/songs/se_kouka_h.s105
-rw-r--r--sound/songs/se_kouka_l.s56
-rw-r--r--sound/songs/se_kouka_m.s82
-rw-r--r--src/battle_anim.c27
-rw-r--r--src/battle_anim_80A5C6C.c2460
-rw-r--r--src/battle_anim_80A9C70.c360
-rw-r--r--src/battle_anim_80D51AC.c1004
-rw-r--r--src/battle_anim_sound_tasks.c6
-rw-r--r--src/battle_gfx_sfx_util.c12
-rw-r--r--src/battle_script_commands.c25
-rw-r--r--src/contest.c2
-rw-r--r--src/data/pokemon_graphics/back_pic_coordinates.h2
-rw-r--r--src/intro.c101
-rw-r--r--src/item_menu_icons.c24
-rw-r--r--src/main.c2
-rw-r--r--src/pokeball.c14
-rw-r--r--sym_ewram.txt9
148 files changed, 11493 insertions, 21471 deletions
diff --git a/asm/battle_anim_80A5C6C.s b/asm/battle_anim_80A5C6C.s
deleted file mode 100644
index 44ba33c08..000000000
--- a/asm/battle_anim_80A5C6C.s
+++ /dev/null
@@ -1,6526 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start GetBattlerSpriteCoord
-GetBattlerSpriteCoord: @ 80A5C6C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A5C8A
- cmp r4, 0x3
- bne _080A5C8A
- cmp r5, 0x3
- bne _080A5C8A
- movs r4, 0x1
-_080A5C8A:
- cmp r4, 0x4
- bhi _080A5D00
- lsls r0, r4, 2
- ldr r1, =_080A5C9C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080A5C9C:
- .4byte _080A5CB0
- .4byte _080A5CD8
- .4byte _080A5CB0
- .4byte _080A5D00
- .4byte _080A5D00
-_080A5CB0:
- ldr r4, =gUnknown_08525F58
- adds r0, r5, 0
- bl GetBattlerPosition
- lsls r0, 24
- lsrs r0, 22
- ldr r1, =gBattleTypeFlags
- ldr r1, [r1]
- movs r2, 0x1
- ands r1, r2
- lsls r1, 4
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0]
- b _080A5DB0
- .pool
-_080A5CD8:
- ldr r4, =gUnknown_08525F58
- adds r0, r5, 0
- bl GetBattlerPosition
- lsls r0, 24
- lsrs r0, 22
- ldr r1, =gBattleTypeFlags
- ldr r1, [r1]
- movs r2, 0x1
- ands r1, r2
- lsls r1, 4
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0, 0x1]
- b _080A5DB0
- .pool
-_080A5D00:
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A5D28
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0, 0x18]
- ldrb r1, [r2, 0x4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A5D24
- ldrh r1, [r2, 0x2]
- b _080A5D9A
- .pool
-_080A5D24:
- ldrh r1, [r2]
- b _080A5D9A
-_080A5D28:
- adds r0, r5, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A5D60
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A5D98
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- b _080A5D7E
- .pool
-_080A5D60:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A5D98
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
-_080A5D7E:
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- b _080A5D9A
- .pool
-_080A5D98:
- ldrh r1, [r1, 0x2]
-_080A5D9A:
- cmp r4, 0x3
- bne _080A5DA4
- adds r0, r5, 0
- movs r2, 0x1
- b _080A5DA8
-_080A5DA4:
- adds r0, r5, 0
- movs r2, 0
-_080A5DA8:
- bl sub_80A600C
- lsls r0, 24
- lsrs r0, 24
-_080A5DB0:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetBattlerSpriteCoord
-
- thumb_func_start sub_80A5DB8
-sub_80A5DB8: @ 80A5DB8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- lsrs r5, r1, 16
- adds r0, r4, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A5DDA
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5DDA
- b _080A5EC8
-_080A5DDA:
- cmp r5, 0xC9
- bne _080A5E90
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A5E04
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0, 0x18]
- ldrb r1, [r2, 0x4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A5E00
- ldr r2, [r2, 0x10]
- b _080A5E42
- .pool
-_080A5E00:
- ldr r2, [r2, 0x8]
- b _080A5E42
-_080A5E04:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r0, [r0]
- lsls r1, r4, 2
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- cmp r0, 0
- bne _080A5E3C
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0
- bl GetMonData
- adds r2, r0, 0
- b _080A5E42
- .pool
-_080A5E3C:
- ldr r0, =gTransformedPersonalities
- adds r0, r1, r0
- ldr r2, [r0]
-_080A5E42:
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080A5E7C
- adds r0, r5, 0
- b _080A5E86
- .pool
-_080A5E7C:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080A5E86:
- ldr r1, =gUnknown_083021D8
- lsls r0, 2
- b _080A5F90
- .pool
-_080A5E90:
- ldr r0, =0x00000181
- cmp r5, r0
- bne _080A5EB0
- ldr r0, =gUnknown_08525F8C
- ldr r1, =gBattleMonForms
- adds r1, r4, r1
- ldrb r1, [r1]
- adds r1, r0
- ldrb r0, [r1]
- b _080A5F94
- .pool
-_080A5EB0:
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- bls _080A5EC0
- ldr r0, =gUnknown_083021D8
- b _080A5F92
- .pool
-_080A5EC0:
- ldr r1, =gUnknown_083021D8
- b _080A5F8E
- .pool
-_080A5EC8:
- cmp r5, 0xC9
- bne _080A5F58
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r0, [r0]
- lsls r1, r4, 2
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- cmp r0, 0
- bne _080A5F04
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0
- bl GetMonData
- adds r2, r0, 0
- b _080A5F0A
- .pool
-_080A5F04:
- ldr r0, =gTransformedPersonalities
- adds r0, r1, r0
- ldr r2, [r0]
-_080A5F0A:
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080A5F44
- adds r0, r5, 0
- b _080A5F4E
- .pool
-_080A5F44:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080A5F4E:
- ldr r1, =gMonFrontPicCoords
- lsls r0, 2
- b _080A5F90
- .pool
-_080A5F58:
- ldr r0, =0x00000181
- cmp r5, r0
- bne _080A5F7C
- ldr r0, =gCastformFrontSpriteCoords
- ldr r1, =gBattleMonForms
- adds r1, r4, r1
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- b _080A5F94
- .pool
-_080A5F7C:
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- bls _080A5F8C
- ldr r0, =gMonFrontPicCoords
- b _080A5F92
- .pool
-_080A5F8C:
- ldr r1, =gMonFrontPicCoords
-_080A5F8E:
- lsls r0, r5, 2
-_080A5F90:
- adds r0, r1
-_080A5F92:
- ldrb r0, [r0, 0x1]
-_080A5F94:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A5DB8
-
- thumb_func_start sub_80A5FA0
-sub_80A5FA0: @ 80A5FA0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- adds r7, r4, 0
- movs r5, 0
- adds r0, r6, 0
- bl GetBattlerSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A5FFE
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5FFE
- ldr r0, =0x00000181
- cmp r4, r0
- bne _080A5FE8
- ldr r0, =gUnknown_08525F88
- ldr r1, =gBattleMonForms
- adds r1, r6, r1
- ldrb r1, [r1]
- adds r1, r0
- ldrb r5, [r1]
- b _080A5FFE
- .pool
-_080A5FE8:
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- bls _080A5FF8
- ldr r0, =gEnemyMonElevation
- b _080A5FFC
- .pool
-_080A5FF8:
- ldr r0, =gEnemyMonElevation
- adds r0, r7, r0
-_080A5FFC:
- ldrb r5, [r0]
-_080A5FFE:
- adds r0, r5, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A5FA0
-
- thumb_func_start sub_80A600C
-sub_80A600C: @ 80A600C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r5, r1, 16
- lsls r2, 24
- lsrs r7, r2, 24
- adds r0, r6, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A6030
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A603E
-_080A6030:
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80A5DB8
- lsls r0, 24
- lsrs r4, r0, 24
- b _080A605C
-_080A603E:
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80A5DB8
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_80A5FA0
- lsls r0, 24
- lsrs r0, 24
- subs r0, r4, r0
- lsls r0, 16
- lsrs r4, r0, 16
-_080A605C:
- adds r0, r6, 0
- bl GetBattlerPosition
- ldr r3, =gUnknown_08525F58
- lsls r0, 24
- lsrs r0, 22
- ldr r1, =gBattleTypeFlags
- ldr r1, [r1]
- movs r2, 0x1
- ands r1, r2
- lsls r1, 4
- adds r0, r1
- adds r0, r3
- ldrb r0, [r0, 0x1]
- adds r0, r4
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r7, 0
- beq _080A609C
- adds r0, r6, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080A6096
- adds r0, r4, 0
- adds r0, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
-_080A6096:
- cmp r4, 0x68
- bls _080A609C
- movs r4, 0x68
-_080A609C:
- adds r0, r4, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A600C
-
- thumb_func_start sub_80A60AC
-sub_80A60AC: @ 80A60AC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- movs r0, 0xFD
- lsls r0, 24
- adds r1, r0
- lsrs r1, 24
- cmp r1, 0x1
- bhi _080A6126
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A60E8
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0, 0x18]
- ldrb r1, [r2, 0x4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A60E4
- ldrh r1, [r2, 0x2]
- b _080A610E
- .pool
-_080A60E4:
- ldrh r1, [r2]
- b _080A610E
-_080A60E8:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r4, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A610C
- ldr r1, =gAnimBattlerSpecies
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080A610E
- .pool
-_080A610C:
- ldrh r1, [r1, 0x2]
-_080A610E:
- cmp r5, 0x3
- bne _080A611C
- adds r0, r4, 0
- movs r2, 0x1
- bl sub_80A600C
- b _080A612E
-_080A611C:
- adds r0, r4, 0
- movs r2, 0
- bl sub_80A600C
- b _080A612E
-_080A6126:
- adds r0, r4, 0
- adds r1, r5, 0
- bl GetBattlerSpriteCoord
-_080A612E:
- lsls r0, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80A60AC
-
- thumb_func_start GetBattlerSpriteDefault_Y
-GetBattlerSpriteDefault_Y: @ 80A6138
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x4
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetBattlerSpriteDefault_Y
-
- thumb_func_start GetSubstituteSpriteDefault_Y
-GetSubstituteSpriteDefault_Y: @ 80A614C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A6170
- adds r0, r4, 0
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 8
- movs r1, 0x80
- lsls r1, 13
- b _080A6180
-_080A6170:
- adds r0, r4, 0
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 8
- movs r1, 0x88
- lsls r1, 13
-_080A6180:
- adds r0, r1
- lsrs r0, 16
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetSubstituteSpriteDefault_Y
-
- thumb_func_start sub_80A6190
-sub_80A6190: @ 80A6190
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r6, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A6238
- adds r0, r5, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A61E4
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A621C
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- b _080A6202
- .pool
-_080A61E4:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A621C
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
-_080A6202:
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- b _080A621E
- .pool
-_080A621C:
- ldrh r4, [r1, 0x2]
-_080A621E:
- adds r0, r5, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A6238
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A5FA0
- subs r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
-_080A6238:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80A6190
-
- thumb_func_start GetAnimBattlerSpriteId
-GetAnimBattlerSpriteId: @ 80A6240
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0
- bne _080A6268
- ldr r4, =gBattleAnimAttacker
- ldrb r0, [r4]
- bl IsBattlerSpritePresent
- lsls r0, 24
- cmp r0, 0
- beq _080A62B6
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r4]
- b _080A62C6
- .pool
-_080A6268:
- cmp r0, 0x1
- bne _080A6288
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- bl IsBattlerSpritePresent
- lsls r0, 24
- cmp r0, 0
- beq _080A62B6
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r4]
- b _080A62C6
- .pool
-_080A6288:
- cmp r1, 0x2
- bne _080A62A4
- ldr r5, =gBattleAnimAttacker
- ldrb r0, [r5]
- movs r4, 0x2
- eors r0, r4
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A62B6
- b _080A62C0
- .pool
-_080A62A4:
- ldr r5, =gBattleAnimTarget
- ldrb r0, [r5]
- movs r4, 0x2
- eors r0, r4
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- bne _080A62C0
-_080A62B6:
- movs r0, 0xFF
- b _080A62CA
- .pool
-_080A62C0:
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r5]
- eors r0, r4
-_080A62C6:
- adds r0, r1
- ldrb r0, [r0]
-_080A62CA:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetAnimBattlerSpriteId
-
- thumb_func_start StoreSpriteCallbackInData6
-StoreSpriteCallbackInData6: @ 80A62D4
- strh r1, [r0, 0x3A]
- lsrs r1, 16
- strh r1, [r0, 0x3C]
- bx lr
- thumb_func_end StoreSpriteCallbackInData6
-
- thumb_func_start sub_80A62DC
-sub_80A62DC: @ 80A62DC
- ldrh r2, [r0, 0x3A]
- movs r3, 0x3C
- ldrsh r1, [r0, r3]
- lsls r1, 16
- orrs r2, r1
- str r2, [r0, 0x1C]
- bx lr
- thumb_func_end sub_80A62DC
-
- thumb_func_start sub_80A62EC
-sub_80A62EC: @ 80A62EC
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A6340
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x2E]
- adds r1, r0, r2
- strh r1, [r4, 0x2E]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _080A632C
- ldr r2, =0xffffff00
- b _080A6334
- .pool
-_080A632C:
- cmp r0, 0
- bge _080A6338
- movs r2, 0x80
- lsls r2, 1
-_080A6334:
- adds r0, r1, r2
- strh r0, [r4, 0x2E]
-_080A6338:
- ldrh r0, [r4, 0x34]
- subs r0, 0x1
- strh r0, [r4, 0x34]
- b _080A6346
-_080A6340:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A6346:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A62EC
-
- thumb_func_start sub_80A634C
-sub_80A634C: @ 80A634C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A63BC
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- ldrh r1, [r4, 0x38]
- lsls r1, 16
- asrs r1, 24
- ldrh r2, [r4, 0x30]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- ldrh r1, [r4, 0x38]
- lsls r1, 16
- asrs r1, 24
- ldrh r2, [r4, 0x30]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x2E]
- adds r1, r0, r2
- strh r1, [r4, 0x2E]
- ldrh r0, [r4, 0x36]
- ldrh r2, [r4, 0x38]
- adds r0, r2
- strh r0, [r4, 0x38]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _080A63A8
- ldr r2, =0xffffff00
- b _080A63B0
- .pool
-_080A63A8:
- cmp r0, 0
- bge _080A63B4
- movs r2, 0x80
- lsls r2, 1
-_080A63B0:
- adds r0, r1, r2
- strh r0, [r4, 0x2E]
-_080A63B4:
- ldrh r0, [r4, 0x34]
- subs r0, 0x1
- strh r0, [r4, 0x34]
- b _080A63C2
-_080A63BC:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A63C2:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A634C
-
- thumb_func_start sub_80A63C8
-sub_80A63C8: @ 80A63C8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A6444
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x2E]
- adds r1, r0, r2
- strh r1, [r4, 0x2E]
- ldrh r0, [r4, 0x38]
- ldrh r2, [r4, 0x36]
- adds r0, r2
- strh r0, [r4, 0x36]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _080A6410
- ldr r2, =0xffffff00
- b _080A6418
- .pool
-_080A6410:
- cmp r0, 0
- bge _080A641C
- movs r2, 0x80
- lsls r2, 1
-_080A6418:
- adds r0, r1, r2
- strh r0, [r4, 0x2E]
-_080A641C:
- ldrh r1, [r4, 0x36]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- cmp r0, 0xFF
- ble _080A6430
- ldr r2, =0xffffff00
- b _080A6438
- .pool
-_080A6430:
- cmp r0, 0
- bge _080A643C
- movs r2, 0x80
- lsls r2, 1
-_080A6438:
- adds r0, r1, r2
- strh r0, [r4, 0x36]
-_080A643C:
- ldrh r0, [r4, 0x34]
- subs r0, 0x1
- strh r0, [r4, 0x34]
- b _080A644A
-_080A6444:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A644A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A63C8
-
- thumb_func_start sub_80A6450
-sub_80A6450: @ 80A6450
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A64A4
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x2E]
- adds r1, r0, r2
- strh r1, [r4, 0x2E]
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _080A6490
- ldr r2, =0xffffff00
- b _080A6498
- .pool
-_080A6490:
- cmp r0, 0
- bge _080A649C
- movs r2, 0x80
- lsls r2, 1
-_080A6498:
- adds r0, r1, r2
- strh r0, [r4, 0x2E]
-_080A649C:
- ldrh r0, [r4, 0x34]
- subs r0, 0x1
- strh r0, [r4, 0x34]
- b _080A64AA
-_080A64A4:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A64AA:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6450
-
- thumb_func_start sub_80A64B0
-sub_80A64B0: @ 80A64B0
- push {lr}
- adds r1, r0, 0
- ldrh r2, [r1, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r1, r3]
- cmp r0, 0
- ble _080A64C4
- subs r0, r2, 0x1
- strh r0, [r1, 0x2E]
- b _080A64CA
-_080A64C4:
- adds r0, r1, 0
- bl sub_80A62DC
-_080A64CA:
- pop {r0}
- bx r0
- thumb_func_end sub_80A64B0
-
- thumb_func_start sub_80A64D0
-sub_80A64D0: @ 80A64D0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A64EC
- ldr r1, =sub_80A653C
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A64D0
-
- thumb_func_start sub_80A64EC
-sub_80A64EC: @ 80A64EC
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x30
- ldrsh r1, [r4, r0]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _080A6502
- ldrh r0, [r4, 0x2E]
- negs r0, r0
- strh r0, [r4, 0x2E]
-_080A6502:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- subs r0, r1
- ldrh r5, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- cmp r0, 0
- bge _080A651C
- negs r0, r0
-_080A651C:
- strh r0, [r4, 0x2E]
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r2, 0x34
- ldrsh r1, [r4, r2]
- subs r0, r1
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x30]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A64EC
-
- thumb_func_start sub_80A653C
-sub_80A653C: @ 80A653C
- push {lr}
- adds r1, r0, 0
- ldrh r2, [r1, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r1, r3]
- cmp r0, 0
- ble _080A6560
- subs r0, r2, 0x1
- strh r0, [r1, 0x2E]
- ldrh r0, [r1, 0x30]
- ldrh r2, [r1, 0x24]
- adds r0, r2
- strh r0, [r1, 0x24]
- ldrh r0, [r1, 0x32]
- ldrh r3, [r1, 0x26]
- adds r0, r3
- strh r0, [r1, 0x26]
- b _080A6566
-_080A6560:
- adds r0, r1, 0
- bl sub_80A62DC
-_080A6566:
- pop {r0}
- bx r0
- thumb_func_end sub_80A653C
-
- thumb_func_start sub_80A656C
-sub_80A656C: @ 80A656C
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r0, 0
- ble _080A659C
- subs r0, r1, 0x1
- strh r0, [r2, 0x2E]
- ldrh r0, [r2, 0x30]
- ldrh r1, [r2, 0x34]
- adds r0, r1
- strh r0, [r2, 0x34]
- ldrh r1, [r2, 0x32]
- ldrh r3, [r2, 0x36]
- adds r1, r3
- strh r1, [r2, 0x36]
- lsls r0, 16
- asrs r0, 24
- strh r0, [r2, 0x24]
- lsls r1, 16
- asrs r1, 24
- strh r1, [r2, 0x26]
- b _080A65A2
-_080A659C:
- adds r0, r2, 0
- bl sub_80A62DC
-_080A65A2:
- pop {r0}
- bx r0
- thumb_func_end sub_80A656C
-
- thumb_func_start sub_80A65A8
-sub_80A65A8: @ 80A65A8
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080A65D8
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x34]
- adds r0, r1
- strh r0, [r4, 0x34]
- ldrh r1, [r4, 0x32]
- ldrh r2, [r4, 0x36]
- adds r1, r2
- strh r1, [r4, 0x36]
- lsls r0, 16
- asrs r0, 24
- strh r0, [r4, 0x24]
- lsls r1, 16
- asrs r1, 24
- strh r1, [r4, 0x26]
- b _080A65DE
-_080A65D8:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A65DE:
- adds r0, r4, 0
- bl UpdateMonIconFrame
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A65A8
-
- thumb_func_start sub_80A65EC
-sub_80A65EC: @ 80A65EC
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x26]
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r4, 0x34]
- ldr r5, =gBattleAnimTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x36]
- ldr r0, =sub_80A64D0
- str r0, [r4, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A65EC
-
- thumb_func_start sub_80A6630
-sub_80A6630: @ 80A6630
- push {r4,lr}
- adds r3, r0, 0
- ldrh r1, [r3, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r3, r2]
- cmp r0, 0
- ble _080A6674
- subs r0, r1, 0x1
- strh r0, [r3, 0x2E]
- ldr r2, =gSprites
- movs r4, 0x34
- ldrsh r1, [r3, r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r3, 0x30]
- ldrh r4, [r0, 0x24]
- adds r1, r4
- strh r1, [r0, 0x24]
- movs r0, 0x34
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r3, 0x32]
- ldrh r2, [r0, 0x26]
- adds r1, r2
- strh r1, [r0, 0x26]
- b _080A667A
- .pool
-_080A6674:
- adds r0, r3, 0
- bl sub_80A62DC
-_080A667A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6630
-
- thumb_func_start sub_80A6680
-sub_80A6680: @ 80A6680
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080A66D0
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x30]
- ldrh r0, [r4, 0x34]
- adds r1, r0
- strh r1, [r4, 0x34]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x36]
- adds r0, r2
- strh r0, [r4, 0x36]
- ldr r3, =gSprites
- movs r0, 0x38
- ldrsh r2, [r4, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- lsls r1, 16
- asrs r1, 24
- strh r1, [r0, 0x24]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrh r0, [r4, 0x36]
- lsls r0, 16
- asrs r0, 24
- strh r0, [r1, 0x26]
- b _080A66D6
- .pool
-_080A66D0:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A66D6:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6680
-
- thumb_func_start sub_80A66DC
-sub_80A66DC: @ 80A66DC
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080A673E
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- lsls r0, r1, 16
- asrs r0, 24
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x30]
- adds r1, r0
- strh r1, [r4, 0x32]
- ldrh r1, [r4, 0x36]
- lsls r0, r1, 16
- asrs r0, 24
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x34]
- adds r1, r0
- strh r1, [r4, 0x36]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl __modsi3
- cmp r0, 0
- bne _080A6744
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A6744
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- 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
- strb r0, [r3]
- b _080A6744
-_080A673E:
- adds r0, r4, 0
- bl sub_80A62DC
-_080A6744:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A66DC
-
- thumb_func_start move_anim_8074EE0
-move_anim_8074EE0: @ 80A674C
- push {r4,lr}
- adds r4, r0, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroyAnimSprite
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end move_anim_8074EE0
-
- thumb_func_start sub_80A6760
-sub_80A6760: @ 80A6760
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x26]
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r4, 0x34]
- ldr r5, =gBattleAnimAttacker
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x36]
- ldr r0, =sub_80A64D0
- str r0, [r4, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6760
-
- thumb_func_start sub_80A67A4
-sub_80A67A4: @ 80A67A4
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x38]
- bl ResetPaletteStructByUid
- adds r0, r4, 0
- bl move_anim_8074EE0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A67A4
-
- thumb_func_start sub_80A67BC
-sub_80A67BC: @ 80A67BC
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080A67D2
- adds r0, r2, 0
- bl sub_80A62DC
-_080A67D2:
- pop {r0}
- bx r0
- thumb_func_end sub_80A67BC
-
- thumb_func_start sub_80A67D8
-sub_80A67D8: @ 80A67D8
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080A67EE
- adds r0, r2, 0
- bl sub_80A62DC
-_080A67EE:
- pop {r0}
- bx r0
- thumb_func_end sub_80A67D8
-
- thumb_func_start sub_80A67F4
-sub_80A67F4: @ 80A67F4
- 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_80A67F4
-
- thumb_func_start sub_80A6814
-sub_80A6814: @ 80A6814
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6814
-
- thumb_func_start sub_80A6838
-sub_80A6838: @ 80A6838
- 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]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6838
-
- thumb_func_start sub_80A6864
-sub_80A6864: @ 80A6864
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- mov r8, r5
- ldr r7, =gBattleAnimAttacker
- ldrb r0, [r7]
- movs r1, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- movs r1, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- cmp r6, r0
- bhi _080A68B0
- cmp r6, r0
- bcs _080A68A4
- lsls r0, r5, 16
- b _080A68C0
- .pool
-_080A68A4:
- ldrb r0, [r7]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A68BC
-_080A68B0:
- ldrh r1, [r4, 0x20]
- lsls r0, r5, 16
- asrs r0, 16
- subs r1, r0
- strh r1, [r4, 0x20]
- b _080A68C8
-_080A68BC:
- mov r1, r8
- lsls r0, r1, 16
-_080A68C0:
- asrs r0, 16
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x20]
-_080A68C8:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6864
-
- thumb_func_start sub_80A68D4
-sub_80A68D4: @ 80A68D4
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- movs r5, 0
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 8
- bl __divsi3
- strh r0, [r4, 0x3A]
- strh r5, [r4, 0x3C]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A68D4
-
- thumb_func_start AnimateBallThrow
-AnimateBallThrow: @ 80A6900
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6F3C
- lsls r0, 24
- cmp r0, 0
- bne _080A692C
- ldrh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- lsls r0, 16
- lsrs r0, 24
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- movs r0, 0
- b _080A692E
-_080A692C:
- movs r0, 0x1
-_080A692E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end AnimateBallThrow
-
- thumb_func_start sub_80A6934
-sub_80A6934: @ 80A6934
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6F3C
- lsls r0, 24
- cmp r0, 0
- bne _080A6960
- ldrh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- lsls r0, 16
- lsrs r0, 24
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r0, 0
- b _080A6962
-_080A6960:
- movs r0, 0x1
-_080A6962:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A6934
-
- thumb_func_start oamt_add_pos2_onto_pos1
-oamt_add_pos2_onto_pos1: @ 80A6968
- ldrh r1, [r0, 0x24]
- ldrh r2, [r0, 0x20]
- adds r1, r2
- movs r2, 0
- strh r1, [r0, 0x20]
- ldrh r1, [r0, 0x26]
- ldrh r3, [r0, 0x22]
- adds r1, r3
- strh r1, [r0, 0x22]
- strh r2, [r0, 0x24]
- strh r2, [r0, 0x26]
- bx lr
- thumb_func_end oamt_add_pos2_onto_pos1
-
- thumb_func_start sub_80A6980
-sub_80A6980: @ 80A6980
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- cmp r1, 0
- bne _080A69A8
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- movs r1, 0
- bl sub_80A60AC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x20]
- ldrb r0, [r4]
- movs r1, 0x1
- bl sub_80A60AC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x22]
-_080A69A8:
- ldr r4, =gBattleAnimArgs
- movs r0, 0
- ldrsh r1, [r4, r0]
- adds r0, r5, 0
- bl sub_80A6864
- ldrh r0, [r4, 0x2]
- ldrh r1, [r5, 0x22]
- adds r0, r1
- strh r0, [r5, 0x22]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6980
-
- thumb_func_start sub_80A69CC
-sub_80A69CC: @ 80A69CC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- cmp r1, 0
- bne _080A69F0
- ldr r4, =gBattleAnimAttacker
- ldrb r0, [r4]
- movs r1, 0
- bl sub_80A60AC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x20]
- ldrb r0, [r4]
- movs r1, 0x1
- b _080A6A04
- .pool
-_080A69F0:
- ldr r4, =gBattleAnimAttacker
- ldrb r0, [r4]
- movs r1, 0x2
- bl sub_80A60AC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x20]
- ldrb r0, [r4]
- movs r1, 0x3
-_080A6A04:
- bl sub_80A60AC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x22]
- ldr r4, =gBattleAnimArgs
- movs r0, 0
- ldrsh r1, [r4, r0]
- adds r0, r5, 0
- bl sub_80A6864
- ldrh r0, [r4, 0x2]
- ldrh r1, [r5, 0x22]
- adds r0, r1
- strh r0, [r5, 0x22]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A69CC
-
- thumb_func_start GetBattlerSide
-GetBattlerSide: @ 80A6A30
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gBattlerPositions
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- bx lr
- .pool
- thumb_func_end GetBattlerSide
-
- thumb_func_start GetBattlerPosition
-GetBattlerPosition: @ 80A6A44
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gBattlerPositions
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end GetBattlerPosition
-
- thumb_func_start GetBattlerAtPosition
-GetBattlerAtPosition: @ 80A6A54
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r1, 0
- ldr r0, =gBattlersCount
- ldrb r2, [r0]
- cmp r1, r2
- bcs _080A6A7E
- ldr r4, =gBattlerPositions
- ldrb r0, [r4]
- cmp r0, r3
- beq _080A6A7E
-_080A6A6C:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r2
- bcs _080A6A7E
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r3
- bne _080A6A6C
-_080A6A7E:
- adds r0, r1, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetBattlerAtPosition
-
- thumb_func_start IsBattlerSpritePresent
-IsBattlerSpritePresent: @ 80A6A90
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A6ABC
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- cmp r0, r4
- beq _080A6B0A
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- cmp r0, r4
- beq _080A6B0A
- b _080A6B18
- .pool
-_080A6ABC:
- ldr r0, =gBattlerPositions
- adds r0, r4, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080A6B18
- adds r0, r4, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A6AF0
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- b _080A6AFE
- .pool
-_080A6AF0:
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r5, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
-_080A6AFE:
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080A6B18
-_080A6B0A:
- movs r0, 0x1
- b _080A6B1A
- .pool
-_080A6B18:
- movs r0, 0
-_080A6B1A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end IsBattlerSpritePresent
-
- thumb_func_start IsDoubleBattle
-IsDoubleBattle: @ 80A6B20
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- bx lr
- .pool
- thumb_func_end IsDoubleBattle
-
- thumb_func_start sub_80A6B30
-sub_80A6B30: @ 80A6B30
- push {r4,lr}
- adds r4, r0, 0
- bl IsContest
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080A6B64
- ldr r0, =gUnknown_0202305C
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_02023060
- ldr r0, [r0]
- str r0, [r4, 0x4]
- movs r1, 0
- movs r0, 0xE
- strb r0, [r4, 0x8]
- movs r0, 0x1
- strb r0, [r4, 0x9]
- strh r1, [r4, 0xA]
- b _080A6B7E
- .pool
-_080A6B64:
- ldr r0, =gUnknown_0202305C
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_02023060
- ldr r0, [r0]
- str r0, [r4, 0x4]
- movs r0, 0x8
- strb r0, [r4, 0x8]
- movs r0, 0x1
- strb r0, [r4, 0x9]
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r4, 0xA]
-_080A6B7E:
- strh r1, [r4, 0xC]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6B30
-
- thumb_func_start sub_80A6B90
-sub_80A6B90: @ 80A6B90
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- bl IsContest
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080A6BC4
- ldr r0, =gUnknown_0202305C
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_02023060
- ldr r0, [r0]
- str r0, [r4, 0x4]
- movs r1, 0
- movs r0, 0xE
- strb r0, [r4, 0x8]
- movs r0, 0x1
- strb r0, [r4, 0x9]
- strh r1, [r4, 0xA]
- b _080A6BEA
- .pool
-_080A6BC4:
- cmp r5, 0x1
- bne _080A6BD0
- adds r0, r4, 0
- bl sub_80A6B30
- b _080A6BEC
-_080A6BD0:
- ldr r0, =gUnknown_0202305C
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_02023060
- ldr r0, [r0]
- str r0, [r4, 0x4]
- movs r0, 0x9
- strb r0, [r4, 0x8]
- movs r0, 0x2
- strb r0, [r4, 0x9]
- movs r0, 0xC0
- lsls r0, 2
- strh r0, [r4, 0xA]
-_080A6BEA:
- strh r1, [r4, 0xC]
-_080A6BEC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6B90
-
- thumb_func_start sub_80A6BFC
-sub_80A6BFC: @ 80A6BFC
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, =gUnknown_0202305C
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_02023060
- ldr r0, [r0]
- str r0, [r4, 0x4]
- bl IsContest
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- beq _080A6C30
- movs r0, 0
- movs r1, 0xE
- strb r1, [r4, 0x8]
- movs r1, 0x1
- strb r1, [r4, 0x9]
- strh r0, [r4, 0xA]
- strh r0, [r4, 0xC]
- b _080A6C60
- .pool
-_080A6C30:
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl sub_80A8364
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x1
- bne _080A6C50
- movs r0, 0x8
- strb r0, [r4, 0x8]
- strb r1, [r4, 0x9]
- movs r0, 0x80
- lsls r0, 2
- b _080A6C5C
- .pool
-_080A6C50:
- movs r0, 0x9
- strb r0, [r4, 0x8]
- movs r0, 0x2
- strb r0, [r4, 0x9]
- movs r0, 0xC0
- lsls r0, 2
-_080A6C5C:
- strh r0, [r4, 0xA]
- strh r5, [r4, 0xC]
-_080A6C60:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6BFC
-
- thumb_func_start sub_80A6C68
-sub_80A6C68: @ 80A6C68
- push {lr}
- sub sp, 0x20
- adds r1, r0, 0
- add r0, sp, 0xC
- bl sub_80A6B90
- movs r0, 0
- str r0, [sp, 0x1C]
- add r0, sp, 0x1C
- ldr r1, [sp, 0xC]
- ldr r2, =0x05000800
- bl CpuSet
- add r0, sp, 0xC
- ldrb r0, [r0, 0x9]
- ldr r1, [sp, 0xC]
- movs r2, 0x80
- lsls r2, 6
- add r3, sp, 0xC
- ldrh r3, [r3, 0xA]
- bl LoadBgTiles
- add r0, sp, 0xC
- ldrb r0, [r0, 0x9]
- movs r1, 0x20
- str r1, [sp]
- movs r1, 0x40
- str r1, [sp, 0x4]
- movs r1, 0x11
- str r1, [sp, 0x8]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- add r0, sp, 0xC
- ldrb r0, [r0, 0x9]
- bl CopyBgTilemapBufferToVram
- add sp, 0x20
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6C68
-
- thumb_func_start sub_80A6CC0
-sub_80A6CC0: @ 80A6CC0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- adds r5, r0, 0
- mov r8, r1
- adds r6, r2, 0
- movs r0, 0
- str r0, [sp]
- ldr r4, =gUnknown_0202305C
- ldr r1, [r4]
- ldr r2, =0x05000800
- mov r0, sp
- bl CpuSet
- ldr r1, [r4]
- mov r0, r8
- bl LZDecompressWram
- lsls r5, 24
- lsrs r5, 24
- ldr r1, [r4]
- movs r2, 0x80
- lsls r2, 6
- lsls r6, 16
- lsrs r6, 16
- adds r0, r5, 0
- adds r3, r6, 0
- bl LoadBgTiles
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6CC0
-
- thumb_func_start sub_80A6D10
-sub_80A6D10: @ 80A6D10
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x40
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6D10
-
- thumb_func_start sub_80A6D48
-sub_80A6D48: @ 80A6D48
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6D10
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl CopyBgTilemapBufferToVram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6D48
-
- thumb_func_start sub_80A6D60
-sub_80A6D60: @ 80A6D60
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r2, 0
- ldrb r0, [r4, 0x9]
- bl sub_80A6D10
- bl IsContest
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A6D86
- ldrb r0, [r4, 0x8]
- ldr r1, [r4, 0x4]
- lsls r3, r5, 24
- lsrs r3, 24
- movs r2, 0
- bl sub_80A4720
-_080A6D86:
- ldrb r0, [r4, 0x9]
- bl CopyBgTilemapBufferToVram
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6D60
-
- thumb_func_start sub_80A6D94
-sub_80A6D94: @ 80A6D94
- push {lr}
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A6DA4
- movs r0, 0x2
- b _080A6DA6
-_080A6DA4:
- movs r0, 0x1
-_080A6DA6:
- pop {r1}
- bx r1
- thumb_func_end sub_80A6D94
-
- thumb_func_start sub_80A6DAC
-sub_80A6DAC: @ 80A6DAC
- push {lr}
- lsls r0, 24
- cmp r0, 0
- beq _080A6DBE
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A6DD4
-_080A6DBE:
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl SetAnimBgAttribute
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0x1
- bl SetAnimBgAttribute
- b _080A6DE8
-_080A6DD4:
- movs r0, 0x3
- movs r1, 0
- movs r2, 0x1
- bl SetAnimBgAttribute
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0
- bl SetAnimBgAttribute
-_080A6DE8:
- pop {r0}
- bx r0
- thumb_func_end sub_80A6DAC
-
- thumb_func_start sub_80A6DEC
-sub_80A6DEC: @ 80A6DEC
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl sub_80A6E14
- ldr r1, =sub_80A65A8
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6DEC
-
- thumb_func_start sub_80A6E14
-sub_80A6E14: @ 80A6E14
- push {r4-r6,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0x32]
- ldrh r1, [r5, 0x30]
- subs r0, r1
- ldrh r4, [r5, 0x36]
- ldrh r1, [r5, 0x34]
- subs r4, r1
- lsls r4, 24
- lsrs r4, 16
- lsls r0, 24
- asrs r0, 16
- movs r2, 0x2E
- ldrsh r1, [r5, r2]
- bl __divsi3
- movs r6, 0
- strh r0, [r5, 0x30]
- lsls r4, 16
- asrs r4, 16
- movs r0, 0x2E
- ldrsh r1, [r5, r0]
- adds r0, r4, 0
- bl __divsi3
- strh r0, [r5, 0x32]
- strh r6, [r5, 0x36]
- strh r6, [r5, 0x34]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6E14
-
- thumb_func_start obj_translate_based_on_private_1_2_3_4
-obj_translate_based_on_private_1_2_3_4: @ 80A6E54
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- movs r0, 0x32
- ldrsh r1, [r7, r0]
- movs r2, 0x30
- ldrsh r0, [r7, r2]
- subs r1, r0
- movs r3, 0x36
- ldrsh r2, [r7, r3]
- movs r3, 0x34
- ldrsh r0, [r7, r3]
- subs r2, r0
- lsrs r0, r1, 31
- mov r8, r0
- lsrs r3, r2, 31
- mov r9, r3
- cmp r1, 0
- bge _080A6E80
- negs r1, r1
-_080A6E80:
- lsls r0, r1, 24
- lsrs r6, r0, 16
- adds r0, r2, 0
- cmp r0, 0
- bge _080A6E8C
- negs r0, r0
-_080A6E8C:
- lsls r0, 24
- lsrs r5, r0, 16
- movs r0, 0x2E
- ldrsh r4, [r7, r0]
- adds r0, r6, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r5, r0, 16
- mov r2, r8
- cmp r2, 0
- beq _080A6EB8
- movs r0, 0x1
- orrs r6, r0
- b _080A6EBC
-_080A6EB8:
- ldr r0, =0x0000fffe
- ands r6, r0
-_080A6EBC:
- mov r3, r9
- cmp r3, 0
- beq _080A6ECC
- movs r0, 0x1
- orrs r5, r0
- b _080A6ED0
- .pool
-_080A6ECC:
- ldr r0, =0x0000fffe
- ands r5, r0
-_080A6ED0:
- movs r0, 0
- strh r6, [r7, 0x30]
- strh r5, [r7, 0x32]
- strh r0, [r7, 0x36]
- strh r0, [r7, 0x34]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end obj_translate_based_on_private_1_2_3_4
-
- thumb_func_start sub_80A6EEC
-sub_80A6EEC: @ 80A6EEC
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
- ldr r1, =sub_80A6F98
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6EEC
-
- thumb_func_start sub_80A6F14
-sub_80A6F14: @ 80A6F14
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
- ldr r1, =sub_80A6FB4
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A6F14
-
- thumb_func_start sub_80A6F3C
-sub_80A6F3C: @ 80A6F3C
- push {r4-r6,lr}
- adds r2, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bne _080A6F4C
- movs r0, 0x1
- b _080A6F90
-_080A6F4C:
- ldrh r1, [r2, 0x30]
- ldrh r4, [r2, 0x32]
- ldrh r6, [r2, 0x34]
- ldrh r5, [r2, 0x36]
- adds r0, r6, r1
- lsls r3, r0, 16
- lsrs r6, r3, 16
- adds r0, r5, r4
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _080A6F6E
- lsrs r0, r3, 24
- negs r0, r0
- b _080A6F70
-_080A6F6E:
- lsrs r0, r3, 24
-_080A6F70:
- strh r0, [r2, 0x24]
- movs r0, 0x1
- ands r4, r0
- cmp r4, 0
- beq _080A6F80
- lsrs r0, r5, 8
- negs r0, r0
- b _080A6F82
-_080A6F80:
- lsrs r0, r5, 8
-_080A6F82:
- strh r0, [r2, 0x26]
- strh r6, [r2, 0x34]
- strh r5, [r2, 0x36]
- ldrh r0, [r2, 0x2E]
- subs r0, 0x1
- strh r0, [r2, 0x2E]
- movs r0, 0
-_080A6F90:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80A6F3C
-
- thumb_func_start sub_80A6F98
-sub_80A6F98: @ 80A6F98
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6F3C
- lsls r0, 24
- cmp r0, 0
- beq _080A6FAC
- adds r0, r4, 0
- bl sub_80A62DC
-_080A6FAC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6F98
-
- thumb_func_start sub_80A6FB4
-sub_80A6FB4: @ 80A6FB4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8039E9C
- adds r0, r4, 0
- bl sub_80A6F3C
- lsls r0, 24
- cmp r0, 0
- beq _080A6FCE
- adds r0, r4, 0
- bl sub_80A62DC
-_080A6FCE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6FB4
-
- thumb_func_start sub_80A6FD4
-sub_80A6FD4: @ 80A6FD4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- subs r0, r1, r0
- cmp r0, 0
- bge _080A6FE8
- negs r0, r0
-_080A6FE8:
- lsls r0, 8
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A6FD4
-
- thumb_func_start sub_80A7000
-sub_80A7000: @ 80A7000
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl sub_80A6FD4
- ldr r1, =sub_80A6F98
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7000
-
- thumb_func_start sub_80A7028
-sub_80A7028: @ 80A7028
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- movs r0, 0x32
- ldrsh r1, [r7, r0]
- movs r2, 0x30
- ldrsh r0, [r7, r2]
- subs r1, r0
- movs r3, 0x36
- ldrsh r2, [r7, r3]
- movs r3, 0x34
- ldrsh r0, [r7, r3]
- subs r2, r0
- lsrs r0, r1, 31
- mov r8, r0
- lsrs r3, r2, 31
- mov r9, r3
- cmp r1, 0
- bge _080A7054
- negs r1, r1
-_080A7054:
- lsls r0, r1, 20
- lsrs r6, r0, 16
- adds r0, r2, 0
- cmp r0, 0
- bge _080A7060
- negs r0, r0
-_080A7060:
- lsls r0, 20
- lsrs r5, r0, 16
- movs r0, 0x2E
- ldrsh r4, [r7, r0]
- adds r0, r6, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r5, r0, 16
- mov r2, r8
- cmp r2, 0
- beq _080A708C
- movs r0, 0x1
- orrs r6, r0
- b _080A7090
-_080A708C:
- ldr r0, =0x0000fffe
- ands r6, r0
-_080A7090:
- mov r3, r9
- cmp r3, 0
- beq _080A70A0
- movs r0, 0x1
- orrs r5, r0
- b _080A70A4
- .pool
-_080A70A0:
- ldr r0, =0x0000fffe
- ands r5, r0
-_080A70A4:
- movs r0, 0
- strh r6, [r7, 0x30]
- strh r5, [r7, 0x32]
- strh r0, [r7, 0x36]
- strh r0, [r7, 0x34]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7028
-
- thumb_func_start sub_80A70C0
-sub_80A70C0: @ 80A70C0
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl sub_80A7028
- ldr r1, =sub_80A7144
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A70C0
-
- thumb_func_start sub_80A70E8
-sub_80A70E8: @ 80A70E8
- push {r4-r6,lr}
- adds r2, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bne _080A70F8
- movs r0, 0x1
- b _080A713C
-_080A70F8:
- ldrh r1, [r2, 0x30]
- ldrh r4, [r2, 0x32]
- ldrh r6, [r2, 0x34]
- ldrh r5, [r2, 0x36]
- adds r0, r6, r1
- lsls r3, r0, 16
- lsrs r6, r3, 16
- adds r0, r5, r4
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _080A711A
- lsrs r0, r3, 20
- negs r0, r0
- b _080A711C
-_080A711A:
- lsrs r0, r3, 20
-_080A711C:
- strh r0, [r2, 0x24]
- movs r0, 0x1
- ands r4, r0
- cmp r4, 0
- beq _080A712C
- lsrs r0, r5, 4
- negs r0, r0
- b _080A712E
-_080A712C:
- lsrs r0, r5, 4
-_080A712E:
- strh r0, [r2, 0x26]
- strh r6, [r2, 0x34]
- strh r5, [r2, 0x36]
- ldrh r0, [r2, 0x2E]
- subs r0, 0x1
- strh r0, [r2, 0x2E]
- movs r0, 0
-_080A713C:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80A70E8
-
- thumb_func_start sub_80A7144
-sub_80A7144: @ 80A7144
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A70E8
- lsls r0, 24
- cmp r0, 0
- beq _080A7158
- adds r0, r4, 0
- bl sub_80A62DC
-_080A7158:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A7144
-
- thumb_func_start sub_80A7160
-sub_80A7160: @ 80A7160
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- subs r0, r1, r0
- cmp r0, 0
- bge _080A7174
- negs r0, r0
-_080A7174:
- lsls r0, 4
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_80A7028
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A7160
-
- thumb_func_start sub_80A718C
-sub_80A718C: @ 80A718C
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- adds r0, r4, 0
- bl sub_80A7160
- ldr r1, =sub_80A7144
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A718C
-
- thumb_func_start obj_id_set_rotscale
-obj_id_set_rotscale: @ 80A71B4
- push {r4,r5,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- lsls r3, 16
- lsrs r3, 16
- ldr r5, =0xffff0000
- lsls r2, 16
- lsrs r1, 16
- orrs r1, r2
- str r1, [sp]
- ldr r0, [sp, 0x4]
- ands r0, r5
- orrs r0, r3
- str r0, [sp, 0x4]
- bl sub_80A7238
- lsls r0, 24
- cmp r0, 0
- beq _080A71F0
- mov r0, sp
- ldrh r0, [r0]
- negs r0, r0
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [sp]
- ands r1, r5
- orrs r1, r0
- str r1, [sp]
-_080A71F0:
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x3]
- lsls r4, 26
- lsrs r4, 27
- add r5, sp, 0x8
- mov r0, sp
- adds r1, r5, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ObjAffineSet
- ldr r0, =gOamMatrices
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r5]
- strh r0, [r4]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x2]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x4]
- ldrh r0, [r5, 0x6]
- strh r0, [r4, 0x6]
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end obj_id_set_rotscale
-
- thumb_func_start sub_80A7238
-sub_80A7238: @ 80A7238
- push {r4,lr}
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A7268
- ldr r4, =gSprites
- movs r0, 0
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- movs r2, 0x32
- ldrsh r0, [r1, r2]
- cmp r0, 0xC9
- beq _080A7268
- movs r0, 0x1
- b _080A726A
- .pool
-_080A7268:
- movs r0, 0
-_080A726A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A7238
-
- thumb_func_start sub_80A7270
-sub_80A7270: @ 80A7270
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- ldr r1, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r4, r0, r1
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r7, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A72A6
- adds r0, r7, 0
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A72B4
-_080A72A6:
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_080A72B4:
- ldr r1, =gSprites
- lsls r4, r6, 4
- adds r0, r4, r6
- lsls r0, 2
- adds r5, r0, r1
- movs r0, 0x3
- mov r1, r8
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r5, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x1]
- adds r2, r5, 0
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A7312
- ldrb r0, [r5, 0x1]
- lsls r0, 30
- cmp r0, 0
- bne _080A7312
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x6]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x3]
-_080A7312:
- ldr r1, =gSprites
- adds r0, r4, r6
- lsls r0, 2
- adds r0, r1
- ldrb r3, [r0, 0x1]
- movs r1, 0x3
- orrs r3, r1
- strb r3, [r0, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r0, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- bl CalcCenterToCornerVec
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7270
-
- thumb_func_start sub_80A7344
-sub_80A7344: @ 80A7344
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl obj_id_set_rotscale
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrb r2, [r0, 0x1]
- movs r1, 0x4
- negs r1, r1
- ands r1, r2
- movs r2, 0x1
- orrs r1, r2
- movs r2, 0xD
- negs r2, r2
- ands r1, r2
- strb r1, [r0, 0x1]
- adds r3, r0, 0
- adds r3, 0x2C
- ldrb r2, [r3]
- movs r1, 0x7F
- ands r1, r2
- strb r1, [r3]
- ldrb r3, [r0, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r0, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- bl CalcCenterToCornerVec
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7344
-
- thumb_func_start sub_80A73A0
-sub_80A73A0: @ 80A73A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r0, [r2, 0x3]
- lsls r0, 26
- lsrs r0, 27
- ldr r1, =gOamMatrices
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x4]
- movs r3, 0x4
- ldrsh r0, [r0, r3]
- cmp r0, 0
- bge _080A73CC
- negs r0, r0
- lsls r0, 16
- lsrs r1, r0, 16
-_080A73CC:
- lsls r0, r1, 16
- asrs r0, 19
- strh r0, [r2, 0x26]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A73A0
-
- thumb_func_start sub_80A73E0
-sub_80A73E0: @ 80A73E0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- adds r4, r0, 0
- ldr r0, [sp, 0x28]
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 16
- lsrs r5, r2, 16
- lsls r3, 16
- lsrs r7, r3, 16
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldrb r0, [r4, 0x1]
- lsls r0, 30
- lsrs r0, 30
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A7486
- adds r0, r4, 0
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
- cmp r6, 0
- beq _080A742E
- ldrb r3, [r4, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- adds r0, r4, 0
- bl CalcCenterToCornerVec
-_080A742E:
- ldr r6, =0xffff0000
- lsls r0, r7, 16
- orrs r5, r0
- str r5, [sp]
- ldr r0, [sp, 0x4]
- ands r0, r6
- mov r1, r8
- orrs r0, r1
- str r0, [sp, 0x4]
- bl sub_80A7238
- lsls r0, 24
- cmp r0, 0
- beq _080A745C
- mov r0, sp
- ldrh r0, [r0]
- negs r0, r0
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [sp]
- ands r1, r6
- orrs r1, r0
- str r1, [sp]
-_080A745C:
- ldrb r4, [r4, 0x3]
- lsls r4, 26
- lsrs r4, 27
- add r5, sp, 0x8
- mov r0, sp
- adds r1, r5, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ObjAffineSet
- ldr r0, =gOamMatrices
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r5]
- strh r0, [r4]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x2]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x4]
- ldrh r0, [r5, 0x6]
- strh r0, [r4, 0x6]
-_080A7486:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A73E0
-
- thumb_func_start sub_80A749C
-sub_80A749C: @ 80A749C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- movs r3, 0x80
- lsls r3, 1
- movs r0, 0
- str r0, [sp]
- adds r0, r4, 0
- movs r1, 0x1
- adds r2, r3, 0
- bl sub_80A73E0
- adds r2, r4, 0
- adds r2, 0x2C
- ldrb r1, [r2]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2]
- ldrb r3, [r4, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- adds r0, r4, 0
- bl CalcCenterToCornerVec
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A749C
-
- thumb_func_start sub_80A74DC
-sub_80A74DC: @ 80A74DC
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl ArcTan2
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_80A74DC
-
- thumb_func_start sub_80A74F4
-sub_80A74F4: @ 80A74F4
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl sub_80A74DC
- lsls r0, 16
- negs r0, r0
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_80A74F4
-
- thumb_func_start sub_80A750C
-sub_80A750C: @ 80A750C
- push {r4-r7,lr}
- lsls r1, 24
- lsls r0, 20
- lsrs r0, 16
- cmp r1, 0
- bne _080A7588
- ldr r2, =gPlttBufferUnfaded
- ldr r1, =gPlttBufferFaded
- lsls r0, 1
- adds r4, r0, r1
- adds r5, r0, r2
- movs r6, 0xF
-_080A7524:
- ldr r0, [r5]
- lsls r2, r0, 27
- lsrs r2, 27
- lsls r1, r0, 22
- lsrs r1, 27
- adds r2, r1
- lsls r0, 17
- lsrs r0, 27
- adds r0, r2
- movs r1, 0x3
- bl __udivsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1F
- ands r0, r1
- ldrb r1, [r4]
- movs r3, 0x20
- negs r3, r3
- adds r2, r3, 0
- ands r1, r2
- orrs r1, r0
- strb r1, [r4]
- lsls r3, r0, 5
- ldrh r1, [r4]
- ldr r7, =0xfffffc1f
- adds r2, r7, 0
- ands r1, r2
- orrs r1, r3
- strh r1, [r4]
- lsls r0, 2
- ldrb r1, [r4, 0x1]
- movs r3, 0x7D
- negs r3, r3
- adds r2, r3, 0
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0x1]
- adds r4, 0x2
- adds r5, 0x2
- subs r6, 0x1
- cmp r6, 0
- bge _080A7524
- b _080A7598
- .pool
-_080A7588:
- lsls r1, r0, 1
- ldr r0, =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, =gPlttBufferFaded
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
-_080A7598:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A750C
-
- thumb_func_start sub_80A75AC
-sub_80A75AC: @ 80A75AC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r4, [sp, 0x28]
- ldr r5, [sp, 0x2C]
- ldr r6, [sp, 0x30]
- lsls r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- lsls r3, 24
- lsrs r3, 24
- mov r9, r3
- lsls r4, 24
- lsrs r4, 24
- mov r10, r4
- lsls r5, 24
- lsrs r5, 24
- str r5, [sp]
- lsls r6, 24
- lsrs r6, 24
- str r6, [sp, 0x4]
- movs r4, 0
- cmp r0, 0
- beq _080A7602
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A75F6
- movs r4, 0xE
- b _080A7602
-_080A75F6:
- bl sub_80A6D94
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0x1
- lsls r4, r0
-_080A7602:
- cmp r7, 0
- beq _080A7614
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A7614:
- mov r0, r8
- cmp r0, 0
- beq _080A7628
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A7628:
- mov r0, r9
- cmp r0, 0
- beq _080A764E
- ldr r6, =gBattleAnimAttacker
- ldrb r0, [r6]
- movs r5, 0x2
- eors r0, r5
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A764E
- ldrb r0, [r6]
- eors r0, r5
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A764E:
- mov r0, r10
- cmp r0, 0
- beq _080A7674
- ldr r6, =gBattleAnimTarget
- ldrb r0, [r6]
- movs r5, 0x2
- eors r0, r5
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A7674
- ldrb r0, [r6]
- eors r0, r5
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A7674:
- ldr r0, [sp]
- cmp r0, 0
- beq _080A769A
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A7694
- movs r0, 0x80
- lsls r0, 1
- b _080A7698
- .pool
-_080A7694:
- movs r0, 0x80
- lsls r0, 7
-_080A7698:
- orrs r4, r0
-_080A769A:
- ldr r0, [sp, 0x4]
- cmp r0, 0
- beq _080A76B0
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A76B0
- movs r0, 0x80
- lsls r0, 2
- orrs r4, r0
-_080A76B0:
- adds r0, r4, 0
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80A75AC
-
- thumb_func_start sub_80A76C4
-sub_80A76C4: @ 80A76C4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- movs r4, 0
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A76F2
- cmp r5, 0
- beq _080A77A0
- movs r4, 0x80
- lsls r4, 11
- b _080A77A0
-_080A76F2:
- cmp r5, 0
- beq _080A771A
- movs r0, 0
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A771A
- movs r0, 0
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x10
- movs r4, 0x1
- lsls r4, r0
-_080A771A:
- cmp r6, 0
- beq _080A7746
- movs r0, 0x2
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A7746
- movs r0, 0x2
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A7746:
- cmp r7, 0
- beq _080A7772
- movs r0, 0x1
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A7772
- movs r0, 0x1
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A7772:
- mov r0, r8
- cmp r0, 0
- beq _080A77A0
- movs r0, 0x3
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A77A0
- movs r0, 0x3
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- orrs r4, r0
-_080A77A0:
- adds r0, r4, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80A76C4
-
- thumb_func_start sub_80A77AC
-sub_80A77AC: @ 80A77AC
- lsls r0, 24
- lsrs r0, 24
- bx lr
- thumb_func_end sub_80A77AC
-
- thumb_func_start sub_80A77B4
-sub_80A77B4: @ 80A77B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80A77B4
-
- thumb_func_start sub_80A77C8
-sub_80A77C8: @ 80A77C8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080A7806
- ldr r2, =gBattleAnimArgs
- movs r3, 0x6
- ldrsh r0, [r2, r3]
- movs r1, 0
- cmp r0, 0
- bne _080A77E2
- movs r1, 0x1
-_080A77E2:
- movs r3, 0x4
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _080A77F8
- adds r0, r4, 0
- bl sub_80A69CC
- b _080A77FE
- .pool
-_080A77F8:
- adds r0, r4, 0
- bl sub_80A6980
-_080A77FE:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- b _080A781A
-_080A7806:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x30
- ands r0, r1
- cmp r0, 0
- beq _080A781A
- adds r0, r4, 0
- bl move_anim_8074EE0
-_080A781A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A77C8
-
- thumb_func_start sub_80A7820
-sub_80A7820: @ 80A7820
- push {r4-r7,lr}
- adds r5, r0, 0
- ldr r6, =gBattleAnimArgs
- movs r1, 0xA
- ldrsh r0, [r6, r1]
- movs r1, 0xFF
- lsls r1, 8
- ands r0, r1
- movs r1, 0
- cmp r0, 0
- bne _080A7838
- movs r1, 0x1
-_080A7838:
- ldrb r0, [r6, 0xA]
- movs r7, 0x1
- cmp r0, 0
- bne _080A7842
- movs r7, 0x3
-_080A7842:
- adds r0, r5, 0
- bl sub_80A69CC
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A785C
- ldrh r0, [r6, 0x4]
- negs r0, r0
- strh r0, [r6, 0x4]
-_080A785C:
- ldrh r0, [r6, 0x8]
- strh r0, [r5, 0x2E]
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r6, 0x4]
- adds r0, r1
- strh r0, [r5, 0x32]
- ldrb r0, [r4]
- adds r1, r7, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r6, [r6, 0x6]
- adds r0, r6
- strh r0, [r5, 0x36]
- ldr r0, =sub_80A6EEC
- str r0, [r5, 0x1C]
- ldr r1, =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData6
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7820
-
- thumb_func_start sub_80A78AC
-sub_80A78AC: @ 80A78AC
- 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 _080A78CC
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_080A78CC:
- 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_80A791C
- str r0, [r6, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A78AC
-
- thumb_func_start sub_80A791C
-sub_80A791C: @ 80A791C
- push {r4,lr}
- adds r4, r0, 0
- bl AnimateBallThrow
- lsls r0, 24
- cmp r0, 0
- beq _080A7930
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080A7930:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A791C
-
- thumb_func_start sub_80A7938
-sub_80A7938: @ 80A7938
- push {r4-r7,lr}
- adds r5, r0, 0
- ldr r0, =gBattleAnimArgs
- movs r2, 0xC
- ldrsh r1, [r0, r2]
- cmp r1, 0
- bne _080A7950
- movs r4, 0x1
- movs r7, 0x3
- b _080A7954
- .pool
-_080A7950:
- movs r4, 0
- movs r7, 0x1
-_080A7954:
- movs r1, 0xA
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080A796C
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A69CC
- ldr r0, =gBattleAnimAttacker
- b _080A7976
- .pool
-_080A796C:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A6980
- ldr r0, =gBattleAnimTarget
-_080A7976:
- ldrb r6, [r0]
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A798E
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_080A798E:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A6980
- ldr r4, =gBattleAnimArgs
- ldrh r0, [r4, 0x8]
- strh r0, [r5, 0x2E]
- adds r0, r6, 0
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r2, [r4, 0x4]
- adds r0, r2
- strh r0, [r5, 0x32]
- adds r0, r6, 0
- adds r1, r7, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r4, [r4, 0x6]
- adds r0, r4
- strh r0, [r5, 0x36]
- ldr r0, =sub_80A6EEC
- str r0, [r5, 0x1C]
- ldr r1, =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData6
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7938
-
- thumb_func_start duplicate_obj_of_side_rel2move_in_transparent_mode
-duplicate_obj_of_side_rel2move_in_transparent_mode: @ 80A79E8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xFF
- beq _080A7A52
- movs r6, 0
- ldr r2, =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r1, r0, 2
-_080A7A04:
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r4, r0, r2
- adds r5, r4, 0
- adds r5, 0x3E
- ldrb r0, [r5]
- lsls r0, 31
- cmp r0, 0
- bne _080A7A48
- adds r0, r4, 0
- adds r1, r2
- movs r2, 0x44
- bl memcpy
- ldrb r1, [r4, 0x1]
- movs r2, 0xD
- negs r2, r2
- adds r0, r2, 0
- ands r1, r0
- movs r0, 0x4
- orrs r1, r0
- strb r1, [r4, 0x1]
- ldrb r0, [r5]
- adds r2, 0x8
- adds r1, r2, 0
- ands r0, r1
- strb r0, [r5]
- lsls r0, r6, 16
- asrs r0, 16
- b _080A7A56
- .pool
-_080A7A48:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x3F
- bls _080A7A04
-_080A7A52:
- movs r0, 0x1
- negs r0, r0
-_080A7A56:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end duplicate_obj_of_side_rel2move_in_transparent_mode
-
- thumb_func_start obj_delete_but_dont_free_vram
-obj_delete_but_dont_free_vram: @ 80A7A5C
- push {lr}
- adds r3, r0, 0
- adds r3, 0x3F
- ldrb r1, [r3]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r3]
- bl DestroySprite
- pop {r0}
- bx r0
- thumb_func_end obj_delete_but_dont_free_vram
-
- thumb_func_start sub_80A7A74
-sub_80A7A74: @ 80A7A74
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- movs r3, 0
- ldr r2, =gBattleAnimArgs
- movs r0, 0x4
- ldrsh r1, [r2, r0]
- movs r4, 0
- ldrsh r0, [r2, r4]
- cmp r1, r0
- ble _080A7A8E
- movs r3, 0x1
-_080A7A8E:
- cmp r1, r0
- bge _080A7A94
- ldr r3, =0x0000ffff
-_080A7A94:
- movs r0, 0x6
- ldrsh r1, [r2, r0]
- movs r4, 0x2
- ldrsh r0, [r2, r4]
- cmp r1, r0
- ble _080A7AA2
- movs r6, 0x1
-_080A7AA2:
- cmp r1, r0
- bge _080A7AA8
- ldr r6, =0x0000ffff
-_080A7AA8:
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- movs r1, 0
- strh r1, [r4, 0x8]
- ldrh r0, [r2, 0x8]
- strh r0, [r4, 0xA]
- strh r1, [r4, 0xC]
- ldrh r0, [r2]
- strh r0, [r4, 0xE]
- ldrh r0, [r2, 0x2]
- strh r0, [r4, 0x10]
- strh r3, [r4, 0x12]
- strh r6, [r4, 0x14]
- ldrh r0, [r2, 0x4]
- strh r0, [r4, 0x16]
- ldrh r0, [r2, 0x6]
- strh r0, [r4, 0x18]
- ldrh r1, [r2, 0x2]
- lsls r1, 8
- ldrh r0, [r2]
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- ldr r0, =sub_80A7AFC
- str r0, [r4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7A74
-
- thumb_func_start sub_80A7AFC
-sub_80A7AFC: @ 80A7AFC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xA
- ldrsh r1, [r4, r2]
- cmp r0, r1
- ble _080A7B90
- movs r0, 0
- strh r0, [r4, 0x8]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A7B4C
- ldrh r2, [r4, 0xE]
- movs r3, 0xE
- ldrsh r1, [r4, r3]
- movs r3, 0x16
- ldrsh r0, [r4, r3]
- cmp r1, r0
- beq _080A7B60
- ldrh r0, [r4, 0x12]
- adds r0, r2, r0
- strh r0, [r4, 0xE]
- b _080A7B60
- .pool
-_080A7B4C:
- ldrh r2, [r4, 0x10]
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- movs r3, 0x18
- ldrsh r0, [r4, r3]
- cmp r1, r0
- beq _080A7B60
- ldrh r0, [r4, 0x14]
- adds r0, r2, r0
- strh r0, [r4, 0x10]
-_080A7B60:
- ldrh r1, [r4, 0x10]
- lsls r1, 8
- ldrh r0, [r4, 0xE]
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- movs r0, 0xE
- ldrsh r1, [r4, r0]
- movs r2, 0x16
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080A7B90
- movs r3, 0x10
- ldrsh r1, [r4, r3]
- movs r2, 0x18
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080A7B90
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080A7B90:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A7AFC
-
- thumb_func_start sub_80A7B98
-sub_80A7B98: @ 80A7B98
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gBattleAnimArgs
- ldrb r0, [r0]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xFF
- bne _080A7BBC
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _080A7BE2
- .pool
-_080A7BBC:
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r2, =gSprites
- lsls r1, r3, 4
- adds r1, r3
- lsls r1, 2
- adds r1, r2
- ldrb r1, [r1, 0x5]
- lsrs r1, 4
- lsls r1, 4
- ldr r3, =0x00000101
- adds r2, r3, 0
- adds r1, r2
- strh r1, [r0, 0x8]
- bl sub_80A7BF4
-_080A7BE2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7B98
-
- thumb_func_start sub_80A7BF4
-sub_80A7BF4: @ 80A7BF4
- ldr r3, =gBattleAnimArgs
- ldrh r1, [r3, 0x2]
- movs r2, 0
- strh r1, [r0, 0xA]
- strh r2, [r0, 0xC]
- ldrh r1, [r3, 0x4]
- strh r1, [r0, 0xE]
- strh r2, [r0, 0x10]
- ldrh r1, [r3, 0x6]
- strh r1, [r0, 0x12]
- strh r2, [r0, 0x14]
- ldrh r1, [r3, 0x8]
- strh r1, [r0, 0x16]
- ldr r1, =sub_80A7C1C
- str r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80A7BF4
-
- thumb_func_start sub_80A7C1C
-sub_80A7C1C: @ 80A7C1C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- ldrh r0, [r4, 0x10]
- adds r0, 0x1
- strh r0, [r4, 0x10]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x12
- ldrsh r1, [r4, r2]
- cmp r0, r1
- blt _080A7CAC
- movs r0, 0
- strh r0, [r4, 0x10]
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080A7C78
- ldrh r2, [r4, 0xC]
- adds r2, 0x1
- strh r2, [r4, 0xC]
- ldrh r0, [r4, 0x8]
- lsls r2, 24
- lsrs r2, 24
- ldrh r3, [r4, 0xA]
- movs r1, 0xF
- bl BlendPalette
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080A7CAC
- movs r0, 0x1
- strh r0, [r4, 0x14]
- b _080A7CAC
- .pool
-_080A7C78:
- ldrh r2, [r4, 0xC]
- subs r2, 0x1
- strh r2, [r4, 0xC]
- ldrh r0, [r4, 0x8]
- lsls r2, 24
- lsrs r2, 24
- ldrh r3, [r4, 0xA]
- movs r1, 0xF
- bl BlendPalette
- movs r0, 0xC
- ldrsh r1, [r4, r0]
- cmp r1, 0
- bne _080A7CAC
- ldrh r0, [r4, 0x16]
- subs r0, 0x1
- strh r0, [r4, 0x16]
- lsls r0, 16
- cmp r0, 0
- beq _080A7CA6
- strh r1, [r4, 0x10]
- strh r1, [r4, 0x14]
- b _080A7CAC
-_080A7CA6:
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080A7CAC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A7C1C
-
- thumb_func_start sub_80A7CB4
-sub_80A7CB4: @ 80A7CB4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gBattleAnimArgs
- ldrh r0, [r0]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _080A7CD8
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _080A7CEE
- .pool
-_080A7CD8:
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- lsls r1, r2, 4
- ldr r2, =0x00000101
- adds r1, r2
- strh r1, [r0, 0x8]
- bl sub_80A7BF4
-_080A7CEE:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7CB4
-
- thumb_func_start sub_80A7CFC
-sub_80A7CFC: @ 80A7CFC
- push {r4,lr}
- adds r3, r0, 0
- adds r4, r1, 0
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- strh r1, [r3, 0x16]
- strh r1, [r3, 0x18]
- strh r1, [r3, 0x1A]
- strh r4, [r3, 0x26]
- movs r0, 0x80
- lsls r0, 1
- strh r0, [r3, 0x1C]
- strh r0, [r3, 0x1E]
- strh r1, [r3, 0x20]
- adds r0, r3, 0
- adds r0, 0x22
- adds r3, 0x24
- adds r1, r3, 0
- bl sub_80A8048
- adds r0, r4, 0
- movs r1, 0
- bl sub_80A7270
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A7CFC
-
- thumb_func_start sub_80A7D34
-sub_80A7D34: @ 80A7D34
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r5, =gUnknown_02038444
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- movs r2, 0x24
- ldrsh r1, [r4, r2]
- bl sub_80A8050
- movs r3, 0x16
- ldrsh r1, [r4, r3]
- lsls r1, 3
- adds r1, r0, r1
- str r1, [r5]
- movs r6, 0
- ldrsh r2, [r1, r6]
- ldr r0, =0x00007ffe
- cmp r2, r0
- beq _080A7DDC
- cmp r2, r0
- bgt _080A7E3C
- subs r0, 0x1
- cmp r2, r0
- beq _080A7DE2
- ldrb r0, [r1, 0x5]
- cmp r0, 0
- bne _080A7D82
- ldrh r0, [r1]
- strh r0, [r4, 0x1C]
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x1E]
- ldrb r0, [r1, 0x4]
- strh r0, [r4, 0x20]
- ldrh r0, [r4, 0x16]
- adds r0, 0x1
- strh r0, [r4, 0x16]
- adds r0, r1, 0
- adds r0, 0x8
- str r0, [r5]
-_080A7D82:
- ldr r1, [r5]
- ldrh r0, [r1]
- ldrh r2, [r4, 0x1C]
- adds r0, r2
- strh r0, [r4, 0x1C]
- ldrh r0, [r1, 0x2]
- ldrh r3, [r4, 0x1E]
- adds r0, r3
- strh r0, [r4, 0x1E]
- ldrh r0, [r4, 0x20]
- ldrb r1, [r1, 0x4]
- adds r0, r1
- strh r0, [r4, 0x20]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0x1C
- ldrsh r1, [r4, r6]
- movs r3, 0x1E
- ldrsh r2, [r4, r3]
- ldrh r3, [r4, 0x20]
- bl obj_id_set_rotscale
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A7E6C
- ldrh r0, [r4, 0x18]
- adds r0, 0x1
- strh r0, [r4, 0x18]
- lsls r0, 16
- asrs r0, 16
- ldr r1, [r5]
- ldrb r1, [r1, 0x5]
- cmp r0, r1
- blt _080A7E62
- movs r0, 0
- strh r0, [r4, 0x18]
- b _080A7E34
- .pool
-_080A7DDC:
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x16]
- b _080A7E62
-_080A7DE2:
- ldrh r2, [r1, 0x2]
- movs r6, 0x2
- ldrsh r0, [r1, r6]
- cmp r0, 0
- beq _080A7E34
- ldrh r1, [r4, 0x1A]
- movs r3, 0x1A
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _080A7E02
- subs r0, r1, 0x1
- strh r0, [r4, 0x1A]
- lsls r0, 16
- cmp r0, 0
- bne _080A7E04
- b _080A7E34
-_080A7E02:
- strh r2, [r4, 0x1A]
-_080A7E04:
- movs r6, 0x16
- ldrsh r0, [r4, r6]
- cmp r0, 0
- beq _080A7E62
- ldr r3, =gUnknown_02038444
- ldr r5, =0x00007ffd
-_080A7E10:
- ldrh r2, [r4, 0x16]
- subs r1, r2, 0x1
- strh r1, [r4, 0x16]
- ldr r0, [r3]
- subs r0, 0x8
- str r0, [r3]
- movs r6, 0
- ldrsh r0, [r0, r6]
- cmp r0, r5
- beq _080A7E60
- lsls r0, r1, 16
- cmp r0, 0
- bne _080A7E10
- b _080A7E62
- .pool
-_080A7E34:
- ldrh r0, [r4, 0x16]
- adds r0, 0x1
- strh r0, [r4, 0x16]
- b _080A7E62
-_080A7E3C:
- ldr r2, =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x26]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A7344
- movs r0, 0
- b _080A7E64
- .pool
-_080A7E60:
- strh r2, [r4, 0x16]
-_080A7E62:
- movs r0, 0x1
-_080A7E64:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80A7D34
-
- thumb_func_start sub_80A7E6C
-sub_80A7E6C: @ 80A7E6C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80A7F18
- lsls r0, 16
- lsrs r0, 15
- movs r1, 0x40
- subs r5, r1, r0
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r4, r0, r1
- ldrb r1, [r4, 0x3]
- lsls r1, 26
- lsrs r1, 27
- lsls r0, r5, 8
- ldr r2, =gOamMatrices
- lsls r1, 3
- adds r1, r2
- movs r2, 0x6
- ldrsh r1, [r1, r2]
- bl __divsi3
- cmp r0, 0x80
- ble _080A7EA8
- movs r0, 0x80
-_080A7EA8:
- subs r0, r5, r0
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- strh r0, [r4, 0x26]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7E6C
-
- thumb_func_start sub_80A7EC0
-sub_80A7EC0: @ 80A7EC0
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A7F18
- lsls r0, 16
- lsrs r0, 15
- movs r1, 0x40
- subs r5, r1, r0
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r4, r0, r1
- ldrb r1, [r4, 0x3]
- lsls r1, 26
- lsrs r1, 27
- lsls r0, r5, 8
- ldr r2, =gOamMatrices
- lsls r1, 3
- adds r1, r2
- movs r2, 0x6
- ldrsh r1, [r1, r2]
- bl __divsi3
- cmp r0, 0x80
- ble _080A7F00
- movs r0, 0x80
-_080A7F00:
- subs r0, r5, r0
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- strh r0, [r4, 0x26]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A7EC0
-
- thumb_func_start sub_80A7F18
-sub_80A7F18: @ 80A7F18
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x2E]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- ldr r1, =gBattlerSpriteIds
- ldr r7, =0x00000181
- ldr r0, =gBattleMonForms
- adds r6, r5, r0
-_080A7F38:
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, r2
- beq _080A7F42
- b _080A8034
-_080A7F42:
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A7F78
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x18]
- ldrh r2, [r0]
- ldr r1, =gUnknown_083021D8
- lsls r0, r2, 2
- adds r0, r1
- ldrb r0, [r0, 0x1]
- b _080A8042
- .pool
-_080A7F78:
- lsls r0, r4, 24
- lsrs r0, 24
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080A7FD8
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A7FC0
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r2, r0, 16
- b _080A7FC2
- .pool
-_080A7FC0:
- ldrh r2, [r1, 0x2]
-_080A7FC2:
- cmp r2, r7
- bne _080A7FD0
- ldr r0, =gUnknown_08525F8C
- b _080A8018
- .pool
-_080A7FD0:
- ldr r0, =gUnknown_083021D8
- b _080A8026
- .pool
-_080A7FD8:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A8010
- ldr r1, =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r2, r0, 16
- b _080A8012
- .pool
-_080A8010:
- ldrh r2, [r1, 0x2]
-_080A8012:
- cmp r2, r7
- bne _080A8024
- ldr r0, =gUnknown_08525F88
-_080A8018:
- ldrb r1, [r6]
- adds r1, r0
- ldrb r0, [r1]
- b _080A8042
- .pool
-_080A8024:
- ldr r0, =gMonFrontPicCoords
-_080A8026:
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- b _080A8042
- .pool
-_080A8034:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bhi _080A8040
- b _080A7F38
-_080A8040:
- movs r0, 0x40
-_080A8042:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80A7F18
-
- thumb_func_start sub_80A8048
-sub_80A8048: @ 80A8048
- strh r2, [r0]
- asrs r2, 16
- strh r2, [r1]
- bx lr
- thumb_func_end sub_80A8048
-
- thumb_func_start sub_80A8050
-sub_80A8050: @ 80A8050
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- orrs r0, r1
- bx lr
- thumb_func_end sub_80A8050
-
- thumb_func_start sub_80A805C
-sub_80A805C: @ 80A805C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- mov r8, r0
- adds r5, r3, 0
- ldr r0, [sp, 0x14]
- ldr r4, [sp, 0x18]
- ldr r6, [sp, 0x1C]
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 16
- lsrs r2, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 16
- lsrs r4, 16
- lsls r6, 16
- lsrs r6, 16
- mov r3, r8
- strh r6, [r3, 0x18]
- strh r1, [r3, 0x26]
- strh r2, [r3, 0x1A]
- strh r5, [r3, 0x1C]
- strh r0, [r3, 0x22]
- strh r4, [r3, 0x24]
- lsls r0, 16
- asrs r0, 16
- lsls r2, 16
- asrs r2, 16
- subs r0, r2
- adds r1, r6, 0
- bl __divsi3
- mov r1, r8
- strh r0, [r1, 0x1E]
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- subs r4, r5
- adds r0, r4, 0
- adds r1, r6, 0
- bl __divsi3
- mov r3, r8
- strh r0, [r3, 0x20]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A805C
-
- thumb_func_start sub_80A80C8
-sub_80A80C8: @ 80A80C8
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x18]
- movs r2, 0x18
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080A80DA
- movs r0, 0
- b _080A8136
-_080A80DA:
- subs r0, r1, 0x1
- strh r0, [r4, 0x18]
- lsls r0, 16
- cmp r0, 0
- beq _080A80F4
- ldrh r0, [r4, 0x1E]
- ldrh r3, [r4, 0x1A]
- adds r0, r3
- strh r0, [r4, 0x1A]
- ldrh r0, [r4, 0x20]
- ldrh r1, [r4, 0x1C]
- adds r0, r1
- b _080A80FA
-_080A80F4:
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x1A]
- ldrh r0, [r4, 0x24]
-_080A80FA:
- strh r0, [r4, 0x1C]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x1A
- ldrsh r1, [r4, r2]
- movs r3, 0x1C
- ldrsh r2, [r4, r3]
- movs r3, 0
- bl obj_id_set_rotscale
- movs r0, 0x18
- ldrsh r3, [r4, r0]
- cmp r3, 0
- beq _080A8124
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A7E6C
- b _080A8134
-_080A8124:
- ldr r2, =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r3, [r0, 0x26]
-_080A8134:
- ldrb r0, [r4, 0x18]
-_080A8136:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A80C8
-
- thumb_func_start sub_80A8140
-sub_80A8140: @ 80A8140
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gAnimFriendship
- ldrb r0, [r0]
- movs r1, 0
- cmp r0, 0x1E
- bls _080A815E
- movs r1, 0x1
- cmp r0, 0x64
- bls _080A815E
- movs r1, 0x3
- cmp r0, 0xC8
- bhi _080A815E
- movs r1, 0x2
-_080A815E:
- ldr r0, =gBattleAnimArgs
- strh r1, [r0, 0xE]
- adds r0, r2, 0
- bl DestroyAnimVisualTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8140
-
- thumb_func_start sub_80A8174
-sub_80A8174: @ 80A8174
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r7, r4, 0
- ldr r6, =gBattleAnimTarget
- ldrb r0, [r6]
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A81B4
- ldr r2, =gSprites
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r6]
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3
- adds r2, r4, 0
- ands r2, r0
- lsls r2, 2
- ldrb r3, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x5]
-_080A81B4:
- ldr r0, =gBattleAnimAttacker
- mov r8, r0
- ldrb r0, [r0]
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A81EC
- ldr r2, =gSprites
- ldr r1, =gBattlerSpriteIds
- mov r3, r8
- ldrb r0, [r3]
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3
- adds r2, r4, 0
- ands r2, r0
- lsls r2, 2
- ldrb r3, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x5]
-_080A81EC:
- ldrb r0, [r6]
- movs r5, 0x2
- eors r0, r5
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A8224
- ldr r2, =gSprites
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r6]
- eors r0, r5
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3
- adds r2, r4, 0
- ands r2, r0
- lsls r2, 2
- ldrb r3, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x5]
-_080A8224:
- mov r1, r8
- ldrb r0, [r1]
- eors r0, r5
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A825C
- ldr r2, =gSprites
- ldr r1, =gBattlerSpriteIds
- mov r3, r8
- ldrb r0, [r3]
- eors r0, r5
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3
- ands r7, r0
- lsls r3, r7, 2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
-_080A825C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8174
-
- thumb_func_start sub_80A8278
-sub_80A8278: @ 80A8278
- push {r4-r6,lr}
- movs r5, 0
- ldr r0, =gBattlersCount
- ldrb r0, [r0]
- cmp r5, r0
- bge _080A82D2
- ldr r6, =gSprites
-_080A8286:
- lsls r0, r5, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080A82C8
- adds r0, r4, 0
- bl sub_80A82E4
- ldr r3, =gBattlerSpriteIds
- adds r3, r5, r3
- ldrb r2, [r3]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r6
- adds r1, 0x43
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r2, [r0, 0x5]
- movs r3, 0xD
- negs r3, r3
- adds r1, r3, 0
- ands r2, r1
- movs r1, 0x8
- orrs r2, r1
- strb r2, [r0, 0x5]
-_080A82C8:
- adds r5, 0x1
- ldr r0, =gBattlersCount
- ldrb r0, [r0]
- cmp r5, r0
- blt _080A8286
-_080A82D2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8278
-
- thumb_func_start sub_80A82E4
-sub_80A82E4: @ 80A82E4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A8300
- cmp r4, 0x2
- bne _080A82FC
- movs r0, 0x1E
- b _080A8320
-_080A82FC:
- movs r0, 0x28
- b _080A8320
-_080A8300:
- adds r0, r4, 0
- bl GetBattlerPosition
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1E
- cmp r0, 0
- beq _080A831E
- movs r1, 0x14
- cmp r0, 0x2
- beq _080A831E
- movs r1, 0x32
- cmp r0, 0x1
- bne _080A831E
- movs r1, 0x28
-_080A831E:
- adds r0, r1, 0
-_080A8320:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A82E4
-
- thumb_func_start sub_80A8328
-sub_80A8328: @ 80A8328
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBattlerPosition
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A8344
- movs r0, 0x2
- b _080A835C
-_080A8344:
- cmp r4, 0
- beq _080A834C
- cmp r4, 0x3
- bne _080A8350
-_080A834C:
- movs r0, 0x2
- b _080A8352
-_080A8350:
- movs r0, 0x1
-_080A8352:
- movs r1, 0x4
- bl sub_8118140
- lsls r0, 24
- lsrs r0, 24
-_080A835C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A8328
-
- thumb_func_start sub_80A8364
-sub_80A8364: @ 80A8364
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A838A
- adds r0, r4, 0
- bl GetBattlerPosition
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080A8386
- cmp r0, 0x3
- bne _080A838A
-_080A8386:
- movs r0, 0x2
- b _080A838C
-_080A838A:
- movs r0, 0x1
-_080A838C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A8364
-
- thumb_func_start sub_80A8394
-sub_80A8394: @ 80A8394
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- ldr r4, [sp, 0x30]
- ldr r5, [sp, 0x34]
- ldr r6, [sp, 0x38]
- mov r8, r6
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 16
- lsrs r3, 16
- mov r10, r3
- lsls r4, 16
- lsrs r4, 16
- str r4, [sp, 0x4]
- lsls r5, 24
- lsrs r5, 24
- str r5, [sp, 0x8]
- lsls r0, r7, 3
- ldr r1, =gUnknown_08525FC0
- adds r0, r1
- bl LoadSpriteSheet
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0xC]
- ldr r1, =gUnknown_08525F90
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldrh r0, [r0, 0x2]
- bl AllocSpritePalette
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gMonSpritesGfxPtr
- ldr r0, [r4]
- cmp r0, 0
- beq _080A8412
- movs r1, 0xBE
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0
- bne _080A8412
- movs r0, 0x80
- lsls r0, 6
- bl AllocZeroed
- ldr r1, [r4]
- movs r2, 0xBE
- lsls r2, 1
- adds r1, r2
- str r0, [r1]
-_080A8412:
- mov r3, r9
- cmp r3, 0
- bne _080A84B0
- adds r0, r6, 0
- ldr r1, [sp, 0x3C]
- mov r2, r8
- bl GetFrontSpritePalFromSpeciesAndPersonality
- lsls r1, r5, 20
- movs r2, 0x80
- lsls r2, 17
- adds r1, r2
- lsrs r1, 16
- movs r2, 0x20
- bl LoadCompressedPalette
- ldr r3, [sp, 0x44]
- cmp r3, 0x1
- beq _080A845E
- ldr r0, [sp, 0x40]
- lsls r1, r0, 24
- lsrs r1, 24
- movs r0, 0x5
- bl sub_80688F8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080A845E
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- ldr r2, [sp, 0x40]
- lsls r0, r2, 2
- adds r0, r1
- ldrh r0, [r0, 0x2]
- cmp r0, 0
- beq _080A8488
-_080A845E:
- lsls r0, r6, 3
- ldr r1, =gMonFrontPicTable
- adds r0, r1
- ldr r1, =gMonSpritesGfxPtr
- ldr r1, [r1]
- movs r3, 0xBE
- lsls r3, 1
- adds r1, r3
- ldr r1, [r1]
- movs r2, 0x1
- b _080A850A
- .pool
-_080A8488:
- lsls r0, r6, 3
- ldr r1, =gMonFrontPicTable
- adds r0, r1
- ldr r1, =gMonSpritesGfxPtr
- ldr r1, [r1]
- movs r2, 0xBE
- lsls r2, 1
- adds r1, r2
- ldr r1, [r1]
- movs r2, 0x1
- str r2, [sp]
- adds r2, r6, 0
- mov r3, r8
- bl LoadSpecialPokePic_2
- b _080A8540
- .pool
-_080A84B0:
- adds r0, r6, 0
- ldr r1, [sp, 0x3C]
- mov r2, r8
- bl GetFrontSpritePalFromSpeciesAndPersonality
- lsls r1, r5, 20
- movs r3, 0x80
- lsls r3, 17
- adds r1, r3
- lsrs r1, 16
- movs r2, 0x20
- bl LoadCompressedPalette
- ldr r0, [sp, 0x44]
- cmp r0, 0x1
- beq _080A84F6
- ldr r2, [sp, 0x40]
- lsls r1, r2, 24
- lsrs r1, 24
- movs r0, 0x5
- bl sub_80688F8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080A84F6
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r1, [r0]
- ldr r3, [sp, 0x40]
- lsls r0, r3, 2
- adds r0, r1
- ldrh r2, [r0, 0x2]
- cmp r2, 0
- beq _080A8524
-_080A84F6:
- lsls r0, r6, 3
- ldr r1, =gMonBackPicTable
- adds r0, r1
- ldr r1, =gMonSpritesGfxPtr
- ldr r1, [r1]
- movs r2, 0xBE
- lsls r2, 1
- adds r1, r2
- ldr r1, [r1]
- movs r2, 0
-_080A850A:
- str r2, [sp]
- adds r2, r6, 0
- mov r3, r8
- bl LoadSpecialPokePic_DontHandleDeoxys
- b _080A8540
- .pool
-_080A8524:
- lsls r0, r6, 3
- ldr r1, =gMonBackPicTable
- adds r0, r1
- ldr r1, =gMonSpritesGfxPtr
- ldr r1, [r1]
- movs r3, 0xBE
- lsls r3, 1
- adds r1, r3
- ldr r1, [r1]
- str r2, [sp]
- adds r2, r6, 0
- mov r3, r8
- bl LoadSpecialPokePic_2
-_080A8540:
- ldr r5, =gMonSpritesGfxPtr
- ldr r0, [r5]
- movs r4, 0xBE
- lsls r4, 1
- adds r0, r4
- ldr r0, [r0]
- ldr r2, [sp, 0xC]
- lsls r1, r2, 5
- ldr r3, =0x06010000
- adds r1, r3
- movs r2, 0x80
- lsls r2, 4
- movs r3, 0x1
- bl RequestDma3Copy
- ldr r0, [r5]
- adds r0, r4
- ldr r0, [r0]
- bl Free
- ldr r0, [r5]
- adds r0, r4
- movs r1, 0
- str r1, [r0]
- mov r0, r9
- cmp r0, 0
- bne _080A85A0
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 3
- ldr r1, =gUnknown_08525F90
- adds r0, r1
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- ldr r3, =gMonFrontPicCoords
- b _080A85B2
- .pool
-_080A85A0:
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 3
- ldr r1, =gUnknown_08525F90
- adds r0, r1
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- ldr r3, =gUnknown_083021D8
-_080A85B2:
- lsls r2, r6, 2
- adds r2, r3
- ldrb r2, [r2, 0x1]
- ldr r3, [sp, 0x4]
- adds r2, r3
- lsls r2, 16
- asrs r2, 16
- ldr r3, [sp, 0x8]
- bl CreateSprite
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A85EE
- ldr r3, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r1, r3, 0
- adds r1, 0x10
- adds r1, r0, r1
- ldr r2, =gUnknown_082FF6C0
- str r2, [r1]
- adds r0, r3
- movs r1, 0
- bl StartSpriteAffineAnim
-_080A85EE:
- adds r0, r4, 0
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A8394
-
- thumb_func_start sub_80A8610
-sub_80A8610: @ 80A8610
- push {lr}
- bl DestroySpriteAndFreeResources
- pop {r0}
- bx r0
- thumb_func_end sub_80A8610
-
- thumb_func_start sub_80A861C
-sub_80A861C: @ 80A861C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A86C4
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0, 0x18]
- ldrb r1, [r2, 0x4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A8654
- ldrh r7, [r2, 0x2]
- ldr r2, [r2, 0x10]
- b _080A8658
- .pool
-_080A8654:
- ldrh r7, [r2]
- ldr r2, [r2, 0x8]
-_080A8658:
- cmp r7, 0xC9
- bne _080A86A4
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080A8690
- movs r0, 0xC9
- b _080A869A
-_080A8690:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080A869A:
- lsls r1, r0, 2
- ldr r0, =gUnknown_083021D8
- b _080A8864
- .pool
-_080A86A4:
- ldr r0, =0x00000181
- cmp r7, r0
- bne _080A86AC
- b _080A8834
-_080A86AC:
- movs r0, 0xCE
- lsls r0, 1
- cmp r7, r0
- bhi _080A877C
- lsls r1, r7, 2
- ldr r0, =gUnknown_083021D8
- b _080A8864
- .pool
-_080A86C4:
- mov r0, r8
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080A8790
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r0, [r0]
- mov r1, r8
- lsls r2, r1, 2
- adds r1, r2, r0
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A871C
- ldr r0, =gBattlerPartyIndexes
- mov r1, r8
- lsls r4, r1, 1
- adds r4, r0
- ldrh r0, [r4]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- ldrh r0, [r4]
- muls r0, r6
- adds r0, r5
- movs r1, 0
- bl GetMonData
- adds r2, r0, 0
- b _080A8724
- .pool
-_080A871C:
- ldrh r7, [r1, 0x2]
- ldr r0, =gTransformedPersonalities
- adds r0, r2, r0
- ldr r2, [r0]
-_080A8724:
- cmp r7, 0xC9
- bne _080A8774
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080A8760
- movs r0, 0xC9
- b _080A876A
- .pool
-_080A8760:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080A876A:
- lsls r1, r0, 2
- ldr r0, =gUnknown_083021D8
- b _080A8864
- .pool
-_080A8774:
- movs r0, 0xCE
- lsls r0, 1
- cmp r7, r0
- bls _080A8784
-_080A877C:
- ldr r4, =gUnknown_083021D8
- b _080A8866
- .pool
-_080A8784:
- lsls r1, r7, 2
- ldr r0, =gUnknown_083021D8
- b _080A8864
- .pool
-_080A8790:
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r0, [r0]
- mov r1, r8
- lsls r2, r1, 2
- adds r1, r2, r0
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- bne _080A87DC
- ldr r0, =gBattlerPartyIndexes
- mov r1, r8
- lsls r4, r1, 1
- adds r4, r0
- ldrh r0, [r4]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gEnemyParty
- adds r0, r5
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- ldrh r0, [r4]
- muls r0, r6
- adds r0, r5
- movs r1, 0
- bl GetMonData
- adds r2, r0, 0
- b _080A87E4
- .pool
-_080A87DC:
- ldrh r7, [r1, 0x2]
- ldr r0, =gTransformedPersonalities
- adds r0, r2, r0
- ldr r2, [r0]
-_080A87E4:
- cmp r7, 0xC9
- bne _080A882E
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080A8820
- movs r0, 0xC9
- b _080A882A
- .pool
-_080A8820:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080A882A:
- lsls r1, r0, 2
- b _080A8862
-_080A882E:
- ldr r0, =0x00000181
- cmp r7, r0
- bne _080A8850
-_080A8834:
- ldr r0, =gBattleMonForms
- add r0, r8
- ldrb r0, [r0]
- lsls r0, 2
- ldr r1, =gCastformFrontSpriteCoords
- adds r4, r0, r1
- b _080A8866
- .pool
-_080A8850:
- movs r0, 0xCE
- lsls r0, 1
- cmp r7, r0
- bls _080A8860
- ldr r4, =gMonFrontPicCoords
- b _080A8866
- .pool
-_080A8860:
- lsls r1, r7, 2
-_080A8862:
- ldr r0, =gMonFrontPicCoords
-_080A8864:
- adds r4, r1, r0
-_080A8866:
- mov r0, r9
- cmp r0, 0x6
- bhi _080A8916
- lsls r0, 2
- ldr r1, =_080A8880
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080A8880:
- .4byte _080A889C
- .4byte _080A88A6
- .4byte _080A88D2
- .4byte _080A88EA
- .4byte _080A88AE
- .4byte _080A88C0
- .4byte _080A8902
-_080A889C:
- ldrb r1, [r4]
- movs r0, 0xF
- ands r0, r1
- lsls r0, 3
- b _080A8918
-_080A88A6:
- ldrb r0, [r4]
- lsrs r0, 4
- lsls r0, 3
- b _080A8918
-_080A88AE:
- mov r0, r8
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4]
- lsrs r1, 4
- b _080A88E4
-_080A88C0:
- mov r0, r8
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4]
- lsrs r1, 4
- b _080A88FC
-_080A88D2:
- mov r0, r8
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrb r2, [r4]
- movs r1, 0xF
- ands r1, r2
-_080A88E4:
- lsls r1, 2
- subs r0, r1
- b _080A8918
-_080A88EA:
- mov r0, r8
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrb r2, [r4]
- movs r1, 0xF
- ands r1, r2
-_080A88FC:
- lsls r1, 2
- adds r0, r1
- b _080A8918
-_080A8902:
- mov r0, r8
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x1F
- ldrb r1, [r4, 0x1]
- subs r0, r1
- b _080A8918
-_080A8916:
- movs r0, 0
-_080A8918:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80A861C
-
- thumb_func_start sub_80A8924
-sub_80A8924: @ 80A8924
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r9, r2
- mov r10, r3
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- cmp r1, 0
- bne _080A8942
- movs r5, 0
- movs r6, 0x1
- b _080A8946
-_080A8942:
- movs r5, 0x2
- movs r6, 0x3
-_080A8946:
- adds r0, r4, 0
- adds r1, r5, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- adds r0, r4, 0
- adds r1, r6, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r7, r0, 24
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _080A8998
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A8998
- movs r0, 0x2
- eors r4, r0
- adds r0, r4, 0
- adds r1, r5, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- adds r1, r6, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r3, r0, 24
- mov r0, r8
- lsls r1, r0, 16
- lsls r2, r7, 16
- b _080A89A4
-_080A8998:
- mov r0, r8
- lsls r1, r0, 16
- lsrs r5, r1, 16
- lsls r0, r7, 16
- lsrs r3, r0, 16
- adds r2, r0, 0
-_080A89A4:
- asrs r0, r1, 16
- adds r0, r5
- asrs r0, 1
- mov r1, r9
- strh r0, [r1]
- asrs r0, r2, 16
- adds r0, r3
- asrs r0, 1
- mov r1, r10
- strh r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A8924
-
- thumb_func_start sub_80A89C8
-sub_80A89C8: @ 80A89C8
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x4
- lsls r6, r1, 24
- lsrs r6, 24
- ldr r0, =SpriteCallbackDummy
- mov r10, r0
- bl CreateInvisibleSpriteWithCallback
- mov r8, r0
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, =gSprites
- mov r9, r0
- mov r0, r8
- lsls r3, r0, 4
- add r3, r8
- lsls r3, 2
- mov r0, r9
- adds r5, r3, r0
- lsls r4, r6, 4
- adds r4, r6
- lsls r4, 2
- add r4, r9
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x44
- str r3, [sp]
- bl memcpy
- adds r2, r5, 0
- adds r2, 0x3F
- ldrb r0, [r2]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2]
- ldrb r2, [r5, 0x5]
- movs r1, 0xD
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r5, 0x5]
- ldrb r0, [r5, 0x1]
- ands r1, r0
- movs r0, 0x8
- orrs r1, r0
- strb r1, [r5, 0x1]
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 22
- ldrh r2, [r5, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- movs r0, 0x1C
- add r9, r0
- ldr r3, [sp]
- add r3, r9
- mov r0, r10
- str r0, [r3]
- mov r0, r8
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A89C8
-
- thumb_func_start sub_80A8A6C
-sub_80A8A6C: @ 80A8A6C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6838
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A8AAC
- ldr r2, =gBattleAnimArgs
- ldrh r0, [r4, 0x20]
- ldrh r1, [r2]
- subs r0, r1
- strh r0, [r4, 0x20]
- ldrh r0, [r2, 0x6]
- negs r0, r0
- strh r0, [r2, 0x6]
- adds r3, r4, 0
- adds r3, 0x3F
- ldrb r0, [r3]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r3]
- adds r1, r2, 0
- b _080A8AB6
- .pool
-_080A8AAC:
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
-_080A8AB6:
- ldrh r0, [r1, 0x2]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- strh r0, [r4, 0x22]
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x30]
- ldrh r0, [r1, 0x8]
- strh r0, [r4, 0x34]
- ldrh r0, [r1, 0xA]
- strh r0, [r4, 0x38]
- ldr r1, =move_anim_8074EE0
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- ldr r0, =sub_80A66DC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8A6C
-
- thumb_func_start sub_80A8AEC
-sub_80A8AEC: @ 80A8AEC
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A8B1C
- ldr r2, =gBattleAnimArgs
- ldrh r0, [r4, 0x20]
- ldrh r1, [r2]
- subs r0, r1
- strh r0, [r4, 0x20]
- movs r1, 0x6
- ldrsh r0, [r2, r1]
- negs r0, r0
- strh r0, [r2, 0x6]
- adds r1, r2, 0
- b _080A8B26
- .pool
-_080A8B1C:
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
-_080A8B26:
- ldrh r0, [r1, 0x2]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- strh r0, [r4, 0x22]
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x30]
- ldrh r0, [r1, 0x8]
- strh r0, [r4, 0x34]
- ldrh r0, [r1, 0xA]
- strh r0, [r4, 0x38]
- ldrb r1, [r1, 0xC]
- adds r0, r4, 0
- bl StartSpriteAnim
- ldr r1, =move_anim_8074EE0
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- ldr r0, =sub_80A66DC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8AEC
-
- thumb_func_start sub_80A8B64
-sub_80A8B64: @ 80A8B64
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80A6838
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080A8B90
- ldr r0, =gBattleAnimArgs
- ldrh r1, [r4, 0x20]
- ldrh r2, [r0]
- subs r1, r2
- strh r1, [r4, 0x20]
- b _080A8B9C
- .pool
-_080A8B90:
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- adds r0, r1, 0
-_080A8B9C:
- ldrh r0, [r0, 0x2]
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r4, 0x22]
- ldr r0, =sub_80A67D8
- str r0, [r4, 0x1C]
- ldr r1, =DestroyAnimSprite
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8B64
-
- thumb_func_start sub_80A8BC4
-sub_80A8BC4: @ 80A8BC4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks
- adds r5, r1, r0
- movs r0, 0
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0
- strh r0, [r5, 0x8]
- ldr r7, =gBattleAnimAttacker
- ldrb r0, [r7]
- bl GetBattlerSide
- lsls r0, 24
- movs r1, 0x8
- cmp r0, 0
- beq _080A8BF8
- movs r0, 0x8
- negs r0, r0
- adds r1, r0, 0
-_080A8BF8:
- strh r1, [r5, 0xA]
- strh r6, [r5, 0xC]
- strh r6, [r5, 0xE]
- ldr r4, =gSprites
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x24]
- ldrh r2, [r5, 0x8]
- subs r1, r2
- strh r1, [r0, 0x24]
- ldr r0, =0x00002771
- bl AllocSpritePalette
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x10]
- strh r6, [r5, 0x12]
- movs r1, 0x10
- ldrsh r0, [r5, r1]
- adds r0, 0x10
- lsls r0, 20
- lsrs r6, r0, 16
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x5]
- lsrs r0, 4
- adds r0, 0x10
- lsls r4, r0, 4
- ldrb r0, [r7]
- bl sub_80A82E4
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x14]
- cmp r0, 0x14
- beq _080A8C54
- cmp r0, 0x28
- bne _080A8C68
-_080A8C54:
- movs r0, 0x2
- b _080A8C6A
- .pool
-_080A8C68:
- movs r0, 0x3
-_080A8C6A:
- strh r0, [r5, 0x14]
- lsls r0, r4, 1
- ldr r1, =gPlttBufferUnfaded
- adds r0, r1
- lsls r1, r6, 1
- ldr r2, =gPlttBufferFaded
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- ldr r0, =gBattleAnimArgs
- ldrb r2, [r0, 0x2]
- ldrh r3, [r0]
- adds r0, r6, 0
- movs r1, 0x10
- bl BlendPalette
- ldr r0, =sub_80A8CAC
- str r0, [r5]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8BC4
-
- thumb_func_start sub_80A8CAC
-sub_80A8CAC: @ 80A8CAC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080A8D10
- cmp r0, 0x1
- bgt _080A8CD4
- cmp r0, 0
- beq _080A8CDA
- b _080A8D6C
- .pool
-_080A8CD4:
- cmp r0, 0x2
- beq _080A8D58
- b _080A8D6C
-_080A8CDA:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80A8D78
- ldr r2, =gSprites
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0xA]
- ldrh r2, [r0, 0x24]
- adds r1, r2
- strh r1, [r0, 0x24]
- ldrh r1, [r4, 0xE]
- adds r0, r1, 0x1
- strh r0, [r4, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _080A8D6C
- strh r1, [r4, 0xE]
- b _080A8D4A
- .pool
-_080A8D10:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80A8D78
- ldr r3, =gSprites
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x24]
- ldrh r2, [r4, 0xA]
- subs r1, r2
- strh r1, [r0, 0x24]
- ldrh r0, [r4, 0xE]
- subs r0, 0x1
- strh r0, [r4, 0xE]
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _080A8D6C
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- strh r2, [r1, 0x24]
-_080A8D4A:
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- b _080A8D6C
- .pool
-_080A8D58:
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080A8D6C
- ldr r0, =0x00002771
- bl FreeSpritePaletteByTag
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080A8D6C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8CAC
-
- thumb_func_start sub_80A8D78
-sub_80A8D78: @ 80A8D78
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- movs r0, 0
- bl duplicate_obj_of_side_rel2move_in_transparent_mode
- lsls r0, 16
- lsrs r7, r0, 16
- asrs r0, 16
- cmp r0, 0
- blt _080A8DE8
- ldr r5, =gSprites
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r3, r4, r5
- movs r0, 0x3
- ldrb r1, [r6, 0x14]
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r3, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x5]
- ldrb r1, [r6, 0x10]
- lsls r1, 4
- movs r2, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x5]
- movs r0, 0x8
- strh r0, [r3, 0x2E]
- mov r0, r8
- strh r0, [r3, 0x30]
- strh r7, [r3, 0x32]
- movs r0, 0x8
- ldrsh r1, [r6, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r0, [r0, 0x24]
- strh r0, [r3, 0x24]
- adds r5, 0x1C
- adds r4, r5
- ldr r0, =sub_80A8DFC
- str r0, [r4]
- ldrh r0, [r6, 0x12]
- adds r0, 0x1
- strh r0, [r6, 0x12]
-_080A8DE8:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8D78
-
- thumb_func_start sub_80A8DFC
-sub_80A8DFC: @ 80A8DFC
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x2E]
- subs r0, 0x1
- strh r0, [r3, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bne _080A8E26
- ldr r2, =gTasks
- movs r0, 0x30
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrh r1, [r0, 0x12]
- subs r1, 0x1
- strh r1, [r0, 0x12]
- adds r0, r3, 0
- bl obj_delete_but_dont_free_vram
-_080A8E26:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8DFC
-
- thumb_func_start sub_80A8E30
-sub_80A8E30: @ 80A8E30
- 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
- bne _080A8E68
- movs r0, 0x5
- b _080A8E6A
- .pool
-_080A8E68:
- ldr r0, =0x0000fff6
-_080A8E6A:
- strh r0, [r5, 0x2E]
- ldr r0, =0x0000ffd8
- strh r0, [r5, 0x30]
- ldr r0, =sub_80A8E88
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8E30
-
- thumb_func_start sub_80A8E88
-sub_80A8E88: @ 80A8E88
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- adds r0, r1
- strh r0, [r4, 0x32]
- ldrh r5, [r4, 0x30]
- ldrh r2, [r4, 0x34]
- adds r0, r5, r2
- strh r0, [r4, 0x34]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0xA
- bl __divsi3
- strh r0, [r4, 0x24]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- movs r1, 0xA
- bl __divsi3
- strh r0, [r4, 0x26]
- lsls r0, r5, 16
- asrs r0, 16
- movs r1, 0x14
- negs r1, r1
- cmp r0, r1
- bge _080A8EC4
- adds r0, r5, 0x1
- strh r0, [r4, 0x30]
-_080A8EC4:
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- adds r0, r1
- movs r1, 0x20
- negs r1, r1
- cmp r0, r1
- bge _080A8EDC
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080A8EDC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A8E88
-
- thumb_func_start sub_80A8EE4
-sub_80A8EE4: @ 80A8EE4
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r5, =gBattleAnimArgs
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r5, 0x8]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x32]
- ldrh r0, [r5, 0xA]
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r4, 0x36]
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080A8F24
- ldrh r0, [r5, 0x8]
- adds r0, 0x1E
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x20]
- ldrh r0, [r5, 0xA]
- subs r0, 0x14
- b _080A8F32
- .pool
-_080A8F24:
- ldrh r0, [r5, 0x8]
- subs r0, 0x1E
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r4, 0x20]
- ldrh r0, [r5, 0xA]
- subs r0, 0x50
-_080A8F32:
- strh r0, [r4, 0x22]
- ldr r0, =sub_80A6EEC
- str r0, [r4, 0x1C]
- ldr r1, =DestroyAnimSprite
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A8EE4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_80A9C70.s b/asm/battle_anim_80A9C70.s
deleted file mode 100644
index 3515b973e..000000000
--- a/asm/battle_anim_80A9C70.s
+++ /dev/null
@@ -1,930 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start sub_80A9C70
-sub_80A9C70: @ 80A9C70
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r0, =gBattlerSpriteIds
- adds r0, r4, r0
- ldrb r6, [r0]
- ldr r0, =sub_80A9DB4
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, =gBattleAnimPicTable + 0x440
- bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gBattleAnimPaletteTable + 0x440
- bl LoadCompressedObjectPaletteUsingHeap
- ldr r1, =gTasks
- mov r2, r8
- lsls r0, r2, 2
- add r0, r8
- lsls r0, 3
- adds r1, r0, r1
- strh r4, [r1, 0x8]
- cmp r5, 0
- beq _080A9D30
- movs r0, 0x1F
- strh r0, [r1, 0xA]
- movs r5, 0
- lsls r0, r6, 4
- ldr r7, =gSprites
- adds r0, r6
- lsls r0, 2
- adds r6, r0, r7
-_080A9CC4:
- movs r0, 0x20
- ldrsh r1, [r6, r0]
- ldrh r2, [r6, 0x22]
- adds r2, 0x20
- lsls r2, 16
- asrs r2, 16
- ldr r0, =gUnknown_0853EF60
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r3, r0, r7
- lsls r0, r5, 1
- adds r0, r5
- lsls r1, r0, 4
- adds r0, r1
- strh r0, [r3, 0x2E]
- movs r0, 0xFF
- lsls r0, 8
- strh r0, [r3, 0x30]
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- cmp r5, 0x4
- bls _080A9D08
- movs r0, 0x15
- strh r0, [r3, 0x3A]
-_080A9D08:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x9
- bls _080A9CC4
- b _080A9D90
- .pool
-_080A9D30:
- movs r0, 0xF8
- lsls r0, 7
- strh r0, [r1, 0xA]
- movs r5, 0
- lsls r0, r6, 4
- ldr r7, =gSprites
- adds r0, r6
- lsls r0, 2
- adds r6, r0, r7
-_080A9D42:
- movs r2, 0x20
- ldrsh r1, [r6, r2]
- ldrh r2, [r6, 0x22]
- subs r2, 0x20
- lsls r2, 16
- asrs r2, 16
- ldr r0, =gUnknown_0853EF60
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r3, r0, r7
- lsls r0, r5, 1
- adds r0, r5
- lsls r1, r0, 4
- adds r0, r1
- strh r0, [r3, 0x2E]
- movs r0, 0x80
- lsls r0, 1
- strh r0, [r3, 0x30]
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- cmp r5, 0x4
- bls _080A9D86
- movs r0, 0x15
- strh r0, [r3, 0x3A]
-_080A9D86:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x9
- bls _080A9D42
-_080A9D90:
- ldr r0, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x3C]
- mov r0, r8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A9C70
-
- thumb_func_start sub_80A9DB4
-sub_80A9DB4: @ 80A9DB4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r1, [r4, 0xC]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0x2
- bne _080A9E3A
- movs r0, 0
- strh r0, [r4, 0xC]
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 20
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r0, 16
- ldrb r2, [r4, 0x10]
- ldrh r3, [r4, 0xA]
- movs r1, 0x10
- bl BlendPalette
- ldrh r2, [r4, 0x12]
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080A9E10
- ldrh r0, [r4, 0x10]
- adds r0, 0x1
- strh r0, [r4, 0x10]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _080A9E3E
- movs r0, 0x1
- eors r0, r2
- strh r0, [r4, 0x12]
- b _080A9E3E
- .pool
-_080A9E10:
- ldrh r1, [r4, 0x10]
- subs r0, r1, 0x1
- strh r0, [r4, 0x10]
- lsls r0, 16
- cmp r0, 0
- bge _080A9E3E
- strh r1, [r4, 0x10]
- movs r0, 0x1
- eors r0, r2
- strh r0, [r4, 0x12]
- ldrh r0, [r4, 0xE]
- adds r0, 0x1
- strh r0, [r4, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2
- bne _080A9E3E
- adds r0, r5, 0
- bl DestroyTask
- b _080A9E3E
-_080A9E3A:
- adds r0, r1, 0x1
- strh r0, [r4, 0xC]
-_080A9E3E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A9DB4
-
- thumb_func_start sub_80A9E44
-sub_80A9E44: @ 80A9E44
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x3A]
- movs r3, 0x3A
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _080A9E70
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x5
- negs r1, r1
- ands r1, r0
- strb r1, [r3]
- ldr r1, =sub_80A9E78
- str r1, [r2, 0x1C]
- adds r0, r2, 0
- bl _call_via_r1
- b _080A9E74
- .pool
-_080A9E70:
- subs r0, r1, 0x1
- strh r0, [r2, 0x3A]
-_080A9E74:
- pop {r0}
- bx r0
- thumb_func_end sub_80A9E44
-
- thumb_func_start sub_80A9E78
-sub_80A9E78: @ 80A9E78
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Cos
- strh r0, [r4, 0x24]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x26]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- bgt _080A9EA4
- adds r1, r4, 0
- adds r1, 0x43
- movs r0, 0x1D
- b _080A9EAA
-_080A9EA4:
- adds r1, r4, 0
- adds r1, 0x43
- movs r0, 0x1F
-_080A9EAA:
- strb r0, [r1]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x8
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x38]
- adds r0, r1
- strh r0, [r4, 0x38]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x34
- bne _080A9EEC
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A9EE6
- adds r0, r4, 0
- bl DestroySpriteAndFreeResources
- b _080A9EEC
-_080A9EE6:
- adds r0, r4, 0
- bl DestroySprite
-_080A9EEC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A9E78
-
- thumb_func_start sub_80A9EF4
-sub_80A9EF4: @ 80A9EF4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 8
- ldr r1, =0xffe00000
- adds r0, r1
- lsrs r5, r0, 16
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 8
- ldr r1, =0xffdc0000
- adds r0, r1
- lsrs r4, r0, 16
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A9F32
- lsls r0, r5, 16
- ldr r1, =0xfffa0000
- adds r0, r1
- lsrs r5, r0, 16
-_080A9F32:
- movs r1, 0xFD
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- movs r1, 0x80
- lsls r1, 5
- movs r0, 0x52
- bl SetGpuReg
- ldr r0, =gUnknown_0853EF48
- lsls r1, r5, 16
- asrs r1, 16
- lsls r2, r4, 16
- asrs r2, 16
- movs r3, 0x4
- bl CreateSprite
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =0x0000271a
- bl GetSpriteTileStartByTag
- lsls r0, 16
- ldr r1, =0xffff0000
- cmp r0, r1
- bne _080A9F7C
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080A9F7C:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- ldr r1, =gUnknown_0853EF40
- bl SetSubspriteTables
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x26]
- ldr r1, =sub_80A9FD0
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A9EF4
-
- thumb_func_start sub_80A9FD0
-sub_80A9FD0: @ 80A9FD0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- adds r2, r0, 0
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bne _080AA004
- ldr r0, =sub_80AA020
- str r0, [r1]
- movs r0, 0
- strh r0, [r1, 0xA]
- b _080AA01A
- .pool
-_080AA004:
- lsls r0, r2, 24
- lsrs r0, 24
- movs r1, 0x10
- subs r1, r0
- lsls r1, 8
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
-_080AA01A:
- pop {r0}
- bx r0
- thumb_func_end sub_80A9FD0
-
- thumb_func_start sub_80AA020
-sub_80AA020: @ 80AA020
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =0x0000271a
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- ldrh r0, [r5, 0xA]
- adds r1, r0, 0x1
- strh r1, [r5, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xD
- ble _080AA0B0
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r5, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3
- bne _080AA0B0
- ldr r3, =gPlttBufferFaded
- lsls r2, 4
- mov r12, r2
- ldr r1, =0x0000010d
- add r1, r12
- lsls r1, 1
- adds r1, r3
- ldrh r4, [r1]
- movs r2, 0x87
- lsls r2, 1
- add r2, r12
- lsls r2, 1
- adds r2, r3
- ldrh r0, [r2]
- strh r0, [r1]
- ldr r0, =0x0000010f
- add r0, r12
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- strh r1, [r2]
- strh r4, [r0]
- strh r6, [r5, 0xC]
- ldrh r0, [r5, 0xE]
- adds r0, 0x1
- strh r0, [r5, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3
- bne _080AA0B0
- strh r6, [r5, 0xE]
- strh r6, [r5, 0xA]
- ldrh r0, [r5, 0x10]
- adds r0, 0x1
- strh r0, [r5, 0x10]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2
- bne _080AA0B0
- movs r0, 0x9
- strh r0, [r5, 0xA]
- ldr r0, =sub_80AA0D0
- str r0, [r5]
-_080AA0B0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AA020
-
- thumb_func_start sub_80AA0D0
-sub_80AA0D0: @ 80AA0D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r2, r1, r2
- ldrh r0, [r2, 0xA]
- subs r0, 0x1
- adds r3, r0, 0
- strh r0, [r2, 0xA]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080AA108
- ldr r0, =sub_80AA124
- str r0, [r2]
- movs r0, 0
- strh r0, [r2, 0xA]
- b _080AA11E
- .pool
-_080AA108:
- lsls r0, r3, 24
- lsrs r0, 24
- movs r1, 0x10
- subs r1, r0
- lsls r1, 8
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
-_080AA11E:
- pop {r0}
- bx r0
- thumb_func_end sub_80AA0D0
-
- thumb_func_start sub_80AA124
-sub_80AA124: @ 80AA124
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x25
- bne _080AA16C
- ldrh r0, [r1, 0x26]
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- adds r0, r4, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- b _080AA186
- .pool
-_080AA16C:
- cmp r0, 0x27
- bne _080AA186
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- adds r0, r4, 0
- bl DestroyAnimVisualTask
-_080AA186:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80AA124
-
- thumb_func_start AnimTask_StatsChange
-AnimTask_StatsChange: @ 80AA18C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r3, 0
- ldr r0, =gBattleSpritesDataPtr
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- ldrh r0, [r0]
- subs r0, 0xF
- cmp r0, 0x2B
- bls _080AA1A4
- b _080AA328
-_080AA1A4:
- lsls r0, 2
- ldr r1, =_080AA1B8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AA1B8:
- .4byte _080AA268
- .4byte _080AA26E
- .4byte _080AA274
- .4byte _080AA27A
- .4byte _080AA280
- .4byte _080AA286
- .4byte _080AA28C
- .4byte _080AA292
- .4byte _080AA298
- .4byte _080AA29E
- .4byte _080AA2A4
- .4byte _080AA2AA
- .4byte _080AA2B0
- .4byte _080AA2B6
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA2BC
- .4byte _080AA2C0
- .4byte _080AA2C4
- .4byte _080AA2C8
- .4byte _080AA2CC
- .4byte _080AA2D0
- .4byte _080AA2D4
- .4byte _080AA2D8
- .4byte _080AA2E0
- .4byte _080AA2E8
- .4byte _080AA2F0
- .4byte _080AA2F8
- .4byte _080AA300
- .4byte _080AA308
- .4byte _080AA328
- .4byte _080AA328
- .4byte _080AA310
- .4byte _080AA314
- .4byte _080AA318
- .4byte _080AA320
-_080AA268:
- movs r5, 0
- movs r2, 0
- b _080AA330
-_080AA26E:
- movs r5, 0
- movs r2, 0x1
- b _080AA330
-_080AA274:
- movs r5, 0
- movs r2, 0x3
- b _080AA330
-_080AA27A:
- movs r5, 0
- movs r2, 0x5
- b _080AA330
-_080AA280:
- movs r5, 0
- movs r2, 0x6
- b _080AA330
-_080AA286:
- movs r5, 0
- movs r2, 0x2
- b _080AA330
-_080AA28C:
- movs r5, 0
- movs r2, 0x4
- b _080AA330
-_080AA292:
- movs r5, 0x1
- movs r2, 0
- b _080AA330
-_080AA298:
- movs r5, 0x1
- movs r2, 0x1
- b _080AA330
-_080AA29E:
- movs r5, 0x1
- movs r2, 0x3
- b _080AA330
-_080AA2A4:
- movs r5, 0x1
- movs r2, 0x5
- b _080AA330
-_080AA2AA:
- movs r5, 0x1
- movs r2, 0x6
- b _080AA330
-_080AA2B0:
- movs r5, 0x1
- movs r2, 0x2
- b _080AA330
-_080AA2B6:
- movs r5, 0x1
- movs r2, 0x4
- b _080AA330
-_080AA2BC:
- movs r5, 0
- b _080AA2DA
-_080AA2C0:
- movs r5, 0
- b _080AA2E2
-_080AA2C4:
- movs r5, 0
- b _080AA2EA
-_080AA2C8:
- movs r5, 0
- b _080AA2F2
-_080AA2CC:
- movs r5, 0
- b _080AA2FA
-_080AA2D0:
- movs r5, 0
- b _080AA302
-_080AA2D4:
- movs r5, 0
- b _080AA30A
-_080AA2D8:
- movs r5, 0x1
-_080AA2DA:
- movs r2, 0
- movs r3, 0x1
- b _080AA330
-_080AA2E0:
- movs r5, 0x1
-_080AA2E2:
- movs r2, 0x1
- movs r3, 0x1
- b _080AA330
-_080AA2E8:
- movs r5, 0x1
-_080AA2EA:
- movs r2, 0x3
- movs r3, 0x1
- b _080AA330
-_080AA2F0:
- movs r5, 0x1
-_080AA2F2:
- movs r2, 0x5
- movs r3, 0x1
- b _080AA330
-_080AA2F8:
- movs r5, 0x1
-_080AA2FA:
- movs r2, 0x6
- movs r3, 0x1
- b _080AA330
-_080AA300:
- movs r5, 0x1
-_080AA302:
- movs r2, 0x2
- movs r3, 0x1
- b _080AA330
-_080AA308:
- movs r5, 0x1
-_080AA30A:
- movs r2, 0x4
- movs r3, 0x1
- b _080AA330
-_080AA310:
- movs r5, 0
- b _080AA31A
-_080AA314:
- movs r5, 0
- b _080AA322
-_080AA318:
- movs r5, 0x1
-_080AA31A:
- movs r2, 0xFF
- movs r3, 0
- b _080AA330
-_080AA320:
- movs r5, 0x1
-_080AA322:
- movs r2, 0xFF
- movs r3, 0x1
- b _080AA330
-_080AA328:
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _080AA352
-_080AA330:
- ldr r0, =gBattleAnimArgs
- movs r1, 0
- strh r5, [r0]
- strh r2, [r0, 0x2]
- strh r1, [r0, 0x4]
- strh r1, [r0, 0x6]
- strh r3, [r0, 0x8]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8116EB4
- str r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
-_080AA352:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end AnimTask_StatsChange
-
- thumb_func_start LaunchStatusAnimation
-LaunchStatusAnimation: @ 80AA364
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, =gBattleAnimAttacker
- strb r4, [r0]
- ldr r0, =gBattleAnimTarget
- strb r4, [r0]
- ldr r0, =gBattleAnims_Statuses
- movs r2, 0
- bl LaunchBattleAnimation
- ldr r0, =task0A_80788BC
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end LaunchStatusAnimation
-
- thumb_func_start task0A_80788BC
-task0A_80788BC: @ 80AA3B4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gAnimScriptCallback
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AA3F6
- ldr r0, =gBattleSpritesDataPtr
- ldr r2, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x8
- ldrsh r0, [r0, r1]
- ldr r2, [r2, 0x4]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyTask
-_080AA3F6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task0A_80788BC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_80D51AC.s b/asm/battle_anim_80D51AC.s
deleted file mode 100644
index 3f36bb4a2..000000000
--- a/asm/battle_anim_80D51AC.s
+++ /dev/null
@@ -1,2446 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80D51AC
-sub_80D51AC: @ 80D51AC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _080D51D0
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- b _080D520C
- .pool
-_080D51D0:
- ldr r1, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r4, 0x2]
- strh r1, [r0, 0x24]
- ldrh r1, [r4, 0x4]
- strh r1, [r0, 0x26]
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x8]
- ldrh r1, [r4, 0x6]
- strh r1, [r0, 0xA]
- ldrh r1, [r4, 0x8]
- strh r1, [r0, 0xC]
- ldrh r1, [r4, 0x8]
- strh r1, [r0, 0xE]
- ldrh r1, [r4, 0x2]
- strh r1, [r0, 0x10]
- ldrh r1, [r4, 0x4]
- strh r1, [r0, 0x12]
- ldr r1, =sub_80D5220
- str r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
-_080D520C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D51AC
-
- thumb_func_start sub_80D5220
-sub_80D5220: @ 80D5220
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r3, r0, r1
- ldrh r0, [r3, 0xE]
- movs r2, 0xE
- ldrsh r5, [r3, r2]
- adds r7, r1, 0
- cmp r5, 0
- bne _080D52C6
- ldr r2, =gSprites
- movs r6, 0x8
- ldrsh r1, [r3, r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- movs r6, 0x24
- ldrsh r0, [r1, r6]
- adds r6, r2, 0
- cmp r0, 0
- bne _080D5264
- ldrh r0, [r3, 0x10]
- strh r0, [r1, 0x24]
- b _080D5266
- .pool
-_080D5264:
- strh r5, [r1, 0x24]
-_080D5266:
- lsls r2, r4, 2
- adds r0, r2, r4
- lsls r0, 3
- adds r3, r0, r7
- movs r0, 0x8
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r6
- movs r5, 0x26
- ldrsh r0, [r1, r5]
- cmp r0, 0
- bne _080D5286
- ldrh r0, [r3, 0x12]
- b _080D5288
-_080D5286:
- movs r0, 0
-_080D5288:
- strh r0, [r1, 0x26]
- adds r0, r2, r4
- lsls r0, 3
- adds r2, r0, r7
- ldrh r0, [r2, 0xC]
- strh r0, [r2, 0xE]
- ldrh r0, [r2, 0xA]
- subs r0, 0x1
- strh r0, [r2, 0xA]
- lsls r0, 16
- asrs r3, r0, 16
- cmp r3, 0
- bne _080D52CA
- movs r0, 0x8
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r3, [r0, 0x24]
- movs r5, 0x8
- ldrsh r1, [r2, r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r3, [r0, 0x26]
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _080D52CA
-_080D52C6:
- subs r0, 0x1
- strh r0, [r3, 0xE]
-_080D52CA:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80D5220
-
- thumb_func_start sub_80D52D0
-sub_80D52D0: @ 80D52D0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- ldr r2, =gBattleAnimArgs
- ldrh r0, [r2]
- movs r3, 0
- ldrsh r1, [r2, r3]
- cmp r1, 0x3
- bgt _080D52FC
- lsls r0, 24
- lsrs r0, 24
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xFF
- bne _080D5352
- b _080D5356
- .pool
-_080D52FC:
- cmp r1, 0x8
- beq _080D5348
- movs r1, 0
- ldrsh r0, [r2, r1]
- cmp r0, 0x5
- beq _080D531C
- cmp r0, 0x5
- bgt _080D5312
- cmp r0, 0x4
- beq _080D5318
- b _080D5324
-_080D5312:
- cmp r0, 0x6
- beq _080D5320
- b _080D5324
-_080D5318:
- movs r0, 0
- b _080D5326
-_080D531C:
- movs r0, 0x2
- b _080D5326
-_080D5320:
- movs r0, 0x1
- b _080D5326
-_080D5324:
- movs r0, 0x3
-_080D5326:
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- bne _080D533C
- movs r6, 0x1
-_080D533C:
- ldr r0, =gBattlerSpriteIds
- adds r0, r4, r0
- b _080D5350
- .pool
-_080D5348:
- ldr r1, =gBattlerSpriteIds
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- adds r0, r1
-_080D5350:
- ldrb r3, [r0]
-_080D5352:
- cmp r6, 0
- beq _080D5368
-_080D5356:
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- b _080D53A6
- .pool
-_080D5368:
- ldr r1, =gSprites
- lsls r0, r3, 4
- adds r0, r3
- lsls r0, 2
- adds r0, r1
- ldr r2, =gBattleAnimArgs
- ldrh r1, [r2, 0x2]
- strh r1, [r0, 0x24]
- ldrh r1, [r2, 0x4]
- strh r1, [r0, 0x26]
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r3, [r0, 0x8]
- ldrh r1, [r2, 0x6]
- strh r1, [r0, 0xA]
- ldrh r1, [r2, 0x8]
- strh r1, [r0, 0xC]
- ldrh r1, [r2, 0x8]
- strh r1, [r0, 0xE]
- ldrh r1, [r2, 0x2]
- strh r1, [r0, 0x10]
- ldrh r1, [r2, 0x4]
- strh r1, [r0, 0x12]
- ldr r1, =sub_80D53BC
- str r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
-_080D53A6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D52D0
-
- thumb_func_start sub_80D53BC
-sub_80D53BC: @ 80D53BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r3, r0, r1
- ldrh r2, [r3, 0xE]
- movs r4, 0xE
- ldrsh r0, [r3, r4]
- mov r12, r1
- cmp r0, 0
- bne _080D5474
- ldr r2, =gSprites
- movs r7, 0x8
- ldrsh r1, [r3, r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r2
- movs r0, 0x24
- ldrsh r1, [r4, r0]
- ldrh r5, [r3, 0x10]
- movs r7, 0x10
- ldrsh r0, [r3, r7]
- adds r7, r2, 0
- cmp r1, r0
- bne _080D5408
- negs r0, r5
- strh r0, [r4, 0x24]
- b _080D540A
- .pool
-_080D5408:
- strh r5, [r4, 0x24]
-_080D540A:
- lsls r3, r6, 2
- adds r1, r3, r6
- lsls r1, 3
- add r1, r12
- movs r0, 0x8
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r4, r0, r7
- movs r0, 0x26
- ldrsh r2, [r4, r0]
- mov r8, r2
- ldrh r5, [r1, 0x12]
- movs r2, 0x12
- ldrsh r0, [r1, r2]
- cmp r8, r0
- bne _080D5434
- negs r0, r5
- strh r0, [r4, 0x26]
- b _080D5436
-_080D5434:
- strh r5, [r4, 0x26]
-_080D5436:
- adds r0, r3, r6
- lsls r0, 3
- mov r4, r12
- adds r3, r0, r4
- ldrh r0, [r3, 0xC]
- strh r0, [r3, 0xE]
- ldrh r0, [r3, 0xA]
- subs r0, 0x1
- strh r0, [r3, 0xA]
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _080D5478
- movs r0, 0x8
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- strh r2, [r0, 0x24]
- movs r4, 0x8
- ldrsh r1, [r3, r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- strh r2, [r0, 0x26]
- adds r0, r6, 0
- bl DestroyAnimVisualTask
- b _080D5478
-_080D5474:
- subs r0, r2, 0x1
- strh r0, [r3, 0xE]
-_080D5478:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80D53BC
-
- thumb_func_start sub_80D5484
-sub_80D5484: @ 80D5484
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xFF
- bne _080D54A8
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- b _080D54F6
- .pool
-_080D54A8:
- ldr r0, =gSprites
- lsls r1, r3, 4
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r4, 0x2]
- ldrh r2, [r1, 0x24]
- adds r0, r2
- movs r2, 0
- strh r0, [r1, 0x24]
- ldrh r0, [r4, 0x4]
- ldrh r6, [r1, 0x26]
- adds r0, r6
- strh r0, [r1, 0x26]
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- strh r3, [r1, 0x8]
- strh r2, [r1, 0xA]
- ldrh r0, [r4, 0x6]
- strh r0, [r1, 0xC]
- strh r2, [r1, 0xE]
- ldrh r0, [r4, 0x8]
- strh r0, [r1, 0x10]
- movs r2, 0x2
- ldrsh r0, [r4, r2]
- lsls r0, 1
- strh r0, [r1, 0x12]
- movs r6, 0x4
- ldrsh r0, [r4, r6]
- lsls r0, 1
- strh r0, [r1, 0x14]
- ldr r2, =sub_80D5508
- str r2, [r1]
- adds r0, r5, 0
- bl _call_via_r2
-_080D54F6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5484
-
- thumb_func_start sub_80D5508
-sub_80D5508: @ 80D5508
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r2, [r4, 0xE]
- movs r3, 0xE
- ldrsh r0, [r4, r3]
- adds r6, r1, 0
- cmp r0, 0
- beq _080D5526
- b _080D5638
-_080D5526:
- ldrh r1, [r4, 0xA]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D5568
- ldr r2, =gSprites
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0x12]
- ldrh r3, [r0, 0x24]
- adds r1, r3
- strh r1, [r0, 0x24]
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0x14]
- ldrh r3, [r0, 0x26]
- adds r1, r3
- strh r1, [r0, 0x26]
- adds r3, r2, 0
- b _080D5592
- .pool
-_080D5568:
- ldr r3, =gSprites
- movs r0, 0x8
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x24]
- ldrh r2, [r4, 0x12]
- subs r1, r2
- strh r1, [r0, 0x24]
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x26]
- ldrh r2, [r4, 0x14]
- subs r1, r2
- strh r1, [r0, 0x26]
-_080D5592:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r6
- ldrh r0, [r4, 0x10]
- strh r0, [r4, 0xE]
- ldrh r0, [r4, 0xA]
- adds r2, r0, 0x1
- strh r2, [r4, 0xA]
- lsls r0, r2, 16
- asrs r0, 16
- movs r6, 0xC
- ldrsh r1, [r4, r6]
- cmp r0, r1
- blt _080D563C
- movs r0, 0x1
- ands r2, r0
- cmp r2, 0
- beq _080D55F8
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- lsrs r2, r0, 31
- adds r0, r2
- asrs r0, 1
- ldrh r6, [r1, 0x24]
- adds r0, r6
- strh r0, [r1, 0x24]
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- movs r2, 0x14
- ldrsh r0, [r4, r2]
- lsrs r2, r0, 31
- adds r0, r2
- asrs r0, 1
- ldrh r3, [r1, 0x26]
- adds r0, r3
- strh r0, [r1, 0x26]
- b _080D5630
- .pool
-_080D55F8:
- movs r6, 0x8
- ldrsh r0, [r4, r6]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r3
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- ldrh r0, [r2, 0x24]
- subs r0, r1
- strh r0, [r2, 0x24]
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r3
- movs r3, 0x14
- ldrsh r1, [r4, r3]
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- ldrh r0, [r2, 0x26]
- subs r0, r1
- strh r0, [r2, 0x26]
-_080D5630:
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- b _080D563C
-_080D5638:
- subs r0, r2, 0x1
- strh r0, [r4, 0xE]
-_080D563C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D5508
-
- thumb_func_start sub_80D5644
-sub_80D5644: @ 80D5644
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, =gBattleAnimArgs
- ldrb r0, [r5]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r2, [r5, 0x2]
- strh r2, [r1, 0x24]
- ldr r2, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- strh r0, [r1, 0x8]
- ldrh r0, [r5, 0x2]
- strh r0, [r1, 0xA]
- ldrh r0, [r5, 0x4]
- strh r0, [r1, 0xC]
- ldrh r0, [r5, 0x6]
- strh r0, [r1, 0xE]
- ldrh r0, [r5, 0x8]
- strh r0, [r1, 0x10]
- ldr r2, =sub_80D56A4
- str r2, [r1]
- adds r0, r4, 0
- bl _call_via_r2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5644
-
- thumb_func_start sub_80D56A4
-sub_80D56A4: @ 80D56A4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r2, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r3, r0, r2
- ldrb r5, [r3, 0x8]
- ldrh r4, [r3, 0xA]
- ldrh r1, [r3, 0x18]
- adds r0, r1, 0x1
- strh r0, [r3, 0x18]
- movs r7, 0xC
- ldrsh r0, [r3, r7]
- lsls r1, 16
- asrs r1, 16
- mov r12, r2
- ldr r7, =gSprites
- cmp r0, r1
- bne _080D56F6
- movs r0, 0
- strh r0, [r3, 0x18]
- lsls r0, r5, 4
- adds r0, r5
- lsls r0, 2
- adds r1, r0, r7
- ldrh r3, [r1, 0x24]
- movs r0, 0x24
- ldrsh r2, [r1, r0]
- lsls r0, r4, 16
- asrs r0, 16
- cmp r2, r0
- bne _080D56EE
- negs r0, r2
- lsls r0, 16
- lsrs r4, r0, 16
-_080D56EE:
- lsls r0, r4, 16
- asrs r0, 16
- adds r0, r3
- strh r0, [r1, 0x24]
-_080D56F6:
- lsls r2, r6, 2
- adds r2, r6
- lsls r2, 3
- add r2, r12
- strh r4, [r2, 0xA]
- ldrh r1, [r2, 0xE]
- ldrh r0, [r2, 0x1A]
- adds r1, r0
- strh r1, [r2, 0x1A]
- lsls r0, r5, 4
- adds r0, r5
- lsls r0, 2
- adds r0, r7
- lsls r1, 16
- asrs r1, 24
- strh r1, [r0, 0x26]
- ldrh r0, [r2, 0x10]
- subs r0, 0x1
- strh r0, [r2, 0x10]
- lsls r0, 16
- cmp r0, 0
- bne _080D5728
- adds r0, r6, 0
- bl DestroyAnimVisualTask
-_080D5728:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D56A4
-
- thumb_func_start sub_80D5738
-sub_80D5738: @ 80D5738
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0x1
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r7, r0, 24
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- ble _080D575C
- movs r0, 0x5
- strh r0, [r4, 0x8]
-_080D575C:
- movs r1, 0
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- adds r3, r4, 0
- ldr r2, =gTasks
- mov r12, r2
- lsls r4, r5, 2
- ldr r2, =sub_80D57B8
- mov r8, r2
- cmp r1, r0
- bge _080D5782
- adds r2, r0, 0
-_080D5774:
- lsls r0, r6, 25
- lsrs r6, r0, 24
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r2
- blt _080D5774
-_080D5782:
- adds r0, r4, r5
- lsls r0, 3
- add r0, r12
- strh r7, [r0, 0x8]
- ldrh r1, [r3, 0x2]
- strh r1, [r0, 0xA]
- ldrh r1, [r3, 0x4]
- strh r1, [r0, 0xC]
- ldrh r1, [r3, 0x6]
- strh r1, [r0, 0xE]
- strh r6, [r0, 0x10]
- mov r1, r8
- str r1, [r0]
- adds r0, r5, 0
- bl _call_via_r8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5738
-
- thumb_func_start sub_80D57B8
-sub_80D57B8: @ 80D57B8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0, 0
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r5, r0, r1
- ldrb r4, [r5, 0x8]
- movs r1, 0x12
- ldrsh r0, [r5, r1]
- movs r2, 0xA
- ldrsh r1, [r5, r2]
- bl Sin
- ldr r2, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r4, r1, r2
- strh r0, [r4, 0x24]
- movs r1, 0x12
- ldrsh r0, [r5, r1]
- movs r2, 0xC
- ldrsh r1, [r5, r2]
- bl Cos
- negs r0, r0
- strh r0, [r4, 0x26]
- ldrh r1, [r5, 0xC]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0x10]
- ldrh r1, [r5, 0x12]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r5, 0x12]
- cmp r0, 0
- bne _080D5810
- ldrh r0, [r5, 0xE]
- subs r0, 0x1
- strh r0, [r5, 0xE]
-_080D5810:
- movs r2, 0xE
- ldrsh r0, [r5, r2]
- cmp r0, 0
- bne _080D5822
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- adds r0, r6, 0
- bl DestroyAnimVisualTask
-_080D5822:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D57B8
-
- thumb_func_start sub_80D5830
-sub_80D5830: @ 80D5830
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D584C
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
-_080D584C:
- adds r0, r4, 0
- bl sub_80D5738
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5830
-
- thumb_func_start sub_80D5860
-sub_80D5860: @ 80D5860
- push {r4,lr}
- adds r4, r0, 0
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5890
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- b _080D5894
- .pool
-_080D5890:
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
-_080D5894:
- strh r0, [r4, 0x30]
- ldrh r2, [r1]
- movs r0, 0
- strh r2, [r4, 0x2E]
- strh r0, [r4, 0x32]
- ldr r1, =gBattlerSpriteIds
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strh r0, [r4, 0x34]
- strh r2, [r4, 0x36]
- ldr r1, =sub_80D58D4
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- ldr r0, =sub_80A6630
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5860
-
- thumb_func_start sub_80D58D4
-sub_80D58D4: @ 80D58D4
- push {lr}
- ldrh r1, [r0, 0x36]
- strh r1, [r0, 0x2E]
- ldrh r1, [r0, 0x30]
- negs r1, r1
- strh r1, [r0, 0x30]
- ldr r1, =sub_80A6630
- str r1, [r0, 0x1C]
- ldr r1, =DestroyAnimSprite
- bl StoreSpriteCallbackInData6
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D58D4
-
- thumb_func_start sub_80D58F8
-sub_80D58F8: @ 80D58F8
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r5, =gBattleAnimArgs
- ldrb r0, [r5, 0x4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- ldrh r2, [r5]
- movs r1, 0
- strh r2, [r4, 0x2E]
- strh r1, [r4, 0x30]
- ldrh r1, [r5, 0x2]
- strh r1, [r4, 0x32]
- strh r0, [r4, 0x34]
- strh r2, [r4, 0x36]
- ldr r1, =sub_80D5944
- adds r0, r4, 0
- bl StoreSpriteCallbackInData6
- ldr r0, =sub_80A6630
- str r0, [r4, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D58F8
-
- thumb_func_start sub_80D5944
-sub_80D5944: @ 80D5944
- push {lr}
- ldrh r1, [r0, 0x36]
- strh r1, [r0, 0x2E]
- ldrh r1, [r0, 0x32]
- negs r1, r1
- strh r1, [r0, 0x32]
- ldr r1, =sub_80A6630
- str r1, [r0, 0x1C]
- ldr r1, =DestroyAnimSprite
- bl StoreSpriteCallbackInData6
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5944
-
- thumb_func_start sub_80D5968
-sub_80D5968: @ 80D5968
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- ldr r0, =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D598C
- ldr r1, =gBattlerSpriteIds
- ldr r0, =gBattleAnimAttacker
- b _080D5990
- .pool
-_080D598C:
- ldr r1, =gBattlerSpriteIds
- ldr r0, =gBattleAnimTarget
-_080D5990:
- ldrb r0, [r0]
- adds r0, r1
- ldrb r7, [r0]
- ldr r5, =gBattleAnimArgs
- ldrh r0, [r5, 0x4]
- movs r3, 0
- strh r0, [r6, 0x2E]
- ldr r0, =gSprites
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- adds r4, r0
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r6, 0x30]
- ldrh r0, [r4, 0x20]
- strh r0, [r6, 0x32]
- ldrh r0, [r4, 0x26]
- ldrh r1, [r4, 0x22]
- adds r0, r1
- strh r0, [r6, 0x34]
- ldrh r0, [r4, 0x22]
- strh r0, [r6, 0x36]
- adds r0, r6, 0
- str r3, [sp]
- bl sub_80A6E14
- ldr r3, [sp]
- strh r3, [r6, 0x34]
- strh r3, [r6, 0x36]
- ldrh r0, [r4, 0x24]
- strh r0, [r6, 0x38]
- ldrh r0, [r4, 0x26]
- strh r0, [r6, 0x3A]
- adds r2, r6, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r1, 0x2
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- bne _080D5A00
- strh r3, [r6, 0x32]
- b _080D5A06
- .pool
-_080D5A00:
- cmp r0, 0x2
- bne _080D5A06
- strh r3, [r6, 0x30]
-_080D5A06:
- ldr r0, =gBattleAnimArgs
- ldrh r1, [r0, 0x2]
- lsls r0, r7, 8
- orrs r0, r1
- strh r0, [r6, 0x3C]
- ldr r0, =sub_80D5A24
- str r0, [r6, 0x1C]
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5968
-
- thumb_func_start sub_80D5A24
-sub_80D5A24: @ 80D5A24
- push {r4-r6,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x3C]
- lsls r1, r0, 24
- lsrs r4, r1, 24
- adds r5, r4, 0
- lsls r0, 16
- asrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, =gSprites
- adds r3, r1, r0
- ldrh r0, [r2, 0x2E]
- movs r6, 0x2E
- ldrsh r1, [r2, r6]
- cmp r1, 0
- bne _080D5A64
- cmp r4, 0x1
- bhi _080D5A4E
- strh r1, [r3, 0x24]
-_080D5A4E:
- cmp r5, 0x2
- beq _080D5A56
- cmp r5, 0
- bne _080D5A58
-_080D5A56:
- strh r1, [r3, 0x26]
-_080D5A58:
- adds r0, r2, 0
- bl DestroyAnimSprite
- b _080D5A8E
- .pool
-_080D5A64:
- subs r0, 0x1
- strh r0, [r2, 0x2E]
- ldrh r1, [r2, 0x30]
- ldrh r0, [r2, 0x34]
- adds r1, r0
- strh r1, [r2, 0x34]
- ldrh r0, [r2, 0x32]
- ldrh r4, [r2, 0x36]
- adds r0, r4
- strh r0, [r2, 0x36]
- lsls r1, 16
- asrs r1, 24
- ldrh r6, [r2, 0x38]
- adds r1, r6
- strh r1, [r3, 0x24]
- ldrh r0, [r2, 0x36]
- lsls r0, 16
- asrs r0, 24
- ldrh r2, [r2, 0x3A]
- adds r0, r2
- strh r0, [r3, 0x26]
-_080D5A8E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D5A24
-
- thumb_func_start sub_80D5A94
-sub_80D5A94: @ 80D5A94
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r0, =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D5AB0
- ldr r0, =gBattleAnimAttacker
- b _080D5AB2
- .pool
-_080D5AB0:
- ldr r0, =gBattleAnimTarget
-_080D5AB2:
- ldrb r2, [r0]
- ldr r0, =gBattlerSpriteIds
- adds r0, r2, r0
- ldrb r6, [r0]
- adds r0, r2, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5ADC
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
- movs r2, 0x6
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- bne _080D5ADC
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_080D5ADC:
- ldr r2, =gBattleAnimArgs
- ldrh r0, [r2, 0x8]
- movs r4, 0
- strh r0, [r5, 0x2E]
- ldr r0, =gSprites
- lsls r1, r6, 4
- adds r1, r6
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x20]
- strh r0, [r5, 0x30]
- ldrh r0, [r2, 0x2]
- ldrh r3, [r1, 0x20]
- adds r0, r3
- strh r0, [r5, 0x32]
- ldrh r0, [r1, 0x22]
- strh r0, [r5, 0x34]
- ldrh r0, [r2, 0x4]
- ldrh r1, [r1, 0x22]
- adds r0, r1
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl sub_80A6E14
- strh r4, [r5, 0x34]
- strh r4, [r5, 0x36]
- strh r6, [r5, 0x38]
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData6
- ldr r0, =sub_80A6680
- str r0, [r5, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5A94
-
- thumb_func_start sub_80D5B48
-sub_80D5B48: @ 80D5B48
- push {r4-r7,lr}
- adds r6, r0, 0
- adds r2, r6, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D5B70
- ldr r0, =gBattleAnimAttacker
- b _080D5B72
- .pool
-_080D5B70:
- ldr r0, =gBattleAnimTarget
-_080D5B72:
- ldrb r1, [r0]
- ldr r0, =gBattlerSpriteIds
- adds r0, r1, r0
- ldrb r7, [r0]
- adds r0, r1, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5B9C
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
- movs r2, 0x6
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- bne _080D5B9C
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_080D5B9C:
- ldr r5, =gBattleAnimArgs
- ldrh r0, [r5, 0x8]
- strh r0, [r6, 0x2E]
- ldr r0, =gSprites
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- adds r4, r0
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- strh r0, [r6, 0x30]
- ldrh r1, [r5, 0x2]
- adds r0, r1
- strh r0, [r6, 0x32]
- ldrh r0, [r4, 0x26]
- ldrh r2, [r4, 0x22]
- adds r0, r2
- strh r0, [r6, 0x34]
- ldrh r1, [r5, 0x4]
- adds r0, r1
- strh r0, [r6, 0x36]
- adds r0, r6, 0
- bl sub_80A6E14
- ldrh r0, [r4, 0x24]
- lsls r0, 8
- strh r0, [r6, 0x34]
- ldrh r0, [r4, 0x26]
- lsls r0, 8
- strh r0, [r6, 0x36]
- strh r7, [r6, 0x38]
- ldrh r0, [r5, 0xA]
- strh r0, [r6, 0x3A]
- lsls r0, 16
- cmp r0, 0
- bne _080D5C04
- ldr r1, =DestroyAnimSprite
- adds r0, r6, 0
- bl StoreSpriteCallbackInData6
- b _080D5C0C
- .pool
-_080D5C04:
- ldr r1, =sub_80D5C20
- adds r0, r6, 0
- bl StoreSpriteCallbackInData6
-_080D5C0C:
- ldr r0, =sub_80A6680
- str r0, [r6, 0x1C]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5B48
-
- thumb_func_start sub_80D5C20
-sub_80D5C20: @ 80D5C20
- push {r4,lr}
- ldr r4, =gSprites
- movs r1, 0x38
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- movs r3, 0
- strh r3, [r1, 0x24]
- movs r1, 0x38
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- strh r3, [r1, 0x26]
- bl DestroyAnimSprite
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5C20
-
- thumb_func_start sub_80D5C50
-sub_80D5C50: @ 80D5C50
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, =gBattleAnimArgs
- movs r0, 0x6
- ldrsh r1, [r5, r0]
- movs r0, 0x80
- lsls r0, 8
- bl __divsi3
- lsls r0, 16
- lsrs r7, r0, 16
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5C82
- ldrh r0, [r5, 0x2]
- negs r0, r0
- strh r0, [r5, 0x2]
- ldrh r0, [r5, 0xA]
- negs r0, r0
- strh r0, [r5, 0xA]
-_080D5C82:
- ldrb r0, [r5]
- bl GetAnimBattlerSpriteId
- ldr r1, =gTasks
- lsls r4, r6, 2
- adds r4, r6
- lsls r4, 3
- adds r4, r1
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x8]
- movs r1, 0x2
- ldrsh r0, [r5, r1]
- lsls r0, 8
- movs r2, 0x6
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r4, 0xA]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0xC]
- ldrh r0, [r5, 0x6]
- strh r0, [r4, 0xE]
- ldrh r0, [r5, 0x8]
- strh r0, [r4, 0x10]
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- lsls r0, 8
- movs r2, 0xC
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r4, 0x12]
- ldrh r0, [r5, 0xC]
- strh r0, [r4, 0x14]
- strh r7, [r4, 0x16]
- ldr r0, =sub_80D5CE4
- str r0, [r4]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5C50
-
- thumb_func_start sub_80D5CE4
-sub_80D5CE4: @ 80D5CE4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r5, r1, r2
- ldrb r1, [r5, 0x8]
- ldrh r0, [r5, 0xA]
- ldrh r2, [r5, 0x1E]
- adds r0, r2
- strh r0, [r5, 0x1E]
- ldr r2, =gSprites
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r4, r2
- lsls r0, 16
- asrs r0, 24
- strh r0, [r4, 0x24]
- ldrh r0, [r5, 0x1C]
- lsrs r0, 8
- movs r2, 0xC
- ldrsh r1, [r5, r2]
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r5, 0x16]
- ldrh r1, [r5, 0x1C]
- adds r0, r1
- strh r0, [r5, 0x1C]
- ldrh r0, [r5, 0xE]
- subs r0, 0x1
- strh r0, [r5, 0xE]
- lsls r0, 16
- cmp r0, 0
- bne _080D5D34
- ldr r0, =sub_80D5D48
- str r0, [r5]
-_080D5D34:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5CE4
-
- thumb_func_start sub_80D5D48
-sub_80D5D48: @ 80D5D48
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r1, [r4, 0x10]
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080D5D70
- subs r0, r1, 0x1
- strh r0, [r4, 0x10]
- b _080D5DA4
- .pool
-_080D5D70:
- ldrb r0, [r4, 0x8]
- ldrh r2, [r4, 0x12]
- ldrh r1, [r4, 0x20]
- adds r2, r1
- strh r2, [r4, 0x20]
- ldr r3, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- lsls r2, 16
- asrs r2, 24
- ldrh r0, [r4, 0x1E]
- lsls r0, 16
- asrs r0, 24
- adds r2, r0
- strh r2, [r1, 0x24]
- ldrh r0, [r4, 0x14]
- subs r0, 0x1
- strh r0, [r4, 0x14]
- lsls r0, 16
- cmp r0, 0
- bne _080D5DA4
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080D5DA4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5D48
-
- thumb_func_start sub_80D5DB0
-sub_80D5DB0: @ 80D5DB0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gBattleAnimArgs
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0x2
- beq _080D5DDE
- cmp r0, 0x2
- bgt _080D5DD8
- cmp r0, 0
- blt _080D5E10
- ldrb r0, [r1]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- b _080D5E18
- .pool
-_080D5DD8:
- cmp r0, 0x3
- beq _080D5DE8
- b _080D5E10
-_080D5DDE:
- ldr r5, =gBattleAnimAttacker
- b _080D5DEA
- .pool
-_080D5DE8:
- ldr r5, =gBattleAnimTarget
-_080D5DEA:
- ldrb r0, [r5]
- movs r4, 0x2
- eors r0, r4
- bl IsBattlerSpriteVisible
- lsls r0, 24
- cmp r0, 0
- beq _080D5E10
- ldr r1, =gBattlerSpriteIds
- ldrb r0, [r5]
- eors r0, r4
- adds r0, r1
- ldrb r2, [r0]
- b _080D5E18
- .pool
-_080D5E10:
- adds r0, r6, 0
- bl DestroyAnimVisualTask
- b _080D5E58
-_080D5E18:
- ldr r1, =gTasks
- lsls r4, r6, 2
- adds r0, r4, r6
- lsls r0, 3
- adds r5, r0, r1
- strh r2, [r5, 0x8]
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5E44
- ldr r0, =gBattleAnimArgs
- ldrh r0, [r0, 0x2]
- b _080D5E4A
- .pool
-_080D5E44:
- ldr r0, =gBattleAnimArgs
- ldrh r0, [r0, 0x2]
- negs r0, r0
-_080D5E4A:
- strh r0, [r5, 0xA]
- ldr r0, =gTasks
- adds r1, r4, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80D5E6C
- str r0, [r1]
-_080D5E58:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5DB0
-
- thumb_func_start sub_80D5E6C
-sub_80D5E6C: @ 80D5E6C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r2, [r1, 0x8]
- ldr r3, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r1, 0xA]
- ldrh r2, [r0, 0x24]
- adds r1, r2
- strh r1, [r0, 0x24]
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- movs r2, 0x20
- ldrsh r0, [r0, r2]
- adds r1, r0
- adds r1, 0x20
- movs r0, 0x98
- lsls r0, 1
- cmp r1, r0
- bls _080D5EAA
- adds r0, r4, 0
- bl DestroyAnimVisualTask
-_080D5EAA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5E6C
-
- thumb_func_start sub_80D5EB8
-sub_80D5EB8: @ 80D5EB8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r6, =gBattleAnimAttacker
- ldrb r0, [r6]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D5ED4
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
-_080D5ED4:
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4, 0x8]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r3, r5, 2
- adds r1, r3, r5
- lsls r1, 3
- adds r2, r1, r2
- ldrh r1, [r4]
- strh r1, [r2, 0x8]
- ldrh r1, [r4, 0x2]
- strh r1, [r2, 0xA]
- ldrh r1, [r4, 0x4]
- strh r1, [r2, 0xC]
- ldrh r1, [r4, 0x6]
- strh r1, [r2, 0xE]
- strh r0, [r2, 0x10]
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080D5F14
- ldrb r0, [r6]
- b _080D5F18
- .pool
-_080D5F14:
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
-_080D5F18:
- strh r0, [r2, 0x12]
- ldr r1, =gTasks
- adds r0, r3, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1
- strh r1, [r0, 0x20]
- ldr r1, =sub_80D5F3C
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5EB8
-
- thumb_func_start sub_80D5F3C
-sub_80D5F3C: @ 80D5F3C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r1
- ldrb r7, [r4, 0x10]
- ldrh r0, [r4, 0xC]
- ldrh r1, [r4, 0x1C]
- adds r0, r1
- lsls r1, r0, 16
- strh r0, [r4, 0x1C]
- lsrs r1, 24
- mov r8, r1
- mov r0, r8
- movs r2, 0xA
- ldrsh r1, [r4, r2]
- bl Sin
- lsls r0, 16
- lsrs r5, r0, 16
- mov r9, r5
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080D5F94
- ldr r0, =gSprites
- lsls r2, r7, 4
- adds r1, r2, r7
- lsls r1, 2
- adds r1, r0
- strh r5, [r1, 0x24]
- mov r9, r0
- adds r4, r2, 0
- b _080D5FDA
- .pool
-_080D5F94:
- ldrb r0, [r4, 0x12]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D5FBC
- ldr r1, =gSprites
- lsls r2, r7, 4
- adds r0, r2, r7
- lsls r0, 2
- adds r3, r0, r1
- lsls r0, r5, 16
- asrs r0, 16
- mov r9, r1
- adds r4, r2, 0
- cmp r0, 0
- bge _080D5FD8
- b _080D5FD6
- .pool
-_080D5FBC:
- ldr r1, =gSprites
- lsls r2, r7, 4
- adds r0, r2, r7
- lsls r0, 2
- adds r3, r0, r1
- mov r4, r9
- lsls r0, r4, 16
- asrs r0, 16
- mov r9, r1
- adds r4, r2, 0
- cmp r0, 0
- bge _080D5FD6
- negs r0, r0
-_080D5FD6:
- negs r0, r0
-_080D5FD8:
- strh r0, [r3, 0x26]
-_080D5FDA:
- mov r5, r8
- cmp r5, 0x7F
- bls _080D5FFC
- ldr r1, =gTasks
- lsls r2, r6, 2
- adds r0, r2, r6
- lsls r0, 3
- adds r3, r0, r1
- movs r5, 0x1E
- ldrsh r0, [r3, r5]
- adds r5, r1, 0
- cmp r0, 0
- bne _080D5FFC
- movs r1, 0x20
- ldrsh r0, [r3, r1]
- cmp r0, 0x1
- beq _080D601E
-_080D5FFC:
- mov r2, r8
- cmp r2, 0x7E
- bhi _080D6050
- ldr r1, =gTasks
- lsls r2, r6, 2
- adds r0, r2, r6
- lsls r0, 3
- adds r3, r0, r1
- movs r5, 0x1E
- ldrsh r0, [r3, r5]
- adds r5, r1, 0
- cmp r0, 0x1
- bne _080D6050
- movs r1, 0x20
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _080D6050
-_080D601E:
- adds r1, r2, r6
- lsls r1, 3
- adds r1, r5
- ldrh r0, [r1, 0x1E]
- movs r2, 0x1
- eors r0, r2
- strh r0, [r1, 0x1E]
- ldrh r0, [r1, 0x20]
- eors r0, r2
- strh r0, [r1, 0x20]
- ldrh r0, [r1, 0xE]
- subs r0, 0x1
- strh r0, [r1, 0xE]
- lsls r0, 16
- asrs r3, r0, 16
- cmp r3, 0
- bne _080D6050
- adds r0, r4, r7
- lsls r0, 2
- add r0, r9
- strh r3, [r0, 0x24]
- strh r3, [r0, 0x26]
- adds r0, r6, 0
- bl DestroyAnimVisualTask
-_080D6050:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D5F3C
-
- thumb_func_start sub_80D6064
-sub_80D6064: @ 80D6064
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r6, =gBattleAnimArgs
- ldrb r0, [r6, 0x6]
- bl GetAnimBattlerSpriteId
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldrb r1, [r6, 0x8]
- adds r0, r5, 0
- bl sub_80A7270
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r6]
- strh r1, [r0, 0x8]
- ldrh r1, [r6, 0x2]
- strh r1, [r0, 0xA]
- ldrh r1, [r6, 0x4]
- strh r1, [r0, 0xC]
- ldrh r1, [r6, 0x4]
- strh r1, [r0, 0xE]
- strh r5, [r0, 0x10]
- movs r1, 0x80
- lsls r1, 1
- strh r1, [r0, 0x1C]
- strh r1, [r0, 0x1E]
- ldr r1, =sub_80D60BC
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D6064
-
- thumb_func_start sub_80D60BC
-sub_80D60BC: @ 80D60BC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x8]
- ldrh r1, [r4, 0x1C]
- adds r0, r1
- strh r0, [r4, 0x1C]
- ldrh r0, [r4, 0xA]
- ldrh r3, [r4, 0x1E]
- adds r0, r3
- strh r0, [r4, 0x1E]
- ldrb r0, [r4, 0x10]
- adds r6, r0, 0
- movs r0, 0x1C
- ldrsh r1, [r4, r0]
- movs r3, 0x1E
- ldrsh r2, [r4, r3]
- adds r0, r6, 0
- movs r3, 0
- bl obj_id_set_rotscale
- ldrh r0, [r4, 0xC]
- subs r0, 0x1
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0
- bne _080D612C
- ldrh r2, [r4, 0xE]
- movs r3, 0xE
- ldrsh r0, [r4, r3]
- cmp r0, 0
- ble _080D6120
- ldrh r0, [r4, 0x8]
- negs r0, r0
- strh r0, [r4, 0x8]
- ldrh r0, [r4, 0xA]
- negs r0, r0
- strh r0, [r4, 0xA]
- strh r2, [r4, 0xC]
- strh r1, [r4, 0xE]
- b _080D612C
- .pool
-_080D6120:
- adds r0, r6, 0
- bl sub_80A7344
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080D612C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D60BC
-
- thumb_func_start sub_80D6134
-sub_80D6134: @ 80D6134
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4, 0x4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r1, 0
- bl sub_80A7270
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r2, r0, r1
- movs r1, 0
- strh r1, [r2, 0xA]
- ldrh r0, [r4]
- strh r0, [r2, 0xC]
- movs r3, 0x6
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- beq _080D6178
- strh r1, [r2, 0xE]
- b _080D6184
- .pool
-_080D6178:
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- adds r3, r0, 0
- muls r3, r1
- adds r0, r3, 0
- strh r0, [r2, 0xE]
-_080D6184:
- ldr r1, =gTasks
- lsls r4, r7, 2
- adds r0, r4, r7
- lsls r0, 3
- adds r5, r0, r1
- ldr r6, =gBattleAnimArgs
- ldrh r0, [r6, 0x2]
- strh r0, [r5, 0x10]
- mov r0, r8
- strh r0, [r5, 0x12]
- ldrh r0, [r6, 0x6]
- strh r0, [r5, 0x14]
- bl IsContest
- lsls r0, 24
- mov r8, r4
- cmp r0, 0
- beq _080D61B8
- movs r0, 0x1
- strh r0, [r5, 0x16]
- b _080D61DC
- .pool
-_080D61B8:
- movs r1, 0x4
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _080D61C8
- ldr r0, =gBattleAnimAttacker
- b _080D61CA
- .pool
-_080D61C8:
- ldr r0, =gBattleAnimTarget
-_080D61CA:
- ldrb r0, [r0]
- bl GetBattlerSide
- movs r1, 0
- lsls r0, 24
- cmp r0, 0
- bne _080D61DA
- movs r1, 0x1
-_080D61DA:
- strh r1, [r5, 0x16]
-_080D61DC:
- ldr r0, =gTasks
- mov r2, r8
- adds r1, r2, r7
- lsls r1, 3
- adds r4, r1, r0
- movs r3, 0x16
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _080D6208
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080D6208
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- negs r0, r0
- strh r0, [r4, 0xE]
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- negs r0, r0
- strh r0, [r4, 0x10]
-_080D6208:
- ldr r0, =gTasks
- mov r3, r8
- adds r1, r3, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80D6308
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D6134
-
- thumb_func_start sub_80D622C
-sub_80D622C: @ 80D622C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gBattleAnimArgs
- ldrb r0, [r4, 0x4]
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r1, 0
- bl sub_80A7270
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xA]
- ldrh r1, [r4]
- strh r1, [r0, 0xC]
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080D6274
- ldr r0, =gBattleAnimAttacker
- b _080D6276
- .pool
-_080D6274:
- ldr r0, =gBattleAnimTarget
-_080D6276:
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D6288
- ldrh r0, [r4, 0x2]
- negs r0, r0
- strh r0, [r4, 0x2]
-_080D6288:
- ldr r0, =gBattleAnimArgs
- movs r2, 0x6
- ldrsh r1, [r0, r2]
- adds r6, r0, 0
- cmp r1, 0x1
- beq _080D62B0
- ldr r2, =gTasks
- lsls r3, r5, 2
- adds r0, r3, r5
- lsls r0, 3
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0xE]
- b _080D62CA
- .pool
-_080D62B0:
- ldr r3, =gTasks
- lsls r4, r5, 2
- adds r0, r4, r5
- lsls r0, 3
- adds r0, r3
- ldrh r2, [r6]
- ldrh r1, [r6, 0x2]
- adds r7, r2, 0
- muls r7, r1
- adds r1, r7, 0
- strh r1, [r0, 0xE]
- adds r2, r3, 0
- adds r3, r4, 0
-_080D62CA:
- adds r1, r3, r5
- lsls r1, 3
- adds r1, r2
- ldrh r0, [r6, 0x2]
- strh r0, [r1, 0x10]
- mov r0, r8
- strh r0, [r1, 0x12]
- ldrh r0, [r6, 0x6]
- strh r0, [r1, 0x14]
- movs r0, 0x1
- strh r0, [r1, 0x16]
- movs r2, 0xE
- ldrsh r0, [r1, r2]
- negs r0, r0
- strh r0, [r1, 0xE]
- movs r7, 0x10
- ldrsh r0, [r1, r7]
- negs r0, r0
- strh r0, [r1, 0x10]
- ldr r0, =sub_80D6308
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D622C
-
- thumb_func_start sub_80D6308
-sub_80D6308: @ 80D6308
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x10]
- ldrh r1, [r4, 0xE]
- adds r0, r1
- strh r0, [r4, 0xE]
- ldrb r0, [r4, 0x12]
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0xE]
- adds r1, r2, 0
- bl obj_id_set_rotscale
- movs r2, 0x16
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _080D633C
- ldrb r0, [r4, 0x12]
- bl sub_80A73A0
-_080D633C:
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- cmp r0, r1
- blt _080D6382
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080D6364
- cmp r0, 0x1
- ble _080D636A
- cmp r0, 0x2
- beq _080D6372
- b _080D636A
- .pool
-_080D6364:
- ldrb r0, [r4, 0x12]
- bl sub_80A7344
-_080D636A:
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- b _080D6382
-_080D6372:
- movs r0, 0
- strh r0, [r4, 0xA]
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- negs r0, r0
- strh r0, [r4, 0x10]
- movs r0, 0x1
- strh r0, [r4, 0x14]
-_080D6382:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80D6308
-
- thumb_func_start sub_80D6388
-sub_80D6388: @ 80D6388
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gBattleAnimArgs
- movs r2, 0
- ldrsh r1, [r0, r2]
- mov r8, r0
- cmp r1, 0
- bne _080D63C0
- ldr r4, =gTasks
- lsls r5, r7, 2
- adds r0, r5, r7
- lsls r0, 3
- adds r6, r0, r4
- ldr r0, =gAnimMovePower
- ldrh r0, [r0]
- movs r1, 0xC
- bl __udivsi3
- b _080D63D4
- .pool
-_080D63C0:
- ldr r4, =gTasks
- lsls r5, r7, 2
- adds r0, r5, r7
- lsls r0, 3
- adds r6, r0, r4
- ldr r0, =gAnimMoveDmg
- ldr r0, [r0]
- movs r1, 0xC
- bl __divsi3
-_080D63D4:
- strh r0, [r6, 0x26]
- lsls r0, 16
- adds r1, r4, 0
- cmp r0, 0
- bgt _080D63E2
- movs r0, 0x1
- strh r0, [r6, 0x26]
-_080D63E2:
- movs r2, 0x26
- ldrsh r0, [r6, r2]
- cmp r0, 0x10
- ble _080D63EE
- movs r0, 0x10
- strh r0, [r6, 0x26]
-_080D63EE:
- adds r4, r5, r7
- lsls r4, 3
- adds r4, r1
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- movs r5, 0
- strh r1, [r4, 0x24]
- ldrh r2, [r4, 0x26]
- movs r0, 0x1
- ands r0, r2
- adds r1, r0
- strh r1, [r4, 0x22]
- strh r5, [r4, 0x20]
- mov r1, r8
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x1C]
- ldrh r0, [r1, 0x8]
- strh r0, [r4, 0x1E]
- movs r0, 0x1
- bl GetAnimBattlerSpriteId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x16]
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x24]
- strh r0, [r4, 0x18]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x26]
- strh r0, [r4, 0x1A]
- strh r5, [r4, 0x8]
- mov r1, r8
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0xA]
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0xC]
- ldr r0, =sub_80D646C
- str r0, [r4]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D6388
-
- thumb_func_start sub_80D646C
-sub_80D646C: @ 80D646C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r3, r0, r1
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xA
- ldrsh r1, [r3, r2]
- cmp r0, r1
- ble _080D654A
- movs r0, 0
- strh r0, [r3, 0x8]
- ldrh r0, [r3, 0x20]
- adds r1, r0, 0x1
- movs r0, 0x1
- ands r1, r0
- strh r1, [r3, 0x20]
- movs r2, 0x1C
- ldrsh r0, [r3, r2]
- cmp r0, 0
- beq _080D64DE
- cmp r1, 0
- beq _080D64C8
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r3, 0x22]
- ldrh r2, [r3, 0x18]
- adds r1, r2
- b _080D64DC
- .pool
-_080D64C8:
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r3, 0x18]
- ldrh r2, [r3, 0x24]
- subs r1, r2
-_080D64DC:
- strh r1, [r0, 0x24]
-_080D64DE:
- movs r1, 0x1E
- ldrsh r0, [r3, r1]
- cmp r0, 0
- beq _080D6518
- movs r2, 0x20
- ldrsh r4, [r3, r2]
- cmp r4, 0
- beq _080D6508
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r3, 0x26]
- strh r1, [r0, 0x26]
- b _080D6518
- .pool
-_080D6508:
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r4, [r0, 0x26]
-_080D6518:
- ldrh r0, [r3, 0xC]
- subs r0, 0x1
- strh r0, [r3, 0xC]
- lsls r0, 16
- asrs r4, r0, 16
- cmp r4, 0
- bne _080D654A
- ldr r2, =gSprites
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r4, [r0, 0x24]
- movs r0, 0x16
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r4, [r0, 0x26]
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080D654A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80D646C
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s
index f5b9697af..620940730 100644
--- a/asm/battle_anim_80FE840.s
+++ b/asm/battle_anim_80FE840.s
@@ -183,7 +183,7 @@ sub_80FE988: @ 80FE988
lsrs r0, 24
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldrh r0, [r6, 0x6]
strh r0, [r4, 0x38]
ldr r1, =sub_80FE9E4
@@ -200,7 +200,7 @@ sub_80FE988: @ 80FE988
sub_80FE9E4: @ 80FE9E4
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _080FE9FA
@@ -350,7 +350,7 @@ sub_80FEAD8: @ 80FEAD8
sub_80FEB28: @ 80FEB28
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _080FEB3C
@@ -541,7 +541,7 @@ _080FEC68:
sub_80FECB8: @ 80FECB8
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _080FECE2
@@ -781,7 +781,7 @@ sub_80FEE78: @ 80FEE78
adds r0, r5
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
movs r0, 0x40
strh r0, [r4, 0x38]
ldr r1, =sub_80FEECC
@@ -798,7 +798,7 @@ sub_80FEE78: @ 80FEE78
sub_80FEECC: @ 80FEECC
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _080FEF38
@@ -878,7 +878,7 @@ sub_80FEF44: @ 80FEF44
adds r0, r5
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
movs r0, 0x40
strh r0, [r4, 0x38]
ldr r1, =sub_80FEF98
@@ -895,7 +895,7 @@ sub_80FEF44: @ 80FEF44
sub_80FEF98: @ 80FEF98
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _080FEFF0
@@ -1124,7 +1124,7 @@ _080FF154:
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldrh r0, [r6, 0x4]
ldrh r1, [r5, 0x32]
adds r0, r1
@@ -1175,7 +1175,7 @@ sub_80FF1C0: @ 80FF1C0
movs r0, 0x1
strh r0, [r6, 0x2E]
adds r0, r6, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
ldrh r0, [r6, 0x3C]
strh r5, [r6, 0x2E]
lsls r4, 16
@@ -1272,7 +1272,7 @@ sub_80FF268: @ 80FF268
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_080FF28A:
ldrh r0, [r4, 0x22]
adds r0, 0x20
@@ -3161,7 +3161,7 @@ _08100180:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _08100196
@@ -3190,7 +3190,7 @@ _081001B4:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _081001CA
@@ -3219,7 +3219,7 @@ _081001E6:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _081001FC
@@ -3272,7 +3272,7 @@ _08100254:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _0810026A
@@ -3403,7 +3403,7 @@ _08100362:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _08100378
@@ -3514,7 +3514,7 @@ _08100448:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081004FC
@@ -3566,7 +3566,7 @@ _081004B6:
adds r1, r2, 0
bl sub_8100524
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081004FC
@@ -4152,7 +4152,7 @@ _08100918:
subs r1, r5
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
lsrs r4, r0, 16
bl IsContest
@@ -4869,7 +4869,7 @@ _08100F06:
ldr r6, =gBattleAnimAttacker
ldrb r0, [r6]
movs r1, 0
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
ldr r4, =gBattleAnimArgs
lsrs r0, 24
@@ -4878,7 +4878,7 @@ _08100F06:
strh r0, [r5, 0x20]
ldrb r0, [r6]
movs r1, 0x1
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
ldrh r4, [r4, 0x2]
@@ -5451,7 +5451,7 @@ _0810137A:
adds r3, r5, 0
adds r3, 0x22
adds r0, r6, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
movs r2, 0
ldrsh r1, [r4, r2]
adds r0, r5, 0
@@ -7975,7 +7975,7 @@ _08102794:
mov r12, r5
ldr r7, =gUnknown_08592EBC
mov r8, r7
- ldr r6, =gUnknown_08592EEC
+ ldr r6, =gBattleAnimSpriteTemplate_8592EEC
movs r5, 0x1
_081027B2:
lsls r0, r2, 4
@@ -9082,7 +9082,7 @@ _08103074:
subs r0, 0x28
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldrh r0, [r5, 0x6]
strh r0, [r4, 0x38]
ldr r0, =sub_81030B0
@@ -9097,7 +9097,7 @@ _08103074:
sub_81030B0: @ 81030B0
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _08103100
@@ -10172,7 +10172,7 @@ _0810390E:
subs r1, r2
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xF0
lsls r1, 24
@@ -10754,7 +10754,7 @@ _08103DB6:
movs r1, 0
mov r2, sp
mov r3, r10
- bl sub_80A8924
+ bl SetAverageBattlerPositions
b _08103E42
.pool
_08103E20:
@@ -11093,7 +11093,7 @@ _081040CC:
subs r1, r2
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
@@ -11528,7 +11528,7 @@ _08104448:
adds r0, r6
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldrh r0, [r7]
strh r0, [r5, 0x38]
ldrh r0, [r5, 0x2E]
@@ -11548,7 +11548,7 @@ _08104448:
sub_81044BC: @ 81044BC
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08104520
@@ -11659,7 +11659,7 @@ _0810458A:
sub_8104594: @ 8104594
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _081045A8
@@ -12761,7 +12761,7 @@ sub_8104E74: @ 8104E74
adds r5, r1, r0
ldr r4, =gBattleAnimTarget
ldrb r0, [r4]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r0, 0x20
@@ -12969,7 +12969,7 @@ sub_810501C: @ 810501C
movs r5, 0
strh r0, [r4, 0x20]
ldrb r0, [r6]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r0, 0x10
@@ -13220,7 +13220,7 @@ _081051F2:
adds r1, r4, 0
mov r2, sp
adds r3, r7, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
cmp r4, 0
bne _08105230
adds r0, r5, 0
@@ -13271,7 +13271,7 @@ _0810526A:
sub_8105284: @ 8105284
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _0810529E
@@ -13466,7 +13466,7 @@ _081053FA:
mov r2, sp
mov r3, sp
adds r3, 0x2
- bl sub_80A8924
+ bl SetAverageBattlerPositions
b _0810546C
.pool
_0810544C:
@@ -13526,7 +13526,7 @@ _0810549E:
ldrh r0, [r2]
strh r0, [r5, 0x2E]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r1, =sub_8105284
str r1, [r5, 0x1C]
adds r0, r5, 0
@@ -15088,7 +15088,7 @@ sub_8106140: @ 8106140
lsrs r0, 24
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_810618C
str r0, [r4, 0x1C]
pop {r4,r5}
@@ -15101,7 +15101,7 @@ sub_8106140: @ 8106140
sub_810618C: @ 810618C
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _081061B6
@@ -17006,7 +17006,7 @@ sub_81070AC: @ 81070AC
adds r3, r5, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldrh r0, [r5, 0x22]
adds r0, 0x28
strh r0, [r5, 0x22]
@@ -17049,8 +17049,8 @@ _08107118:
.pool
thumb_func_end sub_81070AC
- thumb_func_start sub_8107144
-sub_8107144: @ 8107144
+ thumb_func_start AnimTask_IsFuryCutterHitRight
+AnimTask_IsFuryCutterHitRight: @ 8107144
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -17065,10 +17065,10 @@ sub_8107144: @ 8107144
pop {r0}
bx r0
.pool
- thumb_func_end sub_8107144
+ thumb_func_end AnimTask_IsFuryCutterHitRight
- thumb_func_start sub_8107168
-sub_8107168: @ 8107168
+ thumb_func_start AnimTask_GetFuryCutterHitCount
+AnimTask_GetFuryCutterHitCount: @ 8107168
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -17081,10 +17081,10 @@ sub_8107168: @ 8107168
pop {r0}
bx r0
.pool
- thumb_func_end sub_8107168
+ thumb_func_end AnimTask_GetFuryCutterHitCount
- thumb_func_start sub_8107188
-sub_8107188: @ 8107188
+ thumb_func_start AnimTask_CreateRaindrops
+AnimTask_CreateRaindrops: @ 8107188
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 24
@@ -17150,7 +17150,7 @@ _0810720A:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8107188
+ thumb_func_end AnimTask_CreateRaindrops
thumb_func_start sub_810721C
sub_810721C: @ 810721C
@@ -17269,7 +17269,7 @@ _081072D8:
lsrs r0, 24
strh r0, [r6, 0x36]
adds r0, r6, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =SpriteCallbackDummy
bl CreateInvisibleSpriteWithCallback
adds r4, r0, 0
@@ -17339,7 +17339,7 @@ sub_8107380: @ 8107380
movs r0, 0x1
strh r0, [r5, 0x2E]
adds r0, r5, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
mov r1, r8
lsrs r6, r1, 8
movs r0, 0x2E
@@ -17464,7 +17464,7 @@ _08107482:
adds r0, r7
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_81074E4
str r0, [r5, 0x1C]
adds r2, r5, 0
@@ -17502,7 +17502,7 @@ sub_81074E4: @ 81074E4
strb r0, [r2]
_08107506:
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08107518
@@ -17637,7 +17637,7 @@ sub_81075EC: @ 81075EC
lsrs r0, 24
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
movs r0, 0x2E
ldrsh r1, [r5, r0]
movs r0, 0xD2
@@ -17678,7 +17678,7 @@ _08107660:
sub_8107674: @ 8107674
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08107688
@@ -18033,8 +18033,8 @@ _0810794C:
bx r0
thumb_func_end sub_810790C
- thumb_func_start sub_8107954
-sub_8107954: @ 8107954
+ thumb_func_start AnimTask_CreateSurfWave
+AnimTask_CreateSurfWave: @ 8107954
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -18256,7 +18256,7 @@ _08107B58:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8107954
+ thumb_func_end AnimTask_CreateSurfWave
thumb_func_start sub_8107B84
sub_8107B84: @ 8107B84
@@ -20234,7 +20234,7 @@ _08108B1A:
sub_8108B2C: @ 8108B2C
push {r4-r6,lr}
adds r6, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08108B86
@@ -20283,7 +20283,7 @@ _08108B86:
sub_8108B94: @ 8108B94
push {r4-r6,lr}
adds r5, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08108BD0
@@ -21144,7 +21144,7 @@ sub_8109244: @ 8109244
lsrs r0, 24
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_810929C
str r0, [r5, 0x1C]
_0810928E:
@@ -21158,7 +21158,7 @@ _0810928E:
sub_810929C: @ 810929C
push {r4-r6,lr}
adds r6, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _081092E4
@@ -22386,7 +22386,7 @@ _08109C3E:
sub_8109C4C: @ 8109C4C
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _08109CA4
@@ -22914,8 +22914,8 @@ _0810A054:
.pool
thumb_func_end sub_8109E2C
- thumb_func_start sub_810A060
-sub_810A060: @ 810A060
+ thumb_func_start AnimTask_BlendBackground
+AnimTask_BlendBackground: @ 810A060
push {r4,lr}
sub sp, 0x10
adds r4, r0, 0
@@ -22938,7 +22938,7 @@ sub_810A060: @ 810A060
pop {r0}
bx r0
.pool
- thumb_func_end sub_810A060
+ thumb_func_end AnimTask_BlendBackground
thumb_func_start sub_810A094
sub_810A094: @ 810A094
@@ -23433,7 +23433,7 @@ sub_810A46C: @ 810A46C
lsrs r0, 24
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x38]
ldrh r0, [r5, 0xA]
@@ -23468,7 +23468,7 @@ sub_810A46C: @ 810A46C
sub_810A4F4: @ 810A4F4
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _0810A55E
@@ -24336,7 +24336,7 @@ sub_810AB78: @ 810AB78
strh r0, [r4, 0x36]
strh r6, [r4, 0x38]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r1, =sub_810ACC0
adds r0, r4, 0
bl StoreSpriteCallbackInData6
@@ -24394,7 +24394,7 @@ _0810AC86:
sub_810AC8C: @ 810AC8C
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _0810ACB4
@@ -26048,7 +26048,7 @@ _0810B990:
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -26155,7 +26155,7 @@ _0810BA74:
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_0810BA86:
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
@@ -26454,7 +26454,7 @@ _0810BCE0:
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_0810BCF2:
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
@@ -26652,7 +26652,7 @@ _0810BE6C:
adds r3, r4, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -26719,7 +26719,7 @@ _0810BEF4:
adds r3, r5, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldrb r0, [r4]
bl GetBattlerSide
lsls r0, 24
@@ -26762,7 +26762,7 @@ _0810BF52:
adds r3, r5, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldrb r0, [r4]
bl GetBattlerSide
lsls r0, 24
@@ -26828,7 +26828,7 @@ _0810BFCC:
adds r0, r1
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
movs r0, 0x40
strh r0, [r5, 0x38]
ldr r1, =sub_810C008
@@ -26845,7 +26845,7 @@ _0810BFCC:
sub_810C008: @ 810C008
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _0810C092
@@ -27192,7 +27192,7 @@ sub_810C2F0: @ 810C2F0
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
- ldr r0, =sub_80A7820
+ ldr r0, =TranslateAnimSpriteToTargetMonLocation
str r0, [r4, 0x1C]
pop {r4,r5}
pop {r0}
@@ -27608,7 +27608,7 @@ _0810C684:
strb r0, [r1]
_0810C6B8:
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_810C6D4
str r0, [r5, 0x1C]
pop {r3}
@@ -27642,7 +27642,7 @@ _0810C6F4:
b _0810C90C
_0810C6F6:
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
ldr r1, =gSineTable
movs r2, 0x38
ldrsh r0, [r4, r2]
@@ -27731,12 +27731,12 @@ _0810C78E:
ands r0, r1
strh r0, [r4, 0x38]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
b _0810C90C
.pool
_0810C7BC:
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
ldr r1, =gSineTable
movs r2, 0x38
ldrsh r0, [r4, r2]
@@ -27872,7 +27872,7 @@ _0810C8B6:
.pool
_0810C8D0:
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _0810C90C
@@ -28414,7 +28414,7 @@ _0810CCCE:
sub_810CD1C: @ 810CD1C
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810CD3E
@@ -28522,8 +28522,8 @@ _0810CDF6:
bx r0
thumb_func_end sub_810CDB0
- thumb_func_start sub_810CDFC
-sub_810CDFC: @ 810CDFC
+ thumb_func_start AnimTask_GetRolloutCounter
+AnimTask_GetRolloutCounter: @ 810CDFC
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -28544,7 +28544,7 @@ sub_810CDFC: @ 810CDFC
pop {r0}
bx r0
.pool
- thumb_func_end sub_810CDFC
+ thumb_func_end AnimTask_GetRolloutCounter
thumb_func_start unc_080B08A0
unc_080B08A0: @ 810CE2C
@@ -28796,7 +28796,7 @@ _0810D028:
mov r1, r9
ldrh r0, [r1, 0x2]
strh r0, [r5, 0x2E]
- ldr r0, =gUnknown_08597358
+ ldr r0, =gBasicHitSplatSpriteTemplate
movs r2, 0x20
ldrsh r1, [r5, r2]
movs r3, 0x22
@@ -29021,7 +29021,7 @@ _0810D1FE:
strh r0, [r6, 0x34]
strh r0, [r6, 0x36]
adds r0, r6, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldrh r0, [r4, 0xA]
strh r0, [r6, 0x38]
ldrh r0, [r4, 0x8]
@@ -29039,7 +29039,7 @@ _0810D1FE:
sub_810D240: @ 810D240
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
bne _0810D26C
@@ -29616,7 +29616,7 @@ sub_810D6A8: @ 810D6A8
lsrs r0, 24
strh r0, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r1, =move_anim_8074EE0
adds r0, r4, 0
bl StoreSpriteCallbackInData6
@@ -29892,7 +29892,7 @@ _0810D918:
lsrs r0, 24
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
@@ -30234,7 +30234,7 @@ _0810DBC2:
sub_810DC10: @ 810DC10
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810DC24
@@ -30270,7 +30270,7 @@ _0810DC44:
movs r1, 0x1
mov r2, sp
adds r3, r6, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -30309,7 +30309,7 @@ _0810DC72:
sub_810DCB4: @ 810DCB4
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810DCC8
@@ -30396,7 +30396,7 @@ sub_810DD50: @ 810DD50
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -30457,7 +30457,7 @@ _0810DDE0:
adds r3, r4, 0
adds r3, 0x22
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -30716,7 +30716,7 @@ _0810DFC8:
adds r0, r4
strh r0, [r6, 0x36]
adds r0, r6, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_80A67BC
str r0, [r6, 0x1C]
ldr r1, =sub_810E028
@@ -30732,7 +30732,7 @@ _0810DFC8:
sub_810E028: @ 810E028
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _0810E03C
@@ -30828,7 +30828,7 @@ _0810E0EC:
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_0810E0FE:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x4]
@@ -30971,7 +30971,7 @@ _0810E1FE:
lsrs r0, 24
strh r0, [r5, 0x36]
adds r0, r5, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
ldr r0, =sub_810E24C
str r0, [r5, 0x1C]
pop {r4,r5}
@@ -30987,7 +30987,7 @@ sub_810E24C: @ 810E24C
movs r0, 0x1
strh r0, [r4, 0x2E]
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
ldrh r1, [r4, 0x34]
lsrs r0, r1, 8
cmp r0, 0xC8
@@ -32074,7 +32074,7 @@ sub_810EA4C: @ 810EA4C
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
- ldr r0, =sub_80A7820
+ ldr r0, =TranslateAnimSpriteToTargetMonLocation
str r0, [r4, 0x1C]
pop {r4,r5}
pop {r0}
@@ -32913,7 +32913,7 @@ sub_810F084: @ 810F084
asrs r5, 16
adds r0, r4, 0
adds r1, r5, 0
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
@@ -34508,7 +34508,7 @@ _0810FDE8:
sub_810FDF0: @ 810FDF0
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0810FE0E
@@ -34537,7 +34537,7 @@ sub_810FE14: @ 810FE14
adds r4, r1, r0
ldr r0, =gBattleAnimTarget
ldrb r0, [r0]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r1, r0, 24
adds r0, r1, 0
@@ -35235,7 +35235,7 @@ _081103C4:
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
ldr r4, =gBattleAnimArgs
lsrs r0, 24
@@ -35244,7 +35244,7 @@ _081103C4:
strh r0, [r6, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x2]
@@ -35314,7 +35314,7 @@ _08110478:
ldr r5, =gBattleAnimTarget
ldrb r0, [r5]
movs r1, 0x2
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
ldr r4, =gBattleAnimArgs
lsrs r0, 24
@@ -35323,7 +35323,7 @@ _08110478:
strh r0, [r6, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x2]
@@ -35407,7 +35407,7 @@ _08110548:
adds r3, r5, 0
adds r3, 0x36
movs r1, 0x1
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_0811055A:
adds r0, r5, 0
bl sub_80A6FD4
@@ -35426,7 +35426,7 @@ _0811055A:
sub_811057C: @ 811057C
push {r4,lr}
adds r4, r0, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08110592
@@ -35464,7 +35464,7 @@ sub_81105B4: @ 81105B4
adds r3, r4, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -35745,7 +35745,7 @@ _081107B2:
subs r1, r2
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
@@ -35844,7 +35844,7 @@ sub_81108CC: @ 81108CC
ands r1, r0
strb r1, [r2]
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081108F8
@@ -35879,7 +35879,7 @@ _0811090E:
lsls r0, 16
lsrs r6, r0, 16
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
bne _08110988
@@ -35899,7 +35899,7 @@ _0811090E:
subs r1, r2
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 24
@@ -35987,7 +35987,7 @@ sub_81109F0: @ 81109F0
adds r3, r5, 0
adds r3, 0x22
movs r1, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
_08110A10:
ldrh r0, [r6]
ldrh r1, [r5, 0x20]
@@ -36190,8 +36190,8 @@ _08110BC6:
bx r0
thumb_func_end sub_8110B80
- thumb_func_start sub_8110BCC
-sub_8110BCC: @ 8110BCC
+ thumb_func_start AnimTask_LoadSandstormBackground
+AnimTask_LoadSandstormBackground: @ 8110BCC
push {r4-r6,lr}
sub sp, 0x10
lsls r0, 24
@@ -36275,7 +36275,7 @@ _08110C6E:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8110BCC
+ thumb_func_end AnimTask_LoadSandstormBackground
thumb_func_start sub_8110CB0
sub_8110CB0: @ 8110CB0
@@ -37059,7 +37059,7 @@ _08111304:
sub_811131C: @ 811131C
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0811134E
@@ -37205,7 +37205,7 @@ sub_8111418: @ 8111418
bl StartSpriteAffineAnim
_08111434:
adds r0, r4, 0
- bl sub_80A7820
+ bl TranslateAnimSpriteToTargetMonLocation
pop {r4}
pop {r0}
bx r0
@@ -37293,8 +37293,8 @@ _081114E6:
bx r0
thumb_func_end sub_811149C
- thumb_func_start sub_81114EC
-sub_81114EC: @ 81114EC
+ thumb_func_start AnimTask_GetSeismicTossDamageLevel
+AnimTask_GetSeismicTossDamageLevel: @ 81114EC
push {lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -37326,7 +37326,7 @@ _0811151A:
pop {r0}
bx r0
.pool
- thumb_func_end sub_81114EC
+ thumb_func_end AnimTask_GetSeismicTossDamageLevel
thumb_func_start sub_811152C
sub_811152C: @ 811152C
@@ -37483,7 +37483,7 @@ sub_8111674: @ 8111674
adds r4, r0, 0
bl sub_8111764
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _08111694
@@ -37541,7 +37541,7 @@ sub_81116E8: @ 81116E8
movs r0, 0x1
strh r0, [r4, 0x2E]
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
movs r1, 0x38
ldrsh r0, [r4, r1]
movs r1, 0xA
@@ -40203,7 +40203,7 @@ sub_8112C6C: @ 8112C6C
lsrs r0, 24
strh r0, [r4, 0x1A]
ldrb r0, [r5]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
@@ -41135,7 +41135,7 @@ _0811342A:
strb r5, [r0, 0x9]
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -42031,7 +42031,7 @@ _08113B60:
sub_8113B90: @ 8113B90
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08113BA4
@@ -43699,7 +43699,7 @@ sub_8114994: @ 8114994
sub_81149FC: @ 81149FC
push {r4,r5,lr}
adds r5, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08114A50
@@ -43746,7 +43746,7 @@ _08114A50:
sub_8114A60: @ 8114A60
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08114A74
@@ -43817,13 +43817,13 @@ sub_8114AF0: @ 8114AF0
ldr r4, =gBattleAnimTarget
ldrb r0, [r4]
movs r1, 0x2
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r0, 24
mov r8, r0
ldrb r0, [r4]
movs r1, 0x3
- bl sub_80A60AC
+ bl GetBattlerSpriteCoord2
lsls r0, 24
lsrs r7, r0, 24
bl Random2
@@ -44120,7 +44120,7 @@ _08114D78:
strh r0, [r4, 0x22]
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -44460,7 +44460,7 @@ _08115046:
strh r0, [r4, 0x20]
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -44663,7 +44663,7 @@ _081151DA:
adds r0, r6
strh r0, [r5, 0x20]
adds r0, r4, 0
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r0, 0x1E
@@ -44693,7 +44693,7 @@ _081151DA:
sub_8115228: @ 8115228
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0811523C
@@ -44735,7 +44735,7 @@ _08115262:
adds r0, r1
strh r0, [r6, 0x20]
adds r0, r5, 0
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
adds r0, 0x20
@@ -45184,8 +45184,8 @@ _081155F4:
.pool
thumb_func_end sub_8115588
- thumb_func_start sub_8115600
-sub_8115600: @ 8115600
+ thumb_func_start AnimTask_IsPowerOver99
+AnimTask_IsPowerOver99: @ 8115600
push {lr}
lsls r0, 24
lsrs r1, r0, 24
@@ -45203,7 +45203,7 @@ _08115614:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8115600
+ thumb_func_end AnimTask_IsPowerOver99
thumb_func_start sub_8115628
sub_8115628: @ 8115628
@@ -47427,8 +47427,8 @@ _08116832:
.pool
thumb_func_end sub_811675C
- thumb_func_start sub_8116848
-sub_8116848: @ 8116848
+ thumb_func_start AnimTask_BlendParticle
+AnimTask_BlendParticle: @ 8116848
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
@@ -47447,7 +47447,7 @@ sub_8116848: @ 8116848
pop {r0}
bx r0
.pool
- thumb_func_end sub_8116848
+ thumb_func_end AnimTask_BlendParticle
thumb_func_start sub_8116874
sub_8116874: @ 8116874
@@ -49190,8 +49190,8 @@ _0811773E:
.pool
thumb_func_end sub_81176D8
- thumb_func_start sub_8117754
-sub_8117754: @ 8117754
+ thumb_func_start AnimTask_IsAttackerOpponentSide
+AnimTask_IsAttackerOpponentSide: @ 8117754
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
@@ -49209,10 +49209,10 @@ sub_8117754: @ 8117754
pop {r0}
bx r0
.pool
- thumb_func_end sub_8117754
+ thumb_func_end AnimTask_IsAttackerOpponentSide
- thumb_func_start sub_8117780
-sub_8117780: @ 8117780
+ thumb_func_start AnimTask_IsTargetOpponentSide
+AnimTask_IsTargetOpponentSide: @ 8117780
push {r4,lr}
adds r4, r0, 0
lsls r4, 24
@@ -49230,10 +49230,10 @@ sub_8117780: @ 8117780
pop {r0}
bx r0
.pool
- thumb_func_end sub_8117780
+ thumb_func_end AnimTask_IsTargetOpponentSide
- thumb_func_start sub_81177AC
-sub_81177AC: @ 81177AC
+ thumb_func_start AnimTask_IsTargetPartner
+AnimTask_IsTargetPartner: @ 81177AC
push {r4,r5,lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -49256,7 +49256,7 @@ _081177C8:
pop {r0}
bx r0
.pool
- thumb_func_end sub_81177AC
+ thumb_func_end AnimTask_IsTargetPartner
thumb_func_start sub_81177E4
sub_81177E4: @ 81177E4
@@ -49753,8 +49753,8 @@ _08117C0C:
.pool
thumb_func_end sub_8117A60
- thumb_func_start sub_8117C24
-sub_8117C24: @ 8117C24
+ thumb_func_start AnimTask_GetBattleTerrain
+AnimTask_GetBattleTerrain: @ 8117C24
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -49766,7 +49766,7 @@ sub_8117C24: @ 8117C24
pop {r0}
bx r0
.pool
- thumb_func_end sub_8117C24
+ thumb_func_end AnimTask_GetBattleTerrain
thumb_func_start sub_8117C44
sub_8117C44: @ 8117C44
@@ -50032,8 +50032,8 @@ _08117E34:
.pool
thumb_func_end sub_8117DD8
- thumb_func_start sub_8117E60
-sub_8117E60: @ 8117E60
+ thumb_func_start AnimTask_IsContest
+AnimTask_IsContest: @ 8117E60
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -50057,7 +50057,7 @@ _08117E84:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8117E60
+ thumb_func_end AnimTask_IsContest
thumb_func_start sub_8117E94
sub_8117E94: @ 8117E94
@@ -50078,8 +50078,8 @@ sub_8117E94: @ 8117E94
.pool
thumb_func_end sub_8117E94
- thumb_func_start sub_8117EC4
-sub_8117EC4: @ 8117EC4
+ thumb_func_start AnimTask_IsTargetSameSide
+AnimTask_IsTargetSameSide: @ 8117EC4
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
@@ -50109,7 +50109,7 @@ _08117EFC:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8117EC4
+ thumb_func_end AnimTask_IsTargetSameSide
thumb_func_start sub_8117F10
sub_8117F10: @ 8117F10
@@ -50366,8 +50366,8 @@ _08118132:
.pool
thumb_func_end SetAnimBgAttribute
- thumb_func_start sub_8118140
-sub_8118140: @ 8118140
+ thumb_func_start GetAnimBgAttribute
+GetAnimBgAttribute: @ 8118140
push {r4,lr}
sub sp, 0x4
lsls r0, 24
@@ -50441,7 +50441,7 @@ _081181CA:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_8118140
+ thumb_func_end GetAnimBgAttribute
thumb_func_start HandleIntroSlide
HandleIntroSlide: @ 81181D4
diff --git a/asm/battle_anim_815A0D4.s b/asm/battle_anim_815A0D4.s
index 6b894a0f1..b31af7d1e 100644
--- a/asm/battle_anim_815A0D4.s
+++ b/asm/battle_anim_815A0D4.s
@@ -231,7 +231,7 @@ sub_815A254: @ 815A254
subs r1, r6
lsls r1, 16
asrs r1, 16
- bl sub_80A74F4
+ bl ArcTan2Neg
lsls r0, 16
movs r1, 0xC0
lsls r1, 23
@@ -775,7 +775,7 @@ sub_815A6C4: @ 815A6C4
movs r1, 0
mov r2, sp
adds r3, r5, 0
- bl sub_80A8924
+ bl SetAverageBattlerPositions
ldr r0, =gBattleAnimAttacker
ldrb r0, [r0]
bl GetBattlerSide
@@ -816,7 +816,7 @@ _0815A6F8:
sub_815A73C: @ 815A73C
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0815A75E
@@ -1012,8 +1012,8 @@ _0815A8C2:
bx r0
thumb_func_end sub_815A8AC
- thumb_func_start sub_815A8C8
-sub_815A8C8: @ 815A8C8
+ thumb_func_start AnimTask_IsTargetPlayerSide
+AnimTask_IsTargetPlayerSide: @ 815A8C8
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -1039,10 +1039,10 @@ _0815A8F0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_815A8C8
+ thumb_func_end AnimTask_IsTargetPlayerSide
- thumb_func_start sub_815A904
-sub_815A904: @ 815A904
+ thumb_func_start AnimTask_IsHealingMove
+AnimTask_IsHealingMove: @ 815A904
push {lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -1064,7 +1064,7 @@ _0815A924:
pop {r0}
bx r0
.pool
- thumb_func_end sub_815A904
+ thumb_func_end AnimTask_IsHealingMove
thumb_func_start sub_815A934
sub_815A934: @ 815A934
@@ -1625,7 +1625,7 @@ _0815ADDC:
ldr r4, =gBattleAnimTarget
_0815ADDE:
ldrb r0, [r4]
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r6, r0, 24
ldrb r0, [r4]
@@ -6104,7 +6104,7 @@ _0815D26E:
strh r0, [r4, 0x18]
_0815D2A0:
adds r0, r5, 0
- bl sub_80A6190
+ bl GetBattlerYCoordWithElevation
lsls r0, 24
lsrs r0, 24
subs r0, 0x22
@@ -8524,7 +8524,7 @@ _0815E5FE:
lsls r0, 2
ldr r1, =gSprites
adds r0, r1
- bl AnimateBallThrow
+ bl TranslateAnimArc
ldrh r0, [r4, 0xC]
adds r0, 0x1
strh r0, [r4, 0xC]
@@ -8542,7 +8542,7 @@ _0815E634:
lsls r0, 2
ldr r1, =gSprites
adds r0, r1
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _0815E6D2
@@ -9804,11 +9804,11 @@ _0815F022:
strh r0, [r4, 0x34]
strh r1, [r4, 0x36]
adds r0, r4, 0
- bl obj_translate_based_on_private_1_2_3_4
+ bl InitAnimLinearTranslation
b _0815F0F8
_0815F038:
adds r0, r4, 0
- bl sub_80A6F3C
+ bl TranslateAnimLinear
lsls r0, 24
cmp r0, 0
beq _0815F106
@@ -10048,8 +10048,8 @@ _0815F1DE:
.pool
thumb_func_end sub_815F18C
- thumb_func_start sub_815F20C
-sub_815F20C: @ 815F20C
+ thumb_func_start AnimTask_MonToSubstitute
+AnimTask_MonToSubstitute: @ 815F20C
push {r4-r7,lr}
mov r7, r9
mov r6, r8
@@ -10183,7 +10183,7 @@ _0815F310:
pop {r0}
bx r0
.pool
- thumb_func_end sub_815F20C
+ thumb_func_end AnimTask_MonToSubstitute
thumb_func_start sub_815F330
sub_815F330: @ 815F330
@@ -10861,8 +10861,8 @@ _0815F896:
.pool
thumb_func_end sub_815F7C4
- thumb_func_start sub_815F8A0
-sub_815F8A0: @ 815F8A0
+ thumb_func_start AnimTask_GetReturnPowerLevel
+AnimTask_GetReturnPowerLevel: @ 815F8A0
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -10904,7 +10904,7 @@ _0815F8E0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_815F8A0
+ thumb_func_end AnimTask_GetReturnPowerLevel
thumb_func_start sub_815F8F4
sub_815F8F4: @ 815F8F4
@@ -12336,8 +12336,8 @@ _081604E8:
bx r0
thumb_func_end sub_81603F4
- thumb_func_start sub_81604F0
-sub_81604F0: @ 81604F0
+ thumb_func_start AnimTask_GetWeather
+AnimTask_GetWeather: @ 81604F0
push {lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -12380,7 +12380,7 @@ _08160538:
bl DestroyAnimVisualTask
pop {r0}
bx r0
- thumb_func_end sub_81604F0
+ thumb_func_end AnimTask_GetWeather
thumb_func_start sub_8160544
sub_8160544: @ 8160544
diff --git a/asm/battle_anim_8170478.s b/asm/battle_anim_8170478.s
index ef7e609d9..ab3f27799 100644
--- a/asm/battle_anim_8170478.s
+++ b/asm/battle_anim_8170478.s
@@ -1030,8 +1030,8 @@ sub_8170D24: @ 8170D24
.pool
thumb_func_end sub_8170D24
- thumb_func_start sub_8170D4C
-sub_8170D4C: @ 8170D4C
+ thumb_func_start AnimTask_IsBallBlockedByTrainer
+AnimTask_IsBallBlockedByTrainer: @ 8170D4C
push {lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -1055,7 +1055,7 @@ _08170D74:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8170D4C
+ thumb_func_end AnimTask_IsBallBlockedByTrainer
thumb_func_start ItemIdToBallId
ItemIdToBallId: @ 8170D84
@@ -1487,7 +1487,7 @@ sub_8171134: @ 8171134
push {r4,r5,lr}
sub sp, 0x4
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081711D2
@@ -2671,7 +2671,7 @@ sub_8171AAC: @ 8171AAC
orrs r0, r1
strb r0, [r3]
adds r0, r4, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _08171ADC
@@ -5652,7 +5652,7 @@ _081733C0:
sub_81733D4: @ 81733D4
push {r4,lr}
adds r4, r0, 0
- bl AnimateBallThrow
+ bl TranslateAnimArc
lsls r0, 24
cmp r0, 0
beq _081733F6
@@ -5757,8 +5757,8 @@ _081734A0:
.pool
thumb_func_end sub_817345C
- thumb_func_start sub_81734B4
-sub_81734B4: @ 81734B4
+ thumb_func_start AnimTask_GetTrappedMoveAnimId
+AnimTask_GetTrappedMoveAnimId: @ 81734B4
push {lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -5805,7 +5805,7 @@ _0817350C:
pop {r0}
bx r0
.pool
- thumb_func_end sub_81734B4
+ thumb_func_end AnimTask_GetTrappedMoveAnimId
thumb_func_start sub_817351C
sub_817351C: @ 817351C
diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc
index d1a8f6656..1d5b01de7 100644
--- a/asm/macros/battle_anim_script.inc
+++ b/asm/macros/battle_anim_script.inc
@@ -66,9 +66,9 @@
.byte \battler
.endm
- .macro setalpha param0
- .byte 0xc
- .2byte \param0
+ .macro setalpha eva, evb
+ .byte 0x0C
+ .2byte ((\evb) << 8) | (\eva)
.endm
.macro blendoff
@@ -266,3 +266,16 @@
.macro stopsound
.byte 0x2f
.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
diff --git a/data/battle_anim_80A9C70.s b/data/battle_anim_80A9C70.s
index 56486b8b7..892984c64 100644
--- a/data/battle_anim_80A9C70.s
+++ b/data/battle_anim_80A9C70.s
@@ -86,20 +86,3 @@ gUnknown_0853EF14:: @ 853EF14
.align 2
gUnknown_0853EF18:: @ 853EF18
spr_template 0x2714, 0x2714, gUnknown_085249CC, gUnknown_0853EEF8, NULL, gUnknown_0853EF14, sub_80A8A6C
-
- .align 2
-gUnknown_0853EF30:: @ 853EF30
- .byte 0xf0, 0xf0, 0x0c, 0x80, 0xf0, 0x30, 0x0d, 0x84, 0x30, 0xf0, 0x0e, 0x86, 0x30, 0x30, 0x08, 0x88
-
- .align 2
-gUnknown_0853EF40:: @ 853EF40
- .4byte 0x00000004, gUnknown_0853EF30
-
- .align 2
-gUnknown_0853EF48:: @ 853EF48
- spr_template 0x271a, 0x271a, gUnknown_08524A3C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gUnknown_0853EF60:: @ 853EF60
- spr_template 0x2798, 0x2798, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A9E44
-
diff --git a/data/battle_anim_80FE840.s b/data/battle_anim_80FE840.s
index 749db42f8..856f379d9 100644
--- a/data/battle_anim_80FE840.s
+++ b/data/battle_anim_80FE840.s
@@ -14,15 +14,15 @@ gUnknown_08592114:: @ 8592114
.4byte gUnknown_085920F0
.align 2
-gUnknown_08592118:: @ 8592118
+gSleepPowderParticleSpriteTemplate:: @ 8592118
spr_template 0x2753, 0x2753, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2
-gUnknown_08592130:: @ 8592130
+gStunSporeParticleSpriteTemplate:: @ 8592130
spr_template 0x2754, 0x2754, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2
-gUnknown_08592148:: @ 8592148
+gPoisonPowderParticleSpriteTemplate:: @ 8592148
spr_template 0x2751, 0x2751, gUnknown_08524944, gUnknown_08592114, NULL, gDummySpriteAffineAnimTable, sub_80FE840
.align 2
@@ -142,7 +142,7 @@ gUnknown_085922B4:: @ 85922B4
.4byte gUnknown_085922A8
.align 2
-gUnknown_085922BC:: @ 85922BC
+gLeechSeedSpriteTemplate:: @ 85922BC
spr_template 0x2716, 0x2716, gUnknown_0852490C, gUnknown_085922B4, NULL, gDummySpriteAffineAnimTable, sub_80FEC48
.align 2
@@ -230,7 +230,7 @@ gUnknown_08592400:: @ 8592400
.4byte gUnknown_085923F0
.align 2
-gUnknown_08592404:: @ 8592404
+gSwiftStarSpriteTemplate:: @ 8592404
spr_template 0x27be, 0x27be, gUnknown_08524974, gDummySpriteAnimTable, NULL, gUnknown_08592400, sub_80FF0F4
.align 2
@@ -353,7 +353,7 @@ gUnknown_08592610:: @ 8592610
spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFB18
.align 2
-gUnknown_08592628:: @ 8592628
+gBattleAnimSpriteTemplate_8592628:: @ 8592628
spr_template 0x27f0, 0x27f0, gUnknown_08524974, gUnknown_085925AC, NULL, gUnknown_08592608, sub_80FFBF4
.align 2
@@ -599,7 +599,7 @@ gUnknown_08592A18:: @ 8592A18
.4byte gUnknown_08592A04
.align 2
-gUnknown_08592A1C:: @ 8592A1C
+gCuttingSliceSpriteTemplate:: @ 8592A1C
spr_template 0x279a, 0x279a, gUnknown_08524A34, gUnknown_08592A18, NULL, gDummySpriteAffineAnimTable, sub_8100AE0
.align 2
@@ -828,7 +828,7 @@ gUnknown_08592DE4:: @ 8592DE4
.align 2
gUnknown_08592DFC:: @ 8592DFC
- spr_template 0x2721, 0x2721, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820
+ spr_template 0x2721, 0x2721, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, TranslateAnimSpriteToTargetMonLocation
.align 2
gUnknown_08592E14:: @ 8592E14
@@ -888,7 +888,7 @@ gUnknown_08592EE8:: @ 8592EE8
.4byte gUnknown_08592ED4
.align 2
-gUnknown_08592EEC:: @ 8592EEC
+gBattleAnimSpriteTemplate_8592EEC:: @ 8592EEC
spr_template 0x27d3, 0x27d3, gUnknown_0852490C, gUnknown_08592EE8, NULL, gDummySpriteAffineAnimTable, sub_8102540
.align 2
@@ -1157,11 +1157,11 @@ gUnknown_0859337C:: @ 859337C
.4byte gUnknown_0859335C
.align 2
-gUnknown_08593380:: @ 8593380
+gBattleAnimSpriteTemplate_8593380:: @ 8593380
spr_template 0x2715, 0x2715, gUnknown_08524ADC, gDummySpriteAnimTable, NULL, gUnknown_0859337C, sub_810387C
.align 2
-gUnknown_08593398:: @ 8593398
+gSonicBoomSpriteTemplate:: @ 8593398
spr_template 0x2713, 0x2713, gUnknown_08524B14, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81038C8
.align 2
@@ -1189,16 +1189,16 @@ gUnknown_08593424:: @ 8593424
.4byte gUnknown_085933E0
.align 2
-gUnknown_08593428:: @ 8593428
- spr_template 0x27b3, 0x27b3, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820
+gSupersonicWaveSpriteTemplate:: @ 8593428
+ spr_template 0x27b3, 0x27b3, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, TranslateAnimSpriteToTargetMonLocation
.align 2
-gUnknown_08593440:: @ 8593440
- spr_template 0x27b4, 0x27b4, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820
+gScreechWaveSpriteTemplate:: @ 8593440
+ spr_template 0x27b4, 0x27b4, gUnknown_08524A14, gDummySpriteAnimTable, NULL, gUnknown_08593420, TranslateAnimSpriteToTargetMonLocation
.align 2
gUnknown_08593458:: @ 8593458
- spr_template 0x2814, 0x2814, gUnknown_08524A1C, gDummySpriteAnimTable, NULL, gUnknown_08593420, sub_80A7820
+ spr_template 0x2814, 0x2814, gUnknown_08524A1C, gDummySpriteAnimTable, NULL, gUnknown_08593420, TranslateAnimSpriteToTargetMonLocation
.align 2
gUnknown_08593470:: @ 8593470
@@ -1357,7 +1357,7 @@ gUnknown_08593718:: @ 8593718
.4byte gUnknown_08593704
.align 2
-gUnknown_0859371C:: @ 859371C
+gBattleAnimSpriteTemplate_859371C:: @ 859371C
spr_template 0x27d6, 0x27d6, gUnknown_08524914, gUnknown_08593718, NULL, gDummySpriteAffineAnimTable, sub_80A77C8
.align 2
@@ -1436,7 +1436,7 @@ gUnknown_08593880:: @ 8593880
spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593818, sub_81052A4
.align 2
-gUnknown_08593898:: @ 8593898
+gBattleAnimSpriteTemplate_8593898:: @ 8593898
spr_template 0x27db, 0x27db, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08593810, sub_81054E8
.align 2
@@ -1497,7 +1497,7 @@ gUnknown_085939A0:: @ 85939A0
spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106140
.align 2
-gUnknown_085939B8:: @ 85939B8
+gBattleAnimSpriteTemplate_85939B8:: @ 85939B8
spr_template 0x27e8, 0x27e8, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81061C4
.align 2
@@ -1514,11 +1514,11 @@ gUnknown_08593A00:: @ 8593A00
.4byte gUnknown_085939E8
.align 2
-gUnknown_08593A04:: @ 8593A04
+gHiddenPowerOrbSpriteTemplate:: @ 8593A04
spr_template 0x27e9, 0x27e9, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_810673C
.align 2
-gUnknown_08593A1C:: @ 8593A1C
+gHiddenPowerOrbScatterSpriteTemplate:: @ 8593A1C
spr_template 0x27e9, 0x27e9, gUnknown_085249CC, gDummySpriteAnimTable, NULL, gUnknown_08593A00, sub_8106878
.align 2
@@ -1620,7 +1620,7 @@ gUnknown_08593B98:: @ 8593B98
.2byte 0xfff8, 0x000c, 0x0400, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000
.align 2
-gUnknown_08593BB8:: @ 8593BB8
+gBattleAnimSpriteTemplate_8593BB8:: @ 8593BB8
spr_template 0x27f1, 0x27f1, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8106E00
.align 2
@@ -1703,7 +1703,7 @@ gUnknown_08595064:: @ 8595064
.4byte gUnknown_08595054
.align 2
-gUnknown_08595068:: @ 8595068
+gBattleAnimSpriteTemplate_8595068:: @ 8595068
spr_template 0x27a2, 0x27a2, gUnknown_08524A8C, gUnknown_08595064, NULL, gUnknown_08595050, sub_8107260
.align 2
@@ -1990,11 +1990,11 @@ gUnknown_085954D0:: @ 85954D0
.4byte gUnknown_085954B8
.align 2
-gUnknown_085954D4:: @ 85954D4
- spr_template 0x272d, 0x272d, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820
+gEmberSpriteTemplate:: @ 85954D4
+ spr_template 0x272d, 0x272d, gUnknown_08524914, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, TranslateAnimSpriteToTargetMonLocation
.align 2
-gUnknown_085954EC:: @ 85954EC
+gEmberFlareSpriteTemplate:: @ 85954EC
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8109198
.align 2
@@ -2031,7 +2031,7 @@ gUnknown_0859556C:: @ 859556C
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08595540, NULL, gDummySpriteAffineAnimTable, sub_8109364
.align 2
-gUnknown_08595584:: @ 8595584
+gBattleAnimSpriteTemplate_8595584:: @ 8595584
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_81093A4
.align 2
@@ -2138,12 +2138,12 @@ gUnknown_08595734:: @ 8595734
spr_template 0x275f, 0x275f, gUnknown_08524914, gUnknown_08595730, NULL, gDummySpriteAffineAnimTable, sub_810A274
.align 2
-gUnknown_0859574C:: @ 859574C
+gBattleAnimSpriteTemplate_859574C:: @ 859574C
spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A308
.align 2
gUnknown_08595764:: @ 8595764
- spr_template 0x27bb, 0x27bb, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820
+ spr_template 0x27bb, 0x27bb, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, TranslateAnimSpriteToTargetMonLocation
.align 2
gUnknown_0859577C:: @ 859577C
@@ -2175,15 +2175,15 @@ gUnknown_085957DC:: @ 85957DC
.4byte gUnknown_085957BC
.align 2
-gUnknown_085957E0:: @ 85957E0
+gBattleAnimSpriteTemplate_85957E0:: @ 85957E0
spr_template 0x282a, 0x282a, gUnknown_08524974, gUnknown_085957B8, NULL, gUnknown_085957DC, sub_810A5BC
.align 2
-gUnknown_085957F8:: @ 85957F8
+gBattleAnimSpriteTemplate_85957F8:: @ 85957F8
spr_template 0x271b, 0x271b, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gUnknown_0859578C, sub_810A628
.align 2
-gUnknown_08595810:: @ 8595810
+gElectricitySpriteTemplate:: @ 8595810
spr_template 0x271b, 0x271b, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_810A75C
.align 2
@@ -2613,7 +2613,7 @@ gUnknown_08595E80:: @ 8595E80
spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEB4
.align 2
-gUnknown_08595E98:: @ 8595E98
+gFistFootSpriteTemplate:: @ 8595E98
spr_template 0x279f, 0x279f, gUnknown_08524914, gUnknown_08595E54, NULL, gDummySpriteAffineAnimTable, sub_810CEE0
.align 2
@@ -2651,7 +2651,7 @@ gUnknown_08595F44:: @ 8595F44
.4byte gUnknown_08595F2C
.align 2
-gUnknown_08595F48:: @ 8595F48
+gMegaPunchKickSpriteTemplate:: @ 8595F48
spr_template 0x279f, 0x279f, gUnknown_085249D4, gUnknown_08595E54, NULL, gUnknown_08595F44, sub_810D278
.align 2
@@ -2841,11 +2841,11 @@ gUnknown_0859623C:: @ 859623C
.4byte gUnknown_08596224
.align 2
-gUnknown_08596240:: @ 8596240
+gPoisonBubbleSpriteTemplate:: @ 8596240
spr_template 0x27a6, 0x27a6, gUnknown_0852496C, gUnknown_08596164, NULL, gUnknown_0859623C, sub_810DDC4
.align 2
-gUnknown_08596258:: @ 8596258
+gWaterBubbleSpriteTemplate:: @ 8596258
spr_template 0x27ab, 0x27ab, gUnknown_08524A8C, gUnknown_08595200, NULL, gUnknown_0859623C, sub_810DDC4
.align 2
@@ -2862,7 +2862,7 @@ gUnknown_085962A0:: @ 85962A0
.4byte gUnknown_08596288
.align 2
-gUnknown_085962A4:: @ 85962A4
+gBattleAnimSpriteTemplate_85962A4:: @ 85962A4
spr_template 0x2719, 0x2719, gUnknown_085249BC, gDummySpriteAnimTable, NULL, gUnknown_085962A0, sub_810DFA8
.align 2
@@ -3067,7 +3067,7 @@ gUnknown_08596624:: @ 8596624
.align 2
gUnknown_0859663C:: @ 859663C
- spr_template 0x27b3, 0x27b3, gUnknown_08524954, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A7820
+ spr_template 0x27b3, 0x27b3, gUnknown_08524954, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, TranslateAnimSpriteToTargetMonLocation
.align 2
gUnknown_08596654:: @ 8596654
@@ -3268,15 +3268,15 @@ gUnknown_08596A2C:: @ 8596A2C
spr_template 0x27c5, 0x27c5, gUnknown_08524AFC, gDummySpriteAnimTable, NULL, gUnknown_08596A28, sub_811067C
.align 2
-gUnknown_08596A44:: @ 8596A44
+gLinearStingerSpriteTemplate:: @ 8596A44
spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110720
.align 2
-gUnknown_08596A5C:: @ 8596A5C
+gPinMissileSpriteTemplate:: @ 8596A5C
spr_template 0x27b1, 0x27b1, gUnknown_0852496C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850
.align 2
-gUnknown_08596A74:: @ 8596A74
+gIcicleSpearSpriteTemplate:: @ 8596A74
spr_template 0x2816, 0x2816, gUnknown_08524974, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110850
.align 2
@@ -3342,7 +3342,7 @@ gUnknown_08596B88:: @ 8596B88
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_085954D0, NULL, gDummySpriteAffineAnimTable, sub_8110B38
.align 2
-gUnknown_08596BA0:: @ 8596BA0
+gBattleAnimSpriteTemplate_8596BA0:: @ 8596BA0
spr_template 0x2815, 0x2815, gUnknown_08524934, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8110E4C
.align 2
@@ -3500,11 +3500,11 @@ gUnknown_08596DD0:: @ 8596DD0
spr_template 0x27d7, 0x27d7, gUnknown_08524A54, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81129F0
.align 2
-gUnknown_08596DE8:: @ 8596DE8
+gBattleAnimSpriteTemplate_8596DE8:: @ 8596DE8
spr_template 0x27d8, 0x27d8, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78
.align 2
-gUnknown_08596E00:: @ 8596E00
+gBattleAnimSpriteTemplate_8596E00:: @ 8596E00
spr_template 0x27ed, 0x27ed, gUnknown_08524A34, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8112B78
.align 2
@@ -3533,7 +3533,7 @@ gUnknown_08596E78:: @ 8596E78
.4byte gUnknown_08596E60
.align 2
-gUnknown_08596E7C:: @ 8596E7C
+gBattleAnimSpriteTemplate_8596E7C:: @ 8596E7C
spr_template 0x272d, 0x272d, gUnknown_08524914, gUnknown_08596E78, NULL, gDummySpriteAffineAnimTable, sub_8113064
.align 2
@@ -3705,7 +3705,7 @@ gUnknown_08597130:: @ 8597130
.4byte gUnknown_08597118
.align 2
-gUnknown_08597138:: @ 8597138
+gBattleAnimSpriteTemplate_8597138:: @ 8597138
spr_template 0x2737, 0x2737, gUnknown_08524914, gUnknown_08597130, NULL, gDummySpriteAffineAnimTable, sub_81144BC
.align 2
@@ -3774,15 +3774,15 @@ gUnknown_08597254:: @ 8597254
.4byte gUnknown_08597240
.align 2
-gUnknown_0859725C:: @ 859725C
+gConfusionDuckSpriteTemplate:: @ 859725C
spr_template 0x2759, 0x2759, gUnknown_0852490C, gUnknown_08597254, NULL, gDummySpriteAffineAnimTable, sub_811572C
.align 2
-gUnknown_08597274:: @ 8597274
+gSimplePaletteBlendSpriteTemplate:: @ 8597274
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81157FC
.align 2
-gUnknown_0859728C:: @ 859728C
+gComplexPaletteBlendSpriteTemplate:: @ 859728C
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81158A4
.align 2
@@ -3799,7 +3799,7 @@ gUnknown_085972C0:: @ 85972C0
spr_template 0x2757, 0x2757, gUnknown_08524914, gUnknown_085972BC, NULL, gDummySpriteAffineAnimTable, sub_81159B4
.align 2
-gUnknown_085972D8:: @ 85972D8
+gBattleAnimSpriteTemplate_85972D8:: @ 85972D8
spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_81160A4
.align 2
@@ -3829,11 +3829,11 @@ gUnknown_08597348:: @ 8597348
.4byte gUnknown_08597330
.align 2
-gUnknown_08597358:: @ 8597358
+gBasicHitSplatSpriteTemplate:: @ 8597358
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116388
.align 2
-gUnknown_08597370:: @ 8597370
+gBattleAnimSpriteTemplate_8597370:: @ 8597370
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116420
.align 2
@@ -3845,7 +3845,7 @@ gUnknown_085973A0:: @ 85973A0
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_8116458
.align 2
-gUnknown_085973B8:: @ 85973B8
+gBattleAnimSpriteTemplate_85973B8:: @ 85973B8
spr_template 0x2797, 0x2797, gUnknown_08524A94, gDummySpriteAnimTable, NULL, gUnknown_08597348, sub_81164F0
.align 2
diff --git a/data/battle_anim_815A0D4.s b/data/battle_anim_815A0D4.s
index 0cb95a7e1..660e5774b 100644
--- a/data/battle_anim_815A0D4.s
+++ b/data/battle_anim_815A0D4.s
@@ -330,7 +330,7 @@ gUnknown_085CE5A8::
spr_template 0x2800, 0x2800, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_815CB88
gUnknown_085CE5C0::
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
.align 2
diff --git a/data/battle_anim_8170478.s b/data/battle_anim_8170478.s
index 07516ba35..5ccf37c54 100644
--- a/data/battle_anim_8170478.s
+++ b/data/battle_anim_8170478.s
@@ -140,7 +140,7 @@ gUnknown_085E5310:: @ 85E5310
.2byte 0x0100, 0x0503, 0x0506, 0x0004
.align 2
-gUnknown_085E5338:: @ 85E5338
+gBattleAnimSpriteTemplate_85E5338:: @ 85E5338
spr_template 0x281d, 0x281d, gUnknown_0852490C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_817330C
.align 2
diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s
index 624a5c69f..9af3ed7a9 100644
--- a/data/battle_anim_scripts.s
+++ b/data/battle_anim_scripts.s
@@ -1,16 +1,20 @@
+#include "constants/battle.h"
#include "constants/battle_anim.h"
#include "constants/rgb.h"
#include "constants/songs.h"
+#include "constants/moves.h"
+ .include "asm/macros.inc"
.include "asm/macros/battle_anim_script.inc"
+ .include "constants/constants.inc"
.section script_data, "aw", %progbits
-.align 2
-gUnknown_082C8D64:: @ 82C8D64
- .2byte 0x2F, 0xC3, 0x140, 0xFFFF
+ .align 2
+gMovesWithQuietBGM::
+ .2byte MOVE_SING, MOVE_PERISH_SONG, MOVE_GRASS_WHISTLE, 0xFFFF
-.align 2
-gBattleAnims_Moves:: @ 82C8D6C
+ .align 2
+gBattleAnims_Moves::
.4byte Move_NONE
.4byte Move_POUND
.4byte Move_KARATE_CHOP
@@ -368,8 +372,8 @@ gBattleAnims_Moves:: @ 82C8D6C
.4byte Move_PSYCHO_BOOST
.4byte Move_COUNT @ cannot be reached, because last move is Psycho Boost
-.align 2
-gBattleAnims_Statuses:: @ 82C92FC
+ .align 2
+gBattleAnims_StatusConditions::
.4byte Status_Poison
.4byte Status_Confusion
.4byte Status_Burn
@@ -380,212 +384,209 @@ gBattleAnims_Statuses:: @ 82C92FC
.4byte Status_Curse
.4byte Status_Nightmare
-.align 2
-gBattleAnims_VariousTable:: @ 82C9320
- .4byte Anim_CastformTransform
- .4byte Anim_StatChange
- .4byte Anim_SubsituteOff
- .4byte Anim_SubsituteOn
- .4byte Anim_Table_4
- .4byte Anim_ItemKnockOff
- .4byte Status_Wrap
- .4byte Anim_ItemEffect
- .4byte Anim_SmokeBallEscape
- .4byte Anim_HangedOn
- .4byte Anim_Rain
- .4byte Anim_Sun
- .4byte Anim_Sandstorm
- .4byte Anim_Hail
- .4byte Status_LeechSeed
- .4byte Anim_Hit
- .4byte Anim_ItemSteal
- .4byte Anim_SnatchMove
- .4byte Anim_FutureSightHit
- .4byte Anim_DoomDesireHit
- .4byte Anim_Table_x14
- .4byte Status_Ingrain
- .4byte Anim_WishHeal
-
-.align 2
-gBattleAnims_Special:: @ 82C937C
- .4byte Anim_LevelUp
- .4byte Anim_SwitchOutPlayer
- .4byte Anim_SwitchOutOpponent
- .4byte Anim_BallThrow
- .4byte Anim_SafariBallThrow
- .4byte Anim_SubstituteToMon
- .4byte Anim_MonToSubstitute
+ .align 2
+gBattleAnims_General::
+ .4byte General_CastformChange
+ .4byte General_StatsChange
+ .4byte General_SubstituteFade
+ .4byte General_SubstituteAppear
+ .4byte General_PokeblockThrow
+ .4byte General_ItemKnockoff
+ .4byte General_TurnTrap
+ .4byte General_ItemEffect
+ .4byte General_SmokeballEscape
+ .4byte General_HangedOn
+ .4byte General_Rain
+ .4byte General_Sun
+ .4byte General_Sandstorm
+ .4byte General_Hail
+ .4byte General_LeechSeedDrain
+ .4byte General_MonHit
+ .4byte General_ItemSteal
+ .4byte General_SnatchMove
+ .4byte General_FutureSightHit
+ .4byte General_DoomDesireHit
+ .4byte General_FocusPunchSetUp
+ .4byte General_IngrainHeal
+ .4byte General_WishHeal
+
+ .align 2
+gBattleAnims_Special::
+ .4byte Special_LevelUp
+ .4byte Special_SwitchOutPlayerMon
+ .4byte Special_SwitchOutOpponentMon
+ .4byte Special_BallThrow
+ .4byte Special_SafariBallThrow
+ .4byte Special_SubstituteToMon
+ .4byte Special_MonToSubstitute
Move_NONE:
Move_MIRROR_MOVE:
Move_POUND:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W003, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_DOUBLE_SLAP:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
- choosetwoturnanim AnimScript_82C93F4, AnimScript_82C9408
-
-AnimScript_82C93DA:
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ choosetwoturnanim DoubleSlapLeft, DoubleSlapRight
+DoubleSlapContinue:
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W003, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82C93F4:
- createsprite gUnknown_08597358, 0x2, -8, 0, 1, 2
- goto AnimScript_82C93DA
-
-AnimScript_82C9408:
- createsprite gUnknown_08597358, 0x2, 8, 0, 1, 2
- goto AnimScript_82C93DA
+DoubleSlapLeft:
+ createsprite gBasicHitSplatSpriteTemplate, 2, -8, 0, 1, 2
+ goto DoubleSlapContinue
+DoubleSlapRight:
+ createsprite gBasicHitSplatSpriteTemplate, 2, 8, 0, 1, 2
+ goto DoubleSlapContinue
Move_POISON_POWDER:
- loadspritegfx 0x2751
- loadspritegfx 0x27A6
- loopsewithpan SE_W077, +63, 0xA, 0x6
- createsprite gUnknown_08592148, 0x82, -30, -22, 117, 80, 5, 1
- createsprite gUnknown_08592148, 0x82, 10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592148, 0x82, -25, -22, 117, 112, 5, 3
- delay 0xF
- createsprite gUnknown_08592148, 0x82, -5, -22, 117, 80, -5, 1
- createsprite gUnknown_08592148, 0x82, 5, -22, 117, 96, 5, 1
- createsprite gUnknown_08592148, 0x82, 0, -22, 117, 69, -5, 1
- createsprite gUnknown_08592148, 0x82, -15, -22, 117, 112, 5, 2
- delay 0x1E
- createsprite gUnknown_08592148, 0x82, -15, -22, 117, 112, 5, 2
- createsprite gUnknown_08592148, 0x82, 15, -22, 117, 80, -5, 1
- createsprite gUnknown_08592148, 0x82, -10, -22, 117, 96, 7, 2
- createsprite gUnknown_08592148, 0x82, -5, -22, 117, 90, -8, 0
- delay 0x14
- createsprite gUnknown_08592148, 0x82, -10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592148, 0x82, 0, -22, 117, 89, 5, 2
- createsprite gUnknown_08592148, 0x82, 20, -22, 117, 112, -8, 2
- createsprite gUnknown_08592148, 0x82, 5, -22, 117, 80, 5, 1
+ loadspritegfx ANIM_TAG_065
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
+ loopsewithpan SE_W077, +63, 10, 6
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -30, -22, 117, 80, 5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 10, -22, 117, 80, -5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -25, -22, 117, 112, 5, 3
+ delay 15
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -5, -22, 117, 80, -5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 5, -22, 117, 96, 5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 0, -22, 117, 69, -5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ delay 30
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 15, -22, 117, 80, -5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -10, -22, 117, 96, 7, 2
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -5, -22, 117, 90, -8, 0
+ delay 20
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, -10, -22, 117, 80, -5, 1
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 0, -22, 117, 89, 5, 2
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 20, -22, 117, 112, -8, 2
+ createsprite gPoisonPowderParticleSpriteTemplate, 130, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_STUN_SPORE:
- loadspritegfx 0x2754
- loopsewithpan SE_W077, +63, 0xA, 0x6
- createsprite gUnknown_08592130, 0x82, -30, -22, 117, 80, 5, 1
- createsprite gUnknown_08592130, 0x82, 10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592130, 0x82, -25, -22, 117, 112, 5, 3
- delay 0xF
- createsprite gUnknown_08592130, 0x82, -5, -22, 117, 80, -5, 1
- createsprite gUnknown_08592130, 0x82, 5, -22, 117, 96, 5, 1
- createsprite gUnknown_08592130, 0x82, 0, -22, 117, 69, -5, 1
- createsprite gUnknown_08592130, 0x82, -15, -22, 117, 112, 5, 2
- delay 0x1E
- createsprite gUnknown_08592130, 0x82, -15, -22, 117, 112, 5, 2
- createsprite gUnknown_08592130, 0x82, 15, -22, 117, 80, -5, 1
- createsprite gUnknown_08592130, 0x82, -10, -22, 117, 96, 7, 2
- createsprite gUnknown_08592130, 0x82, -5, -22, 117, 90, -8, 0
- delay 0x14
- createsprite gUnknown_08592130, 0x82, -10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592130, 0x82, 0, -22, 117, 89, 5, 2
- createsprite gUnknown_08592130, 0x82, 20, -22, 117, 112, -8, 2
- createsprite gUnknown_08592130, 0x82, 5, -22, 117, 80, 5, 1
+ loadspritegfx ANIM_TAG_068
+ loopsewithpan SE_W077, +63, 10, 6
+ createsprite gStunSporeParticleSpriteTemplate, 130, -30, -22, 117, 80, 5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, 10, -22, 117, 80, -5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, -25, -22, 117, 112, 5, 3
+ delay 15
+ createsprite gStunSporeParticleSpriteTemplate, 130, -5, -22, 117, 80, -5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, 5, -22, 117, 96, 5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, 0, -22, 117, 69, -5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ delay 30
+ createsprite gStunSporeParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ createsprite gStunSporeParticleSpriteTemplate, 130, 15, -22, 117, 80, -5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, -10, -22, 117, 96, 7, 2
+ createsprite gStunSporeParticleSpriteTemplate, 130, -5, -22, 117, 90, -8, 0
+ delay 20
+ createsprite gStunSporeParticleSpriteTemplate, 130, -10, -22, 117, 80, -5, 1
+ createsprite gStunSporeParticleSpriteTemplate, 130, 0, -22, 117, 89, 5, 2
+ createsprite gStunSporeParticleSpriteTemplate, 130, 20, -22, 117, 112, -8, 2
+ createsprite gStunSporeParticleSpriteTemplate, 130, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_SLEEP_POWDER:
- loadspritegfx 0x2753
- loopsewithpan SE_W077, +63, 0xA, 0x6
- createsprite gUnknown_08592118, 0x82, -30, -22, 117, 80, 5, 1
- createsprite gUnknown_08592118, 0x82, 10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592118, 0x82, -25, -22, 117, 112, 5, 3
- delay 0xF
- createsprite gUnknown_08592118, 0x82, -5, -22, 117, 80, -5, 1
- createsprite gUnknown_08592118, 0x82, 5, -22, 117, 96, 5, 1
- createsprite gUnknown_08592118, 0x82, 0, -22, 117, 69, -5, 1
- createsprite gUnknown_08592118, 0x82, -15, -22, 117, 112, 5, 2
- delay 0x1E
- createsprite gUnknown_08592118, 0x82, -15, -22, 117, 112, 5, 2
- createsprite gUnknown_08592118, 0x82, 15, -22, 117, 80, -5, 1
- createsprite gUnknown_08592118, 0x82, -10, -22, 117, 96, 7, 2
- createsprite gUnknown_08592118, 0x82, -5, -22, 117, 90, -8, 0
- delay 0x14
- createsprite gUnknown_08592118, 0x82, -10, -22, 117, 80, -5, 1
- createsprite gUnknown_08592118, 0x82, 0, -22, 117, 89, 5, 2
- createsprite gUnknown_08592118, 0x82, 20, -22, 117, 112, -8, 2
- createsprite gUnknown_08592118, 0x82, 5, -22, 117, 80, 5, 1
+ loadspritegfx ANIM_TAG_067
+ loopsewithpan SE_W077, +63, 10, 6
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -30, -22, 117, 80, 5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 10, -22, 117, 80, -5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -25, -22, 117, 112, 5, 3
+ delay 15
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -5, -22, 117, 80, -5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 5, -22, 117, 96, 5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 0, -22, 117, 69, -5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ delay 30
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -15, -22, 117, 112, 5, 2
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 15, -22, 117, 80, -5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -10, -22, 117, 96, 7, 2
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -5, -22, 117, 90, -8, 0
+ delay 20
+ createsprite gSleepPowderParticleSpriteTemplate, 130, -10, -22, 117, 80, -5, 1
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 0, -22, 117, 89, 5, 2
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 20, -22, 117, 112, -8, 2
+ createsprite gSleepPowderParticleSpriteTemplate, 130, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_SWIFT:
- loadspritegfx 0x27BE
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_174
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W129, -64
- createsprite gUnknown_08592404, 0x83, 20, -10, 20, 0, 22, 20, 1
- delay 0x5
+ createsprite gSwiftStarSpriteTemplate, 131, 20, -10, 20, 0, 22, 20, 1
+ delay 5
playsewithpan SE_W129, -64
- createsprite gUnknown_08592404, 0x83, 20, -10, 20, 5, 22, -18, 1
- delay 0x5
+ createsprite gSwiftStarSpriteTemplate, 131, 20, -10, 20, 5, 22, -18, 1
+ delay 5
playsewithpan SE_W129, -64
- createsprite gUnknown_08592404, 0x83, 20, -10, 20, -10, 22, 15, 1
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 18, 1
- createvisualtask sub_80D52D0, 0x2, 3, 2, 0, 18, 1
- delay 0x5
+ createsprite gSwiftStarSpriteTemplate, 131, 20, -10, 20, -10, 22, 15, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 18, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 18, 1
+ delay 5
playsewithpan SE_W129, -64
- createsprite gUnknown_08592404, 0x83, 20, -10, 20, 0, 22, -20, 1
- delay 0x5
+ createsprite gSwiftStarSpriteTemplate, 131, 20, -10, 20, 0, 22, -20, 1
+ delay 5
playsewithpan SE_W129, -64
- createsprite gUnknown_08592404, 0x83, 20, -10, 20, 0, 22, 12, 1
- delay 0x5
+ createsprite gSwiftStarSpriteTemplate, 131, 20, -10, 20, 0, 22, 12, 1
+ delay 5
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_STRENGTH:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W036, -64
- createvisualtask sub_80D5644, 0x5, 0, 2, 0, 96, 30
+ createvisualtask AnimTask_ShakeAndSinkMon, 5, ANIM_ATTACKER, 2, 0, 96, 30
waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 4
- createvisualtask sub_80D5830, 0x2, 1, 18, 6, 2, 4
- delay 0x4
+ delay 10
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 4
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_TARGET, 18, 6, 2, 4
+ delay 4
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x3, 16, 12, 1, 1
- delay 0x4
+ createsprite gBasicHitSplatSpriteTemplate, 3, 16, 12, 1, 1
+ delay 4
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x3, -16, -12, 1, 1
- delay 0x4
+ createsprite gBasicHitSplatSpriteTemplate, 3, -16, -12, 1, 1
+ delay 4
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x3, 3, 4, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 3, 4, 1, 1
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_TACKLE:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x6
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W004, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -593,614 +594,597 @@ Move_TACKLE:
end
Move_BODY_SLAM:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W036, -64
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
waitforvisualfinish
- delay 0xB
- createsprite gUnknown_0857FE70, 0x2, 0, 26, 0, 0, 5
- delay 0x6
- createsprite gUnknown_08597358, 0x4, -10, 0, 1, 0
- loopsewithpan SE_W025B, +63, 0xA, 0x2
- delay 0x1
- createsprite gUnknown_0857FE70, 0x2, 1, -28, 0, 0, 3
+ delay 11
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 26, 0, 0, 5
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 4, -10, 0, 1, 0
+ loopsewithpan SE_W025B, +63, 10, 2
+ delay 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -28, 0, 0, 3
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 1, 4, 0, 12, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 6
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 6
+ delay 10
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 6
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 6
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SUPERSONIC:
- loadspritegfx 0x27B3
+ loadspritegfx ANIM_TAG_163
monbg ANIM_ATK_PARTNER
monbgprio_2A ANIM_ATTACKER
- setalpha 0x80C
- createvisualtask sub_80D52D0, 0x2, 0, 2, 0, 8, 1
- call AnimScript_82C99FF
- call AnimScript_82C99FF
- call AnimScript_82C99FF
- call AnimScript_82C99FF
- call AnimScript_82C99FF
- call AnimScript_82C99FF
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1
+ call Supersonic1
+ call Supersonic1
+ call Supersonic1
+ call Supersonic1
+ call Supersonic1
+ call Supersonic1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
-
-AnimScript_82C99FF:
+Supersonic1:
playsewithpan SE_W048, -64
- createsprite gUnknown_08593428, 0x82, 16, 0, 0, 0, 30, 0
- delay 0x2
+ createsprite gSupersonicWaveSpriteTemplate, 130, 16, 0, 0, 0, 30, 0
+ delay 2
return
Move_SCREECH:
- loadspritegfx 0x27B4
- createvisualtask sub_80D52D0, 0x2, 0, 3, 0, 2, 1
- call AnimScript_82C9A4C
- call AnimScript_82C9A4C
- delay 0x10
- createvisualtask sub_80D5EB8, 0x5, 0, 6, 2048, 2, 1
+ loadspritegfx ANIM_TAG_164
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 3, 0, 2, 1
+ call Screech1
+ call Screech1
+ delay 16
+ createvisualtask AnimTask_SwayMon, 5, 0, 6, 2048, 2, ANIM_TARGET
waitforvisualfinish
end
-
-AnimScript_82C9A4C:
+Screech1:
playsewithpan SE_W103, -64
- createsprite gUnknown_08593440, 0x82, 16, 0, 0, 0, 30, 0
- delay 0x2
+ createsprite gScreechWaveSpriteTemplate, 130, 16, 0, 0, 0, 30, 0
+ delay 2
return
Move_FLAME_WHEEL:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 0
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 0
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 4
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 4
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 8
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 8
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 12
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 12
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 16
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 16
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 20
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 20
playsewithpan SE_W172, -64
- delay 0x2
- createsprite gUnknown_08595584, 0x3, 0, 0, 56, 24
+ delay 2
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 56, 24
playsewithpan SE_W172, -64
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 6
- delay 0x4
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 8, 1
- createvisualtask sub_80A7B98, 0x3, 1, RGB_RED, 12, 1, 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 6
+ delay 4
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 8, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1
playsewithpan SE_W172B, +63
- call AnimScript_82D2D18
- delay 0x7
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 9
+ call FireMoveEffect
+ delay 7
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 9
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-AnimScript_82C9B50:
- createsprite gUnknown_08595584, 0x3, 0, 0, 50
- delay 0x4
+FlameWheel1: @ Unused
+ createsprite gBattleAnimSpriteTemplate_8595584, 3, 0, 0, 50
+ delay 4
return
Move_PIN_MISSILE:
- loadspritegfx 0x27B1
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_161
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W026, -64
- createsprite gUnknown_08596A5C, 0x2, 20, -8, -8, -8, 20, -32
- delay 0xF
- createsprite gUnknown_08596A5C, 0x2, 20, -8, 8, 8, 20, -40
- delay 0x4
+ createsprite gPinMissileSpriteTemplate, 2, 20, -8, -8, -8, 20, -32
+ delay 15
+ createsprite gPinMissileSpriteTemplate, 2, 20, -8, 8, 8, 20, -40
+ delay 4
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, -8, -8, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
- delay 0x9
- createsprite gUnknown_08596A5C, 0x2, 20, -8, 0, 0, 20, -32
- delay 0x4
+ createsprite gBasicHitSplatSpriteTemplate, 3, -8, -8, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
+ delay 9
+ createsprite gPinMissileSpriteTemplate, 2, 20, -8, 0, 0, 20, -32
+ delay 4
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, 8, 8, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
- delay 0xE
+ createsprite gBasicHitSplatSpriteTemplate, 3, 8, 8, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
+ delay 14
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_ICICLE_SPEAR:
- loadspritegfx 0x2816
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_262
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W196, -64
- createsprite gUnknown_08596A74, 0x2, 20, -8, -8, -8, 20, -32
- delay 0xF
- createsprite gUnknown_08596A74, 0x2, 20, -8, 8, 8, 20, -40
- delay 0x4
+ createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, -8, -8, 20, -32
+ delay 15
+ createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, 8, 8, 20, -40
+ delay 4
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, -8, -8, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
- delay 0x9
- createsprite gUnknown_08596A74, 0x2, 20, -8, 0, 0, 20, -32
- delay 0x4
+ createsprite gBasicHitSplatSpriteTemplate, 3, -8, -8, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
+ delay 9
+ createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, 0, 0, 20, -32
+ delay 4
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, 8, 8, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
- delay 0xE
+ createsprite gBasicHitSplatSpriteTemplate, 3, 8, 8, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
+ delay 14
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 2, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 2, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_TAKE_DOWN:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80D5C50, 0x5, 0, -24, 8, 23, 10, 40, 10
- delay 0x23
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 10, 0, 0
- createsprite gUnknown_08597358, 0x4, -10, 0, 1, 0
+ setalpha 12, 8
+ createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10
+ delay 35
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 10, 0, 0
+ createsprite gBasicHitSplatSpriteTemplate, 4, -10, 0, 1, 0
playsewithpan SE_W025B, +63
- delay 0x1
- createsprite gUnknown_0857FE70, 0x2, 1, -16, 0, 0, 4
+ delay 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -16, 0, 0, 4
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 1, 4, 0, 12, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
waitforvisualfinish
- delay 0x2
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
- delay 0x3
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 7
+ delay 2
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
+ delay 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 7
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_DOUBLE_EDGE:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
playsewithpan SE_W129, -64
- createsprite gUnknown_0859728C, 0x2, 2, 4, 2, 0x7FFF, 10, 0, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 2, 4, 2, RGB_WHITE, 10, 0, 0
waitforvisualfinish
- delay 0xA
+ delay 10
playsewithpan SE_W207, -64
- waitplaysewithpan SE_W207, -64, 0x8
- createvisualtask sub_80D5830, 0x2, 0, 18, 6, 2, 4
+ waitplaysewithpan SE_W207, -64, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 2, 4
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 0, 16, 16, RGB_WHITE
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 0, 0, 4
- delay 0x3
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 16, 16, RGB_WHITE
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 0, 0, 4
+ delay 3
waitforvisualfinish
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x84, -10, 0, 1, 0
- createsprite gUnknown_0857FE70, 0x2, 1, -32, 0, 0, 3
+ createsprite gBasicHitSplatSpriteTemplate, 132, -10, 0, 1, 0
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -32, 0, 0, 3
waitforvisualfinish
- createvisualtask sub_80D6134, 0x2, 8, -256, 0, 0
- createvisualtask sub_80D6134, 0x2, 8, -256, 1, 0
- createvisualtask sub_80D5484, 0x2, 0, 4, 0, 12, 1
- createvisualtask sub_80D5484, 0x2, 1, 4, 0, 12, 1
- createsprite gUnknown_08597274, 0x2, 1, 2, 16, 0, RGB_WHITE
+ createvisualtask sub_80D6134, 2, 8, -256, 0, 0
+ createvisualtask sub_80D6134, 2, 8, -256, 1, 0
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 16, 0, RGB_WHITE
waitforvisualfinish
- createvisualtask sub_80D6134, 0x2, 8, -256, 0, 1
- createvisualtask sub_80D6134, 0x2, 8, -256, 1, 1
+ createvisualtask sub_80D6134, 2, 8, -256, 0, 1
+ createvisualtask sub_80D6134, 2, 8, -256, 1, 1
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
- delay 0x3
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 7
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
+ delay 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 7
waitforvisualfinish
end
Move_POISON_STING:
- loadspritegfx 0x27B1
- loadspritegfx 0x2797
- loadspritegfx 0x27A6
+ loadspritegfx ANIM_TAG_161
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W013B, -64
- createsprite gUnknown_08596A44, 0x82, 20, 0, -8, 0, 20
+ createsprite gLinearStingerSpriteTemplate, 130, 20, 0, -8, 0, 20
waitforvisualfinish
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 5, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 5, 1
playsewithpan SE_W030, +63
waitforvisualfinish
- call AnimScript_82D7A71
+ call PoisonBubblesEffect
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_TWINEEDLE:
- loadspritegfx 0x27B1
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_161
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- loopsewithpan SE_W013B, -64, 0x6, 0x2
- createsprite gUnknown_08596A44, 0x82, 10, -4, 0, -4, 20
- createsprite gUnknown_08596A44, 0x82, 20, 12, 10, 12, 20
- delay 0x14
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 5, 1
- createsprite gUnknown_08597370, 0x3, 0, -4, 1, 3
- loopsewithpan SE_W030, +63, 0x5, 0x2
- delay 0x1
- createsprite gUnknown_08597370, 0x3, 10, 12, 1, 3
+ setalpha 12, 8
+ loopsewithpan SE_W013B, -64, 6, 2
+ createsprite gLinearStingerSpriteTemplate, 130, 10, -4, 0, -4, 20
+ createsprite gLinearStingerSpriteTemplate, 130, 20, 12, 10, 12, 20
+ delay 20
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 5, 1
+ createsprite gBattleAnimSpriteTemplate_8597370, 3, 0, -4, 1, 3
+ loopsewithpan SE_W030, +63, 5, 2
+ delay 1
+ createsprite gBattleAnimSpriteTemplate_8597370, 3, 10, 12, 1, 3
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_FIRE_BLAST:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
createsoundtask sub_8158B30, 144, 145
- call AnimScript_82C9FE9
- call AnimScript_82C9FE9
- call AnimScript_82C9FE9
- delay 0x18
- createvisualtask sub_8116620, 0xA, 1, 3, 0, 8, 0
- waitforvisualfinish
- delay 0x13
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 20, 1
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- delay 0x3
- call AnimScript_82CA02D
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1, 2, 8, 0, 0
- waitforvisualfinish
- end
-
-AnimScript_82C9FE9:
- createsprite gUnknown_0859551C, 0x82, 0, 0, 0
- createsprite gUnknown_0859551C, 0x82, 0, 0, 51
- createsprite gUnknown_0859551C, 0x82, 0, 0, 102
- createsprite gUnknown_0859551C, 0x82, 0, 0, 153
- createsprite gUnknown_0859551C, 0x82, 0, 0, 204
- delay 0x5
+ call FireBlast1
+ call FireBlast1
+ call FireBlast1
+ delay 24
+ createvisualtask sub_8116620, 10, 1, 3, 0, 8, RGB_BLACK
+ waitforvisualfinish
+ delay 19
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 20, 1
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ delay 3
+ call FireBlast2
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 1, 2, 8, 0, RGB_BLACK
+ waitforvisualfinish
+ end
+FireBlast1:
+ createsprite gUnknown_0859551C, 130, 0, 0, 0
+ createsprite gUnknown_0859551C, 130, 0, 0, 51
+ createsprite gUnknown_0859551C, 130, 0, 0, 102
+ createsprite gUnknown_0859551C, 130, 0, 0, 153
+ createsprite gUnknown_0859551C, 130, 0, 0, 204
+ delay 5
return
-
-AnimScript_82CA02D:
- createsprite gUnknown_0859556C, 0x82, 0, 0, 10, 0, -2
- createsprite gUnknown_0859556C, 0x82, 0, 0, 13, -2, 0
- createsprite gUnknown_0859556C, 0x82, 0, 0, 13, 2, 0
- createsprite gUnknown_0859556C, 0x82, 0, 0, 15, -2, 2
- createsprite gUnknown_0859556C, 0x82, 0, 0, 15, 2, 2
+FireBlast2:
+ createsprite gUnknown_0859556C, 130, 0, 0, 10, 0, -2
+ createsprite gUnknown_0859556C, 130, 0, 0, 13, -2, 0
+ createsprite gUnknown_0859556C, 130, 0, 0, 13, 2, 0
+ createsprite gUnknown_0859556C, 130, 0, 0, 15, -2, 2
+ createsprite gUnknown_0859556C, 130, 0, 0, 15, 2, 2
return
Move_LEECH_SEED:
- loadspritegfx 0x2716
+ loadspritegfx ANIM_TAG_SEED
playsewithpan SE_W077, -64
- createsprite gUnknown_085922BC, 0x82, 15, 0, 0, 24, 35, -32
- delay 0x8
+ createsprite gLeechSeedSpriteTemplate, 130, 15, 0, 0, 24, 35, -32
+ delay 8
playsewithpan SE_W077, -64
- createsprite gUnknown_085922BC, 0x82, 15, 0, -16, 24, 35, -40
- delay 0x8
+ createsprite gLeechSeedSpriteTemplate, 130, 15, 0, -16, 24, 35, -40
+ delay 8
playsewithpan SE_W077, -64
- createsprite gUnknown_085922BC, 0x82, 15, 0, 16, 24, 35, -37
- delay 0xC
- loopsewithpan SE_W039, +63, 0xA, 0x8
+ createsprite gLeechSeedSpriteTemplate, 130, 15, 0, 16, 24, 35, -37
+ delay 12
+ loopsewithpan SE_W039, +63, 10, 8
waitforvisualfinish
end
Move_EMBER:
- loadspritegfx 0x272D
- loopsewithpan SE_W052, -64, 0x5, 0x2
- createsprite gUnknown_085954D4, 0x82, 20, 0, -16, 24, 20, 1
- delay 0x4
- createsprite gUnknown_085954D4, 0x82, 20, 0, 0, 24, 20, 1
- delay 0x4
- createsprite gUnknown_085954D4, 0x82, 20, 0, 16, 24, 20, 1
- delay 0x10
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loopsewithpan SE_W052, -64, 5, 2
+ createsprite gEmberSpriteTemplate, 130, 20, 0, -16, 24, 20, 1
+ delay 4
+ createsprite gEmberSpriteTemplate, 130, 20, 0, 0, 24, 20, 1
+ delay 4
+ createsprite gEmberSpriteTemplate, 130, 20, 0, 16, 24, 20, 1
+ delay 16
playsewithpan SE_W172, +63
- call AnimScript_82CA135
- call AnimScript_82CA135
- call AnimScript_82CA135
+ call Ember1
+ call Ember1
+ call Ember1
end
-AnimScript_82CA135:
- createsprite gUnknown_085954EC, 0x82, -24, 24, 24, 24, 20, 1, 1
- delay 0x4
+Ember1:
+ createsprite gEmberFlareSpriteTemplate, 130, -24, 24, 24, 24, 20, 1, 1
+ delay 4
return
Move_MEGA_PUNCH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_TARGET
- delay 0x2
- createsprite gUnknown_08597274, 0x2, 1, 0, 0, 16, RGB_BLACK
- setalpha 0x80C
+ delay 2
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 0, 16, RGB_BLACK
+ setalpha 12, 8
playsewithpan SE_W025, +63
- createsprite gUnknown_08595F48, 0x3, 0, 0, 0, 50
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 7, 0x7FFF
- delay 0x32
- call AnimScript_82CA1E9
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 22, 1
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 0, 0x7FFF
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 8, 0, 0
+ createsprite gMegaPunchKickSpriteTemplate, 3, 0, 0, 0, 50
+ createvisualtask sub_8116620, 10, 4, 2, 0, 7, RGB_WHITE
+ delay 50
+ call SetImpactBackground
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1
+ createvisualtask sub_8116620, 10, 4, 2, 0, 0, RGB_WHITE
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0
playsewithpan SE_W233B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x2
+ delay 2
restorebg
waitbgfadein
end
-
-AnimScript_82CA1E9:
- delay 0x2
- createvisualtask sub_8117E60, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82CA220
- createvisualtask sub_815A8C8, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82CA212
- jumpargeq 0x7, 0x1, AnimScript_82CA219
-
-AnimScript_82CA211:
+SetImpactBackground:
+ delay 2
+ createvisualtask AnimTask_IsContest, 2
+ jumprettrue SetImpactContestsBG
+ createvisualtask AnimTask_IsTargetPlayerSide, 2
+ jumpretfalse SetImpactOpponentBG
+ jumprettrue SetImpactPlayerBG
+SetImpactBackgroundRet:
return
-
-AnimScript_82CA212:
+SetImpactOpponentBG:
changebg BG_IMPACT_OPPONENT
- goto AnimScript_82CA211
-
-AnimScript_82CA219:
+ goto SetImpactBackgroundRet
+SetImpactPlayerBG:
changebg BG_IMPACT_PLAYER
- goto AnimScript_82CA211
-
-AnimScript_82CA220:
+ goto SetImpactBackgroundRet
+SetImpactContestsBG:
changebg BG_IMPACT_CONTESTS
- goto AnimScript_82CA211
+ goto SetImpactBackgroundRet
Move_MEGA_KICK:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_TARGET
- delay 0x2
- createsprite gUnknown_08597274, 0x2, 1, 0, 0, 16, RGB_BLACK
- setalpha 0x80C
+ delay 2
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 0, 16, RGB_BLACK
+ setalpha 12, 8
playsewithpan SE_W025, +63
- createsprite gUnknown_08595F48, 0x3, 0, 0, 1, 50
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 7, 0x7FFF
- delay 0x32
+ createsprite gMegaPunchKickSpriteTemplate, 3, 0, 0, 1, 50
+ createvisualtask sub_8116620, 10, 4, 2, 0, 7, RGB_WHITE
+ delay 50
playsewithpan SE_W025B, +63
- call AnimScript_82CA1E9
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 22, 1
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 0, 0x7FFF
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 8, 0, 0
+ call SetImpactBackground
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1
+ createvisualtask sub_8116620, 10, 4, 2, 0, 0, RGB_WHITE
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x2
+ delay 2
restorebg
waitbgfadein
end
Move_COMET_PUNCH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_TARGET
- setalpha 0x80C
- choosetwoturnanim AnimScript_82CA2F1, AnimScript_82CA316
-
-AnimScript_82CA2D7:
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ choosetwoturnanim CometPunchLeft, CometPunchRight
+CometPunchContinue:
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W004, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82CA2F1:
- createsprite gUnknown_08597358, 0x2, -8, -8, 1, 2
- createsprite gUnknown_08595E98, 0x3, -8, 0, 8, 1, 0
- goto AnimScript_82CA2D7
-
-AnimScript_82CA316:
- createsprite gUnknown_08597358, 0x2, 8, -8, 1, 2
- createsprite gUnknown_08595E98, 0x3, 8, 0, 8, 1, 0
- goto AnimScript_82CA2D7
+CometPunchLeft:
+ createsprite gBasicHitSplatSpriteTemplate, 2, -8, -8, 1, 2
+ createsprite gFistFootSpriteTemplate, 3, -8, 0, 8, 1, 0
+ goto CometPunchContinue
+CometPunchRight:
+ createsprite gBasicHitSplatSpriteTemplate, 2, 8, -8, 1, 2
+ createsprite gFistFootSpriteTemplate, 3, 8, 0, 8, 1, 0
+ goto CometPunchContinue
Move_SONIC_BOOM:
- loadspritegfx 0x2713
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_AIR_WAVE
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- call AnimScript_82CA372
- call AnimScript_82CA372
- call AnimScript_82CA372
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 10, 1
- call AnimScript_82CA38A
+ setalpha 12, 8
+ call SonicBoom1
+ call SonicBoom1
+ call SonicBoom1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 10, 1
+ call SonicBoom2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82CA372:
+SonicBoom1:
playsewithpan SE_W013B, -64
- createsprite gUnknown_08593398, 0x82, 16, 0, 0, 0, 15
- delay 0x4
+ createsprite gSonicBoomSpriteTemplate, 130, 16, 0, 0, 0, 15
+ delay 4
return
-
-AnimScript_82CA38A:
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 2
- delay 0x4
+SonicBoom2:
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 2
+ delay 4
return
Move_THUNDER_SHOCK:
- loadspritegfx 0x2711
- loadspritegfx 0x271B
- createvisualtask sub_8116620, 0xA, 1, 0, 0, 6, 0
+ loadspritegfx ANIM_TAG_SPARK
+ loadspritegfx ANIM_TAG_SPARK_2
+ createvisualtask sub_8116620, 10, 1, 0, 0, 6, RGB_BLACK
waitforvisualfinish
- delay 0xA
- createvisualtask sub_810A7DC, 0x5, 0, -44, 0
+ delay 10
+ createvisualtask sub_810A7DC, 5, 0, -44, 0
playsewithpan SE_W085, +63
- delay 0x9
- createvisualtask sub_8116620, 0xA, 4, 0, 0, 13, 0
+ delay 9
+ createvisualtask sub_8116620, 10, 4, 0, 0, 13, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 4, 0, 13, 0, 0
+ createvisualtask sub_8116620, 10, 4, 0, 13, 0, RGB_BLACK
waitforvisualfinish
- delay 0x14
- call AnimScript_82D7BEA
+ delay 20
+ call ElectricityEffect
waitforvisualfinish
- delay 0x14
- createvisualtask sub_8116620, 0xA, 1, 0, 6, 0, 0
+ delay 20
+ createvisualtask sub_8116620, 10, 1, 0, 6, 0, RGB_BLACK
waitforvisualfinish
end
Move_THUNDERBOLT:
- loadspritegfx 0x2711
- loadspritegfx 0x282A
- loadspritegfx 0x271B
- createvisualtask sub_8116620, 0xA, 1, 0, 0, 6, 0
+ loadspritegfx ANIM_TAG_SPARK
+ loadspritegfx ANIM_TAG_282
+ loadspritegfx ANIM_TAG_SPARK_2
+ createvisualtask sub_8116620, 10, 1, 0, 0, 6, RGB_BLACK
waitforvisualfinish
- delay 0xA
- createvisualtask sub_810A7DC, 0x5, 24, -52, 0
+ delay 10
+ createvisualtask sub_810A7DC, 5, 24, -52, 0
playsewithpan SE_W085, +63
- delay 0x7
- createvisualtask sub_810A7DC, 0x5, -24, -52, 0
+ delay 7
+ createvisualtask sub_810A7DC, 5, -24, -52, 0
playsewithpan SE_W085, +63
- delay 0x7
- createvisualtask sub_810A7DC, 0x5, 0, -60, 1
+ delay 7
+ createvisualtask sub_810A7DC, 5, 0, -60, 1
playsewithpan SE_W085, +63
- delay 0x9
- createvisualtask sub_8116620, 0xA, 4, 0, 0, 13, 0
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 4, 0, 13, 0, 0
- waitforvisualfinish
- delay 0x14
- createsprite gUnknown_085957E0, 0x83, 44, 0, 0, 3
- createsprite gUnknown_085957F8, 0x84, 0, 0, 32, 44, 0, 40, 0, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 32, 44, 64, 40, 1, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 32, 44, 128, 40, 0, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 32, 44, 192, 40, 2, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 16, 44, 32, 40, 0, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 16, 44, 96, 40, 1, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 16, 44, 160, 40, 0, -32765
- createsprite gUnknown_085957F8, 0x84, 0, 0, 16, 44, 224, 40, 2, -32765
+ delay 9
+ createvisualtask sub_8116620, 10, 4, 0, 0, 13, RGB_BLACK
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 4, 0, 13, 0, RGB_BLACK
+ waitforvisualfinish
+ delay 20
+ createsprite gBattleAnimSpriteTemplate_85957E0, 131, 44, 0, 0, 3
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 32, 44, 0, 40, 0, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 32, 44, 64, 40, 1, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 32, 44, 128, 40, 0, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 32, 44, 192, 40, 2, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 16, 44, 32, 40, 0, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 16, 44, 96, 40, 1, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 16, 44, 160, 40, 0, -32765
+ createsprite gBattleAnimSpriteTemplate_85957F8, 132, 0, 0, 16, 44, 224, 40, 2, -32765
playsewithpan SE_W063, +63
- delay 0x0
- createvisualtask sub_8116620, 0xA, 1, 0, 2, 2, 0
- delay 0x6
- createvisualtask sub_8116620, 0xA, 1, 0, 6, 6, 0
- delay 0x6
- createvisualtask sub_8116620, 0xA, 1, 0, 2, 2, 0
- delay 0x6
- createvisualtask sub_8116620, 0xA, 1, 0, 6, 6, 0
+ delay 0
+ createvisualtask sub_8116620, 10, 1, 0, 2, 2, RGB_BLACK
+ delay 6
+ createvisualtask sub_8116620, 10, 1, 0, 6, 6, RGB_BLACK
+ delay 6
+ createvisualtask sub_8116620, 10, 1, 0, 2, 2, RGB_BLACK
+ delay 6
+ createvisualtask sub_8116620, 10, 1, 0, 6, 6, RGB_BLACK
waitforvisualfinish
- delay 0x14
- waitplaysewithpan SE_W085B, +63, 0x13
- call AnimScript_82D7BEA
+ delay 20
+ waitplaysewithpan SE_W085B, +63, 19
+ call ElectricityEffect
waitforvisualfinish
- delay 0x14
- createvisualtask sub_8116620, 0xA, 1, 0, 6, 0, 0
+ delay 20
+ createvisualtask sub_8116620, 10, 1, 0, 6, 0, RGB_BLACK
waitforvisualfinish
end
Move_THUNDER_WAVE:
- loadspritegfx 0x2711
- loadspritegfx 0x271B
- loadspritegfx 0x27BD
- createvisualtask sub_8116620, 0xA, 1, 0, 0, 6, 0
+ loadspritegfx ANIM_TAG_SPARK
+ loadspritegfx ANIM_TAG_SPARK_2
+ loadspritegfx ANIM_TAG_173
+ createvisualtask sub_8116620, 10, 1, 0, 0, 6, RGB_BLACK
waitforvisualfinish
- delay 0xA
- createvisualtask sub_810A7DC, 0x5, 0, -48, 0
+ delay 10
+ createvisualtask sub_810A7DC, 5, 0, -48, 0
playsewithpan SE_W086, +63
- delay 0x14
- loopsewithpan SE_W085B, +63, 0xA, 0x4
- createsprite gUnknown_08595840, 0x82, -16, -16
- delay 0x4
- createsprite gUnknown_08595840, 0x82, -16, 0
- delay 0x4
- createsprite gUnknown_08595840, 0x82, -16, 16
+ delay 20
+ loopsewithpan SE_W085B, +63, 10, 4
+ createsprite gUnknown_08595840, 130, -16, -16
+ delay 4
+ createsprite gUnknown_08595840, 130, -16, 0
+ delay 4
+ createsprite gUnknown_08595840, 130, -16, 16
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1, 0, 6, 0, 0
+ createvisualtask sub_8116620, 10, 1, 0, 6, 0, RGB_BLACK
waitforvisualfinish
end
Move_BEAT_UP:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_TARGET
- setalpha 0x80C
- choosetwoturnanim AnimScript_82CA648, AnimScript_82CA6B9
-
-AnimScript_82CA643:
+ setalpha 12, 8
+ choosetwoturnanim BeatUpLeft, BeatUpRight
+BeatUpContinue:
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82CA648:
- createsprite gUnknown_08597358, 0x82, -20, -20, 1, 2
- createsprite gUnknown_08595E98, 0x83, -20, -12, 8, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+BeatUpLeft:
+ createsprite gBasicHitSplatSpriteTemplate, 130, -20, -20, 1, 2
+ createsprite gFistFootSpriteTemplate, 131, -20, -12, 8, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x82, 8, 0, 1, 2
- createsprite gUnknown_08595E98, 0x83, 8, 8, 8, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 130, 8, 0, 1, 2
+ createsprite gFistFootSpriteTemplate, 131, 8, 8, 8, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
- goto AnimScript_82CA643
-
-AnimScript_82CA6B9:
- createsprite gUnknown_08597358, 0x82, 12, -20, 1, 2
- createsprite gUnknown_08595E98, 0x83, 12, -12, 8, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ goto BeatUpContinue
+BeatUpRight:
+ createsprite gBasicHitSplatSpriteTemplate, 130, 12, -20, 1, 2
+ createsprite gFistFootSpriteTemplate, 131, 12, -12, 8, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x82, -12, 0, 1, 2
- createsprite gUnknown_08595E98, 0x83, -12, 8, 8, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 130, -12, 0, 1, 2
+ createsprite gFistFootSpriteTemplate, 131, -12, 8, 8, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
- goto AnimScript_82CA643
+ goto BeatUpContinue
Move_STOMP:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W104, +63
- createsprite gUnknown_08595F60, 0x3, 0, -32, 15
- delay 0x13
- createsprite gUnknown_08597358, 0x2, 0, -8, 1, 1
- createvisualtask sub_80D51AC, 0x2, 1, 0, 4, 9, 1
+ createsprite gUnknown_08595F60, 3, 0, -32, 15
+ delay 19
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, -8, 1, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 4, 9, 1
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -1208,19 +1192,19 @@ Move_STOMP:
end
Move_TAIL_WHIP:
- loopsewithpan SE_W039, -64, 0x18, 0x3
- createvisualtask sub_80D5830, 0x2, 0, 12, 4, 2, 3
+ loopsewithpan SE_W039, -64, 24, 3
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 4, 2, 3
waitforvisualfinish
end
Move_CUT:
- loadspritegfx 0x279A
+ loadspritegfx ANIM_TAG_138
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W015, +63
- createsprite gUnknown_08592A1C, 0x2, 40, -32, 0
- delay 0x5
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 10, 1
+ createsprite gCuttingSliceSpriteTemplate, 2, 40, -32, 0
+ delay 5
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
@@ -1228,682 +1212,664 @@ Move_CUT:
end
Move_HIDDEN_POWER:
- loadspritegfx 0x27E9
+ loadspritegfx ANIM_TAG_217
playsewithpan SE_W036, -64
- createvisualtask sub_80D6064, 0x5, -7, -7, 11, 0, 0
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0
waitforvisualfinish
- delay 0x1E
- createvisualtask sub_80A7B98, 0x5, 0, RGB(31, 31, 19), 12, 5, 1
- delay 0x4
- createvisualtask sub_80D6064, 0x5, -7, -7, 11, 0, 0
+ delay 30
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB(31, 31, 19), 12, 5, 1
+ delay 4
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0
playsewithpan SE_W179, -64
- createsprite gUnknown_08593A04, 0x2, 26, 0
- createsprite gUnknown_08593A04, 0x2, 26, 42
- createsprite gUnknown_08593A04, 0x2, 26, 84
- createsprite gUnknown_08593A04, 0x2, 26, 126
- createsprite gUnknown_08593A04, 0x2, 26, 168
- createsprite gUnknown_08593A04, 0x2, 26, 210
- delay 0x34
- setarg 0x7, 0xFFFF
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 0
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 42
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 84
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 126
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 168
+ createsprite gHiddenPowerOrbSpriteTemplate, 2, 26, 210
+ delay 52
+ setarg 7, -1
playsewithpan SE_W115, -64
- createvisualtask sub_80D6064, 0x5, -7, -7, 11, 0, 0
- createsprite gUnknown_08593A1C, 0x82, 0
- createsprite gUnknown_08593A1C, 0x82, 32
- createsprite gUnknown_08593A1C, 0x82, 64
- createsprite gUnknown_08593A1C, 0x82, 96
- createsprite gUnknown_08593A1C, 0x82, 128
- createsprite gUnknown_08593A1C, 0x82, 160
- createsprite gUnknown_08593A1C, 0x82, 192
- createsprite gUnknown_08593A1C, 0x82, 224
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 0
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 32
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 64
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 96
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 128
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 160
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 192
+ createsprite gHiddenPowerOrbScatterSpriteTemplate, 130, 224
end
Move_REVERSAL:
- loadspritegfx 0x27FC
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_236
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
playsewithpan SE_W197, -64
- createsprite gUnknown_0859728C, 0x2, 31, 3, 3, 0x7FFF, 8, 0, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 3, RGB_WHITE, 8, 0, 0
waitforvisualfinish
- delay 0x1E
- createvisualtask sub_8115A04, 0x2, 31, 3, 2, 0, 10, 0x7FFF
- delay 0xA
+ delay 30
+ createvisualtask sub_8115A04, 2, 31, 3, 2, 0, 10, RGB_WHITE
+ delay 10
playsewithpan SE_W179, -64
- createsprite gUnknown_085CE5D8, 0x2, 26, 0
- createsprite gUnknown_085CE5D8, 0x2, 26, 42
- createsprite gUnknown_085CE5D8, 0x2, 26, 84
- createsprite gUnknown_085CE5D8, 0x2, 26, 126
- createsprite gUnknown_085CE5D8, 0x2, 26, 168
- createsprite gUnknown_085CE5D8, 0x2, 26, 210
- waitforvisualfinish
- delay 0x14
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x8
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 0
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 42
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 84
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 126
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 168
+ createsprite gBattleAnimSpriteTemplate_85CE5D8, 2, 26, 210
+ waitforvisualfinish
+ delay 20
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 8
playsewithpan SE_W233B, +63
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0x7FFF, 8, 0, 0
- createsprite gUnknown_08595E98, 0x84, 0, 0, 10, 1, 0
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- createvisualtask sub_80D6388, 0x5, 0, 1, 8, 1, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_WHITE, 8, 0, 0
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 10, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ createvisualtask sub_80D6388, 5, 0, 1, 8, 1, 0
end
Move_PURSUIT:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
fadetobg BG_DARK
waitbgfadein
- delay 0x0
- setalpha 0x80C
- choosetwoturnanim AnimScript_82CA99F, AnimScript_82CA9C8
-
-AnimScript_82CA996:
+ delay 0
+ setalpha 12, 8
+ choosetwoturnanim PursuitNormal, PursuitOnSwitchout
+PursuitContinue:
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x0
+ delay 0
restorebg
waitbgfadein
end
-
-AnimScript_82CA99F:
+PursuitNormal:
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D6388, 0x5, 0, 1, 6, 1, 0
- goto AnimScript_82CA996
-
-AnimScript_82CA9C8:
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask sub_80D6388, 5, 0, 1, 6, 1, 0
+ goto PursuitContinue
+PursuitOnSwitchout:
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createvisualtask sub_80D6388, 0x5, 0, 1, 6, 1, 0
- goto AnimScript_82CA996
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createvisualtask sub_80D6388, 5, 0, 1, 6, 1, 0
+ goto PursuitContinue
Move_SPIKE_CANNON:
- loadspritegfx 0x27B1
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_161
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D5C50, 0x5, 0, -4, 0, 4, 6, 8, 4
+ setalpha 12, 8
+ createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -4, 0, 4, 6, 8, 4
waitforvisualfinish
- loopsewithpan SE_W013B, -64, 0x5, 0x3
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
- createsprite gUnknown_08596A44, 0x2, 10, -8, -8, -8, 20
- createsprite gUnknown_08596A44, 0x2, 18, 0, 0, 0, 20
- createsprite gUnknown_08596A44, 0x2, 26, 8, 8, 8, 20
+ loopsewithpan SE_W013B, -64, 5, 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
+ createsprite gLinearStingerSpriteTemplate, 2, 10, -8, -8, -8, 20
+ createsprite gLinearStingerSpriteTemplate, 2, 18, 0, 0, 0, 20
+ createsprite gLinearStingerSpriteTemplate, 2, 26, 8, 8, 8, 20
waitforvisualfinish
- createsprite gUnknown_08597370, 0x3, -8, -8, 1, 2
- createsprite gUnknown_08597370, 0x3, 0, 0, 1, 2
- createsprite gUnknown_08597370, 0x3, 8, 8, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 7, 1
- loopsewithpan SE_W030, +63, 0x5, 0x3
+ createsprite gBattleAnimSpriteTemplate_8597370, 3, -8, -8, 1, 2
+ createsprite gBattleAnimSpriteTemplate_8597370, 3, 0, 0, 1, 2
+ createsprite gBattleAnimSpriteTemplate_8597370, 3, 8, 8, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 7, 1
+ loopsewithpan SE_W030, +63, 5, 3
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_SWORDS_DANCE:
- loadspritegfx 0x2715
+ loadspritegfx ANIM_TAG_SWORD
monbg ANIM_ATTACKER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W014, -64
- createvisualtask sub_80D5830, 0x2, 0, 16, 6, 1, 4
- createsprite gUnknown_08593380, 0x2, 0, 0
- delay 0x16
- createvisualtask sub_8115D94, 0x2, 10005, 2, 2, 32754, 16, 0, 0
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 16, 6, 1, 4
+ createsprite gBattleAnimSpriteTemplate_8593380, 2, 0, 0
+ delay 22
+ createvisualtask sub_8115D94, 2, ANIM_TAG_SWORD, 2, 2, RGB(18, 31, 31), 16, 0, 0
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
- delay 0x1
+ delay 1
end
Move_PSYCH_UP:
- loadspritegfx 0x27D4
+ loadspritegfx ANIM_TAG_196
monbg ANIM_ATK_PARTNER
- createvisualtask sub_8115B0C, 0x2, 1, 2, 6, 1, 11, 0
- setalpha 0x80C
- loopsewithpan SE_W060B, -64, 0x5, 0xA
- createsprite gUnknown_08596548, 0x2, 0, 0, 0, 0
- createvisualtask sub_80D5EB8, 0x5, 0, 5, 2560, 8, 0
- delay 0x7F
- delay 0x4
+ createvisualtask sub_8115B0C, 2, 1, 2, 6, 1, 11, 0
+ setalpha 12, 8
+ loopsewithpan SE_W060B, -64, 5, 10
+ createsprite gUnknown_08596548, 2, 0, 0, 0, 0
+ createvisualtask AnimTask_SwayMon, 5, 0, 5, 2560, 8, ANIM_ATTACKER
+ delay 127
+ delay 4
playsewithpan SE_W060, -64
- createvisualtask sub_80D6064, 0x5, -5, -5, 10, 0, 1
- createvisualtask sub_8116620, 0x9, 2, 2, 10, 0, 1023
- delay 0x1E
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1
+ createvisualtask sub_8116620, 9, 2, 2, 10, 0, RGB_YELLOW
+ delay 30
clearmonbg ANIM_ATK_PARTNER
blendoff
waitforvisualfinish
end
Move_DIZZY_PUNCH:
- loadspritegfx 0x2759
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_DUCK
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
- call AnimScript_82CAC77
- createsprite gUnknown_08595E98, 0x85, 16, 8, 20, 1, 0
- createsprite gUnknown_08597358, 0x84, 16, 0, 1, 1
+ setalpha 12, 8
+ call DizzyPunch1
+ createsprite gFistFootSpriteTemplate, 133, 16, 8, 20, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 132, 16, 0, 1, 1
playsewithpan SE_W004, +63
- createsprite gUnknown_08595F78, 0x83, 16, 8, 160, -32
- createsprite gUnknown_08595F78, 0x83, 16, 8, -256, -40
- createsprite gUnknown_08595F78, 0x83, 16, 8, 128, -16
- createsprite gUnknown_08595F78, 0x83, 16, 8, 416, -38
- createsprite gUnknown_08595F78, 0x83, 16, 8, -128, -22
- createsprite gUnknown_08595F78, 0x83, 16, 8, -384, -31
- delay 0xA
- call AnimScript_82CAC77
- createsprite gUnknown_08595E98, 0x85, -16, -8, 20, 1, 0
- createsprite gUnknown_08597358, 0x84, -16, -16, 1, 1
+ createsprite gUnknown_08595F78, 131, 16, 8, 160, -32
+ createsprite gUnknown_08595F78, 131, 16, 8, -256, -40
+ createsprite gUnknown_08595F78, 131, 16, 8, 128, -16
+ createsprite gUnknown_08595F78, 131, 16, 8, 416, -38
+ createsprite gUnknown_08595F78, 131, 16, 8, -128, -22
+ createsprite gUnknown_08595F78, 131, 16, 8, -384, -31
+ delay 10
+ call DizzyPunch1
+ createsprite gFistFootSpriteTemplate, 133, -16, -8, 20, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 132, -16, -16, 1, 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08595F78, 0x83, -16, -8, 160, -32
- createsprite gUnknown_08595F78, 0x83, -16, -8, -256, -40
- createsprite gUnknown_08595F78, 0x83, -16, -8, 128, -16
- createsprite gUnknown_08595F78, 0x83, -16, -8, 416, -38
- createsprite gUnknown_08595F78, 0x83, -16, -8, -128, -22
- createsprite gUnknown_08595F78, 0x83, -16, -8, -384, -31
+ createsprite gUnknown_08595F78, 131, -16, -8, 160, -32
+ createsprite gUnknown_08595F78, 131, -16, -8, -256, -40
+ createsprite gUnknown_08595F78, 131, -16, -8, 128, -16
+ createsprite gUnknown_08595F78, 131, -16, -8, 416, -38
+ createsprite gUnknown_08595F78, 131, -16, -8, -128, -22
+ createsprite gUnknown_08595F78, 131, -16, -8, -384, -31
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82CAC77:
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x6
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 7, 1
+DizzyPunch1:
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 6
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 7, 1
return
Move_FIRE_SPIN:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
playsewithpan SE_W221B, +63
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 47, 1
- call AnimScript_82CACBF
- call AnimScript_82CACBF
- call AnimScript_82CACBF
- waitforvisualfinish
- end
-
-AnimScript_82CACBF:
- createsprite gUnknown_08596B88, 0x82, 0, 28, 528, 30, 13, 50, 1
- delay 0x2
- createsprite gUnknown_08596B88, 0x82, 0, 32, 480, 20, 16, -46, 1
- delay 0x2
- createsprite gUnknown_08596B88, 0x82, 0, 33, 576, 20, 8, 42, 1
- delay 0x2
- createsprite gUnknown_08596B88, 0x82, 0, 31, 400, 25, 11, -42, 1
- delay 0x2
- createsprite gUnknown_08596B88, 0x82, 0, 28, 512, 25, 16, 46, 1
- delay 0x2
- createsprite gUnknown_08596B88, 0x82, 0, 33, 464, 30, 15, -50, 1
- delay 0x2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 47, 1
+ call FireSpinEffect
+ call FireSpinEffect
+ call FireSpinEffect
+ waitforvisualfinish
+ end
+
+FireSpinEffect:
+ createsprite gUnknown_08596B88, 130, 0, 28, 528, 30, 13, 50, 1
+ delay 2
+ createsprite gUnknown_08596B88, 130, 0, 32, 480, 20, 16, -46, 1
+ delay 2
+ createsprite gUnknown_08596B88, 130, 0, 33, 576, 20, 8, 42, 1
+ delay 2
+ createsprite gUnknown_08596B88, 130, 0, 31, 400, 25, 11, -42, 1
+ delay 2
+ createsprite gUnknown_08596B88, 130, 0, 28, 512, 25, 16, 46, 1
+ delay 2
+ createsprite gUnknown_08596B88, 130, 0, 33, 464, 30, 15, -50, 1
+ delay 2
return
Move_FURY_CUTTER:
- loadspritegfx 0x279A
+ loadspritegfx ANIM_TAG_138
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W013, +63
- createvisualtask sub_8107144, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82CADA7
- goto AnimScript_82CADB9
-
-AnimScript_82CAD6A:
- createvisualtask sub_8107168, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82CAD8E
- jumpargeq 0x7, 0x2, AnimScript_82CADCB
- jumpargeq 0x7, 0x3, AnimScript_82CADE5
- goto AnimScript_82CADFF
-
-AnimScript_82CAD8E:
- delay 0x5
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 10, 1
+ createvisualtask AnimTask_IsFuryCutterHitRight, 2
+ jumpretfalse FuryCutterLeft
+ goto FuryCutterRight
+FuryCutterContinue:
+ createvisualtask AnimTask_GetFuryCutterHitCount, 2
+ jumpreteq 1, FuryCutterContinue2
+ jumpreteq 2, FuryCutterMedium
+ jumpreteq 3, FuryCutterStrong
+ goto FuryCutterStrongest
+FuryCutterContinue2:
+ delay 5
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
waitforvisualfinish
end
-
-AnimScript_82CADA7:
- createsprite gUnknown_08592A1C, 0x2, 40, -32, 0
- goto AnimScript_82CAD6A
-
-AnimScript_82CADB9:
- createsprite gUnknown_08592A1C, 0x2, 40, -32, 1
- goto AnimScript_82CAD6A
-
-AnimScript_82CADCB:
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 10505, 4, 0, 0
- goto AnimScript_82CAD8E
-
-AnimScript_82CADE5:
- createsprite gUnknown_0859728C, 0x2, 31, 3, 3, 10505, 4, 0, 0
- goto AnimScript_82CAD8E
-
-AnimScript_82CADFF:
- createsprite gUnknown_0859728C, 0x2, 31, 3, 3, 10505, 4, 0, 0
- goto AnimScript_82CAD8E
+FuryCutterLeft:
+ createsprite gCuttingSliceSpriteTemplate, 2, 40, -32, 0
+ goto FuryCutterContinue
+FuryCutterRight:
+ createsprite gCuttingSliceSpriteTemplate, 2, 40, -32, 1
+ goto FuryCutterContinue
+FuryCutterMedium:
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB(9, 8, 10), 4, 0, 0
+ goto FuryCutterContinue2
+FuryCutterStrong:
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 3, RGB(9, 8, 10), 4, 0, 0
+ goto FuryCutterContinue2
+FuryCutterStrongest:
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 3, RGB(9, 8, 10), 4, 0, 0
+ goto FuryCutterContinue2
Move_SELF_DESTRUCT:
- loadspritegfx 0x27D6
- createvisualtask sub_8116620, 0xA, 2, 1, 0, 9, 31
- createvisualtask sub_80D52D0, 0x5, 4, 6, 0, 38, 1
- createvisualtask sub_80D52D0, 0x5, 5, 6, 0, 38, 1
- createvisualtask sub_80D52D0, 0x5, 6, 6, 0, 38, 1
- createvisualtask sub_80D52D0, 0x5, 7, 6, 0, 38, 1
- createvisualtask sub_80D52D0, 0x5, 8, 6, 0, 38, 1
- call AnimScript_82CAE9F
- call AnimScript_82CAE9F
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 2, 1, 9, 0, 31
- end
-
-AnimScript_82CAE9F:
+ loadspritegfx ANIM_TAG_EXPLOSION
+ createvisualtask sub_8116620, 10, 2, 1, 0, 9, RGB_RED
+ createvisualtask AnimTask_ShakeMon2, 5, 4, 6, 0, 38, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 5, 6, 0, 38, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 6, 6, 0, 38, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 7, 6, 0, 38, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 8, 6, 0, 38, 1
+ call SelfDestruct1
+ call SelfDestruct1
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 2, 1, 9, 0, RGB_RED
+ end
+SelfDestruct1:
playsewithpan SE_W120, -64
- createsprite gUnknown_0859371C, 0x3, 0, 0, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 0, 0, 0, 1
+ delay 6
playsewithpan SE_W120, -64
- createsprite gUnknown_0859371C, 0x3, 24, -24, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 24, -24, 0, 1
+ delay 6
playsewithpan SE_W120, -64
- createsprite gUnknown_0859371C, 0x3, -16, 16, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -16, 16, 0, 1
+ delay 6
playsewithpan SE_W120, -64
- createsprite gUnknown_0859371C, 0x3, -24, -12, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -24, -12, 0, 1
+ delay 6
playsewithpan SE_W120, -64
- createsprite gUnknown_0859371C, 0x3, 16, 16, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 16, 16, 0, 1
+ delay 6
return
Move_SLAM:
- loadspritegfx 0x2748
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_056
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W004, -64
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 3, 0, 4
- delay 0x1
- createsprite gUnknown_085928D0, 0x2, 0, 0
- delay 0x3
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 3, 0, 4
+ delay 1
+ createsprite gUnknown_085928D0, 2, 0, 0
+ delay 3
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createsprite gUnknown_0857FE70, 0x2, 1, -12, 10, 0, 3
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
- delay 0x3
- createvisualtask sub_80D5484, 0x2, 1, 0, 3, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -12, 10, 0, 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
+ delay 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1
waitforvisualfinish
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 6
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 6
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_VINE_WHIP:
- loadspritegfx 0x282F
+ loadspritegfx ANIM_TAG_287
playsewithpan SE_W026, -64
- createsprite gUnknown_0857FE28, 0x2, 4, 6
- delay 0x6
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 6
+ delay 6
playsewithpan SE_W010, +63
- createsprite gUnknown_085928E8, 0x82, 0, 0
- delay 0x6
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 6, 1
+ createsprite gUnknown_085928E8, 130, 0, 0
+ delay 6
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 6, 1
end
Move_DRILL_PECK:
- loadspritegfx 0x2797
- loadspritegfx 0x27B2
- createsprite gUnknown_08592CD8, 0x2, 0
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_162
+ createsprite gUnknown_08592CD8, 2, 0
playsewithpan SE_W029, -64
waitforvisualfinish
- delay 0x2
- createsprite gUnknown_08592CD8, 0x2, 1
- delay 0x2
- loopsewithpan SE_W030, +63, 0x4, 0x8
- createvisualtask sub_810EB88, 0x5
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 18, 1
+ delay 2
+ createsprite gUnknown_08592CD8, 2, 1
+ delay 2
+ loopsewithpan SE_W030, +63, 4, 8
+ createvisualtask sub_810EB88, 5
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 18, 1
waitforvisualfinish
- createsprite gUnknown_08592CD8, 0x2, 2
+ createsprite gUnknown_08592CD8, 2, 2
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 6
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 6
waitforvisualfinish
end
Move_WATERFALL:
- loadspritegfx 0x27A4
- loadspritegfx 0x27AB
- loadspritegfx 0x279D
+ loadspritegfx ANIM_TAG_148
+ loadspritegfx ANIM_TAG_155
+ loadspritegfx ANIM_TAG_141
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 23, 1
- delay 0x5
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 23, 1
+ delay 5
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, 10, 10, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, 10, 10, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, -15, 0, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, -15, 0, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, 20, 10, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, 20, 10, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, 0, -10, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, 0, -10, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, -10, 15, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, -10, 15, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, 25, 20, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, 25, 20, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, -20, 20, 25, 0
- delay 0x4
+ createsprite gUnknown_08595238, 2, -20, 20, 25, 0
+ delay 4
playsewithpan SE_W152, -64
- createsprite gUnknown_08595238, 0x2, 12, 0, 25, 0
+ createsprite gUnknown_08595238, 2, 12, 0, 25, 0
waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE28, 0x2, 6, 5
- delay 0x6
- call AnimScript_82CB102
+ delay 10
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 5
+ delay 6
+ call UnderWaterAttack1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82CB102:
+UnderWaterAttack1:
playsewithpan SE_W127, +63
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 17, 1
- createsprite gUnknown_08597388, 0x3, 0, 20, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, 20
- createsprite gUnknown_08595250, 0x4, 0, 20
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, 15, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, 15
- createsprite gUnknown_08595250, 0x4, 0, 15
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, 10, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, 10
- createsprite gUnknown_08595250, 0x4, 0, 10
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, 5, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, 5
- createsprite gUnknown_08595250, 0x4, 0, 5
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, 0, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, 0
- createsprite gUnknown_08595250, 0x4, 0, 0
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, -5, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, -5
- createsprite gUnknown_08595250, 0x4, 0, -5
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, -10, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, -10
- createsprite gUnknown_08595250, 0x4, 0, -10
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, -15, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, -15
- createsprite gUnknown_08595250, 0x4, 0, -15
- delay 0x2
- createsprite gUnknown_08597388, 0x3, 0, -20, 1, 1
- createsprite gUnknown_08595250, 0x4, 0, -20
- createsprite gUnknown_08595250, 0x4, 0, -20
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 17, 1
+ createsprite gUnknown_08597388, 3, 0, 20, 1, 1
+ createsprite gUnknown_08595250, 4, 0, 20
+ createsprite gUnknown_08595250, 4, 0, 20
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, 15, 1, 1
+ createsprite gUnknown_08595250, 4, 0, 15
+ createsprite gUnknown_08595250, 4, 0, 15
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, 10, 1, 1
+ createsprite gUnknown_08595250, 4, 0, 10
+ createsprite gUnknown_08595250, 4, 0, 10
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, 5, 1, 1
+ createsprite gUnknown_08595250, 4, 0, 5
+ createsprite gUnknown_08595250, 4, 0, 5
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, 0, 1, 1
+ createsprite gUnknown_08595250, 4, 0, 0
+ createsprite gUnknown_08595250, 4, 0, 0
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, -5, 1, 1
+ createsprite gUnknown_08595250, 4, 0, -5
+ createsprite gUnknown_08595250, 4, 0, -5
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, -10, 1, 1
+ createsprite gUnknown_08595250, 4, 0, -10
+ createsprite gUnknown_08595250, 4, 0, -10
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, -15, 1, 1
+ createsprite gUnknown_08595250, 4, 0, -15
+ createsprite gUnknown_08595250, 4, 0, -15
+ delay 2
+ createsprite gUnknown_08597388, 3, 0, -20, 1, 1
+ createsprite gUnknown_08595250, 4, 0, -20
+ createsprite gUnknown_08595250, 4, 0, -20
return
Move_EXPLOSION:
- loadspritegfx 0x27D6
- createsprite gUnknown_0859728C, 0x2, 1, 8, 9, 8474, 8, 0, 8
- createvisualtask sub_80D52D0, 0x5, 4, 8, 0, 40, 1
- createvisualtask sub_80D52D0, 0x5, 5, 8, 0, 40, 1
- createvisualtask sub_80D52D0, 0x5, 6, 8, 0, 40, 1
- createvisualtask sub_80D52D0, 0x5, 7, 8, 0, 40, 1
- createvisualtask sub_80D52D0, 0x5, 8, 8, 0, 40, 1
- call AnimScript_82CB312
- call AnimScript_82CB312
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1, 1, 16, 16, 0x7FFF
- delay 0x32
- createvisualtask sub_8116620, 0xA, 1, 3, 16, 0, 0x7FFF
- end
-
-AnimScript_82CB312:
+ loadspritegfx ANIM_TAG_EXPLOSION
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 8, 9, RGB(26, 8, 8), 8, 0, 8
+ createvisualtask AnimTask_ShakeMon2, 5, 4, 8, 0, 40, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 5, 8, 0, 40, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 6, 8, 0, 40, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 7, 8, 0, 40, 1
+ createvisualtask AnimTask_ShakeMon2, 5, 8, 8, 0, 40, 1
+ call Explosion1
+ call Explosion1
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 1, 1, 16, 16, RGB_WHITE
+ delay 50
+ createvisualtask sub_8116620, 10, 1, 3, 16, 0, RGB_WHITE
+ end
+Explosion1:
playsewithpan SE_W153, -64
- createsprite gUnknown_0859371C, 0x3, 0, 0, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 0, 0, 0, 1
+ delay 6
playsewithpan SE_W153, -64
- createsprite gUnknown_0859371C, 0x3, 24, -24, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 24, -24, 0, 1
+ delay 6
playsewithpan SE_W153, -64
- createsprite gUnknown_0859371C, 0x3, -16, 16, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -16, 16, 0, 1
+ delay 6
playsewithpan SE_W153, -64
- createsprite gUnknown_0859371C, 0x3, -24, -12, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -24, -12, 0, 1
+ delay 6
playsewithpan SE_W153, -64
- createsprite gUnknown_0859371C, 0x3, 16, 16, 0, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 16, 16, 0, 1
+ delay 6
return
Move_DEFENSE_CURL:
- loadspritegfx 0x27FA
- loopsewithpan SE_W161, -64, 0x12, 0x3
- createvisualtask sub_811489C, 0x5, 0, 0
- createvisualtask sub_815B338, 0x5
+ loadspritegfx ANIM_TAG_234
+ loopsewithpan SE_W161, -64, 18, 3
+ createvisualtask sub_811489C, 5, 0, 0
+ createvisualtask sub_815B338, 5
waitforvisualfinish
- createsprite gUnknown_085CE338, 0x2, 0, 6, 0, 1
+ createsprite gUnknown_085CE338, 2, 0, 6, 0, 1
waitforvisualfinish
- createvisualtask sub_811489C, 0x5, 0, 1
+ createvisualtask sub_811489C, 5, 0, 1
waitforvisualfinish
end
Move_PROTECT:
- loadspritegfx 0x2828
+ loadspritegfx ANIM_TAG_PROTECT
monbg ANIM_ATK_PARTNER
monbgprio_28 ANIM_ATTACKER
- waitplaysewithpan SE_W115, -64, 0x10
- createsprite gUnknown_08592ADC, 0x2, 24, 0, 90
+ waitplaysewithpan SE_W115, -64, 16
+ createsprite gUnknown_08592ADC, 2, 24, 0, 90
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
end
Move_DETECT:
- loadspritegfx 0x2757
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 9, RGB_BLACK
+ loadspritegfx ANIM_TAG_071
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 9, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 2, 1, 0, 9, 0x7FFF
- delay 0x12
+ createvisualtask sub_8116620, 10, 2, 1, 0, 9, RGB_WHITE
+ delay 18
playsewithpan SE_W197, -64
- createsprite gUnknown_0853EE84, 0xD, 20, -20
+ createsprite gUnknown_0853EE84, 13, 20, -20
waitforvisualfinish
- delay 0xA
- createsprite gUnknown_08597274, 0x2, 1, 2, 9, 0, RGB_BLACK
- createvisualtask sub_8116620, 0xA, 2, 2, 9, 0, 0x7FFF
+ delay 10
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 9, 0, RGB_BLACK
+ createvisualtask sub_8116620, 10, 2, 2, 9, 0, RGB_WHITE
waitforvisualfinish
end
Move_FRUSTRATION:
- loadspritegfx 0x2797
- loadspritegfx 0x2767
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_ANGER
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80A8140, 0x1
- jumpargeq 0x7, 0x0, AnimScript_82CB464
- jumpargeq 0x7, 0x1, AnimScript_82CB56A
- jumpargeq 0x7, 0x2, AnimScript_82CB637
- goto AnimScript_82CB6B3
-
-AnimScript_82CB45F:
+ setalpha 12, 8
+ createvisualtask AnimTask_GetFrustrationPowerLevel, 1
+ jumpreteq 0, Frustration_Strongest
+ jumpreteq 1, Frustration_Strong
+ jumpreteq 2, Frustration_Medium
+ goto Frustration_Weak
+Frustration_Continue:
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82CB464:
+Frustration_Strongest:
playsewithpan SE_W082, -64
- createvisualtask sub_80D52D0, 0x5, 0, 1, 0, 15, 1
- createvisualtask sub_8116620, 0xA, 2, 3, 0, 9, 31
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_ATTACKER, 1, 0, 15, 1
+ createvisualtask sub_8116620, 10, 2, 3, 0, 9, 31
waitforvisualfinish
- delay 0x14
+ delay 20
playsewithpan SE_W207B, -64
- createsprite gUnknown_0859368C, 0x2, 0, 20, -28
+ createsprite gUnknown_0859368C, 2, 0, 20, -28
waitforvisualfinish
playsewithpan SE_W207B, -64
- createsprite gUnknown_0859368C, 0x2, 0, 20, -28
+ createsprite gUnknown_0859368C, 2, 0, 20, -28
waitforvisualfinish
- delay 0xA
- createvisualtask sub_80D5EB8, 0x5, 0, 16, 6144, 8, 0
- delay 0x5
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 30, 1
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 0
+ delay 10
+ createvisualtask AnimTask_SwayMon, 5, 0, 16, 6144, 8, ANIM_ATTACKER
+ delay 5
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 30, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 0
playsewithpan SE_W004, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x3, 24, 8, 1, 0
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, 24, 8, 1, 0
playsewithpan SE_W004, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x3, -24, -16, 1, 0
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, -24, -16, 1, 0
playsewithpan SE_W004, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x3, 8, 4, 1, 0
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, 8, 4, 1, 0
playsewithpan SE_W004, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x3, -16, 19, 1, 0
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, -16, 19, 1, 0
playsewithpan SE_W004, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x3, 18, -18, 1, 0
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, 18, -18, 1, 0
playsewithpan SE_W004, +63
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 2, 3, 9, 0, 31
- goto AnimScript_82CB45F
-
-AnimScript_82CB56A:
+ createvisualtask sub_8116620, 10, 2, 3, 9, 0, 31
+ goto Frustration_Continue
+Frustration_Strong:
playsewithpan SE_W082, -64
- createvisualtask sub_80D52D0, 0x5, 0, 1, 0, 15, 1
- createvisualtask sub_8116620, 0xA, 2, 3, 0, 9, 31
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_ATTACKER, 1, 0, 15, 1
+ createvisualtask sub_8116620, 10, 2, 3, 0, 9, 31
waitforvisualfinish
- delay 0x14
+ delay 20
playsewithpan SE_W207B, -64
- createsprite gUnknown_0859368C, 0x2, 0, 20, -28
+ createsprite gUnknown_0859368C, 2, 0, 20, -28
waitforvisualfinish
- delay 0x5
- createvisualtask sub_815C3A8, 0x5
- delay 0x7
+ delay 5
+ createvisualtask sub_815C3A8, 5
+ delay 7
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, 0, 8, 1, 1
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 6, 1
- delay 0xE
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 8, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 6, 1
+ delay 14
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, 12, -6, 1, 1
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 6, 1
- delay 0xE
+ createsprite gBasicHitSplatSpriteTemplate, 3, 12, -6, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 6, 1
+ delay 14
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, -12, -6, 1, 1
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, -12, -6, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 6, 1
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 2, 3, 9, 0, 31
- goto AnimScript_82CB45F
-
-AnimScript_82CB637:
+ createvisualtask sub_8116620, 10, 2, 3, 9, 0, 31
+ goto Frustration_Continue
+Frustration_Medium:
playsewithpan SE_W207B, -64
- createsprite gUnknown_0859368C, 0x2, 0, 20, -28
+ createsprite gUnknown_0859368C, 2, 0, 20, -28
waitforvisualfinish
- delay 0x5
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x6
+ delay 5
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 6
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x2, 10, 4, 1, 1
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, 4, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x6
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 6
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x2, -10, -4, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 6, 1
- goto AnimScript_82CB45F
-
-AnimScript_82CB6B3:
- createsprite gUnknown_085CE4D0, 0x2, 20, -28
- waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE28, 0x2, 10, 2
- delay 0xC
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -4, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1
+ goto Frustration_Continue
+Frustration_Weak:
+ createsprite gUnknown_085CE4D0, 2, 20, -28
+ waitforvisualfinish
+ delay 10
+ createsprite gHorizontalLungeSpriteTemplate, 2, 10, 2
+ delay 12
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 6, 1
- goto AnimScript_82CB45F
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1
+ goto Frustration_Continue
Move_SAFEGUARD:
- loadspritegfx 0x2804
+ loadspritegfx ANIM_TAG_244
monbg ANIM_ATK_PARTNER
- setalpha 0x808
+ setalpha 8, 8
playsewithpan SE_W208, -64
- createsprite gUnknown_08593C64, 0x2
- delay 0x4
- createsprite gUnknown_08593C64, 0x2
- delay 0x4
- createsprite gUnknown_08593C64, 0x2
+ createsprite gUnknown_08593C64, 2
+ delay 4
+ createsprite gUnknown_08593C64, 2
+ delay 4
+ createsprite gUnknown_08593C64, 2
waitforvisualfinish
playsewithpan SE_REAPOKE, -64
- createvisualtask sub_8115A04, 0x2, 10, 0, 2, 0, 10, 0x7FFF
+ createvisualtask sub_8115A04, 2, 10, 0, 2, 0, 10, RGB_WHITE
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
Move_PAIN_SPLIT:
- loadspritegfx 0x27FF
- createsprite gUnknown_085CE590, 0x2, -8, -42, 0
- createsprite gUnknown_085CE590, 0x82, -8, -42, 1
- delay 0xA
+ loadspritegfx ANIM_TAG_239
+ createsprite gUnknown_085CE590, 2, -8, -42, 0
+ createsprite gUnknown_085CE590, 130, -8, -42, 1
+ delay 10
playsewithpan SE_W207B, 0
- createvisualtask sub_815CA20, 0x2, 0, 0
- createvisualtask sub_815CA20, 0x2, 1, 0
+ createvisualtask sub_815CA20, 2, 0, 0
+ createvisualtask sub_815CA20, 2, 1, 0
waitforvisualfinish
- createsprite gUnknown_085CE590, 0x2, -24, -42, 0
- createsprite gUnknown_085CE590, 0x82, -24, -42, 1
- delay 0xA
+ createsprite gUnknown_085CE590, 2, -24, -42, 0
+ createsprite gUnknown_085CE590, 130, -24, -42, 1
+ delay 10
playsewithpan SE_W207B, 0
- createvisualtask sub_815CA20, 0x2, 0, 1
- createvisualtask sub_815CA20, 0x2, 1, 1
+ createvisualtask sub_815CA20, 2, 0, 1
+ createvisualtask sub_815CA20, 2, 1, 1
waitforvisualfinish
- createsprite gUnknown_085CE590, 0x2, 8, -42, 0
- createsprite gUnknown_085CE590, 0x82, 8, -42, 1
- delay 0xA
+ createsprite gUnknown_085CE590, 2, 8, -42, 0
+ createsprite gUnknown_085CE590, 130, 8, -42, 1
+ delay 10
playsewithpan SE_W207B, 0
- createvisualtask sub_815CA20, 0x2, 0, 2
- createvisualtask sub_815CA20, 0x2, 1, 2
+ createvisualtask sub_815CA20, 2, 0, 2
+ createvisualtask sub_815CA20, 2, 1, 2
end
Move_VICE_GRIP:
- loadspritegfx 0x279A
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_138
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W011, +63
- createsprite gUnknown_08593590, 0x2, 0
- createsprite gUnknown_08593590, 0x2, 1
- delay 0x9
- createsprite gUnknown_08597358, 0x1, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x5, 1, 2, 0, 5, 1
+ createsprite gUnknown_08593590, 2, 0
+ createsprite gUnknown_08593590, 2, 1
+ delay 9
+ createsprite gBasicHitSplatSpriteTemplate, 1, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 5, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_GUILLOTINE:
- loadspritegfx 0x279A
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_138
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
fadetobgfromset BG_GUILLOTINE_OPPONENT, BG_GUILLOTINE_PLAYER, BG_GUILLOTINE_CONTESTS
waitbgfadein
playsewithpan SE_W011, +63
- createsprite gUnknown_085935D0, 0x2, 0
- createsprite gUnknown_085935D0, 0x2, 1
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 16, 0
- delay 0x9
- createvisualtask sub_80D52D0, 0x5, 1, 2, 0, 23, 1
+ createsprite gUnknown_085935D0, 2, 0
+ createsprite gUnknown_085935D0, 2, 1
+ createvisualtask sub_8116620, 10, 4, 2, 0, 16, RGB_BLACK
+ delay 9
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 23, 1
delay 0x2E
- createvisualtask sub_80D52D0, 0x5, 1, 4, 0, 8, 1
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 0
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 8, 0, 0
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 8, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0
playsewithpan SE_W013, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -1913,190 +1879,188 @@ Move_GUILLOTINE:
end
Move_PAY_DAY:
- loadspritegfx 0x2774
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_100
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W013B, -64
- createsprite gUnknown_085934D8, 0x2, 20, 0, 0, 0, 1152
+ createsprite gUnknown_085934D8, 2, 20, 0, 0, 0, 1152
waitforvisualfinish
playsewithpan SE_W006, +63
- createsprite gUnknown_08597358, 0x1, 0, 0, 1, 2
- createsprite gUnknown_085934F0, 0x2
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 1, 0, 0, 1, 2
+ createsprite gUnknown_085934F0, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_OUTRAGE:
- loadspritegfx 0x272D
- loopsewithpan SE_W082, -64, 0x8, 0x3
- createvisualtask sub_8115A04, 0x2, 7, 2, 5, 3, 8, 430
- createvisualtask sub_80D5830, 0x2, 0, 12, 6, 5, 4
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, 0, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, 0, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 0, 1280, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 0, -1280, 3
- delay 0x0
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 40, 1
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, 768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, 768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, -768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, -768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, 0, 3
- call AnimScript_82CBA0F
- call AnimScript_82CBA0F
- waitforvisualfinish
- end
-
-AnimScript_82CBA0F:
- delay 0x3
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, 0, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 0, 1280, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 0, -1280, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, 768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, 768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, 1280, -768, 3
- delay 0x0
- createsprite gUnknown_08596E7C, 0x82, 0, 0, 30, -1280, -768, 3
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loopsewithpan SE_W082, -64, 8, 3
+ createvisualtask sub_8115A04, 2, 7, 2, 5, 3, 8, RGB(14, 13, 0)
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 5, 4
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, 0, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, 0, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 0, 1280, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 0, -1280, 3
+ delay 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 40, 1
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, 768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, 768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, -768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, -768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, 0, 3
+ call Outrage1
+ call Outrage1
+ waitforvisualfinish
+ end
+Outrage1:
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, 0, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 0, 1280, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 0, -1280, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, 768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, 768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, 1280, -768, 3
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_8596E7C, 130, 0, 0, 30, -1280, -768, 3
return
Move_SPARK:
- loadspritegfx 0x2797
- loadspritegfx 0x271B
- delay 0x0
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 5, 5, 23551
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_SPARK_2
+ delay 0
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 5, 5, RGB(31, 31, 22)
playsewithpan SE_W085B, -64
- createsprite gUnknown_0859574C, 0x0, 32, 24, 190, 12, 0, 1, 0
- delay 0x0
- createsprite gUnknown_0859574C, 0x0, 80, 24, 22, 12, 0, 1, 0
- createsprite gUnknown_0859574C, 0x0, 156, 24, 121, 13, 0, 1, 1
- delay 0x0
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 0, 0, 23551
- delay 0xA
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 5, 5, 23551
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 32, 24, 190, 12, 0, 1, 0
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 80, 24, 22, 12, 0, 1, 0
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 156, 24, 121, 13, 0, 1, 1
+ delay 0
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22)
+ delay 10
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 5, 5, RGB(31, 31, 22)
playsewithpan SE_W085B, -64
- createsprite gUnknown_0859574C, 0x0, 100, 24, 60, 10, 0, 1, 0
- createsprite gUnknown_0859574C, 0x0, 170, 24, 42, 11, 0, 1, 1
- delay 0x0
- createsprite gUnknown_0859574C, 0x0, 238, 24, 165, 10, 0, 1, 1
- delay 0x0
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 0, 0, 23551
- delay 0x14
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 7, 7, 23551
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 100, 24, 60, 10, 0, 1, 0
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 170, 24, 42, 11, 0, 1, 1
+ delay 0
+ createsprite gBattleAnimSpriteTemplate_859574C, 0, 238, 24, 165, 10, 0, 1, 1
+ delay 0
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22)
+ delay 20
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 7, 7, RGB(31, 31, 22)
playsewithpan SE_W085B, -64
- createsprite gUnknown_085957F8, 0x4, 0, 0, 32, 12, 0, 20, 0, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 32, 12, 64, 20, 1, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 32, 12, 128, 20, 0, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 32, 12, 192, 20, 2, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 16, 12, 32, 20, 0, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 16, 12, 96, 20, 1, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 16, 12, 160, 20, 0, 0
- createsprite gUnknown_085957F8, 0x4, 0, 0, 16, 12, 224, 20, 2, 0
- delay 0x4
- waitforvisualfinish
- createvisualtask sub_8115A04, 0x2, 3, -31, 1, 0, 0, 23551
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x4
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 32, 12, 0, 20, 0, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 32, 12, 64, 20, 1, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 32, 12, 128, 20, 0, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 32, 12, 192, 20, 2, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 16, 12, 32, 20, 0, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 16, 12, 96, 20, 1, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 16, 12, 160, 20, 0, 0
+ createsprite gBattleAnimSpriteTemplate_85957F8, 4, 0, 0, 16, 12, 224, 20, 2, 0
+ delay 4
+ waitforvisualfinish
+ createvisualtask sub_8115A04, 2, 3, -31, 1, 0, 0, RGB(31, 31, 22)
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 4
playsewithpan SE_W063, +63
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
- createvisualtask sub_8115A04, 0x2, 4, -31, 2, 0, 6, 23551
- call AnimScript_82D7BEA
+ createvisualtask sub_8115A04, 2, 4, -31, 2, 0, 6, RGB(31, 31, 22)
+ call ElectricityEffect
waitforvisualfinish
end
Move_ATTRACT:
- loadspritegfx 0x27E8
- loopsewithpan SE_W204, -64, 0xC, 0x3
- createvisualtask sub_80D5EB8, 0x5, 0, 12, 4096, 4, 0
- delay 0xF
- createsprite gUnknown_085939A0, 0x83, 20, -8
+ loadspritegfx ANIM_TAG_216
+ loopsewithpan SE_W204, -64, 12, 3
+ createvisualtask AnimTask_SwayMon, 5, 0, 12, 4096, 4, ANIM_ATTACKER
+ delay 15
+ createsprite gUnknown_085939A0, 131, 20, -8
waitforvisualfinish
playsewithpan SE_W213, +63
- createsprite gUnknown_085939B8, 0x83, 160, -32
- createsprite gUnknown_085939B8, 0x83, -256, -40
- createsprite gUnknown_085939B8, 0x83, 128, -16
- createsprite gUnknown_085939B8, 0x83, 416, -38
- createsprite gUnknown_085939B8, 0x83, -128, -22
- createsprite gUnknown_085939B8, 0x83, -384, -31
- waitforvisualfinish
- waitplaysewithpan SE_W213B, 0, 0xF
- createvisualtask sub_81062E8, 0x5
- createsprite gUnknown_085939D0, 0x28, 16, 256, 0
- createsprite gUnknown_085939D0, 0x28, 224, 240, 15
- createsprite gUnknown_085939D0, 0x28, 126, 272, 30
- createsprite gUnknown_085939D0, 0x28, 80, 224, 45
- createsprite gUnknown_085939D0, 0x28, 170, 272, 60
- createsprite gUnknown_085939D0, 0x28, 40, 256, 75
- createsprite gUnknown_085939D0, 0x28, 112, 256, 90
- createsprite gUnknown_085939D0, 0x28, 200, 272, 90
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 160, -32
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -256, -40
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 128, -16
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 416, -38
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -128, -22
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -384, -31
+ waitforvisualfinish
+ waitplaysewithpan SE_W213B, 0, 15
+ createvisualtask sub_81062E8, 5
+ createsprite gUnknown_085939D0, 40, 16, 256, 0
+ createsprite gUnknown_085939D0, 40, 224, 240, 15
+ createsprite gUnknown_085939D0, 40, 126, 272, 30
+ createsprite gUnknown_085939D0, 40, 80, 224, 45
+ createsprite gUnknown_085939D0, 40, 170, 272, 60
+ createsprite gUnknown_085939D0, 40, 40, 256, 75
+ createsprite gUnknown_085939D0, 40, 112, 256, 90
+ createsprite gUnknown_085939D0, 40, 200, 272, 90
delay 0x4B
- createvisualtask sub_8115A04, 0x2, 4, 4, 4, 0, 10, 28479
+ createvisualtask sub_8115A04, 2, 4, 4, 4, 0, 10, RGB(31, 25, 27)
end
Move_GROWTH:
- call AnimScript_82CBDC0
+ call Growth1
waitforvisualfinish
- call AnimScript_82CBDC0
+ call Growth1
waitforvisualfinish
end
-
-AnimScript_82CBDC0:
- createvisualtask sub_8115A04, 0x2, 2, 0, 2, 0, 8, 0x7FFF
+Growth1:
+ createvisualtask sub_8115A04, 2, 2, 0, 2, 0, 8, RGB_WHITE
playsewithpan SE_W036, -64
- createvisualtask sub_80D6064, 0x5, -3, -3, 16, 0, 0
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -3, -3, 16, ANIM_ATTACKER, 0
return
Move_WHIRLWIND:
- loadspritegfx 0x27B2
- createsprite gUnknown_085963D4, 0x2, 0, -8, 1, 60, 0
- createsprite gUnknown_085963D4, 0x2, 0, 0, 1, 60, 1
- createsprite gUnknown_085963D4, 0x2, 0, 8, 1, 60, 2
- createsprite gUnknown_085963D4, 0x2, 0, 16, 1, 60, 3
- createsprite gUnknown_085963D4, 0x2, 0, 24, 1, 60, 4
- createsprite gUnknown_085963D4, 0x2, 0, 32, 1, 60, 0
- delay 0x5
- loopsewithpan SE_W104, +63, 0xA, 0x4
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 15, 1
+ loadspritegfx ANIM_TAG_162
+ createsprite gUnknown_085963D4, 2, 0, -8, 1, 60, 0
+ createsprite gUnknown_085963D4, 2, 0, 0, 1, 60, 1
+ createsprite gUnknown_085963D4, 2, 0, 8, 1, 60, 2
+ createsprite gUnknown_085963D4, 2, 0, 16, 1, 60, 3
+ createsprite gUnknown_085963D4, 2, 0, 24, 1, 60, 4
+ createsprite gUnknown_085963D4, 2, 0, 32, 1, 60, 0
+ delay 5
+ loopsewithpan SE_W104, +63, 10, 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 15, 1
delay 0x1D
- createvisualtask sub_80D5830, 0x2, 1, 12, 6, 1, 5
- delay 0x7
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_TARGET, 12, 6, 1, 5
+ delay 7
playsewithpan SE_W081, +63
- createvisualtask sub_80D5DB0, 0x5, 1, 8
+ createvisualtask sub_80D5DB0, 5, 1, 8
waitforvisualfinish
end
Move_CONFUSE_RAY:
- loadspritegfx 0x271D
+ loadspritegfx ANIM_TAG_YELLOW_BALL
monbg ANIM_DEF_PARTNER
fadetobg BG_GHOST
waitbgfadein
- createvisualtask sub_8159278, 0x2, -64, 63, 2, 0
- createvisualtask sub_8115C80, 0x2, 10013, 0, 6, 0, 14, 351
- createsprite gUnknown_08596D14, 0x82, 28, 0, 288
+ createvisualtask sub_8159278, 2, -64, 63, 2, 0
+ createvisualtask sub_8115C80, 2, 10013, 0, 6, 0, 14, 351
+ createsprite gUnknown_08596D14, 130, 28, 0, 288
waitforvisualfinish
- setalpha 0x808
+ setalpha 8, 8
playsewithpan SE_W081B, +63
- createsprite gUnknown_08596D2C, 0x82, 0, -16
+ createsprite gUnknown_08596D2C, 130, 0, -16
waitforvisualfinish
- delay 0x0
+ delay 0
blendoff
clearmonbg ANIM_DEF_PARTNER
restorebg
@@ -2104,118 +2068,118 @@ Move_CONFUSE_RAY:
end
Move_LOCK_ON:
- loadspritegfx 0x271E
- createsprite gUnknown_08592CA0, 0x28
- createsprite gUnknown_08592CB8, 0x28, 1
- createsprite gUnknown_08592CB8, 0x28, 2
- createsprite gUnknown_08592CB8, 0x28, 3
- createsprite gUnknown_08592CB8, 0x28, 4
- delay 0x78
- setarg 0x7, 0xFFFF
+ loadspritegfx ANIM_TAG_LOCK_ON
+ createsprite gUnknown_08592CA0, 40
+ createsprite gUnknown_08592CB8, 40, 1
+ createsprite gUnknown_08592CB8, 40, 2
+ createsprite gUnknown_08592CB8, 40, 3
+ createsprite gUnknown_08592CB8, 40, 4
+ delay 120
+ setarg 7, -1
waitforvisualfinish
end
Move_MEAN_LOOK:
- loadspritegfx 0x27CB
+ loadspritegfx ANIM_TAG_EYE
monbg ANIM_DEF_PARTNER
playsewithpan SE_W060, -64
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 16, RGB_BLACK
- loopsewithpan SE_W109, +63, 0xF, 0x4
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 16, RGB_BLACK
+ loopsewithpan SE_W109, +63, 15, 4
waitplaysewithpan SE_W043, +63, 0x55
- createsprite gUnknown_085CE104, 0x2
- delay 0x78
- createsprite gUnknown_08597274, 0x2, 1, 2, 16, 0, RGB_BLACK
- delay 0x1E
+ createsprite gUnknown_085CE104, 2
+ delay 120
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 16, 0, RGB_BLACK
+ delay 30
clearmonbg ANIM_DEF_PARTNER
waitforvisualfinish
end
Move_ROCK_THROW:
- loadspritegfx 0x274A
- createsprite gUnknown_085972D8, 0x82, 6, 1, 15, 1
- createsprite gUnknown_08596B04, 0x82, 0, 1, 0, 0
+ loadspritegfx ANIM_TAG_058
+ createsprite gBattleAnimSpriteTemplate_85972D8, 130, 6, 1, 15, 1
+ createsprite gUnknown_08596B04, 130, 0, 1, 0, 0
playsewithpan SE_W088, +63
- delay 0x6
- createsprite gUnknown_08596B04, 0x82, 19, 1, 10, 0
+ delay 6
+ createsprite gUnknown_08596B04, 130, 19, 1, 10, 0
playsewithpan SE_W088, +63
- delay 0x6
- createsprite gUnknown_08596B04, 0x82, -23, 2, -10, 0
+ delay 6
+ createsprite gUnknown_08596B04, 130, -23, 2, -10, 0
playsewithpan SE_W088, +63
- createvisualtask sub_80D51AC, 0x2, 1, 0, 5, 20, 1
- delay 0x6
- createsprite gUnknown_08596B04, 0x82, -15, 1, -10, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 20, 1
+ delay 6
+ createsprite gUnknown_08596B04, 130, -15, 1, -10, 0
playsewithpan SE_W088, +63
- delay 0x6
- createsprite gUnknown_08596B04, 0x82, 23, 2, 10, 0
+ delay 6
+ createsprite gUnknown_08596B04, 130, 23, 2, 10, 0
playsewithpan SE_W088, +63
waitforvisualfinish
end
Move_ROCK_SLIDE:
- loadspritegfx 0x274A
+ loadspritegfx ANIM_TAG_058
monbg ANIM_DEF_PARTNER
- createsprite gUnknown_085972D8, 0x2, 7, 1, 11, 1
- createsprite gUnknown_08596B04, 0x82, -5, 1, -5, 1
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, 7, 1, 11, 1
+ createsprite gUnknown_08596B04, 130, -5, 1, -5, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 5, 0, 6, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 5, 0, 6, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 19, 1, 10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 19, 1, 10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, -23, 2, -10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, -23, 2, -10, 1
playsewithpan SE_W088, +63
- createvisualtask sub_80D51AC, 0x2, 1, 0, 5, 50, 1
- createvisualtask sub_80D51AC, 0x2, 3, 0, 5, 50, 1
- delay 0x2
- call AnimScript_82CC083
- call AnimScript_82CC083
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 50, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 0, 5, 50, 1
+ delay 2
+ call RockSlide1
+ call RockSlide1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-AnimScript_82CC083:
- createsprite gUnknown_08596B04, 0x82, -20, 0, -10, 1
+RockSlide1:
+ createsprite gUnknown_08596B04, 130, -20, 0, -10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 28, 1, 10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 28, 1, 10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, -10, 1, -5, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, -10, 1, -5, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 10, 0, 6, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 10, 0, 6, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 24, 1, 10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 24, 1, 10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, -32, 2, -10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, -32, 2, -10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, -20, 0, -10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, -20, 0, -10, 1
playsewithpan SE_W088, +63
- delay 0x2
- createsprite gUnknown_08596B04, 0x82, 30, 2, 10, 1
+ delay 2
+ createsprite gUnknown_08596B04, 130, 30, 2, 10, 1
playsewithpan SE_W088, +63
- delay 0x2
+ delay 2
return
Move_THIEF:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- delay 0x1
+ delay 1
fadetobg BG_DARK
waitbgfadein
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x6
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 6
playsewithpan SE_W233, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 8, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 8, 1
waitforvisualfinish
- delay 0x14
+ delay 20
clearmonbg ANIM_TARGET
blendoff
restorebg
@@ -2223,196 +2187,194 @@ Move_THIEF:
end
Move_BUBBLE_BEAM:
- loadspritegfx 0x27A2
- loadspritegfx 0x27AB
+ loadspritegfx ANIM_TAG_146
+ loadspritegfx ANIM_TAG_155
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- delay 0x1
- call AnimScript_82CC1AD
- createvisualtask sub_80D5EB8, 0x5, 0, 3, 3072, 8, 1
- call AnimScript_82CC1AD
- call AnimScript_82CC1AD
+ setalpha 12, 8
+ delay 1
+ call Bulbblebeam1
+ createvisualtask AnimTask_SwayMon, 5, 0, 3, 3072, 8, ANIM_TARGET
+ call Bulbblebeam1
+ call Bulbblebeam1
waitforvisualfinish
- call AnimScript_82D7AE2
+ call WaterBubbleEffect
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82CC1AD:
- createsprite gUnknown_08595068, 0x2, 18, 0, 35, 70, 0, 256, 50
+Bulbblebeam1:
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 35, 70, 0, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
- createsprite gUnknown_08595068, 0x2, 18, 0, 20, 40, -10, 256, 50
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 20, 40, -10, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
- createsprite gUnknown_08595068, 0x2, 18, 0, 10, -60, 0, 256, 50
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 10, -60, 0, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
- createsprite gUnknown_08595068, 0x2, 18, 0, 15, -15, 10, 256, 50
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 15, -15, 10, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
- createsprite gUnknown_08595068, 0x2, 18, 0, 30, 10, -10, 256, 50
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 30, 10, -10, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
- createsprite gUnknown_08595068, 0x2, 18, 0, 25, -30, 10, 256, 50
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 25, -30, 10, 256, 50
playsewithpan SE_W145, -64
- delay 0x3
+ delay 3
return
Move_ICY_WIND:
- loadspritegfx 0x279D
- loadspritegfx 0x279E
+ loadspritegfx ANIM_TAG_141
+ loadspritegfx ANIM_TAG_142
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8116620, 0xA, 11, 4, 0, 4, 0
+ createvisualtask sub_8116620, 10, 11, 4, 0, 4, RGB_BLACK
fadetobg BG_ICE
waitbgfadeout
playsewithpan SE_W196, 0
waitbgfadein
waitforvisualfinish
- panse_1B SE_W016, -64, +63, +2, 0x0
- call AnimScript_82CC2A8
- delay 0x5
- call AnimScript_82CC2A8
+ panse_1B SE_W016, -64, +63, +2, 0
+ call IcyWind1
+ delay 5
+ call IcyWind1
playsewithpan SE_W016B, +63
delay 0x37
- call AnimScript_82D78F8
+ call IcyWindEffect2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
restorebg
waitbgfadeout
- createvisualtask sub_8116620, 0xA, 11, 4, 4, 0, 0
+ createvisualtask sub_8116620, 10, 11, 4, 4, 0, RGB_BLACK
waitbgfadein
end
-
-AnimScript_82CC2A8:
+IcyWind1:
createsprite gUnknown_08595B98, 0xA8, 0, 0, 0, 0, 72, 1
- delay 0x5
+ delay 5
createsprite gUnknown_08595B98, 0xA8, 0, 10, 0, 10, 72, 1
- delay 0x5
+ delay 5
createsprite gUnknown_08595B98, 0xA8, 0, -10, 0, -10, 72, 1
- delay 0x5
+ delay 5
createsprite gUnknown_08595B98, 0xA8, 0, 15, 0, 15, 72, 1
- delay 0x5
+ delay 5
createsprite gUnknown_08595B98, 0xA8, 0, -5, 0, -5, 72, 1
return
Move_SMOKESCREEN:
- loadspritegfx 0x2720
- loadspritegfx 0x2721
+ loadspritegfx ANIM_TAG_BLACK_SMOKE
+ loadspritegfx ANIM_TAG_BLACK_BALL
playsewithpan SE_W104, -64
- createsprite gUnknown_085CE050, 0x82, 20, 0, 0, 0, 35, -25
+ createsprite gUnknown_085CE050, 130, 20, 0, 0, 0, 35, -25
waitforvisualfinish
- createvisualtask sub_815A160, 0x2
- delay 0x2
+ createvisualtask sub_815A160, 2
+ delay 2
playsewithpan SE_W028, +63
- createsprite gUnknown_085CE038, 0x84, 0, -12, 104, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, -12, 72, 1, 75
- createsprite gUnknown_085CE038, 0x84, 0, -6, 56, 1, 75
- createsprite gUnknown_085CE038, 0x84, 0, -6, 88, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, 0, 56, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, 0, 88, 1, 75
- createsprite gUnknown_085CE038, 0x84, 0, 6, 72, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, 6, 104, 1, 75
- createsprite gUnknown_085CE038, 0x84, 0, 12, 72, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, 12, 56, 1, 75
- createsprite gUnknown_085CE038, 0x84, 0, 18, 80, 0, 75
- createsprite gUnknown_085CE038, 0x84, 0, 18, 72, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, -12, 104, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, -12, 72, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, -6, 56, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, -6, 88, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, 0, 56, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, 0, 88, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, 6, 72, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, 6, 104, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, 12, 72, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, 12, 56, 1, 75
+ createsprite gUnknown_085CE038, 132, 0, 18, 80, 0, 75
+ createsprite gUnknown_085CE038, 132, 0, 18, 72, 1, 75
waitforvisualfinish
end
Move_CONVERSION:
- loadspritegfx 0x2722
+ loadspritegfx ANIM_TAG_CONVERSION
monbg ANIM_ATK_PARTNER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x10
- delay 0x0
+ setalpha 16, 0
+ delay 0
playsewithpan SE_W129, -64
- createsprite gUnknown_08592E74, 0x2, -24, -24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, -8, -24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 8, -24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 24, -24
- delay 0x3
+ createsprite gUnknown_08592E74, 2, -24, -24
+ delay 3
+ createsprite gUnknown_08592E74, 2, -8, -24
+ delay 3
+ createsprite gUnknown_08592E74, 2, 8, -24
+ delay 3
+ createsprite gUnknown_08592E74, 2, 24, -24
+ delay 3
playsewithpan SE_W129, -64
- createsprite gUnknown_08592E74, 0x2, -24, -8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, -8, -8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 8, -8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 24, -8
- delay 0x3
+ createsprite gUnknown_08592E74, 2, -24, -8
+ delay 3
+ createsprite gUnknown_08592E74, 2, -8, -8
+ delay 3
+ createsprite gUnknown_08592E74, 2, 8, -8
+ delay 3
+ createsprite gUnknown_08592E74, 2, 24, -8
+ delay 3
playsewithpan SE_W129, -64
- createsprite gUnknown_08592E74, 0x2, -24, 8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, -8, 8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 8, 8
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 24, 8
- delay 0x3
+ createsprite gUnknown_08592E74, 2, -24, 8
+ delay 3
+ createsprite gUnknown_08592E74, 2, -8, 8
+ delay 3
+ createsprite gUnknown_08592E74, 2, 8, 8
+ delay 3
+ createsprite gUnknown_08592E74, 2, 24, 8
+ delay 3
playsewithpan SE_W129, -64
- createsprite gUnknown_08592E74, 0x2, -24, 24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, -8, 24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 8, 24
- delay 0x3
- createsprite gUnknown_08592E74, 0x2, 24, 24
- delay 0x14
+ createsprite gUnknown_08592E74, 2, -24, 24
+ delay 3
+ createsprite gUnknown_08592E74, 2, -8, 24
+ delay 3
+ createsprite gUnknown_08592E74, 2, 8, 24
+ delay 3
+ createsprite gUnknown_08592E74, 2, 24, 24
+ delay 20
playsewithpan SE_W112, -64
- createvisualtask sub_8115D94, 0x2, 10018, 1, 1, 14335, 12, 0, 0
- delay 0x6
- createvisualtask sub_81022D4, 0x5
+ createvisualtask sub_8115D94, 2, ANIM_TAG_CONVERSION, 1, 1, 14335, 12, 0, 0
+ delay 6
+ createvisualtask sub_81022D4, 5
waitforvisualfinish
- delay 0x1
+ delay 1
clearmonbg ANIM_ATK_PARTNER
blendoff
end
Move_CONVERSION_2:
- loadspritegfx 0x2722
+ loadspritegfx ANIM_TAG_CONVERSION
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- setalpha 0x1000
- delay 0x0
+ setalpha 0, 16
+ delay 0
playsewithpan SE_W112, +63
- createsprite gUnknown_08592EA4, 0x2, -24, -24, 60
- createsprite gUnknown_08592EA4, 0x2, -8, -24, 65
- createsprite gUnknown_08592EA4, 0x2, 8, -24, 70
- createsprite gUnknown_08592EA4, 0x2, 24, -24, 75
- createsprite gUnknown_08592EA4, 0x2, -24, -8, 80
- createsprite gUnknown_08592EA4, 0x2, -8, -8, 85
- createsprite gUnknown_08592EA4, 0x2, 8, -8, 90
- createsprite gUnknown_08592EA4, 0x2, 24, -8, 95
- createsprite gUnknown_08592EA4, 0x2, -24, 8, 100
- createsprite gUnknown_08592EA4, 0x2, -8, 8, 105
- createsprite gUnknown_08592EA4, 0x2, 8, 8, 110
- createsprite gUnknown_08592EA4, 0x2, 24, 8, 115
- createsprite gUnknown_08592EA4, 0x2, -24, 24, 120
- createsprite gUnknown_08592EA4, 0x2, -8, 24, 125
- createsprite gUnknown_08592EA4, 0x2, 8, 24, 130
- createsprite gUnknown_08592EA4, 0x2, 24, 24, 135
- createvisualtask sub_81023E0, 0x5
- delay 0x3C
+ createsprite gUnknown_08592EA4, 2, -24, -24, 60
+ createsprite gUnknown_08592EA4, 2, -8, -24, 65
+ createsprite gUnknown_08592EA4, 2, 8, -24, 70
+ createsprite gUnknown_08592EA4, 2, 24, -24, 75
+ createsprite gUnknown_08592EA4, 2, -24, -8, 80
+ createsprite gUnknown_08592EA4, 2, -8, -8, 85
+ createsprite gUnknown_08592EA4, 2, 8, -8, 90
+ createsprite gUnknown_08592EA4, 2, 24, -8, 95
+ createsprite gUnknown_08592EA4, 2, -24, 8, 100
+ createsprite gUnknown_08592EA4, 2, -8, 8, 105
+ createsprite gUnknown_08592EA4, 2, 8, 8, 110
+ createsprite gUnknown_08592EA4, 2, 24, 8, 115
+ createsprite gUnknown_08592EA4, 2, -24, 24, 120
+ createsprite gUnknown_08592EA4, 2, -8, 24, 125
+ createsprite gUnknown_08592EA4, 2, 8, 24, 130
+ createsprite gUnknown_08592EA4, 2, 24, 24, 135
+ createvisualtask sub_81023E0, 5
+ delay 60
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
- delay 0xA
+ delay 10
playsewithpan SE_W129, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -2420,367 +2382,361 @@ Move_CONVERSION_2:
end
Move_ROLLING_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D5830, 0x2, 0, 18, 6, 1, 4
+ setalpha 12, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 4
playsewithpan SE_W104, -64
- delay 0x6
+ delay 6
playsewithpan SE_W104, -64
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 0, 0, 4
- createsprite gUnknown_08595EE0, 0x2, -24, 0, 48, 10, 160, 0
- delay 0x5
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 0, 0, 4
+ createsprite gUnknown_08595EE0, 2, -24, 0, 48, 10, 160, 0
+ delay 5
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x2, -8, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, -8, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 1, 8
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 1, 8
clearmonbg ANIM_TARGET
blendoff
end
Move_HEADBUTT:
- loadspritegfx 0x2797
- createsprite gUnknown_08592CD8, 0x2, 0
+ loadspritegfx ANIM_TAG_135
+ createsprite gUnknown_08592CD8, 2, 0
playsewithpan SE_W029, -64
waitforvisualfinish
- delay 0x2
- createsprite gUnknown_08592CD8, 0x2, 1
+ delay 2
+ createsprite gUnknown_08592CD8, 2, 1
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 4, 1
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
- createsprite gUnknown_08592CD8, 0x2, 2
- createsprite gUnknown_085973E8, 0x83, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 4, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
+ createsprite gUnknown_08592CD8, 2, 2
+ createsprite gUnknown_085973E8, 131, 0, 0, 1, 1
playsewithpan SE_W233B, +63
waitforvisualfinish
end
Move_HORN_ATTACK:
- loadspritegfx 0x2797
- loadspritegfx 0x2724
- createsprite gUnknown_08592CD8, 0x2, 0
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_HORN_HIT
+ createsprite gUnknown_08592CD8, 2, 0
playsewithpan SE_W029, -64
waitforvisualfinish
- delay 0x2
- createsprite gUnknown_08592CD8, 0x2, 1
- createsprite gUnknown_08592F44, 0x84, 0, 0, 10
+ delay 2
+ createsprite gUnknown_08592CD8, 2, 1
+ createsprite gUnknown_08592F44, 132, 0, 0, 10
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 4, 1
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
- createsprite gUnknown_08592CD8, 0x2, 2
- createsprite gUnknown_085973E8, 0x83, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 4, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
+ createsprite gUnknown_08592CD8, 2, 2
+ createsprite gUnknown_085973E8, 131, 0, 0, 1, 1
playsewithpan SE_W030, +63
waitforvisualfinish
end
Move_FURY_ATTACK:
- loadspritegfx 0x2797
- loadspritegfx 0x2724
- createvisualtask sub_80D6134, 0x2, 4, 256, 0, 2
- choosetwoturnanim AnimScript_82CC7B8, AnimScript_82CC7DE
-
-AnimScript_82CC7A5:
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_HORN_HIT
+ createvisualtask sub_80D6134, 2, 4, 256, 0, 2
+ choosetwoturnanim FuryAttackRight, FuryAttackLeft
+FuryAttackContinue:
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
waitforvisualfinish
end
-AnimScript_82CC7B8:
- createsprite gUnknown_08592F44, 0x84, 8, 8, 10
+FuryAttackRight:
+ createsprite gUnknown_08592F44, 132, 8, 8, 10
waitforvisualfinish
- createsprite gUnknown_085973E8, 0x83, 0, 0, 1, 1
+ createsprite gUnknown_085973E8, 131, 0, 0, 1, 1
playsewithpan SE_W030, +63
- goto AnimScript_82CC7A5
+ goto FuryAttackContinue
-AnimScript_82CC7DE:
- createsprite gUnknown_08592F44, 0x84, -8, -8, 10
+FuryAttackLeft:
+ createsprite gUnknown_08592F44, 132, -8, -8, 10
waitforvisualfinish
- createsprite gUnknown_085973E8, 0x83, 0, 0, 1, 1
+ createsprite gUnknown_085973E8, 131, 0, 0, 1, 1
playsewithpan SE_W030, +63
- goto AnimScript_82CC7A5
+ goto FuryAttackContinue
Move_HORN_DRILL:
- loadspritegfx 0x2797
- loadspritegfx 0x2724
- jumpifcontest AnimScript_82CC96A
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_HORN_HIT
+ jumpifcontest HornDrillInContest
fadetobg BG_DRILL
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 768, 1, -1
-
-AnimScript_82CC821:
+ createvisualtask sub_8117660, 5, -2304, 768, 1, -1
+HornDrillContinue:
waitbgfadein
- setalpha 0x80C
- createsprite gUnknown_08592CD8, 0x2, 0
+ setalpha 12, 8
+ createsprite gUnknown_08592CD8, 2, 0
playsewithpan SE_W029, -64
waitforvisualfinish
- delay 0x2
- createsprite gUnknown_08592CD8, 0x2, 1
- createsprite gUnknown_08592F44, 0x84, 0, 0, 12
+ delay 2
+ createsprite gUnknown_08592CD8, 2, 1
+ createsprite gUnknown_08592F44, 132, 0, 0, 12
waitforvisualfinish
playse SE_BAN
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 40, 1
- createvisualtask sub_80D5484, 0x2, 1, 10, 0, 40, 1
- createsprite gUnknown_085973E8, 0x83, 0, 0, 1, 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1
+ createsprite gUnknown_085973E8, 131, 0, 0, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 0, 2, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, 0, 2, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, -4, 3, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, -4, 3, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, -8, -5, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, -8, -5, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 4, -12, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, 4, -12, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 16, 0, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, 16, 0, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 5, 18, 1, 3
+ delay 4
+ createsprite gUnknown_085973E8, 131, 5, 18, 1, 3
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, -17, 12, 1, 2
+ delay 4
+ createsprite gUnknown_085973E8, 131, -17, 12, 1, 2
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, -21, -15, 1, 2
+ delay 4
+ createsprite gUnknown_085973E8, 131, -21, -15, 1, 2
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 8, -27, 1, 2
+ delay 4
+ createsprite gUnknown_085973E8, 131, 8, -27, 1, 2
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_085973E8, 0x83, 32, 0, 1, 2
+ delay 4
+ createsprite gUnknown_085973E8, 131, 32, 0, 1, 2
playsewithpan SE_W030, +63
- delay 0x4
- createsprite gUnknown_08592CD8, 0x2, 2
+ delay 4
+ createsprite gUnknown_08592CD8, 2, 2
waitforvisualfinish
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
-AnimScript_82CC96A:
+HornDrillInContest:
fadetobg BG_DRILL_CONTESTS
waitbgfadeout
- createvisualtask sub_8117660, 0x5, 2304, 768, 0, -1
- goto AnimScript_82CC821
+ createvisualtask sub_8117660, 5, 2304, 768, 0, -1
+ goto HornDrillContinue
Move_THRASH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- createvisualtask sub_8104C38, 0x2
- createvisualtask sub_8104CA4, 0x2
- createsprite gUnknown_08595EB0, 0x83, 1, 10, 0
- createvisualtask sub_80D5484, 0x2, 1, 4, 0, 7, 1
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ createvisualtask sub_8104C38, 2
+ createvisualtask sub_8104CA4, 2
+ createsprite gUnknown_08595EB0, 131, 1, 10, 0
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 7, 1
playsewithpan SE_W004, +63
- delay 0x1C
- createsprite gUnknown_08595EB0, 0x83, 1, 10, 1
- createvisualtask sub_80D5484, 0x2, 1, 4, 0, 7, 1
+ delay 28
+ createsprite gUnknown_08595EB0, 131, 1, 10, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 7, 1
playsewithpan SE_W233B, +63
- delay 0x1C
- createsprite gUnknown_08595EB0, 0x83, 1, 10, 3
- createvisualtask sub_80D5484, 0x2, 1, 8, 0, 16, 1
+ delay 28
+ createsprite gUnknown_08595EB0, 131, 1, 10, 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 8, 0, 16, 1
playsewithpan SE_W025B, +63
end
Move_SING:
- loadspritegfx 0x2758
+ loadspritegfx ANIM_TAG_MUSIC_NOTES2
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8102BE8, 0x2
- waitforvisualfinish
- panse_1B SE_W047, -64, +63, +2, 0x0
- createsprite gUnknown_08593008, 0x82, 7, 0, 12
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 6, 1, 12
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 1, 2, 12
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 2, 3, 12
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 3, 0, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 1, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 5, 2, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 6, 3, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 0, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 1, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 1, 2, 12
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 5, 3, 12
- delay 0x4
+ createvisualtask sub_8102BE8, 2
+ waitforvisualfinish
+ panse_1B SE_W047, -64, +63, +2, 0
+ createsprite gUnknown_08593008, 130, 7, 0, 12
+ delay 5
+ createsprite gUnknown_08593008, 130, 6, 1, 12
+ delay 5
+ createsprite gUnknown_08593008, 130, 1, 2, 12
+ delay 5
+ createsprite gUnknown_08593008, 130, 2, 3, 12
+ delay 5
+ createsprite gUnknown_08593008, 130, 3, 0, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 1, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 5, 2, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 6, 3, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 0, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 1, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 1, 2, 12
+ delay 4
+ createsprite gUnknown_08593008, 130, 5, 3, 12
+ delay 4
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
- createvisualtask sub_8102CA0, 0x2
+ createvisualtask sub_8102CA0, 2
waitforvisualfinish
end
Move_LOW_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 0, 0, 4
- createsprite gUnknown_08595EE0, 0x82, -24, 28, 40, 8, 160, 0
- delay 0x4
- createsprite gUnknown_08597358, 0x82, -8, 8, 1, 2
- createvisualtask sub_80D6134, 0x2, 6, 384, 1, 2
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 0, 0, 4
+ createsprite gUnknown_08595EE0, 130, -24, 28, 40, 8, 160, 0
+ delay 4
+ createsprite gBasicHitSplatSpriteTemplate, 130, -8, 8, 1, 2
+ createvisualtask sub_80D6134, 2, 6, 384, 1, 2
playsewithpan SE_W233B, +63
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 1, 4
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 1, 4
end
Move_EARTHQUAKE:
- createvisualtask sub_81152DC, 0x5, 5, 10, 50
- createvisualtask sub_81152DC, 0x5, 4, 10, 50
+ createvisualtask sub_81152DC, 5, 5, 10, 50
+ createvisualtask sub_81152DC, 5, 4, 10, 50
playsewithpan SE_W089, 0
- delay 0xA
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- delay 0x10
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
+ delay 10
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ delay 16
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
end
Move_FISSURE:
- loadspritegfx 0x275A
- createvisualtask sub_81152DC, 0x3, 5, 10, 50
- createvisualtask sub_81152DC, 0x3, 1, 10, 50
+ loadspritegfx ANIM_TAG_074
+ createvisualtask sub_81152DC, 3, 5, 10, 50
+ createvisualtask sub_81152DC, 3, 1, 10, 50
playsewithpan SE_W089, +63
- delay 0x8
- call AnimScript_82CCBFF
- delay 0xF
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- delay 0xF
- call AnimScript_82CCC50
- delay 0xF
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- delay 0xF
- call AnimScript_82CCBFF
- delay 0x32
+ delay 8
+ call Fissure1
+ delay 15
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ delay 15
+ call Fissure2
+ delay 15
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ delay 15
+ call Fissure1
+ delay 50
fadetobg BG_FISSURE
waitbgfadeout
- createvisualtask sub_8115628, 0x5, 1, 5, -1
+ createvisualtask sub_8115628, 5, 1, 5, -1
waitbgfadein
- delay 0x28
+ delay 40
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
-AnimScript_82CCBFF:
- createsprite gUnknown_085971FC, 0x82, 1, 0, 12, -48, -16, 24
- createsprite gUnknown_085971FC, 0x82, 1, 0, 16, -16, -10, 24
- createsprite gUnknown_085971FC, 0x82, 1, 1, 14, -52, -18, 24
- createsprite gUnknown_085971FC, 0x82, 1, 1, 12, -32, -16, 24
+Fissure1:
+ createsprite gUnknown_085971FC, 130, 1, 0, 12, -48, -16, 24
+ createsprite gUnknown_085971FC, 130, 1, 0, 16, -16, -10, 24
+ createsprite gUnknown_085971FC, 130, 1, 1, 14, -52, -18, 24
+ createsprite gUnknown_085971FC, 130, 1, 1, 12, -32, -16, 24
playsewithpan SE_W091, +63
return
-AnimScript_82CCC50:
- createsprite gUnknown_085971FC, 0x82, 1, 0, 12, -24, -16, 24
- createsprite gUnknown_085971FC, 0x82, 1, 0, 16, -38, -10, 24
- createsprite gUnknown_085971FC, 0x82, 1, 1, 14, -20, -18, 24
- createsprite gUnknown_085971FC, 0x82, 1, 1, 12, -36, -16, 24
+Fissure2:
+ createsprite gUnknown_085971FC, 130, 1, 0, 12, -24, -16, 24
+ createsprite gUnknown_085971FC, 130, 1, 0, 16, -38, -10, 24
+ createsprite gUnknown_085971FC, 130, 1, 1, 14, -20, -18, 24
+ createsprite gUnknown_085971FC, 130, 1, 1, 12, -36, -16, 24
playsewithpan SE_W091, +63
return
Move_DIG:
- choosetwoturnanim AnimScript_82CCCAB, AnimScript_82CCD06
-
-AnimScript_82CCCAA:
- end
-
-AnimScript_82CCCAB:
- loadspritegfx 0x275A
- loadspritegfx 0x2829
- createsprite gUnknown_08597214, 0x1, 0, 0, 180
- createsprite gUnknown_08597214, 0x1, 0, 1, 180
+ choosetwoturnanim DigSetUp, DigUnleash
+DigEnd:
+ end
+DigSetUp:
+ loadspritegfx ANIM_TAG_074
+ loadspritegfx ANIM_TAG_281
+ createsprite gUnknown_08597214, 1, 0, 0, 180
+ createsprite gUnknown_08597214, 1, 0, 1, 180
monbg_22 ANIM_ATTACKER
- delay 0x1
- createvisualtask sub_8114CBC, 0x2, 0
- delay 0x6
- call AnimScript_82CCD6A
- call AnimScript_82CCD6A
- call AnimScript_82CCD6A
- call AnimScript_82CCD6A
- call AnimScript_82CCD6A
+ delay 1
+ createvisualtask sub_8114CBC, 2, 0
+ delay 6
+ call DigSetUp1
+ call DigSetUp1
+ call DigSetUp1
+ call DigSetUp1
+ call DigSetUp1
waitforvisualfinish
clearmonbg_23 ANIM_ATTACKER
- delay 0x1
- createvisualtask sub_8114CBC, 0x2, 1
- goto AnimScript_82CCCAA
-
-AnimScript_82CCD06:
- loadspritegfx 0x2797
- loadspritegfx 0x2829
- createvisualtask sub_8114F14, 0x2, 0
+ delay 1
+ createvisualtask sub_8114CBC, 2, 1
+ goto DigEnd
+DigUnleash:
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_281
+ createvisualtask sub_8114F14, 2, 0
waitforvisualfinish
monbg ANIM_ATTACKER
- createsprite gUnknown_08597214, 0x1, 0, 0, 48
- createsprite gUnknown_08597214, 0x1, 0, 1, 48
- delay 0x1
- createvisualtask sub_8114F14, 0x2, 1
- delay 0x10
- createsprite gUnknown_08597358, 0x2, -8, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
+ createsprite gUnknown_08597214, 1, 0, 0, 48
+ createsprite gUnknown_08597214, 1, 0, 1, 48
+ delay 1
+ createvisualtask sub_8114F14, 2, 1
+ delay 16
+ createsprite gBasicHitSplatSpriteTemplate, 2, -8, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
playsewithpan SE_W025B, -64
clearmonbg ANIM_ATTACKER
- goto AnimScript_82CCCAA
-
-AnimScript_82CCD6A:
- createsprite gUnknown_085971FC, 0x2, 0, 0, 12, 4, -16, 18
- createsprite gUnknown_085971FC, 0x2, 0, 0, 16, 4, -10, 18
- createsprite gUnknown_085971FC, 0x2, 0, 1, 14, 4, -18, 18
- createsprite gUnknown_085971FC, 0x2, 0, 1, 12, 4, -16, 18
+ goto DigEnd
+DigSetUp1:
+ createsprite gUnknown_085971FC, 2, 0, 0, 12, 4, -16, 18
+ createsprite gUnknown_085971FC, 2, 0, 0, 16, 4, -10, 18
+ createsprite gUnknown_085971FC, 2, 0, 1, 14, 4, -18, 18
+ createsprite gUnknown_085971FC, 2, 0, 1, 12, 4, -16, 18
playsewithpan SE_W091, -64
- delay 0x20
+ delay 32
return
Move_MEDITATE:
- call AnimScript_82D7CD1
- createvisualtask sub_810F7D4, 0x2
+ call SetPsychicBackground
+ createvisualtask sub_810F7D4, 2
playsewithpan SE_W029, -64
- delay 0x10
+ delay 16
playsewithpan SE_W036, -64
waitforvisualfinish
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_AGILITY:
monbg ANIM_ATK_PARTNER
- setalpha 0x80C
- createvisualtask sub_80D5830, 0x2, 0, 24, 6, 4, 4
- createvisualtask sub_81169C0, 0x2, 0, 4, 7, 10
+ setalpha 12, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 24, 6, 4, 4
+ createvisualtask sub_81169C0, 2, 0, 4, 7, 10
playsewithpan SE_W104, -64
- delay 0xC
+ delay 12
playsewithpan SE_W104, -64
- delay 0xC
+ delay 12
playsewithpan SE_W104, -64
- delay 0xC
+ delay 12
playsewithpan SE_W104, -64
- delay 0xC
+ delay 12
playsewithpan SE_W104, -64
- delay 0xC
+ delay 12
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- delay 0x1
+ delay 1
end
Move_QUICK_ATTACK:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_ATK_PARTNER
- setalpha 0x80C
- createvisualtask sub_80D5830, 0x2, 0, 24, 6, 1, 5
- createvisualtask sub_81169C0, 0x2, 0, 4, 7, 3
+ setalpha 12, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 24, 6, 1, 5
+ createvisualtask sub_81169C0, 2, 0, 4, 7, 3
playsewithpan SE_W026, -64
- delay 0x4
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
- createsprite gUnknown_08597358, 0x84, 0, 0, 1, 1
+ delay 4
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 132, 0, 0, 1, 1
playsewithpan SE_W233B, +63
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
@@ -2789,323 +2745,314 @@ Move_QUICK_ATTACK:
end
Move_RAGE:
- loadspritegfx 0x2797
- loadspritegfx 0x2767
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_ANGER
monbg ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80A7B98, 0x3, 0, RGB_RED, 10, 0, 2
- createsprite gUnknown_0859368C, 0x2, 0, -20, -28
+ setalpha 12, 8
+ createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_ATTACKER, RGB_RED, 10, 0, 2
+ createsprite gUnknown_0859368C, 2, 0, -20, -28
playsewithpan SE_W207B, -64
- delay 0x14
- createsprite gUnknown_0859368C, 0x2, 0, 20, -28
+ delay 20
+ createsprite gUnknown_0859368C, 2, 0, 20, -28
playsewithpan SE_W207B, -64
waitforvisualfinish
- createsprite gUnknown_0857FE28, 0x2, 4, 6
- delay 0x4
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D6388, 0x2, 1, 1, 10, 1, 0
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 6
+ delay 4
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask sub_80D6388, 2, 1, 1, 10, 1, 0
playsewithpan SE_W233B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
end
Move_TELEPORT:
- call AnimScript_82D7CD1
- createvisualtask sub_810F83C, 0x2
+ call SetPsychicBackground
+ createvisualtask sub_810F83C, 2
playsewithpan SE_W100, -64
- delay 0xF
- call AnimScript_82D7CDD
+ delay 15
+ call UnsetPsychicBackground
waitforvisualfinish
end
Move_DOUBLE_TEAM:
- createvisualtask sub_81029B4, 0x2
- setalpha 0x80C
+ createvisualtask sub_81029B4, 2
+ setalpha 12, 8
monbg ANIM_ATK_PARTNER
playsewithpan SE_W104, -64
- delay 0x20
+ delay 32
playsewithpan SE_W104, -64
- delay 0x18
+ delay 24
playsewithpan SE_W104, -64
- delay 0x10
+ delay 16
playsewithpan SE_W104, -64
- delay 0x8
+ delay 8
playsewithpan SE_W104, -64
- delay 0x8
+ delay 8
playsewithpan SE_W104, -64
- delay 0x8
+ delay 8
playsewithpan SE_W104, -64
- delay 0x8
+ delay 8
playsewithpan SE_W104, -64
- delay 0x8
+ delay 8
playsewithpan SE_W104, -64
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- delay 0x1
+ delay 1
end
Move_MINIMIZE:
- setalpha 0x80A
- createvisualtask sub_8104674, 0x2
- loopsewithpan SE_W107, -64, 0x22, 0x3
+ setalpha 10, 8
+ createvisualtask sub_8104674, 2
+ loopsewithpan SE_W107, -64, 34, 3
waitforvisualfinish
blendoff
end
Move_METRONOME:
- loadspritegfx 0x2750
- loadspritegfx 0x27E1
- createsprite gUnknown_08593114, 0xB, 0, 100
+ loadspritegfx ANIM_TAG_064
+ loadspritegfx ANIM_TAG_209
+ createsprite gUnknown_08593114, 11, 0, 100
playsewithpan SE_W118, -64
- delay 0x6
- createsprite gUnknown_085931BC, 0xC, 0
- delay 0x18
- loopsewithpan SE_W039, -64, 0x16, 0x3
+ delay 6
+ createsprite gUnknown_085931BC, 12, 0
+ delay 24
+ loopsewithpan SE_W039, -64, 22, 3
waitforvisualfinish
end
Move_SKULL_BASH:
- choosetwoturnanim AnimScript_82CCF99, AnimScript_82CCFE6
-
-AnimScript_82CCF98:
+ choosetwoturnanim SkullBashSetUp, SkullBashAttack
+SkullBashEnd:
end
-
-AnimScript_82CCF99:
- call AnimScript_82CCFA9
- call AnimScript_82CCFA9
+SkullBashSetUp:
+ call SkullBashSetUp1
+ call SkullBashSetUp1
waitforvisualfinish
- goto AnimScript_82CCF98
-
-AnimScript_82CCFA9:
- createsprite gUnknown_0857FE88, 0x2, 0, -24, 0, 0, 10, 0
+ goto SkullBashEnd
+SkullBashSetUp1:
+ createsprite gUnknown_0857FE88, 2, 0, -24, 0, 0, 10, 0
playsewithpan SE_W036, -64
waitforvisualfinish
- createvisualtask sub_80D6134, 0x2, 16, 96, 0, 2
+ createvisualtask sub_80D6134, 2, 16, 96, 0, 2
waitforvisualfinish
- createsprite gUnknown_0857FE88, 0x2, 0, 24, 0, 0, 10, 1
+ createsprite gUnknown_0857FE88, 2, 0, 24, 0, 0, 10, 1
waitforvisualfinish
return
-
-AnimScript_82CCFE6:
- loadspritegfx 0x2797
- createvisualtask sub_8101C94, 0x2, 0
+SkullBashAttack:
+ loadspritegfx ANIM_TAG_135
+ createvisualtask sub_8101C94, 2, 0
playsewithpan SE_W036, -64
waitforvisualfinish
playse SE_BAN
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 40, 1
- createvisualtask sub_80D5484, 0x2, 1, 10, 0, 40, 1
- createsprite gUnknown_085973E8, 0x84, 0, 0, 1, 0
- loopsewithpan SE_W025B, +63, 0x8, 0x3
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1
+ createsprite gUnknown_085973E8, 132, 0, 0, 1, 0
+ loopsewithpan SE_W025B, +63, 8, 3
waitforvisualfinish
- createvisualtask sub_8101C94, 0x2, 1
- goto AnimScript_82CCF98
+ createvisualtask sub_8101C94, 2, 1
+ goto SkullBashEnd
Move_AMNESIA:
- loadspritegfx 0x276D
- call AnimScript_82D7CD1
- delay 0x8
- createsprite gUnknown_08596744, 0x14
+ loadspritegfx ANIM_TAG_093
+ call SetPsychicBackground
+ delay 8
+ createsprite gUnknown_08596744, 20
playsewithpan SE_W118, -64
- delay 0x36
- loopsewithpan SE_W118, -64, 0x10, 0x3
+ delay 54
+ loopsewithpan SE_W118, -64, 16, 3
waitforvisualfinish
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_KINESIS:
- loadspritegfx 0x275B
- loadspritegfx 0x2771
+ loadspritegfx ANIM_TAG_075
+ loadspritegfx ANIM_TAG_BENT_SPOON
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
- createsprite gUnknown_085966DC, 0x14
- createsprite gUnknown_08593344, 0x13, 32, -8, 0
- createsprite gUnknown_08593344, 0x13, 32, 16, 1
- loopsewithpan SE_W109, -64, 0x15, 0x2
- delay 0x3C
+ call SetPsychicBackground
+ createsprite gUnknown_085966DC, 20
+ createsprite gUnknown_08593344, 19, 32, -8, 0
+ createsprite gUnknown_08593344, 19, 32, 16, 1
+ loopsewithpan SE_W109, -64, 21, 2
+ delay 60
playsewithpan SE_W146, -64
- delay 0x1E
- loopsewithpan SE_W146, -64, 0x14, 0x2
- delay 0x46
+ delay 30
+ loopsewithpan SE_W146, -64, 20, 2
+ delay 70
playsewithpan SE_W207B, -64
waitforvisualfinish
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_GLARE:
- loadspritegfx 0x2808
- loadspritegfx 0x27EA
- createvisualtask sub_815E114, 0x5, 0
+ loadspritegfx ANIM_TAG_248
+ loadspritegfx ANIM_TAG_218
+ createvisualtask sub_815E114, 5, 0
playsewithpan SE_W060B, -64
waitforvisualfinish
- createvisualtask sub_8116620, 0x5, 1, 0, 0, 16, 0
+ createvisualtask sub_8116620, 5, 1, 0, 0, 16, RGB_BLACK
waitforvisualfinish
- createsprite gUnknown_08593A84, 0x0, -16, -8
- createsprite gUnknown_08593A84, 0x0, 16, -8
- createvisualtask sub_81064F8, 0x5
+ createsprite gUnknown_08593A84, 0, -16, -8
+ createsprite gUnknown_08593A84, 0, 16, -8
+ createvisualtask sub_81064F8, 5
playsewithpan SE_W043, -64
- delay 0x2
- createvisualtask sub_810A094, 0x3, 20, 1, 0
+ delay 2
+ createvisualtask sub_810A094, 3, 20, 1, 0
waitforvisualfinish
- createvisualtask sub_8116620, 0x5, 1, 0, 16, 0, 0
+ createvisualtask sub_8116620, 5, 1, 0, 16, 0, RGB_BLACK
end
Move_BARRAGE:
- loadspritegfx 0x280E
- createvisualtask sub_815E47C, 0x3
+ loadspritegfx ANIM_TAG_254
+ createvisualtask sub_815E47C, 3
playsewithpan SE_W207, -64
- delay 0x18
- createsprite gUnknown_085972D8, 0x2, 8, 1, 40, 1
- createvisualtask sub_80D51AC, 0x3, 1, 0, 4, 20, 1
- createvisualtask sub_80D51AC, 0x3, 3, 0, 4, 20, 1
- loopsewithpan SE_W070, +63, 0x8, 0x2
+ delay 24
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, 8, 1, 40, 1
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 4, 20, 1
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_DEF_PARTNER, 0, 4, 20, 1
+ loopsewithpan SE_W070, +63, 8, 2
end
Move_SKY_ATTACK:
- choosetwoturnanim AnimScript_82CD185, AnimScript_82CD28E
-
-AnimScript_82CD184:
+ choosetwoturnanim SkyAttackSetUp, SkyAttackUnleash
+SkyAttackEnd:
end
-
-AnimScript_82CD185:
+SkyAttackSetUp:
monbg ANIM_DEF_PARTNER
- setalpha 0xB0C
- createvisualtask sub_81177AC, 0x5, 7
- jumpargeq 0x7, 0x0, AnimScript_82CD1A0
- goto AnimScript_82CD217
-
-AnimScript_82CD1A0:
- createvisualtask sub_8116620, 0xA, 27, 1, 0, 12, 0
- waitforvisualfinish
- delay 0xC
- createvisualtask sub_8116620, 0xA, 2, 1, 8, 0, 0
- createvisualtask sub_81152DC, 0x5, 0, 2, 16
- loopsewithpan SE_W287, -64, 0x4, 0x8
- createvisualtask sub_8116620, 0xA, 2, 1, 0, 15, 0x7FFF
- delay 0x14
- createvisualtask sub_8116620, 0xA, 2, 1, 15, 0, 0x7FFF
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 25, 1, 8, 0, 0
+ setalpha 12, 11
+ createvisualtask AnimTask_IsTargetPartner, 5, ARG_RET_ID
+ jumpretfalse SkyAttackSetUpAgainstOpponent
+ goto SkyAttackSetUpAgainstPartner
+SkyAttackSetUpAgainstOpponent:
+ createvisualtask sub_8116620, 10, 27, 1, 0, 12, RGB_BLACK
+ waitforvisualfinish
+ delay 12
+ createvisualtask sub_8116620, 10, 2, 1, 8, 0, RGB_BLACK
+ createvisualtask sub_81152DC, 5, 0, 2, 16
+ loopsewithpan SE_W287, -64, 4, 8
+ createvisualtask sub_8116620, 10, 2, 1, 0, 15, RGB_WHITE
+ delay 20
+ createvisualtask sub_8116620, 10, 2, 1, 15, 0, RGB_WHITE
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 25, 1, 8, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82CD184
-
-AnimScript_82CD217:
- createvisualtask sub_8116664, 0xA, 1, 1, 0, 12, 0
+ goto SkyAttackEnd
+SkyAttackSetUpAgainstPartner:
+ createvisualtask sub_8116664, 10, 1, 1, 0, 12, RGB_BLACK
waitforvisualfinish
- delay 0xC
- createvisualtask sub_8116620, 0xA, 2, 1, 8, 0, 0
- createvisualtask sub_81152DC, 0x5, 0, 2, 16
+ delay 12
+ createvisualtask sub_8116620, 10, 2, 1, 8, 0, RGB_BLACK
+ createvisualtask sub_81152DC, 5, 0, 2, 16
playsewithpan SE_W287, -64
- delay 0x8
- createvisualtask sub_8116620, 0xA, 2, 1, 0, 15, 0x7FFF
- delay 0x14
- createvisualtask sub_8116620, 0xA, 2, 1, 15, 0, 0x7FFF
+ delay 8
+ createvisualtask sub_8116620, 10, 2, 1, 0, 15, RGB_WHITE
+ delay 20
+ createvisualtask sub_8116620, 10, 2, 1, 15, 0, RGB_WHITE
waitforvisualfinish
- createvisualtask sub_8116664, 0xA, 4, 1, 8, 0, 0
+ createvisualtask sub_8116664, 10, 4, 1, 8, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82CD184
-
-AnimScript_82CD28E:
- loadspritegfx 0x2797
- loadspritegfx 0x282C
- call AnimScript_82D7CE5
+ goto SkyAttackEnd
+SkyAttackUnleash:
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_284
+ call SetFlyingBg
monbg ANIM_ATTACKER
- createvisualtask sub_8116620, 0xA, 2, 0, 0, 16, 0x7FFF
- delay 0x4
- createvisualtask sub_81136E8, 0x5, 0
- waitforvisualfinish
- createvisualtask sub_8159244, 0x5, 238, -64
- createsprite gUnknown_08596514, 0x82
- delay 0xE
- createvisualtask sub_80D52D0, 0x2, 1, 10, 0, 18, 1
- createvisualtask sub_8159210, 0x5, 141, 63
- delay 0x14
- createvisualtask sub_81137E4, 0x5, 1
- delay 0x2
- createvisualtask sub_8116620, 0xA, 2, 0, 15, 0, 0x7FFF
+ createvisualtask sub_8116620, 10, 2, 0, 0, 16, RGB_WHITE
+ delay 4
+ createvisualtask sub_81136E8, 5, 0
+ waitforvisualfinish
+ createvisualtask sub_8159244, 5, 238, -64
+ createsprite gUnknown_08596514, 130
+ delay 14
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 10, 0, 18, 1
+ createvisualtask sub_8159210, 5, 141, 63
+ delay 20
+ createvisualtask sub_81137E4, 5, 1
+ delay 2
+ createvisualtask sub_8116620, 10, 2, 0, 15, 0, RGB_WHITE
waitforvisualfinish
clearmonbg ANIM_ATTACKER
- call AnimScript_82D7D15
- goto AnimScript_82CD184
+ call UnsetFlyingBg
+ goto SkyAttackEnd
Move_FLASH:
playsewithpan SE_W043, -64
- createvisualtask sub_8117494, 0x2
+ createvisualtask sub_8117494, 2
waitforvisualfinish
end
Move_SPLASH:
- createvisualtask sub_8104938, 0x2, 0, 3
- delay 0x8
- loopsewithpan SE_W039, -64, 0x26, 0x3
+ createvisualtask sub_8104938, 2, 0, 3
+ delay 8
+ loopsewithpan SE_W039, -64, 38, 3
waitforvisualfinish
end
Move_ACID_ARMOR:
monbg ANIM_ATTACKER
- setalpha 0xF
- createvisualtask sub_815D240, 0x2, 0
+ setalpha 15, 0
+ createvisualtask sub_815D240, 2, 0
playsewithpan SE_W151, -64
waitforvisualfinish
blendoff
clearmonbg ANIM_ATTACKER
- delay 0x1
+ delay 1
end
Move_SHARPEN:
- loadspritegfx 0x27C9
- createsprite gUnknown_08592DE4, 0x2
+ loadspritegfx ANIM_TAG_185
+ createsprite gUnknown_08592DE4, 2
waitforvisualfinish
end
Move_SUPER_FANG:
- loadspritegfx 0x27D0
- createvisualtask sub_80D5484, 0x2, 0, 1, 0, 20, 1
+ loadspritegfx ANIM_TAG_192
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 1, 0, 20, 1
playsewithpan SE_W082, -64
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 0, 3, 0, 48, 1
- createvisualtask sub_80A7B98, 0x2, 0, RGB(31, 6, 1), 12, 4, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 48, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 2, ANIM_ATTACKER, RGB(31, 6, 1), 12, 4, 1
waitforvisualfinish
- delay 0x14
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x4
- createsprite gUnknown_08592F74, 0x82
+ delay 20
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 4
+ createsprite gUnknown_08592F74, 130
playsewithpan SE_W044, +63
- delay 0x8
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 2143, 14, 0x7FFF, 14
- createvisualtask sub_80D51AC, 0x2, 1, 0, 7, 12, 1
+ delay 8
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB(31, 2, 2), 14, 0x7FFF, 14
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 7, 12, 1
waitforvisualfinish
blendoff
end
Move_SLASH:
- loadspritegfx 0x27C7
- createsprite gUnknown_08592D2C, 0x82, 1, -8, 0
+ loadspritegfx ANIM_TAG_183
+ createsprite gUnknown_08592D2C, 130, 1, -8, 0
playsewithpan SE_W013, +63
- delay 0x4
- createsprite gUnknown_08592D2C, 0x82, 1, 8, 0
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 18, 1
+ delay 4
+ createsprite gUnknown_08592D2C, 130, 1, 8, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 18, 1
playsewithpan SE_W013, +63
waitforvisualfinish
end
Move_STRUGGLE:
- loadspritegfx 0x2797
- loadspritegfx 0x27E7
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_215
monbg ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D5484, 0x2, 0, 3, 0, 12, 4
- createsprite gUnknown_08593B80, 0x2, 0, 0, 2
- createsprite gUnknown_08593B80, 0x2, 0, 1, 2
- loopsewithpan SE_W029, -64, 0xC, 0x4
- waitforvisualfinish
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D5484, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4
+ createsprite gUnknown_08593B80, 2, 0, 0, 2
+ createsprite gUnknown_08593B80, 2, 0, 1, 2
+ loopsewithpan SE_W029, -64, 12, 4
+ waitforvisualfinish
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -3113,33 +3060,32 @@ Move_STRUGGLE:
end
Move_SKETCH:
- loadspritegfx 0x2712
+ loadspritegfx ANIM_TAG_PENCIL
monbg ANIM_TARGET
- createvisualtask sub_8104E74, 0x2
- createsprite gUnknown_085936D4, 0x82
+ createvisualtask sub_8104E74, 2
+ createsprite gUnknown_085936D4, 130
waitforvisualfinish
clearmonbg ANIM_TARGET
- createvisualtask sub_8104938, 0x2, 0, 2
- loopsewithpan SE_W039, -64, 0x26, 0x2
+ createvisualtask sub_8104938, 2, 0, 2
+ loopsewithpan SE_W039, -64, 38, 2
end
Move_NIGHTMARE:
fadetobg BG_GHOST
waitbgfadein
- jumpifcontest AnimScript_82CD4CF
+ jumpifcontest NightmareInContest
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8111C50, 0x2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 40, 1
+ createvisualtask sub_8111C50, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 40, 1
playsewithpan SE_W171, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
restorebg
waitbgfadein
end
-
-AnimScript_82CD4CF:
- createvisualtask sub_80A7B98, 0x2, 0, RGB_WHITE, 10, 2, 1
- createvisualtask sub_80D51AC, 0x2, 0, 3, 0, 32, 1
+NightmareInContest:
+ createvisualtask AnimTask_BlendMonInAndOut, 2, ANIM_ATTACKER, RGB_WHITE, 10, 2, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 3, 0, 32, 1
playsewithpan SE_W171, +63
waitforvisualfinish
restorebg
@@ -3147,14 +3093,14 @@ AnimScript_82CD4CF:
end
Move_FLAIL:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_815C770, 0x2, 0
- loopsewithpan SE_W029, -64, 0x8, 0x2
+ setalpha 12, 8
+ createvisualtask sub_815C770, 2, 0
+ loopsewithpan SE_W029, -64, 8, 2
waitforvisualfinish
- createsprite gUnknown_085973A0, 0x83, 1, 3
- createvisualtask sub_80D6388, 0x2, 0, 1, 30, 1, 0
+ createsprite gUnknown_085973A0, 131, 1, 3
+ createvisualtask sub_80D6388, 2, 0, 1, 30, 1, 0
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -3166,9 +3112,9 @@ Move_SPITE:
playsewithpan SE_W060, -64
waitbgfadein
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8115A04, 0x2, 2, 2, 6, 0, 8, 0x7FFF
- createvisualtask sub_8111E50, 0x2
- loopsewithpan SE_W060, +63, 0x14, 0x3
+ createvisualtask sub_8115A04, 2, 2, 2, 6, 0, 8, RGB_WHITE
+ createvisualtask sub_8111E50, 2
+ loopsewithpan SE_W060, +63, 20, 3
waitforvisualfinish
restorebg
waitbgfadein
@@ -3176,52 +3122,50 @@ Move_SPITE:
end
Move_MACH_PUNCH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_ATK_PARTNER
- createvisualtask sub_8117754, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82CD5E6
+ createvisualtask AnimTask_IsAttackerOpponentSide, 2
+ jumprettrue MachPunchAgainstPlayer
fadetobg BG_HIGHSPEED_OPPONENT
-
-AnimScript_82CD57E:
+MachPunchContinue:
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 0, 1, -1
+ createvisualtask sub_8117660, 5, -2304, 0, 1, -1
waitbgfadein
- delay 0x0
- setalpha 0x809
- createvisualtask sub_80A8BC4, 0x2, 28968, 10
+ delay 0
+ setalpha 9, 8
+ createvisualtask sub_80A8BC4, 2, 28968, 10
playsewithpan SE_W026, -64
- delay 0x6
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x84, 0, 0, 8, 1, 0
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 8, 1, 0
playsewithpan SE_W004, +63
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
-
-AnimScript_82CD5E6:
+MachPunchAgainstPlayer:
fadetobg BG_HIGHSPEED_PLAYER
- goto AnimScript_82CD57E
+ goto MachPunchContinue
Move_FORESIGHT:
- loadspritegfx 0x2812
+ loadspritegfx ANIM_TAG_MAGNIFYING_GLASS
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x10
- createsprite gUnknown_085CE8C4, 0x82, 1
- delay 0x11
- loopsewithpan SE_W166, +63, 0x10, 0x4
- delay 0x30
- delay 0x18
+ setalpha 16, 0
+ createsprite gUnknown_085CE8C4, 130, 1
+ delay 17
+ loopsewithpan SE_W166, +63, 16, 4
+ delay 48
+ delay 24
playsewithpan SE_W166, +63
- delay 0xA
- createvisualtask sub_80A7B98, 0x5, 1, RGB_WHITE, 12, 2, 1
+ delay 10
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_TARGET, RGB_WHITE, 12, 2, 1
playsewithpan SE_W197, +63
waitforvisualfinish
blendoff
@@ -3229,17 +3173,17 @@ Move_FORESIGHT:
end
Move_DESTINY_BOND:
- loadspritegfx 0x27CC
+ loadspritegfx ANIM_TAG_188
fadetobg BG_GHOST
playsewithpan SE_W060, -64
waitbgfadein
- createvisualtask sub_81123C4, 0x5, 0, 48
+ createvisualtask sub_81123C4, 5, 0, 48
playsewithpan SE_W109, -64
- delay 0x30
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 24, 1
- createvisualtask sub_8116664, 0x2, 6, 1, 0, 12, 30653
- delay 0x18
- createvisualtask sub_8116664, 0x2, 6, 1, 12, 0, 30653
+ delay 48
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 24, 1
+ createvisualtask sub_8116664, 2, 6, 1, 0, 12, RGB(29, 29, 29)
+ delay 24
+ createvisualtask sub_8116664, 2, 6, 1, 12, 0, RGB(29, 29, 29)
playsewithpan SE_W171, +63
waitforvisualfinish
restorebg
@@ -3249,55 +3193,55 @@ Move_DESTINY_BOND:
end
Move_ENDURE:
- loadspritegfx 0x27C8
+ loadspritegfx ANIM_TAG_184
playsewithpan SE_W082, -64
- call AnimScript_82CD6C7
- delay 0x8
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 11, 31
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 32, 1
- call AnimScript_82CD6C7
- delay 0x8
- call AnimScript_82CD6C7
- waitforvisualfinish
- end
-
-AnimScript_82CD6C7:
- createsprite gUnknown_08592D8C, 0x2, 0, -24, 26, 2
- delay 0x4
- createsprite gUnknown_08592D8C, 0x2, 0, 14, 28, 1
- delay 0x4
- createsprite gUnknown_08592D8C, 0x2, 0, -5, 10, 2
- delay 0x4
- createsprite gUnknown_08592D8C, 0x2, 0, 28, 26, 3
- delay 0x4
- createsprite gUnknown_08592D8C, 0x2, 0, -12, 0, 1
+ call EndureEffect
+ delay 8
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 11, RGB_RED
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1
+ call EndureEffect
+ delay 8
+ call EndureEffect
+ waitforvisualfinish
+ end
+
+EndureEffect:
+ createsprite gUnknown_08592D8C, 2, 0, -24, 26, 2
+ delay 4
+ createsprite gUnknown_08592D8C, 2, 0, 14, 28, 1
+ delay 4
+ createsprite gUnknown_08592D8C, 2, 0, -5, 10, 2
+ delay 4
+ createsprite gUnknown_08592D8C, 2, 0, 28, 26, 3
+ delay 4
+ createsprite gUnknown_08592D8C, 2, 0, -12, 0, 1
return
Move_CHARM:
- loadspritegfx 0x27E2
- createvisualtask sub_815C478, 0x5, 0, 2, 0
- createsprite gUnknown_08593970, 0x3, 0, 20
+ loadspritegfx ANIM_TAG_PURPLE_HEART
+ createvisualtask sub_815C478, 5, 0, 2, 0
+ createsprite gUnknown_08593970, 3, 0, 20
playsewithpan SE_W204, -64
- delay 0xF
- createsprite gUnknown_08593970, 0x3, -20, 20
+ delay 15
+ createsprite gUnknown_08593970, 3, -20, 20
playsewithpan SE_W204, -64
- delay 0xF
- createsprite gUnknown_08593970, 0x3, 20, 20
+ delay 15
+ createsprite gUnknown_08593970, 3, 20, 20
playsewithpan SE_W204, -64
waitforvisualfinish
end
Move_ROLLOUT:
- loadspritegfx 0x2797
- loadspritegfx 0x275A
- loadspritegfx 0x274A
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_074
+ loadspritegfx ANIM_TAG_058
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_8110F74, 0x2
+ setalpha 12, 8
+ createvisualtask sub_8110F74, 2
waitforvisualfinish
- createvisualtask sub_80D6388, 0x2, 0, 1, 30, 1, 0
- createsprite gUnknown_08597358, 0x4, 0, 0, 1, 2
+ createvisualtask sub_80D6388, 2, 0, 1, 30, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 4, 0, 0, 1, 2
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -3305,624 +3249,617 @@ Move_ROLLOUT:
end
Move_FALSE_SWIPE:
- loadspritegfx 0x282E
- loadspritegfx 0x2797
- createsprite gUnknown_08592D44, 0x82
+ loadspritegfx ANIM_TAG_286
+ loadspritegfx ANIM_TAG_135
+ createsprite gUnknown_08592D44, 130
playsewithpan SE_W233, +63
- delay 0x10
- createsprite gUnknown_08592D5C, 0x82, 0
+ delay 16
+ createsprite gUnknown_08592D5C, 130, 0
playsewithpan SE_W104, +63
- delay 0x2
- createsprite gUnknown_08592D5C, 0x82, 16
- delay 0x2
- createsprite gUnknown_08592D5C, 0x82, 32
+ delay 2
+ createsprite gUnknown_08592D5C, 130, 16
+ delay 2
+ createsprite gUnknown_08592D5C, 130, 32
playsewithpan SE_W104, +63
- delay 0x2
- createsprite gUnknown_08592D5C, 0x82, 48
- delay 0x2
- createsprite gUnknown_08592D5C, 0x82, 64
+ delay 2
+ createsprite gUnknown_08592D5C, 130, 48
+ delay 2
+ createsprite gUnknown_08592D5C, 130, 64
playsewithpan SE_W104, +63
- delay 0x2
- createsprite gUnknown_08592D5C, 0x82, 80
- delay 0x2
+ delay 2
+ createsprite gUnknown_08592D5C, 130, 80
+ delay 2
waitforvisualfinish
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 6, 1
- createsprite gUnknown_08597358, 0x84, 0, 0, 1, 3
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 132, 0, 0, 1, 3
playsewithpan SE_W004, +63
end
Move_SWAGGER:
- loadspritegfx 0x2766
- loadspritegfx 0x2767
- createvisualtask sub_8104AB4, 0x2
+ loadspritegfx ANIM_TAG_086
+ loadspritegfx ANIM_TAG_ANGER
+ createvisualtask sub_8104AB4, 2
playsewithpan SE_W207, -64
waitforvisualfinish
- createsprite gUnknown_08593658, 0x2
- loopsewithpan SE_W207, -64, 0x4, 0x2
+ createsprite gUnknown_08593658, 2
+ loopsewithpan SE_W207, -64, 4, 2
waitforvisualfinish
- delay 0x18
- createsprite gUnknown_0859368C, 0x82, 1, -20, -28
+ delay 24
+ createsprite gUnknown_0859368C, 130, 1, -20, -28
playsewithpan SE_W207B, +63
- delay 0xC
- createsprite gUnknown_0859368C, 0x82, 1, 20, -28
+ delay 12
+ createsprite gUnknown_0859368C, 130, 1, 20, -28
playsewithpan SE_W207B, +63
waitforvisualfinish
end
Move_MILK_DRINK:
- loadspritegfx 0x2773
- loadspritegfx 0x27DB
- loadspritegfx 0x272F
+ loadspritegfx ANIM_TAG_MILK_BOTTLE
+ loadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_TARGET
- createsprite gUnknown_08592B3C, 0x2
- delay 0x28
+ createsprite gUnknown_08592B3C, 2
+ delay 40
playsewithpan SE_W152, -64
- delay 0xC
+ delay 12
playsewithpan SE_W152, -64
- delay 0x14
+ delay 20
playsewithpan SE_W152, -64
waitforvisualfinish
- createsprite gUnknown_0859381C, 0x3, 0, 0, 1, 0
+ createsprite gUnknown_0859381C, 3, 0, 0, 1, 0
playsewithpan SE_W208, -64
waitforvisualfinish
clearmonbg ANIM_TARGET
- call AnimScript_82D7A28
+ call HealingEffect2
waitforvisualfinish
end
Move_MAGNITUDE:
- createvisualtask sub_8115600, 0x2
- waitforvisualfinish
- jumpargeq 0xF, 0x0, AnimScript_82CD8C9
- jumpargeq 0xF, 0x1, AnimScript_82CD8EE
-
-AnimScript_82CD8C8:
- end
-
-AnimScript_82CD8C9:
- createvisualtask sub_81152DC, 0x5, 5, 0, 50
- createvisualtask sub_81152DC, 0x5, 4, 0, 50
- loopsewithpan SE_W070, +63, 0x8, 0xA
- goto AnimScript_82CD8C8
-
-AnimScript_82CD8EE:
- createvisualtask sub_81152DC, 0x5, 5, 0, 50
- createvisualtask sub_81152DC, 0x5, 4, 0, 50
- loopsewithpan SE_W070, +63, 0x8, 0xA
- delay 0xA
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- delay 0x10
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, 0, 14, 0x7FFF, 14
- goto AnimScript_82CD8C8
+ createvisualtask AnimTask_IsPowerOver99, 2
+ waitforvisualfinish
+ jumpargeq 15, FALSE, MagnitudeRegular
+ jumpargeq 15, TRUE, MagnitudeIntense
+MagnitudeEnd:
+ end
+MagnitudeRegular:
+ createvisualtask sub_81152DC, 5, 5, 0, 50
+ createvisualtask sub_81152DC, 5, 4, 0, 50
+ loopsewithpan SE_W070, +63, 8, 10
+ goto MagnitudeEnd
+MagnitudeIntense:
+ createvisualtask sub_81152DC, 5, 5, 0, 50
+ createvisualtask sub_81152DC, 5, 4, 0, 50
+ loopsewithpan SE_W070, +63, 8, 10
+ delay 10
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ delay 16
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_BLACK, 14, 0x7FFF, 14
+ goto MagnitudeEnd
Move_RAPID_SPIN:
- loadspritegfx 0x2797
- loadspritegfx 0x27F5
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_229
monbg ANIM_ATTACKER
- createsprite gUnknown_085CE288, 0x2, 0, 0, 32, -32, 40, -2
- createvisualtask sub_815ADB0, 0x2, 0, 2, 0
- loopsewithpan SE_W013B, -64, 0x8, 0x4
+ createsprite gUnknown_085CE288, 2, 0, 0, 32, -32, 40, -2
+ createvisualtask sub_815ADB0, 2, 0, 2, 0
+ loopsewithpan SE_W013B, -64, 8, 4
waitforvisualfinish
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 2
- createvisualtask sub_80D6388, 0x2, 0, 1, 10, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 2
+ createvisualtask sub_80D6388, 2, 0, 1, 10, 1, 0
playsewithpan SE_W003, +63
waitforvisualfinish
- delay 0x8
- createvisualtask sub_815ADB0, 0x2, 0, 2, 1
- loopsewithpan SE_W013B, -64, 0x8, 0x4
+ delay 8
+ createvisualtask sub_815ADB0, 2, 0, 2, 1
+ loopsewithpan SE_W013B, -64, 8, 4
waitforvisualfinish
clearmonbg ANIM_ATTACKER
end
Move_MOONLIGHT:
- loadspritegfx 0x27D2
- loadspritegfx 0x27D3
- loadspritegfx 0x272F
- setalpha 0x1000
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 16, RGB_BLACK
- waitforvisualfinish
- createsprite gUnknown_08592EBC, 0x2, 120, 56
- createvisualtask sub_80A7A74, 0x3, 0, 16, 16, 0, 1
+ loadspritegfx ANIM_TAG_MOON
+ loadspritegfx ANIM_TAG_GREEN_SPARKLE
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ setalpha 0, 16
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 16, RGB_BLACK
+ waitforvisualfinish
+ createsprite gUnknown_08592EBC, 2, 120, 56
+ createvisualtask sub_80A7A74, 3, 0, 16, 16, 0, 1
playsewithpan SE_W236, 0
- delay 0x1E
- createsprite gUnknown_08592EEC, 0x28, -12, 0
- delay 0x1E
- createsprite gUnknown_08592EEC, 0x28, -24, 0
- delay 0x1E
- createsprite gUnknown_08592EEC, 0x28, 21, 0
- delay 0x1E
- createsprite gUnknown_08592EEC, 0x28, 0, 0
- delay 0x1E
- createsprite gUnknown_08592EEC, 0x28, 10, 0
- delay 0x14
- createvisualtask sub_81025C0, 0x2
+ delay 30
+ createsprite gBattleAnimSpriteTemplate_8592EEC, 40, -12, 0
+ delay 30
+ createsprite gBattleAnimSpriteTemplate_8592EEC, 40, -24, 0
+ delay 30
+ createsprite gBattleAnimSpriteTemplate_8592EEC, 40, 21, 0
+ delay 30
+ createsprite gBattleAnimSpriteTemplate_8592EEC, 40, 0, 0
+ delay 30
+ createsprite gBattleAnimSpriteTemplate_8592EEC, 40, 10, 0
+ delay 20
+ createvisualtask sub_81025C0, 2
waitforvisualfinish
- call AnimScript_82D79DF
+ call HealingEffect
waitforvisualfinish
end
Move_EXTREME_SPEED:
- loadspritegfx 0x27DF
- loadspritegfx 0x2797
- createvisualtask sub_8117754, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82CDAF5
+ loadspritegfx ANIM_TAG_207
+ loadspritegfx ANIM_TAG_135
+ createvisualtask AnimTask_IsAttackerOpponentSide, 2
+ jumprettrue ExtremeSpeedAgainstPlayer
fadetobg BG_HIGHSPEED_OPPONENT
-
-AnimScript_82CDA55:
+ExtremeSpeedContinue:
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 0, 1, -1
+ createvisualtask sub_8117660, 5, -2304, 0, 1, -1
waitbgfadein
- createvisualtask sub_810577C, 0x2
- loopsewithpan SE_W013B, -64, 0x8, 0x3
+ createvisualtask sub_810577C, 2
+ loopsewithpan SE_W013B, -64, 8, 3
waitforvisualfinish
- delay 0x1
- createvisualtask sub_8117F60, 0x2
+ delay 1
+ createvisualtask sub_8117F60, 2
monbg ANIM_TARGET
- setalpha 0x80C
- delay 0x12
- createvisualtask sub_8105810, 0x2
- delay 0x2
+ setalpha 12, 8
+ delay 18
+ createvisualtask sub_8105810, 2
+ delay 2
playsewithpan SE_W004, +63
- createsprite gUnknown_085973B8, 0x82, 1, 0, -12, 3
- delay 0xA
+ createsprite gBattleAnimSpriteTemplate_85973B8, 130, 1, 0, -12, 3
+ delay 10
playsewithpan SE_W004, +63
- createsprite gUnknown_085973B8, 0x82, 1, 0, 12, 3
- delay 0xA
+ createsprite gBattleAnimSpriteTemplate_85973B8, 130, 1, 0, 12, 3
+ delay 10
playsewithpan SE_W233B, +63
- createsprite gUnknown_085973B8, 0x82, 1, 0, 0, 3
+ createsprite gBattleAnimSpriteTemplate_85973B8, 130, 1, 0, 0, 3
waitforvisualfinish
- createvisualtask sub_8105AAC, 0x2
- delay 0xA
- createvisualtask sub_810599C, 0x2
- loopsewithpan SE_W104, -64, 0x8, 0x4
+ createvisualtask sub_8105AAC, 2
+ delay 10
+ createvisualtask sub_810599C, 2
+ loopsewithpan SE_W104, -64, 8, 4
waitforvisualfinish
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
clearmonbg ANIM_TARGET
blendoff
- delay 0x1
- setarg 0x7, 0x1000
- delay 0x1
+ delay 1
+ setarg 7, 0x1000
+ delay 1
end
-
-AnimScript_82CDAF5:
+ExtremeSpeedAgainstPlayer:
fadetobg BG_HIGHSPEED_PLAYER
- goto AnimScript_82CDA55
+ goto ExtremeSpeedContinue
Move_UPROAR:
- loadspritegfx 0x27F1
- loadspritegfx 0x27DB
+ loadspritegfx ANIM_TAG_225
+ loadspritegfx ANIM_TAG_203
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8106D90, 0x2, 0
- createsprite gUnknown_08593898, 0x3, 0, 0, 0, 0, 31, 8
+ createvisualtask sub_8106D90, 2, 0
+ createsprite gBattleAnimSpriteTemplate_8593898, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, -64
- createsprite gUnknown_08593BB8, 0x2, 0, 29, -12, 0
- createsprite gUnknown_08593BB8, 0x2, 0, -12, -29, 1
- delay 0x10
- createvisualtask sub_8106D90, 0x2, 0
- createsprite gUnknown_08593898, 0x3, 0, 0, 0, 0, 31, 8
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, 29, -12, 0
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, -12, -29, 1
+ delay 16
+ createvisualtask sub_8106D90, 2, 0
+ createsprite gBattleAnimSpriteTemplate_8593898, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, -64
- createsprite gUnknown_08593BB8, 0x2, 0, 12, -29, 1
- createsprite gUnknown_08593BB8, 0x2, 0, -29, -12, 0
- delay 0x10
- createvisualtask sub_8106D90, 0x2, 0
- createsprite gUnknown_08593898, 0x3, 0, 0, 0, 0, 31, 8
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, 12, -29, 1
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, -29, -12, 0
+ delay 16
+ createvisualtask sub_8106D90, 2, 0
+ createsprite gBattleAnimSpriteTemplate_8593898, 3, 0, 0, 0, 0, 31, 8
playsewithpan SE_W253, -64
- createsprite gUnknown_08593BB8, 0x2, 0, 24, -24, 1
- createsprite gUnknown_08593BB8, 0x2, 0, -24, -24, 0
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, 24, -24, 1
+ createsprite gBattleAnimSpriteTemplate_8593BB8, 2, 0, -24, -24, 0
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_HEAT_WAVE:
- loadspritegfx 0x2815
- createvisualtask sub_8116848, 0x5, 10261, 0, 6, 6, RGB_RED
- createvisualtask sub_8110BCC, 0x5, 1
- createvisualtask sub_810A060, 0x6, 6, 31
- panse_1B SE_W257, -64, +63, +2, 0x0
- delay 0x4
- createvisualtask sub_8109DBC, 0x5
- delay 0xC
- createsprite gUnknown_08596BA0, 0x28, 10, 2304, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 90, 2048, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 50, 2560, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 20, 2304, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 70, 1984, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 0, 2816, 96, 1
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 60, 2560, 96, 1
+ loadspritegfx ANIM_TAG_261
+ createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_261, 0, 6, 6, RGB_RED
+ createvisualtask AnimTask_LoadSandstormBackground, 5, TRUE
+ createvisualtask AnimTask_BlendBackground, 6, 6, RGB_RED
+ panse_1B SE_W257, -64, +63, +2, 0
+ delay 4
+ createvisualtask sub_8109DBC, 5
+ delay 12
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 10, 2304, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 90, 2048, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 50, 2560, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 20, 2304, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 70, 1984, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 0, 2816, 96, 1
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 60, 2560, 96, 1
end
Move_HAIL:
- loadspritegfx 0x2817
- loadspritegfx 0x279D
- createvisualtask sub_8116620, 0xA, 1, 3, 0, 6, 0
+ loadspritegfx ANIM_TAG_263
+ loadspritegfx ANIM_TAG_141
+ createvisualtask sub_8116620, 10, 1, 3, 0, 6, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_810C918, 0x5
- loopsewithpan SE_W258, 0, 0x8, 0xA
+ createvisualtask sub_810C918, 5
+ loopsewithpan SE_W258, 0, 8, 10
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1, 3, 6, 0, 0
+ createvisualtask sub_8116620, 10, 1, 3, 6, 0, RGB_BLACK
end
Move_TORMENT:
- loadspritegfx 0x2767
- loadspritegfx 0x27E1
- createvisualtask sub_815AFF0, 0x2
+ loadspritegfx ANIM_TAG_ANGER
+ loadspritegfx ANIM_TAG_209
+ createvisualtask sub_815AFF0, 2
waitforvisualfinish
- createvisualtask sub_80A7B98, 0x2, 1, RGB_RED, 10, 1, 1
- createsprite gUnknown_0859368C, 0x82, 1, -20, -28
+ createvisualtask AnimTask_BlendMonInAndOut, 2, ANIM_TARGET, RGB_RED, 10, 1, 1
+ createsprite gUnknown_0859368C, 130, 1, -20, -28
playsewithpan SE_W207B, +63
- delay 0x14
- createsprite gUnknown_0859368C, 0x82, 1, 20, -28
+ delay 20
+ createsprite gUnknown_0859368C, 130, 1, 20, -28
playsewithpan SE_W207B, +63
end
Move_MEMENTO:
- setalpha 0x1000
- delay 0x1
- createvisualtask sub_81143C0, 0x2
- delay 0x1
- createvisualtask sub_8113BAC, 0x5
+ setalpha 0, 16
+ delay 1
+ createvisualtask sub_81143C0, 2
+ delay 1
+ createvisualtask sub_8113BAC, 5
playsewithpan SE_W060, -64
- delay 0x30
+ delay 48
playsewithpan SE_W060B, -64
waitforvisualfinish
- createvisualtask sub_8114470, 0x2
- delay 0xC
- setalpha 0x1000
- delay 0x1
+ createvisualtask sub_8114470, 2
+ delay 12
+ setalpha 0, 16
+ delay 1
monbg_22 ANIM_TARGET
- createvisualtask sub_8113E78, 0x5
+ createvisualtask sub_8113E78, 5
playsewithpan SE_W060, +63
waitforvisualfinish
clearmonbg_23 ANIM_TARGET
- delay 0x1
+ delay 1
blendoff
- delay 0x1
+ delay 1
end
Move_FACADE:
- loadspritegfx 0x2803
- createvisualtask sub_815DCA4, 0x2, 0, 3
- createvisualtask sub_815DF0C, 0x2, 0, 72
- loopsewithpan SE_W207, -64, 0x18, 0x3
+ loadspritegfx ANIM_TAG_243
+ createvisualtask sub_815DCA4, 2, 0, 3
+ createvisualtask sub_815DF0C, 2, 0, 72
+ loopsewithpan SE_W207, -64, 24, 3
end
Move_SMELLING_SALT:
- loadspritegfx 0x2807
- loadspritegfx 0x280F
- createsprite gUnknown_085CE864, 0x82, 1, 0, 2
- createsprite gUnknown_085CE864, 0x82, 1, 1, 2
- delay 0x20
- createvisualtask sub_815E840, 0x3, 1, 2
- loopsewithpan SE_W003, +63, 0xC, 0x2
+ loadspritegfx ANIM_TAG_HAND
+ loadspritegfx ANIM_TAG_255
+ createsprite gUnknown_085CE864, 130, 1, 0, 2
+ createsprite gUnknown_085CE864, 130, 1, 1, 2
+ delay 32
+ createvisualtask sub_815E840, 3, 1, 2
+ loopsewithpan SE_W003, +63, 12, 2
waitforvisualfinish
- delay 0x4
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 6, 2
- createsprite gUnknown_085CE894, 0x82, 1, 8, 3
- loopsewithpan SE_W207B, +63, 0x10, 0x3
+ delay 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 6, 2
+ createsprite gUnknown_085CE894, 130, 1, 8, 3
+ loopsewithpan SE_W207B, +63, 16, 3
end
Move_FOLLOW_ME:
- loadspritegfx 0x2750
- createsprite gUnknown_085931D4, 0x2, 0
+ loadspritegfx ANIM_TAG_064
+ createsprite gUnknown_085931D4, 2, 0
playsewithpan SE_W039, -64
- delay 0x12
+ delay 18
playsewithpan SE_W213, -64
- delay 0x47
- loopsewithpan SE_W039, -64, 0x16, 0x3
+ delay 71
+ loopsewithpan SE_W039, -64, 22, 3
end
Move_CHARGE:
- loadspritegfx 0x27E3
- loadspritegfx 0x27E4
- loadspritegfx 0x27E5
+ loadspritegfx ANIM_TAG_211
+ loadspritegfx ANIM_TAG_212
+ loadspritegfx ANIM_TAG_213
monbg ANIM_ATTACKER
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 4, RGB_BLACK
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 4, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_810AAFC, 0x2, 0, 60, 2, 12
+ createvisualtask sub_810AAFC, 2, 0, 60, 2, 12
playsewithpan SE_W268, -64
- delay 0x1E
+ delay 30
playsewithpan SE_W268, -64
- delay 0x1E
+ delay 30
playsewithpan SE_W268, -64
- createsprite gUnknown_0859595C, 0x2, 0
- delay 0x19
+ createsprite gUnknown_0859595C, 2, 0
+ delay 25
playsewithpan SE_W268, -64
- delay 0x14
+ delay 20
playsewithpan SE_W268, -64
- delay 0xF
+ delay 15
playsewithpan SE_W268, -64
- delay 0xA
- delay 0x6
- loopsewithpan SE_W268, -64, 0x6, 0x5
+ delay 10
+ delay 6
+ loopsewithpan SE_W268, -64, 6, 5
waitforvisualfinish
- createsprite gUnknown_0859598C, 0x2, 0, 16, 16
- delay 0x2
- createsprite gUnknown_0859598C, 0x2, 0, -16, -16
+ createsprite gUnknown_0859598C, 2, 0, 16, 16
+ delay 2
+ createsprite gUnknown_0859598C, 2, 0, -16, -16
playsewithpan SE_W085B, -64
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 4, 4, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 4, 4, 0, RGB_BLACK
clearmonbg ANIM_ATTACKER
blendoff
end
Move_TAUNT:
- loadspritegfx 0x27E6
- loadspritegfx 0x27E1
- loadspritegfx 0x2767
- createsprite gUnknown_08593114, 0xB, 0, 45
+ loadspritegfx ANIM_TAG_214
+ loadspritegfx ANIM_TAG_209
+ loadspritegfx ANIM_TAG_ANGER
+ createsprite gUnknown_08593114, 11, 0, 45
playsewithpan SE_W118, -64
- delay 0x6
- createsprite gUnknown_0859324C, 0xC, 0
- delay 0x4
- loopsewithpan SE_W039, -64, 0x10, 0x2
+ delay 6
+ createsprite gUnknown_0859324C, 12, 0
+ delay 4
+ loopsewithpan SE_W039, -64, 16, 2
waitforvisualfinish
- delay 0x8
- createsprite gUnknown_0859368C, 0x82, 1, -20, -28
+ delay 8
+ createsprite gUnknown_0859368C, 130, 1, -20, -28
playsewithpan SE_W207B, +63
waitforvisualfinish
- delay 0xC
- createsprite gUnknown_0859368C, 0x82, 1, 20, -28
+ delay 12
+ createsprite gUnknown_0859368C, 130, 1, 20, -28
playsewithpan SE_W207B, +63
end
Move_HELPING_HAND:
- loadspritegfx 0x2807
- createvisualtask sub_815EC48, 0x5
- createsprite gUnknown_085CE8AC, 0x28, 0
- createsprite gUnknown_085CE8AC, 0x28, 1
- delay 0x13
+ loadspritegfx ANIM_TAG_HAND
+ createvisualtask sub_815EC48, 5
+ createsprite gUnknown_085CE8AC, 40, 0
+ createsprite gUnknown_085CE8AC, 40, 1
+ delay 19
playsewithpan SE_W227, 0
- createvisualtask sub_80D52D0, 0x2, 2, 2, 0, 5, 1
- delay 0xE
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 5, 1
+ delay 14
playsewithpan SE_W227, 0
- createvisualtask sub_80D52D0, 0x2, 2, 2, 0, 5, 1
- delay 0x14
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 5, 1
+ delay 20
playsewithpan SE_W227, 0
- createvisualtask sub_80D52D0, 0x2, 2, 3, 0, 10, 1
- createvisualtask sub_80A7B98, 0x2, 2, RGB_YELLOW, 12, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 3, 0, 10, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 2, ANIM_ATK_PARTNER, RGB_YELLOW, 12, 1, 1
end
Move_ASSIST:
- loadspritegfx 0x280C
- createsprite gUnknown_085CE804, 0x32, 112, -16, 140, 128, 36
- delay 0x2
- createsprite gUnknown_085CE804, 0x32, 208, 128, -16, 48, 36
+ loadspritegfx ANIM_TAG_252
+ createsprite gUnknown_085CE804, 50, 112, -16, 140, 128, 36
+ delay 2
+ createsprite gUnknown_085CE804, 50, 208, 128, -16, 48, 36
playsewithpan SE_W010, 0
- delay 0x2
- createsprite gUnknown_085CE804, 0x32, -16, 112, 256, -16, 36
+ delay 2
+ createsprite gUnknown_085CE804, 50, -16, 112, 256, -16, 36
playsewithpan SE_W010, 0
- delay 0x2
- createsprite gUnknown_085CE804, 0x32, 108, 128, 84, -16, 36
+ delay 2
+ createsprite gUnknown_085CE804, 50, 108, 128, 84, -16, 36
playsewithpan SE_W010, 0
- delay 0x2
- createsprite gUnknown_085CE804, 0x32, -16, 56, 256, 56, 36
+ delay 2
+ createsprite gUnknown_085CE804, 50, -16, 56, 256, 56, 36
playsewithpan SE_W010, 0
end
Move_SUPERPOWER:
- loadspritegfx 0x27E4
- loadspritegfx 0x2810
- loadspritegfx 0x2811
+ loadspritegfx ANIM_TAG_212
+ loadspritegfx ANIM_TAG_256
+ loadspritegfx ANIM_TAG_257
monbg ANIM_ATK_PARTNER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x80C
- createsprite gUnknown_08595FEC, 0x82, 0
+ setalpha 12, 8
+ createsprite gUnknown_08595FEC, 130, 0
playsewithpan SE_W025, -64
- delay 0x14
- createsprite gUnknown_085972D8, 0x2, 4, 1, 180, 1
- createvisualtask sub_8159244, 0x5, 234, 0
- delay 0x28
- createsprite gUnknown_08596004, 0x29, 200, 96, 1, 120
- delay 0x8
- createsprite gUnknown_08596004, 0x29, 20, 248, 4, 112
- delay 0x8
- createsprite gUnknown_08596004, 0x29, 130, 160, 2, 104
- delay 0x8
- createsprite gUnknown_08596004, 0x29, 160, 192, 0, 96
- delay 0x8
- createsprite gUnknown_08596004, 0x29, 60, 288, 3, 88
- delay 0x4A
- createsprite gUnknown_0859601C, 0x83, 0
+ delay 20
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, 4, 1, 180, 1
+ createvisualtask sub_8159244, 5, 234, 0
+ delay 40
+ createsprite gUnknown_08596004, 41, 200, 96, 1, 120
+ delay 8
+ createsprite gUnknown_08596004, 41, 20, 248, 4, 112
+ delay 8
+ createsprite gUnknown_08596004, 41, 130, 160, 2, 104
+ delay 8
+ createsprite gUnknown_08596004, 41, 160, 192, 0, 96
+ delay 8
+ createsprite gUnknown_08596004, 41, 60, 288, 3, 88
+ delay 74
+ createsprite gUnknown_0859601C, 131, 0
playsewithpan SE_W207, -64
- delay 0x10
- createvisualtask sub_80D52D0, 0x2, 1, 8, 0, 16, 1
+ delay 16
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 8, 0, 16, 1
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- delay 0x1
+ delay 1
end
Move_RECYCLE:
- loadspritegfx 0x2826
+ loadspritegfx ANIM_TAG_RECYCLE
monbg ANIM_ATTACKER
- setalpha 0x1000
- delay 0x1
- createsprite gUnknown_085CE9B0, 0x2
- loopsewithpan SE_W036, -64, 0x18, 0x3
+ setalpha 0, 16
+ delay 1
+ createsprite gUnknown_085CE9B0, 2
+ loopsewithpan SE_W036, -64, 24, 3
waitforvisualfinish
- createvisualtask sub_80A7B98, 0x5, 0, RGB_WHITE, 12, 2, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB_WHITE, 12, 2, 1
playsewithpan SE_W036, -64
waitforvisualfinish
blendoff
clearmonbg ANIM_ATTACKER
- delay 0x1
+ delay 1
end
Move_BRICK_BREAK:
- loadspritegfx 0x27B7
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- loadspritegfx 0x27E0
- choosetwoturnanim AnimScript_82CE0A7, AnimScript_82CE154
-
-AnimScript_82CE0A7:
+ loadspritegfx ANIM_TAG_167
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_208
+ choosetwoturnanim BrickBreakNormal, BrickBreakShatteredWall
+BrickBreakNormal:
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 3, 8
- delay 0x4
- delay 0x1
- createsprite gUnknown_08597358, 0x3, -18, -18, 1, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 8
+ delay 4
+ delay 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, -18, -18, 1, 1
playsewithpan SE_W233, +63
- delay 0x14
- createsprite gUnknown_0857FE28, 0x2, 3, 8
- delay 0x5
- createsprite gUnknown_08597358, 0x3, 18, 18, 1, 1
+ delay 20
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 8
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, 18, 18, 1, 1
playsewithpan SE_W233, +63
- delay 0x14
- createvisualtask sub_80D5C50, 0x2, 0, -24, 0, 24, 10, 24, 3
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 6, RGB_BLACK
- delay 0x25
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x4, 0, 0, 10, 1, 0
+ delay 20
+ createvisualtask AnimTask_WindUpLunge, 2, ANIM_ATTACKER, -24, 0, 24, 10, 24, 3
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 6, RGB_BLACK
+ delay 37
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 4, 0, 0, 10, 1, 0
playsewithpan SE_W233B, +63
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 2, 6, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 6, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_TARGET
end
-
-AnimScript_82CE154:
+BrickBreakShatteredWall:
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 3, 8
- delay 0x4
- createsprite gUnknown_08595F90, 0x3, 1, 0, 0, 90, 10
- delay 0x1
- createsprite gUnknown_08597358, 0x3, -18, -18, 1, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 8
+ delay 4
+ createsprite gUnknown_08595F90, 3, 1, 0, 0, 90, 10
+ delay 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, -18, -18, 1, 1
playsewithpan SE_W233, +63
- delay 0x14
- createsprite gUnknown_0857FE28, 0x2, 3, 8
- delay 0x5
- createsprite gUnknown_08597358, 0x3, 18, 18, 1, 1
+ delay 20
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 8
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 3, 18, 18, 1, 1
playsewithpan SE_W233, +63
- delay 0x14
- createvisualtask sub_80D5C50, 0x2, 0, -24, 0, 24, 10, 24, 3
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 6, RGB_BLACK
- delay 0x25
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x4, 0, 0, 10, 1, 0
+ delay 20
+ createvisualtask AnimTask_WindUpLunge, 2, ANIM_ATTACKER, -24, 0, 24, 10, 24, 3
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 6, RGB_BLACK
+ delay 37
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 4, 0, 0, 10, 1, 0
playsewithpan SE_W233B, +63
waitforvisualfinish
- createsprite gUnknown_08595FA8, 0x2, 1, 0, -8, -12
- createsprite gUnknown_08595FA8, 0x2, 1, 1, 8, -12
- createsprite gUnknown_08595FA8, 0x2, 1, 2, -8, 12
- createsprite gUnknown_08595FA8, 0x2, 1, 3, 8, 12
+ createsprite gUnknown_08595FA8, 2, 1, 0, -8, -12
+ createsprite gUnknown_08595FA8, 2, 1, 1, 8, -12
+ createsprite gUnknown_08595FA8, 2, 1, 2, -8, 12
+ createsprite gUnknown_08595FA8, 2, 1, 3, 8, 12
playsewithpan SE_W280, +63
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 2, 6, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 6, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_TARGET
end
Move_YAWN:
- loadspritegfx 0x2802
- createvisualtask sub_815D64C, 0x2, 0
+ loadspritegfx ANIM_TAG_242
+ createvisualtask sub_815D64C, 2, 0
playsewithpan SE_W281, -64
waitforvisualfinish
- createsprite gUnknown_085CE68C, 0x85, 2
+ createsprite gUnknown_085CE68C, 133, 2
playsewithpan SE_W255, -64
- delay 0x4
- createsprite gUnknown_085CE68C, 0x85, 1
- delay 0x4
- createsprite gUnknown_085CE68C, 0x85, 0
+ delay 4
+ createsprite gUnknown_085CE68C, 133, 1
+ delay 4
+ createsprite gUnknown_085CE68C, 133, 0
waitforvisualfinish
- createvisualtask sub_815D64C, 0x2, 1
+ createvisualtask sub_815D64C, 2, 1
playsewithpan SE_W281, +63
end
Move_ENDEAVOR:
- loadspritegfx 0x2803
- loadspritegfx 0x2797
- createvisualtask sub_815DCA4, 0x2, 0, 2
- loopsewithpan SE_W039, -64, 0x18, 0x2
- createvisualtask sub_80A7B98, 0x5, 0, RGB(31, 21, 0), 12, 1, 2
- delay 0x6
- createvisualtask sub_80D6388, 0x5, 0, 1, 8, 1, 0
- createsprite gUnknown_08597358, 0x82, 12, -12, 1, 2
+ loadspritegfx ANIM_TAG_243
+ loadspritegfx ANIM_TAG_135
+ createvisualtask sub_815DCA4, 2, 0, 2
+ loopsewithpan SE_W039, -64, 24, 2
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB(31, 21, 0), 12, 1, 2
+ delay 6
+ createvisualtask sub_80D6388, 5, 0, 1, 8, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, 12, -12, 1, 2
playsewithpan SE_W003, +63
- delay 0x18
- createvisualtask sub_80D6388, 0x5, 0, 1, 8, 1, 0
- createsprite gUnknown_08597358, 0x82, -12, 12, 1, 2
+ delay 24
+ createvisualtask sub_80D6388, 5, 0, 1, 8, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, -12, 12, 1, 2
playsewithpan SE_W004, +63
end
Move_ERUPTION:
- loadspritegfx 0x27D9
- createsprite gUnknown_08597274, 0x2, 31, 2, 0, 4, RGB_RED
- waitforvisualfinish
- createvisualtask sub_8109460, 0x2
- waitplaysewithpan SE_W153, -64, 0x3C
- waitforvisualfinish
- createvisualtask sub_8109460, 0x2
- waitplaysewithpan SE_W153, -64, 0x3C
- waitforvisualfinish
- delay 0x1E
- createsprite gUnknown_085955E8, 0x28, 200, -32, 0, 100, 0
- createsprite gUnknown_085955E8, 0x28, 30, -32, 16, 90, 1
- createsprite gUnknown_085955E8, 0x28, 150, -32, 32, 60, 2
- createsprite gUnknown_085955E8, 0x28, 90, -32, 48, 80, 3
- createsprite gUnknown_085955E8, 0x28, 110, -32, 64, 50, 0
- createsprite gUnknown_085955E8, 0x28, 60, -32, 80, 70, 1
- delay 0x16
- createvisualtask sub_81152DC, 0x5, 5, 8, 60
- createvisualtask sub_81152DC, 0x5, 4, 8, 60
- loopsewithpan SE_W088, +63, 0x10, 0xC
- delay 0x50
- createsprite gUnknown_08597274, 0x28, 31, 4, 4, 0, RGB_RED
+ loadspritegfx ANIM_TAG_201
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 2, 0, 4, RGB_RED
+ waitforvisualfinish
+ createvisualtask sub_8109460, 2
+ waitplaysewithpan SE_W153, -64, 60
+ waitforvisualfinish
+ createvisualtask sub_8109460, 2
+ waitplaysewithpan SE_W153, -64, 60
+ waitforvisualfinish
+ delay 30
+ createsprite gUnknown_085955E8, 40, 200, -32, 0, 100, 0
+ createsprite gUnknown_085955E8, 40, 30, -32, 16, 90, 1
+ createsprite gUnknown_085955E8, 40, 150, -32, 32, 60, 2
+ createsprite gUnknown_085955E8, 40, 90, -32, 48, 80, 3
+ createsprite gUnknown_085955E8, 40, 110, -32, 64, 50, 0
+ createsprite gUnknown_085955E8, 40, 60, -32, 80, 70, 1
+ delay 22
+ createvisualtask sub_81152DC, 5, 5, 8, 60
+ createvisualtask sub_81152DC, 5, 4, 8, 60
+ loopsewithpan SE_W088, +63, 16, 12
+ delay 80
+ createsprite gSimplePaletteBlendSpriteTemplate, 40, 31, 4, 4, 0, RGB_RED
end
Move_SKILL_SWAP:
- loadspritegfx 0x280B
- call AnimScript_82D7CD1
- createvisualtask sub_810FBF0, 0x3, 1
- createvisualtask sub_80A7B98, 0x5, 1, RGB_WHITE, 12, 3, 1
- loopsewithpan SE_W179, -64, 0x18, 0x3
- delay 0x10
- createvisualtask sub_810FBF0, 0x3, 0
- createvisualtask sub_80A7B98, 0x5, 0, RGB_WHITE, 12, 3, 1
+ loadspritegfx ANIM_TAG_251
+ call SetPsychicBackground
+ createvisualtask sub_810FBF0, 3, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_TARGET, RGB_WHITE, 12, 3, 1
+ loopsewithpan SE_W179, -64, 24, 3
+ delay 16
+ createvisualtask sub_810FBF0, 3, 0
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB_WHITE, 12, 3, 1
waitforvisualfinish
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_IMPRISON:
- loadspritegfx 0x2809
- loadspritegfx 0x280A
- call AnimScript_82D7CD1
+ loadspritegfx ANIM_TAG_249
+ loadspritegfx ANIM_TAG_X_SIGN
+ call SetPsychicBackground
monbg ANIM_DEF_PARTNER
- createvisualtask sub_810F940, 0x5
- delay 0x8
- loopsewithpan SE_W030, -64, 0x8, 0x5
+ createvisualtask sub_810F940, 5
+ delay 8
+ loopsewithpan SE_W030, -64, 8, 5
waitforvisualfinish
- delay 0x4
- createsprite gUnknown_085967AC, 0x5, 0, 40
- createvisualtask sub_81152DC, 0x5, 4, 1, 10
+ delay 4
+ createsprite gUnknown_085967AC, 5, 0, 40
+ createvisualtask sub_81152DC, 5, 4, 1, 10
playsewithpan SE_W063, -64
clearmonbg ANIM_DEF_PARTNER
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_GRUDGE:
- loadspritegfx 0x280D
+ loadspritegfx ANIM_TAG_253
monbg ANIM_ATTACKER
monbgprio_29
fadetobg BG_GHOST
playsewithpan SE_W060, -64
waitbgfadein
- createvisualtask sub_8112C6C, 0x3
- loopsewithpan SE_W052, -64, 0x10, 0x4
- delay 0xA
- delay 0x50
+ createvisualtask sub_8112C6C, 3
+ loopsewithpan SE_W052, -64, 16, 4
+ delay 10
+ delay 80
playsewithpan SE_W171, +63
waitforvisualfinish
restorebg
@@ -3933,256 +3870,256 @@ Move_GRUDGE:
Move_CAMOUFLAGE:
monbg ANIM_ATK_PARTNER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x10
- createvisualtask sub_811675C, 0x5, 2, 3, 0, 14
- delay 0x10
- createvisualtask sub_81136E8, 0x2, 4
+ setalpha 16, 0
+ createvisualtask sub_811675C, 5, 2, 3, 0, 14
+ delay 16
+ createvisualtask sub_81136E8, 2, 4
playsewithpan SE_W185, -64
waitforvisualfinish
- delay 0x8
- createvisualtask sub_811675C, 0x5, 2, 0, 0, 0
+ delay 8
+ createvisualtask sub_811675C, 5, 2, 0, 0, 0
waitforvisualfinish
- createvisualtask sub_81137E4, 0x2, 1
+ createvisualtask sub_81137E4, 2, 1
waitforvisualfinish
blendoff
clearmonbg ANIM_ATK_PARTNER
end
Move_TAIL_GLOW:
- loadspritegfx 0x27E4
+ loadspritegfx ANIM_TAG_212
monbg ANIM_ATTACKER
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 4, RGB_BLACK
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 4, RGB_BLACK
waitforvisualfinish
- createsprite gUnknown_08596AC8, 0x42, 0
- delay 0x12
- loopsewithpan SE_W234, -64, 0x10, 0x6
+ createsprite gUnknown_08596AC8, 66, 0
+ delay 18
+ loopsewithpan SE_W234, -64, 16, 6
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 4, 4, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 4, 4, 0, RGB_BLACK
clearmonbg ANIM_ATTACKER
blendoff
- delay 0x1
+ delay 1
end
Move_LUSTER_PURGE:
- loadspritegfx 0x281B
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_267
+ loadspritegfx ANIM_TAG_135
fadetobg BG_PSYCHIC
waitbgfadeout
- createvisualtask sub_815A5C8, 0x5
+ createvisualtask sub_815A5C8, 5
waitbgfadein
monbg ANIM_ATTACKER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W076, -64
- createsprite gUnknown_08596898, 0x29, 0, 0, 0, 0
- delay 0x14
- createvisualtask sub_8116664, 0x5, 5, 2, 0, 16, -1
- createvisualtask sub_8116848, 0x5, 10267, 2, 0, 16, -1
- waitforvisualfinish
- createvisualtask sub_8116848, 0x5, 10135, 0, 12, 12, 23552
- waitforvisualfinish
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- delay 0x3
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- delay 0x3
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- delay 0x3
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- delay 0x3
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- delay 0x3
- createsprite gUnknown_085973A0, 0x83, 1, 2
- createvisualtask sub_8159210, 0x5, 215, 63
- waitforvisualfinish
- createvisualtask sub_8116664, 0x5, 5, 2, 16, 0, -1
- createvisualtask sub_81152DC, 0x5, 1, 5, 14
+ createsprite gUnknown_08596898, 41, 0, 0, 0, 0
+ delay 20
+ createvisualtask sub_8116664, 5, 5, 2, 0, 16, RGB_WHITEALPHA
+ createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_267, 2, 0, 16, RGB_WHITEALPHA
+ waitforvisualfinish
+ createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_135, 0, 12, 12, RGB(0, 0, 23)
+ waitforvisualfinish
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ delay 3
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ delay 3
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ delay 3
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ delay 3
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ delay 3
+ createsprite gUnknown_085973A0, 131, 1, 2
+ createvisualtask sub_8159210, 5, 215, 63
+ waitforvisualfinish
+ createvisualtask sub_8116664, 5, 5, 2, 16, 0, RGB_WHITEALPHA
+ createvisualtask sub_81152DC, 5, 1, 5, 14
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_MIST_BALL:
- loadspritegfx 0x27AB
- loadspritegfx 0x281E
- delay 0x0
+ loadspritegfx ANIM_TAG_155
+ loadspritegfx ANIM_TAG_270
+ delay 0
playsewithpan SE_W081, -64
- createsprite gUnknown_08595C70, 0x80, 0, 0, 0, 0, 30, 0
+ createsprite gUnknown_08595C70, 128, 0, 0, 0, 0, 30, 0
waitforvisualfinish
playsewithpan SE_W028, +63
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 10, 0
- createsprite gUnknown_0859728C, 0x0, 1, 1, 1, 32279, 16, 0x7FFF, 16
- delay 0x0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 10, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 0, 1, 1, 1, RGB(23, 16, 31), 16, 0x7FFF, 16
+ delay 0
playsewithpan SE_W114, 0
- createvisualtask sub_810C324, 0x5
- createvisualtask sub_8116620, 0xA, 4, 3, 0, 16, 0x7FFF
- delay 0x8
- createvisualtask sub_80D51AC, 0x2, 1, 4, 0, 70, 0
- delay 0x46
- createvisualtask sub_8116620, 0xA, 4, 2, 16, 0, 0x7FFF
+ createvisualtask sub_810C324, 5
+ createvisualtask sub_8116620, 10, 4, 3, 0, 16, RGB_WHITE
+ delay 8
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 70, 0
+ delay 70
+ createvisualtask sub_8116620, 10, 4, 2, 16, 0, RGB_WHITE
end
Move_FEATHER_DANCE:
- loadspritegfx 0x281E
+ loadspritegfx ANIM_TAG_270
monbg ANIM_DEF_PARTNER
monbgprio_29
playsewithpan SE_W080, +63
- delay 0x0
- createsprite gUnknown_08596388, 0x80, 0, -16, 64, 2, 104, 11304, 32, 1
- delay 0x6
- createsprite gUnknown_08596388, 0x80, 0, -16, 32, 2, 104, 11304, 32, 1
- createsprite gUnknown_08596388, 0x80, 0, -16, 0, 2, 104, 11304, 32, 1
- delay 0x6
- createsprite gUnknown_08596388, 0x80, 0, -16, 224, 2, 104, 11304, 32, 1
- createsprite gUnknown_08596388, 0x80, 0, -16, 128, 2, 104, 11304, 32, 1
- delay 0x6
- createsprite gUnknown_08596388, 0x80, 0, -16, 192, 2, 104, 11304, 32, 1
- createsprite gUnknown_08596388, 0x80, 0, -16, 160, 2, 104, 11304, 32, 1
- delay 0x6
- createsprite gUnknown_08596388, 0x80, 0, -16, 96, 2, 104, 11304, 32, 1
+ delay 0
+ createsprite gUnknown_08596388, 128, 0, -16, 64, 2, 104, 11304, 32, 1
+ delay 6
+ createsprite gUnknown_08596388, 128, 0, -16, 32, 2, 104, 11304, 32, 1
+ createsprite gUnknown_08596388, 128, 0, -16, 0, 2, 104, 11304, 32, 1
+ delay 6
+ createsprite gUnknown_08596388, 128, 0, -16, 224, 2, 104, 11304, 32, 1
+ createsprite gUnknown_08596388, 128, 0, -16, 128, 2, 104, 11304, 32, 1
+ delay 6
+ createsprite gUnknown_08596388, 128, 0, -16, 192, 2, 104, 11304, 32, 1
+ createsprite gUnknown_08596388, 128, 0, -16, 160, 2, 104, 11304, 32, 1
+ delay 6
+ createsprite gUnknown_08596388, 128, 0, -16, 96, 2, 104, 11304, 32, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_TEETER_DANCE:
- loadspritegfx 0x2758
- loadspritegfx 0x2759
- createvisualtask sub_8160164, 0x5
- createsprite gUnknown_08593050, 0x2, 0, 16, -2
+ loadspritegfx ANIM_TAG_MUSIC_NOTES2
+ loadspritegfx ANIM_TAG_DUCK
+ createvisualtask sub_8160164, 5
+ createsprite gUnknown_08593050, 2, 0, 16, -2
playsewithpan SE_W298, -64
- delay 0x18
- createsprite gUnknown_08593050, 0x2, 0, 0, -2
+ delay 24
+ createsprite gUnknown_08593050, 2, 0, 0, -2
playsewithpan SE_W298, -64
- delay 0x18
- createsprite gUnknown_08593050, 0x2, 0, -16, -2
+ delay 24
+ createsprite gUnknown_08593050, 2, 0, -16, -2
playsewithpan SE_W298, -64
- delay 0x18
- createsprite gUnknown_08593050, 0x2, 1, -8, -2
+ delay 24
+ createsprite gUnknown_08593050, 2, 1, -8, -2
playsewithpan SE_W298, -64
- delay 0x18
- createsprite gUnknown_08593050, 0x2, 2, 8, -2
+ delay 24
+ createsprite gUnknown_08593050, 2, 2, 8, -2
playsewithpan SE_W298, -64
end
Move_MUD_SPORT:
- loadspritegfx 0x275A
- createvisualtask sub_8104938, 0x2, 0, 6
- delay 0x18
- createsprite gUnknown_085971E4, 0x82, 0, -4, -16
- createsprite gUnknown_085971E4, 0x82, 0, 4, -12
+ loadspritegfx ANIM_TAG_074
+ createvisualtask sub_8104938, 2, 0, 6
+ delay 24
+ createsprite gUnknown_085971E4, 130, 0, -4, -16
+ createsprite gUnknown_085971E4, 130, 0, 4, -12
playsewithpan SE_W091, -64
- delay 0x20
- createsprite gUnknown_085971E4, 0x82, 0, -3, -12
- createsprite gUnknown_085971E4, 0x82, 0, 5, -14
+ delay 32
+ createsprite gUnknown_085971E4, 130, 0, -3, -12
+ createsprite gUnknown_085971E4, 130, 0, 5, -14
playsewithpan SE_W091, -64
- delay 0x20
- createsprite gUnknown_085971E4, 0x82, 0, -5, -18
- createsprite gUnknown_085971E4, 0x82, 0, 3, -14
+ delay 32
+ createsprite gUnknown_085971E4, 130, 0, -5, -18
+ createsprite gUnknown_085971E4, 130, 0, 3, -14
playsewithpan SE_W091, -64
- delay 0x10
- createsprite gUnknown_085971E4, 0x82, 1, 220, 60
- waitplaysewithpan SE_W145B, 0, 0xF
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 60, 100
- waitplaysewithpan SE_W145B, 0, 0x19
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 140, 55
- waitplaysewithpan SE_W145B, 0, 0xE
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 180, 50
- waitplaysewithpan SE_W145B, 0, 0xA
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 20, 90
- waitplaysewithpan SE_W145B, 0, 0x16
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 90, 90
- waitplaysewithpan SE_W145B, 0, 0x16
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 160, 60
- waitplaysewithpan SE_W145B, 0, 0xF
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 30, 90
- waitplaysewithpan SE_W145B, 0, 0x16
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 120, 60
- waitplaysewithpan SE_W145B, 0, 0xF
- delay 0x2
- createsprite gUnknown_085971E4, 0x82, 1, 200, 40
- waitplaysewithpan SE_W145B, 0, 0xA
+ delay 16
+ createsprite gUnknown_085971E4, 130, 1, 220, 60
+ waitplaysewithpan SE_W145B, 0, 15
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 60, 100
+ waitplaysewithpan SE_W145B, 0, 25
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 140, 55
+ waitplaysewithpan SE_W145B, 0, 14
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 180, 50
+ waitplaysewithpan SE_W145B, 0, 10
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 20, 90
+ waitplaysewithpan SE_W145B, 0, 22
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 90, 90
+ waitplaysewithpan SE_W145B, 0, 22
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 160, 60
+ waitplaysewithpan SE_W145B, 0, 15
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 30, 90
+ waitplaysewithpan SE_W145B, 0, 22
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 120, 60
+ waitplaysewithpan SE_W145B, 0, 15
+ delay 2
+ createsprite gUnknown_085971E4, 130, 1, 200, 40
+ waitplaysewithpan SE_W145B, 0, 10
end
Move_NEEDLE_ARM:
- loadspritegfx 0x281A
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- loopsewithpan SE_W030, +63, 0x2, 0x10
- createsprite gUnknown_08592888, 0x82, 1, 0, 0, -32, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 22, -22, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 30, 0, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 20, 20, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 0, 28, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, -19, 19, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, -27, 0, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, -18, -18, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 0, -25, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 17, -17, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 23, 0, 16
- delay 0x2
- createsprite gUnknown_08592888, 0x82, 1, 0, 16, 16, 16
- waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 18, 1
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x84, 0, 0, 8, 1, 0
+ loadspritegfx ANIM_TAG_266
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ loopsewithpan SE_W030, +63, 2, 16
+ createsprite gUnknown_08592888, 130, 1, 0, 0, -32, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 22, -22, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 30, 0, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 20, 20, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 0, 28, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, -19, 19, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, -27, 0, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, -18, -18, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 0, -25, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 17, -17, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 23, 0, 16
+ delay 2
+ createsprite gUnknown_08592888, 130, 1, 0, 16, 16, 16
+ waitforvisualfinish
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 18, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 8, 1, 0
playsewithpan SE_W233B, +63
- createsprite gUnknown_08592888, 0x82, 1, 1, 0, -24, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, 17, -17, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, 24, 0, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, 17, 17, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, 0, 24, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, -17, 17, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, -24, 0, 10
- createsprite gUnknown_08592888, 0x82, 1, 1, -17, -17, 10
+ createsprite gUnknown_08592888, 130, 1, 1, 0, -24, 10
+ createsprite gUnknown_08592888, 130, 1, 1, 17, -17, 10
+ createsprite gUnknown_08592888, 130, 1, 1, 24, 0, 10
+ createsprite gUnknown_08592888, 130, 1, 1, 17, 17, 10
+ createsprite gUnknown_08592888, 130, 1, 1, 0, 24, 10
+ createsprite gUnknown_08592888, 130, 1, 1, -17, 17, 10
+ createsprite gUnknown_08592888, 130, 1, 1, -24, 0, 10
+ createsprite gUnknown_08592888, 130, 1, 1, -17, -17, 10
end
Move_SLACK_OFF:
- loadspritegfx 0x272F
- createvisualtask sub_8160544, 0x2, 0
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ createvisualtask sub_8160544, 2, 0
playsewithpan SE_W281, -64
waitforvisualfinish
- call AnimScript_82D79DF
+ call HealingEffect
waitforvisualfinish
end
Move_CRUSH_CLAW:
- loadspritegfx 0x27B7
- loadspritegfx 0x2737
- loadspritegfx 0x27E0
+ loadspritegfx ANIM_TAG_167
+ loadspritegfx ANIM_TAG_CLAW_SLASH
+ loadspritegfx ANIM_TAG_208
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x4
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 18, 1
- createsprite gUnknown_08597138, 0x82, -10, -10, 0
- createsprite gUnknown_08597138, 0x82, -10, 10, 0
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 18, 1
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, -10, 0
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, 10, 0
playsewithpan SE_W013, +63
- delay 0xC
- createsprite gUnknown_08597138, 0x82, 10, -10, 1
- createsprite gUnknown_08597138, 0x82, 10, 10, 1
+ delay 12
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, -10, 1
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, 10, 1
playsewithpan SE_W013, +63
waitforvisualfinish
blendoff
@@ -4191,189 +4128,189 @@ Move_CRUSH_CLAW:
Move_AROMATHERAPY:
playsewithpan SE_W080, 0
- loadspritegfx 0x27AF
- loadspritegfx 0x27DB
- loadspritegfx 0x2741
- createsprite gUnknown_08597274, 0x0, 1, 0, 0, 7, RGB(13, 31, 12)
- delay 0x1
+ loadspritegfx ANIM_TAG_159
+ loadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_SPARKLE
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 1, 0, 0, 7, RGB(13, 31, 12)
+ delay 1
monbg ANIM_ATTACKER
- delay 0x1
- createsprite gUnknown_085927AC, 0x0, 24, 16, 0, 2, 2, 0, 0
- createsprite gUnknown_085927AC, 0x42, 64, 24, 0, 3, 1, 1, 0
- createsprite gUnknown_085927C4, 0x0, 16, 24, 0, 2, 1, 0, 0
- delay 0x14
- createsprite gUnknown_085927AC, 0x42, 48, 12, 0, 4, 3, 1, 0
- createsprite gUnknown_085927AC, 0x0, 100, 16, 0, 3, 2, 0, 0
- createsprite gUnknown_085927AC, 0x0, 74, 24, 180, 3, 2, 0, 0
- delay 0xA
- createsprite gUnknown_085927AC, 0x42, 80, 30, 0, 4, 1, 1, 0
- createsprite gUnknown_085927AC, 0x0, 128, 12, 0, 3, 3, 0, 0
- createsprite gUnknown_085927C4, 0x0, 90, 16, 0, 2, 1, 0, 0
+ delay 1
+ createsprite gUnknown_085927AC, 0, 24, 16, 0, 2, 2, 0, 0
+ createsprite gUnknown_085927AC, 66, 64, 24, 0, 3, 1, 1, 0
+ createsprite gUnknown_085927C4, 0, 16, 24, 0, 2, 1, 0, 0
+ delay 20
+ createsprite gUnknown_085927AC, 66, 48, 12, 0, 4, 3, 1, 0
+ createsprite gUnknown_085927AC, 0, 100, 16, 0, 3, 2, 0, 0
+ createsprite gUnknown_085927AC, 0, 74, 24, 180, 3, 2, 0, 0
+ delay 10
+ createsprite gUnknown_085927AC, 66, 80, 30, 0, 4, 1, 1, 0
+ createsprite gUnknown_085927AC, 0, 128, 12, 0, 3, 3, 0, 0
+ createsprite gUnknown_085927C4, 0, 90, 16, 0, 2, 1, 0, 0
waitforvisualfinish
clearmonbg ANIM_ATTACKER
- delay 0x1
- createsprite gUnknown_08597274, 0x0, 1, 0, 7, 0, RGB(13, 31, 12)
- delay 0x1
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 1, 0, 7, 0, RGB(13, 31, 12)
+ delay 1
playsewithpan SE_W287, -64
- createvisualtask sub_815DFCC, 0x2, 1
+ createvisualtask sub_815DFCC, 2, 1
waitforvisualfinish
playsewithpan SE_W234, -64
- createsprite gUnknown_08592B94, 0x10, -15, 0, 0, 0, 32, 60, 1
- delay 0x8
- createsprite gUnknown_08592B94, 0x10, 12, -5, 0, 0, 32, 60, 1
+ createsprite gUnknown_08592B94, 16, -15, 0, 0, 0, 32, 60, 1
+ delay 8
+ createsprite gUnknown_08592B94, 16, 12, -5, 0, 0, 32, 60, 1
waitforvisualfinish
playsewithpan SE_REAPOKE, -64
- createsprite gUnknown_08597274, 0x0, 43, 3, 10, 0, RGB(13, 31, 12)
- createsprite gUnknown_08593868, 0x10, 0, 0, 0, 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 43, 3, 10, 0, RGB(13, 31, 12)
+ createsprite gUnknown_08593868, 16, 0, 0, 0, 1
waitforvisualfinish
end
Move_FAKE_TEARS:
- loadspritegfx 0x27AB
- loadspritegfx 0x27E1
- loadspritegfx 0x2758
- createvisualtask sub_8116848, 0x5, 10155, 0, 4, 4, RGB(12, 11, 31)
- waitforvisualfinish
- createvisualtask sub_815C478, 0x5, 0, 2, 1
- loopsewithpan SE_W039, -64, 0xC, 0x4
- delay 0x8
- createsprite gUnknown_085970E8, 0x2, 0, 0
- createsprite gUnknown_085970E8, 0x2, 0, 1
- delay 0x8
- createsprite gUnknown_085970E8, 0x2, 0, 2
- createsprite gUnknown_085970E8, 0x2, 0, 3
- delay 0x8
- createsprite gUnknown_085970E8, 0x2, 0, 0
- createsprite gUnknown_085970E8, 0x2, 0, 1
- delay 0x8
- createsprite gUnknown_085970E8, 0x2, 0, 2
- createsprite gUnknown_085970E8, 0x2, 0, 3
+ loadspritegfx ANIM_TAG_155
+ loadspritegfx ANIM_TAG_209
+ loadspritegfx ANIM_TAG_MUSIC_NOTES2
+ createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_155, 0, 4, 4, RGB(12, 11, 31)
+ waitforvisualfinish
+ createvisualtask sub_815C478, 5, 0, 2, 1
+ loopsewithpan SE_W039, -64, 12, 4
+ delay 8
+ createsprite gUnknown_085970E8, 2, 0, 0
+ createsprite gUnknown_085970E8, 2, 0, 1
+ delay 8
+ createsprite gUnknown_085970E8, 2, 0, 2
+ createsprite gUnknown_085970E8, 2, 0, 3
+ delay 8
+ createsprite gUnknown_085970E8, 2, 0, 0
+ createsprite gUnknown_085970E8, 2, 0, 1
+ delay 8
+ createsprite gUnknown_085970E8, 2, 0, 2
+ createsprite gUnknown_085970E8, 2, 0, 3
waitforvisualfinish
end
Move_AIR_CUTTER:
- loadspritegfx 0x2713
- loadspritegfx 0x279A
- loadspritegfx 0x2797
- delay 0x0
+ loadspritegfx ANIM_TAG_AIR_WAVE
+ loadspritegfx ANIM_TAG_138
+ loadspritegfx ANIM_TAG_135
+ delay 0
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- delay 0x0
- createvisualtask sub_8103CF0, 0x2, 32, -24, 1536, 2, 128
+ setalpha 12, 8
+ delay 0
+ createvisualtask sub_8103CF0, 2, 32, -24, 1536, 2, 128
waitforvisualfinish
playsewithpan SE_W015, +63
- createsprite gUnknown_08592A34, 0x2, 40, -32, 0, 2
- delay 0x5
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
- createvisualtask sub_80D52D0, 0x2, 3, 2, 0, 8, 1
+ createsprite gUnknown_08592A34, 2, 40, -32, 0, 2
+ delay 5
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 8, 1
waitforvisualfinish
blendoff
clearmonbg ANIM_DEF_PARTNER
- delay 0x0
+ delay 0
end
Move_ODOR_SLEUTH:
monbg ANIM_TARGET
- createvisualtask sub_815F620, 0x5
- delay 0x18
- createsprite gUnknown_0857FE28, 0x2, 3, 4
+ createvisualtask sub_815F620, 5
+ delay 24
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 4
playsewithpan SE_W207, -64
- delay 0x6
- createsprite gUnknown_0857FE28, 0x2, 3, 4
+ delay 6
+ createsprite gHorizontalLungeSpriteTemplate, 2, 3, 4
playsewithpan SE_W207, -64
waitforvisualfinish
clearmonbg ANIM_TARGET
- delay 0x1
- createsprite gUnknown_0859728C, 0x2, 1, 3, 1, -1, 16, -1, 0
+ delay 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 3, 1, RGB_WHITEALPHA, 16, -1, 0
playsewithpan SE_W043, -64
end
Move_GRASS_WHISTLE:
- loadspritegfx 0x2758
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 4, RGB(18, 31, 12)
- waitforvisualfinish
- createvisualtask sub_8102BE8, 0x2
- waitforvisualfinish
- panse_1B SE_W320, -64, +63, +2, 0x0
- createsprite gUnknown_08593008, 0x82, 7, 1, 0
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 6, 1, 0
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 1, 1, 0
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 2, 1, 0
- delay 0x5
- createsprite gUnknown_08593008, 0x82, 3, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 5, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 6, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 2, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 1, 1, 0
- delay 0x4
- createsprite gUnknown_08593008, 0x82, 5, 1, 0
- delay 0x4
- waitforvisualfinish
- createvisualtask sub_8102CA0, 0x2
- createsprite gUnknown_08597274, 0x2, 1, 4, 4, 0, RGB(18, 31, 12)
+ loadspritegfx ANIM_TAG_MUSIC_NOTES2
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 4, RGB(18, 31, 12)
+ waitforvisualfinish
+ createvisualtask sub_8102BE8, 2
+ waitforvisualfinish
+ panse_1B SE_W320, -64, +63, +2, 0
+ createsprite gUnknown_08593008, 130, 7, 1, 0
+ delay 5
+ createsprite gUnknown_08593008, 130, 6, 1, 0
+ delay 5
+ createsprite gUnknown_08593008, 130, 1, 1, 0
+ delay 5
+ createsprite gUnknown_08593008, 130, 2, 1, 0
+ delay 5
+ createsprite gUnknown_08593008, 130, 3, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 5, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 6, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 2, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 1, 1, 0
+ delay 4
+ createsprite gUnknown_08593008, 130, 5, 1, 0
+ delay 4
+ waitforvisualfinish
+ createvisualtask sub_8102CA0, 2
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 4, 4, 0, RGB(18, 31, 12)
waitforvisualfinish
end
Move_TICKLE:
- loadspritegfx 0x27EA
- createsprite gUnknown_08597274, 0x2, 2, 0, 0, 16, RGB_BLACK
+ loadspritegfx ANIM_TAG_218
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 0, 0, 16, RGB_BLACK
waitforvisualfinish
- createsprite gUnknown_08593A84, 0x0, -16, -8
- createsprite gUnknown_08593A84, 0x0, 16, -8
+ createsprite gUnknown_08593A84, 0, -16, -8
+ createsprite gUnknown_08593A84, 0, 16, -8
playsewithpan SE_W197, -64
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 2, 0, 16, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 0, 16, 0, RGB_BLACK
waitforvisualfinish
- delay 0x14
- createvisualtask sub_80D5EB8, 0x3, 0, 6, 1280, 3, 0
- delay 0xC
- createvisualtask sub_815C478, 0x3, 1, 6, 2
- loopsewithpan SE_W039, +63, 0x8, 0x8
+ delay 20
+ createvisualtask AnimTask_SwayMon, 3, 0, 6, 1280, 3, ANIM_ATTACKER
+ delay 12
+ createvisualtask sub_815C478, 3, 1, 6, 2
+ loopsewithpan SE_W039, +63, 8, 8
waitforvisualfinish
end
Move_WATER_SPOUT:
- loadspritegfx 0x281C
- loadspritegfx 0x27A4
+ loadspritegfx ANIM_TAG_268
+ loadspritegfx ANIM_TAG_148
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_81080E4, 0x5
+ setalpha 12, 8
+ createvisualtask sub_81080E4, 5
playsewithpan SE_W029, -64
- delay 0x2C
+ delay 44
playsewithpan SE_W291, -64
waitforvisualfinish
- delay 0x10
- createvisualtask sub_81085C8, 0x5
+ delay 16
+ createvisualtask sub_81085C8, 5
playsewithpan SE_W057, +63
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SHADOW_PUNCH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
fadetobg BG_GHOST
waitbgfadein
monbg ANIM_ATK_PARTNER
- setalpha 0x809
- createvisualtask sub_80A8BC4, 0x2, 0, 13
+ setalpha 9, 8
+ createvisualtask sub_80A8BC4, 2, 0, 13
playsewithpan SE_W026, -64
- delay 0x6
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x84, 0, 0, 8, 1, 0
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 8, 1, 0
playsewithpan SE_W004, +63
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
@@ -4382,37 +4319,37 @@ Move_SHADOW_PUNCH:
end
Move_EXTRASENSORY:
- call AnimScript_82D7CD1
+ call SetPsychicBackground
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80A7B98, 0x5, 0, RGB(27, 27, 0), 12, 1, 1
- createvisualtask sub_810FE14, 0x5, 0
+ setalpha 12, 8
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB(27, 27, 0), 12, 1, 1
+ createvisualtask sub_810FE14, 5, 0
playsewithpan SE_W020, +63
waitforvisualfinish
- createvisualtask sub_80A7B98, 0x5, 0, RGB(27, 27, 0), 12, 1, 1
- createvisualtask sub_810FE14, 0x5, 1
+ createvisualtask AnimTask_BlendMonInAndOut, 5, ANIM_ATTACKER, RGB(27, 27, 0), 12, 1, 1
+ createvisualtask sub_810FE14, 5, 1
playsewithpan SE_W020, +63
waitforvisualfinish
- createvisualtask sub_8110034, 0x5, 0
- createvisualtask sub_810FE14, 0x5, 2
+ createvisualtask sub_8110034, 5, 0
+ createvisualtask sub_810FE14, 5, 2
playsewithpan SE_W043, -64
waitforvisualfinish
blendoff
clearmonbg ANIM_DEF_PARTNER
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_AERIAL_ACE:
- loadspritegfx 0x279A
+ loadspritegfx ANIM_TAG_138
monbg ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D5830, 0x2, 0, 24, 6, 1, 5
- createvisualtask sub_81169C0, 0x2, 0, 4, 7, 3
- createsprite gUnknown_08592A1C, 0x2, 40, -32, 0
+ setalpha 12, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 24, 6, 1, 5
+ createvisualtask sub_81169C0, 2, 0, 4, 7, 3
+ createsprite gCuttingSliceSpriteTemplate, 2, 40, -32, 0
playsewithpan SE_W013B, -64
- delay 0x5
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 10, 1
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 10, 0, 0
+ delay 5
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 10, 0, 0
playsewithpan SE_W013, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -4420,157 +4357,157 @@ Move_AERIAL_ACE:
end
Move_IRON_DEFENSE:
- loopsewithpan SE_REAPOKE, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 0, 0, 0
- createsprite gUnknown_0859728C, 0x2, 1, 8, 2, -1, 14, -1, 0
+ loopsewithpan SE_REAPOKE, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 0, 0, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 1, 8, 2, RGB_WHITEALPHA, 14, -1, 0
waitforvisualfinish
end
Move_BLOCK:
- loadspritegfx 0x280A
- createsprite gUnknown_085CE90C, 0xC2
+ loadspritegfx ANIM_TAG_X_SIGN
+ createsprite gUnknown_085CE90C, 194
playsewithpan SE_W207, +63
end
Move_HOWL:
- loadspritegfx 0x2745
- createvisualtask sub_815D64C, 0x2, 0
- delay 0xC
- call AnimScript_82CFECB
- createvisualtask sub_8158D8C, 0x2, 0, 3
+ loadspritegfx ANIM_TAG_053
+ createvisualtask sub_815D64C, 2, 0
+ delay 12
+ call RoarEffect
+ createvisualtask sub_8158D8C, 2, 0, 3
waitforvisualfinish
- delay 0x1E
+ delay 30
end
Move_BULK_UP:
- loadspritegfx 0x2766
- createvisualtask sub_8104AB4, 0x2
+ loadspritegfx ANIM_TAG_086
+ createvisualtask sub_8104AB4, 2
playsewithpan SE_W207, -64
waitforvisualfinish
- createsprite gUnknown_08593658, 0x2
- loopsewithpan SE_W207, -64, 0x4, 0x2
+ createsprite gUnknown_08593658, 2
+ loopsewithpan SE_W207, -64, 4, 2
waitforvisualfinish
end
Move_COVET:
- loadspritegfx 0x27E2
- loadspritegfx 0x27F0
- createvisualtask sub_815C478, 0x5, 0, 2, 0
- createsprite gUnknown_08593970, 0x3, 0, 20
+ loadspritegfx ANIM_TAG_PURPLE_HEART
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ createvisualtask sub_815C478, 5, 0, 2, 0
+ createsprite gUnknown_08593970, 3, 0, 20
playsewithpan SE_W204, -64
- delay 0xF
- createsprite gUnknown_08593970, 0x3, -20, 20
+ delay 15
+ createsprite gUnknown_08593970, 3, -20, 20
playsewithpan SE_W204, -64
- delay 0xF
- createsprite gUnknown_08593970, 0x3, 20, 20
+ delay 15
+ createsprite gUnknown_08593970, 3, 20, 20
playsewithpan SE_W204, -64
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
- loopsewithpan SE_W146, +63, 0x4, 0x3
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
+ loopsewithpan SE_W146, +63, 4, 3
end
Move_VOLT_TACKLE:
- loadspritegfx 0x2711
- loadspritegfx 0x27E4
- loadspritegfx 0x27E5
+ loadspritegfx ANIM_TAG_SPARK
+ loadspritegfx ANIM_TAG_212
+ loadspritegfx ANIM_TAG_213
monbg ANIM_ATTACKER
- setalpha 0x80C
- createvisualtask sub_8116620, 0xA, 1, 0, 0, 8, 0
+ setalpha 12, 8
+ createvisualtask sub_8116620, 10, 1, 0, 0, 8, RGB_BLACK
waitforvisualfinish
- createsprite gUnknown_085959A4, 0x1
+ createsprite gUnknown_085959A4, 1
playsewithpan SE_W268, -64
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
- delay 0x8
- createvisualtask sub_810AFCC, 0x5, 0
+ delay 8
+ createvisualtask sub_810AFCC, 5, 0
playsewithpan SE_W085, -64
waitforvisualfinish
- createvisualtask sub_810AFCC, 0x5, 1
+ createvisualtask sub_810AFCC, 5, 1
playsewithpan SE_W085, +63
waitforvisualfinish
- createvisualtask sub_810AFCC, 0x5, 2
+ createvisualtask sub_810AFCC, 5, 2
playsewithpan SE_W085, -64
waitforvisualfinish
- createvisualtask sub_810AFCC, 0x5, 3
+ createvisualtask sub_810AFCC, 5, 3
playsewithpan SE_W085, +63
waitforvisualfinish
- createvisualtask sub_810AFCC, 0x5, 4
+ createvisualtask sub_810AFCC, 5, 4
playsewithpan SE_W085, -64
- delay 0x8
- createvisualtask sub_80D52D0, 0x2, 1, 10, 0, 18, 1
+ delay 8
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 10, 0, 18, 1
playsewithpan SE_W120, +63
- createsprite gUnknown_0859598C, 0x2, 1, 16, 16
- delay 0x2
- createsprite gUnknown_0859598C, 0x2, 1, -16, -16
- delay 0x8
- createvisualtask sub_810AE5C, 0x5
+ createsprite gUnknown_0859598C, 2, 1, 16, 16
+ delay 2
+ createsprite gUnknown_0859598C, 2, 1, -16, -16
+ delay 8
+ createvisualtask sub_810AE5C, 5
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 0, 3, 0, 9, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 3, 0, 9, 1
playsewithpan SE_W085B, -64
- createsprite gUnknown_0859598C, 0x2, 0, 16, 16
- delay 0x2
- createsprite gUnknown_0859598C, 0x2, 0, -16, -16
+ createsprite gUnknown_0859598C, 2, 0, 16, 16
+ delay 2
+ createsprite gUnknown_0859598C, 2, 0, -16, -16
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1, 0, 8, 0, 0
+ createvisualtask sub_8116620, 10, 1, 0, 8, 0, RGB_BLACK
waitforvisualfinish
end
Move_WATER_SPORT:
- loadspritegfx 0x281C
- createvisualtask sub_81088E4, 0x5
- delay 0x8
+ loadspritegfx ANIM_TAG_268
+ createvisualtask sub_81088E4, 5
+ delay 8
playsewithpan SE_W057, -64
- delay 0x2C
+ delay 44
playsewithpan SE_W057, -64
- delay 0x2C
+ delay 44
playsewithpan SE_W057, -64
- delay 0x2C
- panse_1B SE_W057, -64, +63, +2, 0x0
+ delay 44
+ panse_1B SE_W057, -64, +63, +2, 0
end
Move_CALM_MIND:
- loadspritegfx 0x27DB
+ loadspritegfx ANIM_TAG_203
monbg ANIM_ATK_PARTNER
- createvisualtask sub_8116664, 0x5, 0, 0, 0, 16, 0
+ createvisualtask sub_8116664, 5, 0, 0, 0, 16, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_81177E4, 0x5, 1
+ createvisualtask sub_81177E4, 5, 1
waitforvisualfinish
- createsprite gUnknown_08593850, 0x28, 0, 0, 0, 0
+ createsprite gUnknown_08593850, 40, 0, 0, 0, 0
playsewithpan SE_W048, -64
- delay 0xE
- createsprite gUnknown_08593850, 0x28, 0, 0, 0, 0
+ delay 14
+ createsprite gUnknown_08593850, 40, 0, 0, 0, 0
playsewithpan SE_W048, -64
- delay 0xE
- createsprite gUnknown_08593850, 0x28, 0, 0, 0, 0
+ delay 14
+ createsprite gUnknown_08593850, 40, 0, 0, 0, 0
playsewithpan SE_W048, -64
waitforvisualfinish
- createvisualtask sub_81177E4, 0x5, 0
+ createvisualtask sub_81177E4, 5, 0
waitforvisualfinish
- createvisualtask sub_8116664, 0x5, 0, 0, 16, 0, 0
+ createvisualtask sub_8116664, 5, 0, 0, 16, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
end
Move_LEAF_BLADE:
- loadspritegfx 0x274F
- loadspritegfx 0x282D
- createvisualtask sub_80FFFC0, 0x5
- delay 0x2
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ loadspritegfx ANIM_TAG_063
+ loadspritegfx ANIM_TAG_285
+ createvisualtask sub_80FFFC0, 5
+ delay 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
playsewithpan SE_W015, +63
- delay 0x32
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ delay 50
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
playsewithpan SE_W015, +63
- delay 0x32
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ delay 50
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
playsewithpan SE_W015, +63
waitforvisualfinish
monbg ANIM_TARGET
- setalpha 0x80C
- delay 0xC
- createvisualtask sub_80D52D0, 0x2, 1, 8, 0, 18, 1
- createsprite gUnknown_085973D0, 0x82, 0, 0, 1, 36
+ setalpha 12, 8
+ delay 12
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 8, 0, 18, 1
+ createsprite gUnknown_085973D0, 130, 0, 0, 1, 36
playsewithpan SE_W043, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -4578,180 +4515,180 @@ Move_LEAF_BLADE:
end
Move_DRAGON_DANCE:
- loadspritegfx 0x2809
+ loadspritegfx ANIM_TAG_249
monbg ANIM_ATTACKER
monbgprio_28 ANIM_ATTACKER
- delay 0x1
- createvisualtask sub_81133E8, 0x5
+ delay 1
+ createvisualtask sub_81133E8, 5
playsewithpan SE_W100, -64
- delay 0x8
- createvisualtask sub_80A7CB4, 0x5, 10249, 19456, 14, 0, 3
- createsprite gUnknown_08596F98, 0x2, 0
- createsprite gUnknown_08596F98, 0x2, 43
- createsprite gUnknown_08596F98, 0x2, 85
- createsprite gUnknown_08596F98, 0x2, 128
- createsprite gUnknown_08596F98, 0x2, 170
- createsprite gUnknown_08596F98, 0x2, 213
- delay 0x1E
+ delay 8
+ createvisualtask sub_80A7CB4, 5, 10249, 19456, 14, 0, 3
+ createsprite gUnknown_08596F98, 2, 0
+ createsprite gUnknown_08596F98, 2, 43
+ createsprite gUnknown_08596F98, 2, 85
+ createsprite gUnknown_08596F98, 2, 128
+ createsprite gUnknown_08596F98, 2, 170
+ createsprite gUnknown_08596F98, 2, 213
+ delay 30
playsewithpan SE_W100, -64
- delay 0x1E
+ delay 30
playsewithpan SE_W100, -64
waitforvisualfinish
clearmonbg ANIM_ATTACKER
- delay 0x1
+ delay 1
end
Move_SHOCK_WAVE:
- loadspritegfx 0x27E3
- loadspritegfx 0x27E4
- loadspritegfx 0x2711
- loadspritegfx 0x2735
+ loadspritegfx ANIM_TAG_211
+ loadspritegfx ANIM_TAG_212
+ loadspritegfx ANIM_TAG_SPARK
+ loadspritegfx ANIM_TAG_LIGHTNING
monbg ANIM_ATTACKER
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 4, RGB_BLACK
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 4, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_810AAFC, 0x2, 0, 20, 0, 2
+ createvisualtask sub_810AAFC, 2, 0, 20, 0, 2
playsewithpan SE_W268, -64
- delay 0xC
- createsprite gUnknown_08595A18, 0x2
- delay 0x1E
- createvisualtask sub_810B29C, 0x5
- delay 0xC
+ delay 12
+ createsprite gUnknown_08595A18, 2
+ delay 30
+ createvisualtask sub_810B29C, 5
+ delay 12
waitforvisualfinish
- createvisualtask sub_810B55C, 0x5
+ createvisualtask sub_810B55C, 5
playsewithpan SE_W161B, +63
waitforvisualfinish
- createvisualtask sub_80D51AC, 0x2, 1, 0, 6, 18, 1
- createvisualtask sub_8116620, 0x5, 1, 3, 16, 0, 0x7FFF
- createvisualtask sub_8116620, 0x5, 4, 0, 16, 16, 0
- delay 0x4
- createvisualtask sub_8116620, 0x5, 4, 0, 0, 0, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 6, 18, 1
+ createvisualtask sub_8116620, 5, 1, 3, 16, 0, RGB_WHITE
+ createvisualtask sub_8116620, 5, 4, 0, 16, 16, RGB_BLACK
+ delay 4
+ createvisualtask sub_8116620, 5, 4, 0, 0, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
end
Move_HARDEN:
- loopsewithpan SE_W231, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 0, 0, 0
+ loopsewithpan SE_W231, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 0, 0, 0
waitforvisualfinish
end
Move_BELLY_DRUM:
- loadspritegfx 0x2758
- loadspritegfx 0x27D1
- createvisualtask sub_8102BE8, 0x2
+ loadspritegfx ANIM_TAG_MUSIC_NOTES2
+ loadspritegfx ANIM_TAG_193
+ createvisualtask sub_8102BE8, 2
waitforvisualfinish
- call AnimScript_82CF5A6
- createsprite gUnknown_0859309C, 0x2, 0, 0, 0, 0
+ call BellyDrum1
+ createsprite gUnknown_0859309C, 2, 0, 0, 0, 0
playsewithpan SE_W187, -64
- delay 0xF
- call AnimScript_82CF58B
- createsprite gUnknown_0859309C, 0x2, 1, 1, 1, 0
+ delay 15
+ call BellyDrum2
+ createsprite gUnknown_0859309C, 2, 1, 1, 1, 0
playsewithpan SE_W187, -64
- delay 0xF
- call AnimScript_82CF5A6
- createsprite gUnknown_0859309C, 0x2, 0, 3, 3, 128
+ delay 15
+ call BellyDrum1
+ createsprite gUnknown_0859309C, 2, 0, 3, 3, 128
playsewithpan SE_W187, -64
- delay 0x7
- call AnimScript_82CF58B
- createsprite gUnknown_0859309C, 0x2, 1, 2, 0, 128
+ delay 7
+ call BellyDrum2
+ createsprite gUnknown_0859309C, 2, 1, 2, 0, 128
playsewithpan SE_W187, -64
- delay 0x7
- call AnimScript_82CF5A6
- createsprite gUnknown_0859309C, 0x2, 0, 1, 1, 0
+ delay 7
+ call BellyDrum1
+ createsprite gUnknown_0859309C, 2, 0, 1, 1, 0
playsewithpan SE_W187, -64
- delay 0x7
- call AnimScript_82CF58B
- createsprite gUnknown_0859309C, 0x2, 1, 0, 3, 0
+ delay 7
+ call BellyDrum2
+ createsprite gUnknown_0859309C, 2, 1, 0, 3, 0
playsewithpan SE_W187, -64
waitforvisualfinish
- createvisualtask sub_8102CA0, 0x2
+ createvisualtask sub_8102CA0, 2
waitforvisualfinish
end
-AnimScript_82CF58B:
- createsprite gUnknown_08593068, 0x3, 0
- createvisualtask sub_80D51AC, 0x2, 0, 0, 8, 2, 1
+BellyDrum2:
+ createsprite gUnknown_08593068, 3, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 8, 2, 1
return
-AnimScript_82CF5A6:
- createsprite gUnknown_08593068, 0x3, 1
- createvisualtask sub_80D51AC, 0x2, 0, 0, 8, 2, 1
+BellyDrum1:
+ createsprite gUnknown_08593068, 3, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 8, 2, 1
return
Move_MIND_READER:
- loadspritegfx 0x27CD
- loadspritegfx 0x27CE
- loadspritegfx 0x27CF
+ loadspritegfx ANIM_TAG_189
+ loadspritegfx ANIM_TAG_OPENING_EYE
+ loadspritegfx ANIM_TAG_191
monbg ANIM_DEF_PARTNER
playsewithpan SE_W109, +63
- createsprite gUnknown_085CE07C, 0x5, 0, 0, 1, 0
- createsprite gUnknown_085CE094, 0x5
- delay 0x28
+ createsprite gUnknown_085CE07C, 5, 0, 0, 1, 0
+ createsprite gUnknown_085CE094, 5
+ delay 40
playsewithpan SE_W043, +63
- createvisualtask sub_8115A04, 0x2, 1, 1, 2, 0, 10, 0
- call AnimScript_82CF608
+ createvisualtask sub_8115A04, 2, 1, 1, 2, 0, 10, RGB_BLACK
+ call MindReaderEffect
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-AnimScript_82CF608:
- createsprite gUnknown_085CE0AC, 0x4, 70, 0, 6
- createsprite gUnknown_085CE0AC, 0x4, 40, 40, 6
- createsprite gUnknown_085CE0AC, 0x4, 10, -60, 6
- createsprite gUnknown_085CE0AC, 0x4, -50, -40, 6
- createsprite gUnknown_085CE0AC, 0x4, -40, 40, 6
- createsprite gUnknown_085CE0AC, 0x4, 50, -50, 6
- delay 0x2
- createsprite gUnknown_085CE0AC, 0x4, 50, -30, 6
- createsprite gUnknown_085CE0AC, 0x4, 60, 10, 6
- createsprite gUnknown_085CE0AC, 0x4, 0, 60, 6
- createsprite gUnknown_085CE0AC, 0x4, 0, -40, 6
- createsprite gUnknown_085CE0AC, 0x4, -60, 20, 6
- createsprite gUnknown_085CE0AC, 0x4, -60, -30, 6
- delay 0x2
- createsprite gUnknown_085CE0AC, 0x4, -50, 50, 6
- createsprite gUnknown_085CE0AC, 0x4, -60, 20, 6
- createsprite gUnknown_085CE0AC, 0x4, -40, -40, 6
- createsprite gUnknown_085CE0AC, 0x4, 20, -60, 6
- createsprite gUnknown_085CE0AC, 0x4, 50, -50, 6
- createsprite gUnknown_085CE0AC, 0x4, 35, 40, 6
- delay 0x2
+MindReaderEffect:
+ createsprite gUnknown_085CE0AC, 4, 70, 0, 6
+ createsprite gUnknown_085CE0AC, 4, 40, 40, 6
+ createsprite gUnknown_085CE0AC, 4, 10, -60, 6
+ createsprite gUnknown_085CE0AC, 4, -50, -40, 6
+ createsprite gUnknown_085CE0AC, 4, -40, 40, 6
+ createsprite gUnknown_085CE0AC, 4, 50, -50, 6
+ delay 2
+ createsprite gUnknown_085CE0AC, 4, 50, -30, 6
+ createsprite gUnknown_085CE0AC, 4, 60, 10, 6
+ createsprite gUnknown_085CE0AC, 4, 0, 60, 6
+ createsprite gUnknown_085CE0AC, 4, 0, -40, 6
+ createsprite gUnknown_085CE0AC, 4, -60, 20, 6
+ createsprite gUnknown_085CE0AC, 4, -60, -30, 6
+ delay 2
+ createsprite gUnknown_085CE0AC, 4, -50, 50, 6
+ createsprite gUnknown_085CE0AC, 4, -60, 20, 6
+ createsprite gUnknown_085CE0AC, 4, -40, -40, 6
+ createsprite gUnknown_085CE0AC, 4, 20, -60, 6
+ createsprite gUnknown_085CE0AC, 4, 50, -50, 6
+ createsprite gUnknown_085CE0AC, 4, 35, 40, 6
+ delay 2
return
Move_ICE_PUNCH:
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- loadspritegfx 0x279D
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 7, RGB_BLACK
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 9, 32588
- delay 0x14
+ setalpha 12, 8
+ loadspritegfx ANIM_TAG_141
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 7, RGB_BLACK
+ createvisualtask sub_8116620, 10, 4, 2, 0, 9, RGB(12, 26, 31)
+ delay 20
playsewithpan SE_W081, +63
- createsprite gUnknown_08595AE8, 0x2, 0
- createsprite gUnknown_08595AE8, 0x2, 64
- createsprite gUnknown_08595AE8, 0x2, 128
- createsprite gUnknown_08595AE8, 0x2, 192
- delay 0x5
- createsprite gUnknown_08595AD0, 0x2, 32
- createsprite gUnknown_08595AD0, 0x2, 96
- createsprite gUnknown_08595AD0, 0x2, 160
- createsprite gUnknown_08595AD0, 0x2, 224
- delay 0x11
- createsprite gUnknown_08595E98, 0x4, 0, -10, 8, 1, 0
- createsprite gUnknown_08597358, 0x3, 0, -10, 1, 1
+ createsprite gUnknown_08595AE8, 2, 0
+ createsprite gUnknown_08595AE8, 2, 64
+ createsprite gUnknown_08595AE8, 2, 128
+ createsprite gUnknown_08595AE8, 2, 192
+ delay 5
+ createsprite gUnknown_08595AD0, 2, 32
+ createsprite gUnknown_08595AD0, 2, 96
+ createsprite gUnknown_08595AD0, 2, 160
+ createsprite gUnknown_08595AD0, 2, 224
+ delay 17
+ createsprite gFistFootSpriteTemplate, 4, 0, -10, 8, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, -10, 1, 1
playsewithpan SE_W004, +63
- delay 0x2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 3, 1
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 3, 1
waitforvisualfinish
- delay 0xF
- call AnimScript_82D7720
- delay 0x5
- createvisualtask sub_8116620, 0xA, 4, 2, 9, 0, 32588
+ delay 15
+ call FreezeEffect1
+ delay 5
+ createvisualtask sub_8116620, 10, 4, 2, 9, 0, RGB(12, 26, 31)
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 0, 7, 0, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 7, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
@@ -4759,226 +4696,224 @@ Move_ICE_PUNCH:
Move_REST:
playsewithpan SE_W173, -64
- loadspritegfx 0x27F4
- createsprite gUnknown_08592C88, 0x2, 4, -10, 16, 0, 0
- delay 0x14
- createsprite gUnknown_08592C88, 0x2, 4, -10, 16, 0, 0
- delay 0x14
- createsprite gUnknown_08592C88, 0x2, 4, -10, 16, 0, 0
+ loadspritegfx ANIM_TAG_LETTER_Z
+ createsprite gUnknown_08592C88, 2, 4, -10, 16, 0, 0
+ delay 20
+ createsprite gUnknown_08592C88, 2, 4, -10, 16, 0, 0
+ delay 20
+ createsprite gUnknown_08592C88, 2, 4, -10, 16, 0, 0
waitforvisualfinish
end
Move_CONFUSION:
monbg ANIM_DEF_PARTNER
- call AnimScript_82D7CD1
- setalpha 0x808
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 10, 1
- createvisualtask sub_8115A04, 0x2, 2, 0, 2, 0, 8, 0x7FFF
+ call SetPsychicBackground
+ setalpha 8, 8
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1
+ createvisualtask sub_8115A04, 2, 2, 0, 2, 0, 8, RGB_WHITE
waitforvisualfinish
playsewithpan SE_W048, +63
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 15, 1
- createvisualtask sub_80D6064, 0x5, -4, -4, 15, 1, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 15, 1
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_TARGET, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
Move_PSYCHIC:
monbg ANIM_DEF_PARTNER
- call AnimScript_82D7CD1
- setalpha 0x808
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 10, 1
- createvisualtask sub_8115A04, 0x2, 2, 0, 2, 0, 8, 767
+ call SetPsychicBackground
+ setalpha 8, 8
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1
+ createvisualtask sub_8115A04, 2, 2, 0, 2, 0, 8, RGB(31, 23, 0)
waitforvisualfinish
- loopsewithpan SE_W048, +63, 0xA, 0x3
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 15, 1
- createvisualtask sub_80D6064, 0x5, -6, -6, 15, 1, 1
+ loopsewithpan SE_W048, +63, 10, 3
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 15, 1
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -6, -6, 15, ANIM_TARGET, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
Move_FUTURE_SIGHT:
- goto AnimScript_82CF8F6
-
-AnimScript_82CF8ED:
+ goto FutureSight
+FutureSightContinue:
waitforvisualfinish
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
-
-AnimScript_82CF8F6:
+FutureSight:
monbg ANIM_ATK_PARTNER
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
- setalpha 0x808
+ call SetPsychicBackground
+ setalpha 8, 8
playsewithpan SE_W048, -64
- createvisualtask sub_8115A04, 0x2, 2, 0, 2, 0, 8, 0x7FFF
- createvisualtask sub_80D6064, 0x5, -4, -4, 15, 0, 1
+ createvisualtask sub_8115A04, 2, 2, 0, 2, 0, 8, RGB_WHITE
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_ATTACKER, 1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- goto AnimScript_82CF8ED
+ goto FutureSightContinue
Move_THUNDER:
- loadspritegfx 0x2735
+ loadspritegfx ANIM_TAG_LIGHTNING
fadetobg BG_THUNDER
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -256, 0, 1, -1
+ createvisualtask sub_8117660, 5, -256, 0, 1, -1
waitbgfadein
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 16, RGB_BLACK
- delay 0x10
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 16, RGB_BLACK
+ delay 16
+ createvisualtask sub_8115F10, 2, 257, 257, 257
playsewithpan SE_W086, +63
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 16, -36
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 16, -20
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 16, 12
- delay 0x14
+ delay 1
+ createsprite gUnknown_085956C0, 130, 16, -36
+ delay 1
+ createsprite gUnknown_085956C0, 130, 16, -20
+ delay 1
+ createsprite gUnknown_085956C0, 130, 16, 12
+ delay 20
createsprite gUnknown_085956C0, 0x86, -16, -32
playsewithpan SE_W086, +63
- delay 0x1
+ delay 1
createsprite gUnknown_085956C0, 0x86, -16, -16
- delay 0x1
+ delay 1
createsprite gUnknown_085956C0, 0x86, -16, 16
playsewithpan SE_W086, +63
- delay 0x5
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 24, -32
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 24, -16
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 24, 16
- delay 0x1E
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x5
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, -32
+ delay 5
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createsprite gUnknown_085956C0, 130, 24, -32
+ delay 1
+ createsprite gUnknown_085956C0, 130, 24, -16
+ delay 1
+ createsprite gUnknown_085956C0, 130, 24, 16
+ delay 30
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 5
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, -32
playsewithpan SE_W161B, +63
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, -16
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, 16
- delay 0xA
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createvisualtask sub_810A094, 0x2, 30, 3, 1, 0
- delay 0x2
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createsprite gUnknown_08597274, 0x82, 1, 2, 16, 0, RGB_BLACK
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, -16
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, 16
+ delay 10
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createvisualtask sub_810A094, 2, 30, 3, 1, 0
+ delay 2
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 130, 1, 2, 16, 0, RGB_BLACK
waitforvisualfinish
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
Move_THUNDER_PUNCH:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- loadspritegfx 0x2735
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_LIGHTNING
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 16, RGB_BLACK
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 16, RGB_BLACK
waitforvisualfinish
playsewithpan SE_W004, +63
- createsprite gUnknown_08595E98, 0x84, 0, 0, 8, 1, 0
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- delay 0x1
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, -48
- delay 0x1
- createsprite gUnknown_085956C0, 0x2, 0, -16
- delay 0x1
- createsprite gUnknown_085956C0, 0x2, 0, 16
- delay 0x1
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 8, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ delay 1
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, -48
+ delay 1
+ createsprite gUnknown_085956C0, 2, 0, -16
+ delay 1
+ createsprite gUnknown_085956C0, 2, 0, 16
+ delay 1
playsewithpan SE_W161B, +63
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x2
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 15, 1
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- delay 0x1
- createsprite gUnknown_08597274, 0x2, 1, 2, 16, 0, RGB_BLACK
- delay 0x14
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 16, 0, RGB_BLACK
+ delay 20
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_SACRED_FIRE:
- loadspritegfx 0x2731
- loadspritegfx 0x2733
- loopsewithpan SE_W221, -64, 0x7, 0x5
- createsprite gUnknown_08595428, 0x2, -32, 0, 50, 5, -2, 0
- delay 0x1
- createsprite gUnknown_08595428, 0x42, -20, -10, 50, 5, -1, -1
- delay 0x1
- createsprite gUnknown_08595428, 0x42, 0, -16, 50, 5, 0, -1
- delay 0x1
- createsprite gUnknown_08595428, 0x42, 20, -10, 50, 5, 1, -1
- delay 0x1
- createsprite gUnknown_08595428, 0x2, 32, 0, 50, 5, 2, 0
- delay 0x1
- createsprite gUnknown_08595428, 0x2, 20, 10, 50, 5, 1, 1
- delay 0x1
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
- createsprite gUnknown_08595428, 0x2, 0, 16, 50, 5, 0, 1
- delay 0x1
- createsprite gUnknown_08595428, 0x2, -20, 10, 50, 5, -1, 1
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
+ loadspritegfx ANIM_TAG_FIRE
+ loadspritegfx ANIM_TAG_035
+ loopsewithpan SE_W221, -64, 7, 5
+ createsprite gUnknown_08595428, 2, -32, 0, 50, 5, -2, 0
+ delay 1
+ createsprite gUnknown_08595428, 66, -20, -10, 50, 5, -1, -1
+ delay 1
+ createsprite gUnknown_08595428, 66, 0, -16, 50, 5, 0, -1
+ delay 1
+ createsprite gUnknown_08595428, 66, 20, -10, 50, 5, 1, -1
+ delay 1
+ createsprite gUnknown_08595428, 2, 32, 0, 50, 5, 2, 0
+ delay 1
+ createsprite gUnknown_08595428, 2, 20, 10, 50, 5, 1, 1
+ delay 1
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
+ createsprite gUnknown_08595428, 2, 0, 16, 50, 5, 0, 1
+ delay 1
+ createsprite gUnknown_08595428, 2, -20, 10, 50, 5, -1, 1
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
waitforvisualfinish
playsewithpan SE_W221B, +63
- createsprite gUnknown_085953F8, 0x82, -16, 0, 70, 16, 0, 1
- delay 0xA
+ createsprite gUnknown_085953F8, 130, -16, 0, 70, 16, 0, 1
+ delay 10
playsewithpan SE_W221B, +63
- createsprite gUnknown_085953F8, 0x82, 0, 0, 70, 16, 0, 1
- delay 0xA
+ createsprite gUnknown_085953F8, 130, 0, 0, 70, 16, 0, 1
+ delay 10
playsewithpan SE_W221B, +63
- createsprite gUnknown_085953F8, 0x82, 16, 0, 80, 16, 0, 1
- delay 0x1
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
+ createsprite gUnknown_085953F8, 130, 16, 0, 80, 16, 0, 1
+ delay 1
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
waitforvisualfinish
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 1
playsewithpan SE_W172B, +63
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, 0
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 0, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, -1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 2, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 1, -1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 1, -2
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 3, 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, 0
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 0, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, -1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 2, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 1, -1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 1, -2
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 3, 1
waitforvisualfinish
end
Move_SCRATCH:
- loadspritegfx 0x2799
+ loadspritegfx ANIM_TAG_137
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W010, +63
- createsprite gUnknown_085CE020, 0x2, 0, 0, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createsprite gUnknown_085CE020, 2, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
@@ -4986,423 +4921,419 @@ Move_SCRATCH:
end
Move_DRAGON_BREATH:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- loopsewithpan SE_W172, -64, 0x7, 0x7
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createvisualtask sub_8116620, 0xA, 4, 1, 0, 9, 31
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 21, 1
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- delay 0x2
- createsprite gUnknown_08596EF4, 0x82, 0, 0, 0, 0, 20
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 4, 1, 9, 0, 31
+ loopsewithpan SE_W172, -64, 7, 7
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createvisualtask sub_8116620, 10, 4, 1, 0, 9, RGB_RED
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 21, 1
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ delay 2
+ createsprite gUnknown_08596EF4, 130, 0, 0, 0, 0, 20
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 4, 1, 9, 0, RGB_RED
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_ROAR:
- loadspritegfx 0x2745
+ loadspritegfx ANIM_TAG_053
monbg ANIM_ATTACKER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x808
- createvisualtask sub_8158E9C, 0x2, 0, 2
- createvisualtask sub_80D6064, 0x5, -5, -5, 10, 0, 1
- call AnimScript_82CFECB
- delay 0x14
- createvisualtask sub_80D5DB0, 0x5, 1, 2
+ setalpha 8, 8
+ createvisualtask sub_8158E9C, 2, 0, 2
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1
+ call RoarEffect
+ delay 20
+ createvisualtask sub_80D5DB0, 5, 1, 2
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
waitforvisualfinish
- createvisualtask sub_8159078, 0x5
+ createvisualtask sub_8159078, 5
waitforvisualfinish
end
-AnimScript_82CFECB:
- createsprite gUnknown_085CE7D4, 0x2, 24, -8, 0
- createsprite gUnknown_085CE7D4, 0x2, 24, 0, 2
- createsprite gUnknown_085CE7D4, 0x2, 24, 8, 1
- delay 0xF
- createsprite gUnknown_085CE7D4, 0x2, 24, -8, 0
- createsprite gUnknown_085CE7D4, 0x2, 24, 0, 2
- createsprite gUnknown_085CE7D4, 0x2, 24, 8, 1
+RoarEffect:
+ createsprite gUnknown_085CE7D4, 2, 24, -8, 0
+ createsprite gUnknown_085CE7D4, 2, 24, 0, 2
+ createsprite gUnknown_085CE7D4, 2, 24, 8, 1
+ delay 15
+ createsprite gUnknown_085CE7D4, 2, 24, -8, 0
+ createsprite gUnknown_085CE7D4, 2, 24, 0, 2
+ createsprite gUnknown_085CE7D4, 2, 24, 8, 1
return
Move_GROWL:
- loadspritegfx 0x2745
- createvisualtask sub_8158E9C, 0x2, 0, 255
- call AnimScript_82CFECB
- delay 0xA
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 9, 1
- createvisualtask sub_80D52D0, 0x2, 3, 1, 0, 9, 1
+ loadspritegfx ANIM_TAG_053
+ createvisualtask sub_8158E9C, 2, 0, 255
+ call RoarEffect
+ delay 10
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 9, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 9, 1
waitforvisualfinish
- createvisualtask sub_8159078, 0x5
+ createvisualtask sub_8159078, 5
waitforvisualfinish
end
Move_SNORE:
- loadspritegfx 0x27D5
+ loadspritegfx ANIM_TAG_197
monbg ANIM_ATK_PARTNER
- setalpha 0x808
- call AnimScript_82CFF76
- delay 0x1E
- call AnimScript_82CFF76
+ setalpha 8, 8
+ call Snore1
+ delay 30
+ call Snore1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
-
-AnimScript_82CFF76:
+Snore1:
playsewithpan SE_W173, -64
- createvisualtask sub_80D6064, 0x5, -7, -7, 7, 0, 1
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 7, 1
- createsprite gUnknown_085972D8, 0x2, 6, 1, 14, 0, 0
- createsprite gUnknown_085936EC, 0x2, 0, 0, -42, -38, 24, 0, 0
- createsprite gUnknown_085936EC, 0x2, 0, 0, 0, -42, 24, 0, 0
- createsprite gUnknown_085936EC, 0x2, 0, 0, 42, -38, 24, 0, 0
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 7, ANIM_ATTACKER, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, 6, 1, 14, 0, 0
+ createsprite gUnknown_085936EC, 2, 0, 0, -42, -38, 24, 0, 0
+ createsprite gUnknown_085936EC, 2, 0, 0, 0, -42, 24, 0, 0
+ createsprite gUnknown_085936EC, 2, 0, 0, 42, -38, 24, 0, 0
return
Move_LIGHT_SCREEN:
- loadspritegfx 0x2756
- loadspritegfx 0x27B6
- setalpha 0x1000
- waitplaysewithpan SE_W115, -64, 0xF
- createsprite gUnknown_08596560, 0x1, 40, 0, 10166
- delay 0xA
- call AnimScript_82D0014
- waitforvisualfinish
- delay 0x1
- blendoff
- end
-
-AnimScript_82D0014:
- createsprite gUnknown_08596624, 0x2, 23, 0, 0, 1
- delay 0x6
- createsprite gUnknown_08596624, 0x2, 31, -8, 0, 1
- delay 0x5
- createsprite gUnknown_08596624, 0x2, 30, 20, 0, 1
- delay 0x7
- createsprite gUnknown_08596624, 0x2, 10, -15, 0, 1
- delay 0x6
- createsprite gUnknown_08596624, 0x2, 20, 10, 0, 1
- delay 0x6
- createsprite gUnknown_08596624, 0x2, 10, 18, 0, 1
+ loadspritegfx ANIM_TAG_070
+ loadspritegfx ANIM_TAG_166
+ setalpha 0, 16
+ waitplaysewithpan SE_W115, -64, 15
+ createsprite gUnknown_08596560, 1, 40, 0, 10166
+ delay 10
+ call SpecialScreenEffect
+ waitforvisualfinish
+ delay 1
+ blendoff
+ end
+
+SpecialScreenEffect:
+ createsprite gUnknown_08596624, 2, 23, 0, 0, 1
+ delay 6
+ createsprite gUnknown_08596624, 2, 31, -8, 0, 1
+ delay 5
+ createsprite gUnknown_08596624, 2, 30, 20, 0, 1
+ delay 7
+ createsprite gUnknown_08596624, 2, 10, -15, 0, 1
+ delay 6
+ createsprite gUnknown_08596624, 2, 20, 10, 0, 1
+ delay 6
+ createsprite gUnknown_08596624, 2, 10, 18, 0, 1
return
Move_MIRROR_COAT:
- loadspritegfx 0x2756
- loadspritegfx 0x27B8
- setalpha 0x1000
- createsprite gUnknown_08596590, 0x1, 40, 0, 10168
- delay 0xA
+ loadspritegfx ANIM_TAG_070
+ loadspritegfx ANIM_TAG_168
+ setalpha 0, 16
+ createsprite gUnknown_08596590, 1, 40, 0, 10168
+ delay 10
playsewithpan SE_W115, -64
- call AnimScript_82D0014
+ call SpecialScreenEffect
waitforvisualfinish
- delay 0x1
+ delay 1
blendoff
end
Move_REFLECT:
- loadspritegfx 0x2757
- loadspritegfx 0x27B7
- setalpha 0x1000
- waitplaysewithpan SE_W115, -64, 0xF
- createsprite gUnknown_08596578, 0x1, 40, 0, 10167
- delay 0x14
- createsprite gUnknown_085965F4, 0x2, 30, 0, 0, 1
- delay 0x7
- createsprite gUnknown_085965F4, 0x2, 19, -12, 0, 1
- delay 0x7
- createsprite gUnknown_085965F4, 0x2, 10, 20, 0, 1
+ loadspritegfx ANIM_TAG_071
+ loadspritegfx ANIM_TAG_167
+ setalpha 0, 16
+ waitplaysewithpan SE_W115, -64, 15
+ createsprite gUnknown_08596578, 1, 40, 0, 10167
+ delay 20
+ createsprite gUnknown_085965F4, 2, 30, 0, 0, 1
+ delay 7
+ createsprite gUnknown_085965F4, 2, 19, -12, 0, 1
+ delay 7
+ createsprite gUnknown_085965F4, 2, 10, 20, 0, 1
waitforvisualfinish
- delay 0x1
+ delay 1
blendoff
end
Move_BARRIER:
- loadspritegfx 0x27B9
- setalpha 0x1000
- waitplaysewithpan SE_W112, -64, 0xF
- createsprite gUnknown_085965A8, 0x3, 40, 0, 10169
+ loadspritegfx ANIM_TAG_169
+ setalpha 0, 16
+ waitplaysewithpan SE_W112, -64, 15
+ createsprite gUnknown_085965A8, 3, 40, 0, 10169
waitforvisualfinish
- delay 0x1
+ delay 1
blendoff
end
Move_BUBBLE:
- loadspritegfx 0x27A2
- loadspritegfx 0x27AB
+ loadspritegfx ANIM_TAG_146
+ loadspritegfx ANIM_TAG_155
monbg ANIM_TARGET
- setalpha 0x80C
- delay 0x1
- createsprite gUnknown_08595068, 0x2, 18, 0, 15, -15, 10, 128, 100
+ setalpha 12, 8
+ delay 1
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 15, -15, 10, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
- delay 0x6
- createsprite gUnknown_08595068, 0x2, 18, 0, 35, 37, 40, 128, 100
+ waitplaysewithpan SE_W145B, +63, 100
+ delay 6
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 35, 37, 40, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
- delay 0x6
- createsprite gUnknown_08595068, 0x2, 18, 0, 10, -37, 30, 128, 100
+ waitplaysewithpan SE_W145B, +63, 100
+ delay 6
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 10, -37, 30, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
- delay 0x6
- createsprite gUnknown_08595068, 0x2, 18, 0, 30, 10, 15, 128, 100
+ waitplaysewithpan SE_W145B, +63, 100
+ delay 6
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 30, 10, 15, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
- delay 0x6
- createsprite gUnknown_08595068, 0x2, 18, 0, 20, 33, 20, 128, 100
+ waitplaysewithpan SE_W145B, +63, 100
+ delay 6
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 20, 33, 20, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
- delay 0x6
- createsprite gUnknown_08595068, 0x2, 18, 0, 25, -30, 10, 128, 100
+ waitplaysewithpan SE_W145B, +63, 100
+ delay 6
+ createsprite gBattleAnimSpriteTemplate_8595068, 2, 18, 0, 25, -30, 10, 128, 100
playsewithpan SE_W145, -64
- waitplaysewithpan SE_W145B, +63, 0x64
+ waitplaysewithpan SE_W145B, +63, 100
waitforvisualfinish
- call AnimScript_82D7B53
+ call WaterBubbleEffect2
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_SMOG:
- loadspritegfx 0x27BC
+ loadspritegfx ANIM_TAG_172
monbg ANIM_DEF_PARTNER
monbgprio_29
- setalpha 0x80C
- loopsewithpan SE_W054, +63, 0x11, 0xA
- call AnimScript_82D024A
- call AnimScript_82D024A
- call AnimScript_82D024A
- call AnimScript_82D024A
- call AnimScript_82D024A
- call AnimScript_82D024A
- call AnimScript_82D024A
- delay 0x78
- loopsewithpan SE_W092, +63, 0x12, 0x2
- createvisualtask sub_8115A04, 0x2, 4, 2, 2, 0, 12, 26650
- delay 0xA
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 15, 1
+ setalpha 12, 8
+ loopsewithpan SE_W054, +63, 17, 10
+ call Smog1
+ call Smog1
+ call Smog1
+ call Smog1
+ call Smog1
+ call Smog1
+ call Smog1
+ delay 120
+ loopsewithpan SE_W092, +63, 18, 2
+ createvisualtask sub_8115A04, 2, 4, 2, 2, 0, 12, RGB(26, 0, 26)
+ delay 10
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 15, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D024A:
- createsprite gUnknown_08595C44, 0x2, 0, -24, 48, 240, 1, 0
- delay 0x7
+Smog1:
+ createsprite gUnknown_08595C44, 2, 0, -24, 48, 240, 1, 0
+ delay 7
return
Move_FAINT_ATTACK:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_ATTACKER
fadetobg BG_DARK
waitbgfadein
- delay 0x0
+ delay 0
playsewithpan SE_W185, -64
- createvisualtask sub_80D5830, 0x2, 0, 18, 6, 1, 3
- createvisualtask sub_81136E8, 0x2, 1
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 3
+ createvisualtask sub_81136E8, 2, 1
waitforvisualfinish
clearmonbg ANIM_ATTACKER
invisible ANIM_ATTACKER
- delay 0x1
- createvisualtask sub_8117F60, 0x2
- setalpha 0x80C
+ delay 1
+ createvisualtask sub_8117F60, 2
+ setalpha 12, 8
monbg ANIM_TARGET
- delay 0x1
+ delay 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 1
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 9, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 9, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x1
- setarg 0x7, 0x1000
- delay 0x20
- createvisualtask sub_8113888, 0x2
+ delay 1
+ setarg 7, 0x1000
+ delay 32
+ createvisualtask sub_8113888, 2
monbg ANIM_ATTACKER
- createvisualtask sub_81137E4, 0x2, 1
+ createvisualtask sub_81137E4, 2, 1
waitforvisualfinish
clearmonbg ANIM_ATTACKER
- delay 0x1
+ delay 1
restorebg
waitbgfadein
end
Move_SAND_ATTACK:
- loadspritegfx 0x275A
+ loadspritegfx ANIM_TAG_074
monbg ANIM_ATK_PARTNER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W028, -64
- createsprite gUnknown_0857FE70, 0x2, 0, -10, 0, 0, 3
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, -10, 0, 0, 3
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 2
- call AnimScript_82D0337
- call AnimScript_82D0337
- call AnimScript_82D0337
- call AnimScript_82D0337
- call AnimScript_82D0337
- call AnimScript_82D0337
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 2
+ call SandAttack1
+ call SandAttack1
+ call SandAttack1
+ call SandAttack1
+ call SandAttack1
+ call SandAttack1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
-
-AnimScript_82D0337:
- createsprite gUnknown_085971A8, 0x82, 15, 15, 20, 0, 0
- createsprite gUnknown_085971A8, 0x82, 15, 15, 20, 10, 10
- createsprite gUnknown_085971A8, 0x82, 15, 15, 20, -10, -10
- createsprite gUnknown_085971A8, 0x82, 15, 15, 20, 20, 5
- createsprite gUnknown_085971A8, 0x82, 15, 15, 20, -20, -5
- delay 0x2
+SandAttack1:
+ createsprite gUnknown_085971A8, 130, 15, 15, 20, 0, 0
+ createsprite gUnknown_085971A8, 130, 15, 15, 20, 10, 10
+ createsprite gUnknown_085971A8, 130, 15, 15, 20, -10, -10
+ createsprite gUnknown_085971A8, 130, 15, 15, 20, 20, 5
+ createsprite gUnknown_085971A8, 130, 15, 15, 20, -20, -5
+ delay 2
return
Move_MUD_SLAP:
- loadspritegfx 0x275A
+ loadspritegfx ANIM_TAG_074
playsewithpan SE_W028, -64
- createsprite gUnknown_0857FE70, 0x2, 0, -10, 0, 0, 3
- waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 2
- call AnimScript_82D03D5
- call AnimScript_82D03D5
- call AnimScript_82D03D5
- call AnimScript_82D03D5
- call AnimScript_82D03D5
- call AnimScript_82D03D5
- waitforvisualfinish
- end
-
-AnimScript_82D03D5:
- createsprite gUnknown_085971CC, 0x82, 15, 15, 20, 0, 0
- createsprite gUnknown_085971CC, 0x82, 15, 15, 20, 10, 5
- createsprite gUnknown_085971CC, 0x82, 15, 15, 20, -10, -5
- createsprite gUnknown_085971CC, 0x82, 15, 15, 20, 20, 10
- createsprite gUnknown_085971CC, 0x82, 15, 15, 20, -20, -10
- delay 0x2
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, -10, 0, 0, 3
+ waitforvisualfinish
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 2
+ call MudSlap1
+ call MudSlap1
+ call MudSlap1
+ call MudSlap1
+ call MudSlap1
+ call MudSlap1
+ waitforvisualfinish
+ end
+MudSlap1:
+ createsprite gUnknown_085971CC, 130, 15, 15, 20, 0, 0
+ createsprite gUnknown_085971CC, 130, 15, 15, 20, 10, 5
+ createsprite gUnknown_085971CC, 130, 15, 15, 20, -10, -5
+ createsprite gUnknown_085971CC, 130, 15, 15, 20, 20, 10
+ createsprite gUnknown_085971CC, 130, 15, 15, 20, -20, -10
+ delay 2
return
Move_DRAGON_RAGE:
- loadspritegfx 0x272D
- loadspritegfx 0x2733
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loadspritegfx ANIM_TAG_035
playsewithpan SE_W082, -64
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 40, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x82, 0, 15, 0, 0, 4
+ createsprite gSlideMonToOffsetSpriteTemplate, 130, 0, 15, 0, 0, 4
waitforvisualfinish
- createsprite gUnknown_08596F80, 0x82, 30, 15, 0, 10, 10
+ createsprite gUnknown_08596F80, 130, 30, 15, 0, 10, 10
waitforvisualfinish
- loopsewithpan SE_W172B, +63, 0xB, 0x3
- createvisualtask sub_80D51AC, 0x5, 1, 0, 3, 25, 1
- createsprite gUnknown_08596F28, 0xC2, 1, 5, 0
- delay 0x1
- createsprite gUnknown_08596F28, 0xC2, 1, -10, -15
- delay 0x1
- createsprite gUnknown_08596F28, 0x82, 1, 0, 25
- delay 0x1
- createsprite gUnknown_08596F28, 0xC2, 1, 15, 5
- delay 0x1
- createsprite gUnknown_08596F28, 0xC2, 1, -25, 0
- delay 0x1
- createsprite gUnknown_08596F28, 0x82, 1, 30, 30
- delay 0x1
- createsprite gUnknown_08596F28, 0x82, 1, -27, 25
- delay 0x1
- createsprite gUnknown_08596F28, 0xC2, 1, 0, 8
+ loopsewithpan SE_W172B, +63, 11, 3
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1
+ createsprite gUnknown_08596F28, 194, 1, 5, 0
+ delay 1
+ createsprite gUnknown_08596F28, 194, 1, -10, -15
+ delay 1
+ createsprite gUnknown_08596F28, 130, 1, 0, 25
+ delay 1
+ createsprite gUnknown_08596F28, 194, 1, 15, 5
+ delay 1
+ createsprite gUnknown_08596F28, 194, 1, -25, 0
+ delay 1
+ createsprite gUnknown_08596F28, 130, 1, 30, 30
+ delay 1
+ createsprite gUnknown_08596F28, 130, 1, -27, 25
+ delay 1
+ createsprite gUnknown_08596F28, 194, 1, 0, 8
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0xC2, 0, 0, 4
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 194, 0, 0, 4
waitforvisualfinish
end
Move_RAIN_DANCE:
- loadspritegfx 0x2783
+ loadspritegfx ANIM_TAG_115
playsewithpan SE_W240, -64
- createvisualtask sub_8116620, 0xA, 1921, 2, 0, 4, 0
+ createvisualtask sub_8116620, 10, 0x781, 2, 0, 4, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_8107188, 0x2, 0, 3, 120
- createvisualtask sub_8107188, 0x2, 0, 3, 120
- delay 0x78
- delay 0x1E
+ createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120
+ createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120
+ delay 120
+ delay 30
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1921, 2, 4, 0, 0
+ createvisualtask sub_8116620, 10, 0x781, 2, 4, 0, RGB_BLACK
waitforvisualfinish
end
Move_BITE:
- loadspritegfx 0x279B
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_139
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W044, +63
- createsprite gUnknown_08597080, 0x2, 0, -32, 0, 0, 819, 10
- createsprite gUnknown_08597080, 0x2, 0, 32, 4, 0, -819, 10
- delay 0xA
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 4, 7, 1
+ createsprite gUnknown_08597080, 2, 0, -32, 0, 0, 819, 10
+ createsprite gUnknown_08597080, 2, 0, 32, 4, 0, -819, 10
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 7, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x1
+ delay 1
end
Move_CRUNCH:
- loadspritegfx 0x279B
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_139
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
fadetobg BG_DARK
waitbgfadein
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W044, +63
- createsprite gUnknown_08597080, 0x2, -32, -32, 1, 819, 819, 10
- createsprite gUnknown_08597080, 0x2, 32, 32, 5, -819, -819, 10
- delay 0xA
- createsprite gUnknown_08597358, 0x2, -8, 0, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 0, 7, 5, 2
+ createsprite gUnknown_08597080, 2, -32, -32, 1, 819, 819, 10
+ createsprite gUnknown_08597080, 2, 32, 32, 5, -819, -819, 10
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, -8, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 7, 5, 2
waitforvisualfinish
playsewithpan SE_W044, +63
- createsprite gUnknown_08597080, 0x2, 32, -32, 7, -819, 819, 10
- createsprite gUnknown_08597080, 0x2, -32, 32, 3, 819, -819, 10
- delay 0xA
- createsprite gUnknown_08597358, 0x2, 8, 0, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 0, 8, 4, 2
+ createsprite gUnknown_08597080, 2, 32, -32, 7, -819, 819, 10
+ createsprite gUnknown_08597080, 2, -32, 32, 3, 819, -819, 10
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, 8, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 8, 4, 2
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- delay 0x1
+ delay 1
restorebg
waitbgfadein
end
Move_CLAMP:
- loadspritegfx 0x27A1
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_145
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W011, +63
- createsprite gUnknown_08597098, 0x2, -32, 0, 2, 819, 0, 10
- createsprite gUnknown_08597098, 0x2, 32, 0, 6, -819, 0, 10
- delay 0xA
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 5, 1
+ createsprite gUnknown_08597098, 2, -32, 0, 2, 819, 0, 10
+ createsprite gUnknown_08597098, 2, 32, 0, 6, -819, 0, 10
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
@@ -5412,738 +5343,722 @@ Move_CLAMP:
Move_ICE_BEAM:
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- loadspritegfx 0x279D
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 7, RGB_BLACK
+ setalpha 12, 8
+ loadspritegfx ANIM_TAG_141
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 7, RGB_BLACK
waitforvisualfinish
createsoundtask sub_8158C58, 183, -64, 63, 4, 4, 0, 10
- createsprite gUnknown_08595B2C, 0x2, 20, 12, 0, 12, 20
- createsprite gUnknown_08595B2C, 0x2, 20, -12, 0, -12, 20
- delay 0x1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- createsprite gUnknown_08597274, 0x2, 4, -31, 0, 7, RGB(0, 20, 31)
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 25, 1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- call AnimScript_82D07C1
- createsprite gUnknown_08595B14, 0x2, 20, 0, 0, 0, 11
- delay 0x1
- createsprite gUnknown_08595B14, 0x2, 20, 0, 0, 0, 11
- waitforvisualfinish
- delay 0x14
- call AnimScript_82D7720
- createsprite gUnknown_08597274, 0x2, 4, 5, 7, 0, RGB(0, 20, 31)
- waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 0, 7, 0, RGB_BLACK
+ createsprite gUnknown_08595B2C, 2, 20, 12, 0, 12, 20
+ createsprite gUnknown_08595B2C, 2, 20, -12, 0, -12, 20
+ delay 1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 4, -31, 0, 7, RGB(0, 20, 31)
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 25, 1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ call IceBeam1
+ createsprite gUnknown_08595B14, 2, 20, 0, 0, 0, 11
+ delay 1
+ createsprite gUnknown_08595B14, 2, 20, 0, 0, 0, 11
+ waitforvisualfinish
+ delay 20
+ call FreezeEffect1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 4, 5, 7, 0, RGB(0, 20, 31)
+ waitforvisualfinish
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 7, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-
-AnimScript_82D07C1:
- createsprite gUnknown_08595B2C, 0x2, 20, 12, 0, 12, 20
- createsprite gUnknown_08595B2C, 0x2, 20, -12, 0, -12, 20
- createsprite gUnknown_08595B14, 0x2, 20, 0, 0, 0, 11
- delay 0x1
+IceBeam1:
+ createsprite gUnknown_08595B2C, 2, 20, 12, 0, 12, 20
+ createsprite gUnknown_08595B2C, 2, 20, -12, 0, -12, 20
+ createsprite gUnknown_08595B14, 2, 20, 0, 0, 0, 11
+ delay 1
return
Move_WITHDRAW:
playsewithpan SE_W029, -64
- createvisualtask sub_81036A0, 0x5
+ createvisualtask sub_81036A0, 5
waitforvisualfinish
end
Move_AURORA_BEAM:
- loadspritegfx 0x279C
+ loadspritegfx ANIM_TAG_140
fadetobg BG_AURORABEAM
waitbgfadein
playsewithpan SE_W062, -64
- setarg 0x7, 0x0
- createvisualtask sub_8107528, 0xA, 130
- call AnimScript_82D088B
- createvisualtask sub_80D52D0, 0x5, 1, 1, 0, 17, 1
- call AnimScript_82D088B
- call AnimScript_82D088B
- call AnimScript_82D088B
- setarg 0x7, 0xFFFF
+ setarg 7, 0
+ createvisualtask sub_8107528, 10, 130
+ call AuroraBeam1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 1, 0, 17, 1
+ call AuroraBeam1
+ call AuroraBeam1
+ call AuroraBeam1
+ setarg 7, -1
createsoundtask sub_8158C58, 183, -64, 63, 3, 6, 0, 10
- createvisualtask sub_80D52D0, 0x5, 1, 2, 0, 40, 1
- call AnimScript_82D088B
- call AnimScript_82D088B
- call AnimScript_82D088B
- call AnimScript_82D088B
- call AnimScript_82D088B
- call AnimScript_82D088B
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 40, 1
+ call AuroraBeam1
+ call AuroraBeam1
+ call AuroraBeam1
+ call AuroraBeam1
+ call AuroraBeam1
+ call AuroraBeam1
waitforvisualfinish
restorebg
waitbgfadein
end
-
-AnimScript_82D088B:
- createsprite gUnknown_085950B4, 0x82, 20, 0, 0, 0, 17
- delay 0x1
- createsprite gUnknown_085950B4, 0x82, 20, 0, 0, 0, 17
- delay 0x1
- createsprite gUnknown_085950B4, 0x82, 20, 0, 0, 0, 17
- delay 0x1
- createsprite gUnknown_085950B4, 0x82, 20, 0, 0, 0, 17
- delay 0x1
+AuroraBeam1:
+ createsprite gUnknown_085950B4, 130, 20, 0, 0, 0, 17
+ delay 1
+ createsprite gUnknown_085950B4, 130, 20, 0, 0, 0, 17
+ delay 1
+ createsprite gUnknown_085950B4, 130, 20, 0, 0, 0, 17
+ delay 1
+ createsprite gUnknown_085950B4, 130, 20, 0, 0, 0, 17
+ delay 1
return
Move_SOLAR_BEAM:
- loadspritegfx 0x27A3
- choosetwoturnanim AnimScript_82D08E6, AnimScript_82D09E3
-
-AnimScript_82D08E4:
+ loadspritegfx ANIM_TAG_147
+ choosetwoturnanim SolarBeamSetUp, SolarBeamUnleash
+SolarBeamEnd:
waitforvisualfinish
end
-
-AnimScript_82D08E6:
+SolarBeamSetUp:
monbg ANIM_ATK_PARTNER
- setalpha 0x80C
- createvisualtask sub_8115A04, 0x2, 2, 1, 4, 0, 11, 12287
+ setalpha 12, 8
+ createvisualtask sub_8115A04, 2, 2, 1, 4, 0, 11, RGB(31, 31, 11)
playsewithpan SE_W025, -64
- call AnimScript_82D0910
+ call SolarBeamSetUp1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- goto AnimScript_82D08E4
-
-AnimScript_82D0910:
- createsprite gUnknown_085921E0, 0x2, 40, 40, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -40, -40, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 0, 40, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 0, -40, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 40, -20, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 40, 20, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -40, -20, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -40, 20, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -20, 30, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 20, -30, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -20, -30, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 20, 30, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, -40, 0, 16
- delay 0x2
- createsprite gUnknown_085921E0, 0x2, 40, 0, 16
- delay 0x2
+ goto SolarBeamEnd
+SolarBeamSetUp1:
+ createsprite gUnknown_085921E0, 2, 40, 40, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -40, -40, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 0, 40, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 0, -40, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 40, -20, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 40, 20, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -40, -20, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -40, 20, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -20, 30, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 20, -30, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -20, -30, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 20, 30, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, -40, 0, 16
+ delay 2
+ createsprite gUnknown_085921E0, 2, 40, 0, 16
+ delay 2
return
-
-AnimScript_82D09E3:
- call AnimScript_82D7D1D
- panse_1B SE_W076, -64, +63, +2, 0x0
- createvisualtask sub_80FEA58, 0x5
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 0
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 1
- delay 0x4
- createvisualtask sub_8116620, 0xA, 4, 1, 0, 10, 1017
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 2
- delay 0x4
- createvisualtask sub_80D52D0, 0x5, 1, 2, 0, 65, 1
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 3
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 4
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 5
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 6
- delay 0x4
- call AnimScript_82D0AB5
- call AnimScript_82D0AB5
- waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 4, 1, 10, 0, 1017
- call AnimScript_82D7D57
- goto AnimScript_82D08E4
-
-AnimScript_82D0AB5:
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 0
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 1
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 2
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 3
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 4
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 5
- delay 0x4
- createsprite gUnknown_085921F8, 0x83, 15, 0, 20, 6
- delay 0x4
+SolarBeamUnleash:
+ call SetSolarbeamBg
+ panse_1B SE_W076, -64, +63, +2, 0
+ createvisualtask sub_80FEA58, 5
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 0
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 1
+ delay 4
+ createvisualtask sub_8116620, 10, 4, 1, 0, 10, RGB(25, 31, 0)
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 2
+ delay 4
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 65, 1
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 3
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 4
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 5
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 6
+ delay 4
+ call SolarBeamUnleash1
+ call SolarBeamUnleash1
+ waitforvisualfinish
+ createvisualtask sub_8116620, 10, 4, 1, 10, 0, RGB(25, 31, 0)
+ call UnsetSolarbeamBg
+ goto SolarBeamEnd
+SolarBeamUnleash1:
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 0
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 1
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 2
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 3
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 4
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 5
+ delay 4
+ createsprite gUnknown_085921F8, 131, 15, 0, 20, 6
+ delay 4
return
Move_BLIZZARD:
- loadspritegfx 0x279D
+ loadspritegfx ANIM_TAG_141
monbg ANIM_DEF_PARTNER
- createvisualtask sub_8117754, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D0CB2
+ createvisualtask AnimTask_IsAttackerOpponentSide, 2
+ jumprettrue BlizzardAgainstPlayer
fadetobg BG_HIGHSPEED_OPPONENT
-
-AnimScript_82D0B43:
+BlizzardContinue:
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 0, 1, -1
+ createvisualtask sub_8117660, 5, -2304, 0, 1, -1
waitbgfadein
waitforvisualfinish
- panse_1B SE_W059, -64, +63, +2, 0x0
- call AnimScript_82D0B7D
- call AnimScript_82D0B7D
+ panse_1B SE_W059, -64, +63, +2, 0
+ call Blizzard1
+ call Blizzard1
playsewithpan SE_W059B, +63
waitforvisualfinish
- call AnimScript_82D77A4
+ call FreezeEffect2
waitforvisualfinish
- delay 0x14
+ delay 20
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
clearmonbg ANIM_DEF_PARTNER
end
-
-AnimScript_82D0B7D:
- createsprite gUnknown_08595B98, 0x28, 0, -10, 0, -10, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, 0, 0, 0, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -15, 0, -15, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, -10, 0, -10, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -5, 0, -5, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, 10, 0, 10, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -10, 0, -10, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, -20, 0, -20, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -20, 0, -20, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, 15, 0, 15, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -15, 0, -15, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, -20, 0, -20, 80, 0, 0, 1
- delay 0x3
- createsprite gUnknown_08595B98, 0x28, 0, -25, 0, -25, 72, 1
- createsprite gUnknown_08595BB0, 0x28, 0, 20, 0, 20, 80, 0, 0, 1
- delay 0x3
+Blizzard1:
+ createsprite gUnknown_08595B98, 40, 0, -10, 0, -10, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, 0, 0, 0, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -15, 0, -15, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, -10, 0, -10, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -5, 0, -5, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, 10, 0, 10, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -10, 0, -10, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, -20, 0, -20, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -20, 0, -20, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, 15, 0, 15, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -15, 0, -15, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, -20, 0, -20, 80, 0, 0, 1
+ delay 3
+ createsprite gUnknown_08595B98, 40, 0, -25, 0, -25, 72, 1
+ createsprite gUnknown_08595BB0, 40, 0, 20, 0, 20, 80, 0, 0, 1
+ delay 3
return
-
-AnimScript_82D0CB2:
+BlizzardAgainstPlayer:
fadetobg BG_HIGHSPEED_PLAYER
- goto AnimScript_82D0B43
+ goto BlizzardContinue
Move_POWDER_SNOW:
- loadspritegfx 0x279D
+ loadspritegfx ANIM_TAG_141
monbg ANIM_DEF_PARTNER
- createsprite gUnknown_08597274, 0x2, 31, 1, 0, 3, RGB_BLACK
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 1, 0, 3, RGB_BLACK
waitforvisualfinish
- panse_1B SE_W016, -64, +63, +2, 0x0
- call AnimScript_82D0D03
- call AnimScript_82D0D03
+ panse_1B SE_W016, -64, +63, +2, 0
+ call PowderSnow1
+ call PowderSnow1
playsewithpan SE_W016B, +63
waitforvisualfinish
waitsound
- call AnimScript_82D77A4
+ call FreezeEffect2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
- delay 0x14
- createsprite gUnknown_08597274, 0x2, 31, 1, 3, 0, RGB_BLACK
- end
-
-AnimScript_82D0D03:
- createsprite gUnknown_08595BC8, 0x28, 0, 0, 0, 0, 56, 4, 4, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, -10, 0, -10, 56, 4, 4, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, 10, 0, 10, 56, -4, 3, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, -20, 0, -20, 56, -4, 5, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, 15, 0, 15, 56, 4, 4, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, -20, 0, -20, 56, 4, 4, 1
- delay 0x3
- createsprite gUnknown_08595BC8, 0x28, 0, 20, 0, 20, 56, 4, 4, 1
- delay 0x3
+ delay 20
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 1, 3, 0, RGB_BLACK
+ end
+PowderSnow1:
+ createsprite gUnknown_08595BC8, 40, 0, 0, 0, 0, 56, 4, 4, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, -10, 0, -10, 56, 4, 4, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, 10, 0, 10, 56, -4, 3, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, -20, 0, -20, 56, -4, 5, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, 15, 0, 15, 56, 4, 4, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, -20, 0, -20, 56, 4, 4, 1
+ delay 3
+ createsprite gUnknown_08595BC8, 40, 0, 20, 0, 20, 56, 4, 4, 1
+ delay 3
return
Move_HYDRO_PUMP:
- loadspritegfx 0x27A5
- loadspritegfx 0x27A4
+ loadspritegfx ANIM_TAG_149
+ loadspritegfx ANIM_TAG_148
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 40, 1
- delay 0x6
- panse_1B SE_W056, -64, +63, +2, 0x0
- createvisualtask sub_81076C8, 0x5, 100
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 37, 1
- call AnimScript_82D0E93
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- call AnimScript_82D0E93
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- call AnimScript_82D0E93
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- call AnimScript_82D0E93
- call AnimScript_82D0E52
- call AnimScript_82D0E52
- call AnimScript_82D0E93
- delay 0x1
- delay 0x1
- call AnimScript_82D0E93
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1
+ delay 6
+ panse_1B SE_W056, -64, +63, +2, 0
+ createvisualtask sub_81076C8, 5, 100
+ call HydroPump1
+ call HydroPump1
+ call HydroPump1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 37, 1
+ call HydroPump2
+ call HydroPump1
+ call HydroPump1
+ call HydroPump2
+ call HydroPump1
+ call HydroPump1
+ call HydroPump2
+ call HydroPump1
+ call HydroPump1
+ call HydroPump2
+ call HydroPump1
+ call HydroPump1
+ call HydroPump2
+ delay 1
+ delay 1
+ call HydroPump2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D0E52:
- createsprite gUnknown_085950E4, 0x3, 10, 10, 0, 16
- createsprite gUnknown_085950E4, 0x3, 10, 10, 0, -16
- delay 0x1
- createsprite gUnknown_085950E4, 0x3, 10, 10, 0, 16
- createsprite gUnknown_085950E4, 0x3, 10, 10, 0, -16
- delay 0x1
+HydroPump1:
+ createsprite gUnknown_085950E4, 3, 10, 10, 0, 16
+ createsprite gUnknown_085950E4, 3, 10, 10, 0, -16
+ delay 1
+ createsprite gUnknown_085950E4, 3, 10, 10, 0, 16
+ createsprite gUnknown_085950E4, 3, 10, 10, 0, -16
+ delay 1
return
-
-AnimScript_82D0E93:
- createsprite gUnknown_08597388, 0x4, 0, 15, 1, 1
- createsprite gUnknown_08597388, 0x4, 0, -15, 1, 1
+HydroPump2:
+ createsprite gUnknown_08597388, 4, 0, 15, 1, 1
+ createsprite gUnknown_08597388, 4, 0, -15, 1, 1
return
Move_SIGNAL_BEAM:
- loadspritegfx 0x2818
- loadspritegfx 0x2819
- loadspritegfx 0x2759
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 25, 1
- delay 0x6
- panse_1B SE_W062, -64, +63, +1, 0x0
- createvisualtask sub_81076C8, 0x5, 100
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 25, 1
- createsprite gUnknown_0859728C, 0x2, 4, 8, 5, 31, 8, 961, 8
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- call AnimScript_82D0F79
- waitforvisualfinish
- end
-
-AnimScript_82D0F79:
- createsprite gUnknown_08595114, 0x83, 10, 10, 0, 16
- createsprite gUnknown_0859512C, 0x83, 10, 10, 0, -16
- delay 0x1
+ loadspritegfx ANIM_TAG_264
+ loadspritegfx ANIM_TAG_265
+ loadspritegfx ANIM_TAG_DUCK
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 25, 1
+ delay 6
+ panse_1B SE_W062, -64, +63, +1, 0
+ createvisualtask sub_81076C8, 5, 100
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 25, 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 4, 8, 5, RGB_RED, 8, 961, 8
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ call SignalBeam1
+ waitforvisualfinish
+ end
+SignalBeam1:
+ createsprite gUnknown_08595114, 131, 10, 10, 0, 16
+ createsprite gUnknown_0859512C, 131, 10, 10, 0, -16
+ delay 1
return
Move_ABSORB:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 4, RGB(13, 31, 12)
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 4, RGB(13, 31, 12)
waitforvisualfinish
playsewithpan SE_W071, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- delay 0x2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 5, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1
waitforvisualfinish
- delay 0x3
- call AnimScript_82D1009
+ delay 3
+ call AbsorbEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 4, 0, RGB(13, 31, 12)
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 4, 0, RGB(13, 31, 12)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D1009:
+AbsorbEffect:
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W152, +63
- createsprite gUnknown_08592270, 0x3, 5, -18, -20, 35
- delay 0x4
+ createsprite gUnknown_08592270, 3, 5, -18, -20, 35
+ delay 4
return
Move_MEGA_DRAIN:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 8, RGB(13, 31, 12)
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 8, RGB(13, 31, 12)
waitforvisualfinish
playsewithpan SE_W071, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 1
- delay 0x2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 5, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 1
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1
waitforvisualfinish
- delay 0x3
- call AnimScript_82D1121
+ delay 3
+ call MegaDrainEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 8, 0, RGB(13, 31, 12)
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 8, 0, RGB(13, 31, 12)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D1121:
+MegaDrainEffect:
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -20, 35
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -20, 35
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W145C, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -20, 35
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -20, 35
+ delay 4
return
Move_GIGA_DRAIN:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 12, RGB(13, 31, 12)
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 12, RGB(13, 31, 12)
waitforvisualfinish
playsewithpan SE_W071, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
- delay 0x2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 5, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1
waitforvisualfinish
- delay 0x3
- call AnimScript_82D12B1
+ delay 3
+ call GigaDrainEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 12, 0, RGB(13, 31, 12)
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 12, 0, RGB(13, 31, 12)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D12B1:
+GigaDrainEffect:
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -40, 35
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -40, 35
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 28, 26
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -10, 20, 40, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 28, 26
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -10, 20, 40, 39
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -32, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -32, 26
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -40, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -40, 26
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 36, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 36, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W202, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -20, 35
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -20, 35
+ delay 4
return
Move_LEECH_LIFE:
- loadspritegfx 0x27B1
- loadspritegfx 0x27A3
- delay 0x1
- loadspritegfx 0x272F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_161
+ loadspritegfx ANIM_TAG_147
+ delay 1
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- setalpha 0x80C
- delay 0x1
- createsprite gUnknown_085969C8, 0x2, -20, 15, 12
+ setalpha 12, 8
+ delay 1
+ createsprite gUnknown_085969C8, 2, -20, 15, 12
waitforvisualfinish
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
playsewithpan SE_W071, +63
- delay 0x2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 5, 1
+ delay 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 7, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 7, RGB_BLACK
waitforvisualfinish
- call AnimScript_82D1009
+ call AbsorbEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 7, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 7, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SYNTHESIS:
- loadspritegfx 0x2741
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 16, 19451
+ loadspritegfx ANIM_TAG_SPARKLE
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 16, RGB(27, 31, 18)
playsewithpan SE_W025, -64
- call AnimScript_82D79B4
+ call GrantingStarsEffect
waitforvisualfinish
- unloadspritegfx 0x2741
- delay 0x1
- loadspritegfx 0x272F
- call AnimScript_82D79DF
+ unloadspritegfx ANIM_TAG_SPARKLE
+ delay 1
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ call HealingEffect
waitforvisualfinish
end
Move_TOXIC:
- loadspritegfx 0x27A7
- loadspritegfx 0x27A6
- call AnimScript_82D1515
- call AnimScript_82D1515
+ loadspritegfx ANIM_TAG_TOXIC_BUBBLE
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
+ call Toxic1
+ call Toxic1
waitforvisualfinish
- delay 0xF
- call AnimScript_82D7A71
+ delay 15
+ call PoisonBubblesEffect
waitforvisualfinish
end
-
-AnimScript_82D1515:
- createsprite gUnknown_08596134, 0x82, -24, 16, 1, 1
+Toxic1:
+ createsprite gUnknown_08596134, 130, -24, 16, 1, 1
playsewithpan SE_W092, +63
- delay 0xF
- createsprite gUnknown_08596134, 0x82, 8, 16, 1, 1
+ delay 15
+ createsprite gUnknown_08596134, 130, 8, 16, 1, 1
playsewithpan SE_W092, +63
- delay 0xF
- createsprite gUnknown_08596134, 0x82, -8, 16, 1, 1
+ delay 15
+ createsprite gUnknown_08596134, 130, -8, 16, 1, 1
playsewithpan SE_W092, +63
- delay 0xF
- createsprite gUnknown_08596134, 0x82, 24, 16, 1, 1
+ delay 15
+ createsprite gUnknown_08596134, 130, 24, 16, 1, 1
playsewithpan SE_W092, +63
- delay 0xF
+ delay 15
return
Move_SLUDGE:
- loadspritegfx 0x27A6
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
playsewithpan SE_W145C, -64
- createsprite gUnknown_085961A8, 0x82, 20, 0, 40, 0
+ createsprite gUnknown_085961A8, 130, 20, 0, 40, 0
waitforvisualfinish
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 5, 1
- createvisualtask sub_8115A04, 0x2, 4, 1, 2, 0, 12, 31774
- call AnimScript_82D7A71
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1
+ createvisualtask sub_8115A04, 2, 4, 1, 2, 0, 12, RGB(30, 0, 31)
+ call PoisonBubblesEffect
waitforvisualfinish
end
Move_SLUDGE_BOMB:
- loadspritegfx 0x27A6
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- call AnimScript_82D16BC
- createvisualtask sub_80D52D0, 0x5, 1, 3, 0, 15, 1
- createvisualtask sub_8115A04, 0x2, 4, 1, 2, 0, 12, 31774
- createsprite gUnknown_085961D8, 0x82, 42, 27, 20
- createsprite gUnknown_085961D8, 0x82, -27, 44, 20
- createsprite gUnknown_085961D8, 0x82, 39, -28, 20
- createsprite gUnknown_085961D8, 0x82, -42, -42, 20
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ call SludgeBomb1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 3, 0, 15, 1
+ createvisualtask sub_8115A04, 2, 4, 1, 2, 0, 12, RGB(30, 0, 31)
+ createsprite gUnknown_085961D8, 130, 42, 27, 20
+ createsprite gUnknown_085961D8, 130, -27, 44, 20
+ createsprite gUnknown_085961D8, 130, 39, -28, 20
+ createsprite gUnknown_085961D8, 130, -42, -42, 20
playsewithpan SE_W091, +63
- delay 0x5
- createsprite gUnknown_085961D8, 0x82, 0, 40, 20
- createsprite gUnknown_085961D8, 0x82, -8, -44, 20
- createsprite gUnknown_085961D8, 0x82, -46, -28, 20
- createsprite gUnknown_085961D8, 0x82, 46, 9, 20
+ delay 5
+ createsprite gUnknown_085961D8, 130, 0, 40, 20
+ createsprite gUnknown_085961D8, 130, -8, -44, 20
+ createsprite gUnknown_085961D8, 130, -46, -28, 20
+ createsprite gUnknown_085961D8, 130, 46, 9, 20
playsewithpan SE_W091, +63
- delay 0x5
- createsprite gUnknown_085961D8, 0x82, 42, 0, 20
- createsprite gUnknown_085961D8, 0x82, -43, -12, 20
- createsprite gUnknown_085961D8, 0x82, 16, -46, 20
- createsprite gUnknown_085961D8, 0x82, -16, 44, 20
+ delay 5
+ createsprite gUnknown_085961D8, 130, 42, 0, 20
+ createsprite gUnknown_085961D8, 130, -43, -12, 20
+ createsprite gUnknown_085961D8, 130, 16, -46, 20
+ createsprite gUnknown_085961D8, 130, -16, 44, 20
playsewithpan SE_W091, +63
- delay 0x0
+ delay 0
waitsound
waitforvisualfinish
- call AnimScript_82D7A71
+ call PoisonBubblesEffect
waitforvisualfinish
end
-
-AnimScript_82D16BC:
+SludgeBomb1:
playsewithpan SE_W145C, -64
- createsprite gUnknown_085961A8, 0x82, 20, 0, 40, 0
- delay 0x3
+ createsprite gUnknown_085961A8, 130, 20, 0, 40, 0
+ delay 3
return
Move_ACID:
- loadspritegfx 0x27A6
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
monbg ANIM_DEF_PARTNER
- createsprite gUnknown_085961C0, 0x82, 20, 0, 40, 1, 0, 0
+ createsprite gUnknown_085961C0, 130, 20, 0, 40, 1, 0, 0
playsewithpan SE_W145C, -64
- delay 0x5
- createsprite gUnknown_085961C0, 0x82, 20, 0, 40, 1, 24, 0
+ delay 5
+ createsprite gUnknown_085961C0, 130, 20, 0, 40, 1, 24, 0
playsewithpan SE_W145C, -64
- delay 0x5
- createsprite gUnknown_085961C0, 0x82, 20, 0, 40, 1, -24, 0
+ delay 5
+ createsprite gUnknown_085961C0, 130, 20, 0, 40, 1, -24, 0
playsewithpan SE_W145C, -64
- delay 0xF
- createvisualtask sub_80D52D0, 0x5, 1, 2, 0, 10, 1
- createvisualtask sub_80D52D0, 0x5, 3, 2, 0, 10, 1
- createvisualtask sub_8115A04, 0x2, 20, 2, 2, 0, 12, 31774
- createsprite gUnknown_0859620C, 0x82, 0, -22, 0, 15, 55
+ delay 15
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_DEF_PARTNER, 2, 0, 10, 1
+ createvisualtask sub_8115A04, 2, 20, 2, 2, 0, 12, RGB(30, 0, 31)
+ createsprite gUnknown_0859620C, 130, 0, -22, 0, 15, 55
playsewithpan SE_W145, +63
- delay 0xA
- createsprite gUnknown_0859620C, 0x82, -26, -24, 0, 15, 55
+ delay 10
+ createsprite gUnknown_0859620C, 130, -26, -24, 0, 15, 55
playsewithpan SE_W145, +63
- delay 0xA
- createsprite gUnknown_0859620C, 0x82, 15, -27, 0, 15, 50
+ delay 10
+ createsprite gUnknown_0859620C, 130, 15, -27, 0, 15, 50
playsewithpan SE_W145, +63
- delay 0xA
- createsprite gUnknown_0859620C, 0x82, -15, -17, 0, 10, 45
+ delay 10
+ createsprite gUnknown_0859620C, 130, -15, -17, 0, 10, 45
playsewithpan SE_W145, +63
- delay 0xA
- createsprite gUnknown_0859620C, 0x82, 27, -22, 0, 15, 50
+ delay 10
+ createsprite gUnknown_0859620C, 130, 27, -22, 0, 15, 50
playsewithpan SE_W145, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_BONEMERANG:
- loadspritegfx 0x2710
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_BONE
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W155, -64
- createsprite gUnknown_08597178, 0x2
- delay 0x14
+ createsprite gUnknown_08597178, 2
+ delay 20
playsewithpan SE_W030, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 5, 0, 5, 1
- delay 0x11
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 5, 1
+ delay 17
playsewithpan SE_W233, -64
- createsprite gUnknown_0857FE28, 0x2, 6, -4
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, -4
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_BONE_CLUB:
- loadspritegfx 0x2710
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_BONE
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W155, +63
- createsprite gUnknown_08597190, 0x2, -42, -25, 0, 0, 15
- delay 0xC
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 5, 1
- createsprite gUnknown_0859728C, 0x2, 7, 5, 1, 0, 10, 0, 0
+ createsprite gUnknown_08597190, 2, -42, -25, 0, 0, 15
+ delay 12
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 7, 5, 1, RGB_BLACK, 10, 0, 0
playsewithpan SE_W233B, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6151,15 +6066,15 @@ Move_BONE_CLUB:
end
Move_BONE_RUSH:
- loadspritegfx 0x2710
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_BONE
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W155, +63
- createsprite gUnknown_08597190, 0x2, -42, -25, 0, 0, 15
- delay 0xC
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 0, 3, 5, 1
+ createsprite gUnknown_08597190, 2, -42, -25, 0, 0, 15
+ delay 12
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 5, 1
playsewithpan SE_W030, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6167,79 +6082,77 @@ Move_BONE_RUSH:
end
Move_SPIKES:
- loadspritegfx 0x27A8
+ loadspritegfx ANIM_TAG_152
monbg ANIM_DEF_PARTNER
playsewithpan SE_W026, -64
- waitplaysewithpan SE_W030, +63, 0x1C
- createsprite gUnknown_085CE11C, 0x82, 20, 0, 0, 24, 30
- delay 0xA
+ waitplaysewithpan SE_W030, +63, 28
+ createsprite gUnknown_085CE11C, 130, 20, 0, 0, 24, 30
+ delay 10
playsewithpan SE_W026, -64
- waitplaysewithpan SE_W030, +63, 0x1C
- createsprite gUnknown_085CE11C, 0x82, 20, 0, -24, 24, 30
- delay 0xA
- waitplaysewithpan SE_W030, +63, 0x1C
- createsprite gUnknown_085CE11C, 0x82, 20, 0, 24, 24, 30
+ waitplaysewithpan SE_W030, +63, 28
+ createsprite gUnknown_085CE11C, 130, 20, 0, -24, 24, 30
+ delay 10
+ waitplaysewithpan SE_W030, +63, 28
+ createsprite gUnknown_085CE11C, 130, 20, 0, 24, 24, 30
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_MEGAHORN:
- loadspritegfx 0x27A9
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_153
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
playsewithpan SE_W082, -64
- jumpifcontest AnimScript_82D19FA
+ jumpifcontest MegahornInContest
fadetobg BG_DRILL
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 768, 1, -1
-
-AnimScript_82D1947:
+ createvisualtask sub_8117660, 5, -2304, 768, 1, -1
+MegahornContinue:
waitbgfadein
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x5, 0, 2, 0, 15, 1
- waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 6
- delay 0x3
- createsprite gUnknown_08596974, 0x3, -42, 25, 0, 0, 6
- delay 0x4
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 2, 0, 15, 1
+ waitforvisualfinish
+ delay 10
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 6
+ delay 3
+ createsprite gUnknown_08596974, 3, -42, 25, 0, 0, 6
+ delay 4
playsewithpan SE_W011, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
- createsprite gUnknown_0857FE70, 0x2, 1, -16, 4, 1, 4
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -16, 4, 1, 4
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 1, -4, 1, 12, 1
- createsprite gUnknown_0859728C, 0x2, 7, 5, 1, 0x7FFF, 10, 0, 0
- delay 0xA
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 11
- delay 0x3
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 7
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, -4, 1, 12, 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 7, 5, 1, RGB_WHITE, 10, 0, 0
+ delay 10
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 11
+ delay 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 7
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
-
-AnimScript_82D19FA:
+MegahornInContest:
fadetobg BG_DRILL_CONTESTS
waitbgfadeout
- createvisualtask sub_8117660, 0x5, 2304, 768, 0, -1
- goto AnimScript_82D1947
+ createvisualtask sub_8117660, 5, 2304, 768, 0, -1
+ goto MegahornContinue
Move_GUST:
- loadspritegfx 0x2719
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_GUST
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W016, +63
- createsprite gUnknown_08596270, 0x2, 0, -16
- createvisualtask sub_810DED8, 0x5, 1, 70
+ createsprite gUnknown_08596270, 2, 0, -16
+ createvisualtask sub_810DED8, 5, 1, 70
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x5, 1, 1, 0, 7, 1
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 1, 0, 7, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
playsewithpan SE_W016B, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6247,97 +6160,96 @@ Move_GUST:
end
Move_WING_ATTACK:
- loadspritegfx 0x2719
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_GUST
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- loopsewithpan SE_W017, -64, 0x14, 0x2
- createvisualtask sub_80D5738, 0x2, 0, 12, 4, 1, 4
- createvisualtask sub_810DED8, 0x5, 1, 70
- createsprite gUnknown_085962A4, 0x2, -25, 0, 0, 0, 20
- createsprite gUnknown_085962A4, 0x2, 25, 0, 0, 0, 20
- delay 0x18
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 9
- delay 0x11
- createsprite gUnknown_08597358, 0x2, 16, 0, 1, 1
- createsprite gUnknown_08597358, 0x2, -16, 0, 1, 1
- loopsewithpan SE_W003, +63, 0x5, 0x2
- waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 11
+ setalpha 12, 8
+ loopsewithpan SE_W017, -64, 20, 2
+ createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4
+ createvisualtask sub_810DED8, 5, 1, 70
+ createsprite gBattleAnimSpriteTemplate_85962A4, 2, -25, 0, 0, 0, 20
+ createsprite gBattleAnimSpriteTemplate_85962A4, 2, 25, 0, 0, 0, 20
+ delay 24
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 9
+ delay 17
+ createsprite gBasicHitSplatSpriteTemplate, 2, 16, 0, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, -16, 0, 1, 1
+ loopsewithpan SE_W003, +63, 5, 2
+ waitforvisualfinish
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 11
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_PECK:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
playsewithpan SE_W030, +63
- createvisualtask sub_80D622C, 0x2, 3, -768, 1, 2
- createsprite gUnknown_085973E8, 0x83, -12, 0, 1, 3
+ createvisualtask sub_80D622C, 2, 3, -768, 1, 2
+ createsprite gUnknown_085973E8, 131, -12, 0, 1, 3
waitforvisualfinish
end
Move_AEROBLAST:
- loadspritegfx 0x27AA
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_154
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- call AnimScript_82D7CE5
+ call SetFlyingBg
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- call AnimScript_82D1B82
- createvisualtask sub_80D51AC, 0x5, 1, 5, 0, 50, 1
- call AnimScript_82D1B82
- call AnimScript_82D1B82
- call AnimScript_82D1B82
- call AnimScript_82D1B82
- waitforvisualfinish
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
+ setalpha 12, 8
+ call Aeroblast1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 50, 1
+ call Aeroblast1
+ call Aeroblast1
+ call Aeroblast1
+ call Aeroblast1
+ waitforvisualfinish
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
playsewithpan SE_W013, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- delay 0x0
- call AnimScript_82D7D15
+ delay 0
+ call UnsetFlyingBg
end
-
-AnimScript_82D1B82:
+Aeroblast1:
playsewithpan SE_W026, -64
- createsprite gUnknown_085962D4, 0x2, 14, -12, 0, -12, 15, 0, 0
- createsprite gUnknown_085962D4, 0x2, 26, 8, 12, 8, 15, 0, 0
- delay 0x3
+ createsprite gUnknown_085962D4, 2, 14, -12, 0, -12, 15, 0, 0
+ createsprite gUnknown_085962D4, 2, 26, 8, 12, 8, 15, 0, 0
+ delay 3
playsewithpan SE_W026, -64
- createsprite gUnknown_085962D4, 0x2, 14, -12, 0, -12, 15, 1, 0
- createsprite gUnknown_085962D4, 0x2, 26, 8, 12, 8, 15, 1, 0
- delay 0x3
+ createsprite gUnknown_085962D4, 2, 14, -12, 0, -12, 15, 1, 0
+ createsprite gUnknown_085962D4, 2, 26, 8, 12, 8, 15, 1, 0
+ delay 3
playsewithpan SE_W026, -64
- createsprite gUnknown_085962D4, 0x2, 14, -12, 0, -12, 15, 2, 0
- createsprite gUnknown_085962D4, 0x2, 26, 8, 12, 8, 15, 2, 0
- delay 0x3
+ createsprite gUnknown_085962D4, 2, 14, -12, 0, -12, 15, 2, 0
+ createsprite gUnknown_085962D4, 2, 26, 8, 12, 8, 15, 2, 0
+ delay 3
playsewithpan SE_W026, -64
- createsprite gUnknown_085962D4, 0x2, 14, -12, 0, -12, 15, 3, 0
- createsprite gUnknown_085962D4, 0x2, 26, 8, 12, 8, 15, 3, 0
- delay 0x3
+ createsprite gUnknown_085962D4, 2, 14, -12, 0, -12, 15, 3, 0
+ createsprite gUnknown_085962D4, 2, 26, 8, 12, 8, 15, 3, 0
+ delay 3
return
Move_WATER_GUN:
- loadspritegfx 0x27AB
- loadspritegfx 0x27A4
+ loadspritegfx ANIM_TAG_155
+ loadspritegfx ANIM_TAG_148
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08595208, 0x2, 20, 0, 0, 0, 40, -25
+ setalpha 12, 8
+ createsprite gUnknown_08595208, 2, 20, 0, 0, 0, 40, -25
playsewithpan SE_W145, -64
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x5, 1, 1, 0, 8, 1
- createsprite gUnknown_08597388, 0x4, 0, 0, 1, 2
- createsprite gUnknown_08595220, 0x2, 0, -15, 0, 15, 55
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 1, 0, 8, 1
+ createsprite gUnknown_08597388, 4, 0, 0, 1, 2
+ createsprite gUnknown_08595220, 2, 0, -15, 0, 15, 55
playsewithpan SE_W152, +63
- delay 0xA
- createsprite gUnknown_08595220, 0x2, 15, -20, 0, 15, 50
+ delay 10
+ createsprite gUnknown_08595220, 2, 15, -20, 0, 15, 50
playsewithpan SE_W152, +63
- delay 0xA
- createsprite gUnknown_08595220, 0x2, -15, -10, 0, 10, 45
+ delay 10
+ createsprite gUnknown_08595220, 2, -15, -10, 0, 10, 45
playsewithpan SE_W152, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6345,237 +6257,235 @@ Move_WATER_GUN:
end
Move_CRABHAMMER:
- loadspritegfx 0x279D
- loadspritegfx 0x27A4
+ loadspritegfx ANIM_TAG_141
+ loadspritegfx ANIM_TAG_148
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_08597388, 0x4, 0, 0, 1, 0
+ setalpha 12, 8
+ createsprite gUnknown_08597388, 4, 0, 0, 1, 0
playsewithpan SE_W233B, +63
- delay 0x1
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 32429, 10, 0, 0
- createsprite gUnknown_0857FE70, 0x2, 1, -24, 0, 0, 4
- waitforvisualfinish
- delay 0x8
- waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 4
- waitforvisualfinish
- loopsewithpan SE_W152, +63, 0x14, 0x3
- createvisualtask sub_80D51AC, 0x5, 1, 0, 4, 8, 1
- createsprite gUnknown_08595238, 0x2, 10, 10, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, 20, -20, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, -15, 15, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, 0, 0, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, -10, -20, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, 16, -8, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, 5, 8, 20, 1
- delay 0x4
- createsprite gUnknown_08595238, 0x2, -16, 0, 20, 1
+ delay 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB(13, 21, 31), 10, 0, 0
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -24, 0, 0, 4
+ waitforvisualfinish
+ delay 8
+ waitforvisualfinish
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 4
+ waitforvisualfinish
+ loopsewithpan SE_W152, +63, 20, 3
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 8, 1
+ createsprite gUnknown_08595238, 2, 10, 10, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, 20, -20, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, -15, 15, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, 0, 0, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, -10, -20, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, 16, -8, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, 5, 8, 20, 1
+ delay 4
+ createsprite gUnknown_08595238, 2, -16, 0, 20, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SURF:
- createvisualtask sub_8107954, 0x2, 0
- delay 0x18
- panse_1B SE_W057, -64, +63, +2, 0x0
+ createvisualtask AnimTask_CreateSurfWave, 2, FALSE
+ delay 24
+ panse_1B SE_W057, -64, +63, +2, 0
waitforvisualfinish
end
Move_FLAMETHROWER:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 46, 1
- delay 0x6
- createvisualtask sub_81076C8, 0x5, 100
- panse_1B SE_W053, -64, +63, +2, 0x0
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 43, 1
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
- call AnimScript_82D1E58
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1
+ delay 6
+ createvisualtask sub_81076C8, 5, 100
+ panse_1B SE_W053, -64, +63, +2, 0
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 43, 1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
+ call Flamethrower1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D1E58:
- createsprite gUnknown_08595158, 0x3, 10, 10, 0, 16
- delay 0x2
- createsprite gUnknown_08595158, 0x3, 10, 10, 0, 16
- delay 0x2
+Flamethrower1:
+ createsprite gUnknown_08595158, 3, 10, 10, 0, 16
+ delay 2
+ createsprite gUnknown_08595158, 3, 10, 10, 0, 16
+ delay 2
return
Move_SANDSTORM:
- loadspritegfx 0x2815
+ loadspritegfx ANIM_TAG_261
playsewithpan SE_W201, 0
- createvisualtask sub_8110BCC, 0x5, 0
- delay 0x10
- createsprite gUnknown_08596BA0, 0x28, 10, 2304, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 90, 2048, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 50, 2560, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 20, 2304, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 70, 1984, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 0, 2816, 96, 0
- delay 0xA
- createsprite gUnknown_08596BA0, 0x28, 60, 2560, 96, 0
+ createvisualtask AnimTask_LoadSandstormBackground, 5, FALSE
+ delay 16
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 10, 2304, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 90, 2048, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 50, 2560, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 20, 2304, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 70, 1984, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 0, 2816, 96, 0
+ delay 10
+ createsprite gBattleAnimSpriteTemplate_8596BA0, 40, 60, 2560, 96, 0
end
Move_WHIRLPOOL:
- loadspritegfx 0x27A5
+ loadspritegfx ANIM_TAG_149
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- delay 0x0
- createsprite gUnknown_08597274, 0x0, 4, 2, 0, 7, RGB(0, 13, 23)
+ setalpha 12, 8
+ delay 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 0, 7, RGB(0, 13, 23)
playsewithpan SE_W250, +63
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 50, 1
- call AnimScript_82D1F5B
- call AnimScript_82D1F5B
- call AnimScript_82D1F5B
- delay 0xC
- createsprite gUnknown_08597274, 0x0, 4, 2, 7, 0, RGB(0, 13, 23)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 50, 1
+ call WhirlpoolEffect
+ call WhirlpoolEffect
+ call WhirlpoolEffect
+ delay 12
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 7, 0, RGB(0, 13, 23)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-AnimScript_82D1F5B:
- createsprite gUnknown_08596B70, 0x82, 0, 28, 384, 50, 8, 50, 1
- delay 0x2
- createsprite gUnknown_08596B70, 0x82, 0, 32, 240, 40, 11, -46, 1
- delay 0x2
- createsprite gUnknown_08596B70, 0x82, 0, 33, 416, 40, 4, 42, 1
- delay 0x2
- createsprite gUnknown_08596B70, 0x82, 0, 31, 288, 45, 6, -42, 1
- delay 0x2
- createsprite gUnknown_08596B70, 0x82, 0, 28, 448, 45, 11, 46, 1
- delay 0x2
- createsprite gUnknown_08596B70, 0x82, 0, 33, 464, 50, 10, -50, 1
- delay 0x2
+WhirlpoolEffect:
+ createsprite gUnknown_08596B70, 130, 0, 28, 384, 50, 8, 50, 1
+ delay 2
+ createsprite gUnknown_08596B70, 130, 0, 32, 240, 40, 11, -46, 1
+ delay 2
+ createsprite gUnknown_08596B70, 130, 0, 33, 416, 40, 4, 42, 1
+ delay 2
+ createsprite gUnknown_08596B70, 130, 0, 31, 288, 45, 6, -42, 1
+ delay 2
+ createsprite gUnknown_08596B70, 130, 0, 28, 448, 45, 11, 46, 1
+ delay 2
+ createsprite gUnknown_08596B70, 130, 0, 33, 464, 50, 10, -50, 1
+ delay 2
return
Move_FLY:
- loadspritegfx 0x27AC
- loadspritegfx 0x2797
- choosetwoturnanim AnimScript_82D1FF7, AnimScript_82D200F
-
-AnimScript_82D1FF5:
+ loadspritegfx ANIM_TAG_156
+ loadspritegfx ANIM_TAG_135
+ choosetwoturnanim FlySetUp, FlyUnleash
+FlyEnd:
waitforvisualfinish
end
-AnimScript_82D1FF7:
+FlySetUp:
playsewithpan SE_W019, -64
- createsprite gUnknown_08596340, 0x2, 0, 0, 13, 336
- goto AnimScript_82D1FF5
+ createsprite gUnknown_08596340, 2, 0, 0, 13, 336
+ goto FlyEnd
-AnimScript_82D200F:
+FlyUnleash:
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W104, -64
- createsprite gUnknown_08596358, 0x2, 20
- delay 0x14
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 0
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
+ createsprite gUnknown_08596358, 2, 20
+ delay 20
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
playsewithpan SE_W013, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82D1FF5
+ goto FlyEnd
Move_BOUNCE:
- loadspritegfx 0x27AC
- loadspritegfx 0x2797
- choosetwoturnanim AnimScript_82D2060, AnimScript_82D2074
-
-AnimScript_82D205F:
+ loadspritegfx ANIM_TAG_156
+ loadspritegfx ANIM_TAG_135
+ choosetwoturnanim BounceSetUp, BounceUnleash
+BounceEnd:
end
-AnimScript_82D2060:
+BounceSetUp:
playsewithpan SE_W100, -64
- createsprite gUnknown_08596420, 0x2, 0, 0
- goto AnimScript_82D205F
+ createsprite gUnknown_08596420, 2, 0, 0
+ goto BounceEnd
-AnimScript_82D2074:
+BounceUnleash:
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W207, +63
- createsprite gUnknown_0859644C, 0x83
- delay 0x7
+ createsprite gUnknown_0859644C, 131
+ delay 7
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 0
- createvisualtask sub_80D51AC, 0x5, 1, 0, 5, 11, 1
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 11, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82D205F
+ goto BounceEnd
Move_KARATE_CHOP:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W104, +63
- createsprite gUnknown_08595E68, 0x2, -16, 0, 0, 0, 10, 1, 3, 0
+ createsprite gUnknown_08595E68, 2, -16, 0, 0, 0, 10, 1, 3, 0
waitforvisualfinish
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 4, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_CROSS_CHOP:
- loadspritegfx 0x279F
- loadspritegfx 0x282D
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_285
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W025, +63
- createsprite gUnknown_08595EC8, 0x2, 0, 0, 0
- createsprite gUnknown_08595EC8, 0x2, 0, 0, 1
- delay 0x28
+ createsprite gUnknown_08595EC8, 2, 0, 0, 0
+ createsprite gUnknown_08595EC8, 2, 0, 0, 1
+ delay 40
playsewithpan SE_W013, +63
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0x7FFF, 10, 0, 10
- createsprite gUnknown_085973D0, 0x3, 0, 0, 1, 20
- createvisualtask sub_80D51AC, 0x5, 1, 7, 0, 9, 1
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_WHITE, 10, 0, 10
+ createsprite gUnknown_085973D0, 3, 0, 0, 1, 20
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 7, 0, 9, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_JUMP_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x3
- createsprite gUnknown_08595E80, 0x2, -16, 8, 0, 0, 10, 1, 1, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 3
+ createsprite gUnknown_08595E80, 2, -16, 8, 0, 0, 10, 1, 1, 1
playsewithpan SE_W026, +63
waitforvisualfinish
- createsprite gUnknown_08597358, 0x1, 0, 0, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 5, 0, 7, 1
+ createsprite gBasicHitSplatSpriteTemplate, 1, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 7, 1
playsewithpan SE_W004, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6583,38 +6493,38 @@ Move_JUMP_KICK:
end
Move_HI_JUMP_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_0857FE70, 0x2, 0, -24, 0, 0, 8
+ setalpha 12, 8
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, -24, 0, 0, 8
waitforvisualfinish
- delay 0xA
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 3
- delay 0x2
- createsprite gUnknown_08595E80, 0x2, -16, 8, 0, 0, 10, 1, 1, 1
+ delay 10
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 3
+ delay 2
+ createsprite gUnknown_08595E80, 2, -16, 8, 0, 0, 10, 1, 1, 1
playsewithpan SE_W026, +63
waitforvisualfinish
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_0857FE70, 0x2, 1, -28, 0, 0, 3
- delay 0x3
- createvisualtask sub_80D5484, 0x2, 1, 3, 0, 11, 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -28, 0, 0, 3
+ delay 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 11, 1
waitforvisualfinish
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 6
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 6
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_DOUBLE_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_08595EB0, 0x3, 1, 20, 1
- createvisualtask sub_80D51AC, 0x5, 1, 4, 0, 6, 1
+ setalpha 12, 8
+ createsprite gUnknown_08595EB0, 3, 1, 20, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1
playsewithpan SE_W233B, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -6622,329 +6532,328 @@ Move_DOUBLE_KICK:
end
Move_TRIPLE_KICK:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W233B, +63
- jumpifmoveturn 0x0, AnimScript_82D22B8
- jumpifmoveturn 0x1, AnimScript_82D22EE
- goto AnimScript_82D2324
-
-AnimScript_82D22B3:
+ jumpifmoveturn 0, TripleKickLeft
+ jumpifmoveturn 1, TripleKickRight
+ goto TripleKickCenter
+TripleKickContinue:
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D22B8:
- createsprite gUnknown_08595E98, 0x84, -16, -8, 20, 1, 1
- createsprite gUnknown_08597358, 0x83, -16, -16, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 4, 0, 6, 1
- goto AnimScript_82D22B3
+TripleKickLeft:
+ createsprite gFistFootSpriteTemplate, 132, -16, -8, 20, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, -16, -16, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1
+ goto TripleKickContinue
-AnimScript_82D22EE:
- createsprite gUnknown_08595E98, 0x84, 8, 8, 20, 1, 1
- createsprite gUnknown_08597358, 0x83, 8, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 4, 0, 6, 1
- goto AnimScript_82D22B3
+TripleKickRight:
+ createsprite gFistFootSpriteTemplate, 132, 8, 8, 20, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 8, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1
+ goto TripleKickContinue
-AnimScript_82D2324:
- createsprite gUnknown_08595E98, 0x84, 0, 0, 20, 1, 1
- createsprite gUnknown_08597358, 0x83, 0, -8, 1, 1
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- goto AnimScript_82D22B3
+TripleKickCenter:
+ createsprite gFistFootSpriteTemplate, 132, 0, 0, 20, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, -8, 1, 1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ goto TripleKickContinue
Move_DYNAMIC_PUNCH:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
- loadspritegfx 0x27D6
- loadspritegfx 0x2717
- delay 0x1
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_EXPLOSION
+ loadspritegfx ANIM_TAG_007
+ delay 1
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W233B, +63
- createsprite gUnknown_08595E98, 0x83, 0, 0, 20, 1, 0
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 0
- createvisualtask sub_80D51AC, 0x5, 1, 5, 0, 7, 1
- delay 0x1
+ createsprite gFistFootSpriteTemplate, 131, 0, 0, 20, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 5, 0, 7, 1
+ delay 1
waitsound
playsewithpan SE_W120, +63
- createvisualtask sub_80D52D0, 0x5, 1, 5, 0, 28, 1
- createsprite gUnknown_0859371C, 0x3, 0, 0, 1, 1
- delay 0x6
+ createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 5, 0, 28, 1
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 0, 0, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, 24, -24, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 24, -24, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, -16, 16, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -16, 16, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, -24, -12, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -24, -12, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, 16, 16, 1, 1
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 16, 16, 1, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_COUNTER:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80D5830, 0x2, 0, 18, 6, 1, 4
+ setalpha 12, 8
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 4
playsewithpan SE_W233, -64
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 0, 0, 4
- delay 0x4
- createsprite gUnknown_08597358, 0x2, -15, 18, 1, 0
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 0, 0, 4
+ delay 4
+ createsprite gBasicHitSplatSpriteTemplate, 2, -15, 18, 1, 0
playsewithpan SE_W233B, +63
- delay 0x1
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 25, 1
- createsprite gUnknown_08595E98, 0x3, -15, 18, 8, 1, 0
- delay 0x3
- createsprite gUnknown_08597358, 0x2, 0, -4, 1, 0
+ delay 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 25, 1
+ createsprite gFistFootSpriteTemplate, 3, -15, 18, 8, 1, 0
+ delay 3
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, -4, 1, 0
playsewithpan SE_W233B, +63
- delay 0x1
- createsprite gUnknown_08595E98, 0x3, 0, -4, 8, 1, 0
- delay 0x3
- createsprite gUnknown_08597358, 0x2, 15, 9, 1, 0
+ delay 1
+ createsprite gFistFootSpriteTemplate, 3, 0, -4, 8, 1, 0
+ delay 3
+ createsprite gBasicHitSplatSpriteTemplate, 2, 15, 9, 1, 0
playsewithpan SE_W233B, +63
- delay 0x1
- createsprite gUnknown_08595E98, 0x3, 15, 9, 8, 1, 0
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
+ delay 1
+ createsprite gFistFootSpriteTemplate, 3, 15, 9, 8, 1, 0
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_VITAL_THROW:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W233, -64
- createvisualtask sub_80D5830, 0x2, 0, 12, 4, 1, 2
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 4, 1, 2
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 20, 0, 0, 4
- delay 0x2
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 20, 0, 0, 4
+ delay 2
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
playsewithpan SE_W233B, +63
- delay 0x1
- createsprite gUnknown_0857FE70, 0x2, 1, -24, 0, 0, 4
+ delay 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -24, 0, 0, 4
waitforvisualfinish
- delay 0x3
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 7
- delay 0xB
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 10
+ delay 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 7
+ delay 11
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 10
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_ROCK_SMASH:
- loadspritegfx 0x274A
- loadspritegfx 0x2797
- loadspritegfx 0x279F
+ loadspritegfx ANIM_TAG_058
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- delay 0x1
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createsprite gUnknown_08595E98, 0x2, 0, 0, 8, 1, 0
+ setalpha 12, 8
+ delay 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createsprite gFistFootSpriteTemplate, 2, 0, 0, 8, 1, 0
playsewithpan SE_W233B, +63
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 5, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 5, 1
waitforvisualfinish
playsewithpan SE_W088, +63
- createsprite gUnknown_08596B1C, 0x2, 0, 0, 20, 24, 14, 2
- createsprite gUnknown_08596B1C, 0x2, 5, 0, -20, 24, 14, 1
- createsprite gUnknown_08596B1C, 0x2, 0, 5, 20, -24, 14, 2
- createsprite gUnknown_08596B1C, 0x2, -5, 0, -20, -24, 14, 2
- createsprite gUnknown_08596B1C, 0x2, 0, -5, 30, 18, 8, 2
- createsprite gUnknown_08596B1C, 0x2, 0, 0, 30, -18, 8, 2
- createsprite gUnknown_08596B1C, 0x2, 0, 0, -30, 18, 8, 2
- createsprite gUnknown_08596B1C, 0x2, 0, 0, -30, -18, 8, 2
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 7, 1
+ createsprite gUnknown_08596B1C, 2, 0, 0, 20, 24, 14, 2
+ createsprite gUnknown_08596B1C, 2, 5, 0, -20, 24, 14, 1
+ createsprite gUnknown_08596B1C, 2, 0, 5, 20, -24, 14, 2
+ createsprite gUnknown_08596B1C, 2, -5, 0, -20, -24, 14, 2
+ createsprite gUnknown_08596B1C, 2, 0, -5, 30, 18, 8, 2
+ createsprite gUnknown_08596B1C, 2, 0, 0, 30, -18, 8, 2
+ createsprite gUnknown_08596B1C, 2, 0, 0, -30, 18, 8, 2
+ createsprite gUnknown_08596B1C, 2, 0, 0, -30, -18, 8, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 7, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SUBMISSION:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W104, -64
- waitplaysewithpan SE_W004, +63, 0xA
- waitplaysewithpan SE_W104, -64, 0x14
- waitplaysewithpan SE_W004, +63, 0x1E
- waitplaysewithpan SE_W104, -64, 0x28
- waitplaysewithpan SE_W004, +63, 0x32
- waitplaysewithpan SE_W104, -64, 0x3C
- waitplaysewithpan SE_W004, +63, 0x46
- waitplaysewithpan SE_W104, -64, 0x50
+ waitplaysewithpan SE_W004, +63, 10
+ waitplaysewithpan SE_W104, -64, 20
+ waitplaysewithpan SE_W004, +63, 30
+ waitplaysewithpan SE_W104, -64, 40
+ waitplaysewithpan SE_W004, +63, 50
+ waitplaysewithpan SE_W104, -64, 60
+ waitplaysewithpan SE_W004, +63, 70
+ waitplaysewithpan SE_W104, -64, 80
waitplaysewithpan SE_W004, +63, 0x5A
- createvisualtask sub_80D5738, 0x2, 0, -18, 6, 6, 4
- createvisualtask sub_80D5738, 0x2, 1, 18, 6, 6, 4
- call AnimScript_82D26D3
- call AnimScript_82D26D3
- call AnimScript_82D26D3
+ createvisualtask AnimTask_TranslateMonElliptical, 2, 0, -18, 6, 6, 4
+ createvisualtask AnimTask_TranslateMonElliptical, 2, 1, 18, 6, 6, 4
+ call Submission1
+ call Submission1
+ call Submission1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D26D3:
- createsprite gUnknown_08597358, 0x3, 0, -12, 1, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x3, -12, 8, 1, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x3, 12, 0, 1, 1
- delay 0x8
+Submission1:
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, -12, 1, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 3, -12, 8, 1, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 3, 12, 0, 1, 1
+ delay 8
return
Move_SUNNY_DAY:
- loadspritegfx 0x27AD
+ loadspritegfx ANIM_TAG_157
monbg ANIM_ATK_PARTNER
- setalpha 0x30D
- createvisualtask sub_8116620, 0xA, 1921, 1, 0, 6, 0x7FFF
+ setalpha 13, 3
+ createvisualtask sub_8116620, 10, 0x781, 1, 0, 6, RGB_WHITE
waitforvisualfinish
- panse_26 SE_W080, -64, +63, +1, 0x0
- call AnimScript_82D2753
- call AnimScript_82D2753
- call AnimScript_82D2753
- call AnimScript_82D2753
+ panse_26 SE_W080, -64, +63, +1, 0
+ call SunnyDay1
+ call SunnyDay1
+ call SunnyDay1
+ call SunnyDay1
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1921, 1, 6, 0, 0x7FFF
+ createvisualtask sub_8116620, 10, 0x781, 1, 6, 0, RGB_WHITE
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
-AnimScript_82D2753:
- createsprite gUnknown_085954A0, 0x28
- delay 0x6
+SunnyDay1:
+ createsprite gUnknown_085954A0, 40
+ delay 6
return
Move_COTTON_SPORE:
- loadspritegfx 0x27AE
+ loadspritegfx ANIM_TAG_158
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- loopsewithpan SE_W077, +63, 0x12, 0xA
- call AnimScript_82D277D
- call AnimScript_82D277D
- call AnimScript_82D277D
+ loopsewithpan SE_W077, +63, 18, 10
+ call CottonSpore1
+ call CottonSpore1
+ call CottonSpore1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-AnimScript_82D277D:
- createsprite gUnknown_085922EC, 0x2, 0, -20, 85, 80, 0
- delay 0xC
- createsprite gUnknown_085922EC, 0x2, 0, -10, 170, 80, 0
- delay 0xC
- createsprite gUnknown_085922EC, 0x2, 0, -15, 0, 80, 0
- delay 0xC
+CottonSpore1:
+ createsprite gUnknown_085922EC, 2, 0, -20, 85, 80, 0
+ delay 12
+ createsprite gUnknown_085922EC, 2, 0, -10, 170, 80, 0
+ delay 12
+ createsprite gUnknown_085922EC, 2, 0, -15, 0, 80, 0
+ delay 12
return
Move_SPORE:
- loadspritegfx 0x27AE
+ loadspritegfx ANIM_TAG_158
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_80FEE1C, 0x2
- loopsewithpan SE_W077, +63, 0x10, 0xB
- call AnimScript_82D27E2
- call AnimScript_82D27E2
- call AnimScript_82D27E2
- waitforvisualfinish
- delay 0x1
+ setalpha 12, 8
+ createvisualtask sub_80FEE1C, 2
+ loopsewithpan SE_W077, +63, 16, 11
+ call Spore1
+ call Spore1
+ call Spore1
+ waitforvisualfinish
+ delay 1
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D27E2:
- createsprite gUnknown_085922EC, 0x82, 0, -20, 85, 80, 1
- delay 0xC
- createsprite gUnknown_085922EC, 0x82, 0, -10, 170, 80, 1
- delay 0xC
- createsprite gUnknown_085922EC, 0x82, 0, -15, 0, 80, 1
- delay 0xC
+Spore1:
+ createsprite gUnknown_085922EC, 130, 0, -20, 85, 80, 1
+ delay 12
+ createsprite gUnknown_085922EC, 130, 0, -10, 170, 80, 1
+ delay 12
+ createsprite gUnknown_085922EC, 130, 0, -15, 0, 80, 1
+ delay 12
return
Move_PETAL_DANCE:
- loadspritegfx 0x27AF
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_159
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W080, -64
- createvisualtask sub_80D5830, 0x2, 0, 12, 6, 6, 3
- createsprite gUnknown_0859231C, 0x2, 0, -24, 8, 140
- createsprite gUnknown_08592334, 0x2, 16, -24, 8, 100
- createsprite gUnknown_08592334, 0x2, -16, -24, 8, 100
- delay 0xF
- createsprite gUnknown_0859231C, 0x2, 0, -24, 8, 140
- createsprite gUnknown_08592334, 0x2, 32, -24, 8, 100
- createsprite gUnknown_08592334, 0x2, -32, -24, 8, 100
- delay 0xF
- createsprite gUnknown_0859231C, 0x2, 0, -24, 8, 140
- createsprite gUnknown_08592334, 0x2, 24, -24, 8, 100
- createsprite gUnknown_08592334, 0x2, -24, -24, 8, 100
- delay 0x1E
- createsprite gUnknown_08592334, 0x2, 16, -24, 0, 100
- createsprite gUnknown_08592334, 0x2, -16, -24, 0, 100
- delay 0x1E
- createsprite gUnknown_08592334, 0x2, 20, -16, 14, 80
- createsprite gUnknown_08592334, 0x2, -20, -14, 16, 80
- waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 5
- delay 0x3
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 6, 3
+ createsprite gUnknown_0859231C, 2, 0, -24, 8, 140
+ createsprite gUnknown_08592334, 2, 16, -24, 8, 100
+ createsprite gUnknown_08592334, 2, -16, -24, 8, 100
+ delay 15
+ createsprite gUnknown_0859231C, 2, 0, -24, 8, 140
+ createsprite gUnknown_08592334, 2, 32, -24, 8, 100
+ createsprite gUnknown_08592334, 2, -32, -24, 8, 100
+ delay 15
+ createsprite gUnknown_0859231C, 2, 0, -24, 8, 140
+ createsprite gUnknown_08592334, 2, 24, -24, 8, 100
+ createsprite gUnknown_08592334, 2, -24, -24, 8, 100
+ delay 30
+ createsprite gUnknown_08592334, 2, 16, -24, 0, 100
+ createsprite gUnknown_08592334, 2, -16, -24, 0, 100
+ delay 30
+ createsprite gUnknown_08592334, 2, 20, -16, 14, 80
+ createsprite gUnknown_08592334, 2, -20, -14, 16, 80
+ waitforvisualfinish
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 5
+ delay 3
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 0
- createvisualtask sub_80D51AC, 0x2, 1, 6, 0, 8, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 6, 0, 8, 1
waitforvisualfinish
- delay 0x8
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 7
+ delay 8
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 7
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_RAZOR_LEAF:
- loadspritegfx 0x274F
- loadspritegfx 0x27B0
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_063
+ loadspritegfx ANIM_TAG_160
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- delay 0x1
- loopsewithpan SE_W077, -64, 0xA, 0x5
- createsprite gUnknown_08592390, 0x2, -3, -2, 10
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -1, -1, 15
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -4, -4, 7
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 3, -3, 11
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -1, -6, 8
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 2, -1, 12
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -3, -4, 13
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 4, -5, 7
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 2, -6, 11
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -3, -5, 8
- delay 0x3C
+ setalpha 12, 8
+ delay 1
+ loopsewithpan SE_W077, -64, 10, 5
+ createsprite gUnknown_08592390, 2, -3, -2, 10
+ delay 2
+ createsprite gUnknown_08592390, 2, -1, -1, 15
+ delay 2
+ createsprite gUnknown_08592390, 2, -4, -4, 7
+ delay 2
+ createsprite gUnknown_08592390, 2, 3, -3, 11
+ delay 2
+ createsprite gUnknown_08592390, 2, -1, -6, 8
+ delay 2
+ createsprite gUnknown_08592390, 2, 2, -1, 12
+ delay 2
+ createsprite gUnknown_08592390, 2, -3, -4, 13
+ delay 2
+ createsprite gUnknown_08592390, 2, 4, -5, 7
+ delay 2
+ createsprite gUnknown_08592390, 2, 2, -6, 11
+ delay 2
+ createsprite gUnknown_08592390, 2, -3, -5, 8
+ delay 60
playsewithpan SE_W013B, -64
- createsprite gUnknown_085923D8, 0x83, 20, -10, 20, 0, 22, 20, 1
- createsprite gUnknown_085923D8, 0x83, 20, -10, 20, 0, 22, -20, 1
- delay 0x14
+ createsprite gUnknown_085923D8, 131, 20, -10, 20, 0, 22, 20, 1
+ createsprite gUnknown_085923D8, 131, 20, -10, 20, 0, 22, -20, 1
+ delay 20
playsewithpan SE_W013, +63
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
- createvisualtask sub_80D52D0, 0x2, 3, 2, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 8, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
@@ -6952,116 +6861,116 @@ Move_RAZOR_LEAF:
Move_NATURE_POWER:
Move_ANCIENT_POWER:
- loadspritegfx 0x274A
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_058
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_085972D8, 0x2, 4, 1, 10, 1
- createsprite gUnknown_08596C10, 0x2, 20, 32, -48, 50, 2
- createsprite gUnknown_08596C10, 0x2, 0, 32, -38, 25, 5
- createsprite gUnknown_08596C10, 0x2, 32, 32, -28, 40, 3
- createsprite gUnknown_08596C10, 0x2, -20, 32, -48, 50, 2
- createsprite gUnknown_08596C10, 0x2, 20, 32, -28, 60, 1
- createsprite gUnknown_08596C10, 0x2, 0, 32, -28, 30, 4
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 30, 1
+ setalpha 12, 8
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, 4, 1, 10, 1
+ createsprite gUnknown_08596C10, 2, 20, 32, -48, 50, 2
+ createsprite gUnknown_08596C10, 2, 0, 32, -38, 25, 5
+ createsprite gUnknown_08596C10, 2, 32, 32, -28, 40, 3
+ createsprite gUnknown_08596C10, 2, -20, 32, -48, 50, 2
+ createsprite gUnknown_08596C10, 2, 20, 32, -28, 60, 1
+ createsprite gUnknown_08596C10, 2, 0, 32, -28, 30, 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 30, 1
playsewithpan SE_W082, -64
- delay 0xA
- createsprite gUnknown_08596C10, 0x2, 15, 32, -48, 25, 5
- createsprite gUnknown_08596C10, 0x2, -10, 32, -42, 30, 4
- delay 0xA
- createsprite gUnknown_08596C10, 0x2, 0, 32, -42, 25, 5
- createsprite gUnknown_08596C10, 0x2, -25, 32, -48, 30, 4
- waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 16, 0, 0, 4
- delay 0x3
+ delay 10
+ createsprite gUnknown_08596C10, 2, 15, 32, -48, 25, 5
+ createsprite gUnknown_08596C10, 2, -10, 32, -42, 30, 4
+ delay 10
+ createsprite gUnknown_08596C10, 2, 0, 32, -42, 25, 5
+ createsprite gUnknown_08596C10, 2, -25, 32, -48, 30, 4
+ waitforvisualfinish
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 16, 0, 0, 4
+ delay 3
playsewithpan SE_W120, +63
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 1
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 7
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 7
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_OCTAZOOKA:
- loadspritegfx 0x272E
- loadspritegfx 0x2721
+ loadspritegfx ANIM_TAG_GRAY_SMOKE
+ loadspritegfx ANIM_TAG_BLACK_BALL
playsewithpan SE_W025B, -64
- createsprite gUnknown_08592DFC, 0x82, 20, 0, 0, 0, 20, 0
+ createsprite gUnknown_08592DFC, 130, 20, 0, 0, 0, 20, 0
waitforvisualfinish
playsewithpan SE_W120, +63
- createsprite gUnknown_08592E30, 0x82, 8, 8, 1, 0
- delay 0x2
- createsprite gUnknown_08592E30, 0x82, -8, -8, 1, 0
- delay 0x2
- createsprite gUnknown_08592E30, 0x82, 8, -8, 1, 0
- delay 0x2
- createsprite gUnknown_08592E30, 0x82, -8, 8, 1, 0
+ createsprite gUnknown_08592E30, 130, 8, 8, 1, 0
+ delay 2
+ createsprite gUnknown_08592E30, 130, -8, -8, 1, 0
+ delay 2
+ createsprite gUnknown_08592E30, 130, 8, -8, 1, 0
+ delay 2
+ createsprite gUnknown_08592E30, 130, -8, 8, 1, 0
waitforvisualfinish
end
Move_MIST:
- loadspritegfx 0x27A0
+ loadspritegfx ANIM_TAG_144
monbg ANIM_ATK_PARTNER
- setalpha 0x80C
- loopsewithpan SE_W054, -64, 0x14, 0xF
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- call AnimScript_82D2C34
- delay 0x20
- createvisualtask sub_8115A04, 0x2, 10, 8, 2, 0, 14, 0x7FFF
+ setalpha 12, 8
+ loopsewithpan SE_W054, -64, 20, 15
+ call Mist1
+ call Mist1
+ call Mist1
+ call Mist1
+ call Mist1
+ call Mist1
+ call Mist1
+ delay 32
+ createvisualtask sub_8115A04, 2, 10, 8, 2, 0, 14, RGB_WHITE
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
-AnimScript_82D2C34:
- createsprite gUnknown_08595C2C, 0x2, 0, -24, 48, 240, 0, 1
- delay 0x7
+Mist1:
+ createsprite gUnknown_08595C2C, 2, 0, -24, 48, 240, 0, 1
+ delay 7
return
Move_HAZE:
waitforvisualfinish
playsewithpan SE_W114, 0
- createvisualtask sub_810C0A0, 0x5
- delay 0x1E
- createvisualtask sub_8116620, 0xA, 1920, 2, 0, 16, 0
+ createvisualtask sub_810C0A0, 5
+ delay 30
+ createvisualtask sub_8116620, 10, 0x780, 2, 0, 16, RGB_BLACK
delay 0x5A
- createvisualtask sub_8116620, 0xA, 1920, 1, 16, 0, 0
+ createvisualtask sub_8116620, 10, 0x780, 1, 16, 0, RGB_BLACK
end
Move_FIRE_PUNCH:
- loadspritegfx 0x279F
- loadspritegfx 0x272D
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 9, 31
+ setalpha 12, 8
+ createvisualtask sub_8116620, 10, 4, 2, 0, 9, RGB_RED
createsprite gUnknown_08595368, 0x81, 0
createsprite gUnknown_08595368, 0x81, 64
createsprite gUnknown_08595368, 0x81, 128
createsprite gUnknown_08595368, 0x81, 196
playsewithpan SE_W172, +63
waitforvisualfinish
- createsprite gUnknown_08595E98, 0x83, 0, 0, 8, 1, 0
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 1
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 15, 1
- call AnimScript_82D2D18
- delay 0x4
+ createsprite gFistFootSpriteTemplate, 131, 0, 0, 8, 1, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1
+ call FireMoveEffect
+ delay 4
playsewithpan SE_W007, +63
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 4, 0, 9, 0, 31
+ createvisualtask sub_8116620, 10, 4, 0, 9, 0, RGB_RED
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-AnimScript_82D2D18:
+FireMoveEffect:
createsprite gUnknown_08595380, 0x81, 0, 10, 192, 176, 40
createsprite gUnknown_08595380, 0x81, 0, 10, -192, 240, 40
createsprite gUnknown_08595380, 0x81, 0, 10, 192, -160, 40
@@ -7072,324 +6981,319 @@ AnimScript_82D2D18:
return
Move_LEER:
- loadspritegfx 0x272B
+ loadspritegfx ANIM_TAG_GLARE
monbg ANIM_ATTACKER
monbgprio_28 ANIM_ATTACKER
- setalpha 0x808
+ setalpha 8, 8
playsewithpan SE_W043, -64
- createsprite gUnknown_085CE150, 0x2, 24, -12
- createvisualtask sub_80D6064, 0x5, -5, -5, 10, 0, 1
+ createsprite gUnknown_085CE150, 2, 24, -12
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1
waitforvisualfinish
- delay 0xA
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 9, 1
- createvisualtask sub_80D52D0, 0x2, 3, 1, 0, 9, 1
+ delay 10
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 9, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 9, 1
waitforvisualfinish
clearmonbg ANIM_ATTACKER
blendoff
- delay 0x1
+ delay 1
waitforvisualfinish
end
Move_DREAM_EATER:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
- setalpha 0x808
+ call SetPsychicBackground
+ setalpha 8, 8
playsewithpan SE_W107, +63
- createvisualtask sub_80D51AC, 0x2, 1, 5, 0, 15, 1
- createvisualtask sub_80D6064, 0x5, -6, -6, 15, 1, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 15, 1
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -6, -6, 15, ANIM_TARGET, 1
waitforvisualfinish
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x2, 1, 0, 2, 25, 1
- call AnimScript_82D2E51
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 2, 25, 1
+ call DreamEaterEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
-
-AnimScript_82D2E51:
+DreamEaterEffect:
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -40, 35
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -40, 35
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 28, 26
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -10, 20, 40, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 28, 26
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -10, 20, 40, 39
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -32, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -32, 26
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 0, -15, -16, 36
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 0, -15, -16, 36
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, -5, 15, 16, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -40, 26
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, -5, 15, 16, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -40, 26
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, -5, 15, 36, 33
- createsprite gUnknown_08592270, 0x3, 10, -5, -8, 26
- createsprite gUnknown_08592270, 0x3, -10, 20, 20, 39
- delay 0x4
+ createsprite gUnknown_08592270, 3, -5, 15, 36, 33
+ createsprite gUnknown_08592270, 3, 10, -5, -8, 26
+ createsprite gUnknown_08592270, 3, -10, 20, 20, 39
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 0, 5, 8, 26
- createsprite gUnknown_08592270, 0x3, 5, -18, -20, 35
- delay 0x4
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 0, 5, 8, 26
+ createsprite gUnknown_08592270, 3, 5, -18, -20, 35
+ delay 4
return
Move_POISON_GAS:
- loadspritegfx 0x27BC
- loadspritegfx 0x27A6
- delay 0x0
+ loadspritegfx ANIM_TAG_172
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
+ delay 0
monbg ANIM_DEF_PARTNER
monbgprio_29
- setalpha 0x80C
- delay 0x0
+ setalpha 12, 8
+ delay 0
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x4
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 4
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x4
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 4
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x4
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 4
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x4
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 4
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x4
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 4
playsewithpan SE_W054, -64
- createsprite gUnknown_08595C9C, 0x80, 64, 0, 0, -32, -6, 4192, 1072, 0
- delay 0x28
- loopsewithpan SE_W054, +63, 0x1C, 0x6
- createvisualtask sub_8115A04, 0x2, 4, 6, 2, 0, 12, 26650
+ createsprite gUnknown_08595C9C, 128, 64, 0, 0, -32, -6, 4192, 1072, 0
+ delay 40
+ loopsewithpan SE_W054, +63, 28, 6
+ createvisualtask sub_8115A04, 2, 4, 6, 2, 0, 12, RGB(26, 0, 26)
waitforvisualfinish
blendoff
clearmonbg ANIM_DEF_PARTNER
- delay 0x0
+ delay 0
end
Move_BIND:
- createvisualtask sub_80D5EB8, 0x5, 0, 6, 3328, 4, 0
- goto AnimScript_82D30DE
+ createvisualtask AnimTask_SwayMon, 5, 0, 6, 3328, 4, ANIM_ATTACKER
+ goto BindWrap
-AnimScript_82D30DE:
+BindWrap:
playsewithpan SE_W020, +63
- call AnimScript_82D30EE
- call AnimScript_82D30EE
+ call BindWrap1
+ call BindWrap1
waitforvisualfinish
end
-
-AnimScript_82D30EE:
- createvisualtask sub_80D6064, 0x5, 10, -5, 5, 1, 0
- delay 0x10
+BindWrap1:
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, 10, -5, 5, ANIM_TARGET, 0
+ delay 16
return
Move_WRAP:
- createvisualtask sub_80D5830, 0x2, 0, 6, 4, 2, 4
- goto AnimScript_82D30DE
+ createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 6, 4, 2, 4
+ goto BindWrap
Move_PSYBEAM:
- loadspritegfx 0x27B3
+ loadspritegfx ANIM_TAG_163
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
+ call SetPsychicBackground
createsoundtask sub_8158C58, 200, -64, 63, 3, 4, 0, 15
- call AnimScript_82D319C
- call AnimScript_82D319C
- createvisualtask sub_80D5EB8, 0x5, 0, 6, 2048, 4, 1
- createvisualtask sub_8115A04, 0x2, 4, 2, 2, 0, 12, 32351
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- call AnimScript_82D319C
- waitforvisualfinish
- delay 0x1
- call AnimScript_82D7CDD
- end
-
-AnimScript_82D319C:
- createsprite gUnknown_0859663C, 0x82, 16, 0, 0, 0, 13, 0
- delay 0x4
+ call Psybeam1
+ call Psybeam1
+ createvisualtask AnimTask_SwayMon, 5, 0, 6, 2048, 4, ANIM_TARGET
+ createvisualtask sub_8115A04, 2, 4, 2, 2, 0, 12, RGB(31, 18, 31)
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ call Psybeam1
+ waitforvisualfinish
+ delay 1
+ call UnsetPsychicBackground
+ end
+Psybeam1:
+ createsprite gUnknown_0859663C, 130, 16, 0, 0, 0, 13, 0
+ delay 4
return
Move_HYPNOSIS:
- loadspritegfx 0x27B3
- call AnimScript_82D7CD1
- call AnimScript_82D31E5
- call AnimScript_82D31E5
- call AnimScript_82D31E5
- createvisualtask sub_8115A04, 0x2, 4, 2, 2, 0, 12, 32351
+ loadspritegfx ANIM_TAG_163
+ call SetPsychicBackground
+ call Hypnosis1
+ call Hypnosis1
+ call Hypnosis1
+ createvisualtask sub_8115A04, 2, 4, 2, 2, 0, 12, RGB(31, 18, 31)
waitforvisualfinish
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
-
-AnimScript_82D31E5:
+Hypnosis1:
playsewithpan SE_W048, -64
- createsprite gUnknown_0859663C, 0x82, 0, 8, 0, 8, 27, 0
- createsprite gUnknown_0859663C, 0x82, 16, -8, 0, -8, 27, 0
- delay 0x6
+ createsprite gUnknown_0859663C, 130, 0, 8, 0, 8, 27, 0
+ createsprite gUnknown_0859663C, 130, 16, -8, 0, -8, 27, 0
+ delay 6
return
Move_PSYWAVE:
- loadspritegfx 0x27B5
+ loadspritegfx ANIM_TAG_165
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
- createvisualtask sub_81076C8, 0x5, 100
+ call SetPsychicBackground
+ createvisualtask sub_81076C8, 5, 100
createsoundtask sub_8158C58, 203, -64, 63, 2, 9, 0, 10
- call AnimScript_82D3275
- call AnimScript_82D3275
- createvisualtask sub_8115A04, 0x2, 4, 1, 4, 0, 12, 32351
- call AnimScript_82D3275
- call AnimScript_82D3275
- call AnimScript_82D3275
- call AnimScript_82D3275
- waitforvisualfinish
- delay 0x1
- call AnimScript_82D7CDD
- end
-
-AnimScript_82D3275:
- createsprite gUnknown_08595170, 0x83, 10, 10, 0, 16
- delay 0x4
- createsprite gUnknown_08595170, 0x83, 10, 10, 0, 16
- delay 0x4
+ call Psywave1
+ call Psywave1
+ createvisualtask sub_8115A04, 2, 4, 1, 4, 0, 12, RGB(31, 18, 31)
+ call Psywave1
+ call Psywave1
+ call Psywave1
+ call Psywave1
+ waitforvisualfinish
+ delay 1
+ call UnsetPsychicBackground
+ end
+Psywave1:
+ createsprite gUnknown_08595170, 131, 10, 10, 0, 16
+ delay 4
+ createsprite gUnknown_08595170, 131, 10, 10, 0, 16
+ delay 4
return
Move_ZAP_CANNON:
- loadspritegfx 0x27BB
- loadspritegfx 0x271B
+ loadspritegfx ANIM_TAG_171
+ loadspritegfx ANIM_TAG_SPARK_2
playsewithpan SE_W086, -64
- createsprite gUnknown_08595764, 0x83, 10, 0, 0, 0, 30, 0
- createsprite gUnknown_08595790, 0x84, 10, 0, 16, 30, 0, 40, 0
- createsprite gUnknown_08595790, 0x84, 10, 0, 16, 30, 64, 40, 1
- createsprite gUnknown_08595790, 0x84, 10, 0, 16, 30, 128, 40, 0
- createsprite gUnknown_08595790, 0x84, 10, 0, 16, 30, 192, 40, 2
- createsprite gUnknown_08595790, 0x84, 10, 0, 8, 30, 32, 40, 0
- createsprite gUnknown_08595790, 0x84, 10, 0, 8, 30, 96, 40, 1
- createsprite gUnknown_08595790, 0x84, 10, 0, 8, 30, 160, 40, 0
- createsprite gUnknown_08595790, 0x84, 10, 0, 8, 30, 224, 40, 2
+ createsprite gUnknown_08595764, 131, 10, 0, 0, 0, 30, 0
+ createsprite gUnknown_08595790, 132, 10, 0, 16, 30, 0, 40, 0
+ createsprite gUnknown_08595790, 132, 10, 0, 16, 30, 64, 40, 1
+ createsprite gUnknown_08595790, 132, 10, 0, 16, 30, 128, 40, 0
+ createsprite gUnknown_08595790, 132, 10, 0, 16, 30, 192, 40, 2
+ createsprite gUnknown_08595790, 132, 10, 0, 8, 30, 32, 40, 0
+ createsprite gUnknown_08595790, 132, 10, 0, 8, 30, 96, 40, 1
+ createsprite gUnknown_08595790, 132, 10, 0, 8, 30, 160, 40, 0
+ createsprite gUnknown_08595790, 132, 10, 0, 8, 30, 224, 40, 2
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 5, 1
- delay 0xF
- waitplaysewithpan SE_W085B, +63, 0x13
- call AnimScript_82D7BEA
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1
+ delay 15
+ waitplaysewithpan SE_W085B, +63, 19
+ call ElectricityEffect
waitforvisualfinish
end
Move_STEEL_WING:
- loadspritegfx 0x2719
- loadspritegfx 0x2797
- loopsewithpan SE_W231, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 0, 0, 0
+ loadspritegfx ANIM_TAG_GUST
+ loadspritegfx ANIM_TAG_135
+ loopsewithpan SE_W231, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 0, 0, 0
waitforvisualfinish
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- loopsewithpan SE_W017, -64, 0x14, 0x2
- createvisualtask sub_80D5738, 0x2, 0, 12, 4, 1, 4
- createvisualtask sub_810DED8, 0x5, 1, 70
- createsprite gUnknown_085962A4, 0x2, -25, 0, 0, 0, 20
- createsprite gUnknown_085962A4, 0x2, 25, 0, 0, 0, 20
- delay 0x18
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 9
- delay 0x11
- createsprite gUnknown_08597358, 0x2, 16, 0, 1, 1
- createsprite gUnknown_08597358, 0x2, -16, 0, 1, 1
+ setalpha 12, 8
+ loopsewithpan SE_W017, -64, 20, 2
+ createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4
+ createvisualtask sub_810DED8, 5, 1, 70
+ createsprite gBattleAnimSpriteTemplate_85962A4, 2, -25, 0, 0, 0, 20
+ createsprite gBattleAnimSpriteTemplate_85962A4, 2, 25, 0, 0, 0, 20
+ delay 24
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 9
+ delay 17
+ createsprite gBasicHitSplatSpriteTemplate, 2, 16, 0, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, -16, 0, 1, 1
playsewithpan SE_W013, +63
waitforvisualfinish
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 11
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 11
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_IRON_TAIL:
- loadspritegfx 0x2797
- loopsewithpan SE_W231, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 1, 0, 0
+ loadspritegfx ANIM_TAG_135
+ loopsewithpan SE_W231, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 1, 0, 0
waitforvisualfinish
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x6
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
waitforvisualfinish
- createvisualtask sub_811489C, 0x5, 0, 1
+ createvisualtask sub_811489C, 5, 0, 1
clearmonbg ANIM_TARGET
blendoff
waitforvisualfinish
end
Move_POISON_TAIL:
- loadspritegfx 0x2797
- loadspritegfx 0x27A6
- loopsewithpan SE_W231, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 1, 1, RGB(24, 6, 23)
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
+ loopsewithpan SE_W231, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 1, 1, RGB(24, 6, 23)
waitforvisualfinish
monbg ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_0857FE28, 0x2, 4, 4
- delay 0x6
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ setalpha 12, 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 4
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
playsewithpan SE_W233B, +63
waitforvisualfinish
- createvisualtask sub_811489C, 0x5, 0, 1
+ createvisualtask sub_811489C, 5, 0, 1
clearmonbg ANIM_TARGET
blendoff
- call AnimScript_82D7A71
+ call PoisonBubblesEffect
waitforvisualfinish
end
Move_METAL_CLAW:
- loadspritegfx 0x2737
- loopsewithpan SE_W231, -64, 0x1C, 0x2
- createvisualtask sub_81144F8, 0x5, 0, 0, 0
+ loadspritegfx ANIM_TAG_CLAW_SLASH
+ loopsewithpan SE_W231, -64, 28, 2
+ createvisualtask sub_81144F8, 5, 0, 0, 0
waitforvisualfinish
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x2
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 2
playsewithpan SE_W013, +63
- createsprite gUnknown_08597138, 0x82, -10, -10, 0
- createsprite gUnknown_08597138, 0x82, -10, 10, 0
- createsprite gUnknown_085972D8, 0x2, -4, 1, 10, 3, 1
- delay 0x8
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x2
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, -10, 0
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, 10, 0
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, -4, 1, 10, 3, 1
+ delay 8
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 2
playsewithpan SE_W013, +63
- createsprite gUnknown_08597138, 0x82, 10, -10, 1
- createsprite gUnknown_08597138, 0x82, 10, 10, 1
- createsprite gUnknown_085972D8, 0x2, -4, 1, 10, 3, 1
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, -10, 1
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, 10, 1
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, -4, 1, 10, 3, 1
waitforvisualfinish
end
@@ -7399,1265 +7303,1241 @@ Move_NIGHT_SHADE:
playsewithpan SE_W060, -64
fadetobg BG_GHOST
waitbgfadein
- delay 0xA
+ delay 10
playsewithpan SE_W043, -64
- createvisualtask sub_811188C, 0x5, 85
- delay 0x46
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 12, 1
- createvisualtask sub_8115A04, 0x2, 4, 0, 2, 0, 13, 0
+ createvisualtask sub_811188C, 5, 85
+ delay 70
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 12, 1
+ createvisualtask sub_8115A04, 2, 4, 0, 2, 0, 13, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_ATTACKER
- delay 0x1
+ delay 1
restorebg
waitbgfadein
end
Move_EGG_BOMB:
- loadspritegfx 0x27D6
- loadspritegfx 0x27BF
+ loadspritegfx ANIM_TAG_EXPLOSION
+ loadspritegfx ANIM_TAG_175
playsewithpan SE_W039, -64
- createsprite gUnknown_08593488, 0x82, 10, 0, 0, 0, 25, -32
+ createsprite gUnknown_08593488, 130, 10, 0, 0, 0, 25, -32
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 16, 1
- createsprite gUnknown_0859371C, 0x84, 6, 5, 1, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 16, 1
+ createsprite gBattleAnimSpriteTemplate_859371C, 132, 6, 5, 1, 0
playsewithpan SE_W120, +63
- delay 0x3
- createsprite gUnknown_0859371C, 0x84, -16, -15, 1, 0
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_859371C, 132, -16, -15, 1, 0
playsewithpan SE_W120, +63
- delay 0x3
- createsprite gUnknown_0859371C, 0x84, 16, -5, 1, 0
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_859371C, 132, 16, -5, 1, 0
playsewithpan SE_W120, +63
- delay 0x3
- createsprite gUnknown_0859371C, 0x84, -12, 18, 1, 0
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_859371C, 132, -12, 18, 1, 0
playsewithpan SE_W120, +63
- delay 0x3
- createsprite gUnknown_0859371C, 0x84, 0, 5, 1, 0
+ delay 3
+ createsprite gBattleAnimSpriteTemplate_859371C, 132, 0, 5, 1, 0
playsewithpan SE_W120, +63
- delay 0x3
+ delay 3
waitforvisualfinish
end
Move_SHADOW_BALL:
- loadspritegfx 0x27C0
+ loadspritegfx ANIM_TAG_176
fadetobg BG_GHOST
waitbgfadein
- delay 0xF
+ delay 15
createsoundtask sub_8158C58, 168, -64, 63, 5, 5, 0, 5
- createsprite gUnknown_08596D58, 0x82, 16, 16, 8
+ createsprite gUnknown_08596D58, 130, 16, 16, 8
waitforvisualfinish
playsewithpan SE_W028, +63
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 8, 1
waitforvisualfinish
restorebg
waitbgfadein
end
Move_LICK:
- loadspritegfx 0x27C1
- delay 0xF
+ loadspritegfx ANIM_TAG_177
+ delay 15
playsewithpan SE_W122, +63
- createsprite gUnknown_08596D8C, 0x82, 0, 0
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 16, 1
+ createsprite gUnknown_08596D8C, 130, 0, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 16, 1
waitforvisualfinish
end
Move_FOCUS_ENERGY:
- loadspritegfx 0x27C8
+ loadspritegfx ANIM_TAG_184
playsewithpan SE_W082, -64
- call AnimScript_82CD6C7
- delay 0x8
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 11, 0x7FFF
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 32, 1
- call AnimScript_82CD6C7
- delay 0x8
- call AnimScript_82CD6C7
+ call EndureEffect
+ delay 8
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 11, RGB_WHITE
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1
+ call EndureEffect
+ delay 8
+ call EndureEffect
waitforvisualfinish
end
Move_BIDE:
- choosetwoturnanim AnimScript_82D3719, AnimScript_82D3745
+ choosetwoturnanim BideSetUp, BideUnleash
end
-
-AnimScript_82D3719:
- loopsewithpan SE_W036, -64, 0x9, 0x2
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 11, 31
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 32, 1
+BideSetUp:
+ loopsewithpan SE_W036, -64, 9, 2
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 11, RGB_RED
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1
waitforvisualfinish
end
-AnimScript_82D3745:
- loadspritegfx 0x2797
+BideUnleash:
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- loopsewithpan SE_W036, -64, 0x9, 0x2
- createvisualtask sub_8116620, 0xA, 2, 2, 0, 11, 31
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 32, 1
+ setalpha 12, 8
+ loopsewithpan SE_W036, -64, 9, 2
+ createvisualtask sub_8116620, 10, 2, 2, 0, 11, RGB_RED
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1
waitforvisualfinish
- createsprite gUnknown_0857FE70, 0x2, 0, 24, 0, 0, 4
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 24, 0, 0, 4
waitforvisualfinish
- createvisualtask sub_80D5484, 0x2, 0, 2, 0, 12, 1
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 16, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 12, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 16, 1
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x1, 18, -8, 1, 1
- delay 0x5
+ createsprite gBasicHitSplatSpriteTemplate, 1, 18, -8, 1, 1
+ delay 5
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x1, -18, 8, 1, 1
- delay 0x5
+ createsprite gBasicHitSplatSpriteTemplate, 1, -18, 8, 1, 1
+ delay 5
playsewithpan SE_W004, +63
- createsprite gUnknown_08597358, 0x1, -8, -5, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 1, -8, -5, 1, 1
waitforvisualfinish
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 7
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 7
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 2, 2, 11, 0, 31
+ createvisualtask sub_8116620, 10, 2, 2, 11, 0, RGB_RED
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_STRING_SHOT:
- loadspritegfx 0x27C3
- loadspritegfx 0x27C4
+ loadspritegfx ANIM_TAG_179
+ loadspritegfx ANIM_TAG_WEB_THREAD
monbg ANIM_DEF_PARTNER
- delay 0x0
- createsprite gUnknown_08597274, 0x5, 1, 2, 0, 9, 0
- waitforvisualfinish
- loopsewithpan SE_W081, -64, 0x9, 0x6
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
- call AnimScript_82D38CC
+ delay 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 5, 1, 2, 0, 9, RGB_BLACK
+ waitforvisualfinish
+ loopsewithpan SE_W081, -64, 9, 6
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
+ call StringShot1
waitforvisualfinish
playsewithpan SE_W081B, +63
- createsprite gUnknown_085969F8, 0x82, 0, 10
- delay 0x4
- createsprite gUnknown_085969F8, 0x82, 0, -2
- delay 0x4
- createsprite gUnknown_085969F8, 0x82, 0, 22
+ createsprite gUnknown_085969F8, 130, 0, 10
+ delay 4
+ createsprite gUnknown_085969F8, 130, 0, -2
+ delay 4
+ createsprite gUnknown_085969F8, 130, 0, 22
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
- delay 0x1
+ delay 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x5, 1, 2, 9, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 5, 1, 2, 9, 0, RGB_BLACK
end
-AnimScript_82D38CC:
- createsprite gUnknown_085969E0, 0x82, 20, 0, 512, 20, 1
- delay 0x1
+StringShot1:
+ createsprite gUnknown_085969E0, 130, 20, 0, 512, 20, 1
+ delay 1
return
Move_SPIDER_WEB:
- loadspritegfx 0x27C5
- loadspritegfx 0x27C4
+ loadspritegfx ANIM_TAG_SPIDER_WEB
+ loadspritegfx ANIM_TAG_WEB_THREAD
monbg ANIM_DEF_PARTNER
- delay 0x0
- createsprite gUnknown_08597274, 0x5, 1, 2, 0, 9, 0
+ delay 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 5, 1, 2, 0, 9, RGB_BLACK
waitforvisualfinish
monbgprio_28 ANIM_TARGET
- loopsewithpan SE_W081, -64, 0x9, 0x6
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
- call AnimScript_82D396D
+ loopsewithpan SE_W081, -64, 9, 6
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
+ call SpiderWeb1
waitforvisualfinish
playsewithpan SE_W081B, +63
- createsprite gUnknown_08596A2C, 0x2
+ createsprite gUnknown_08596A2C, 2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
- delay 0x1
- createsprite gUnknown_08597274, 0x5, 1, 2, 9, 0, 0
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 5, 1, 2, 9, 0, RGB_BLACK
end
-AnimScript_82D396D:
- createsprite gUnknown_085969E0, 0x82, 20, 0, 512, 20, 0
- delay 0x1
+SpiderWeb1:
+ createsprite gUnknown_085969E0, 130, 20, 0, 512, 20, 0
+ delay 1
return
Move_RAZOR_WIND:
- choosetwoturnanim AnimScript_82D398C, AnimScript_82D39DC
-
-AnimScript_82D398A:
+ choosetwoturnanim RazorWindSetUp, RazorWindUnleash
+RazorWindContinue:
waitforvisualfinish
end
-AnimScript_82D398C:
- loadspritegfx 0x2719
+RazorWindSetUp:
+ loadspritegfx ANIM_TAG_GUST
playsewithpan SE_W016, -64
- createsprite gUnknown_08593550, 0x2, 32, 0, 16, 16, 0, 7, 40
- createsprite gUnknown_08593550, 0x2, 32, 0, 16, 16, 85, 7, 40
- createsprite gUnknown_08593550, 0x2, 32, 0, 16, 16, 170, 7, 40
+ createsprite gUnknown_08593550, 2, 32, 0, 16, 16, 0, 7, 40
+ createsprite gUnknown_08593550, 2, 32, 0, 16, 16, 85, 7, 40
+ createsprite gUnknown_08593550, 2, 32, 0, 16, 16, 170, 7, 40
waitforvisualfinish
playsewithpan SE_W016B, -64
- goto AnimScript_82D398A
+ goto RazorWindContinue
-AnimScript_82D39DC:
- loadspritegfx 0x27AA
- loadspritegfx 0x2797
+RazorWindUnleash:
+ loadspritegfx ANIM_TAG_154
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W013B, -64
- createsprite gUnknown_085962D4, 0x2, 14, 8, 0, 0, 22, 2, 1
- delay 0x2
+ createsprite gUnknown_085962D4, 2, 14, 8, 0, 0, 22, 2, 1
+ delay 2
playsewithpan SE_W013B, -64
- createsprite gUnknown_085962D4, 0x2, 14, -8, 16, 14, 22, 1, 1
- delay 0x2
+ createsprite gUnknown_085962D4, 2, 14, -8, 16, 14, 22, 1, 1
+ delay 2
playsewithpan SE_W013B, -64
- createsprite gUnknown_085962D4, 0x2, 14, 12, -16, -14, 22, 0, 1
- delay 0x11
+ createsprite gUnknown_085962D4, 2, 14, 12, -16, -14, 22, 0, 1
+ delay 17
playsewithpan SE_W013, +63
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 10, 1
- createvisualtask sub_80D52D0, 0x2, 3, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 10, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 10, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
- goto AnimScript_82D398A
+ goto RazorWindContinue
Move_DISABLE:
- loadspritegfx 0x2757
+ loadspritegfx ANIM_TAG_071
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x808
+ setalpha 8, 8
playsewithpan SE_W197, -64
- createsprite gUnknown_0853EE84, 0xD, 24, -16
+ createsprite gUnknown_0853EE84, 13, 24, -16
waitforvisualfinish
- createvisualtask sub_81045B0, 0x5
- loopsewithpan SE_W020, +63, 0xF, 0x4
+ createvisualtask sub_81045B0, 5
+ loopsewithpan SE_W020, +63, 15, 4
waitforvisualfinish
- delay 0x1
+ delay 1
clearmonbg ANIM_TARGET
blendoff
end
Move_RECOVER:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_ATK_PARTNER
- setalpha 0x80C
- loopsewithpan SE_W025, -64, 0xD, 0x3
- createvisualtask sub_8115A04, 0x2, 2, 0, 6, 0, 11, 12287
- call AnimScript_82D3AD5
- call AnimScript_82D3AD5
- call AnimScript_82D3AD5
+ setalpha 12, 8
+ loopsewithpan SE_W025, -64, 13, 3
+ createvisualtask sub_8115A04, 2, 2, 0, 6, 0, 11, RGB(31, 31, 11)
+ call Recover1
+ call Recover1
+ call Recover1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- delay 0x1
- call AnimScript_82D79DF
- waitforvisualfinish
- end
-
-AnimScript_82D3AD5:
- createsprite gUnknown_085921E0, 0x2, 40, -10, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, -35, -10, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, 15, -40, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, -10, -32, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, 25, -20, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, -40, -20, 13
- delay 0x3
- createsprite gUnknown_085921E0, 0x2, 5, -40, 13
- delay 0x3
+ delay 1
+ call HealingEffect
+ waitforvisualfinish
+ end
+
+Recover1:
+ createsprite gUnknown_085921E0, 2, 40, -10, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, -35, -10, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, 15, -40, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, -10, -32, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, 25, -20, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, -40, -20, 13
+ delay 3
+ createsprite gUnknown_085921E0, 2, 5, -40, 13
+ delay 3
return
Move_MIMIC:
- loadspritegfx 0x27A3
- setalpha 0x50B
+ loadspritegfx ANIM_TAG_147
+ setalpha 11, 5
monbg_22 ANIM_DEF_PARTNER
monbgprio_29
- panse_1B SE_W107, +63, -64, -3, 0x0
- createvisualtask sub_80FF458, 0x5, 128, 24
- delay 0xF
- createsprite gUnknown_085924DC, 0x82, -12, 24
- delay 0xA
- setarg 0x7, 0xFFFF
+ panse_1B SE_W107, +63, -64, -3, 0
+ createvisualtask sub_80FF458, 5, 128, 24
+ delay 15
+ createsprite gUnknown_085924DC, 130, -12, 24
+ delay 10
+ setarg 7, -1
waitforvisualfinish
playsewithpan SE_W036, -64
- createvisualtask sub_8115A04, 0x2, 2, 0, 2, 0, 11, 0x7FFF
+ createvisualtask sub_8115A04, 2, 2, 0, 2, 0, 11, RGB_WHITE
waitforvisualfinish
clearmonbg_23 ANIM_DEF_PARTNER
blendoff
end
Move_CONSTRICT:
- loadspritegfx 0x27CA
- loopsewithpan SE_W010, +63, 0x6, 0x4
- createsprite gUnknown_08592494, 0x84, 0, 16, 0, 2
- delay 0x7
- createsprite gUnknown_08592494, 0x83, 0, 0, 0, 2
- createsprite gUnknown_08592494, 0x82, 0, 8, 1, 2
- delay 0x7
- createsprite gUnknown_08592494, 0x83, 0, -8, 1, 2
- delay 0x8
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 6, 1
- delay 0x14
+ loadspritegfx ANIM_TAG_186
+ loopsewithpan SE_W010, +63, 6, 4
+ createsprite gUnknown_08592494, 132, 0, 16, 0, 2
+ delay 7
+ createsprite gUnknown_08592494, 131, 0, 0, 0, 2
+ createsprite gUnknown_08592494, 130, 0, 8, 1, 2
+ delay 7
+ createsprite gUnknown_08592494, 131, 0, -8, 1, 2
+ delay 8
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1
+ delay 20
playsewithpan SE_W020, +63
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitforvisualfinish
end
Move_CURSE:
- choosetwoturnanim AnimScript_82D3BFB, AnimScript_82D3C78
-
-AnimScript_82D3BFB:
- loadspritegfx 0x27D7
- loadspritegfx 0x27D8
+ choosetwoturnanim CurseGhost, CurseStats
+CurseGhost:
+ loadspritegfx ANIM_TAG_NAIL
+ loadspritegfx ANIM_TAG_200
monbg ANIM_ATK_PARTNER
- createvisualtask sub_8112758, 0x5
+ createvisualtask sub_8112758, 5
waitforvisualfinish
- delay 0x14
- createsprite gUnknown_08596DD0, 0x2
- delay 0x3C
- call AnimScript_82D3C62
- delay 0x29
- call AnimScript_82D3C62
- delay 0x29
- call AnimScript_82D3C62
+ delay 20
+ createsprite gUnknown_08596DD0, 2
+ delay 60
+ call CurseGhost1
+ delay 41
+ call CurseGhost1
+ delay 41
+ call CurseGhost1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
- delay 0x1
+ delay 1
monbg ANIM_DEF_PARTNER
playsewithpan SE_W171, +63
- createsprite gUnknown_08596DE8, 0x82
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 14, 1
+ createsprite gBattleAnimSpriteTemplate_8596DE8, 130
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 14, 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 16, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 16, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-
-AnimScript_82D3C62:
- createvisualtask sub_80D52D0, 0x2, 0, 4, 0, 10, 0
+CurseGhost1:
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 4, 0, 10, 0
playsewithpan SE_W020, -64
return
-
-AnimScript_82D3C78:
- createvisualtask sub_80D5EB8, 0x5, 0, 10, 1536, 3, 0
+CurseStats:
+ createvisualtask AnimTask_SwayMon, 5, 0, 10, 1536, 3, ANIM_ATTACKER
waitforvisualfinish
- delay 0xA
- call AnimScript_82D3C93
+ delay 10
+ call CurseStats1
waitforvisualfinish
end
-
-AnimScript_82D3C93:
+CurseStats1:
playsewithpan SE_W082, -64
- createvisualtask sub_8116B14, 0x5
- createvisualtask sub_8115A04, 0x5, 2, 4, 2, 0, 10, 31
+ createvisualtask sub_8116B14, 5
+ createvisualtask sub_8115A04, 5, 2, 4, 2, 0, 10, RGB_RED
return
Move_SOFT_BOILED:
- loadspritegfx 0x27DA
- loadspritegfx 0x27DB
- loadspritegfx 0x272F
+ loadspritegfx ANIM_TAG_BREAKING_EGG
+ loadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_ATK_PARTNER
playsewithpan SE_W039, -64
- createvisualtask sub_80D51AC, 0x2, 0, 0, 2, 6, 1
- createsprite gUnknown_085937B0, 0x4, 0, 16, 0
- createsprite gUnknown_085937B0, 0x4, 0, 16, 1
- delay 0x78
- delay 0x7
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 2, 6, 1
+ createsprite gUnknown_085937B0, 4, 0, 16, 0
+ createsprite gUnknown_085937B0, 4, 0, 16, 1
+ delay 120
+ delay 7
playsewithpan SE_W030, -64
- createsprite gUnknown_08597274, 0x2, 31, 3, 10, 0, RGB(12, 24, 30)
- createsprite gUnknown_0859381C, 0x3, 31, 16, 0, 1
- delay 0x8
- createsprite gUnknown_0859381C, 0x3, 31, 16, 0, 1
- delay 0x3C
- setarg 0x7, 0xFFFF
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 3, 10, 0, RGB(12, 24, 30)
+ createsprite gUnknown_0859381C, 3, 31, 16, 0, 1
+ delay 8
+ createsprite gUnknown_0859381C, 3, 31, 16, 0, 1
+ delay 60
+ setarg 7, -1
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
- call AnimScript_82D7A28
+ call HealingEffect2
end
Move_HEAL_BELL:
- loadspritegfx 0x27DD
- loadspritegfx 0x27DE
- loadspritegfx 0x27DB
- createvisualtask sub_8116620, 0xA, 10, 0, 0, 10, 0x7FFF
- waitforvisualfinish
- createvisualtask sub_8105CB4, 0x5
- createsprite gUnknown_08593938, 0x2, 0, -24, 0, 1
- delay 0xC
- createsprite gUnknown_08593958, 0x28, 0, -24, 48, -18, 35, 0, 0
- createsprite gUnknown_08593958, 0x28, 0, -24, -48, 20, 30, 1, 1
- createsprite gUnknown_08593958, 0x28, 0, -24, -38, -29, 30, 2, 2
- createsprite gUnknown_08593958, 0x28, 0, -24, 36, 18, 30, 3, 3
- call AnimScript_82D3EF8
+ loadspritegfx ANIM_TAG_BELL
+ loadspritegfx ANIM_TAG_MUSIC_NOTES
+ loadspritegfx ANIM_TAG_203
+ createvisualtask sub_8116620, 10, 10, 0, 0, 10, RGB_WHITE
+ waitforvisualfinish
+ createvisualtask sub_8105CB4, 5
+ createsprite gUnknown_08593938, 2, 0, -24, 0, 1
+ delay 12
+ createsprite gUnknown_08593958, 40, 0, -24, 48, -18, 35, 0, 0
+ createsprite gUnknown_08593958, 40, 0, -24, -48, 20, 30, 1, 1
+ createsprite gUnknown_08593958, 40, 0, -24, -38, -29, 30, 2, 2
+ createsprite gUnknown_08593958, 40, 0, -24, 36, 18, 30, 3, 3
+ call HealBell1
delay 0x21
- createsprite gUnknown_08593958, 0x28, 0, -24, 19, 26, 35, 4, 4
- createsprite gUnknown_08593958, 0x28, 0, -24, -34, -12, 30, 5, 5
- createsprite gUnknown_08593958, 0x28, 0, -24, 41, -20, 34, 6, 2
- createsprite gUnknown_08593958, 0x28, 0, -24, -15, 26, 32, 7, 0
- call AnimScript_82D3EF8
+ createsprite gUnknown_08593958, 40, 0, -24, 19, 26, 35, 4, 4
+ createsprite gUnknown_08593958, 40, 0, -24, -34, -12, 30, 5, 5
+ createsprite gUnknown_08593958, 40, 0, -24, 41, -20, 34, 6, 2
+ createsprite gUnknown_08593958, 40, 0, -24, -15, 26, 32, 7, 0
+ call HealBell1
delay 0x21
- createsprite gUnknown_08593958, 0x28, 0, -24, -48, 18, 31, 0, 2
- createsprite gUnknown_08593958, 0x28, 0, -24, 48, -20, 30, 2, 5
- createsprite gUnknown_08593958, 0x28, 0, -24, 38, 29, 33, 4, 3
- createsprite gUnknown_08593958, 0x28, 0, -24, -36, -18, 30, 6, 1
- call AnimScript_82D3EF8
- waitforvisualfinish
- createvisualtask sub_8105D60, 0x5
- waitforvisualfinish
- unloadspritegfx 0x27DD
- unloadspritegfx 0x27DE
- unloadspritegfx 0x27DB
- loadspritegfx 0x2741
+ createsprite gUnknown_08593958, 40, 0, -24, -48, 18, 31, 0, 2
+ createsprite gUnknown_08593958, 40, 0, -24, 48, -20, 30, 2, 5
+ createsprite gUnknown_08593958, 40, 0, -24, 38, 29, 33, 4, 3
+ createsprite gUnknown_08593958, 40, 0, -24, -36, -18, 30, 6, 1
+ call HealBell1
+ waitforvisualfinish
+ createvisualtask sub_8105D60, 5
+ waitforvisualfinish
+ unloadspritegfx ANIM_TAG_BELL
+ unloadspritegfx ANIM_TAG_MUSIC_NOTES
+ unloadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_SPARKLE
playsewithpan SE_W234, -64
- createsprite gUnknown_08592B94, 0x10, -15, 0, 0, 0, 32, 60, 1
- delay 0x8
- createsprite gUnknown_08592B94, 0x10, 12, -5, 0, 0, 32, 60, 1
+ createsprite gUnknown_08592B94, 16, -15, 0, 0, 0, 32, 60, 1
+ delay 8
+ createsprite gUnknown_08592B94, 16, 12, -5, 0, 0, 32, 60, 1
waitforvisualfinish
- unloadspritegfx 0x2741
- loadspritegfx 0x27DB
+ unloadspritegfx ANIM_TAG_SPARKLE
+ loadspritegfx ANIM_TAG_203
playsewithpan SE_REAPOKE, -64
- createvisualtask sub_8116664, 0xA, 4, 3, 10, 0, 31500
- createvisualtask sub_8116620, 0xA, 10, 3, 10, 0, 0x7FFF
- createsprite gUnknown_08593868, 0x10, 0, 0, 0, 1
- end
-
-AnimScript_82D3EF8:
- createvisualtask sub_8116664, 0xA, 4, 3, 8, 0, 31500
- createvisualtask sub_8116620, 0xA, 10, 3, 2, 10, 0x7FFF
- createsprite gUnknown_0859381C, 0x28, 0, -24, 0, 1
+ createvisualtask sub_8116664, 10, 4, 3, 10, 0, RGB(12, 24, 30)
+ createvisualtask sub_8116620, 10, 10, 3, 10, 0, RGB_WHITE
+ createsprite gUnknown_08593868, 16, 0, 0, 0, 1
+ end
+HealBell1:
+ createvisualtask sub_8116664, 10, 4, 3, 8, 0, RGB(12, 24, 30)
+ createvisualtask sub_8116620, 10, 10, 3, 2, 10, RGB_WHITE
+ createsprite gUnknown_0859381C, 40, 0, -24, 0, 1
playsewithpan SE_W215, -64
return
Move_FAKE_OUT:
playsewithpan SE_W260, 0
- createvisualtask sub_8105EB0, 0x5
+ createvisualtask sub_8105EB0, 5
waitforvisualfinish
playsewithpan SE_W166, +63
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 5, 1
- createvisualtask sub_8106020, 0x3
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1
+ createvisualtask sub_8106020, 3
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 3, 16, 0, RGB_WHITE
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 16, 0, RGB_WHITE
end
Move_SCARY_FACE:
- loadspritegfx 0x27EA
- createsprite gUnknown_08597274, 0x2, 27, 3, 0, 16, 0
+ loadspritegfx ANIM_TAG_218
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 27, 3, 0, 16, RGB_BLACK
playsewithpan SE_W060, -64
waitforvisualfinish
- delay 0xA
+ delay 10
playsewithpan SE_W043, -64
- createvisualtask sub_81064F8, 0x5
- delay 0xD
- createsprite gUnknown_08593A84, 0x0, -16, -8
- createsprite gUnknown_08593A84, 0x0, 16, -8
+ createvisualtask sub_81064F8, 5
+ delay 13
+ createsprite gUnknown_08593A84, 0, -16, -8
+ createsprite gUnknown_08593A84, 0, 16, -8
waitforvisualfinish
- createvisualtask sub_810A094, 0x3, 20, 1, 0
+ createvisualtask sub_810A094, 3, 20, 1, 0
playsewithpan SE_W081B, +63
- createsprite gUnknown_08597274, 0x2, 27, 3, 16, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 27, 3, 16, 0, RGB_BLACK
waitforvisualfinish
end
Move_SWEET_KISS:
- loadspritegfx 0x27E8
- loadspritegfx 0x27EC
- createsprite gUnknown_08593AA8, 0x82, 16, -48
+ loadspritegfx ANIM_TAG_216
+ loadspritegfx ANIM_TAG_ANGEL
+ createsprite gUnknown_08593AA8, 130, 16, -48
playsewithpan SE_W215, +63
- delay 0x17
+ delay 23
playsewithpan SE_W215, +63
- delay 0x17
+ delay 23
playsewithpan SE_W215, +63
waitforvisualfinish
- createsprite gUnknown_085939B8, 0x83, 160, -30
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 160, -30
playsewithpan SE_W213, +63
- createsprite gUnknown_085939B8, 0x83, -256, -42
- createsprite gUnknown_085939B8, 0x83, 128, -14
- createsprite gUnknown_085939B8, 0x83, 416, -38
- createsprite gUnknown_085939B8, 0x83, -128, -22
- createsprite gUnknown_085939B8, 0x83, -384, -31
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -256, -42
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 128, -14
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, 416, -38
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -128, -22
+ createsprite gBattleAnimSpriteTemplate_85939B8, 131, -384, -31
end
Move_LOVELY_KISS:
- loadspritegfx 0x27EB
- loadspritegfx 0x27ED
- createsprite gUnknown_08593AF0, 0x82, 0, -24
+ loadspritegfx ANIM_TAG_219
+ loadspritegfx ANIM_TAG_EVIL_ANGEL
+ createsprite gUnknown_08593AF0, 130, 0, -24
playsewithpan SE_W060B, +63
waitforvisualfinish
playsewithpan SE_W213, +63
- createsprite gUnknown_08593AC0, 0x83, -256, -42
- createsprite gUnknown_08593AC0, 0x83, 128, -14
- createsprite gUnknown_08593AC0, 0x83, 416, -38
- createsprite gUnknown_08593AC0, 0x83, -128, -22
+ createsprite gUnknown_08593AC0, 131, -256, -42
+ createsprite gUnknown_08593AC0, 131, 128, -14
+ createsprite gUnknown_08593AC0, 131, 416, -38
+ createsprite gUnknown_08593AC0, 131, -128, -22
end
Move_FURY_SWIPES:
- loadspritegfx 0x27EE
- createsprite gUnknown_0857FE28, 0x2, 5, 5
- delay 0x4
+ loadspritegfx ANIM_TAG_222
+ createsprite gHorizontalLungeSpriteTemplate, 2, 5, 5
+ delay 4
playsewithpan SE_W010, +63
- createsprite gUnknown_08593B38, 0x82, 16, 0, 1
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 5, 1
- delay 0xA
- createsprite gUnknown_0857FE28, 0x82, 5, 5
- delay 0x4
+ createsprite gUnknown_08593B38, 130, 16, 0, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 5, 1
+ delay 10
+ createsprite gHorizontalLungeSpriteTemplate, 130, 5, 5
+ delay 4
playsewithpan SE_W010, +63
- createsprite gUnknown_08593B38, 0x82, -16, 0, 0
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 7, 1
+ createsprite gUnknown_08593B38, 130, -16, 0, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1
end
Move_INGRAIN:
- loadspritegfx 0x27EF
- loadspritegfx 0x27A3
- createsprite gUnknown_0859254C, 0x2, 16, 26, -1, 2, 150
+ loadspritegfx ANIM_TAG_223
+ loadspritegfx ANIM_TAG_147
+ createsprite gUnknown_0859254C, 2, 16, 26, -1, 2, 150
playsewithpan SE_W010, -64
- delay 0xA
- createsprite gUnknown_0859254C, 0x2, -32, 20, 1, 1, 140
+ delay 10
+ createsprite gUnknown_0859254C, 2, -32, 20, 1, 1, 140
playsewithpan SE_W010, -64
- delay 0xA
- createsprite gUnknown_0859254C, 0x2, 32, 22, 1, 0, 130
+ delay 10
+ createsprite gUnknown_0859254C, 2, 32, 22, 1, 0, 130
playsewithpan SE_W010, -64
- delay 0xA
- createsprite gUnknown_0859254C, 0x2, -16, 25, -1, 3, 120
+ delay 10
+ createsprite gUnknown_0859254C, 2, -16, 25, -1, 3, 120
playsewithpan SE_W010, -64
- delay 0x28
- createsprite gUnknown_0859258C, 0x3, 32, 26, -1, 3, 30
- delay 0x5
+ delay 40
+ createsprite gUnknown_0859258C, 3, 32, 26, -1, 3, 30
+ delay 5
playsewithpan SE_W145C, -64
- delay 0x5
- createsprite gUnknown_0859258C, 0x3, -48, 20, 1, 2, 30
+ delay 5
+ createsprite gUnknown_0859258C, 3, -48, 20, 1, 2, 30
playsewithpan SE_W145C, -64
- delay 0x5
+ delay 5
playsewithpan SE_W145C, -64
- delay 0x5
- createsprite gUnknown_0859258C, 0x3, 48, 26, -2, 3, 18
+ delay 5
+ createsprite gUnknown_0859258C, 3, 48, 26, -2, 3, 18
playsewithpan SE_W145C, -64
- delay 0xA
+ delay 10
waitforvisualfinish
end
Move_PRESENT:
- loadspritegfx 0x27F0
- createvisualtask sub_815A904, 0x2
- createsprite gUnknown_08592610, 0x82, 0, -5, 10, 2, -1
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ createvisualtask AnimTask_IsHealingMove, 2
+ createsprite gUnknown_08592610, 130, 0, -5, 10, 2, -1
playsewithpan SE_W039, -64
- delay 0xE
+ delay 14
playsewithpan SE_W145B, -64
- delay 0xE
+ delay 14
playsewithpan SE_W145B, 0
- delay 0x14
+ delay 20
playsewithpan SE_W145B, +63
waitforvisualfinish
- jumpargeq 0x7, 0x0, AnimScript_82D41D4
- jumpargeq 0x7, 0x1, AnimScript_82D423F
+ jumpretfalse PresentDamage
+ jumprettrue PresentHeal
end
-AnimScript_82D41D4:
- loadspritegfx 0x27D6
+PresentDamage:
+ loadspritegfx ANIM_TAG_EXPLOSION
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x83, 0, 0, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 131, 0, 0, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x83, 24, -24, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 131, 24, -24, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x83, -16, 16, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 131, -16, 16, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x83, -24, -12, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 131, -24, -12, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x83, 16, 16, 1, 1
+ createsprite gBattleAnimSpriteTemplate_859371C, 131, 16, 16, 1, 1
end
-AnimScript_82D423F:
- loadspritegfx 0x27D3
- loadspritegfx 0x272F
+PresentHeal:
+ loadspritegfx ANIM_TAG_GREEN_SPARKLE
+ loadspritegfx ANIM_TAG_BLUE_STAR
playsewithpan SE_W234, +63
- createsprite gUnknown_08592658, 0x84, -16, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, 16, 32, -3, -1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, 32, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, -32, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, 0, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, -8, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, -8, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, 24, 32, -3, 1
- delay 0x3
- createsprite gUnknown_08592658, 0x84, -24, 32, -3, 1
+ createsprite gUnknown_08592658, 132, -16, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, 16, 32, -3, -1
+ delay 3
+ createsprite gUnknown_08592658, 132, 32, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, -32, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, 0, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, -8, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, -8, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, 24, 32, -3, 1
+ delay 3
+ createsprite gUnknown_08592658, 132, -24, 32, -3, 1
waitforvisualfinish
waitsound
- call AnimScript_82D7A28
+ call HealingEffect2
end
Move_BATON_PASS:
- loadspritegfx 0x27F2
+ loadspritegfx ANIM_TAG_226
playsewithpan SE_W226, -64
- createvisualtask sub_8115A04, 0x2, 31, 1, 2, 0, 11, 31455
- createsprite gUnknown_085CE370, 0x2
+ createvisualtask sub_8115A04, 2, 31, 1, 2, 0, 11, RGB(31, 22, 30)
+ createsprite gUnknown_085CE370, 2
end
Move_PERISH_SONG:
- loadspritegfx 0x27DE
- createsprite gUnknown_08593C0C, 0x4, 0, 0, 0
- createsprite gUnknown_08593C0C, 0x4, 1, 1, 16
- createsprite gUnknown_08593C0C, 0x4, 2, 1, 32
- createsprite gUnknown_08593C0C, 0x4, 3, 2, 48
- createsprite gUnknown_08593C0C, 0x4, 4, 2, 64
- createsprite gUnknown_08593C0C, 0x4, 5, 0, 80
- createsprite gUnknown_08593C0C, 0x4, 6, 0, 96
- createsprite gUnknown_08593C0C, 0x4, 7, 1, 112
- createsprite gUnknown_08593C0C, 0x4, 8, 2, 128
- createsprite gUnknown_08593C0C, 0x4, 9, 0, 144
- createsprite gUnknown_08593C0C, 0x4, 10, 2, 160
- createsprite gUnknown_08593C0C, 0x4, 11, 0, 176
- createsprite gUnknown_08593C0C, 0x4, 12, 1, 192
- createsprite gUnknown_08593C0C, 0x4, 13, 3, 208
- createsprite gUnknown_08593C0C, 0x4, 14, 3, 224
- createsprite gUnknown_08593C0C, 0x4, 15, 0, 240
- createsprite gUnknown_08593C24, 0x4, 15, 0, 0
- delay 0x14
- panse_1B SE_W195, -64, +63, +2, 0x0
- delay 0x50
- createsprite gUnknown_08597274, 0x2, 1, 3, 0, 16, 0
- createvisualtask sub_811489C, 0x5, 4, 0
- createvisualtask sub_811489C, 0x5, 5, 0
- createvisualtask sub_811489C, 0x5, 6, 0
- createvisualtask sub_811489C, 0x5, 7, 0
- delay 0x64
- createsprite gUnknown_08597274, 0x2, 1, 3, 16, 0, 0
- createvisualtask sub_811489C, 0x5, 4, 1
- createvisualtask sub_811489C, 0x5, 5, 1
- createvisualtask sub_811489C, 0x5, 6, 1
- createvisualtask sub_811489C, 0x5, 7, 1
+ loadspritegfx ANIM_TAG_MUSIC_NOTES
+ createsprite gUnknown_08593C0C, 4, 0, 0, 0
+ createsprite gUnknown_08593C0C, 4, 1, 1, 16
+ createsprite gUnknown_08593C0C, 4, 2, 1, 32
+ createsprite gUnknown_08593C0C, 4, 3, 2, 48
+ createsprite gUnknown_08593C0C, 4, 4, 2, 64
+ createsprite gUnknown_08593C0C, 4, 5, 0, 80
+ createsprite gUnknown_08593C0C, 4, 6, 0, 96
+ createsprite gUnknown_08593C0C, 4, 7, 1, 112
+ createsprite gUnknown_08593C0C, 4, 8, 2, 128
+ createsprite gUnknown_08593C0C, 4, 9, 0, 144
+ createsprite gUnknown_08593C0C, 4, 10, 2, 160
+ createsprite gUnknown_08593C0C, 4, 11, 0, 176
+ createsprite gUnknown_08593C0C, 4, 12, 1, 192
+ createsprite gUnknown_08593C0C, 4, 13, 3, 208
+ createsprite gUnknown_08593C0C, 4, 14, 3, 224
+ createsprite gUnknown_08593C0C, 4, 15, 0, 240
+ createsprite gUnknown_08593C24, 4, 15, 0, 0
+ delay 20
+ panse_1B SE_W195, -64, +63, +2, 0
+ delay 80
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 0, 16, RGB_BLACK
+ createvisualtask sub_811489C, 5, 4, 0
+ createvisualtask sub_811489C, 5, 5, 0
+ createvisualtask sub_811489C, 5, 6, 0
+ createvisualtask sub_811489C, 5, 7, 0
+ delay 100
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 16, 0, RGB_BLACK
+ createvisualtask sub_811489C, 5, 4, 1
+ createvisualtask sub_811489C, 5, 5, 1
+ createvisualtask sub_811489C, 5, 6, 1
+ createvisualtask sub_811489C, 5, 7, 1
waitforvisualfinish
end
Move_SLEEP_TALK:
- loadspritegfx 0x27F4
- createvisualtask sub_80D5EB8, 0x5, 0, 4, 4096, 2, 0
- delay 0x14
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -1
+ loadspritegfx ANIM_TAG_LETTER_Z
+ createvisualtask AnimTask_SwayMon, 5, 0, 4, 4096, 2, ANIM_ATTACKER
+ delay 20
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -1
playsewithpan SE_W173, -64
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -1
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -1
- delay 0x14
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -5
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -1
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -1
+ delay 20
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -5
playsewithpan SE_W173, -64
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -5
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -5
- delay 0x14
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -3
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -5
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -5
+ delay 20
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -3
playsewithpan SE_W173, -64
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -3
- delay 0x6
- createsprite gUnknown_085CE190, 0x82, 0, 20, 5, -3
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -3
+ delay 6
+ createsprite gUnknown_085CE190, 130, 0, 20, 5, -3
waitforvisualfinish
end
Move_HYPER_FANG:
- loadspritegfx 0x27D0
+ loadspritegfx ANIM_TAG_192
playsewithpan SE_W044, +63
- delay 0x1
- delay 0x2
- createvisualtask sub_8117E60, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D458E
- createvisualtask sub_815A8C8, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82D4580
- goto AnimScript_82D4587
-
-AnimScript_82D455C:
+ delay 1
+ delay 2
+ createvisualtask AnimTask_IsContest, 2
+ jumprettrue HyperFangInContest
+ createvisualtask AnimTask_IsTargetPlayerSide, 2
+ jumpretfalse HyperFangOnOpponent
+ goto HyperFangOnPlayer
+HyperFangContinue:
waitbgfadeout
- createsprite gUnknown_085CE1DC, 0x82
+ createsprite gUnknown_085CE1DC, 130
waitbgfadein
- createvisualtask sub_80D51AC, 0x3, 1, 0, 10, 10, 1
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 10, 10, 1
playsewithpan SE_W043, +63
- delay 0x14
+ delay 20
restorebg
waitbgfadein
waitforvisualfinish
end
-
-AnimScript_82D4580:
+HyperFangOnOpponent:
fadetobg BG_IMPACT_OPPONENT
- goto AnimScript_82D455C
-
-AnimScript_82D4587:
+ goto HyperFangContinue
+HyperFangOnPlayer:
fadetobg BG_IMPACT_PLAYER
- goto AnimScript_82D455C
-
-AnimScript_82D458E:
+ goto HyperFangContinue
+HyperFangInContest:
fadetobg BG_IMPACT_CONTESTS
- goto AnimScript_82D455C
+ goto HyperFangContinue
Move_TRI_ATTACK:
- loadspritegfx 0x27F6
- createsprite gUnknown_085CE2F8, 0x82, 16, 0
+ loadspritegfx ANIM_TAG_TRI_FORCE_TRIANGLE
+ createsprite gUnknown_085CE2F8, 130, 16, 0
playsewithpan SE_W161, -64
- delay 0x14
+ delay 20
playsewithpan SE_W161, -64
- delay 0x14
+ delay 20
createsoundtask sub_8158C58, 220, -64, 63, 5, 6, 0, 7
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 16, 0
- delay 0x10
- loadspritegfx 0x2731
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 16, RGB_BLACK
+ delay 16
+ loadspritegfx ANIM_TAG_FIRE
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, 0
playsewithpan SE_W172B, +63
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 0, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, -1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 2, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 1, -1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, -1, 1
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 1, -2
- delay 0x1
- createsprite gUnknown_08595410, 0x82, 0, 0, 30, 30, 3, 1
- delay 0x2
- createvisualtask sub_810A094, 0x2, 20, 3, 1, 1
- waitforvisualfinish
- loadspritegfx 0x2735
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 0, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, -1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 2, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 1, -1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, -1, 1
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 1, -2
+ delay 1
+ createsprite gUnknown_08595410, 130, 0, 0, 30, 30, 3, 1
+ delay 2
+ createvisualtask sub_810A094, 2, 20, 3, 1, 1
+ waitforvisualfinish
+ loadspritegfx ANIM_TAG_LIGHTNING
+ createvisualtask sub_8115F10, 2, 257, 257, 257
playsewithpan SE_W161B, +63
- createsprite gUnknown_085956C0, 0x82, 0, -48
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, -16
- delay 0x1
- createsprite gUnknown_085956C0, 0x82, 0, 16
- delay 0x14
- createvisualtask sub_810A094, 0x2, 20, 3, 1, 0
- delay 0x2
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
+ createsprite gUnknown_085956C0, 130, 0, -48
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, -16
+ delay 1
+ createsprite gUnknown_085956C0, 130, 0, 16
+ delay 20
+ createvisualtask sub_810A094, 2, 20, 3, 1, 0
+ delay 2
+ createvisualtask sub_8115F10, 2, 257, 257, 257
waitforvisualfinish
- loadspritegfx 0x279D
- call AnimScript_82D7720
- createsprite gUnknown_08597274, 0x2, 1, 2, 16, 0, 0
+ loadspritegfx ANIM_TAG_141
+ call FreezeEffect1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 16, 0, RGB_BLACK
waitforvisualfinish
end
Move_WILL_O_WISP:
- loadspritegfx 0x27F8
- loadspritegfx 0x27F7
+ loadspritegfx ANIM_TAG_232
+ loadspritegfx ANIM_TAG_231
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
playsewithpan SE_W052, -64
- waitplaysewithpan SE_W052, -64, 0xA
- createvisualtask sub_8159278, 0x2, -64, -64, 1, 0
- createsprite gUnknown_0859563C, 0x2, 0, 0, 0
- delay 0x3
- createsprite gUnknown_0859563C, 0x3, 0, 0, 1
- delay 0x3
- createsprite gUnknown_0859563C, 0x4, 0, 0, 2
- delay 0x3
- createsprite gUnknown_0859563C, 0x4, 0, 0, 3
- delay 0x28
- createvisualtask sub_8159278, 0x2, -64, 63, 2, 0
+ waitplaysewithpan SE_W052, -64, 10
+ createvisualtask sub_8159278, 2, -64, -64, 1, 0
+ createsprite gUnknown_0859563C, 2, 0, 0, 0
+ delay 3
+ createsprite gUnknown_0859563C, 3, 0, 0, 1
+ delay 3
+ createsprite gUnknown_0859563C, 4, 0, 0, 2
+ delay 3
+ createsprite gUnknown_0859563C, 4, 0, 0, 3
+ delay 40
+ createvisualtask sub_8159278, 2, -64, 63, 2, 0
waitforvisualfinish
monbgprio_29
playsewithpan SE_W172B, +63
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 13, 1
- createsprite gUnknown_0859566C, 0x2, 0
- createsprite gUnknown_0859566C, 0x2, 42
- createsprite gUnknown_0859566C, 0x2, 84
- createsprite gUnknown_0859566C, 0x2, 126
- createsprite gUnknown_0859566C, 0x2, 168
- createsprite gUnknown_0859566C, 0x2, 210
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 13, 1
+ createsprite gUnknown_0859566C, 2, 0
+ createsprite gUnknown_0859566C, 2, 42
+ createsprite gUnknown_0859566C, 2, 84
+ createsprite gUnknown_0859566C, 2, 126
+ createsprite gUnknown_0859566C, 2, 168
+ createsprite gUnknown_0859566C, 2, 210
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_ENCORE:
- loadspritegfx 0x27F3
- loadspritegfx 0x2807
- createvisualtask sub_815ABEC, 0x2
- createvisualtask sub_8116960, 0x2, 248, 3, 0, 10, 0
+ loadspritegfx ANIM_TAG_227
+ loadspritegfx ANIM_TAG_HAND
+ createvisualtask sub_815ABEC, 2
+ createvisualtask sub_8116960, 2, 248, 3, 0, 10, 0
waitforvisualfinish
- createsprite gUnknown_085CE22C, 0x82, 0, -8
- createsprite gUnknown_085CE244, 0x2, -2, 0, 0, 0, 9
- createsprite gUnknown_085CE244, 0x2, 2, 0, 1, 0, 9
- createsprite gUnknown_085CE25C, 0x3, -2, 0, 0, 0, 9
- createsprite gUnknown_085CE25C, 0x3, 2, 0, 1, 0, 9
- delay 0x10
- createvisualtask sub_8159244, 0x5, 223, 63
- createvisualtask sub_80D5EB8, 0x5, 1, 8, 1536, 5, 1
+ createsprite gUnknown_085CE22C, 130, 0, -8
+ createsprite gUnknown_085CE244, 2, -2, 0, 0, 0, 9
+ createsprite gUnknown_085CE244, 2, 2, 0, 1, 0, 9
+ createsprite gUnknown_085CE25C, 3, -2, 0, 0, 0, 9
+ createsprite gUnknown_085CE25C, 3, 2, 0, 1, 0, 9
+ delay 16
+ createvisualtask sub_8159244, 5, 223, 63
+ createvisualtask AnimTask_SwayMon, 5, 1, 8, 1536, 5, ANIM_TARGET
waitforvisualfinish
- createvisualtask sub_8116960, 0x2, 248, 3, 10, 0, 1
+ createvisualtask sub_8116960, 2, 248, 3, 10, 0, 1
waitforvisualfinish
- createvisualtask sub_815AC8C, 0x2
+ createvisualtask sub_815AC8C, 2
end
Move_TRICK:
- loadspritegfx 0x27F0
- loadspritegfx 0x27DF
- createsprite gUnknown_085926E8, 0x2, -40, 80
- createsprite gUnknown_085926E8, 0x2, -40, 208
- delay 0x10
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ loadspritegfx ANIM_TAG_207
+ createsprite gUnknown_085926E8, 2, -40, 80
+ createsprite gUnknown_085926E8, 2, -40, 208
+ delay 16
playsewithpan SE_W166, 0
- createvisualtask sub_8106020, 0x3
- createvisualtask sub_81060B0, 0x3
- delay 0x1E
+ createvisualtask sub_8106020, 3
+ createvisualtask sub_81060B0, 3
+ delay 30
playsewithpan SE_W104, 0
- delay 0x18
+ delay 24
playsewithpan SE_W104, 0
- delay 0x10
+ delay 16
playsewithpan SE_W104, 0
- delay 0x10
+ delay 16
playsewithpan SE_W104, 0
- delay 0x10
+ delay 16
playsewithpan SE_W104, 0
- delay 0x10
+ delay 16
playsewithpan SE_W104, 0
- delay 0x10
+ delay 16
playsewithpan SE_W213, 0
- createvisualtask sub_80D51AC, 0x3, 0, 5, 0, 7, 2
- createvisualtask sub_80D51AC, 0x3, 1, 5, 0, 7, 2
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_ATTACKER, 5, 0, 7, 2
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 5, 0, 7, 2
waitforvisualfinish
end
Move_WISH:
- loadspritegfx 0x27F9
- loadspritegfx 0x2741
- createsprite gUnknown_08597274, 0x2, 1, 3, 0, 10, 0
+ loadspritegfx ANIM_TAG_233
+ loadspritegfx ANIM_TAG_SPARKLE
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 0, 10, RGB_BLACK
waitforvisualfinish
- panse_27 SE_W115, +63, -64, -3, 0x0
- createsprite gUnknown_085CE388, 0x28
+ panse_27 SE_W115, +63, -64, -3, 0
+ createsprite gUnknown_085CE388, 40
waitforvisualfinish
- delay 0x3C
- loopsewithpan SE_W215, -64, 0x10, 0x3
- call AnimScript_82D79B4
+ delay 60
+ loopsewithpan SE_W215, -64, 16, 3
+ call GrantingStarsEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 3, 10, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 10, 0, RGB_BLACK
waitforvisualfinish
end
Move_STOCKPILE:
- loadspritegfx 0x27FB
+ loadspritegfx ANIM_TAG_235
playsewithpan SE_W025, -64
- createvisualtask sub_8115A04, 0x2, 2, 8, 1, 0, 12, 0x7FFF
- createvisualtask sub_815B65C, 0x5
- call AnimScript_82D4972
- call AnimScript_82D4972
- waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 2, 0, 12, 0, RGB_WHITE
- end
-
-AnimScript_82D4972:
- createsprite gUnknown_08592244, 0x2, 55, 55, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, -55, -55, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, 0, 55, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, 0, -55, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, 55, -34, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, 55, 34, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, -55, -34, 13
- delay 0x1
- createsprite gUnknown_08592244, 0x2, -55, 34, 13
- delay 0x1
+ createvisualtask sub_8115A04, 2, 2, 8, 1, 0, 12, RGB_WHITE
+ createvisualtask sub_815B65C, 5
+ call Stockpile1
+ call Stockpile1
+ waitforvisualfinish
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 0, 12, 0, RGB_WHITE
+ end
+Stockpile1:
+ createsprite gUnknown_08592244, 2, 55, 55, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, -55, -55, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, 0, 55, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, 0, -55, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, 55, -34, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, 55, 34, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, -55, -34, 13
+ delay 1
+ createsprite gUnknown_08592244, 2, -55, 34, 13
+ delay 1
return
Move_SPIT_UP:
- loadspritegfx 0x27FD
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_237
+ loadspritegfx ANIM_TAG_135
playsewithpan SE_W036, -64
- createvisualtask sub_815B6B4, 0x5
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 8, 2
- delay 0x2D
+ createvisualtask sub_815B6B4, 5
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 8, 2
+ delay 45
playsewithpan SE_W255, -64
- delay 0x3
- createsprite gUnknown_08593A50, 0x2, 0, 12
- createsprite gUnknown_08593A50, 0x2, 32, 12
- createsprite gUnknown_08593A50, 0x2, 64, 12
- createsprite gUnknown_08593A50, 0x2, 96, 12
- createsprite gUnknown_08593A50, 0x2, 128, 12
- createsprite gUnknown_08593A50, 0x2, 160, 12
- createsprite gUnknown_08593A50, 0x2, 192, 12
- createsprite gUnknown_08593A50, 0x2, 224, 12
- delay 0x5
- jumpifmoveturn 0x2, AnimScript_82D4AB8
- jumpifmoveturn 0x3, AnimScript_82D4AE1
-
-AnimScript_82D4A7B:
- delay 0x5
- createvisualtask sub_80D6388, 0x2, 0, 1, 8, 1, 0
+ delay 3
+ createsprite gUnknown_08593A50, 2, 0, 12
+ createsprite gUnknown_08593A50, 2, 32, 12
+ createsprite gUnknown_08593A50, 2, 64, 12
+ createsprite gUnknown_08593A50, 2, 96, 12
+ createsprite gUnknown_08593A50, 2, 128, 12
+ createsprite gUnknown_08593A50, 2, 160, 12
+ createsprite gUnknown_08593A50, 2, 192, 12
+ createsprite gUnknown_08593A50, 2, 224, 12
+ delay 5
+ jumpifmoveturn 2, SpitUpStrong
+ jumpifmoveturn 3, SpitUpStrongest
+SpitUpContinue:
+ delay 5
+ createvisualtask sub_80D6388, 2, 0, 1, 8, 1, 0
playsewithpan SE_W003, +63
- createsprite gUnknown_085973E8, 0x83, -12, 10, 1, 1
- delay 0x5
+ createsprite gUnknown_085973E8, 131, -12, 10, 1, 1
+ delay 5
playsewithpan SE_W003, +63
- createsprite gUnknown_085973E8, 0x83, 12, -10, 1, 1
- waitforvisualfinish
- end
-
-AnimScript_82D4AB8:
- createsprite gUnknown_08593A50, 0x2, 16
- createsprite gUnknown_08593A50, 0x2, 80
- createsprite gUnknown_08593A50, 0x2, 144
- createsprite gUnknown_08593A50, 0x2, 208
- goto AnimScript_82D4A7B
-
-AnimScript_82D4AE1:
- createsprite gUnknown_08593A50, 0x2, 16
- createsprite gUnknown_08593A50, 0x2, 48
- createsprite gUnknown_08593A50, 0x2, 80
- createsprite gUnknown_08593A50, 0x2, 112
- createsprite gUnknown_08593A50, 0x2, 144
- createsprite gUnknown_08593A50, 0x2, 176
- createsprite gUnknown_08593A50, 0x2, 208
- createsprite gUnknown_08593A50, 0x2, 240
- goto AnimScript_82D4A7B
+ createsprite gUnknown_085973E8, 131, 12, -10, 1, 1
+ waitforvisualfinish
+ end
+SpitUpStrong:
+ createsprite gUnknown_08593A50, 2, 16
+ createsprite gUnknown_08593A50, 2, 80
+ createsprite gUnknown_08593A50, 2, 144
+ createsprite gUnknown_08593A50, 2, 208
+ goto SpitUpContinue
+SpitUpStrongest:
+ createsprite gUnknown_08593A50, 2, 16
+ createsprite gUnknown_08593A50, 2, 48
+ createsprite gUnknown_08593A50, 2, 80
+ createsprite gUnknown_08593A50, 2, 112
+ createsprite gUnknown_08593A50, 2, 144
+ createsprite gUnknown_08593A50, 2, 176
+ createsprite gUnknown_08593A50, 2, 208
+ createsprite gUnknown_08593A50, 2, 240
+ goto SpitUpContinue
Move_SWALLOW:
- loadspritegfx 0x27FC
- loadspritegfx 0x272F
+ loadspritegfx ANIM_TAG_236
+ loadspritegfx ANIM_TAG_BLUE_STAR
playsewithpan SE_W036, -64
- createvisualtask sub_815B778, 0x5
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 8, 2
- delay 0x26
+ createvisualtask sub_815B778, 5
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 8, 2
+ delay 38
playsewithpan SE_W255, -64
- createvisualtask sub_80D52D0, 0x2, 0, 2, 0, 12, 1
- call AnimScript_82D4B7F
- jumpifmoveturn 0x2, AnimScript_82D4BC1
- jumpifmoveturn 0x3, AnimScript_82D4BCB
-
-AnimScript_82D4B78:
- waitforvisualfinish
- call AnimScript_82D79DF
- end
-
-AnimScript_82D4B7F:
- createsprite gUnknown_085CE418, 0x2, 0, -8
- delay 0x1
- createsprite gUnknown_085CE418, 0x2, -24, -8
- delay 0x1
- createsprite gUnknown_085CE418, 0x2, 16, -8
- delay 0x1
- createsprite gUnknown_085CE418, 0x2, -16, -8
- delay 0x1
- createsprite gUnknown_085CE418, 0x2, 24, -8
- delay 0x1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 12, 1
+ call SwallowEffect
+ jumpifmoveturn 2, SwallowGood
+ jumpifmoveturn 3, SwallowBest
+SwallowContinue:
+ waitforvisualfinish
+ call HealingEffect
+ end
+SwallowEffect:
+ createsprite gUnknown_085CE418, 2, 0, -8
+ delay 1
+ createsprite gUnknown_085CE418, 2, -24, -8
+ delay 1
+ createsprite gUnknown_085CE418, 2, 16, -8
+ delay 1
+ createsprite gUnknown_085CE418, 2, -16, -8
+ delay 1
+ createsprite gUnknown_085CE418, 2, 24, -8
+ delay 1
return
-
-AnimScript_82D4BC1:
- call AnimScript_82D4B7F
- goto AnimScript_82D4B78
-
-AnimScript_82D4BCB:
- call AnimScript_82D4B7F
- call AnimScript_82D4B7F
- goto AnimScript_82D4B78
+SwallowGood:
+ call SwallowEffect
+ goto SwallowContinue
+SwallowBest:
+ call SwallowEffect
+ call SwallowEffect
+ goto SwallowContinue
Move_TRANSFORM:
monbg ANIM_ATTACKER
playsewithpan SE_W100, -64
- waitplaysewithpan SE_W107, -64, 0x30
- createvisualtask sub_815B7D0, 0x2, 0
+ waitplaysewithpan SE_W107, -64, 48
+ createvisualtask sub_815B7D0, 2, 0
waitforvisualfinish
clearmonbg ANIM_ATTACKER
end
Move_MORNING_SUN:
- loadspritegfx 0x2801
- loadspritegfx 0x272F
- createvisualtask sub_815BB84, 0x5
- delay 0x8
- createvisualtask sub_8116620, 0xA, 1921, 8, 0, 12, 0x7FFF
- delay 0xE
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- call AnimScript_82D4C78
- createvisualtask sub_8116620, 0xA, 1921, 3, 12, 0, 0x7FFF
+ loadspritegfx ANIM_TAG_GREEN_STAR
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ createvisualtask sub_815BB84, 5
+ delay 8
+ createvisualtask sub_8116620, 10, 0x781, 8, 0, 12, RGB_WHITE
+ delay 14
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ call MorningSun1
+ createvisualtask sub_8116620, 10, 0x781, 3, 12, 0, RGB_WHITE
waitforvisualfinish
waitsound
- call AnimScript_82D79DF
+ call HealingEffect
end
-
-AnimScript_82D4C78:
- createsprite gUnknown_085CE48C, 0x2, 30, 640
- delay 0x5
+MorningSun1:
+ createsprite gUnknown_085CE48C, 2, 30, 640
+ delay 5
return
Move_SWEET_SCENT:
- loadspritegfx 0x27FE
+ loadspritegfx ANIM_TAG_238
playsewithpan SE_W230, -64
- createsprite gUnknown_085CE544, 0x2, 100, 0, 100
- delay 0x19
+ createsprite gUnknown_085CE544, 2, 100, 0, 100
+ delay 25
setpan 0
- call AnimScript_82D4CCA
- createsprite gUnknown_085CE544, 0x2, 55, 0
+ call SweetScentEffect
+ createsprite gUnknown_085CE544, 2, 55, 0
setpan +63
- createvisualtask sub_8115A04, 0x2, 20, 1, 5, 5, 13, 22207
- call AnimScript_82D4CCA
- waitforvisualfinish
- end
-
-AnimScript_82D4CCA:
- createsprite gUnknown_085CE544, 0x2, 70, 1, 64
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 60, 0, 64
- delay 0x5
- createsprite gUnknown_085CE544, 0x2, 80, 1, 64
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 58, 0, 120
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 100, 0, 120
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 90, 0, 64
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 48, 0, 64
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 95, 1, 80
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 100, 0, 120
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 75, 1, 64
- delay 0x2
- createsprite gUnknown_085CE544, 0x2, 85, 0, 120
- delay 0x2
+ createvisualtask sub_8115A04, 2, 20, 1, 5, 5, 13, RGB(31, 21, 21)
+ call SweetScentEffect
+ waitforvisualfinish
+ end
+SweetScentEffect:
+ createsprite gUnknown_085CE544, 2, 70, 1, 64
+ delay 2
+ createsprite gUnknown_085CE544, 2, 60, 0, 64
+ delay 5
+ createsprite gUnknown_085CE544, 2, 80, 1, 64
+ delay 2
+ createsprite gUnknown_085CE544, 2, 58, 0, 120
+ delay 2
+ createsprite gUnknown_085CE544, 2, 100, 0, 120
+ delay 2
+ createsprite gUnknown_085CE544, 2, 90, 0, 64
+ delay 2
+ createsprite gUnknown_085CE544, 2, 48, 0, 64
+ delay 2
+ createsprite gUnknown_085CE544, 2, 95, 1, 80
+ delay 2
+ createsprite gUnknown_085CE544, 2, 100, 0, 120
+ delay 2
+ createsprite gUnknown_085CE544, 2, 75, 1, 64
+ delay 2
+ createsprite gUnknown_085CE544, 2, 85, 0, 120
+ delay 2
return
Move_HYPER_BEAM:
- loadspritegfx 0x27A3
- createsprite gUnknown_08597274, 0x2, 1, 4, 0, 16, 0
+ loadspritegfx ANIM_TAG_147
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 4, 0, 16, RGB_BLACK
waitforvisualfinish
- delay 0xA
+ delay 10
playsewithpan SE_W063, -64
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 4, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 4, 1
waitforvisualfinish
- delay 0x1E
+ delay 30
createsoundtask sub_8158C58, 247, -64, 63, 1, 15, 0, 5
- createvisualtask sub_80D51AC, 0x2, 0, 0, 4, 50, 1
- createvisualtask sub_8115D94, 0x2, 10147, 1, 12, 31, 16, 0, 0
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 50, 1
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 11, 26425
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- call AnimScript_82D4EA1
- createvisualtask sub_8116620, 0xA, 4, 2, 11, 0, 26425
- waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 4, 16, 0, 0
- end
-
-AnimScript_82D4EA1:
- createsprite gUnknown_08592288, 0x82
- createsprite gUnknown_08592288, 0x82
- delay 0x1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 50, 1
+ createvisualtask sub_8115D94, 2, ANIM_TAG_147, 1, 12, 31, 16, 0, 0
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 50, 1
+ createvisualtask sub_8116620, 10, 4, 2, 0, 11, RGB(25, 25, 25)
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ call HyperBeam1
+ createvisualtask sub_8116620, 10, 4, 2, 11, 0, RGB(25, 25, 25)
+ waitforvisualfinish
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 4, 16, 0, RGB_BLACK
+ end
+HyperBeam1:
+ createsprite gUnknown_08592288, 130
+ createsprite gUnknown_08592288, 130
+ delay 1
return
Move_FLATTER:
- loadspritegfx 0x27F3
- loadspritegfx 0x2800
- createvisualtask sub_8159244, 0x5, 223, 63
- createvisualtask sub_815ABEC, 0x2
- createvisualtask sub_8116960, 0x2, 248, 3, 0, 10, 0
- waitforvisualfinish
- createsprite gUnknown_085CE5C0, 0x82, 0, -8, 80
- delay 0x0
- createsprite gUnknown_0857FE40, 0x2, 5, 2, 1
- delay 0xA
- createsprite gUnknown_0857FE40, 0x2, 5, 2, 1
- delay 0x0
- createvisualtask sub_8159210, 0x5, 229, -64
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- call AnimScript_82D4F9B
- delay 0x5
- createvisualtask sub_8159210, 0x5, 229, 63
- waitforvisualfinish
- createvisualtask sub_8116960, 0x2, 248, 3, 10, 0, 1
- waitforvisualfinish
- createvisualtask sub_815AC8C, 0x2
- end
-
-AnimScript_82D4F9B:
- createsprite gUnknown_085CE5A8, 0x28, 0
- createsprite gUnknown_085CE5A8, 0x28, 1
+ loadspritegfx ANIM_TAG_227
+ loadspritegfx ANIM_TAG_240
+ createvisualtask sub_8159244, 5, 223, 63
+ createvisualtask sub_815ABEC, 2
+ createvisualtask sub_8116960, 2, 248, 3, 0, 10, 0
+ waitforvisualfinish
+ createsprite gUnknown_085CE5C0, 130, 0, -8, 80
+ delay 0
+ createsprite gVerticalDipSpriteTemplate, 2, 5, 2, ANIM_TARGET
+ delay 10
+ createsprite gVerticalDipSpriteTemplate, 2, 5, 2, ANIM_TARGET
+ delay 0
+ createvisualtask sub_8159210, 5, 229, -64
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ call Flatter1
+ delay 5
+ createvisualtask sub_8159210, 5, 229, 63
+ waitforvisualfinish
+ createvisualtask sub_8116960, 2, 248, 3, 10, 0, 1
+ waitforvisualfinish
+ createvisualtask sub_815AC8C, 2
+ end
+Flatter1:
+ createsprite gUnknown_085CE5A8, 40, 0
+ createsprite gUnknown_085CE5A8, 40, 1
return
Move_ROLE_PLAY:
monbg ANIM_ATK_PARTNER
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 16, 0x7FFF
- createsprite gUnknown_08597274, 0x2, 1, 2, 0, 10, 0
+ createvisualtask sub_8116620, 10, 4, 2, 0, 16, RGB_WHITE
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 0, 10, RGB_BLACK
waitforvisualfinish
playsewithpan SE_W161, -64
- waitplaysewithpan SE_W197, -64, 0x1E
- createvisualtask sub_815CED8, 0x2
+ waitplaysewithpan SE_W197, -64, 30
+ createvisualtask sub_815CED8, 2
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
- createvisualtask sub_8116620, 0xA, 4, 2, 16, 0, 0x7FFF
- delay 0x8
- createsprite gUnknown_08597274, 0x2, 1, 2, 10, 0, 0
+ createvisualtask sub_8116620, 10, 4, 2, 16, 0, RGB_WHITE
+ delay 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 2, 10, 0, RGB_BLACK
end
Move_REFRESH:
- loadspritegfx 0x27DB
- loadspritegfx 0x2741
+ loadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_SPARKLE
playsewithpan SE_W287, -64
- createvisualtask sub_815DFCC, 0x2, 0
+ createvisualtask sub_815DFCC, 2, 0
waitforvisualfinish
playsewithpan SE_W234, -64
- call AnimScript_82D79B4
+ call GrantingStarsEffect
waitforvisualfinish
playsewithpan SE_REAPOKE, -64
- createsprite gUnknown_08597274, 0x2, 31, 3, 10, 0, RGB(12, 24, 30)
- createsprite gUnknown_0859381C, 0x3, 0, 0, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 3, 10, 0, RGB(12, 24, 30)
+ createsprite gUnknown_0859381C, 3, 0, 0, 0, 0
end
Move_BLAZE_KICK:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W172, +63
- createsprite gUnknown_08595F14, 0x83, 0, 0, 1, 30
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 7, 0x7FFF
- delay 0x1E
+ createsprite gUnknown_08595F14, 131, 0, 0, 1, 30
+ createvisualtask sub_8116620, 10, 4, 2, 0, 7, RGB_WHITE
+ delay 30
playsewithpan SE_W007, +63
- createsprite gUnknown_08597358, 0x82, 0, 0, 1, 0
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 14, 1
- createvisualtask sub_8116620, 0xA, 4, 2, 0, 0, 0x7FFF
- createsprite gUnknown_0859728C, 0x2, 31, 3, 1, 0, 8, 0, 0
- call AnimScript_82D2D18
+ createsprite gBasicHitSplatSpriteTemplate, 130, 0, 0, 1, 0
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 14, 1
+ createvisualtask sub_8116620, 10, 4, 2, 0, 0, RGB_WHITE
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 3, 1, RGB_BLACK, 8, 0, 0
+ call FireMoveEffect
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_HYPER_VOICE:
- loadspritegfx 0x27DB
- createvisualtask sub_81590B8, 0x5, 0
- call AnimScript_82D50FA
- waitforvisualfinish
- delay 0x8
- createvisualtask sub_81590B8, 0x5, 1
- call AnimScript_82D50FA
- waitforvisualfinish
- end
-
-AnimScript_82D50FA:
- createsprite gUnknown_08597274, 0x2, 31, 3, 8, 0, RGB_YELLOW
- createvisualtask sub_80D6064, 0x5, -5, -5, 5, 0, 0
- createsprite gUnknown_08593880, 0x0, 45, 0, 0, 0, 0, 0, 1
- createvisualtask sub_80D52D0, 0x2, 1, 1, 0, 6, 1
- createvisualtask sub_80D52D0, 0x2, 3, 1, 0, 6, 1
- createvisualtask sub_81162A4, 0x2, 1, 0, 6, 1
- createvisualtask sub_8159078, 0x5
+ loadspritegfx ANIM_TAG_203
+ createvisualtask sub_81590B8, 5, 0
+ call HyperVoiceEffect
+ waitforvisualfinish
+ delay 8
+ createvisualtask sub_81590B8, 5, 1
+ call HyperVoiceEffect
+ waitforvisualfinish
+ end
+HyperVoiceEffect:
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 31, 3, 8, 0, RGB_YELLOW
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0
+ createsprite gUnknown_08593880, 0, 45, 0, 0, 0, 0, 0, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1
+ createvisualtask sub_81162A4, 2, 1, 0, 6, 1
+ createvisualtask sub_8159078, 5
return
Move_SAND_TOMB:
- loadspritegfx 0x275A
- createsprite gUnknown_08597274, 0x0, 4, 2, 0, 7, RGB(19, 17, 0)
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 43, 1
+ loadspritegfx ANIM_TAG_074
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 0, 7, RGB(19, 17, 0)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 43, 1
playsewithpan SE_W328, +63
- call AnimScript_82D51B7
- call AnimScript_82D51B7
- call AnimScript_82D51B7
- delay 0x16
- createsprite gUnknown_08597274, 0x0, 4, 2, 7, 0, RGB(19, 17, 0)
- waitforvisualfinish
- end
-
-AnimScript_82D51B7:
- createsprite gUnknown_08596B34, 0x82, 0, 32, 528, 30, 10, 50, 1
- delay 0x2
- createsprite gUnknown_08596B34, 0x82, 0, 36, 480, 20, 13, -46, 1
- delay 0x2
- createsprite gUnknown_08596B34, 0x82, 0, 37, 576, 20, 5, 42, 1
- delay 0x2
- createsprite gUnknown_08596B34, 0x82, 0, 35, 400, 25, 8, -42, 1
- delay 0x2
- createsprite gUnknown_08596B34, 0x82, 0, 32, 512, 25, 13, 46, 1
- delay 0x2
- createsprite gUnknown_08596B34, 0x82, 0, 37, 464, 30, 12, -50, 1
- delay 0x2
+ call SandTombEffect
+ call SandTombEffect
+ call SandTombEffect
+ delay 22
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 7, 0, RGB(19, 17, 0)
+ waitforvisualfinish
+ end
+
+SandTombEffect:
+ createsprite gUnknown_08596B34, 130, 0, 32, 528, 30, 10, 50, 1
+ delay 2
+ createsprite gUnknown_08596B34, 130, 0, 36, 480, 20, 13, -46, 1
+ delay 2
+ createsprite gUnknown_08596B34, 130, 0, 37, 576, 20, 5, 42, 1
+ delay 2
+ createsprite gUnknown_08596B34, 130, 0, 35, 400, 25, 8, -42, 1
+ delay 2
+ createsprite gUnknown_08596B34, 130, 0, 32, 512, 25, 13, 46, 1
+ delay 2
+ createsprite gUnknown_08596B34, 130, 0, 37, 464, 30, 12, -50, 1
+ delay 2
return
Move_SHEER_COLD:
@@ -8665,12 +8545,12 @@ Move_SHEER_COLD:
waitbgfadeout
playsewithpan SE_W196, 0
waitbgfadein
- loadspritegfx 0x271A
+ loadspritegfx ANIM_TAG_ICE_CUBE
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80A9EF4, 0x2
- waitplaysewithpan SE_W258, +63, 0x11
+ setalpha 12, 8
+ createvisualtask sub_80A9EF4, 2
+ waitplaysewithpan SE_W258, +63, 17
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
@@ -8679,210 +8559,205 @@ Move_SHEER_COLD:
end
Move_ARM_THRUST:
- loadspritegfx 0x279F
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_143
+ loadspritegfx ANIM_TAG_135
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D6134, 0x5, 8, 5, 0, 0
- delay 0x6
- createsprite gUnknown_0857FE28, 0x2, 4, 3
- delay 0x4
+ setalpha 12, 8
+ createvisualtask sub_80D6134, 5, 8, 5, 0, 0
+ delay 6
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 3
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_08596034, 0x82, 10, -8, 14, 3
+ createsprite gUnknown_08596034, 130, 10, -8, 14, 3
waitforvisualfinish
- createvisualtask sub_80D6134, 0x5, 8, 5, 0, 1
+ createvisualtask sub_80D6134, 5, 8, 5, 0, 1
playsewithpan SE_W003, +63
- choosetwoturnanim AnimScript_82D52D4, AnimScript_82D52E8
-
-AnimScript_82D52C0:
- createvisualtask sub_80D51AC, 0x5, 1, 4, 0, 6, 1
+ choosetwoturnanim ArmThrustRight, ArmThrustLeft
+ArmThrustContinue:
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1
waitforvisualfinish
blendoff
end
-
-AnimScript_82D52D4:
- createsprite gUnknown_08597358, 0x82, 8, 0, 1, 2
- goto AnimScript_82D52C0
-
-AnimScript_82D52E8:
- createsprite gUnknown_08597358, 0x82, -8, 0, 1, 2
- goto AnimScript_82D52C0
+ArmThrustRight:
+ createsprite gBasicHitSplatSpriteTemplate, 130, 8, 0, 1, 2
+ goto ArmThrustContinue
+ArmThrustLeft:
+ createsprite gBasicHitSplatSpriteTemplate, 130, -8, 0, 1, 2
+ goto ArmThrustContinue
Move_MUDDY_WATER:
- panse_1B SE_W250, -64, +63, +2, 0x0
- createvisualtask sub_8107954, 0x2, 1
+ panse_1B SE_W250, -64, +63, +2, 0
+ createvisualtask AnimTask_CreateSurfWave, 2, TRUE
waitforvisualfinish
end
Move_BULLET_SEED:
- loadspritegfx 0x2716
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 30, 1
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
- delay 0x5
- createsprite gUnknown_0859351C, 0x82, 20, 0
+ loadspritegfx ANIM_TAG_SEED
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 30, 1
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
+ delay 5
+ createsprite gUnknown_0859351C, 130, 20, 0
waitforvisualfinish
end
Move_DRAGON_CLAW:
- loadspritegfx 0x272D
- loadspritegfx 0x2737
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loadspritegfx ANIM_TAG_CLAW_SLASH
playsewithpan SE_W221B, -64
- createvisualtask sub_8116620, 0xA, 2, 4, 0, 8, 639
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 15, 1
- call AnimScript_82D5581
- call AnimScript_82D5581
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- createsprite gUnknown_08596B88, 0x2, 0, 28, 528, 30, 13, 50, 0
- delay 0x2
- createvisualtask sub_8159210, 0x5, 136, 63
- createsprite gUnknown_08597138, 0x82, -10, -10, 0
- createsprite gUnknown_08597138, 0x82, -10, 10, 0
- createsprite gUnknown_085972D8, 0x2, -4, 1, 10, 3, 1
- createsprite gUnknown_08596B88, 0x2, 0, 32, 480, 20, 16, -46, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 33, 576, 20, 8, 42, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 31, 400, 25, 11, -42, 0
- delay 0x2
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- createsprite gUnknown_08596B88, 0x2, 0, 28, 512, 25, 16, 46, 0
- delay 0x2
- createvisualtask sub_8159210, 0x5, 136, 63
- createsprite gUnknown_08597138, 0x82, 10, -10, 1
- createsprite gUnknown_08597138, 0x82, 10, 10, 1
- createsprite gUnknown_085972D8, 0x2, -4, 1, 10, 3, 1
- createsprite gUnknown_08596B88, 0x2, 0, 33, 464, 30, 15, -50, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 28, 528, 30, 13, 50, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 32, 480, 20, 16, -46, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 33, 576, 20, 8, 42, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 31, 400, 25, 11, -42, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 28, 512, 25, 16, 46, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 33, 464, 30, 15, -50, 0
- createvisualtask sub_8116620, 0xA, 2, 4, 8, 0, 639
- waitforvisualfinish
- end
-
-AnimScript_82D5581:
- createsprite gUnknown_08596B88, 0x2, 0, 28, 528, 30, 13, 50, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 32, 480, 20, 16, -46, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 33, 576, 20, 8, 42, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 31, 400, 25, 11, -42, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 28, 512, 25, 16, 46, 0
- delay 0x2
- createsprite gUnknown_08596B88, 0x2, 0, 33, 464, 30, 15, -50, 0
- delay 0x2
+ createvisualtask sub_8116620, 10, 2, 4, 0, 8, RGB(31, 19, 0)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 15, 1
+ call DragonClawEffect
+ call DragonClawEffect
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ createsprite gUnknown_08596B88, 2, 0, 28, 528, 30, 13, 50, 0
+ delay 2
+ createvisualtask sub_8159210, 5, 136, 63
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, -10, 0
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, -10, 10, 0
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, -4, 1, 10, 3, 1
+ createsprite gUnknown_08596B88, 2, 0, 32, 480, 20, 16, -46, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 33, 576, 20, 8, 42, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 31, 400, 25, 11, -42, 0
+ delay 2
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ createsprite gUnknown_08596B88, 2, 0, 28, 512, 25, 16, 46, 0
+ delay 2
+ createvisualtask sub_8159210, 5, 136, 63
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, -10, 1
+ createsprite gBattleAnimSpriteTemplate_8597138, 130, 10, 10, 1
+ createsprite gBattleAnimSpriteTemplate_85972D8, 2, -4, 1, 10, 3, 1
+ createsprite gUnknown_08596B88, 2, 0, 33, 464, 30, 15, -50, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 28, 528, 30, 13, 50, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 32, 480, 20, 16, -46, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 33, 576, 20, 8, 42, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 31, 400, 25, 11, -42, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 28, 512, 25, 16, 46, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 33, 464, 30, 15, -50, 0
+ createvisualtask sub_8116620, 10, 2, 4, 8, 0, RGB(31, 19, 0)
+ waitforvisualfinish
+ end
+DragonClawEffect:
+ createsprite gUnknown_08596B88, 2, 0, 28, 528, 30, 13, 50, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 32, 480, 20, 16, -46, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 33, 576, 20, 8, 42, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 31, 400, 25, 11, -42, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 28, 512, 25, 16, 46, 0
+ delay 2
+ createsprite gUnknown_08596B88, 2, 0, 33, 464, 30, 15, -50, 0
+ delay 2
return
-AnimScript_82D560C:
+End:
end
Move_MUD_SHOT:
- loadspritegfx 0x2813
+ loadspritegfx ANIM_TAG_259
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createvisualtask sub_80D51AC, 0x5, 0, 0, 2, 46, 1
- delay 0x6
- createvisualtask sub_81076C8, 0x5, 100
- panse_1B SE_W250, -64, +63, +1, 0x0
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 43, 1
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
- call AnimScript_82D5687
+ setalpha 12, 8
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1
+ delay 6
+ createvisualtask sub_81076C8, 5, 100
+ panse_1B SE_W250, -64, +63, +1, 0
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 43, 1
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ call MudShot1
+ call MudShot1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D5687:
- createsprite gUnknown_085950FC, 0x3, 10, 10, 0, 16
- delay 0x2
- createsprite gUnknown_085950FC, 0x3, 10, 10, 0, 16
- delay 0x2
+MudShot1:
+ createsprite gUnknown_085950FC, 3, 10, 10, 0, 16
+ delay 2
+ createsprite gUnknown_085950FC, 3, 10, 10, 0, 16
+ delay 2
return
Move_METEOR_MASH:
- loadspritegfx 0x27F9
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- panse_1B SE_W112, -64, +63, +3, 0x0
+ loadspritegfx ANIM_TAG_233
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ panse_1B SE_W112, -64, +63, +3, 0
fadetobg BG_COSMIC
waitbgfadein
waitforvisualfinish
- createsprite gUnknown_085CE8DC, 0x83, -48, -64, 72, 32, 30
- delay 0xA
- createsprite gUnknown_085CE8DC, 0x83, -112, -64, 8, 32, 30
- delay 0x28
- createsprite gUnknown_08595F14, 0x83, 0, 0, 0, 30
- createsprite gUnknown_085CE8DC, 0x83, -80, -64, 40, 32, 30
- delay 0x14
+ createsprite gUnknown_085CE8DC, 131, -48, -64, 72, 32, 30
+ delay 10
+ createsprite gUnknown_085CE8DC, 131, -112, -64, 8, 32, 30
+ delay 40
+ createsprite gUnknown_08595F14, 131, 0, 0, 0, 30
+ createsprite gUnknown_085CE8DC, 131, -80, -64, 40, 32, 30
+ delay 20
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
- createvisualtask sub_80D52D0, 0x2, 1, 5, 0, 20, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 5, 0, 20, 1
waitforvisualfinish
- delay 0xA
+ delay 10
restorebg
waitbgfadein
waitforvisualfinish
end
Move_REVENGE:
- loadspritegfx 0x2805
+ loadspritegfx ANIM_TAG_245
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W036, -64
- createsprite gUnknown_08596088, 0x2, 10, -10
+ createsprite gUnknown_08596088, 2, 10, -10
waitforvisualfinish
- createvisualtask sub_8115A04, 0x2, 2, 0, 4, 2, 8, 31
+ createvisualtask sub_8115A04, 2, 2, 0, 4, 2, 8, RGB_RED
waitforvisualfinish
- unloadspritegfx 0x2805
- loadspritegfx 0x2806
- createsprite gUnknown_0857FE28, 0x2, 6, 4
- delay 0x4
+ unloadspritegfx ANIM_TAG_245
+ loadspritegfx ANIM_TAG_246
+ createsprite gHorizontalLungeSpriteTemplate, 2, 6, 4
+ delay 4
playsewithpan SE_W207, +63
- createsprite gUnknown_085960D0, 0x82, 10, -10
+ createsprite gUnknown_085960D0, 130, 10, -10
waitforvisualfinish
- unloadspritegfx 0x2806
- loadspritegfx 0x2797
- createvisualtask sub_80D52D0, 0x2, 1, 3, 0, 10, 1
- createsprite gUnknown_08597400, 0x83, -10, -8, 1, 1, 8
+ unloadspritegfx ANIM_TAG_246
+ loadspritegfx ANIM_TAG_135
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 10, 1
+ createsprite gUnknown_08597400, 131, -10, -8, 1, 1, 8
playsewithpan SE_W233B, +63
- delay 0x8
- createsprite gUnknown_08597400, 0x83, 10, 8, 1, 1, 8
+ delay 8
+ createsprite gUnknown_08597400, 131, 10, 8, 1, 1, 8
playsewithpan SE_W025B, +63
waitforvisualfinish
clearmonbg ANIM_TARGET
@@ -8890,949 +8765,923 @@ Move_REVENGE:
end
Move_POISON_FANG:
- loadspritegfx 0x27D0
- loadspritegfx 0x27A6
+ loadspritegfx ANIM_TAG_192
+ loadspritegfx ANIM_TAG_POISON_BUBBLE
playsewithpan SE_W044, +63
- createsprite gUnknown_085CE1DC, 0x82
- delay 0xA
- createvisualtask sub_80D51AC, 0x3, 1, 3, 0, 10, 1
+ createsprite gUnknown_085CE1DC, 130
+ delay 10
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 3, 0, 10, 1
waitforvisualfinish
- createvisualtask sub_8115A04, 0x2, 4, 0, 4, 0, 12, 26650
- call AnimScript_82D7A71
+ createvisualtask sub_8115A04, 2, 4, 0, 4, 0, 12, RGB(26, 0, 26)
+ call PoisonBubblesEffect
waitforvisualfinish
end
Move_SUBSTITUTE:
playsewithpan SE_W213, -64
- createvisualtask sub_815F20C, 0x2
+ createvisualtask AnimTask_MonToSubstitute, 2
end
Move_FRENZY_PLANT:
- loadspritegfx 0x27EF
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_223
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x0, 1, 2, 0, 5, 0
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 1, 2, 0, 5, RGB_BLACK
waitforvisualfinish
- createsprite gUnknown_08592564, 0x2, 10, 8, 2, 0, 0, 100
+ createsprite gUnknown_08592564, 2, 10, 8, 2, 0, 0, 100
playsewithpan SE_W010, -64
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 20, -8, -2, 0, 1, 95
+ delay 5
+ createsprite gUnknown_08592564, 2, 20, -8, -2, 0, 1, 95
playsewithpan SE_W010, -43
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 30, 8, -4, 0, 0, 90
+ delay 5
+ createsprite gUnknown_08592564, 2, 30, 8, -4, 0, 0, 90
playsewithpan SE_W010, -22
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 40, -8, 4, 0, 1, 85
+ delay 5
+ createsprite gUnknown_08592564, 2, 40, -8, 4, 0, 1, 85
playsewithpan SE_W010, 0
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 50, 8, 0, 0, 0, 85
+ delay 5
+ createsprite gUnknown_08592564, 2, 50, 8, 0, 0, 0, 85
playsewithpan SE_W010, +21
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 60, -8, -2, 0, 1, 85
+ delay 5
+ createsprite gUnknown_08592564, 2, 60, -8, -2, 0, 1, 85
playsewithpan SE_W010, +42
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 75, 8, 0, 0, 0, 85
+ delay 5
+ createsprite gUnknown_08592564, 2, 75, 8, 0, 0, 0, 85
playsewithpan SE_W010, +63
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 85, 16, 6, 0, 3, 80
+ delay 5
+ createsprite gUnknown_08592564, 2, 85, 16, 6, 0, 3, 80
playsewithpan SE_W010, +63
- delay 0x5
- createsprite gUnknown_08592564, 0x2, 85, -16, -6, 0, 2, 75
+ delay 5
+ createsprite gUnknown_08592564, 2, 85, -16, -6, 0, 2, 75
playsewithpan SE_W010, +63
- delay 0x5
- createsprite gUnknown_08597358, 0x2, -10, -10, 1, 3
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -10, 1, 3
playsewithpan SE_W003, +63
- createvisualtask sub_80D51AC, 0x3, 1, 8, 0, 20, 1
- delay 0x3
- createsprite gUnknown_08597358, 0x2, 10, 8, 1, 3
+ createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 8, 0, 20, 1
+ delay 3
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, 8, 1, 3
playsewithpan SE_W003, +63
- delay 0x3
- createsprite gUnknown_08597358, 0x2, 10, -3, 1, 2
+ delay 3
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, -3, 1, 2
playsewithpan SE_W003, +63
- delay 0x3
- createsprite gUnknown_08597358, 0x2, -3, 1, 1, 2
+ delay 3
+ createsprite gBasicHitSplatSpriteTemplate, 2, -3, 1, 1, 2
playsewithpan SE_W003, +63
- delay 0x2
- createsprite gUnknown_08597358, 0x2, -10, 1, 1, 1
+ delay 2
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, 1, 1, 1
playsewithpan SE_W003, +63
- delay 0x2
- createsprite gUnknown_08597358, 0x2, 0, 10, 1, 1
+ delay 2
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 10, 1, 1
playsewithpan SE_W003, +63
waitforvisualfinish
- createsprite gUnknown_08597274, 0x0, 1, 2, 5, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 1, 2, 5, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
Move_METAL_SOUND:
- loadspritegfx 0x2814
+ loadspritegfx ANIM_TAG_260
monbg ANIM_DEF_PARTNER
monbgprio_2A ANIM_TARGET
- createvisualtask sub_80D52D0, 0x2, 0, 2, 0, 8, 1
- call AnimScript_82D59EA
- call AnimScript_82D59EA
- call AnimScript_82D59EA
- call AnimScript_82D59EA
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 2, 0, 8, 1
+ call MetalSound1
+ call MetalSound1
+ call MetalSound1
+ call MetalSound1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
- delay 0x0
+ delay 0
waitforvisualfinish
end
-
-AnimScript_82D59EA:
- panse_1B SE_W103, -64, +63, +2, 0x0
- createsprite gUnknown_08593458, 0x82, 16, 0, 0, 0, 30, 0
- delay 0x2
+MetalSound1:
+ panse_1B SE_W103, -64, +63, +2, 0
+ createsprite gUnknown_08593458, 130, 16, 0, 0, 0, 30, 0
+ delay 2
return
Move_FOCUS_PUNCH:
- goto AnimScript_82D5A0E
-
-AnimScript_82D5A0C:
- waitforvisualfinish
- end
-
-AnimScript_82D5A0E:
- loadspritegfx 0x2797
- loadspritegfx 0x279F
- delay 0x1
- createvisualtask sub_8117E60, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D5AC7
- createvisualtask sub_815A8C8, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82D5AB9
- jumpargeq 0x7, 0x1, AnimScript_82D5AC0
-
-AnimScript_82D5A3C:
+ goto FocusPunch
+FocusPunchEnd:
+ waitforvisualfinish
+ end
+FocusPunch:
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_143
+ delay 1
+ createvisualtask AnimTask_IsContest, 2
+ jumprettrue FocusPunchInContest
+ createvisualtask AnimTask_IsTargetPlayerSide, 2
+ jumpretfalse FocusPunchOnOpponent
+ jumprettrue FocusPunchOnPlayer
+FocusPunchContinue:
waitbgfadein
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W207, +63
- createsprite gUnknown_08596104, 0x82
- delay 0xA
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 0
- createvisualtask sub_80D51AC, 0x5, 1, 8, 0, 24, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 10, 2, 1, 0
+ createsprite gUnknown_08596104, 130
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 8, 0, 24, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, 2, 1, 0
playsewithpan SE_W233B, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 10, -6, 1, 0
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, -6, 1, 0
playsewithpan SE_W233B, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 0, 8, 1, 0
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 8, 1, 0
playsewithpan SE_W025B, +63
waitforvisualfinish
restorebg
waitbgfadein
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82D5A0C
-
-AnimScript_82D5AB9:
+ goto FocusPunchEnd
+FocusPunchOnOpponent:
fadetobg BG_IMPACT_OPPONENT
- goto AnimScript_82D5A3C
-
-AnimScript_82D5AC0:
+ goto FocusPunchContinue
+FocusPunchOnPlayer:
fadetobg BG_IMPACT_PLAYER
- goto AnimScript_82D5A3C
-
-AnimScript_82D5AC7:
+ goto FocusPunchContinue
+FocusPunchInContest:
fadetobg BG_IMPACT_CONTESTS
- goto AnimScript_82D5A3C
+ goto FocusPunchContinue
Move_RETURN:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createvisualtask sub_815F8A0, 0x2
- delay 0x2
- jumpargeq 0x7, 0x0, AnimScript_82D5B04
- jumpargeq 0x7, 0x1, AnimScript_82D5B56
- jumpargeq 0x7, 0x2, AnimScript_82D5BB6
- jumpargeq 0x7, 0x3, AnimScript_82D5CD1
-
-AnimScript_82D5AFF:
+ setalpha 12, 8
+ createvisualtask AnimTask_GetReturnPowerLevel, 2
+ delay 2
+ jumpreteq 0, ReturnWeak
+ jumpreteq 1, ReturnMedium
+ jumpreteq 2, ReturnStrong
+ jumpreteq 3, ReturnStrongest
+ReturnContinue:
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D5B04:
- createsprite gUnknown_0857FE40, 0x2, 16, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 16, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- delay 0x5
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 139, 63
- goto AnimScript_82D5AFF
-
-AnimScript_82D5B56:
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- delay 0xB
- createsprite gUnknown_0857FE28, 0x2, 5, 4
- delay 0x6
- createsprite gUnknown_08597358, 0x3, 0, 0, 1, 2
- createvisualtask sub_8159210, 0x5, 141, 63
- goto AnimScript_82D5AFF
-
-AnimScript_82D5BB6:
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 6, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- waitforvisualfinish
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 10, 10, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 3, -5, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- delay 0x8
- createsprite gUnknown_08597358, 0x2, -5, 3, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- goto AnimScript_82D5AFF
-
-AnimScript_82D5CD1:
- createsprite gUnknown_08597274, 0x2, 1, 0, 0, 6, 0
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 16, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- delay 0x8
- createsprite gUnknown_08597358, 0x2, 3, -5, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 12, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- delay 0x5
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- waitforvisualfinish
- delay 0x4
- createsprite gUnknown_0857FE40, 0x2, 8, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- delay 0x5
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- waitforvisualfinish
- delay 0x2
- createvisualtask sub_81169C0, 0x2, 0, 4, 5, 1
- createsprite gUnknown_0857FE40, 0x2, 4, 1, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- createvisualtask sub_81169C0, 0x2, 0, 4, 5, 1
- waitforvisualfinish
- createsprite gUnknown_0857FE40, 0x2, 4, 2, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- delay 0x5
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- createvisualtask sub_81169C0, 0x2, 0, 4, 5, 1
- waitforvisualfinish
- call AnimScript_82D5F09
- call AnimScript_82D5F09
- call AnimScript_82D5F09
- call AnimScript_82D5F09
- createsprite gUnknown_08597358, 0x2, -10, -8, 1, 0
- createvisualtask sub_8159210, 0x5, 141, 63
- createvisualtask sub_80D51AC, 0x5, 1, 8, 0, 24, 1
- delay 0x6
- createsprite gUnknown_08597358, 0x2, 10, 10, 1, 0
- createvisualtask sub_8159210, 0x5, 141, 63
- delay 0x6
- createsprite gUnknown_08597358, 0x2, 3, -5, 1, 0
- createvisualtask sub_8159210, 0x5, 141, 63
- delay 0x6
- createsprite gUnknown_08597358, 0x2, -5, 3, 1, 0
- createvisualtask sub_8159210, 0x5, 141, 63
- waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 0, 6, 0, 0
- goto AnimScript_82D5AFF
-
-AnimScript_82D5F09:
- createsprite gUnknown_0857FE40, 0x2, 4, 3, 0
- createvisualtask sub_8159244, 0x5, 167, -64
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_8159210, 0x5, 123, 63
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- createvisualtask sub_81169C0, 0x2, 0, 4, 5, 1
+ReturnWeak:
+ createsprite gVerticalDipSpriteTemplate, 2, 16, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 16, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 139, 63
+ goto ReturnContinue
+ReturnMedium:
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ delay 11
+ createsprite gHorizontalLungeSpriteTemplate, 2, 5, 4
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 3, 0, 0, 1, 2
+ createvisualtask sub_8159210, 5, 141, 63
+ goto ReturnContinue
+ReturnStrong:
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 6, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ waitforvisualfinish
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, 10, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 3, -5, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, -5, 3, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ goto ReturnContinue
+ReturnStrongest:
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 0, 6, RGB_BLACK
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 16, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 2, 3, -5, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 12, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ waitforvisualfinish
+ delay 4
+ createsprite gVerticalDipSpriteTemplate, 2, 8, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ waitforvisualfinish
+ delay 2
+ createvisualtask sub_81169C0, 2, 0, 4, 5, 1
+ createsprite gVerticalDipSpriteTemplate, 2, 4, 1, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ createvisualtask sub_81169C0, 2, 0, 4, 5, 1
+ waitforvisualfinish
+ createsprite gVerticalDipSpriteTemplate, 2, 4, 2, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ delay 5
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ createvisualtask sub_81169C0, 2, 0, 4, 5, 1
+ waitforvisualfinish
+ call ReturnStrongest1
+ call ReturnStrongest1
+ call ReturnStrongest1
+ call ReturnStrongest1
+ createsprite gBasicHitSplatSpriteTemplate, 2, -10, -8, 1, 0
+ createvisualtask sub_8159210, 5, 141, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 8, 0, 24, 1
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 2, 10, 10, 1, 0
+ createvisualtask sub_8159210, 5, 141, 63
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 2, 3, -5, 1, 0
+ createvisualtask sub_8159210, 5, 141, 63
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 2, -5, 3, 1, 0
+ createvisualtask sub_8159210, 5, 141, 63
+ waitforvisualfinish
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 6, 0, RGB_BLACK
+ goto ReturnContinue
+ReturnStrongest1:
+ createsprite gVerticalDipSpriteTemplate, 2, 4, 3, ANIM_ATTACKER
+ createvisualtask sub_8159244, 5, 167, -64
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask sub_8159210, 5, 123, 63
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ createvisualtask sub_81169C0, 2, 0, 4, 5, 1
waitforvisualfinish
return
Move_COSMIC_POWER:
- loadspritegfx 0x2741
- createvisualtask sub_8159244, 0x5, 243, 0
+ loadspritegfx ANIM_TAG_SPARKLE
+ createvisualtask sub_8159244, 5, 243, 0
playsewithpan SE_W322, 0
- createvisualtask sub_8117610, 0x2, 0, 0, 15, 0
+ createvisualtask sub_8117610, 2, 0, 0, 15, 0
waitforvisualfinish
fadetobg BG_COSMIC
waitbgfadeout
- createvisualtask sub_8117660, 0x2, 0, 128, 0, -1
+ createvisualtask sub_8117660, 2, 0, 128, 0, -1
waitbgfadein
- delay 0x46
- createvisualtask sub_8159210, 0x5, 228, -64
- createsprite gUnknown_08592B7C, 0x2, -15, 0, 0, 0, 32, 60
- delay 0x8
- createsprite gUnknown_08592B7C, 0x2, 12, -5, 0, 0, 32, 60
- delay 0x28
- createvisualtask sub_8117610, 0x2, 0, 15, 0, 0
+ delay 70
+ createvisualtask sub_8159210, 5, 228, -64
+ createsprite gUnknown_08592B7C, 2, -15, 0, 0, 0, 32, 60
+ delay 8
+ createsprite gUnknown_08592B7C, 2, 12, -5, 0, 0, 32, 60
+ delay 40
+ createvisualtask sub_8117610, 2, 0, 15, 0, 0
waitforvisualfinish
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
waitforvisualfinish
end
Move_BLAST_BURN:
- loadspritegfx 0x2733
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_035
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W221, -64
- createsprite gUnknown_08595428, 0x2, -32, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, -20, -10, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 0, -16, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 20, -10, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 32, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 20, 10, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, 0, 16, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, -20, 10, 24, 0, 0, 0
- delay 0x19
+ createsprite gUnknown_08595428, 2, -32, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, -20, -10, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 0, -16, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 20, -10, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 32, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 20, 10, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, 0, 16, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, -20, 10, 24, 0, 0, 0
+ delay 25
playsewithpan SE_W172B, -64
- createsprite gUnknown_08595428, 0x2, -64, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x6, -40, -20, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x46, 0, -32, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x46, 40, -20, 24, 0, 0, 0
- createvisualtask sub_80D51AC, 0x5, 1, 6, 0, 8, 1
- createsprite gUnknown_08595428, 0x42, 64, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 40, 20, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, 0, 32, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, -40, 20, 24, 0, 0, 0
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x19
+ createsprite gUnknown_08595428, 2, -64, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 6, -40, -20, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 70, 0, -32, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 70, 40, -20, 24, 0, 0, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1
+ createsprite gUnknown_08595428, 66, 64, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 40, 20, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, 0, 32, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, -40, 20, 24, 0, 0, 0
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 25
playsewithpan SE_W172B, -64
- createsprite gUnknown_08595428, 0x2, -96, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x6, -60, -30, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x46, 0, -48, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x46, 60, -30, 24, 0, 0, 0
- createsprite gUnknown_08597358, 0x82, -4, 3, 1, 0
- createvisualtask sub_80D51AC, 0x5, 1, 12, 0, 20, 1
- createvisualtask sub_81162A4, 0x2, 2, 0, 10, 1
- createsprite gUnknown_08595428, 0x42, 96, 0, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x42, 60, 30, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, 0, 48, 24, 0, 0, 0
- createsprite gUnknown_08595428, 0x2, -60, 30, 24, 0, 0, 0
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
+ createsprite gUnknown_08595428, 2, -96, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 6, -60, -30, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 70, 0, -48, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 70, 60, -30, 24, 0, 0, 0
+ createsprite gBasicHitSplatSpriteTemplate, 130, -4, 3, 1, 0
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 12, 0, 20, 1
+ createvisualtask sub_81162A4, 2, 2, 0, 10, 1
+ createsprite gUnknown_08595428, 66, 96, 0, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 66, 60, 30, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, 0, 48, 24, 0, 0, 0
+ createsprite gUnknown_08595428, 2, -60, 30, 24, 0, 0, 0
+ createvisualtask sub_8115F10, 2, 257, 257, 257
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_ROCK_TOMB:
- loadspritegfx 0x280A
- loadspritegfx 0x274A
- createvisualtask sub_81162A4, 0x2, 2, 0, 10, 1
+ loadspritegfx ANIM_TAG_X_SIGN
+ loadspritegfx ANIM_TAG_058
+ createvisualtask sub_81162A4, 2, 2, 0, 10, 1
waitforvisualfinish
- createsprite gUnknown_08596C58, 0x82, 20, 12, 64, 114, 0
- delay 0x8
- createvisualtask sub_81162A4, 0x2, 0, 2, 3, 1
+ createsprite gUnknown_08596C58, 130, 20, 12, 64, 114, 0
+ delay 8
+ createvisualtask sub_81162A4, 2, 0, 2, 3, 1
playsewithpan SE_W070, +63
- delay 0x8
- createsprite gUnknown_08596C58, 0x82, -20, 12, 64, 98, 0
- delay 0x8
- createvisualtask sub_81162A4, 0x2, 0, 2, 3, 1
+ delay 8
+ createsprite gUnknown_08596C58, 130, -20, 12, 64, 98, 0
+ delay 8
+ createvisualtask sub_81162A4, 2, 0, 2, 3, 1
playsewithpan SE_W070, +63
- delay 0x8
- createsprite gUnknown_08596C58, 0xC2, 3, 6, 64, 82, 0
- delay 0x8
- createvisualtask sub_81162A4, 0x2, 0, 2, 3, 1
+ delay 8
+ createsprite gUnknown_08596C58, 194, 3, 6, 64, 82, 0
+ delay 8
+ createvisualtask sub_81162A4, 2, 0, 2, 3, 1
playsewithpan SE_W070, +63
- delay 0x8
- createsprite gUnknown_08596C58, 0x82, -3, 13, 64, 66, 0
- delay 0x8
- createvisualtask sub_81162A4, 0x2, 0, 2, 3, 1
+ delay 8
+ createsprite gUnknown_08596C58, 130, -3, 13, 64, 66, 0
+ delay 8
+ createvisualtask sub_81162A4, 2, 0, 2, 3, 1
playsewithpan SE_W070, +63
- delay 0x18
+ delay 24
playsewithpan SE_W063, +63
- createsprite gUnknown_085967AC, 0x85, 1, 50
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 20, 1
- createvisualtask sub_81162A4, 0x2, 2, 0, 10, 1
+ createsprite gUnknown_085967AC, 133, 1, 50
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 20, 1
+ createvisualtask sub_81162A4, 2, 2, 0, 10, 1
waitforvisualfinish
end
Move_SILVER_WIND:
- loadspritegfx 0x281F
- panse_1B SE_W016, -64, +63, +2, 0x0
+ loadspritegfx ANIM_TAG_271
+ panse_1B SE_W016, -64, +63, +2, 0
playsewithpan SE_W234, 0
- delay 0x0
+ delay 0
monbg ANIM_DEF_PARTNER
monbgprio_29
- delay 0x0
- createvisualtask sub_8116664, 0xA, 1, 0, 0, 4, 0
- createvisualtask sub_8117780, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D650C
+ delay 0
+ createvisualtask sub_8116664, 10, 1, 0, 0, 4, RGB_BLACK
+ createvisualtask AnimTask_IsTargetOpponentSide, 2
+ jumprettrue SilverWindOnPlayer
fadetobg BG_BUG_OPPONENT
waitbgfadeout
- createvisualtask sub_8117660, 0x5, 1536, 0, 0, -1
-
-AnimScript_82D6352:
- delay 0x0
- createvisualtask sub_8116620, 0xA, 1, 0, 4, 4, 0
+ createvisualtask sub_8117660, 5, 1536, 0, 0, -1
+SilverWindContinue:
+ delay 0
+ createvisualtask sub_8116620, 10, 1, 0, 4, 4, RGB_BLACK
waitbgfadein
- createsprite gUnknown_08592830, 0xC2, -32, 16, 0, 6, 2, 3, 1
- createsprite gUnknown_08592830, 0xC2, -8, 18, 64, 3, 2, 2, 1
- createsprite gUnknown_08592830, 0x78, -24, 18, 90, 5, 1, 2, 1
- createsprite gUnknown_08592830, 0x78, -40, 14, 128, 4, 1, 2, 1
- delay 0x0
- createsprite gUnknown_08592848, 0xC2, -32, 16, 0, 6, 2, 3, 1
- createsprite gUnknown_08592848, 0xC2, -8, 18, 64, 3, 2, 2, 1
- createsprite gUnknown_08592848, 0x78, -24, 18, 90, 5, 1, 2, 1
- createsprite gUnknown_08592848, 0x78, -40, 14, 128, 4, 1, 2, 1
- delay 0x0
- createsprite gUnknown_08592860, 0xC2, -32, 16, 0, 6, 2, 3, 1
- createsprite gUnknown_08592860, 0xC2, -8, 18, 64, 3, 2, 2, 1
- createsprite gUnknown_08592860, 0x78, -24, 18, 90, 5, 1, 2, 1
- createsprite gUnknown_08592860, 0x78, -40, 14, 128, 4, 1, 2, 1
- delay 0x6
- createsprite gUnknown_08592830, 0xC2, -4, 16, 0, 6, 1, 2, 1
- createsprite gUnknown_08592830, 0xC2, -16, 12, 192, 5, 2, 3, 1
- delay 0x0
- createsprite gUnknown_08592848, 0xC2, -4, 16, 0, 6, 1, 2, 1
- createsprite gUnknown_08592848, 0xC2, -16, 12, 192, 5, 2, 3, 1
- delay 0x0
- createsprite gUnknown_08592860, 0xC2, -4, 16, 0, 6, 1, 2, 1
- createsprite gUnknown_08592860, 0xC2, -16, 12, 192, 5, 2, 3, 1
+ createsprite gUnknown_08592830, -62, -32, 16, 0, 6, 2, 3, 1
+ createsprite gUnknown_08592830, -62, -8, 18, 64, 3, 2, 2, 1
+ createsprite gUnknown_08592830, 120, -24, 18, 90, 5, 1, 2, 1
+ createsprite gUnknown_08592830, 120, -40, 14, 128, 4, 1, 2, 1
+ delay 0
+ createsprite gUnknown_08592848, -62, -32, 16, 0, 6, 2, 3, 1
+ createsprite gUnknown_08592848, -62, -8, 18, 64, 3, 2, 2, 1
+ createsprite gUnknown_08592848, 120, -24, 18, 90, 5, 1, 2, 1
+ createsprite gUnknown_08592848, 120, -40, 14, 128, 4, 1, 2, 1
+ delay 0
+ createsprite gUnknown_08592860, -62, -32, 16, 0, 6, 2, 3, 1
+ createsprite gUnknown_08592860, -62, -8, 18, 64, 3, 2, 2, 1
+ createsprite gUnknown_08592860, 120, -24, 18, 90, 5, 1, 2, 1
+ createsprite gUnknown_08592860, 120, -40, 14, 128, 4, 1, 2, 1
+ delay 6
+ createsprite gUnknown_08592830, -62, -4, 16, 0, 6, 1, 2, 1
+ createsprite gUnknown_08592830, -62, -16, 12, 192, 5, 2, 3, 1
+ delay 0
+ createsprite gUnknown_08592848, -62, -4, 16, 0, 6, 1, 2, 1
+ createsprite gUnknown_08592848, -62, -16, 12, 192, 5, 2, 3, 1
+ delay 0
+ createsprite gUnknown_08592860, -62, -4, 16, 0, 6, 1, 2, 1
+ createsprite gUnknown_08592860, -62, -16, 12, 192, 5, 2, 3, 1
waitforvisualfinish
playsewithpan SE_W016B, +63
clearmonbg ANIM_DEF_PARTNER
- delay 0x0
+ delay 0
restorebg
waitbgfadeout
- createvisualtask sub_8116664, 0xA, 1, 0, 4, 0, 0
- setarg 0x7, 0xFFFF
+ createvisualtask sub_8116664, 10, 1, 0, 4, 0, RGB_BLACK
+ setarg 7, -1
waitbgfadein
end
-
-AnimScript_82D650C:
+SilverWindOnPlayer:
fadetobg BG_BUG_PLAYER
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -1536, 0, 0, -1
- goto AnimScript_82D6352
+ createvisualtask sub_8117660, 5, -1536, 0, 0, -1
+ goto SilverWindContinue
Move_SNATCH:
playsewithpan SE_W036, -64
- createvisualtask sub_80D5C50, 0x5, 0, -12, 4, 10, 10, 12, 6
+ createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -12, 4, 10, 10, 12, 6
end
Move_DIVE:
- loadspritegfx 0x2820
- loadspritegfx 0x2821
- choosetwoturnanim AnimScript_82D654C, AnimScript_82D65A1
-
-AnimScript_82D654C:
- loadspritegfx 0x27AC
+ loadspritegfx ANIM_TAG_272
+ loadspritegfx ANIM_TAG_273
+ choosetwoturnanim DiveSetUp, DiveAttack
+DiveSetUp:
+ loadspritegfx ANIM_TAG_156
playsewithpan SE_W029, -64
- createsprite gUnknown_08596490, 0x2, 0, 0, 13, 336
+ createsprite gUnknown_08596490, 2, 0, 0, 13, 336
waitforvisualfinish
playsewithpan SE_W291, -64
- createsprite gUnknown_085964CC, 0x3, 0
- call AnimScript_82D658A
- call AnimScript_82D658A
- call AnimScript_82D658A
- call AnimScript_82D658A
- call AnimScript_82D658A
- end
-
-AnimScript_82D658A:
- createsprite gUnknown_085964E4, 0x5, 0, 0
- createsprite gUnknown_085964E4, 0x5, 1, 0
+ createsprite gUnknown_085964CC, 3, 0
+ call DiveSetUp1
+ call DiveSetUp1
+ call DiveSetUp1
+ call DiveSetUp1
+ call DiveSetUp1
+ end
+DiveSetUp1:
+ createsprite gUnknown_085964E4, 5, 0, 0
+ createsprite gUnknown_085964E4, 5, 1, 0
return
-
-AnimScript_82D65A1:
- loadspritegfx 0x27A4
- loadspritegfx 0x27AB
+DiveAttack:
+ loadspritegfx ANIM_TAG_148
+ loadspritegfx ANIM_TAG_155
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W153, +63
- createsprite gUnknown_085964CC, 0x83, 1
- call AnimScript_82D65E0
- call AnimScript_82D65E0
- call AnimScript_82D65E0
- call AnimScript_82D65E0
- call AnimScript_82D65E0
- delay 0xC
- call AnimScript_82CB102
+ createsprite gUnknown_085964CC, 131, 1
+ call DiveAttack1
+ call DiveAttack1
+ call DiveAttack1
+ call DiveAttack1
+ call DiveAttack1
+ delay 12
+ call UnderWaterAttack1
waitforvisualfinish
visible ANIM_ATTACKER
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D65E0:
- createsprite gUnknown_085964E4, 0x85, 0, 1
- createsprite gUnknown_085964E4, 0x85, 1, 1
+DiveAttack1:
+ createsprite gUnknown_085964E4, 133, 0, 1
+ createsprite gUnknown_085964E4, 133, 1, 1
return
Move_ROCK_BLAST:
- loadspritegfx 0x274A
- loadspritegfx 0x2797
- createsprite gUnknown_0857FE28, 0x2, 4, 6
- delay 0x3
+ loadspritegfx ANIM_TAG_058
+ loadspritegfx ANIM_TAG_135
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 6
+ delay 3
playsewithpan SE_W207, -64
- createsprite gUnknown_08596C98, 0x82, 16, 0, 0, 0, 25, 257
+ createsprite gUnknown_08596C98, 130, 16, 0, 0, 0, 25, 257
waitforvisualfinish
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 1
playsewithpan SE_W088, +63
- createsprite gUnknown_08596B1C, 0x82, 0, 0, 20, 24, 14, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 5, 1
- createsprite gUnknown_08596B1C, 0x82, 5, 0, -20, 24, 14, 1
- createsprite gUnknown_08596B1C, 0x82, 0, 5, 20, -24, 14, 2
- createsprite gUnknown_08596B1C, 0x82, -5, 0, -20, -24, 14, 2
+ createsprite gUnknown_08596B1C, 130, 0, 0, 20, 24, 14, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 5, 1
+ createsprite gUnknown_08596B1C, 130, 5, 0, -20, 24, 14, 1
+ createsprite gUnknown_08596B1C, 130, 0, 5, 20, -24, 14, 2
+ createsprite gUnknown_08596B1C, 130, -5, 0, -20, -24, 14, 2
waitforvisualfinish
end
Move_OVERHEAT:
- loadspritegfx 0x272D
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x120C
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 5, RGB(28, 0, 0)
+ setalpha 12, 18
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 5, RGB(28, 0, 0)
waitforvisualfinish
- createvisualtask sub_8117C44, 0x5
+ createvisualtask sub_8117C44, 5
waitforvisualfinish
- createvisualtask sub_8117CA0, 0x5, 0, 1
- delay 0x1
- createvisualtask sub_8117DD8, 0x5, 0
- delay 0x1
+ createvisualtask sub_8117CA0, 5, 0, 1
+ delay 1
+ createvisualtask sub_8117DD8, 5, 0
+ delay 1
playsewithpan SE_W082, -64
- createvisualtask sub_8117CA0, 0x5, 1, 0
- delay 0x1
- createsprite gUnknown_08597274, 0x2, 2, 1, 0, 13, RGB(28, 0, 0)
- createvisualtask sub_80D51AC, 0x5, 0, 2, 0, 15, 1
+ createvisualtask sub_8117CA0, 5, 1, 0
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 1, 0, 13, RGB(28, 0, 0)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 2, 0, 15, 1
waitforvisualfinish
playsewithpan SE_W172B, -64
- createsprite gUnknown_08596FB0, 0x2, 1, 0, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x2, 1, 32, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x2, 1, 64, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x2, 1, 96, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x2, 1, 128, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x42, 1, 160, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x42, 1, 192, 30, 25, -20
- createsprite gUnknown_08596FB0, 0x42, 1, 224, 30, 25, -20
- delay 0x5
- createsprite gUnknown_08596FB0, 0x2, 1, 0, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x2, 1, 32, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x2, 1, 64, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x2, 1, 96, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x2, 1, 128, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x42, 1, 160, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x42, 1, 192, 30, 25, 0
- createsprite gUnknown_08596FB0, 0x42, 1, 224, 30, 25, 0
- delay 0x5
- createsprite gUnknown_08596FB0, 0x2, 1, 0, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x2, 1, 32, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x2, 1, 64, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x2, 1, 96, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x2, 1, 128, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x42, 1, 160, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x42, 1, 192, 30, 25, 10
- createsprite gUnknown_08596FB0, 0x42, 1, 224, 30, 25, 10
- delay 0x5
- waitforvisualfinish
- createsprite gUnknown_08597358, 0x83, -5, 3, 1, 0
+ createsprite gUnknown_08596FB0, 2, 1, 0, 30, 25, -20
+ createsprite gUnknown_08596FB0, 2, 1, 32, 30, 25, -20
+ createsprite gUnknown_08596FB0, 2, 1, 64, 30, 25, -20
+ createsprite gUnknown_08596FB0, 2, 1, 96, 30, 25, -20
+ createsprite gUnknown_08596FB0, 2, 1, 128, 30, 25, -20
+ createsprite gUnknown_08596FB0, 66, 1, 160, 30, 25, -20
+ createsprite gUnknown_08596FB0, 66, 1, 192, 30, 25, -20
+ createsprite gUnknown_08596FB0, 66, 1, 224, 30, 25, -20
+ delay 5
+ createsprite gUnknown_08596FB0, 2, 1, 0, 30, 25, 0
+ createsprite gUnknown_08596FB0, 2, 1, 32, 30, 25, 0
+ createsprite gUnknown_08596FB0, 2, 1, 64, 30, 25, 0
+ createsprite gUnknown_08596FB0, 2, 1, 96, 30, 25, 0
+ createsprite gUnknown_08596FB0, 2, 1, 128, 30, 25, 0
+ createsprite gUnknown_08596FB0, 66, 1, 160, 30, 25, 0
+ createsprite gUnknown_08596FB0, 66, 1, 192, 30, 25, 0
+ createsprite gUnknown_08596FB0, 66, 1, 224, 30, 25, 0
+ delay 5
+ createsprite gUnknown_08596FB0, 2, 1, 0, 30, 25, 10
+ createsprite gUnknown_08596FB0, 2, 1, 32, 30, 25, 10
+ createsprite gUnknown_08596FB0, 2, 1, 64, 30, 25, 10
+ createsprite gUnknown_08596FB0, 2, 1, 96, 30, 25, 10
+ createsprite gUnknown_08596FB0, 2, 1, 128, 30, 25, 10
+ createsprite gUnknown_08596FB0, 66, 1, 160, 30, 25, 10
+ createsprite gUnknown_08596FB0, 66, 1, 192, 30, 25, 10
+ createsprite gUnknown_08596FB0, 66, 1, 224, 30, 25, 10
+ delay 5
+ waitforvisualfinish
+ createsprite gBasicHitSplatSpriteTemplate, 131, -5, 3, 1, 0
playsewithpan SE_W007, +63
- createvisualtask sub_80D51AC, 0x2, 1, 10, 0, 25, 1
- delay 0x6
- createsprite gUnknown_08597358, 0x83, 8, -5, 1, 0
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 10, 0, 25, 1
+ delay 6
+ createsprite gBasicHitSplatSpriteTemplate, 131, 8, -5, 1, 0
playsewithpan SE_W007, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x83, 10, 10, 1, 0
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 131, 10, 10, 1, 0
playsewithpan SE_W007, +63
- delay 0x8
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 0
+ delay 8
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 0
playsewithpan SE_W007, +63
- createvisualtask sub_8117DD8, 0x5, 1
- delay 0x1
- createsprite gUnknown_08597274, 0x2, 2, -1, 0, 13, RGB(18, 18, 18)
- createvisualtask sub_80D51AC, 0x5, 0, 3, 0, 15, 1
+ createvisualtask sub_8117DD8, 5, 1
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, -1, 0, 13, RGB(18, 18, 18)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 3, 0, 15, 1
waitforvisualfinish
- createvisualtask sub_8117D3C, 0x5, 0, 1
- delay 0x1
- createsprite gUnknown_08597274, 0x2, 1, 1, 5, 0, RGB(28, 0, 0)
+ createvisualtask sub_8117D3C, 5, 0, 1
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 5, 0, RGB(28, 0, 0)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
waitforvisualfinish
- delay 0xF
- createvisualtask sub_8117D3C, 0x5, 1, 0
- delay 0x1
- createsprite gUnknown_08597274, 0x2, 2, 0, 13, 0, RGB(18, 18, 18)
+ delay 15
+ createvisualtask sub_8117D3C, 5, 1, 0
+ delay 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 0, 13, 0, RGB(18, 18, 18)
waitforvisualfinish
- createvisualtask sub_8117C70, 0x5
+ createvisualtask sub_8117C70, 5
waitforvisualfinish
end
Move_HYDRO_CANNON:
- loadspritegfx 0x27A5
- loadspritegfx 0x27A4
+ loadspritegfx ANIM_TAG_149
+ loadspritegfx ANIM_TAG_148
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W057, -64
- createsprite gUnknown_085951C0, 0x82
- delay 0xA
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
- delay 0x1E
- panse_1B SE_W056, -64, +63, +2, 0x0
- call AnimScript_82D6A50
- createvisualtask sub_80D51AC, 0x5, 1, 10, 0, 40, 1
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- call AnimScript_82D6A50
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- call AnimScript_82D6A50
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- call AnimScript_82D6A50
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- call AnimScript_82D6A50
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- call AnimScript_82D6A50
- createsprite gUnknown_08597388, 0x82, 0, 0, 1, 0
- waitforvisualfinish
- createvisualtask sub_8115F10, 0x2, 257, 257, 257
+ createsprite gUnknown_085951C0, 130
+ delay 10
+ createvisualtask sub_8115F10, 2, 257, 257, 257
+ delay 30
+ panse_1B SE_W056, -64, +63, +2, 0
+ call HydroCannon1
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 10, 0, 40, 1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ call HydroCannon1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ call HydroCannon1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ call HydroCannon1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ call HydroCannon1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ call HydroCannon1
+ createsprite gUnknown_08597388, 130, 0, 0, 1, 0
+ waitforvisualfinish
+ createvisualtask sub_8115F10, 2, 257, 257, 257
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D6A50:
- createsprite gUnknown_085951D8, 0x82, 10, -10, 0, 0, 15, 257
- delay 0x1
- createsprite gUnknown_085951D8, 0x82, 10, -10, 0, 0, 15, 257
- delay 0x1
- createsprite gUnknown_085951D8, 0x82, 10, -10, 0, 0, 15, 257
- delay 0x1
- createsprite gUnknown_085951D8, 0x82, 10, -10, 0, 0, 15, 257
- delay 0x1
- createsprite gUnknown_085951D8, 0x82, 10, -10, 0, 0, 15, 257
+HydroCannon1:
+ createsprite gUnknown_085951D8, 130, 10, -10, 0, 0, 15, 257
+ delay 1
+ createsprite gUnknown_085951D8, 130, 10, -10, 0, 0, 15, 257
+ delay 1
+ createsprite gUnknown_085951D8, 130, 10, -10, 0, 0, 15, 257
+ delay 1
+ createsprite gUnknown_085951D8, 130, 10, -10, 0, 0, 15, 257
+ delay 1
+ createsprite gUnknown_085951D8, 130, 10, -10, 0, 0, 15, 257
return
Move_ASTONISH:
- loadspritegfx 0x2821
+ loadspritegfx ANIM_TAG_273
playsewithpan SE_W227, -64
- createsprite gUnknown_0857FE28, 0x2, 4, 6
- delay 0x19
- createsprite gUnknown_085964E4, 0x85, 0, 1
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 6
+ delay 25
+ createsprite gUnknown_085964E4, -123, 0, 1
playsewithpan SE_W166, +63
- createsprite gUnknown_085964E4, 0x85, 1, 1
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 5, 1
- createvisualtask sub_8106020, 0x3
+ createsprite gUnknown_085964E4, -123, 1, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1
+ createvisualtask sub_8106020, 3
waitforvisualfinish
end
Move_SEISMIC_TOSS:
- loadspritegfx 0x2797
- loadspritegfx 0x274A
- setarg 0x7, 0x0
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_058
+ setarg 7, 0
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
+ setalpha 12, 8
waitforvisualfinish
- createvisualtask sub_81114EC, 0x3
- delay 0x1
+ createvisualtask AnimTask_GetSeismicTossDamageLevel, 3
+ delay 1
fadetobg BG_SEISMICTOSS_SKUUPPERCUT
waitbgfadeout
- createvisualtask sub_811152C, 0x3
+ createvisualtask sub_811152C, 3
playsewithpan SE_W327, 0
waitbgfadein
waitforvisualfinish
- createvisualtask sub_8111590, 0x3
- jumpargeq 0x7, 0x0, AnimScript_82D6B53
- jumpargeq 0x7, 0x1, AnimScript_82D6B64
- jumpargeq 0x7, 0x2, AnimScript_82D6B7C
-
-AnimScript_82D6B48:
+ createvisualtask sub_8111590, 3
+ jumpreteq 0, SeismicTossWeak
+ jumpreteq 1, SeismicTossMedium
+ jumpreteq 2, SeismicTossStrong
+SeismicTossContinue:
restorebg
waitbgfadeout
- setarg 0x7, 0xFFF
+ setarg 7, 0xFFF
waitbgfadein
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-
-AnimScript_82D6B53:
- call AnimScript_82D6B9B
- delay 0x10
- call AnimScript_82D6BFC
- goto AnimScript_82D6B48
-
-AnimScript_82D6B64:
- call AnimScript_82D6B9B
- delay 0xE
- call AnimScript_82D6BFC
- delay 0xE
- call AnimScript_82D6B9B
- goto AnimScript_82D6B48
-
-AnimScript_82D6B7C:
- call AnimScript_82D6BFC
- delay 0xA
- call AnimScript_82D6B9B
- delay 0xA
- call AnimScript_82D6BFC
- delay 0xA
- call AnimScript_82D6B9B
- goto AnimScript_82D6B48
-
-AnimScript_82D6B9B:
- createsprite gUnknown_08597358, 0x83, -10, -8, 1, 1
+SeismicTossWeak:
+ call SeismicToss1
+ delay 16
+ call SeismicToss2
+ goto SeismicTossContinue
+SeismicTossMedium:
+ call SeismicToss1
+ delay 14
+ call SeismicToss2
+ delay 14
+ call SeismicToss1
+ goto SeismicTossContinue
+SeismicTossStrong:
+ call SeismicToss2
+ delay 10
+ call SeismicToss1
+ delay 10
+ call SeismicToss2
+ delay 10
+ call SeismicToss1
+ goto SeismicTossContinue
+SeismicToss1:
+ createsprite gBasicHitSplatSpriteTemplate, 131, -10, -8, 1, 1
playsewithpan SE_W070, +63
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 5, 1
- createsprite gUnknown_08596CB0, 0x82, -12, 27, 2, 3
- createsprite gUnknown_08596CB0, 0x82, 8, 28, 3, 4
- createsprite gUnknown_08596CB0, 0x82, -4, 30, 2, 3
- createsprite gUnknown_08596CB0, 0x82, 12, 25, 4, 4
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 5, 1
+ createsprite gUnknown_08596CB0, 130, -12, 27, 2, 3
+ createsprite gUnknown_08596CB0, 130, 8, 28, 3, 4
+ createsprite gUnknown_08596CB0, 130, -4, 30, 2, 3
+ createsprite gUnknown_08596CB0, 130, 12, 25, 4, 4
return
-
-AnimScript_82D6BFC:
- createsprite gUnknown_08597358, 0x83, 10, -8, 1, 1
+SeismicToss2:
+ createsprite gBasicHitSplatSpriteTemplate, 131, 10, -8, 1, 1
playsewithpan SE_W088, +63
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 5, 1
- createsprite gUnknown_08596CB0, 0x82, -12, 32, 3, 4
- createsprite gUnknown_08596CB0, 0x82, 8, 31, 2, 2
- createsprite gUnknown_08596CB0, 0x82, -4, 28, 2, 3
- createsprite gUnknown_08596CB0, 0x82, 12, 30, 4, 3
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 5, 1
+ createsprite gUnknown_08596CB0, 130, -12, 32, 3, 4
+ createsprite gUnknown_08596CB0, 130, 8, 31, 2, 2
+ createsprite gUnknown_08596CB0, 130, -4, 28, 2, 3
+ createsprite gUnknown_08596CB0, 130, 12, 30, 4, 3
return
Move_MAGIC_COAT:
- loadspritegfx 0x27BA
- setalpha 0x1000
- waitplaysewithpan SE_W112, -64, 0xF
- createsprite gUnknown_085965C0, 0x3, 40, 0, 10170
+ loadspritegfx ANIM_TAG_170
+ setalpha 0, 16
+ waitplaysewithpan SE_W112, -64, 15
+ createsprite gUnknown_085965C0, 3, 40, 0, 10170
waitforvisualfinish
- delay 0x1
+ delay 1
blendoff
end
Move_WATER_PULSE:
- loadspritegfx 0x27AB
- loadspritegfx 0x2830
+ loadspritegfx ANIM_TAG_155
+ loadspritegfx ANIM_TAG_288
monbg ANIM_TARGET
monbgprio_28 ANIM_TARGET
playsewithpan SE_W145C, -64
- createsprite gUnknown_08597274, 0x2, 1, 0, 0, 7, RGB(0, 25, 28)
- delay 0xA
- createsprite gUnknown_085952F8, 0x42, 100, 100, 8, 1, 20, 40, 0
- createsprite gUnknown_085952F8, 0x42, 20, 100, 16, 2, 10, 35, 1
- createsprite gUnknown_085952F8, 0x42, 200, 80, 8, 1, 40, 20, 0
- createsprite gUnknown_085952F8, 0x42, 80, 60, 10, 3, 20, 50, 0
- createsprite gUnknown_085952F8, 0x42, 140, 100, 16, 1, 20, 30, 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 0, 0, 7, RGB(0, 25, 28)
+ delay 10
+ createsprite gUnknown_085952F8, 66, 100, 100, 8, 1, 20, 40, 0
+ createsprite gUnknown_085952F8, 66, 20, 100, 16, 2, 10, 35, 1
+ createsprite gUnknown_085952F8, 66, 200, 80, 8, 1, 40, 20, 0
+ createsprite gUnknown_085952F8, 66, 80, 60, 10, 3, 20, 50, 0
+ createsprite gUnknown_085952F8, 66, 140, 100, 16, 1, 20, 30, 1
playsewithpan SE_W145C, +63
waitforvisualfinish
playsewithpan SE_W202, -64
- createsprite gUnknown_08593470, 0x82, 0, 0, 40, 15
- delay 0x5
+ createsprite gUnknown_08593470, 130, 0, 0, 40, 15
+ delay 5
playsewithpan SE_W202, -64
- createsprite gUnknown_08593470, 0x82, 0, 0, 40, 15
- delay 0x5
+ createsprite gUnknown_08593470, 130, 0, 0, 40, 15
+ delay 5
playsewithpan SE_W202, -64
- createsprite gUnknown_08593470, 0x82, 0, 0, 40, 15
- delay 0xD
- createvisualtask sub_80D51AC, 0x2, 1, 0, 8, 18, 1
+ createsprite gUnknown_08593470, 130, 0, 0, 40, 15
+ delay 13
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 8, 18, 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 7, 0, RGB(0, 25, 28)
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 7, 0, RGB(0, 25, 28)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Move_PSYCHO_BOOST:
- loadspritegfx 0x27E4
+ loadspritegfx ANIM_TAG_212
monbg ANIM_ATK_PARTNER
fadetobg BG_PSYCHIC
waitbgfadeout
- createvisualtask sub_815A5C8, 0x5
+ createvisualtask sub_815A5C8, 5
waitbgfadein
- delay 0x6
- createvisualtask sub_8115A04, 0x2, 1, 2, 8, 0, 10, 0
- delay 0x0
+ delay 6
+ createvisualtask sub_8115A04, 2, 1, 2, 8, 0, 10, RGB_BLACK
+ delay 0
monbgprio_28 ANIM_ATTACKER
- setalpha 0x808
- delay 0xA
- createvisualtask sub_80D51AC, 0x2, 0, 3, 0, 240, 0
- loopsewithpan SE_W060B, -64, 0xE, 0xA
- createsprite gUnknown_08596920, 0x2
- delay 0x6E
- loopsewithpan SE_W060B, -64, 0x7, 0xA
- waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, -8, 1, 24, 1
+ setalpha 8, 8
+ delay 10
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 3, 0, 240, 0
+ loopsewithpan SE_W060B, -64, 14, 10
+ createsprite gUnknown_08596920, 2
+ delay 110
+ loopsewithpan SE_W060B, -64, 7, 10
+ waitforvisualfinish
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, -8, 1, 24, 1
playsewithpan SE_W043, +63
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
- call AnimScript_82D7CDD
+ call UnsetPsychicBackground
end
Move_KNOCK_OFF:
- loadspritegfx 0x2825
- loadspritegfx 0x2797
- createsprite gUnknown_0857FE28, 0x2, 4, 6
- delay 0x4
+ loadspritegfx ANIM_TAG_277
+ loadspritegfx ANIM_TAG_135
+ createsprite gHorizontalLungeSpriteTemplate, 2, 4, 6
+ delay 4
playsewithpan SE_W233, +63
- createsprite gUnknown_085CE984, 0x82, -16, -16
- delay 0x8
- createsprite gUnknown_0859728C, 0x2, 31, 5, 1, 0x7FFF, 10, 0, 0
- createsprite gUnknown_08597358, 0x83, 0, 0, 1, 2
+ createsprite gUnknown_085CE984, 130, -16, -16
+ delay 8
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, 0, 1, 2
playsewithpan SE_W004, +63
- createsprite gUnknown_0857FE70, 0x2, 1, -12, 10, 0, 3
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 5
- delay 0x3
- createvisualtask sub_80D5484, 0x2, 1, 0, 3, 6, 1
- delay 0x5
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 6
- delay 0xA
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -12, 10, 0, 3
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 5
+ delay 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1
+ delay 5
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 6
+ delay 10
waitforvisualfinish
end
Move_DOOM_DESIRE:
- createvisualtask sub_8114960, 0x2
- delay 0x1
+ createvisualtask sub_8114960, 2
+ delay 1
monbg ANIM_ATK_PARTNER
- createvisualtask sub_811489C, 0x5, 1, 0
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 4, 0
+ createvisualtask sub_811489C, 5, 1, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 4, RGB_BLACK
waitforvisualfinish
- setalpha 0x808
+ setalpha 8, 8
playsewithpan SE_W060, -64
- createvisualtask sub_80D6064, 0x5, -4, -4, 15, 0, 1
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_ATTACKER, 1
waitforvisualfinish
- delay 0x14
- createvisualtask sub_811489C, 0x5, 1, 1
- createsprite gUnknown_08597274, 0x2, 1, 1, 4, 0, 0
+ delay 20
+ createvisualtask sub_811489C, 5, 1, 1
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 4, 0, RGB_BLACK
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
Move_SKY_UPPERCUT:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
fadetobg BG_SEISMICTOSS_SKUUPPERCUT
waitbgfadeout
playsewithpan SE_W327, -64
- createvisualtask sub_810DABC, 0x5, 55
+ createvisualtask sub_810DABC, 5, 55
waitbgfadein
- setalpha 0x80C
- delay 0x26
- createsprite gUnknown_0857FE70, 0x2, 0, 28, 0, 0, 5
- delay 0x4
- createvisualtask sub_80D52D0, 0x2, 1, 4, 0, 6, 1
+ setalpha 12, 8
+ delay 38
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 0, 28, 0, 0, 5
+ delay 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 6, 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, -28, 28, 1, 1
- delay 0x1
+ createsprite gBasicHitSplatSpriteTemplate, 131, -28, 28, 1, 1
+ delay 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, -15, 8, 1, 1
+ createsprite gBasicHitSplatSpriteTemplate, 131, -15, 8, 1, 1
playsewithpan SE_W233B, +63
- delay 0x1
+ delay 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, -5, -12, 1, 1
- delay 0x1
+ createsprite gBasicHitSplatSpriteTemplate, 131, -5, -12, 1, 1
+ delay 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, 0, -32, 1, 1
- delay 0x1
+ createsprite gBasicHitSplatSpriteTemplate, 131, 0, -32, 1, 1
+ delay 1
playsewithpan SE_W233B, +63
- createsprite gUnknown_08597358, 0x83, 5, -52, 1, 1
- createsprite gUnknown_0857FE70, 0x2, 1, -26, 16, 1, 4
- delay 0x4
- createvisualtask sub_80D5484, 0x2, 1, 0, 3, 6, 1
- delay 0x1E
- createsprite gUnknown_0857FE58, 0x2, 0, 0, 6
- delay 0x4
- createsprite gUnknown_0857FE58, 0x2, 1, 0, 6
+ createsprite gBasicHitSplatSpriteTemplate, 131, 5, -52, 1, 1
+ createsprite gSlideMonToOffsetSpriteTemplate, 2, 1, -26, 16, 1, 4
+ delay 4
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1
+ delay 30
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 0, 0, 6
+ delay 4
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 2, 1, 0, 6
clearmonbg ANIM_DEF_PARTNER
blendoff
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
end
Move_SECRET_POWER:
- createvisualtask sub_8117C24, 0x5
- jumpargeq 0x0, 0x0, Move_NEEDLE_ARM
- jumpargeq 0x0, 0x1, Move_MAGICAL_LEAF
- jumpargeq 0x0, 0x2, Move_MUD_SHOT
- jumpargeq 0x0, 0x3, Move_WATERFALL
- jumpargeq 0x0, 0x4, Move_SURF
- jumpargeq 0x0, 0x5, Move_BUBBLE_BEAM
- jumpargeq 0x0, 0x6, Move_ROCK_THROW
- jumpargeq 0x0, 0x7, Move_BITE
- jumpargeq 0x0, 0x8, Move_STRENGTH
+ createvisualtask AnimTask_GetBattleTerrain, 5
+ jumpargeq 0, BATTLE_TERRAIN_GRASS, Move_NEEDLE_ARM
+ jumpargeq 0, BATTLE_TERRAIN_LONG_GRASS, Move_MAGICAL_LEAF
+ jumpargeq 0, BATTLE_TERRAIN_SAND, Move_MUD_SHOT
+ jumpargeq 0, BATTLE_TERRAIN_UNDERWATER, Move_WATERFALL
+ jumpargeq 0, BATTLE_TERRAIN_WATER, Move_SURF
+ jumpargeq 0, BATTLE_TERRAIN_POND, Move_BUBBLE_BEAM
+ jumpargeq 0, BATTLE_TERRAIN_MOUNTAIN, Move_ROCK_THROW
+ jumpargeq 0, BATTLE_TERRAIN_CAVE, Move_BITE
+ jumpargeq 0, BATTLE_TERRAIN_BUILDING, Move_STRENGTH
goto Move_SLAM
Move_TWISTER:
- loadspritegfx 0x274F
- loadspritegfx 0x2797
- loadspritegfx 0x274A
+ loadspritegfx ANIM_TAG_063
+ loadspritegfx ANIM_TAG_135
+ loadspritegfx ANIM_TAG_058
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
playsewithpan SE_W239, +63
- createsprite gUnknown_085923A8, 0x82, 120, 70, 5, 70, 30
- delay 0x1
- createsprite gUnknown_085923A8, 0x82, 115, 55, 6, 60, 25
- delay 0x1
- createsprite gUnknown_085923A8, 0x82, 115, 60, 7, 60, 30
- createsprite gUnknown_085923A8, 0x82, 115, 55, 10, 60, 30
- delay 0x3
- createsprite gUnknown_08596CC8, 0x82, 100, 50, 4, 50, 26
- delay 0x1
- createsprite gUnknown_085923A8, 0x82, 105, 25, 8, 60, 20
- delay 0x1
- createsprite gUnknown_085923A8, 0x82, 115, 40, 10, 48, 30
- delay 0x3
- createsprite gUnknown_08596CC8, 0x82, 120, 30, 6, 45, 25
- createsprite gUnknown_085923A8, 0x82, 115, 35, 10, 60, 30
- delay 0x3
- createsprite gUnknown_08596CC8, 0x82, 105, 20, 8, 40, 0
- delay 0x3
- createsprite gUnknown_085923A8, 0x82, 20, 255, 15, 32, 0
- createsprite gUnknown_085923A8, 0x82, 110, 10, 8, 32, 20
- waitforvisualfinish
- createsprite gUnknown_08597358, 0x83, -32, -16, 1, 3
+ createsprite gUnknown_085923A8, 130, 120, 70, 5, 70, 30
+ delay 1
+ createsprite gUnknown_085923A8, 130, 115, 55, 6, 60, 25
+ delay 1
+ createsprite gUnknown_085923A8, 130, 115, 60, 7, 60, 30
+ createsprite gUnknown_085923A8, 130, 115, 55, 10, 60, 30
+ delay 3
+ createsprite gUnknown_08596CC8, 130, 100, 50, 4, 50, 26
+ delay 1
+ createsprite gUnknown_085923A8, 130, 105, 25, 8, 60, 20
+ delay 1
+ createsprite gUnknown_085923A8, 130, 115, 40, 10, 48, 30
+ delay 3
+ createsprite gUnknown_08596CC8, 130, 120, 30, 6, 45, 25
+ createsprite gUnknown_085923A8, 130, 115, 35, 10, 60, 30
+ delay 3
+ createsprite gUnknown_08596CC8, 130, 105, 20, 8, 40, 0
+ delay 3
+ createsprite gUnknown_085923A8, 130, 20, 255, 15, 32, 0
+ createsprite gUnknown_085923A8, 130, 110, 10, 8, 32, 20
+ waitforvisualfinish
+ createsprite gBasicHitSplatSpriteTemplate, 131, -32, -16, 1, 3
playsewithpan SE_W004, +63
- createvisualtask sub_80D5484, 0x2, 1, 3, 0, 12, 1
- createvisualtask sub_80D5484, 0x2, 3, 3, 0, 12, 1
- delay 0x4
- createsprite gUnknown_085973A0, 0x83, 1, 3
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 12, 1
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_DEF_PARTNER, 3, 0, 12, 1
+ delay 4
+ createsprite gUnknown_085973A0, 131, 1, 3
playsewithpan SE_W004, +63
- delay 0x4
- createsprite gUnknown_085973A0, 0x83, 1, 3
+ delay 4
+ createsprite gUnknown_085973A0, 131, 1, 3
playsewithpan SE_W004, +63
- delay 0x4
- createsprite gUnknown_08597358, 0x83, 32, 20, 1, 3
+ delay 4
+ createsprite gBasicHitSplatSpriteTemplate, 131, 32, 20, 1, 3
playsewithpan SE_W004, +63
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
@@ -9840,1098 +9689,1059 @@ Move_TWISTER:
end
Move_MAGICAL_LEAF:
- loadspritegfx 0x274F
- loadspritegfx 0x27B0
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_063
+ loadspritegfx ANIM_TAG_160
+ loadspritegfx ANIM_TAG_135
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- delay 0x1
- loopsewithpan SE_W077, -64, 0xA, 0x5
- createvisualtask sub_81007C4, 0x5
- createsprite gUnknown_08592390, 0x2, -3, -2, 10
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -1, -1, 15
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -4, -4, 7
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 3, -3, 11
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -1, -6, 8
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 2, -1, 12
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -3, -4, 13
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 4, -5, 7
- delay 0x2
- createsprite gUnknown_08592390, 0x2, 2, -6, 11
- delay 0x2
- createsprite gUnknown_08592390, 0x2, -3, -5, 8
- delay 0x3C
+ setalpha 12, 8
+ delay 1
+ loopsewithpan SE_W077, -64, 10, 5
+ createvisualtask sub_81007C4, 5
+ createsprite gUnknown_08592390, 2, -3, -2, 10
+ delay 2
+ createsprite gUnknown_08592390, 2, -1, -1, 15
+ delay 2
+ createsprite gUnknown_08592390, 2, -4, -4, 7
+ delay 2
+ createsprite gUnknown_08592390, 2, 3, -3, 11
+ delay 2
+ createsprite gUnknown_08592390, 2, -1, -6, 8
+ delay 2
+ createsprite gUnknown_08592390, 2, 2, -1, 12
+ delay 2
+ createsprite gUnknown_08592390, 2, -3, -4, 13
+ delay 2
+ createsprite gUnknown_08592390, 2, 4, -5, 7
+ delay 2
+ createsprite gUnknown_08592390, 2, 2, -6, 11
+ delay 2
+ createsprite gUnknown_08592390, 2, -3, -5, 8
+ delay 60
playsewithpan SE_W013B, -64
- createsprite gUnknown_085923D8, 0x83, 20, -10, 20, 0, 32, 20, 0
- createsprite gUnknown_085923D8, 0x83, 20, -10, 20, 0, 32, -20, 0
- delay 0x1E
+ createsprite gUnknown_085923D8, 131, 20, -10, 20, 0, 32, 20, 0
+ createsprite gUnknown_085923D8, 131, 20, -10, 20, 0, 32, -20, 0
+ delay 30
playsewithpan SE_W013, +63
- createsprite gUnknown_08597358, 0x84, -10, -4, 1, 2
- createsprite gUnknown_08597358, 0x84, 10, 4, 1, 2
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
- delay 0x14
- setarg 0x7, 0xFFFF
+ createsprite gBasicHitSplatSpriteTemplate, 132, -10, -4, 1, 2
+ createsprite gBasicHitSplatSpriteTemplate, 132, 10, 4, 1, 2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
+ delay 20
+ setarg 7, -1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_ICE_BALL:
- loadspritegfx 0x273B
- loadspritegfx 0x279D
- createvisualtask sub_810CDFC, 0x5, 0
- jumpargeq 0x0, 0x4, AnimScript_82D731B
-
-AnimScript_82D72BB:
+ loadspritegfx ANIM_TAG_ICE_CHUNK
+ loadspritegfx ANIM_TAG_141
+ createvisualtask AnimTask_GetRolloutCounter, 5, 0
+ jumpargeq 0, 4, IceBallSetIceBg
+IceBallContinue:
playsewithpan SE_W196, -64
- createsprite gUnknown_08595DE4, 0x82, 15, 0, -12, -16, 30, -40
- delay 0x1C
+ createsprite gUnknown_08595DE4, 130, 15, 0, -12, -16, 30, -40
+ delay 28
playsewithpan SE_W280, +63
- createvisualtask sub_810CDFC, 0x5, 0
- jumpargeq 0x0, 0x0, AnimScript_82D732C
- jumpargeq 0x0, 0x1, AnimScript_82D735B
- jumpargeq 0x0, 0x2, AnimScript_82D7394
- jumpargeq 0x0, 0x3, AnimScript_82D73D7
- jumpargeq 0x0, 0x4, AnimScript_82D741F
-
-AnimScript_82D7309:
- createvisualtask sub_810CDFC, 0x5, 0
- jumpargeq 0x0, 0x4, AnimScript_82D7322
-
-AnimScript_82D731A:
- end
-
-AnimScript_82D731B:
+ createvisualtask AnimTask_GetRolloutCounter, 5, 0
+ jumpargeq 0, 0, IceBallWeakest
+ jumpargeq 0, 1, IceBallWeak
+ jumpargeq 0, 2, IceBallMediun
+ jumpargeq 0, 3, IceBallStrong
+ jumpargeq 0, 4, IceBallStrongest
+IceBallContinue2:
+ createvisualtask AnimTask_GetRolloutCounter, 5, 0
+ jumpargeq 0, 4, IceBallUnsetIceBg
+IceBallEnd:
+ end
+IceBallSetIceBg:
fadetobg BG_ICE
- goto AnimScript_82D72BB
-
-AnimScript_82D7322:
+ goto IceBallContinue
+IceBallUnsetIceBg:
waitbgfadein
- delay 0x2D
+ delay 45
restorebg
waitbgfadein
- goto AnimScript_82D731A
-
-AnimScript_82D732C:
- createvisualtask sub_80D6388, 0x2, 0, 1, 8, 1, 0
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- goto AnimScript_82D7309
-
-AnimScript_82D735B:
- createvisualtask sub_80D6388, 0x2, 0, 1, 10, 1, 0
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- goto AnimScript_82D7309
-
-AnimScript_82D7394:
- createvisualtask sub_80D6388, 0x2, 0, 1, 14, 1, 0
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- goto AnimScript_82D7309
-
-AnimScript_82D73D7:
- createvisualtask sub_80D6388, 0x2, 0, 1, 18, 1, 0
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- goto AnimScript_82D7309
-
-AnimScript_82D741F:
- createvisualtask sub_80D6388, 0x2, 0, 1, 30, 1, 0
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- call AnimScript_82D7467
- goto AnimScript_82D7309
-
-AnimScript_82D7467:
- createsprite gUnknown_08595DFC, 0x84, -12, -16
+ goto IceBallEnd
+IceBallWeakest:
+ createvisualtask sub_80D6388, 2, 0, 1, 8, 1, 0
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ goto IceBallContinue2
+IceBallWeak:
+ createvisualtask sub_80D6388, 2, 0, 1, 10, 1, 0
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ goto IceBallContinue2
+IceBallMediun:
+ createvisualtask sub_80D6388, 2, 0, 1, 14, 1, 0
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ goto IceBallContinue2
+IceBallStrong:
+ createvisualtask sub_80D6388, 2, 0, 1, 18, 1, 0
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ goto IceBallContinue2
+IceBallStrongest:
+ createvisualtask sub_80D6388, 2, 0, 1, 30, 1, 0
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ call IceBall1
+ goto IceBallContinue2
+IceBall1:
+ createsprite gUnknown_08595DFC, 132, -12, -16
return
Move_WEATHER_BALL:
- loadspritegfx 0x282B
- createsprite gUnknown_0857FE40, 0x2, 8, 1, 0
- delay 0x8
+ loadspritegfx ANIM_TAG_283
+ createsprite gVerticalDipSpriteTemplate, 2, 8, 1, ANIM_ATTACKER
+ delay 8
playsewithpan SE_W207, -64
- createsprite gUnknown_0853EE38, 0x2
+ createsprite gUnknown_0853EE38, 2
waitforvisualfinish
- delay 0xF
+ delay 15
playsewithpan SE_W197, 0
- createsprite gUnknown_0859728C, 0x2, 31, 5, 1, 0x7FFF, 10, 0, 0
- waitforvisualfinish
- createvisualtask sub_81604F0, 0x2
- delay 0x1
- jumpargeq 0x7, 0x0, AnimScript_82D74DE
- jumpargeq 0x7, 0x1, AnimScript_82D751B
- jumpargeq 0x7, 0x2, AnimScript_82D757F
- jumpargeq 0x7, 0x3, AnimScript_82D75E3
- jumpargeq 0x7, 0x4, AnimScript_82D7683
-
-AnimScript_82D74DE:
- loadspritegfx 0x2797
- createsprite gUnknown_0853EE50, 0x82, -30, -100, 25, 1, 0, 0
+ createsprite gComplexPaletteBlendSpriteTemplate, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0
+ waitforvisualfinish
+ createvisualtask AnimTask_GetWeather, 2
+ delay 1
+ jumpreteq ANIM_WEATHER_NONE, WeatherBallNormal
+ jumpreteq ANIM_WEATHER_SUN, WeatherBallFire
+ jumpreteq ANIM_WEATHER_RAIN, WeatherBallWater
+ jumpreteq ANIM_WEATHER_SANDSTORM, WeatherBallSandstorm
+ jumpreteq ANIM_WEATHER_HAIL, WeatherBallIce
+WeatherBallNormal:
+ loadspritegfx ANIM_TAG_135
+ createsprite gUnknown_0853EE50, 130, -30, -100, 25, 1, 0, 0
waitforvisualfinish
playsewithpan SE_W025B, +63
- createsprite gUnknown_08597358, 0x84, -10, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 8, 1
+ createsprite gBasicHitSplatSpriteTemplate, 132, -10, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 8, 1
waitforvisualfinish
end
-
-AnimScript_82D751B:
- loadspritegfx 0x272D
- createsprite gUnknown_0859559C, 0x82, -30, -100, 25, 1, 40, 10
+WeatherBallFire:
+ loadspritegfx ANIM_TAG_SMALL_EMBER
+ createsprite gUnknown_0859559C, 130, -30, -100, 25, 1, 40, 10
playsewithpan SE_W172, +63
- delay 0xA
- createsprite gUnknown_0859559C, 0x82, -30, -100, 25, 1, -40, 20
+ delay 10
+ createsprite gUnknown_0859559C, 130, -30, -100, 25, 1, -40, 20
playsewithpan SE_W172, +63
- delay 0xA
- createsprite gUnknown_0859559C, 0x82, -30, -100, 25, 1, 0, 0
+ delay 10
+ createsprite gUnknown_0859559C, 130, -30, -100, 25, 1, 0, 0
playsewithpan SE_W172, +63
waitforvisualfinish
playsewithpan SE_W172B, +63
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 8, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 8, 1
waitforvisualfinish
end
-
-AnimScript_82D757F:
- loadspritegfx 0x27AB
- createsprite gUnknown_08595328, 0x82, -30, -100, 25, 1, 50, 10
+WeatherBallWater:
+ loadspritegfx ANIM_TAG_155
+ createsprite gUnknown_08595328, 130, -30, -100, 25, 1, 50, 10
playsewithpan SE_W152, +63
- delay 0x8
- createsprite gUnknown_08595328, 0x82, -30, -100, 25, 1, -20, 20
+ delay 8
+ createsprite gUnknown_08595328, 130, -30, -100, 25, 1, -20, 20
playsewithpan SE_W152, +63
- delay 0xD
- createsprite gUnknown_08595328, 0x82, -30, -100, 25, 1, 0, 0
+ delay 13
+ createsprite gUnknown_08595328, 130, -30, -100, 25, 1, 0, 0
playsewithpan SE_W152, +63
waitforvisualfinish
- createvisualtask sub_80D51AC, 0x2, 1, 0, 3, 8, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 8, 1
playsewithpan SE_W202, +63
waitforvisualfinish
end
-
-AnimScript_82D75E3:
- loadspritegfx 0x274A
- createsprite gUnknown_08596CE0, 0x82, -30, -100, 25, 1, 30, 0
+WeatherBallSandstorm:
+ loadspritegfx ANIM_TAG_058
+ createsprite gUnknown_08596CE0, 130, -30, -100, 25, 1, 30, 0
playsewithpan SE_W088, +63
- delay 0x5
- createsprite gUnknown_08596CE0, 0x82, -30, -100, 25, 1, -40, 20
+ delay 5
+ createsprite gUnknown_08596CE0, 130, -30, -100, 25, 1, -40, 20
playsewithpan SE_W088, +63
- delay 0xE
- createsprite gUnknown_08596CE0, 0x82, -30, -100, 25, 1, 0, 0
+ delay 14
+ createsprite gUnknown_08596CE0, 130, -30, -100, 25, 1, 0, 0
playsewithpan SE_W088, +63
waitforvisualfinish
playsewithpan SE_W070, +63
- createsprite gUnknown_08596CB0, 0x82, -12, 27, 2, 3
- createsprite gUnknown_08596CB0, 0x82, 8, 28, 3, 4
- createsprite gUnknown_08596CB0, 0x82, -4, 30, 2, 3
- createsprite gUnknown_08596CB0, 0x82, 12, 25, 4, 4
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ createsprite gUnknown_08596CB0, 130, -12, 27, 2, 3
+ createsprite gUnknown_08596CB0, 130, 8, 28, 3, 4
+ createsprite gUnknown_08596CB0, 130, -4, 30, 2, 3
+ createsprite gUnknown_08596CB0, 130, 12, 25, 4, 4
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
waitforvisualfinish
end
-
-AnimScript_82D7683:
- loadspritegfx 0x2817
- loadspritegfx 0x279D
- createsprite gUnknown_08595D44, 0x82, -30, -100, 25, 25, -40, 20
+WeatherBallIce:
+ loadspritegfx ANIM_TAG_263
+ loadspritegfx ANIM_TAG_141
+ createsprite gUnknown_08595D44, 130, -30, -100, 25, 25, -40, 20
playsewithpan SE_W258, +63
- delay 0xA
- createsprite gUnknown_08595D44, 0x82, -30, -100, 25, 25, 40, 0
+ delay 10
+ createsprite gUnknown_08595D44, 130, -30, -100, 25, 25, 40, 0
playsewithpan SE_W258, +63
- delay 0xA
- createsprite gUnknown_08595D44, 0x82, -30, -100, 25, 25, 0, 0
+ delay 10
+ createsprite gUnknown_08595D44, 130, -30, -100, 25, 25, 0, 0
playsewithpan SE_W258, +63
waitforvisualfinish
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
playsewithpan SE_W196, +63
- call AnimScript_82D7720
+ call FreezeEffect1
waitforvisualfinish
end
Move_COUNT:
- loadspritegfx 0x2797
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W003, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-AnimScript_82D7720:
- createsprite gUnknown_08595B68, 0x82, -10, -10, 0
+FreezeEffect1:
+ createsprite gUnknown_08595B68, 130, -10, -10, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 10, 20, 0
+ delay 4
+ createsprite gUnknown_08595B80, 130, 10, 20, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, -5, 10, 0
+ delay 4
+ createsprite gUnknown_08595B68, 130, -5, 10, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 17, -12, 0
+ delay 4
+ createsprite gUnknown_08595B80, 130, 17, -12, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, -15, 15, 0
+ delay 4
+ createsprite gUnknown_08595B80, 130, -15, 15, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 0, 0, 0
+ delay 4
+ createsprite gUnknown_08595B80, 130, 0, 0, 0
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, 20, 2, 0
+ delay 4
+ createsprite gUnknown_08595B68, 130, 20, 2, 0
playsewithpan SE_W196, +63
return
-AnimScript_82D77A4:
- createsprite gUnknown_08595B68, 0x82, -10, -10, 1
+FreezeEffect2:
+ createsprite gUnknown_08595B68, 130, -10, -10, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 10, 20, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, 10, 20, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, -29, 0, 1
+ delay 4
+ createsprite gUnknown_08595B68, 130, -29, 0, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 29, -20, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, 29, -20, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, -5, 10, 1
+ delay 4
+ createsprite gUnknown_08595B68, 130, -5, 10, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 17, -12, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, 17, -12, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, -20, 0, 1
+ delay 4
+ createsprite gUnknown_08595B68, 130, -20, 0, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, -15, 15, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, -15, 15, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 26, -5, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, 26, -5, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B80, 0x82, 0, 0, 1
+ delay 4
+ createsprite gUnknown_08595B80, 130, 0, 0, 1
playsewithpan SE_W196, +63
- delay 0x4
- createsprite gUnknown_08595B68, 0x82, 20, 2, 1
+ delay 4
+ createsprite gUnknown_08595B68, 130, 20, 2, 1
playsewithpan SE_W196, +63
return
-AnimScript_82D7874:
- loopsewithpan SE_W196, +63, 0x6, 0x4
- createsprite gUnknown_08595C04, 0x82, 0, 24, 0
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 8, 24, 0
- createsprite gUnknown_08595C04, 0x82, -8, 24, 0
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 16, 24, 0
- createsprite gUnknown_08595C04, 0x82, -16, 24, 0
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 24, 24, 0
- createsprite gUnknown_08595C04, 0x82, -24, 24, 0
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 32, 24, 0
- createsprite gUnknown_08595C04, 0x82, -32, 24, 0
+IcyWindEffect1: @ Unused
+ loopsewithpan SE_W196, +63, 6, 4
+ createsprite gUnknown_08595C04, 130, 0, 24, 0
+ delay 4
+ createsprite gUnknown_08595C04, 130, 8, 24, 0
+ createsprite gUnknown_08595C04, 130, -8, 24, 0
+ delay 4
+ createsprite gUnknown_08595C04, 130, 16, 24, 0
+ createsprite gUnknown_08595C04, 130, -16, 24, 0
+ delay 4
+ createsprite gUnknown_08595C04, 130, 24, 24, 0
+ createsprite gUnknown_08595C04, 130, -24, 24, 0
+ delay 4
+ createsprite gUnknown_08595C04, 130, 32, 24, 0
+ createsprite gUnknown_08595C04, 130, -32, 24, 0
return
-AnimScript_82D78F8:
- loopsewithpan SE_W196, +63, 0x6, 0x4
- createsprite gUnknown_08595C04, 0x82, 0, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 8, 24, 1
- createsprite gUnknown_08595C04, 0x82, -8, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 16, 24, 1
- createsprite gUnknown_08595C04, 0x82, -16, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 24, 24, 1
- createsprite gUnknown_08595C04, 0x82, -24, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 32, 24, 1
- createsprite gUnknown_08595C04, 0x82, -32, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 40, 24, 1
- createsprite gUnknown_08595C04, 0x82, -40, 24, 1
- delay 0x4
- createsprite gUnknown_08595C04, 0x82, 48, 24, 1
- createsprite gUnknown_08595C04, 0x82, -48, 24, 1
+IcyWindEffect2:
+ loopsewithpan SE_W196, +63, 6, 4
+ createsprite gUnknown_08595C04, 130, 0, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 8, 24, 1
+ createsprite gUnknown_08595C04, 130, -8, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 16, 24, 1
+ createsprite gUnknown_08595C04, 130, -16, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 24, 24, 1
+ createsprite gUnknown_08595C04, 130, -24, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 32, 24, 1
+ createsprite gUnknown_08595C04, 130, -32, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 40, 24, 1
+ createsprite gUnknown_08595C04, 130, -40, 24, 1
+ delay 4
+ createsprite gUnknown_08595C04, 130, 48, 24, 1
+ createsprite gUnknown_08595C04, 130, -48, 24, 1
return
-AnimScript_82D79B4:
- createsprite gUnknown_08592B7C, 0x2, -15, 0, 0, 0, 32, 60
- delay 0x8
- createsprite gUnknown_08592B7C, 0x2, 12, -5, 0, 0, 32, 60
- delay 0x8
+GrantingStarsEffect:
+ createsprite gUnknown_08592B7C, 2, -15, 0, 0, 0, 32, 60
+ delay 8
+ createsprite gUnknown_08592B7C, 2, 12, -5, 0, 0, 32, 60
+ delay 8
return
-AnimScript_82D79DF:
+HealingEffect:
playsewithpan SE_W071B, -64
- createsprite gUnknown_08592F2C, 0x2, 0, -5, 0, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x2, -15, 10, 0, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x2, -15, -15, 0, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x2, 10, -5, 0, 0
- delay 0x7
+ createsprite gUnknown_08592F2C, 2, 0, -5, 0, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 2, -15, 10, 0, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 2, -15, -15, 0, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 2, 10, -5, 0, 0
+ delay 7
return
-AnimScript_82D7A28:
+HealingEffect2:
playsewithpan SE_W071B, +63
- createsprite gUnknown_08592F2C, 0x82, 0, -5, 1, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x82, -15, 10, 1, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x82, -15, -15, 1, 0
- delay 0x7
- createsprite gUnknown_08592F2C, 0x82, 10, -5, 1, 0
- delay 0x7
+ createsprite gUnknown_08592F2C, 130, 0, -5, 1, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 130, -15, 10, 1, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 130, -15, -15, 1, 0
+ delay 7
+ createsprite gUnknown_08592F2C, 130, 10, -5, 1, 0
+ delay 7
return
-AnimScript_82D7A71:
- createsprite gUnknown_08596240, 0x82, 10, 10, 0
+PoisonBubblesEffect:
+ createsprite gPoisonBubbleSpriteTemplate, 130, 10, 10, 0
playsewithpan SE_W092, +63
- delay 0x6
- createsprite gUnknown_08596240, 0x82, 20, -20, 0
+ delay 6
+ createsprite gPoisonBubbleSpriteTemplate, 130, 20, -20, 0
playsewithpan SE_W092, +63
- delay 0x6
- createsprite gUnknown_08596240, 0x82, -20, 15, 0
+ delay 6
+ createsprite gPoisonBubbleSpriteTemplate, 130, -20, 15, 0
playsewithpan SE_W092, +63
- delay 0x6
- createsprite gUnknown_08596240, 0x82, 0, 0, 0
+ delay 6
+ createsprite gPoisonBubbleSpriteTemplate, 130, 0, 0, 0
playsewithpan SE_W092, +63
- delay 0x6
- createsprite gUnknown_08596240, 0x82, -20, -20, 0
+ delay 6
+ createsprite gPoisonBubbleSpriteTemplate, 130, -20, -20, 0
playsewithpan SE_W092, +63
- delay 0x6
- createsprite gUnknown_08596240, 0x82, 16, -8, 0
+ delay 6
+ createsprite gPoisonBubbleSpriteTemplate, 130, 16, -8, 0
playsewithpan SE_W092, +63
return
-AnimScript_82D7AE2:
- createsprite gUnknown_08596258, 0x2, 10, 10, 0
+WaterBubbleEffect:
+ createsprite gWaterBubbleSpriteTemplate, 2, 10, 10, 0
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 20, -20, 0
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 20, -20, 0
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, -20, 15, 0
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, -20, 15, 0
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 0, 0, 0
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 0, 0, 0
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, -20, -20, 0
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, -20, -20, 0
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 16, -8, 0
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 16, -8, 0
playsewithpan SE_W145C, +63
return
-AnimScript_82D7B53:
- createsprite gUnknown_08596258, 0x2, 10, 10, 1
+WaterBubbleEffect2:
+ createsprite gWaterBubbleSpriteTemplate, 2, 10, 10, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, -28, -10, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, -28, -10, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 20, -20, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 20, -20, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, -20, 15, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, -20, 15, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 0, 0, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 0, 0, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 27, 8, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 27, 8, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, -20, -20, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, -20, -20, 1
playsewithpan SE_W145C, +63
- delay 0x6
- createsprite gUnknown_08596258, 0x2, 16, -8, 1
+ delay 6
+ createsprite gWaterBubbleSpriteTemplate, 2, 16, -8, 1
playsewithpan SE_W145C, +63
return
-AnimScript_82D7BEA:
+ElectricityEffect:
playsewithpan SE_W085B, +63
- createsprite gUnknown_08595810, 0x82, 5, 0, 5, 0
- delay 0x2
- createsprite gUnknown_08595810, 0x82, -5, 10, 5, 1
- delay 0x2
- createsprite gUnknown_08595810, 0x82, 15, 20, 5, 2
- delay 0x2
- createsprite gUnknown_08595810, 0x82, -15, -10, 5, 0
- delay 0x2
- createsprite gUnknown_08595810, 0x82, 25, 0, 5, 1
- delay 0x2
- createsprite gUnknown_08595810, 0x82, -8, 8, 5, 2
- delay 0x2
- createsprite gUnknown_08595810, 0x82, 2, -8, 5, 0
- delay 0x2
- createsprite gUnknown_08595810, 0x82, -20, 15, 5, 1
+ createsprite gElectricitySpriteTemplate, 130, 5, 0, 5, 0
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, -5, 10, 5, 1
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, 15, 20, 5, 2
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, -15, -10, 5, 0
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, 25, 0, 5, 1
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, -8, 8, 5, 2
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, 2, -8, 5, 0
+ delay 2
+ createsprite gElectricitySpriteTemplate, 130, -20, 15, 5, 1
return
-AnimScript_82D7C75:
- loopsewithpan SE_W146, +63, 0xD, 0x6
- createsprite gUnknown_0859725C, 0x82, 0, -15, 0, 3, 90
- createsprite gUnknown_0859725C, 0x82, 0, -15, 51, 3, 90
- createsprite gUnknown_0859725C, 0x82, 0, -15, 102, 3, 90
- createsprite gUnknown_0859725C, 0x82, 0, -15, 153, 3, 90
- createsprite gUnknown_0859725C, 0x82, 0, -15, 204, 3, 90
+ConfusionEffect:
+ loopsewithpan SE_W146, +63, 13, 6
+ createsprite gConfusionDuckSpriteTemplate, 130, 0, -15, 0, 3, 90
+ createsprite gConfusionDuckSpriteTemplate, 130, 0, -15, 51, 3, 90
+ createsprite gConfusionDuckSpriteTemplate, 130, 0, -15, 102, 3, 90
+ createsprite gConfusionDuckSpriteTemplate, 130, 0, -15, 153, 3, 90
+ createsprite gConfusionDuckSpriteTemplate, 130, 0, -15, 204, 3, 90
return
-AnimScript_82D7CD1:
+SetPsychicBackground:
fadetobg BG_PSYCHIC
waitbgfadeout
- createvisualtask sub_815A504, 0x5
+ createvisualtask sub_815A504, 5
waitbgfadein
return
-AnimScript_82D7CDD:
+UnsetPsychicBackground:
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
return
-AnimScript_82D7CE5:
- jumpifcontest AnimScript_82D7CFE
+SetFlyingBg:
+ jumpifcontest SetBgFlyingContest
fadetobg BG_FLYING
waitbgfadeout
- createvisualtask sub_8117660, 0x5, -2304, 768, 1, -1
-
-AnimScript_82D7CFC:
+ createvisualtask sub_8117660, 5, -2304, 768, 1, -1
+SetBgFlyingContinue:
waitbgfadein
return
-
-AnimScript_82D7CFE:
+SetBgFlyingContest:
fadetobg BG_FLYING_CONTESTS
waitbgfadeout
- createvisualtask sub_8117660, 0x5, 2304, 768, 0, -1
- goto AnimScript_82D7CFC
+ createvisualtask sub_8117660, 5, 2304, 768, 0, -1
+ goto SetBgFlyingContinue
-AnimScript_82D7D15:
+UnsetFlyingBg:
restorebg
waitbgfadeout
- setarg 0x7, 0xFFFF
+ setarg 7, -1
waitbgfadein
return
-AnimScript_82D7D1D:
- createvisualtask sub_8117E60, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D7D42
- createvisualtask sub_815A8C8, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82D7D50
- goto AnimScript_82D7D49
-
-AnimScript_82D7D40:
+SetSolarbeamBg:
+ createvisualtask AnimTask_IsContest, 2
+ jumprettrue SetSolarbeamBgContest
+ createvisualtask AnimTask_IsTargetPlayerSide, 2
+ jumpretfalse SetSolarbeamBgOpponent
+ goto SetSolarbeamBgPlayer
+SetSolarbeamBgContinue:
waitbgfadein
return
-
-AnimScript_82D7D42:
+SetSolarbeamBgContest:
fadetobg BG_SOLARBEAM_CONTESTS
- goto AnimScript_82D7D40
-
-AnimScript_82D7D49:
+ goto SetSolarbeamBgContinue
+SetSolarbeamBgPlayer:
fadetobg BG_SOLARBEAM_PLAYER
- goto AnimScript_82D7D40
-
-AnimScript_82D7D50:
+ goto SetSolarbeamBgContinue
+SetSolarbeamBgOpponent:
fadetobg BG_SOLARBEAM_OPPONENT
- goto AnimScript_82D7D40
+ goto SetSolarbeamBgContinue
-AnimScript_82D7D57:
+UnsetSolarbeamBg:
restorebg
waitbgfadein
return
Status_Poison:
- loopsewithpan SE_W092, +63, 0xD, 0x6
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 18, 2
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 12, 31774
+ loopsewithpan SE_W092, +63, 13, 6
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 18, 2
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 12, RGB(30, 0, 31)
end
Status_Confusion:
- loadspritegfx 0x2759
- call AnimScript_82D7C75
+ loadspritegfx ANIM_TAG_DUCK
+ call ConfusionEffect
end
Status_Burn:
- loadspritegfx 0x272D
+ loadspritegfx ANIM_TAG_SMALL_EMBER
playsewithpan SE_W172, +63
- call AnimScript_82D7DA6
- call AnimScript_82D7DA6
- call AnimScript_82D7DA6
+ call Burn1
+ call Burn1
+ call Burn1
waitforvisualfinish
end
-
-AnimScript_82D7DA6:
- createsprite gUnknown_08595504, 0x82, -24, 24, 24, 24, 20, 1, 1
- delay 0x4
+Burn1:
+ createsprite gUnknown_08595504, 130, -24, 24, 24, 24, 20, 1, 1
+ delay 4
return
Status_Infatuation:
- loadspritegfx 0x27E2
+ loadspritegfx ANIM_TAG_PURPLE_HEART
playsewithpan SE_W204, -64
- createsprite gUnknown_08593970, 0x3, 0, 20
- delay 0xF
+ createsprite gUnknown_08593970, 3, 0, 20
+ delay 15
playsewithpan SE_W204, -64
- createsprite gUnknown_08593970, 0x3, -20, 20
- delay 0xF
+ createsprite gUnknown_08593970, 3, -20, 20
+ delay 15
playsewithpan SE_W204, -64
- createsprite gUnknown_08593970, 0x3, 20, 20
+ createsprite gUnknown_08593970, 3, 20, 20
end
Status_Sleep:
- loadspritegfx 0x27F4
+ loadspritegfx ANIM_TAG_LETTER_Z
playsewithpan SE_W173, -64
- createsprite gUnknown_08592C88, 0x2, 4, -10, 16, 0, 0
- delay 0x1E
- createsprite gUnknown_08592C88, 0x2, 4, -10, 16, 0, 0
+ createsprite gUnknown_08592C88, 2, 4, -10, 16, 0, 0
+ delay 30
+ createsprite gUnknown_08592C88, 2, 4, -10, 16, 0, 0
end
Status_Paralysis:
- loadspritegfx 0x271B
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 10, 1
- call AnimScript_82D7BEA
+ loadspritegfx ANIM_TAG_SPARK_2
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1
+ call ElectricityEffect
end
Status_Freeze:
playsewithpan SE_W196, 0
- loadspritegfx 0x271A
+ loadspritegfx ANIM_TAG_ICE_CUBE
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- waitplaysewithpan SE_W258, +63, 0x11
- createvisualtask sub_80A9EF4, 0x2
+ waitplaysewithpan SE_W258, +63, 17
+ createvisualtask sub_80A9EF4, 2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Status_Curse:
- loadspritegfx 0x27D8
+ loadspritegfx ANIM_TAG_200
monbg ANIM_DEF_PARTNER
playsewithpan SE_W171, +63
- createsprite gUnknown_08596DE8, 0x82
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 14, 1
+ createsprite gBattleAnimSpriteTemplate_8596DE8, 130
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 14, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
Status_Nightmare:
- loadspritegfx 0x27ED
+ loadspritegfx ANIM_TAG_EVIL_ANGEL
monbg ANIM_DEF_PARTNER
playsewithpan SE_W171, +63
- createsprite gUnknown_08596E00, 0x82
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 14, 1
+ createsprite gBattleAnimSpriteTemplate_8596E00, 130
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 14, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
-Anim_CastformTransform:
- createvisualtask sub_815BB18, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D7ECA
+General_CastformChange:
+ createvisualtask sub_815BB18, 2
+ jumpreteq 1, AnimScript_82D7ECA
goto AnimScript_82D7EB2
-
AnimScript_82D7EB2:
monbg ANIM_ATTACKER
playsewithpan SE_W100, -64
- waitplaysewithpan SE_W107, -64, 0x30
- createvisualtask sub_815B7D0, 0x2, 1
+ waitplaysewithpan SE_W107, -64, 48
+ createvisualtask sub_815B7D0, 2, 1
waitforvisualfinish
clearmonbg ANIM_ATTACKER
end
-
AnimScript_82D7ECA:
- createvisualtask sub_815BB58, 0x2, 1
+ createvisualtask sub_815BB58, 2, 1
end
-Anim_StatChange:
- createvisualtask AnimTask_StatsChange, 0x5
+General_StatsChange:
+ createvisualtask AnimTask_StatsChange, 5
waitforvisualfinish
end
-Anim_SubsituteOff:
+General_SubstituteFade:
monbg ANIM_ATTACKER
- createvisualtask sub_8172D98, 0x5
- createvisualtask sub_8116620, 0xA, 2, 0, 0, 16, 0x7FFF
+ createvisualtask sub_8172D98, 5
+ createvisualtask sub_8116620, 10, 2, 0, 0, 16, RGB_WHITE
waitforvisualfinish
- delay 0x1
+ delay 1
clearmonbg ANIM_ATTACKER
- delay 0x2
- blendoff
- createvisualtask sub_8116620, 0xA, 2, 0, 0, 0, 0x7FFF
- createvisualtask sub_8172BF0, 0x2, 1
- end
-
-Anim_SubsituteOn:
- createvisualtask sub_815F20C, 0x2
- end
-
-Anim_Table_4:
- createvisualtask sub_817345C, 0x2, 0
- createvisualtask sub_81732B0, 0x2
- delay 0x0
- waitplaysewithpan SE_W026, -64, 0x16
- createsprite gUnknown_085E5338, 0x83, -18, 12, 0, 32
- delay 0x32
- loopsewithpan SE_W039, +63, 0x13, 0x2
- createvisualtask sub_80D5EB8, 0x5, 1, 8, 1536, 2, 1
- waitforvisualfinish
- createvisualtask sub_81732E4, 0x2
- end
-
-Anim_ItemKnockOff:
- loadspritegfx 0x27F0
- createsprite gUnknown_08592628, 0x82
- end
-
-Status_Wrap:
- createvisualtask sub_81734B4, 0x5
- jumpargeq 0x0, 0x1, AnimScript_82D7FE9
- jumpargeq 0x0, 0x2, AnimScript_82D800E
- jumpargeq 0x0, 0x3, AnimScript_82D8062
- jumpargeq 0x0, 0x4, AnimScript_82D80BF
- goto AnimScript_82D7FA1
-
-AnimScript_82D7FA1:
- loadspritegfx 0x27CA
- loopsewithpan SE_W010, +63, 0x6, 0x2
- createsprite gUnknown_08592494, 0x84, 0, 16, 0, 1
- delay 0x7
- createsprite gUnknown_08592494, 0x82, 0, 8, 1, 1
- delay 0x3
- createvisualtask sub_80D52D0, 0x2, 1, 2, 0, 8, 1
- delay 0x14
- setarg 0x7, 0xFFFF
+ delay 2
+ blendoff
+ createvisualtask sub_8116620, 10, 2, 0, 0, 0, RGB_WHITE
+ createvisualtask sub_8172BF0, 2, 1
+ end
+
+General_SubstituteAppear:
+ createvisualtask AnimTask_MonToSubstitute, 2
+ end
+
+General_PokeblockThrow:
+ createvisualtask sub_817345C, 2, 0
+ createvisualtask sub_81732B0, 2
+ delay 0
+ waitplaysewithpan SE_W026, -64, 22
+ createsprite gBattleAnimSpriteTemplate_85E5338, 131, -18, 12, 0, 32
+ delay 50
+ loopsewithpan SE_W039, +63, 19, 2
+ createvisualtask AnimTask_SwayMon, 5, 1, 8, 1536, 2, ANIM_TARGET
+ waitforvisualfinish
+ createvisualtask sub_81732E4, 2
+ end
+
+General_ItemKnockoff:
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ createsprite gBattleAnimSpriteTemplate_8592628, 130
+ end
+
+General_TurnTrap:
+ createvisualtask AnimTask_GetTrappedMoveAnimId, 5
+ jumpargeq 0, TRAP_ANIM_FIRE_SPIN, Status_FireSpin
+ jumpargeq 0, TRAP_ANIM_WHIRLPOOL, Status_Whrilpool
+ jumpargeq 0, TRAP_ANIM_CLAMP, Status_Clamp
+ jumpargeq 0, TRAP_ANIM_SAND_TOMB, Status_SandTomb
+ goto Status_BindWrap
+Status_BindWrap:
+ loadspritegfx ANIM_TAG_186
+ loopsewithpan SE_W010, +63, 6, 2
+ createsprite gUnknown_08592494, 132, 0, 16, 0, 1
+ delay 7
+ createsprite gUnknown_08592494, 130, 0, 8, 1, 1
+ delay 3
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1
+ delay 20
+ setarg 7, -1
playsewithpan SE_W020, +63
waitforvisualfinish
end
-
-AnimScript_82D7FE9:
- loadspritegfx 0x272D
+Status_FireSpin:
+ loadspritegfx ANIM_TAG_SMALL_EMBER
playsewithpan SE_W221B, +63
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 30, 1
- call AnimScript_82CACBF
- call AnimScript_82CACBF
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 30, 1
+ call FireSpinEffect
+ call FireSpinEffect
waitforvisualfinish
stopsound
end
-
-AnimScript_82D800E:
- loadspritegfx 0x27A5
+Status_Whrilpool:
+ loadspritegfx ANIM_TAG_149
monbg ANIM_DEF_PARTNER
monbgprio_28 ANIM_TARGET
- setalpha 0x80C
- delay 0x0
- createsprite gUnknown_08597274, 0x0, 4, 2, 0, 7, RGB(0, 13, 23)
+ setalpha 12, 8
+ delay 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 0, 7, RGB(0, 13, 23)
playsewithpan SE_W250, +63
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 30, 1
- call AnimScript_82D1F5B
- call AnimScript_82D1F5B
- delay 0xC
- createsprite gUnknown_08597274, 0x0, 4, 2, 7, 0, RGB(0, 13, 23)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 30, 1
+ call WhirlpoolEffect
+ call WhirlpoolEffect
+ delay 12
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 7, 0, RGB(0, 13, 23)
waitforvisualfinish
stopsound
clearmonbg ANIM_DEF_PARTNER
end
-
-AnimScript_82D8062:
- loadspritegfx 0x27A1
- loadspritegfx 0x2797
+Status_Clamp:
+ loadspritegfx ANIM_TAG_145
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W011, +63
- createsprite gUnknown_08597098, 0x2, -32, 0, 2, 819, 0, 10
- createsprite gUnknown_08597098, 0x2, 32, 0, 6, -819, 0, 10
- delay 0xA
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x5, 1, 3, 0, 5, 1
+ createsprite gUnknown_08597098, 2, -32, 0, 2, 819, 0, 10
+ createsprite gUnknown_08597098, 2, 32, 0, 6, -819, 0, 10
+ delay 10
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
waitforvisualfinish
end
-
-AnimScript_82D80BF:
- loadspritegfx 0x275A
- createsprite gUnknown_08597274, 0x0, 4, 2, 0, 7, RGB(19, 17, 0)
- createvisualtask sub_80D51AC, 0x5, 1, 0, 2, 30, 1
+Status_SandTomb:
+ loadspritegfx ANIM_TAG_074
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 0, 7, RGB(19, 17, 0)
+ createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 30, 1
playsewithpan SE_W328, +63
- call AnimScript_82D51B7
- call AnimScript_82D51B7
- delay 0x16
- createsprite gUnknown_08597274, 0x0, 4, 2, 7, 0, RGB(19, 17, 0)
+ call SandTombEffect
+ call SandTombEffect
+ delay 22
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 4, 2, 7, 0, RGB(19, 17, 0)
waitforvisualfinish
stopsound
end
-Anim_ItemEffect:
- loadspritegfx 0x27DB
- loadspritegfx 0x2741
- delay 0x0
+General_ItemEffect:
+ loadspritegfx ANIM_TAG_203
+ loadspritegfx ANIM_TAG_SPARKLE
+ delay 0
playsewithpan SE_W036, -64
- createvisualtask sub_80D622C, 0x2, 16, 128, 0, 2
+ createvisualtask sub_80D622C, 2, 16, 128, 0, 2
waitforvisualfinish
playsewithpan SE_W036, -64
- createvisualtask sub_80D622C, 0x2, 16, 128, 0, 2
+ createvisualtask sub_80D622C, 2, 16, 128, 0, 2
waitforvisualfinish
playsewithpan SE_W036, -64
- createvisualtask sub_80D622C, 0x2, 16, 128, 0, 2
+ createvisualtask sub_80D622C, 2, 16, 128, 0, 2
waitforvisualfinish
playsewithpan SE_W234, -64
- call AnimScript_82D79B4
+ call GrantingStarsEffect
waitforvisualfinish
playsewithpan SE_REAPOKE, -64
- createsprite gUnknown_08597274, 0x2, 2, 3, 7, 0, RGB(17, 31, 25)
- createsprite gUnknown_0859381C, 0x3, 0, 0, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 2, 3, 7, 0, RGB(17, 31, 25)
+ createsprite gUnknown_0859381C, 3, 0, 0, 0, 0
waitforvisualfinish
end
-Anim_SmokeBallEscape:
- loadspritegfx 0x2802
+General_SmokeballEscape:
+ loadspritegfx ANIM_TAG_242
monbg ANIM_ATTACKER
- setalpha 0x40C
- delay 0x0
+ setalpha 12, 4
+ delay 0
playsewithpan SE_BOWA2, +63
- createsprite gUnknown_085CE734, 0x80, 0, 32, 28, 30
- delay 0x4
+ createsprite gUnknown_085CE734, 128, 0, 32, 28, 30
+ delay 4
playsewithpan SE_BOWA2, +63
- createsprite gUnknown_085CE734, 0x7F, 2, 12, 20, 30
- delay 0xC
+ createsprite gUnknown_085CE734, 127, 2, 12, 20, 30
+ delay 12
playsewithpan SE_BOWA2, +63
createsprite gUnknown_085CE734, 0x7E, 2, -28, 4, 30
- delay 0xC
+ delay 12
playsewithpan SE_BOWA2, +63
createsprite gUnknown_085CE734, 0x7C, 2, 14, -20, 30
- delay 0x4
+ delay 4
playsewithpan SE_BOWA2, +63
- createvisualtask sub_81136E8, 0x2, 2
+ createvisualtask sub_81136E8, 2, 2
createsprite gUnknown_085CE734, 0x7B, 3, 4, 4, 30
- delay 0xE
+ delay 14
playsewithpan SE_BOWA2, +63
createsprite gUnknown_085CE734, 0x7A, 3, -14, 18, 46
- delay 0x0
+ delay 0
createsprite gUnknown_085CE734, 0x79, 3, 14, -14, 46
- delay 0x0
- createsprite gUnknown_085CE734, 0x78, 3, -12, -10, 46
- delay 0x0
+ delay 0
+ createsprite gUnknown_085CE734, 120, 3, -12, -10, 46
+ delay 0
createsprite gUnknown_085CE734, 0x77, 3, 14, 14, 46
- delay 0x0
+ delay 0
createsprite gUnknown_085CE734, 0x76, 3, 0, 0, 46
waitforvisualfinish
clearmonbg ANIM_ATTACKER
invisible ANIM_ATTACKER
- delay 0x0
+ delay 0
blendoff
end
-Anim_HangedOn:
- createsprite gUnknown_08597274, 0x0, 2, 7, 0, 9, RGB_RED
+General_HangedOn:
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 2, 7, 0, 9, RGB_RED
playsewithpan SE_W082, -64
- createvisualtask sub_815DB90, 0x5, 30, 128, 0, 1, 2, 0, 1
+ createvisualtask sub_815DB90, 5, 30, 128, 0, 1, 2, 0, 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x0, 2, 4, 9, 0, RGB_RED
+ createsprite gSimplePaletteBlendSpriteTemplate, 0, 2, 4, 9, 0, RGB_RED
waitforvisualfinish
- delay 0x6
- createsprite gUnknown_0857FE58, 0x0, 0, 0, 15
+ delay 6
+ createsprite gSlideMonToOriginalPosSpriteTemplate, 0, 0, 0, 15
end
-Anim_Rain:
- loadspritegfx 0x2783
+General_Rain:
+ loadspritegfx ANIM_TAG_115
playsewithpan SE_W240, -64
- createvisualtask sub_8116620, 0xA, 1921, 2, 0, 4, 0
+ createvisualtask sub_8116620, 10, 0x781, 2, 0, 4, RGB_BLACK
waitforvisualfinish
- createvisualtask sub_8107188, 0x2, 0, 3, 60
- createvisualtask sub_8107188, 0x2, 0, 3, 60
- delay 0x32
+ createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60
+ createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 60
+ delay 50
waitforvisualfinish
- createvisualtask sub_8116620, 0xA, 1921, 2, 4, 0, 0
+ createvisualtask sub_8116620, 10, 0x781, 2, 4, 0, RGB_BLACK
waitforvisualfinish
end
-Anim_Sun:
+General_Sun:
goto Move_SUNNY_DAY
-Anim_Sandstorm:
+General_Sandstorm:
goto Move_SANDSTORM
-Anim_Hail:
+General_Hail:
goto Move_HAIL
-Status_LeechSeed:
- createvisualtask sub_817351C, 0x5
- delay 0x0
+General_LeechSeedDrain:
+ createvisualtask sub_817351C, 5
+ delay 0
goto Move_ABSORB
-Anim_Hit:
- loadspritegfx 0x2797
+General_MonHit:
+ loadspritegfx ANIM_TAG_135
monbg ANIM_TARGET
- setalpha 0x80C
+ setalpha 12, 8
playsewithpan SE_W003, +63
- createsprite gUnknown_08597358, 0x2, 0, 0, 1, 2
- createvisualtask sub_80D51AC, 0x2, 1, 3, 0, 6, 1
+ createsprite gBasicHitSplatSpriteTemplate, 2, 0, 0, 1, 2
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1
waitforvisualfinish
clearmonbg ANIM_TARGET
blendoff
end
-Anim_ItemSteal:
- loadspritegfx 0x27F0
- createvisualtask sub_8117F30, 0x2
- createvisualtask sub_8172ED0, 0x2
- delay 0x1
- createsprite gUnknown_08592670, 0x2, 0, -5, 10, 2, -1
+General_ItemSteal:
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ createvisualtask sub_8117F30, 2
+ createvisualtask sub_8172ED0, 2
+ delay 1
+ createsprite gUnknown_08592670, 2, 0, -5, 10, 2, -1
end
-Anim_SnatchMove:
- loadspritegfx 0x27F0
- createvisualtask sub_8117E94, 0x2
+General_SnatchMove:
+ loadspritegfx ANIM_TAG_ITEM_BAG
+ createvisualtask sub_8117E94, 2
call AnimScript_82D85A3
- delay 0x1
- createvisualtask sub_80D5EB8, 0x2, 0, 5, 5120, 4, 1
+ delay 1
+ createvisualtask AnimTask_SwayMon, 2, 0, 5, 5120, 4, ANIM_TARGET
waitforvisualfinish
- createvisualtask sub_8117EC4, 0x2
- jumpargeq 0x7, 0x0, AnimScript_82D839F
- goto AnimScript_82D83AF
-
-AnimScript_82D8398:
+ createvisualtask AnimTask_IsTargetSameSide, 2
+ jumpretfalse SnatchOpposingMonMove
+ goto SnatchPartnerMonMove
+SnatchMoveContinue:
waitforvisualfinish
call AnimScript_82D85C3
end
-
-AnimScript_82D839F:
+SnatchOpposingMonMove:
playsewithpan SE_W104, -64
- createvisualtask sub_815F8F4, 0x2
- goto AnimScript_82D8398
-
-AnimScript_82D83AF:
+ createvisualtask sub_815F8F4, 2
+ goto SnatchMoveContinue
+SnatchPartnerMonMove:
playsewithpan SE_W104, -64
- createvisualtask sub_815FFC4, 0x2
- goto AnimScript_82D8398
+ createvisualtask sub_815FFC4, 2
+ goto SnatchMoveContinue
-Anim_FutureSightHit:
- createvisualtask sub_8117F10, 0x2
+General_FutureSightHit:
+ createvisualtask sub_8117F10, 2
monbg ANIM_DEF_PARTNER
playsewithpan SE_W060, -64
- call AnimScript_82D7CD1
- setalpha 0x808
+ call SetPsychicBackground
+ setalpha 8, 8
playsewithpan SE_W048, +63
- waitplaysewithpan SE_W048, +63, 0x8
- createvisualtask sub_80D51AC, 0x2, 1, 4, 0, 15, 1
- createvisualtask sub_80D6064, 0x5, -5, -5, 15, 1, 1
+ waitplaysewithpan SE_W048, +63, 8
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 15, 1
+ createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 15, ANIM_TARGET, 1
waitforvisualfinish
- createvisualtask sub_80D51AC, 0x2, 1, 4, 0, 24, 1
+ createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 24, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
waitforvisualfinish
- delay 0x1
- call AnimScript_82D7CDD
+ delay 1
+ call UnsetPsychicBackground
end
-Anim_DoomDesireHit:
- createvisualtask sub_8117F10, 0x2
- loadspritegfx 0x27D6
- createsprite gUnknown_08597274, 0x2, 1, 3, 0, 16, RGB_WHITE
+General_DoomDesireHit:
+ createvisualtask sub_8117F10, 2
+ loadspritegfx ANIM_TAG_EXPLOSION
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 0, 16, RGB_WHITE
waitforvisualfinish
- delay 0xA
- createvisualtask sub_815C0A4, 0x5
- delay 0x9
+ delay 10
+ createvisualtask sub_815C0A4, 5
+ delay 9
playsewithpan SE_W109, -64
- delay 0x9
+ delay 9
playsewithpan SE_W109, 0
- delay 0x9
+ delay 9
playsewithpan SE_W109, +63
- delay 0x19
- createvisualtask sub_80D5484, 0x2, 1, 10, 0, 20, 1
+ delay 25
+ createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 20, 1
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, 0, 0, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 0, 0, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, 24, -24, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 24, -24, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, -16, 16, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -16, 16, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, -24, -12, 1, 1
- delay 0x6
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, -24, -12, 1, 1
+ delay 6
playsewithpan SE_W120, +63
- createsprite gUnknown_0859371C, 0x3, 16, 16, 1, 1
+ createsprite gBattleAnimSpriteTemplate_859371C, 3, 16, 16, 1, 1
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 3, 16, 0, RGB_WHITE
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 16, 0, RGB_WHITE
waitforvisualfinish
end
-Anim_Table_x14:
- loadspritegfx 0x27C8
+General_FocusPunchSetUp:
+ loadspritegfx ANIM_TAG_184
playsewithpan SE_W082, -64
- call AnimScript_82CD6C7
- delay 0x8
- createvisualtask sub_8115A04, 0x2, 2, 2, 2, 0, 11, 31
- createvisualtask sub_80D52D0, 0x2, 0, 1, 0, 32, 1
- call AnimScript_82CD6C7
- delay 0x8
- call AnimScript_82CD6C7
+ call EndureEffect
+ delay 8
+ createvisualtask sub_8115A04, 2, 2, 2, 2, 0, 11, RGB_RED
+ createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1
+ call EndureEffect
+ delay 8
+ call EndureEffect
waitforvisualfinish
end
-Status_Ingrain:
- loadspritegfx 0x27A3
- loadspritegfx 0x272F
+General_IngrainHeal:
+ loadspritegfx ANIM_TAG_147
+ loadspritegfx ANIM_TAG_BLUE_STAR
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- createsprite gUnknown_08597274, 0x2, 1, 1, 0, 4, RGB(13, 31, 12)
+ setalpha 12, 8
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 0, 4, RGB(13, 31, 12)
waitforvisualfinish
- delay 0x3
- call AnimScript_82D1009
+ delay 3
+ call AbsorbEffect
waitforvisualfinish
- delay 0xF
- call AnimScript_82D79DF
+ delay 15
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 1, 4, 0, RGB(13, 31, 12)
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 1, 4, 0, RGB(13, 31, 12)
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
-Anim_WishHeal:
- loadspritegfx 0x2741
- createsprite gUnknown_08597274, 0x2, 1, 3, 0, 10, 0
+General_WishHeal:
+ loadspritegfx ANIM_TAG_SPARKLE
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 0, 10, RGB_BLACK
waitforvisualfinish
playsewithpan SE_W025, -64
- call AnimScript_82D79B4
+ call GrantingStarsEffect
waitforvisualfinish
- unloadspritegfx 0x2741
- loadspritegfx 0x272F
- call AnimScript_82D79DF
+ unloadspritegfx ANIM_TAG_SPARKLE
+ loadspritegfx ANIM_TAG_BLUE_STAR
+ call HealingEffect
waitforvisualfinish
- createsprite gUnknown_08597274, 0x2, 1, 3, 10, 0, 0
+ createsprite gSimplePaletteBlendSpriteTemplate, 2, 1, 3, 10, 0, RGB_BLACK
end
AnimScript_82D85A3:
- createvisualtask sub_8172E9C, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D85B4
-
+ createvisualtask sub_8172E9C, 2
+ jumpreteq 1, AnimScript_82D85B4
AnimScript_82D85B2:
waitforvisualfinish
return
-
AnimScript_82D85B4:
- createvisualtask sub_8172BF0, 0x2, 1
+ createvisualtask sub_8172BF0, 2, 1
waitforvisualfinish
goto AnimScript_82D85B2
AnimScript_82D85C3:
- createvisualtask sub_8172E9C, 0x2
- jumpargeq 0x7, 0x1, AnimScript_82D85D4
-
+ createvisualtask sub_8172E9C, 2
+ jumpreteq 1, AnimScript_82D85D4
AnimScript_82D85D2:
waitforvisualfinish
return
-
AnimScript_82D85D4:
- createvisualtask sub_8172BF0, 0x2, 0
+ createvisualtask sub_8172BF0, 2, 0
waitforvisualfinish
goto AnimScript_82D85D2
-Anim_LevelUp:
+Special_LevelUp:
playsewithpan SE_EXPMAX, 0
- createvisualtask sub_8170920, 0x2
- delay 0x0
- createvisualtask sub_8170A0C, 0x5, 0, 0
+ createvisualtask sub_8170920, 2
+ delay 0
+ createvisualtask sub_8170A0C, 5, 0, 0
waitforvisualfinish
- createvisualtask sub_81709EC, 0x2
+ createvisualtask sub_81709EC, 2
end
-Anim_SwitchOutPlayer:
- createvisualtask sub_8170BB0, 0x2
- delay 0xA
- createvisualtask sub_8170B04, 0x2
+Special_SwitchOutPlayerMon:
+ createvisualtask sub_8170BB0, 2
+ delay 10
+ createvisualtask sub_8170B04, 2
end
-Anim_SwitchOutOpponent:
- createvisualtask sub_8170BB0, 0x2
- delay 0xA
- createvisualtask sub_8170B04, 0x2
+Special_SwitchOutOpponentMon:
+ createvisualtask sub_8170BB0, 2
+ delay 10
+ createvisualtask sub_8170B04, 2
end
-Anim_BallThrow:
- createvisualtask sub_8170CFC, 0x2
- delay 0x0
+Special_BallThrow:
+ createvisualtask sub_8170CFC, 2
+ delay 0
playsewithpan SE_NAGERU, 0
- createvisualtask sub_8170E04, 0x2
- createvisualtask sub_8170D4C, 0x2
- jumpargeq 0x7, 0xFFFF, AnimScript_82D8652
-
-AnimScript_82D8649:
+ createvisualtask sub_8170E04, 2
+ createvisualtask AnimTask_IsBallBlockedByTrainer, 2
+ jumpreteq -1, BallThrowTrainerBlock
+BallThrowEnd:
waitforvisualfinish
- createvisualtask sub_8170D24, 0x2
+ createvisualtask sub_8170D24, 2
end
-
-AnimScript_82D8652:
- loadspritegfx 0x2797
- delay 0x19
+BallThrowTrainerBlock:
+ loadspritegfx ANIM_TAG_135
+ delay 25
monbg ANIM_DEF_PARTNER
- setalpha 0x80C
- delay 0x0
+ setalpha 12, 8
+ delay 0
playsewithpan SE_W003, +63
- createsprite gUnknown_08597358, 0x82, -4, -20, 1, 2
+ createsprite gBasicHitSplatSpriteTemplate, 130, -4, -20, 1, 2
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
- goto AnimScript_82D8649
+ goto BallThrowEnd
-Anim_SafariBallThrow:
- createvisualtask sub_8170CFC, 0x2
- delay 0x0
- createvisualtask sub_8170F2C, 0x2
+Special_SafariBallThrow:
+ createvisualtask sub_8170CFC, 2
+ delay 0
+ createvisualtask sub_8170F2C, 2
waitforvisualfinish
- createvisualtask sub_8170D24, 0x2
+ createvisualtask sub_8170D24, 2
end
-Anim_SubstituteToMon:
- createvisualtask sub_8172BF0, 0x2, 1
+Special_SubstituteToMon:
+ createvisualtask sub_8172BF0, 2, 1
end
-Anim_MonToSubstitute:
- createvisualtask sub_8172BF0, 0x2, 0
+Special_MonToSubstitute:
+ createvisualtask sub_8172BF0, 2, 0
end
diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s
index a01066be1..d8f681686 100644
--- a/data/battle_scripts_1.s
+++ b/data/battle_scripts_1.s
@@ -6,6 +6,7 @@
#include "constants/abilities.h"
#include "constants/moves.h"
#include "constants/songs.h"
+#include "constants/game_stat.h"
.include "asm/macros.inc"
.include "asm/macros/battle_script.inc"
.include "constants/constants.inc"
@@ -922,7 +923,7 @@ BattleScript_EffectFocusEnergy::
BattleScript_EffectRecoil::
setmoveeffect MOVE_EFFECT_RECOIL_25 | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN
jumpifnotmove MOVE_STRUGGLE, BattleScript_EffectHit
- incrementgamestat 0x1B
+ incrementgamestat GAME_STAT_USED_STRUGGLE
goto BattleScript_EffectHit
BattleScript_EffectConfuse::
@@ -1200,7 +1201,7 @@ BattleScript_EffectSplash::
ppreduce
attackanimation
waitanimation
- incrementgamestat 0x1A
+ incrementgamestat GAME_STAT_USED_SPLASH
printstring STRINGID_BUTNOTHINGHAPPENED
waitmessage 0x40
goto BattleScript_MoveEnd
@@ -3741,7 +3742,7 @@ BattleScript_SAtkDown2End::
BattleScript_FocusPunchSetUp::
printstring STRINGID_EMPTYSTRING3
waitmessage 0x1
- playanimation BS_ATTACKER, B_ANIM_x14, NULL
+ playanimation BS_ATTACKER, B_ANIM_FOCUS_PUNCH_SETUP, NULL
printstring STRINGID_PKMNTIGHTENINGFOCUS
waitmessage 0x40
end2
diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s
index 485847ed1..b74f557a7 100644
--- a/data/battle_scripts_2.s
+++ b/data/battle_scripts_2.s
@@ -190,7 +190,7 @@ BattleScript_ActionGetNear:
BattleScript_ActionThrowPokeblock:
printstring STRINGID_THREWPOKEBLOCKATPKMN
waitmessage 0x40
- playanimation BS_ATTACKER, B_ANIM_x4, NULL
+ playanimation BS_ATTACKER, B_ANIM_POKEBLOCK_THROW, NULL
printfromtable gSafariPokeblockResultStringIds
waitmessage 0x40
end2
diff --git a/data/rom_8525F58.s b/data/rom_8525F58.s
deleted file mode 100644
index d95af7e20..000000000
--- a/data/rom_8525F58.s
+++ /dev/null
@@ -1,34 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gUnknown_08525F58:: @ 8525F58
- .byte 0x48, 0x50, 0x00, 0x00, 0xb0, 0x28, 0x00, 0x00
- .byte 0x30, 0x28, 0x00, 0x00, 0x70, 0x50, 0x00, 0x00
- .byte 0x20, 0x50, 0x00, 0x00, 0xc8, 0x28, 0x00, 0x00
- .byte 0x5a, 0x58, 0x00, 0x00, 0x98, 0x20, 0x00, 0x00
-
- .align 2
-gCastformFrontSpriteCoords:: @ 8525F78
- .byte 0x44, 0x11, 0x00, 0x00, 0x66, 0x09, 0x00, 0x00
- .byte 0x46, 0x09, 0x00, 0x00, 0x86, 0x08, 0x00, 0x00
-
- .align 2
-gUnknown_08525F88:: @ 8525F88
- .byte 0x0d, 0x0e, 0x0d, 0x0d
-
- .align 2
-gUnknown_08525F8C:: @ 8525F8C
- .byte 0x00, 0x00, 0x00, 0x00
-
- .align 2
-gUnknown_08525F90:: @ 8525F90
- spr_template 0xd755, 0xd755, gUnknown_0852497C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- spr_template 0xd756, 0xd756, gUnknown_0852497C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gUnknown_08525FC0:: @ 8525FC0
- obj_tiles gMiscBlank_Gfx, 0x0800, 0xd755
- obj_tiles gMiscBlank_Gfx, 0x0800, 0xd756
diff --git a/include/battle.h b/include/battle.h
index ae1eccf57..3e638c6ef 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -38,17 +38,6 @@
#define MAX_TRAINER_ITEMS 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
#define MULTIUSE_STATE 0x0
#define CURSOR_POSITION 0x1
@@ -609,7 +598,7 @@ struct BattleScripting
// rom_80A5C6C
u8 GetBattlerSide(u8 battler);
u8 GetBattlerPosition(u8 battler);
-u8 GetBattlerAtPosition(u8 battler);
+u8 GetBattlerAtPosition(u8 position);
struct BattleSpriteInfo
{
diff --git a/include/battle_anim.h b/include/battle_anim.h
index f690cf10c..200b9fdb1 100644
--- a/include/battle_anim.h
+++ b/include/battle_anim.h
@@ -14,11 +14,11 @@ enum
struct UnknownAnimStruct2
{
- void *unk0;
+ u8 *bgTiles;
u16 *unk4;
u8 unk8;
- u8 unk9;
- u16 unkA;
+ u8 bgId;
+ u16 tilesOffset;
u16 unkC;
};
@@ -39,7 +39,7 @@ extern bool8 gAnimScriptActive;
extern u8 gAnimVisualTaskCount;
extern u8 gAnimSoundTaskCount;
extern struct DisableStruct *gAnimDisableStructPtr;
-extern u32 gAnimMoveDmg;
+extern s32 gAnimMoveDmg;
extern u16 gAnimMovePower;
extern u8 gAnimFriendship;
extern u16 gWeatherMoveAnim;
@@ -63,36 +63,48 @@ s8 BattleAnimAdjustPanning(s8 pan);
s8 BattleAnimAdjustPanning2(s8 pan);
s16 KeepPanInRange(s16 a);
s16 CalculatePanIncrement(s16 sourcePan, s16 targetPan, s16 incrementPan);
+void sub_80A4720(u16 a, u16 *b, u32 c, u8 d);
// battle_anim_80FE840.s
void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value);
-void sub_8118FBC(u8 arg0, u8 arg1, u8 arg2, u8 bankIdentity, u8 arg4, void *arg5, u16 *arg6, u16 arg7);
+void sub_8118FBC(u8 arg0, u8 arg1, u8 arg2, u8 battlerPosition, u8 arg4, void *arg5, u16 *arg6, u16 arg7);
void HandleIntroSlide(u8 terrainId);
+u32 GetAnimBgAttribute(u8 bgId, u8 attributeId);
// battle_anim_80A5C6C.s
void sub_80A6EEC(struct Sprite *sprite);
void sub_80A68D4(struct Sprite *sprite);
-void sub_80A6F3C(struct Sprite *sprite);
+bool8 TranslateAnimLinear(struct Sprite *sprite);
void sub_80A8278(void);
void sub_80A6B30(struct UnknownAnimStruct2*);
void sub_80A6B90(struct UnknownAnimStruct2*, u32 arg1);
u8 sub_80A82E4(u8 battlerId);
-bool8 AnimateBallThrow(struct Sprite *sprite);
+bool8 TranslateAnimArc(struct Sprite *sprite);
+void sub_80A6630(struct Sprite *sprite);
+void sub_80A6680(struct Sprite *sprite);
+void sub_80A7344(u8 spriteId);
+void obj_id_set_rotscale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation);
+void sub_80A6E14(struct Sprite *sprite);
+void sub_80A7270(u8 spriteId, u8 objMode);
+void sub_80A73A0(u8 spriteId);
enum
{
- BANK_X_POS,
- BANK_Y_POS,
+ BATTLER_COORD_X,
+ BATTLER_COORD_Y,
+ BATTLER_COORD_X_2,
+ BATTLER_COORD_3,
+ BATTLER_COORD_4,
};
u8 GetBattlerSpriteCoord(u8 battlerId, u8 attributeId);
bool8 IsBattlerSpritePresent(u8 battlerId);
-void sub_80A6C68(u8 arg0);
+void sub_80A6C68(u32 arg0);
u8 GetAnimBattlerSpriteId(u8 wantedBattler);
bool8 IsDoubleBattle(void);
u8 sub_80A6D94(void);
-u8 sub_80A8364(u8);
+u8 sub_80A8364(u8 battlerId);
void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*spriteCallback)(struct Sprite*));
void oamt_add_pos2_onto_pos1(struct Sprite *sprite);
u8 GetBattlerSpriteDefault_Y(u8 battlerId);
@@ -100,6 +112,14 @@ u8 sub_80A82E4(u8 battlerId);
u8 GetSubstituteSpriteDefault_Y(u8 battlerId);
// battle_anim_80A9C70.s
+#define STAT_ANIM_PLUS1 15
+#define STAT_ANIM_PLUS2 39
+#define STAT_ANIM_MINUS1 22
+#define STAT_ANIM_MINUS2 46
+#define STAT_ANIM_MULTIPLE_PLUS1 55
+#define STAT_ANIM_MULTIPLE_PLUS2 56
+#define STAT_ANIM_MULTIPLE_MINUS1 57
+#define STAT_ANIM_MULTIPLE_MINUS2 58
void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId);
// battle_anim_8170478.s
@@ -107,6 +127,6 @@ u8 ItemIdToBallId(u16 itemId);
u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId);
u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 battlerId, u32 arg2, u8 ballId);
-u8 sub_80A600C(u8, u16, u8);
+u8 GetBattlerSpriteFinal_Y(u8, u16, u8);
#endif // GUARD_BATTLE_ANIM_H
diff --git a/include/constants/battle.h b/include/constants/battle.h
index 25544ba3d..acb0f6689 100644
--- a/include/constants/battle.h
+++ b/include/constants/battle.h
@@ -281,4 +281,16 @@
#define MOVE_EFFECT_AFFECTS_USER 0x40
#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
diff --git a/include/constants/battle_anim.h b/include/constants/battle_anim.h
index 270ac55e0..2b21aad9e 100644
--- a/include/constants/battle_anim.h
+++ b/include/constants/battle_anim.h
@@ -1,6 +1,312 @@
#ifndef 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
#define ANIM_ATTACKER 0
#define ANIM_TARGET 1
@@ -41,7 +347,7 @@
#define B_ANIM_STATS_CHANGE 0x1
#define B_ANIM_SUBSTITUTE_FADE 0x2
#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_TURN_TRAP 0x6
#define B_ANIM_ITEM_EFFECT 0x7
@@ -57,7 +363,7 @@
#define B_ANIM_SNATCH_MOVE 0x11
#define B_ANIM_FUTURE_SIGHT_HIT 0x12
#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_WISH_HEAL 0x16
@@ -82,4 +388,22 @@
#define B_ANIM_STATUS_NIGHTMARE 0x8
#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
diff --git a/include/contest.h b/include/contest.h
index 0a8fa4436..d62d33ab7 100644
--- a/include/contest.h
+++ b/include/contest.h
@@ -239,14 +239,13 @@ struct Shared18000
struct ContestStruct_field_18
{
- // unknown size
- u16 field_0;
- u16 field_2;
- u16 field_4;
- u16 field_6;
- u32 field_8;
- u32 field_C;
- u32 field_10;
+ u16 unk0;
+ u16 unk2;
+ u8 unk4_0:1;
+ u8 unk5;
+ u32 unk8;
+ u32 unkC;
+ u32 unk10;
};
struct Contest
@@ -411,6 +410,7 @@ extern struct ContestResources *gContestResources;
#define eContestAI (gContestResources->field_C)
#define shared19328 (*gContestResources->field_10)
#define shared19338 (*gContestResources->field_14)
+#define shared19348 (*gContestResources->field_18)
#define shared15800 (gHeap + 0x18000)
#define shared18000 (*(struct Shared18000 *)(gHeap + 0x1a000))
diff --git a/include/global.h b/include/global.h
index b35008550..9ae892b5c 100644
--- a/include/global.h
+++ b/include/global.h
@@ -86,6 +86,11 @@ extern u8 gStringVar4[];
#define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24))
#define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr)
+// Invalid Versions show as "----------" in Gen 4 and Gen 5's summary screen.
+// In Gens 6 and 7, invalid versions instead show "a distant land" in the summary screen.
+// In Gen 4 only, migrated Pokemon with Diamond, Pearl, or Platinum's ID show as "----------".
+// Gen 5 and up read Diamond, Pearl, or Platinum's ID as "Sinnoh".
+// In Gen 4 and up, migrated Pokemon with HeartGold or SoulSilver's ID show the otherwise unused "Johto" string.
enum
{
VERSION_SAPPHIRE = 1,
@@ -93,6 +98,12 @@ enum
VERSION_EMERALD = 3,
VERSION_FIRE_RED = 4,
VERSION_LEAF_GREEN = 5,
+ VERSION_HEART_GOLD = 7,
+ VERSION_SOUL_SILVER = 8,
+ VERSION_DIAMOND = 10,
+ VERSION_PEARL = 11,
+ VERSION_PLATINUM = 12,
+ VERSION_GAMECUBE = 15,
};
enum LanguageId
diff --git a/ld_script.txt b/ld_script.txt
index da119cd4a..b77c50547 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -111,10 +111,10 @@ SECTIONS {
src/palette.o(.text);
src/sound.o(.text);
src/battle_anim.o(.text);
- asm/battle_anim_80A5C6C.o(.text);
+ src/battle_anim_80A5C6C.o(.text);
src/task.o(.text);
src/reshow_battle_screen.o(.text);
- asm/battle_anim_80A9C70.o(.text);
+ src/battle_anim_80A9C70.o(.text);
src/title_screen.o(.text);
asm/field_screen.o(.text);
src/battle_setup.o(.text);
@@ -134,7 +134,7 @@ SECTIONS {
src/mail_data.o(.text);
src/map_name_popup.o(.text);
src/item_menu_icons.o(.text);
- asm/battle_anim_80D51AC.o(.text);
+ src/battle_anim_80D51AC.o(.text);
src/item.o(.text);
src/contest.o(.text);
asm/contest.o(.text);
@@ -420,9 +420,10 @@ SECTIONS {
data/fanfares.o(.rodata);
data/battle_anims.o(.rodata);
src/battle_anim.o(.rodata);
- data/rom_8525F58.o(.rodata);
+ src/battle_anim_80A5C6C.o(.rodata);
data/map_events.o(.rodata);
data/battle_anim_80A9C70.o(.rodata);
+ src/battle_anim_80A9C70.o(.rodata);
src/title_screen.o(.rodata);
data/field_screen.o(.rodata);
src/battle_setup.o(.rodata);
@@ -564,65 +565,65 @@ SECTIONS {
ALIGN(4)
{
sound/songs/midi/mus_dummy.o(.rodata);
- sound/songs/se_kaifuku.o(.rodata);
+ sound/songs/midi/se_kaifuku.o(.rodata);
sound/songs/se_pc_login.o(.rodata);
sound/songs/se_pc_off.o(.rodata);
sound/songs/se_pc_on.o(.rodata);
sound/songs/se_select.o(.rodata);
sound/songs/se_win_open.o(.rodata);
sound/songs/se_wall_hit.o(.rodata);
- sound/songs/se_door.o(.rodata);
- sound/songs/se_kaidan.o(.rodata);
- sound/songs/se_dansa.o(.rodata);
- sound/songs/se_jitensya.o(.rodata);
- sound/songs/se_kouka_l.o(.rodata);
- sound/songs/se_kouka_m.o(.rodata);
- sound/songs/se_kouka_h.o(.rodata);
- sound/songs/se_bowa2.o(.rodata);
+ sound/songs/midi/se_door.o(.rodata);
+ sound/songs/midi/se_kaidan.o(.rodata);
+ sound/songs/midi/se_dansa.o(.rodata);
+ sound/songs/midi/se_jitensya.o(.rodata);
+ sound/songs/midi/se_kouka_l.o(.rodata);
+ sound/songs/midi/se_kouka_m.o(.rodata);
+ sound/songs/midi/se_kouka_h.o(.rodata);
+ sound/songs/midi/se_bowa2.o(.rodata);
sound/songs/se_poke_dead.o(.rodata);
sound/songs/se_nigeru.o(.rodata);
- sound/songs/se_jido_doa.o(.rodata);
+ sound/songs/midi/se_jido_doa.o(.rodata);
sound/songs/se_naminori.o(.rodata);
- sound/songs/se_ban.o(.rodata);
+ sound/songs/midi/se_ban.o(.rodata);
sound/songs/se_pin.o(.rodata);
- sound/songs/se_boo.o(.rodata);
- sound/songs/se_bowa.o(.rodata);
- sound/songs/se_jyuni.o(.rodata);
- sound/songs/se_a.o(.rodata);
- sound/songs/se_i.o(.rodata);
+ sound/songs/midi/se_boo.o(.rodata);
+ sound/songs/midi/se_bowa.o(.rodata);
+ sound/songs/midi/se_jyuni.o(.rodata);
+ sound/songs/midi/se_a.o(.rodata);
+ sound/songs/midi/se_i.o(.rodata);
sound/songs/se_u.o(.rodata);
- sound/songs/se_e.o(.rodata);
+ sound/songs/midi/se_e.o(.rodata);
sound/songs/se_o.o(.rodata);
sound/songs/se_n.o(.rodata);
sound/songs/se_seikai.o(.rodata);
- sound/songs/se_hazure.o(.rodata);
- sound/songs/se_exp.o(.rodata);
- sound/songs/se_jite_pyoko.o(.rodata);
+ sound/songs/midi/se_hazure.o(.rodata);
+ sound/songs/midi/se_exp.o(.rodata);
+ sound/songs/midi/se_jite_pyoko.o(.rodata);
sound/songs/se_mu_pachi.o(.rodata);
sound/songs/se_tk_kasya.o(.rodata);
- sound/songs/se_fu_zaku.o(.rodata);
- sound/songs/se_fu_zaku2.o(.rodata);
- sound/songs/se_fu_zuzuzu.o(.rodata);
+ sound/songs/midi/se_fu_zaku.o(.rodata);
+ sound/songs/midi/se_fu_zaku2.o(.rodata);
+ sound/songs/midi/se_fu_zuzuzu.o(.rodata);
sound/songs/se_ru_gashin.o(.rodata);
sound/songs/se_ru_gasyan.o(.rodata);
sound/songs/se_ru_bari.o(.rodata);
sound/songs/se_ru_hyuu.o(.rodata);
- sound/songs/se_ki_gasyan.o(.rodata);
+ sound/songs/midi/se_ki_gasyan.o(.rodata);
sound/songs/se_tk_warpin.o(.rodata);
sound/songs/se_tk_warpout.o(.rodata);
sound/songs/se_tu_saa.o(.rodata);
- sound/songs/se_hi_turun.o(.rodata);
+ sound/songs/midi/se_hi_turun.o(.rodata);
sound/songs/se_track_move.o(.rodata);
sound/songs/se_track_stop.o(.rodata);
sound/songs/se_track_haiki.o(.rodata);
sound/songs/se_track_door.o(.rodata);
sound/songs/se_moter.o(.rodata);
- sound/songs/se_card.o(.rodata);
+ sound/songs/midi/se_card.o(.rodata);
sound/songs/se_save.o(.rodata);
- sound/songs/se_kon.o(.rodata);
- sound/songs/se_kon2.o(.rodata);
- sound/songs/se_kon3.o(.rodata);
- sound/songs/se_kon4.o(.rodata);
+ sound/songs/midi/se_kon.o(.rodata);
+ sound/songs/midi/se_kon2.o(.rodata);
+ sound/songs/midi/se_kon3.o(.rodata);
+ sound/songs/midi/se_kon4.o(.rodata);
sound/songs/se_suikomu.o(.rodata);
sound/songs/se_nageru.o(.rodata);
sound/songs/se_toy_c.o(.rodata);
@@ -634,16 +635,16 @@ SECTIONS {
sound/songs/se_toy_b.o(.rodata);
sound/songs/se_toy_c1.o(.rodata);
sound/songs/se_mizu.o(.rodata);
- sound/songs/se_hashi.o(.rodata);
- sound/songs/se_daugi.o(.rodata);
+ sound/songs/midi/se_hashi.o(.rodata);
+ sound/songs/midi/se_daugi.o(.rodata);
sound/songs/se_pinpon.o(.rodata);
- sound/songs/se_fuusen1.o(.rodata);
- sound/songs/se_fuusen2.o(.rodata);
- sound/songs/se_fuusen3.o(.rodata);
+ sound/songs/midi/se_fuusen1.o(.rodata);
+ sound/songs/midi/se_fuusen2.o(.rodata);
+ sound/songs/midi/se_fuusen3.o(.rodata);
sound/songs/se_toy_kabe.o(.rodata);
sound/songs/se_toy_dango.o(.rodata);
- sound/songs/se_doku.o(.rodata);
- sound/songs/se_esuka.o(.rodata);
+ sound/songs/midi/se_doku.o(.rodata);
+ sound/songs/midi/se_esuka.o(.rodata);
sound/songs/se_t_ame.o(.rodata);
sound/songs/se_t_ame_e.o(.rodata);
sound/songs/se_t_ooame.o(.rodata);
@@ -652,24 +653,24 @@ SECTIONS {
sound/songs/se_t_koame_e.o(.rodata);
sound/songs/se_t_kami.o(.rodata);
sound/songs/se_t_kami2.o(.rodata);
- sound/songs/se_elebeta.o(.rodata);
- sound/songs/se_hinsi.o(.rodata);
- sound/songs/se_expmax.o(.rodata);
+ sound/songs/midi/se_elebeta.o(.rodata);
+ sound/songs/midi/se_hinsi.o(.rodata);
+ sound/songs/midi/se_expmax.o(.rodata);
sound/songs/se_tamakoro.o(.rodata);
sound/songs/se_tamakoro_e.o(.rodata);
- sound/songs/se_basabasa.o(.rodata);
+ sound/songs/midi/se_basabasa.o(.rodata);
sound/songs/se_regi.o(.rodata);
- sound/songs/se_c_gaji.o(.rodata);
- sound/songs/se_c_maku_u.o(.rodata);
- sound/songs/se_c_maku_d.o(.rodata);
- sound/songs/se_c_pasi.o(.rodata);
- sound/songs/se_c_syu.o(.rodata);
- sound/songs/se_c_pikon.o(.rodata);
+ sound/songs/midi/se_c_gaji.o(.rodata);
+ sound/songs/midi/se_c_maku_u.o(.rodata);
+ sound/songs/midi/se_c_maku_d.o(.rodata);
+ sound/songs/midi/se_c_pasi.o(.rodata);
+ sound/songs/midi/se_c_syu.o(.rodata);
+ sound/songs/midi/se_c_pikon.o(.rodata);
sound/songs/se_reapoke.o(.rodata);
sound/songs/se_op_basyu.o(.rodata);
- sound/songs/se_bt_start.o(.rodata);
- sound/songs/se_dendou.o(.rodata);
- sound/songs/se_jihanki.o(.rodata);
+ sound/songs/midi/se_bt_start.o(.rodata);
+ sound/songs/midi/se_dendou.o(.rodata);
+ sound/songs/midi/se_jihanki.o(.rodata);
sound/songs/se_tama.o(.rodata);
sound/songs/se_z_scroll.o(.rodata);
sound/songs/se_z_page.o(.rodata);
@@ -680,7 +681,7 @@ SECTIONS {
sound/songs/se_tb_start.o(.rodata);
sound/songs/se_tb_kon.o(.rodata);
sound/songs/se_tb_kara.o(.rodata);
- sound/songs/se_bidoro.o(.rodata);
+ sound/songs/midi/se_bidoro.o(.rodata);
sound/songs/se_w085.o(.rodata);
sound/songs/se_w085b.o(.rodata);
sound/songs/se_w231.o(.rodata);
@@ -828,10 +829,10 @@ SECTIONS {
sound/songs/se_rg_nawamiss.o(.rodata);
sound/songs/se_toreeye.o(.rodata);
sound/songs/se_toreoff.o(.rodata);
- sound/songs/se_hantei1.o(.rodata);
- sound/songs/se_hantei2.o(.rodata);
- sound/songs/se_curtain.o(.rodata);
- sound/songs/se_curtain1.o(.rodata);
+ sound/songs/midi/se_hantei1.o(.rodata);
+ sound/songs/midi/se_hantei2.o(.rodata);
+ sound/songs/midi/se_curtain.o(.rodata);
+ sound/songs/midi/se_curtain1.o(.rodata);
sound/songs/se_ussoki.o(.rodata);
sound/songs/midi/mus_tetsuji.o(.rodata);
sound/songs/midi/mus_field13.o(.rodata);
diff --git a/songs.mk b/songs.mk
index fb0d6b504..dd65ffce7 100644
--- a/songs.mk
+++ b/songs.mk
@@ -786,5 +786,170 @@ $(MID_SUBDIR)/ph_trap_held.s: %.s: %.mid
$(MID_SUBDIR)/ph_trap_solo.s: %.s: %.mid
$(MID) $< $@ -E -G130 -P4
+$(MID_SUBDIR)/se_a.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
+
+$(MID_SUBDIR)/se_ban.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
+
+$(MID_SUBDIR)/se_basabasa.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P5
+
+$(MID_SUBDIR)/se_bidoro.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P5
+
+$(MID_SUBDIR)/se_boo.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
+
+$(MID_SUBDIR)/se_bowa.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V070 -P4
+
+$(MID_SUBDIR)/se_bowa2.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
+
+$(MID_SUBDIR)/se_bt_start.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
+
+$(MID_SUBDIR)/se_c_gaji.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
+
+$(MID_SUBDIR)/se_c_maku_d.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V070 -P5
+
+$(MID_SUBDIR)/se_c_maku_u.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V070 -P5
+
+$(MID_SUBDIR)/se_c_pasi.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P5
+
+$(MID_SUBDIR)/se_c_pikon.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
+
+$(MID_SUBDIR)/se_c_syu.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P5
+
+$(MID_SUBDIR)/se_card.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
+
+$(MID_SUBDIR)/se_curtain.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
+
+$(MID_SUBDIR)/se_curtain1.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
+
+$(MID_SUBDIR)/se_dansa.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P4
+
+$(MID_SUBDIR)/se_daugi.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P5
+
+$(MID_SUBDIR)/se_dendou.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P5
+
+$(MID_SUBDIR)/se_doku.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
+
+$(MID_SUBDIR)/se_door.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P5
+
+$(MID_SUBDIR)/se_e.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
+
+$(MID_SUBDIR)/se_elebeta.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_esuka.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_exp.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V080 -P5
+
+$(MID_SUBDIR)/se_expmax.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V094 -P5
+
+$(MID_SUBDIR)/se_fu_zaku.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P4
+
+$(MID_SUBDIR)/se_fu_zaku2.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
+
+$(MID_SUBDIR)/se_fu_zuzuzu.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -P4
+
+$(MID_SUBDIR)/se_fuusen1.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
+
+$(MID_SUBDIR)/se_fuusen2.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
+
+$(MID_SUBDIR)/se_fuusen3.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V105 -P4
+
+$(MID_SUBDIR)/se_hantei1.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
+
+$(MID_SUBDIR)/se_hantei2.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G129 -P5
+
+$(MID_SUBDIR)/se_hashi.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
+
+$(MID_SUBDIR)/se_hazure.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P4
+
+$(MID_SUBDIR)/se_hi_turun.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
+
+$(MID_SUBDIR)/se_hinsi.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P3
+
+$(MID_SUBDIR)/se_i.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V120 -P4
+
+$(MID_SUBDIR)/se_jido_doa.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V095 -P4
+
+$(MID_SUBDIR)/se_jihanki.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V110 -P4
+
+$(MID_SUBDIR)/se_jite_pyoko.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V090 -P4
+
+$(MID_SUBDIR)/se_jitensya.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V090 -P4
+
+$(MID_SUBDIR)/se_jyuni.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P4
+
+$(MID_SUBDIR)/se_kaidan.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V120 -P5
+
+$(MID_SUBDIR)/se_kaifuku.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V100 -P5
+
+$(MID_SUBDIR)/se_ki_gasyan.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_kon.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_kon2.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_kon3.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_kon4.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G128 -V100 -P4
+
+$(MID_SUBDIR)/se_kouka_h.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
+
+$(MID_SUBDIR)/se_kouka_l.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
+
+$(MID_SUBDIR)/se_kouka_m.s: %.s: %.mid
+ $(MID) $< $@ -E -R$(STD_REVERB) -G127 -V110 -P5
+
$(MID_SUBDIR)/se_z_search.s: %.s: %.mid
$(MID) $< $@ -E -R$(STD_REVERB) -G127 -P5
diff --git a/sound/song_table.inc b/sound/song_table.inc
index 624cabe53..5b5813ab2 100644
--- a/sound/song_table.inc
+++ b/sound/song_table.inc
@@ -25,7 +25,7 @@ gSongTable:: @ 86B49F0
song se_pin, 1, 1 @ Exclamation Bubble
song se_boo, 1, 1 @ Contest Jam
song se_bowa, 1, 1 @ Giving Poké Ball to Nurse, Poké Ball Wiggle
- song se_jyuni, 2, 2 @ Places in Contest Appearing
+ song se_jyuni, 2, 2 @ Contest - Rankings Revealed
song se_a, 1, 1 @ Bard A
song se_i, 1, 1 @ Bard I
song se_u, 1, 1 @ Bard U
@@ -40,7 +40,7 @@ gSongTable:: @ 86B49F0
song se_tk_kasya, 1, 1 @ Mossdeep Gym/Trick House Switch
song se_fu_zaku, 1, 1
song se_fu_zaku2, 1, 1
- song se_fu_zuzuzu, 1, 1 @ Lavaridge Gym Warp
+ song se_fu_zuzuzu, 1, 1 @ Lavaridge Gym - Warp
song se_ru_gashin, 1, 1 @ Sootopolis Gym - Stairs Appear
song se_ru_gasyan, 1, 1 @ Sootopolis Gym - Ice Breaking
song se_ru_bari, 1, 1 @ Sootopolis Gym - Walking on Ice
@@ -49,7 +49,7 @@ gSongTable:: @ 86B49F0
song se_tk_warpin, 1, 1 @ Warp In
song se_tk_warpout, 1, 1 @ Warp Out
song se_tu_saa, 1, 1 @ Repel
- song se_hi_turun, 1, 1 @ Moving Obstacle in Fortree Gym
+ song se_hi_turun, 1, 1 @ Fortree Gym - Obstacle
song se_track_move, 1, 1 @ Moving Truck
song se_track_stop, 1, 1 @ Moving Truck Stop
song se_track_haiki, 2, 2 @ Moving Truck Unload
@@ -72,15 +72,15 @@ gSongTable:: @ 86B49F0
song se_toy_b, 2, 2 @ Note B
song se_toy_c1, 2, 2 @ Note High C
song se_mizu, 2, 2 @ Puddle
- song se_hashi, 2, 2 @ Boardwalk
- song se_daugi, 1, 1 @ Slots Credits
+ song se_hashi, 2, 2 @ Fortree Walkways
+ song se_daugi, 1, 1 @ Slots - Credits
song se_pinpon, 1, 1 @ Ding-dong!
song se_fuusen1, 2, 2 @ Red Balloon
song se_fuusen2, 2, 2 @ Blue Balloon
song se_fuusen3, 2, 2 @ Yellow Balloon
song se_toy_kabe, 2, 2 @ Breakable Door
song se_toy_dango, 2, 2 @ Mud Ball
- song se_doku, 1, 1 @ Overworld Poison Damage
+ song se_doku, 1, 1 @ Overworld - Poison Damage
song se_esuka, 1, 1 @ Escalator
song se_t_ame, 3, 3 @ Rain
song se_t_ame_e, 3, 3 @ Rain Stop
@@ -95,14 +95,14 @@ gSongTable:: @ 86B49F0
song se_expmax, 1, 1 @ Exp. Max
song se_tamakoro, 2, 2 @ Roulette Ball
song se_tamakoro_e, 2, 2 @ Roulette Ball 2
- song se_basabasa, 1, 1
+ song se_basabasa, 1, 1 @ Wing Attack
song se_regi, 1, 1 @ Cash Register
- song se_c_gaji, 1, 1 @ Contest Hearts
- song se_c_maku_u, 1, 1 @ Contest Curtain rise
- song se_c_maku_d, 1, 1 @ Contest Curtain fall
- song se_c_pasi, 1, 1
- song se_c_syu, 1, 1
- song se_c_pikon, 1, 1 @ Pokémon Appears in Contest
+ song se_c_gaji, 1, 1 @ Contest - Hearts
+ song se_c_maku_u, 1, 1 @ Contest - Curtain Rises
+ song se_c_maku_d, 1, 1 @ Contest - Curtain Falls
+ song se_c_pasi, 1, 1 @ Contest - Inflict Status
+ song se_c_syu, 1, 1 @ Contest - Pokémon Switches Out
+ song se_c_pikon, 1, 1 @ Contest - Pokémon Switches In
song se_reapoke, 1, 1 @ Shiny Pokémon
song se_op_basyu, 1, 1 @ Opening Movie -> Title Screen whoosh
song se_bt_start, 1, 1 @ Battle Mugshot whoosh
@@ -266,10 +266,10 @@ gSongTable:: @ 86B49F0
song se_rg_nawamiss, 1, 1
song se_toreeye, 1, 1 @ Trainer's Eye Call
song se_toreoff, 1, 1 @ Trainer's Eye Hang Up
- song se_hantei1, 1, 1 @ Battle Arena Time's Up 1
- song se_hantei2, 1, 1 @ Battle Arena Time's Up 2
- song se_curtain, 1, 1 @ Battle Pike Curtain Open
- song se_curtain1, 1, 1 @ Battle Pike Curtain Close
+ song se_hantei1, 1, 1 @ Battle Arena - Judgment 1
+ song se_hantei2, 1, 1 @ Battle Arena - Judgment 2
+ song se_curtain, 1, 1 @ Battle Pike - Curtain Opens
+ song se_curtain1, 1, 1 @ Battle Pike - Curtain Closes
song se_ussoki, 1, 1 @ Sudowoodo
song dummy_song_header, 0, 0
song dummy_song_header, 0, 0
diff --git a/sound/songs/midi/se_a.mid b/sound/songs/midi/se_a.mid
new file mode 100644
index 000000000..e44a27926
--- /dev/null
+++ b/sound/songs/midi/se_a.mid
Binary files differ
diff --git a/sound/songs/midi/se_ban.mid b/sound/songs/midi/se_ban.mid
new file mode 100644
index 000000000..0722a1c36
--- /dev/null
+++ b/sound/songs/midi/se_ban.mid
Binary files differ
diff --git a/sound/songs/midi/se_basabasa.mid b/sound/songs/midi/se_basabasa.mid
new file mode 100644
index 000000000..7a965abf5
--- /dev/null
+++ b/sound/songs/midi/se_basabasa.mid
Binary files differ
diff --git a/sound/songs/midi/se_bidoro.mid b/sound/songs/midi/se_bidoro.mid
new file mode 100644
index 000000000..a0b639ba4
--- /dev/null
+++ b/sound/songs/midi/se_bidoro.mid
Binary files differ
diff --git a/sound/songs/midi/se_boo.mid b/sound/songs/midi/se_boo.mid
new file mode 100644
index 000000000..89eb130b9
--- /dev/null
+++ b/sound/songs/midi/se_boo.mid
Binary files differ
diff --git a/sound/songs/midi/se_bowa.mid b/sound/songs/midi/se_bowa.mid
new file mode 100644
index 000000000..684ea618c
--- /dev/null
+++ b/sound/songs/midi/se_bowa.mid
Binary files differ
diff --git a/sound/songs/midi/se_bowa2.mid b/sound/songs/midi/se_bowa2.mid
new file mode 100644
index 000000000..669bed700
--- /dev/null
+++ b/sound/songs/midi/se_bowa2.mid
Binary files differ
diff --git a/sound/songs/midi/se_bt_start.mid b/sound/songs/midi/se_bt_start.mid
new file mode 100644
index 000000000..8c13783e9
--- /dev/null
+++ b/sound/songs/midi/se_bt_start.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_gaji.mid b/sound/songs/midi/se_c_gaji.mid
new file mode 100644
index 000000000..94b6389b7
--- /dev/null
+++ b/sound/songs/midi/se_c_gaji.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_maku_d.mid b/sound/songs/midi/se_c_maku_d.mid
new file mode 100644
index 000000000..04e2bfb11
--- /dev/null
+++ b/sound/songs/midi/se_c_maku_d.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_maku_u.mid b/sound/songs/midi/se_c_maku_u.mid
new file mode 100644
index 000000000..109f92322
--- /dev/null
+++ b/sound/songs/midi/se_c_maku_u.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_pasi.mid b/sound/songs/midi/se_c_pasi.mid
new file mode 100644
index 000000000..eea9c5707
--- /dev/null
+++ b/sound/songs/midi/se_c_pasi.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_pikon.mid b/sound/songs/midi/se_c_pikon.mid
new file mode 100644
index 000000000..718a61443
--- /dev/null
+++ b/sound/songs/midi/se_c_pikon.mid
Binary files differ
diff --git a/sound/songs/midi/se_c_syu.mid b/sound/songs/midi/se_c_syu.mid
new file mode 100644
index 000000000..3766d5f51
--- /dev/null
+++ b/sound/songs/midi/se_c_syu.mid
Binary files differ
diff --git a/sound/songs/midi/se_card.mid b/sound/songs/midi/se_card.mid
new file mode 100644
index 000000000..a6832a85f
--- /dev/null
+++ b/sound/songs/midi/se_card.mid
Binary files differ
diff --git a/sound/songs/midi/se_curtain.mid b/sound/songs/midi/se_curtain.mid
new file mode 100644
index 000000000..88c684318
--- /dev/null
+++ b/sound/songs/midi/se_curtain.mid
Binary files differ
diff --git a/sound/songs/midi/se_curtain1.mid b/sound/songs/midi/se_curtain1.mid
new file mode 100644
index 000000000..0a40e158e
--- /dev/null
+++ b/sound/songs/midi/se_curtain1.mid
Binary files differ
diff --git a/sound/songs/midi/se_dansa.mid b/sound/songs/midi/se_dansa.mid
new file mode 100644
index 000000000..61eae0318
--- /dev/null
+++ b/sound/songs/midi/se_dansa.mid
Binary files differ
diff --git a/sound/songs/midi/se_daugi.mid b/sound/songs/midi/se_daugi.mid
new file mode 100644
index 000000000..9b6538a70
--- /dev/null
+++ b/sound/songs/midi/se_daugi.mid
Binary files differ
diff --git a/sound/songs/midi/se_dendou.mid b/sound/songs/midi/se_dendou.mid
new file mode 100644
index 000000000..4ab2a2212
--- /dev/null
+++ b/sound/songs/midi/se_dendou.mid
Binary files differ
diff --git a/sound/songs/midi/se_doku.mid b/sound/songs/midi/se_doku.mid
new file mode 100644
index 000000000..83841203a
--- /dev/null
+++ b/sound/songs/midi/se_doku.mid
Binary files differ
diff --git a/sound/songs/midi/se_door.mid b/sound/songs/midi/se_door.mid
new file mode 100644
index 000000000..004889e93
--- /dev/null
+++ b/sound/songs/midi/se_door.mid
Binary files differ
diff --git a/sound/songs/midi/se_e.mid b/sound/songs/midi/se_e.mid
new file mode 100644
index 000000000..79485cbc9
--- /dev/null
+++ b/sound/songs/midi/se_e.mid
Binary files differ
diff --git a/sound/songs/midi/se_elebeta.mid b/sound/songs/midi/se_elebeta.mid
new file mode 100644
index 000000000..66ee5fd1f
--- /dev/null
+++ b/sound/songs/midi/se_elebeta.mid
Binary files differ
diff --git a/sound/songs/midi/se_esuka.mid b/sound/songs/midi/se_esuka.mid
new file mode 100644
index 000000000..6a9e22a5b
--- /dev/null
+++ b/sound/songs/midi/se_esuka.mid
Binary files differ
diff --git a/sound/songs/midi/se_exp.mid b/sound/songs/midi/se_exp.mid
new file mode 100644
index 000000000..fa75616b5
--- /dev/null
+++ b/sound/songs/midi/se_exp.mid
Binary files differ
diff --git a/sound/songs/midi/se_expmax.mid b/sound/songs/midi/se_expmax.mid
new file mode 100644
index 000000000..8772e915e
--- /dev/null
+++ b/sound/songs/midi/se_expmax.mid
Binary files differ
diff --git a/sound/songs/midi/se_fu_zaku.mid b/sound/songs/midi/se_fu_zaku.mid
new file mode 100644
index 000000000..dbdb6383b
--- /dev/null
+++ b/sound/songs/midi/se_fu_zaku.mid
Binary files differ
diff --git a/sound/songs/midi/se_fu_zaku2.mid b/sound/songs/midi/se_fu_zaku2.mid
new file mode 100644
index 000000000..3fc903844
--- /dev/null
+++ b/sound/songs/midi/se_fu_zaku2.mid
Binary files differ
diff --git a/sound/songs/midi/se_fu_zuzuzu.mid b/sound/songs/midi/se_fu_zuzuzu.mid
new file mode 100644
index 000000000..962113ad3
--- /dev/null
+++ b/sound/songs/midi/se_fu_zuzuzu.mid
Binary files differ
diff --git a/sound/songs/midi/se_fuusen1.mid b/sound/songs/midi/se_fuusen1.mid
new file mode 100644
index 000000000..d22679a86
--- /dev/null
+++ b/sound/songs/midi/se_fuusen1.mid
Binary files differ
diff --git a/sound/songs/midi/se_fuusen2.mid b/sound/songs/midi/se_fuusen2.mid
new file mode 100644
index 000000000..4efc1a525
--- /dev/null
+++ b/sound/songs/midi/se_fuusen2.mid
Binary files differ
diff --git a/sound/songs/midi/se_fuusen3.mid b/sound/songs/midi/se_fuusen3.mid
new file mode 100644
index 000000000..ae40e0008
--- /dev/null
+++ b/sound/songs/midi/se_fuusen3.mid
Binary files differ
diff --git a/sound/songs/midi/se_hantei1.mid b/sound/songs/midi/se_hantei1.mid
new file mode 100644
index 000000000..1f2855420
--- /dev/null
+++ b/sound/songs/midi/se_hantei1.mid
Binary files differ
diff --git a/sound/songs/midi/se_hantei2.mid b/sound/songs/midi/se_hantei2.mid
new file mode 100644
index 000000000..06698dde9
--- /dev/null
+++ b/sound/songs/midi/se_hantei2.mid
Binary files differ
diff --git a/sound/songs/midi/se_hashi.mid b/sound/songs/midi/se_hashi.mid
new file mode 100644
index 000000000..fdd772c18
--- /dev/null
+++ b/sound/songs/midi/se_hashi.mid
Binary files differ
diff --git a/sound/songs/midi/se_hazure.mid b/sound/songs/midi/se_hazure.mid
new file mode 100644
index 000000000..c3c52f88f
--- /dev/null
+++ b/sound/songs/midi/se_hazure.mid
Binary files differ
diff --git a/sound/songs/midi/se_hi_turun.mid b/sound/songs/midi/se_hi_turun.mid
new file mode 100644
index 000000000..2a09f6c55
--- /dev/null
+++ b/sound/songs/midi/se_hi_turun.mid
Binary files differ
diff --git a/sound/songs/midi/se_hinsi.mid b/sound/songs/midi/se_hinsi.mid
new file mode 100644
index 000000000..3676a4a04
--- /dev/null
+++ b/sound/songs/midi/se_hinsi.mid
Binary files differ
diff --git a/sound/songs/midi/se_i.mid b/sound/songs/midi/se_i.mid
new file mode 100644
index 000000000..df7278dfd
--- /dev/null
+++ b/sound/songs/midi/se_i.mid
Binary files differ
diff --git a/sound/songs/midi/se_jido_doa.mid b/sound/songs/midi/se_jido_doa.mid
new file mode 100644
index 000000000..62fa8c911
--- /dev/null
+++ b/sound/songs/midi/se_jido_doa.mid
Binary files differ
diff --git a/sound/songs/midi/se_jihanki.mid b/sound/songs/midi/se_jihanki.mid
new file mode 100644
index 000000000..ac6436d72
--- /dev/null
+++ b/sound/songs/midi/se_jihanki.mid
Binary files differ
diff --git a/sound/songs/midi/se_jite_pyoko.mid b/sound/songs/midi/se_jite_pyoko.mid
new file mode 100644
index 000000000..013be8590
--- /dev/null
+++ b/sound/songs/midi/se_jite_pyoko.mid
Binary files differ
diff --git a/sound/songs/midi/se_jitensya.mid b/sound/songs/midi/se_jitensya.mid
new file mode 100644
index 000000000..9d5de6cbd
--- /dev/null
+++ b/sound/songs/midi/se_jitensya.mid
Binary files differ
diff --git a/sound/songs/midi/se_jyuni.mid b/sound/songs/midi/se_jyuni.mid
new file mode 100644
index 000000000..f68a31e46
--- /dev/null
+++ b/sound/songs/midi/se_jyuni.mid
Binary files differ
diff --git a/sound/songs/midi/se_kaidan.mid b/sound/songs/midi/se_kaidan.mid
new file mode 100644
index 000000000..575307d86
--- /dev/null
+++ b/sound/songs/midi/se_kaidan.mid
Binary files differ
diff --git a/sound/songs/midi/se_kaifuku.mid b/sound/songs/midi/se_kaifuku.mid
new file mode 100644
index 000000000..4375a705d
--- /dev/null
+++ b/sound/songs/midi/se_kaifuku.mid
Binary files differ
diff --git a/sound/songs/midi/se_ki_gasyan.mid b/sound/songs/midi/se_ki_gasyan.mid
new file mode 100644
index 000000000..8a57132d9
--- /dev/null
+++ b/sound/songs/midi/se_ki_gasyan.mid
Binary files differ
diff --git a/sound/songs/midi/se_kon.mid b/sound/songs/midi/se_kon.mid
new file mode 100644
index 000000000..438d4b047
--- /dev/null
+++ b/sound/songs/midi/se_kon.mid
Binary files differ
diff --git a/sound/songs/midi/se_kon2.mid b/sound/songs/midi/se_kon2.mid
new file mode 100644
index 000000000..961d82642
--- /dev/null
+++ b/sound/songs/midi/se_kon2.mid
Binary files differ
diff --git a/sound/songs/midi/se_kon3.mid b/sound/songs/midi/se_kon3.mid
new file mode 100644
index 000000000..fc35f1931
--- /dev/null
+++ b/sound/songs/midi/se_kon3.mid
Binary files differ
diff --git a/sound/songs/midi/se_kon4.mid b/sound/songs/midi/se_kon4.mid
new file mode 100644
index 000000000..b0f5561b9
--- /dev/null
+++ b/sound/songs/midi/se_kon4.mid
Binary files differ
diff --git a/sound/songs/midi/se_kouka_h.mid b/sound/songs/midi/se_kouka_h.mid
new file mode 100644
index 000000000..e70b12901
--- /dev/null
+++ b/sound/songs/midi/se_kouka_h.mid
Binary files differ
diff --git a/sound/songs/midi/se_kouka_l.mid b/sound/songs/midi/se_kouka_l.mid
new file mode 100644
index 000000000..34aafbb18
--- /dev/null
+++ b/sound/songs/midi/se_kouka_l.mid
Binary files differ
diff --git a/sound/songs/midi/se_kouka_m.mid b/sound/songs/midi/se_kouka_m.mid
new file mode 100644
index 000000000..d98bd0027
--- /dev/null
+++ b/sound/songs/midi/se_kouka_m.mid
Binary files differ
diff --git a/sound/songs/se_a.s b/sound/songs/se_a.s
deleted file mode 100644
index 860a9aa27..000000000
--- a/sound/songs/se_a.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_a_grp, voicegroup128
- .equ se_a_pri, 4
- .equ se_a_rev, reverb_set+50
- .equ se_a_mvl, 127
- .equ se_a_key, 0
- .equ se_a_tbs, 1
- .equ se_a_exg, 0
- .equ se_a_cmp, 1
-
- .section .rodata
- .global se_a
- .align 2
-
-@********************** Track 1 **********************@
-
-se_a_1:
- .byte KEYSH , se_a_key+0
- .byte TEMPO , 240*se_a_tbs/2
- .byte VOICE , 122
- .byte BENDR , 12
- .byte VOL , 95*se_a_mvl/mxv
- .byte BEND , c_v+0
- .byte N72 , Cn3 , v127
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_a:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_a_pri @ Priority
- .byte se_a_rev @ Reverb.
-
- .word se_a_grp
-
- .word se_a_1
-
- .end
diff --git a/sound/songs/se_ban.s b/sound/songs/se_ban.s
deleted file mode 100644
index c4e39b5cd..000000000
--- a/sound/songs/se_ban.s
+++ /dev/null
@@ -1,70 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_ban_grp, voicegroup128
- .equ se_ban_pri, 4
- .equ se_ban_rev, reverb_set+50
- .equ se_ban_mvl, 127
- .equ se_ban_key, 0
- .equ se_ban_tbs, 1
- .equ se_ban_exg, 0
- .equ se_ban_cmp, 1
-
- .section .rodata
- .global se_ban
- .align 2
-
-@********************** Track 1 **********************@
-
-se_ban_1:
- .byte KEYSH , se_ban_key+0
- .byte TEMPO , 240*se_ban_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 110*se_ban_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , En2 , v127
- .byte W03
- .byte Dn2
- .byte W03
- .byte N06 , Gn1
- .byte W06
- .byte N60 , An2
- .byte W12
- .byte W24
- .byte VOL , 94*se_ban_mvl/mxv
- .byte BEND , c_v-5
- .byte W03
- .byte VOL , 81*se_ban_mvl/mxv
- .byte W03
- .byte 71*se_ban_mvl/mxv
- .byte BEND , c_v-12
- .byte W03
- .byte VOL , 47*se_ban_mvl/mxv
- .byte W03
- .byte 32*se_ban_mvl/mxv
- .byte BEND , c_v-19
- .byte W03
- .byte VOL , 20*se_ban_mvl/mxv
- .byte W03
- .byte 7*se_ban_mvl/mxv
- .byte BEND , c_v-28
- .byte W03
- .byte VOL , 0*se_ban_mvl/mxv
- .byte BEND , c_v-37
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_ban:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_ban_pri @ Priority
- .byte se_ban_rev @ Reverb.
-
- .word se_ban_grp
-
- .word se_ban_1
-
- .end
diff --git a/sound/songs/se_basabasa.s b/sound/songs/se_basabasa.s
deleted file mode 100644
index bf1ee14ca..000000000
--- a/sound/songs/se_basabasa.s
+++ /dev/null
@@ -1,123 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_basabasa_grp, voicegroup128
- .equ se_basabasa_pri, 5
- .equ se_basabasa_rev, reverb_set+50
- .equ se_basabasa_mvl, 127
- .equ se_basabasa_key, 0
- .equ se_basabasa_tbs, 1
- .equ se_basabasa_exg, 0
- .equ se_basabasa_cmp, 1
-
- .section .rodata
- .global se_basabasa
- .align 2
-
-@********************** Track 1 **********************@
-
-se_basabasa_1:
- .byte KEYSH , se_basabasa_key+0
-se_basabasa_1_B1:
- .byte TEMPO , 220*se_basabasa_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte PAN , c_v+0
- .byte VOL , 40*se_basabasa_mvl/mxv
- .byte BEND , c_v-32
- .byte N07 , An1 , v127
- .byte W01
- .byte VOL , 52*se_basabasa_mvl/mxv
- .byte PAN , c_v+10
- .byte BEND , c_v-16
- .byte W01
- .byte VOL , 68*se_basabasa_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+0
- .byte W01
- .byte VOL , 82*se_basabasa_mvl/mxv
- .byte PAN , c_v-9
- .byte BEND , c_v+17
- .byte W01
- .byte VOL , 105*se_basabasa_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+37
- .byte W02
- .byte PAN , c_v+10
- .byte BEND , c_v+63
- .byte W03
- .byte PAN , c_v+0
- .byte W01
- .byte VOL , 40*se_basabasa_mvl/mxv
- .byte PAN , c_v+10
- .byte BEND , c_v+1
- .byte N06
- .byte W02
- .byte VOL , 52*se_basabasa_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+38
- .byte W01
- .byte VOL , 79*se_basabasa_mvl/mxv
- .byte PAN , c_v-9
- .byte BEND , c_v+48
- .byte W01
- .byte VOL , 105*se_basabasa_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+63
- .byte W10
- .byte W12
- .byte W12
- .byte GOTO
- .word se_basabasa_1_B1
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_basabasa_2:
- .byte KEYSH , se_basabasa_key+0
-se_basabasa_2_B1:
- .byte VOICE , 27
- .byte PAN , c_v+0
- .byte VOL , 52*se_basabasa_mvl/mxv
- .byte N07 , Gn2 , v040
- .byte W01
- .byte VOL , 69*se_basabasa_mvl/mxv
- .byte W01
- .byte 83*se_basabasa_mvl/mxv
- .byte W01
- .byte 105*se_basabasa_mvl/mxv
- .byte W01
- .byte 67*se_basabasa_mvl/mxv
- .byte W02
- .byte 23*se_basabasa_mvl/mxv
- .byte W04
- .byte VOICE , 25
- .byte VOL , 52*se_basabasa_mvl/mxv
- .byte N06 , Gs4
- .byte W02
- .byte VOL , 81*se_basabasa_mvl/mxv
- .byte W01
- .byte 105*se_basabasa_mvl/mxv
- .byte W02
- .byte 52*se_basabasa_mvl/mxv
- .byte W09
- .byte W12
- .byte W12
- .byte GOTO
- .word se_basabasa_2_B1
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_basabasa:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_basabasa_pri @ Priority
- .byte se_basabasa_rev @ Reverb.
-
- .word se_basabasa_grp
-
- .word se_basabasa_1
- .word se_basabasa_2
-
- .end
diff --git a/sound/songs/se_bidoro.s b/sound/songs/se_bidoro.s
deleted file mode 100644
index 6130a39a2..000000000
--- a/sound/songs/se_bidoro.s
+++ /dev/null
@@ -1,61 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_bidoro_grp, voicegroup128
- .equ se_bidoro_pri, 5
- .equ se_bidoro_rev, reverb_set+50
- .equ se_bidoro_mvl, 127
- .equ se_bidoro_key, 0
- .equ se_bidoro_tbs, 1
- .equ se_bidoro_exg, 0
- .equ se_bidoro_cmp, 1
-
- .section .rodata
- .global se_bidoro
- .align 2
-
-@********************** Track 1 **********************@
-
-se_bidoro_1:
- .byte KEYSH , se_bidoro_key+0
- .byte TEMPO , 120*se_bidoro_tbs/2
- .byte VOICE , 28
- .byte VOL , 26*se_bidoro_mvl/mxv
- .byte BENDR , 8
- .byte BEND , c_v+0
- .byte N01 , En3 , v116
- .byte W01
- .byte VOL , 105*se_bidoro_mvl/mxv
- .byte BEND , c_v-4
- .byte N01 , Bn2
- .byte W01
- .byte BEND , c_v+3
- .byte N01 , Cn3
- .byte W04
- .byte W04
- .byte BEND , c_v+0
- .byte N04 , Bn3
- .byte W02
- .byte VOL , 26*se_bidoro_mvl/mxv
- .byte BEND , c_v-7
- .byte W01
- .byte VOL , 105*se_bidoro_mvl/mxv
- .byte BEND , c_v-13
- .byte W01
- .byte c_v-23
- .byte W04
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_bidoro:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_bidoro_pri @ Priority
- .byte se_bidoro_rev @ Reverb.
-
- .word se_bidoro_grp
-
- .word se_bidoro_1
-
- .end
diff --git a/sound/songs/se_boo.s b/sound/songs/se_boo.s
deleted file mode 100644
index c6bb1cb06..000000000
--- a/sound/songs/se_boo.s
+++ /dev/null
@@ -1,47 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_boo_grp, voicegroup127
- .equ se_boo_pri, 4
- .equ se_boo_rev, reverb_set+50
- .equ se_boo_mvl, 127
- .equ se_boo_key, 0
- .equ se_boo_tbs, 1
- .equ se_boo_exg, 0
- .equ se_boo_cmp, 1
-
- .section .rodata
- .global se_boo
- .align 2
-
-@********************** Track 1 **********************@
-
-se_boo_1:
- .byte KEYSH , se_boo_key+0
- .byte TEMPO , 100*se_boo_tbs/2
- .byte VOICE , 5
- .byte BENDR , 12
- .byte VOL , 110*se_boo_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , Cn3 , v127
- .byte W03
- .byte Cn2 , v112
- .byte W03
- .byte W03
- .byte Cn2 , v024
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_boo:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_boo_pri @ Priority
- .byte se_boo_rev @ Reverb.
-
- .word se_boo_grp
-
- .word se_boo_1
-
- .end
diff --git a/sound/songs/se_bowa.s b/sound/songs/se_bowa.s
deleted file mode 100644
index 93b84265b..000000000
--- a/sound/songs/se_bowa.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_bowa_grp, voicegroup127
- .equ se_bowa_pri, 4
- .equ se_bowa_rev, reverb_set+50
- .equ se_bowa_mvl, 127
- .equ se_bowa_key, 0
- .equ se_bowa_tbs, 1
- .equ se_bowa_exg, 0
- .equ se_bowa_cmp, 1
-
- .section .rodata
- .global se_bowa
- .align 2
-
-@********************** Track 1 **********************@
-
-se_bowa_1:
- .byte KEYSH , se_bowa_key+0
- .byte TEMPO , 128*se_bowa_tbs/2
- .byte VOICE , 7
- .byte BENDR , 12
- .byte VOL , 70*se_bowa_mvl/mxv
- .byte BEND , c_v+2
- .byte N04 , Fn2 , v127
- .byte W04
- .byte N01 , Dn3
- .byte W02
- .byte VOICE , 8
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_bowa:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_bowa_pri @ Priority
- .byte se_bowa_rev @ Reverb.
-
- .word se_bowa_grp
-
- .word se_bowa_1
-
- .end
diff --git a/sound/songs/se_bowa2.s b/sound/songs/se_bowa2.s
deleted file mode 100644
index 571c45291..000000000
--- a/sound/songs/se_bowa2.s
+++ /dev/null
@@ -1,83 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_bowa2_grp, voicegroup127
- .equ se_bowa2_pri, 5
- .equ se_bowa2_rev, reverb_set+50
- .equ se_bowa2_mvl, 127
- .equ se_bowa2_key, 0
- .equ se_bowa2_tbs, 1
- .equ se_bowa2_exg, 0
- .equ se_bowa2_cmp, 1
-
- .section .rodata
- .global se_bowa2
- .align 2
-
-@********************** Track 1 **********************@
-
-se_bowa2_1:
- .byte KEYSH , se_bowa2_key+0
- .byte TEMPO , 90*se_bowa2_tbs/2
- .byte VOICE , 86
- .byte VOL , 100*se_bowa2_mvl/mxv
- .byte BEND , c_v+0
- .byte N02 , Gn1 , v100
- .byte W03
- .byte N05 , Fn2
- .byte W03
- .byte W03
- .byte N06 , Fn2 , v052
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_bowa2_2:
- .byte KEYSH , se_bowa2_key+0
- .byte VOICE , 0
- .byte VOL , 100*se_bowa2_mvl/mxv
- .byte BENDR , 12
- .byte BEND , c_v+0
- .byte N03 , Gn3 , v052
- .byte W03
- .byte Cn2 , v112
- .byte W03
- .byte W03
- .byte Cn1 , v092
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 3 **********************@
-
-se_bowa2_3:
- .byte KEYSH , se_bowa2_key+0
- .byte VOICE , 124
- .byte VOL , 100*se_bowa2_mvl/mxv
- .byte N03 , Gn3 , v052
- .byte W03
- .byte N06 , Gs4
- .byte W03
- .byte W03
- .byte Gs4 , v020
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_bowa2:
- .byte 3 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_bowa2_pri @ Priority
- .byte se_bowa2_rev @ Reverb.
-
- .word se_bowa2_grp
-
- .word se_bowa2_1
- .word se_bowa2_2
- .word se_bowa2_3
-
- .end
diff --git a/sound/songs/se_bt_start.s b/sound/songs/se_bt_start.s
deleted file mode 100644
index c0c30550b..000000000
--- a/sound/songs/se_bt_start.s
+++ /dev/null
@@ -1,212 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_bt_start_grp, voicegroup128
- .equ se_bt_start_pri, 5
- .equ se_bt_start_rev, reverb_set+50
- .equ se_bt_start_mvl, 127
- .equ se_bt_start_key, 0
- .equ se_bt_start_tbs, 1
- .equ se_bt_start_exg, 0
- .equ se_bt_start_cmp, 1
-
- .section .rodata
- .global se_bt_start
- .align 2
-
-@********************** Track 1 **********************@
-
-se_bt_start_1:
- .byte KEYSH , se_bt_start_key+0
- .byte TEMPO , 110*se_bt_start_tbs/2
- .byte VOICE , 66
- .byte BENDR , 12
- .byte VOL , 90*se_bt_start_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+0
- .byte N90 , Gs3 , v040
- .byte W06
- .byte W06
- .byte BEND , c_v+1
- .byte W04
- .byte c_v+3
- .byte W02
- .byte W04
- .byte c_v+5
- .byte W02
- .byte W04
- .byte c_v+8
- .byte W02
- .byte W03
- .byte c_v+11
- .byte W03
- .byte W03
- .byte c_v+18
- .byte W03
- .byte W02
- .byte c_v+24
- .byte W04
- .byte c_v+30
- .byte W02
- .byte c_v+38
- .byte W02
- .byte c_v+43
- .byte W02
- .byte W01
- .byte c_v+56
- .byte W02
- .byte c_v+63
- .byte W03
- .byte W03
- .byte VOL , 83*se_bt_start_mvl/mxv
- .byte W03
- .byte 75*se_bt_start_mvl/mxv
- .byte W04
- .byte 68*se_bt_start_mvl/mxv
- .byte W02
- .byte W01
- .byte 55*se_bt_start_mvl/mxv
- .byte W04
- .byte 42*se_bt_start_mvl/mxv
- .byte W01
- .byte W03
- .byte 29*se_bt_start_mvl/mxv
- .byte W03
- .byte 17*se_bt_start_mvl/mxv
- .byte W03
- .byte 8*se_bt_start_mvl/mxv
- .byte W03
- .byte W06
- .byte W06
- .byte W06
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_bt_start_2:
- .byte KEYSH , se_bt_start_key+0
- .byte VOICE , 2
- .byte VOL , 14*se_bt_start_mvl/mxv
- .byte PAN , c_v-1
- .byte BEND , c_v+0
- .byte TIE , Gn3 , v100
- .byte W01
- .byte VOL , 19*se_bt_start_mvl/mxv
- .byte W01
- .byte 30*se_bt_start_mvl/mxv
- .byte W02
- .byte 37*se_bt_start_mvl/mxv
- .byte W02
- .byte W02
- .byte 44*se_bt_start_mvl/mxv
- .byte W04
- .byte 49*se_bt_start_mvl/mxv
- .byte W04
- .byte 53*se_bt_start_mvl/mxv
- .byte W02
- .byte W03
- .byte 58*se_bt_start_mvl/mxv
- .byte W03
- .byte W02
- .byte 64*se_bt_start_mvl/mxv
- .byte W04
- .byte 68*se_bt_start_mvl/mxv
- .byte W03
- .byte 74*se_bt_start_mvl/mxv
- .byte W03
- .byte W01
- .byte BEND , c_v+1
- .byte W01
- .byte VOL , 81*se_bt_start_mvl/mxv
- .byte W04
- .byte BEND , c_v+2
- .byte W01
- .byte VOL , 90*se_bt_start_mvl/mxv
- .byte W03
- .byte BEND , c_v+4
- .byte W02
- .byte W03
- .byte c_v+5
- .byte W03
- .byte W01
- .byte c_v+6
- .byte W03
- .byte c_v+6
- .byte W02
- .byte W02
- .byte c_v+8
- .byte W02
- .byte c_v+10
- .byte W02
- .byte W01
- .byte c_v+14
- .byte W02
- .byte c_v+17
- .byte W03
- .byte c_v+24
- .byte W02
- .byte c_v+30
- .byte W01
- .byte c_v+41
- .byte W01
- .byte c_v+46
- .byte W02
- .byte c_v+55
- .byte W01
- .byte c_v+60
- .byte W01
- .byte c_v+63
- .byte W01
- .byte VOL , 87*se_bt_start_mvl/mxv
- .byte W03
- .byte 85*se_bt_start_mvl/mxv
- .byte PAN , c_v-4
- .byte W02
- .byte VOL , 78*se_bt_start_mvl/mxv
- .byte PAN , c_v+4
- .byte W02
- .byte VOL , 75*se_bt_start_mvl/mxv
- .byte PAN , c_v-6
- .byte W02
- .byte W01
- .byte VOL , 69*se_bt_start_mvl/mxv
- .byte PAN , c_v+6
- .byte W02
- .byte VOL , 59*se_bt_start_mvl/mxv
- .byte PAN , c_v-20
- .byte W03
- .byte VOL , 49*se_bt_start_mvl/mxv
- .byte PAN , c_v+22
- .byte W02
- .byte VOL , 41*se_bt_start_mvl/mxv
- .byte PAN , c_v-37
- .byte W02
- .byte VOL , 30*se_bt_start_mvl/mxv
- .byte PAN , c_v+37
- .byte W02
- .byte W01
- .byte VOL , 19*se_bt_start_mvl/mxv
- .byte PAN , c_v-48
- .byte W02
- .byte VOL , 10*se_bt_start_mvl/mxv
- .byte PAN , c_v+48
- .byte W01
- .byte VOL , 4*se_bt_start_mvl/mxv
- .byte W02
- .byte EOT
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_bt_start:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_bt_start_pri @ Priority
- .byte se_bt_start_rev @ Reverb.
-
- .word se_bt_start_grp
-
- .word se_bt_start_1
- .word se_bt_start_2
-
- .end
diff --git a/sound/songs/se_c_gaji.s b/sound/songs/se_c_gaji.s
deleted file mode 100644
index 38217dbe5..000000000
--- a/sound/songs/se_c_gaji.s
+++ /dev/null
@@ -1,44 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_gaji_grp, voicegroup128
- .equ se_c_gaji_pri, 5
- .equ se_c_gaji_rev, reverb_set+50
- .equ se_c_gaji_mvl, 127
- .equ se_c_gaji_key, 0
- .equ se_c_gaji_tbs, 1
- .equ se_c_gaji_exg, 0
- .equ se_c_gaji_cmp, 1
-
- .section .rodata
- .global se_c_gaji
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_gaji_1:
- .byte KEYSH , se_c_gaji_key+0
- .byte TEMPO , 150*se_c_gaji_tbs/2
- .byte VOICE , 14
- .byte VOL , 90*se_c_gaji_mvl/mxv
- .byte BEND , c_v-7
- .byte N02 , Cn5 , v112
- .byte W02
- .byte N09 , Gn4
- .byte W04
- .byte W06
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_gaji:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_gaji_pri @ Priority
- .byte se_c_gaji_rev @ Reverb.
-
- .word se_c_gaji_grp
-
- .word se_c_gaji_1
-
- .end
diff --git a/sound/songs/se_c_maku_d.s b/sound/songs/se_c_maku_d.s
deleted file mode 100644
index f97673f07..000000000
--- a/sound/songs/se_c_maku_d.s
+++ /dev/null
@@ -1,95 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_maku_d_grp, voicegroup128
- .equ se_c_maku_d_pri, 5
- .equ se_c_maku_d_rev, reverb_set+50
- .equ se_c_maku_d_mvl, 127
- .equ se_c_maku_d_key, 0
- .equ se_c_maku_d_tbs, 1
- .equ se_c_maku_d_exg, 0
- .equ se_c_maku_d_cmp, 1
-
- .section .rodata
- .global se_c_maku_d
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_maku_d_1:
- .byte KEYSH , se_c_maku_d_key+0
- .byte TEMPO , 150*se_c_maku_d_tbs/2
- .byte VOICE , 25
- .byte VOL , 12*se_c_maku_d_mvl/mxv
- .byte BEND , c_v+0
- .byte N12 , Gs4 , v060
- .byte W01
- .byte VOL , 22*se_c_maku_d_mvl/mxv
- .byte W01
- .byte 33*se_c_maku_d_mvl/mxv
- .byte W01
- .byte 46*se_c_maku_d_mvl/mxv
- .byte W01
- .byte 58*se_c_maku_d_mvl/mxv
- .byte W02
- .byte 70*se_c_maku_d_mvl/mxv
- .byte W02
- .byte 60*se_c_maku_d_mvl/mxv
- .byte W01
- .byte 42*se_c_maku_d_mvl/mxv
- .byte W01
- .byte 22*se_c_maku_d_mvl/mxv
- .byte W02
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_c_maku_d_2:
- .byte KEYSH , se_c_maku_d_key+0
- .byte VOICE , 15
- .byte VOL , 12*se_c_maku_d_mvl/mxv
- .byte BEND , c_v+0
- .byte N12 , Fn3 , v100
- .byte W01
- .byte VOL , 22*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-4
- .byte W01
- .byte VOL , 33*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-7
- .byte W01
- .byte VOL , 46*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-10
- .byte W01
- .byte VOL , 58*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-15
- .byte W02
- .byte VOL , 70*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-23
- .byte W01
- .byte c_v-31
- .byte W01
- .byte VOL , 60*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-39
- .byte W01
- .byte VOL , 42*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-48
- .byte W01
- .byte VOL , 22*se_c_maku_d_mvl/mxv
- .byte BEND , c_v-55
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_maku_d:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_maku_d_pri @ Priority
- .byte se_c_maku_d_rev @ Reverb.
-
- .word se_c_maku_d_grp
-
- .word se_c_maku_d_1
- .word se_c_maku_d_2
-
- .end
diff --git a/sound/songs/se_c_maku_u.s b/sound/songs/se_c_maku_u.s
deleted file mode 100644
index fa0ef3f0d..000000000
--- a/sound/songs/se_c_maku_u.s
+++ /dev/null
@@ -1,95 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_maku_u_grp, voicegroup128
- .equ se_c_maku_u_pri, 5
- .equ se_c_maku_u_rev, reverb_set+50
- .equ se_c_maku_u_mvl, 127
- .equ se_c_maku_u_key, 0
- .equ se_c_maku_u_tbs, 1
- .equ se_c_maku_u_exg, 0
- .equ se_c_maku_u_cmp, 1
-
- .section .rodata
- .global se_c_maku_u
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_maku_u_1:
- .byte KEYSH , se_c_maku_u_key+0
- .byte TEMPO , 150*se_c_maku_u_tbs/2
- .byte VOICE , 25
- .byte VOL , 12*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+0
- .byte N12 , Gs4 , v060
- .byte W01
- .byte VOL , 22*se_c_maku_u_mvl/mxv
- .byte W01
- .byte 33*se_c_maku_u_mvl/mxv
- .byte W01
- .byte 46*se_c_maku_u_mvl/mxv
- .byte W01
- .byte 58*se_c_maku_u_mvl/mxv
- .byte W02
- .byte 70*se_c_maku_u_mvl/mxv
- .byte W02
- .byte 60*se_c_maku_u_mvl/mxv
- .byte W01
- .byte 42*se_c_maku_u_mvl/mxv
- .byte W01
- .byte 22*se_c_maku_u_mvl/mxv
- .byte W02
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_c_maku_u_2:
- .byte KEYSH , se_c_maku_u_key+0
- .byte VOICE , 15
- .byte VOL , 12*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+0
- .byte N12 , Fn3 , v100
- .byte W01
- .byte VOL , 22*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+3
- .byte W01
- .byte VOL , 33*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+6
- .byte W01
- .byte VOL , 46*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+9
- .byte W01
- .byte VOL , 58*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+12
- .byte W02
- .byte VOL , 70*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+17
- .byte W01
- .byte c_v+20
- .byte W01
- .byte VOL , 60*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+25
- .byte W01
- .byte VOL , 42*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+32
- .byte W01
- .byte VOL , 22*se_c_maku_u_mvl/mxv
- .byte BEND , c_v+38
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_maku_u:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_maku_u_pri @ Priority
- .byte se_c_maku_u_rev @ Reverb.
-
- .word se_c_maku_u_grp
-
- .word se_c_maku_u_1
- .word se_c_maku_u_2
-
- .end
diff --git a/sound/songs/se_c_pasi.s b/sound/songs/se_c_pasi.s
deleted file mode 100644
index 02da29a6d..000000000
--- a/sound/songs/se_c_pasi.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_pasi_grp, voicegroup128
- .equ se_c_pasi_pri, 5
- .equ se_c_pasi_rev, reverb_set+50
- .equ se_c_pasi_mvl, 127
- .equ se_c_pasi_key, 0
- .equ se_c_pasi_tbs, 1
- .equ se_c_pasi_exg, 0
- .equ se_c_pasi_cmp, 1
-
- .section .rodata
- .global se_c_pasi
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_pasi_1:
- .byte KEYSH , se_c_pasi_key+0
- .byte TEMPO , 150*se_c_pasi_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 110*se_c_pasi_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+0
- .byte N02 , Gn3 , v112
- .byte W04
- .byte Gn4 , v064
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_pasi:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_pasi_pri @ Priority
- .byte se_c_pasi_rev @ Reverb.
-
- .word se_c_pasi_grp
-
- .word se_c_pasi_1
-
- .end
diff --git a/sound/songs/se_c_pikon.s b/sound/songs/se_c_pikon.s
deleted file mode 100644
index 1e91ed760..000000000
--- a/sound/songs/se_c_pikon.s
+++ /dev/null
@@ -1,54 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_pikon_grp, voicegroup128
- .equ se_c_pikon_pri, 5
- .equ se_c_pikon_rev, reverb_set+50
- .equ se_c_pikon_mvl, 127
- .equ se_c_pikon_key, 0
- .equ se_c_pikon_tbs, 1
- .equ se_c_pikon_exg, 0
- .equ se_c_pikon_cmp, 1
-
- .section .rodata
- .global se_c_pikon
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_pikon_1:
- .byte KEYSH , se_c_pikon_key+0
- .byte TEMPO , 150*se_c_pikon_tbs/2
- .byte VOICE , 14
- .byte VOL , 90*se_c_pikon_mvl/mxv
- .byte BEND , c_v-7
- .byte N02 , Cn5 , v112
- .byte W02
- .byte Cn6
- .byte W04
- .byte W01
- .byte Cn6 , v060
- .byte W05
- .byte W02
- .byte Cn5 , v112
- .byte W02
- .byte Cn6
- .byte W02
- .byte W03
- .byte Cn6 , v060
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_pikon:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_pikon_pri @ Priority
- .byte se_c_pikon_rev @ Reverb.
-
- .word se_c_pikon_grp
-
- .word se_c_pikon_1
-
- .end
diff --git a/sound/songs/se_c_syu.s b/sound/songs/se_c_syu.s
deleted file mode 100644
index c4d051397..000000000
--- a/sound/songs/se_c_syu.s
+++ /dev/null
@@ -1,54 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_c_syu_grp, voicegroup128
- .equ se_c_syu_pri, 5
- .equ se_c_syu_rev, reverb_set+50
- .equ se_c_syu_mvl, 127
- .equ se_c_syu_key, 0
- .equ se_c_syu_tbs, 1
- .equ se_c_syu_exg, 0
- .equ se_c_syu_cmp, 1
-
- .section .rodata
- .global se_c_syu
- .align 2
-
-@********************** Track 1 **********************@
-
-se_c_syu_1:
- .byte KEYSH , se_c_syu_key+0
- .byte TEMPO , 150*se_c_syu_tbs/2
- .byte VOICE , 36
- .byte VOL , 49*se_c_syu_mvl/mxv
- .byte BEND , c_v-64
- .byte N03 , Cn6 , v112
- .byte W01
- .byte VOL , 68*se_c_syu_mvl/mxv
- .byte BEND , c_v-1
- .byte W01
- .byte VOL , 90*se_c_syu_mvl/mxv
- .byte BEND , c_v+63
- .byte W01
- .byte VOL , 69*se_c_syu_mvl/mxv
- .byte BEND , c_v+0
- .byte N02 , Cn6 , v040
- .byte W01
- .byte VOL , 90*se_c_syu_mvl/mxv
- .byte BEND , c_v+63
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_c_syu:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_c_syu_pri @ Priority
- .byte se_c_syu_rev @ Reverb.
-
- .word se_c_syu_grp
-
- .word se_c_syu_1
-
- .end
diff --git a/sound/songs/se_card.s b/sound/songs/se_card.s
deleted file mode 100644
index 703e516d5..000000000
--- a/sound/songs/se_card.s
+++ /dev/null
@@ -1,84 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_card_grp, voicegroup127
- .equ se_card_pri, 4
- .equ se_card_rev, reverb_set+50
- .equ se_card_mvl, 127
- .equ se_card_key, 0
- .equ se_card_tbs, 1
- .equ se_card_exg, 0
- .equ se_card_cmp, 1
-
- .section .rodata
- .global se_card
- .align 2
-
-@********************** Track 1 **********************@
-
-se_card_1:
- .byte KEYSH , se_card_key+0
- .byte TEMPO , 180*se_card_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 37*se_card_mvl/mxv
- .byte BEND , c_v+63
- .byte N02 , Gn3 , v044
- .byte W01
- .byte VOL , 73*se_card_mvl/mxv
- .byte W01
- .byte 100*se_card_mvl/mxv
- .byte N01 , Gn4
- .byte W02
- .byte N30 , Cn4 , v127
- .byte W02
- .byte BEND , c_v+59
- .byte W01
- .byte VOL , 3*se_card_mvl/mxv
- .byte W01
- .byte 25*se_card_mvl/mxv
- .byte W01
- .byte 56*se_card_mvl/mxv
- .byte BEND , c_v+55
- .byte W01
- .byte VOL , 77*se_card_mvl/mxv
- .byte W02
- .byte 100*se_card_mvl/mxv
- .byte BEND , c_v+46
- .byte W03
- .byte VOL , 92*se_card_mvl/mxv
- .byte BEND , c_v+37
- .byte W03
- .byte VOL , 79*se_card_mvl/mxv
- .byte BEND , c_v+28
- .byte W03
- .byte VOL , 66*se_card_mvl/mxv
- .byte BEND , c_v+20
- .byte W03
- .byte VOL , 52*se_card_mvl/mxv
- .byte BEND , c_v+11
- .byte W03
- .byte VOL , 38*se_card_mvl/mxv
- .byte BEND , c_v+2
- .byte W03
- .byte VOL , 25*se_card_mvl/mxv
- .byte BEND , c_v-7
- .byte W03
- .byte VOL , 11*se_card_mvl/mxv
- .byte BEND , c_v-16
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_card:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_card_pri @ Priority
- .byte se_card_rev @ Reverb.
-
- .word se_card_grp
-
- .word se_card_1
-
- .end
diff --git a/sound/songs/se_curtain.s b/sound/songs/se_curtain.s
deleted file mode 100644
index e15fe4742..000000000
--- a/sound/songs/se_curtain.s
+++ /dev/null
@@ -1,166 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_curtain_grp, voicegroup129
- .equ se_curtain_pri, 5
- .equ se_curtain_rev, reverb_set+50
- .equ se_curtain_mvl, 127
- .equ se_curtain_key, 0
- .equ se_curtain_tbs, 1
- .equ se_curtain_exg, 0
- .equ se_curtain_cmp, 1
-
- .section .rodata
- .global se_curtain
- .align 2
-
-@********************** Track 1 **********************@
-
-se_curtain_1:
- .byte KEYSH , se_curtain_key+0
- .byte TEMPO , 98*se_curtain_tbs/2
- .byte PAN , c_v+0
- .byte VOL , 127*se_curtain_mvl/mxv
- .byte W19
- .byte TEMPO , 112*se_curtain_tbs/2
- .byte VOICE , 38
- .byte MOD , 2
- .byte N04 , Gs1 , v120
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte 1
- .byte N04 , Cn2
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , En2
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , Gs2
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , Cn3
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte 1
- .byte N04 , Ds3
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte 1
- .byte N04 , En3 , v096
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v032
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v+63
- .byte MOD , 1
- .byte N04 , En3 , v048
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v012
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte PAN , c_v+63
- .byte MOD , 1
- .byte N04 , En3 , v032
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v008
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte 2
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_curtain_2:
- .byte KEYSH , se_curtain_key+0
- .byte PAN , c_v+0
- .byte VOL , 112*se_curtain_mvl/mxv
- .byte W19
- .byte VOICE , 100
- .byte W12
- .byte W07
- .byte N04 , Cn4 , v112
- .byte W05
- .byte As4
- .byte W07
- .byte Gs5 , v064
- .byte W05
- .byte Ds6 , v048
- .byte W07
- .byte Gn6 , v032
- .byte W05
- .byte W12
- .byte FINE
-
-@********************** Track 3 **********************@
-
-se_curtain_3:
- .byte KEYSH , se_curtain_key+0
- .byte VOICE , 125
- .byte LFOS , 44
- .byte XCMD , xIECV , 18
- .byte xIECV , 16
- .byte BENDR , 12
- .byte MOD , 2
- .byte VOL , 86*se_curtain_mvl/mxv
- .byte BEND , c_v-57
- .byte N09 , Cn5 , v064
- .byte W01
- .byte BEND , c_v-45
- .byte W01
- .byte c_v-30
- .byte W01
- .byte c_v-18
- .byte W01
- .byte c_v-11
- .byte W02
- .byte c_v+0
- .byte W03
- .byte N01 , Gn5 , v096
- .byte W10
- .byte W12
- .byte W12
- .byte W12
- .byte W12
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_curtain:
- .byte 3 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_curtain_pri @ Priority
- .byte se_curtain_rev @ Reverb.
-
- .word se_curtain_grp
-
- .word se_curtain_1
- .word se_curtain_2
- .word se_curtain_3
-
- .end
diff --git a/sound/songs/se_curtain1.s b/sound/songs/se_curtain1.s
deleted file mode 100644
index 40e97ba13..000000000
--- a/sound/songs/se_curtain1.s
+++ /dev/null
@@ -1,168 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_curtain1_grp, voicegroup129
- .equ se_curtain1_pri, 5
- .equ se_curtain1_rev, reverb_set+50
- .equ se_curtain1_mvl, 127
- .equ se_curtain1_key, 0
- .equ se_curtain1_tbs, 1
- .equ se_curtain1_exg, 0
- .equ se_curtain1_cmp, 1
-
- .section .rodata
- .global se_curtain1
- .align 2
-
-@********************** Track 1 **********************@
-
-se_curtain1_1:
- .byte VOL , 127*se_curtain1_mvl/mxv
- .byte KEYSH , se_curtain1_key+0
- .byte TEMPO , 112*se_curtain1_tbs/2
- .byte VOICE , 38
- .byte MOD , 2
- .byte N04 , Gs1 , v120
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , Cn2
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , En2
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , Gs2
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte 1
- .byte N04 , Cn3
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte 1
- .byte N04 , Ds3
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte 1
- .byte N04 , En3 , v096
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v032
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v+63
- .byte MOD , 1
- .byte N04 , En3 , v048
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v012
- .byte W02
- .byte MOD , 7
- .byte W03
- .byte PAN , c_v+63
- .byte MOD , 1
- .byte N04 , En3 , v032
- .byte W02
- .byte MOD , 7
- .byte W02
- .byte PAN , c_v-62
- .byte MOD , 1
- .byte N04 , En4 , v008
- .byte W03
- .byte MOD , 7
- .byte W02
- .byte 2
- .byte W03
- .byte TEMPO , 98*se_curtain1_tbs/2
- .byte PAN , c_v+0
- .byte VOL , 127*se_curtain1_mvl/mxv
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_curtain1_2:
- .byte VOL , 127*se_curtain1_mvl/mxv
- .byte KEYSH , se_curtain1_key+0
- .byte VOICE , 100
- .byte W12
- .byte W07
- .byte N04 , Cn4 , v112
- .byte W05
- .byte As4
- .byte W07
- .byte Gs5 , v064
- .byte W05
- .byte Ds6 , v048
- .byte W07
- .byte Gn6 , v032
- .byte W05
- .byte W12
- .byte PAN , c_v+0
- .byte VOL , 112*se_curtain1_mvl/mxv
- .byte W12
- .byte FINE
-
-@********************** Track 3 **********************@
-
-se_curtain1_3:
- .byte KEYSH , se_curtain1_key+0
- .byte W12
- .byte W12
- .byte W12
- .byte W12
- .byte W12
- .byte VOICE , 125
- .byte LFOS , 44
- .byte XCMD , xIECV , 18
- .byte xIECV , 16
- .byte BENDR , 12
- .byte MOD , 2
- .byte VOL , 86*se_curtain1_mvl/mxv
- .byte BEND , c_v-57
- .byte N09 , Cn5 , v064
- .byte W01
- .byte BEND , c_v-45
- .byte W01
- .byte c_v-30
- .byte W01
- .byte c_v-18
- .byte W01
- .byte c_v-11
- .byte W02
- .byte c_v+0
- .byte W03
- .byte N01 , Gn5 , v096
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_curtain1:
- .byte 3 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_curtain1_pri @ Priority
- .byte se_curtain1_rev @ Reverb.
-
- .word se_curtain1_grp
-
- .word se_curtain1_1
- .word se_curtain1_2
- .word se_curtain1_3
-
- .end
diff --git a/sound/songs/se_dansa.s b/sound/songs/se_dansa.s
deleted file mode 100644
index ccd7c4742..000000000
--- a/sound/songs/se_dansa.s
+++ /dev/null
@@ -1,46 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_dansa_grp, voicegroup127
- .equ se_dansa_pri, 4
- .equ se_dansa_rev, reverb_set+50
- .equ se_dansa_mvl, 127
- .equ se_dansa_key, 0
- .equ se_dansa_tbs, 1
- .equ se_dansa_exg, 0
- .equ se_dansa_cmp, 1
-
- .section .rodata
- .global se_dansa
- .align 2
-
-@********************** Track 1 **********************@
-
-se_dansa_1:
- .byte KEYSH , se_dansa_key+0
- .byte TEMPO , 120*se_dansa_tbs/2
- .byte VOICE , 85
- .byte VOL , 100*se_dansa_mvl/mxv
- .byte BEND , c_v-6
- .byte N02 , Ds2 , v052
- .byte W02
- .byte VOICE , 86
- .byte N06 , Gn3 , v092
- .byte W01
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_dansa:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_dansa_pri @ Priority
- .byte se_dansa_rev @ Reverb.
-
- .word se_dansa_grp
-
- .word se_dansa_1
-
- .end
diff --git a/sound/songs/se_daugi.s b/sound/songs/se_daugi.s
deleted file mode 100644
index 88793920d..000000000
--- a/sound/songs/se_daugi.s
+++ /dev/null
@@ -1,80 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_daugi_grp, voicegroup127
- .equ se_daugi_pri, 5
- .equ se_daugi_rev, reverb_set+50
- .equ se_daugi_mvl, 127
- .equ se_daugi_key, 0
- .equ se_daugi_tbs, 1
- .equ se_daugi_exg, 0
- .equ se_daugi_cmp, 1
-
- .section .rodata
- .global se_daugi
- .align 2
-
-@********************** Track 1 **********************@
-
-se_daugi_1:
- .byte KEYSH , se_daugi_key+0
- .byte TEMPO , 128*se_daugi_tbs/2
- .byte VOICE , 89
- .byte BENDR , 12
- .byte VOL , 90*se_daugi_mvl/mxv
- .byte BEND , c_v-1
- .byte N03 , Fs2 , v127
- .byte W03
- .byte N01 , Ds3
- .byte W03
- .byte VOICE , 6
- .byte N03 , Gs3 , v100
- .byte W03
- .byte W01
- .byte N18 , Fn5 , v072
- .byte W02
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_daugi_2:
- .byte KEYSH , se_daugi_key+0
- .byte VOICE , 14
- .byte VOL , 90*se_daugi_mvl/mxv
- .byte BEND , c_v-8
- .byte N03 , Gs3 , v100
- .byte W03
- .byte W03
- .byte Gs3 , v060
- .byte W03
- .byte W01
- .byte N18 , Fn5
- .byte W02
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_daugi:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_daugi_pri @ Priority
- .byte se_daugi_rev @ Reverb.
-
- .word se_daugi_grp
-
- .word se_daugi_1
- .word se_daugi_2
-
- .end
diff --git a/sound/songs/se_dendou.s b/sound/songs/se_dendou.s
deleted file mode 100644
index 4fda6d338..000000000
--- a/sound/songs/se_dendou.s
+++ /dev/null
@@ -1,197 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_dendou_grp, voicegroup128
- .equ se_dendou_pri, 5
- .equ se_dendou_rev, reverb_set+50
- .equ se_dendou_mvl, 127
- .equ se_dendou_key, 0
- .equ se_dendou_tbs, 1
- .equ se_dendou_exg, 0
- .equ se_dendou_cmp, 1
-
- .section .rodata
- .global se_dendou
- .align 2
-
-@********************** Track 1 **********************@
-
-se_dendou_1:
- .byte KEYSH , se_dendou_key+0
- .byte TEMPO , 150*se_dendou_tbs/2
- .byte VOICE , 60
- .byte BENDR , 12
- .byte VOL , 25*se_dendou_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+0
- .byte TIE , Bn2 , v127
- .byte W01
- .byte PAN , c_v+2
- .byte W01
- .byte c_v+5
- .byte W01
- .byte VOL , 34*se_dendou_mvl/mxv
- .byte W01
- .byte PAN , c_v+2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte VOL , 46*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W01
- .byte c_v-4
- .byte W02
- .byte VOL , 56*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte c_v+2
- .byte W01
- .byte c_v+5
- .byte W01
- .byte VOL , 70*se_dendou_mvl/mxv
- .byte W01
- .byte PAN , c_v+2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte VOL , 80*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W01
- .byte c_v-4
- .byte W02
- .byte VOL , 88*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte c_v+2
- .byte W01
- .byte VOL , 96*se_dendou_mvl/mxv
- .byte PAN , c_v+5
- .byte W02
- .byte c_v+2
- .byte W02
- .byte VOL , 100*se_dendou_mvl/mxv
- .byte PAN , c_v+0
- .byte W01
- .byte c_v-2
- .byte W01
- .byte c_v-4
- .byte W02
- .byte c_v-2
- .byte W02
-se_dendou_1_000:
- .byte PAN , c_v+0
- .byte W01
- .byte c_v+2
- .byte W01
- .byte c_v+5
- .byte W02
- .byte c_v+2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte c_v-2
- .byte W01
- .byte c_v-4
- .byte W02
- .byte c_v-2
- .byte W02
- .byte PEND
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte PATT
- .word se_dendou_1_000
- .byte VOL , 96*se_dendou_mvl/mxv
- .byte PAN , c_v+0
- .byte W01
- .byte c_v+2
- .byte W01
- .byte c_v+5
- .byte W01
- .byte VOL , 92*se_dendou_mvl/mxv
- .byte W01
- .byte PAN , c_v+2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte VOL , 84*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W01
- .byte c_v-4
- .byte W02
- .byte VOL , 72*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte c_v+2
- .byte W01
- .byte VOL , 63*se_dendou_mvl/mxv
- .byte PAN , c_v+5
- .byte W02
- .byte VOL , 52*se_dendou_mvl/mxv
- .byte PAN , c_v+2
- .byte W02
- .byte c_v+0
- .byte W01
- .byte VOL , 37*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W01
- .byte c_v-4
- .byte W01
- .byte VOL , 22*se_dendou_mvl/mxv
- .byte W01
- .byte 12*se_dendou_mvl/mxv
- .byte PAN , c_v-2
- .byte W02
- .byte EOT , Bn2
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_dendou:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_dendou_pri @ Priority
- .byte se_dendou_rev @ Reverb.
-
- .word se_dendou_grp
-
- .word se_dendou_1
-
- .end
diff --git a/sound/songs/se_doku.s b/sound/songs/se_doku.s
deleted file mode 100644
index 90b84b2fb..000000000
--- a/sound/songs/se_doku.s
+++ /dev/null
@@ -1,50 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_doku_grp, voicegroup127
- .equ se_doku_pri, 5
- .equ se_doku_rev, reverb_set+50
- .equ se_doku_mvl, 127
- .equ se_doku_key, 0
- .equ se_doku_tbs, 1
- .equ se_doku_exg, 0
- .equ se_doku_cmp, 1
-
- .section .rodata
- .global se_doku
- .align 2
-
-@********************** Track 1 **********************@
-
-se_doku_1:
- .byte KEYSH , se_doku_key+0
- .byte TEMPO , 150*se_doku_tbs/2
- .byte VOICE , 16
- .byte BENDR , 12
- .byte VOL , 110*se_doku_mvl/mxv
- .byte BEND , c_v+0
- .byte N02 , Ds3 , v100
- .byte W04
- .byte N02
- .byte W05
- .byte N02
- .byte W05
- .byte N02
- .byte W05
- .byte N02
- .byte W05
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_doku:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_doku_pri @ Priority
- .byte se_doku_rev @ Reverb.
-
- .word se_doku_grp
-
- .word se_doku_1
-
- .end
diff --git a/sound/songs/se_door.s b/sound/songs/se_door.s
deleted file mode 100644
index e4b23dddd..000000000
--- a/sound/songs/se_door.s
+++ /dev/null
@@ -1,42 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_door_grp, voicegroup127
- .equ se_door_pri, 5
- .equ se_door_rev, reverb_set+50
- .equ se_door_mvl, 127
- .equ se_door_key, 0
- .equ se_door_tbs, 1
- .equ se_door_exg, 0
- .equ se_door_cmp, 1
-
- .section .rodata
- .global se_door
- .align 2
-
-@********************** Track 1 **********************@
-
-se_door_1:
- .byte KEYSH , se_door_key+0
- .byte TEMPO , 110*se_door_tbs/2
- .byte VOICE , 127
- .byte VOL , 80*se_door_mvl/mxv
- .byte N03 , Dn3 , v127
- .byte W06
- .byte N12 , Fs3
- .byte W18
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_door:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_door_pri @ Priority
- .byte se_door_rev @ Reverb.
-
- .word se_door_grp
-
- .word se_door_1
-
- .end
diff --git a/sound/songs/se_e.s b/sound/songs/se_e.s
deleted file mode 100644
index aa9b91844..000000000
--- a/sound/songs/se_e.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_e_grp, voicegroup128
- .equ se_e_pri, 4
- .equ se_e_rev, reverb_set+50
- .equ se_e_mvl, 127
- .equ se_e_key, 0
- .equ se_e_tbs, 1
- .equ se_e_exg, 0
- .equ se_e_cmp, 1
-
- .section .rodata
- .global se_e
- .align 2
-
-@********************** Track 1 **********************@
-
-se_e_1:
- .byte KEYSH , se_e_key+0
- .byte TEMPO , 240*se_e_tbs/2
- .byte VOICE , 125
- .byte BENDR , 12
- .byte VOL , 120*se_e_mvl/mxv
- .byte BEND , c_v+0
- .byte N72 , Cn3 , v127
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_e:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_e_pri @ Priority
- .byte se_e_rev @ Reverb.
-
- .word se_e_grp
-
- .word se_e_1
-
- .end
diff --git a/sound/songs/se_elebeta.s b/sound/songs/se_elebeta.s
deleted file mode 100644
index ad19476d5..000000000
--- a/sound/songs/se_elebeta.s
+++ /dev/null
@@ -1,71 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_elebeta_grp, voicegroup128
- .equ se_elebeta_pri, 4
- .equ se_elebeta_rev, reverb_set+50
- .equ se_elebeta_mvl, 127
- .equ se_elebeta_key, 0
- .equ se_elebeta_tbs, 1
- .equ se_elebeta_exg, 0
- .equ se_elebeta_cmp, 1
-
- .section .rodata
- .global se_elebeta
- .align 2
-
-@********************** Track 1 **********************@
-
-se_elebeta_1:
- .byte KEYSH , se_elebeta_key+0
- .byte TEMPO , 150*se_elebeta_tbs/2
- .byte VOICE , 38
- .byte BENDR , 2
- .byte VOL , 100*se_elebeta_mvl/mxv
- .byte BEND , c_v+0
- .byte TIE , Fs4 , v080
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte EOT
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_elebeta_2:
- .byte KEYSH , se_elebeta_key+0
- .byte VOICE , 27
- .byte VOL , 100*se_elebeta_mvl/mxv
- .byte TIE , Fn3 , v032
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte EOT
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_elebeta:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_elebeta_pri @ Priority
- .byte se_elebeta_rev @ Reverb.
-
- .word se_elebeta_grp
-
- .word se_elebeta_1
- .word se_elebeta_2
-
- .end
diff --git a/sound/songs/se_esuka.s b/sound/songs/se_esuka.s
deleted file mode 100644
index 88e88fcd3..000000000
--- a/sound/songs/se_esuka.s
+++ /dev/null
@@ -1,93 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_esuka_grp, voicegroup128
- .equ se_esuka_pri, 4
- .equ se_esuka_rev, reverb_set+50
- .equ se_esuka_mvl, 127
- .equ se_esuka_key, 0
- .equ se_esuka_tbs, 1
- .equ se_esuka_exg, 0
- .equ se_esuka_cmp, 1
-
- .section .rodata
- .global se_esuka
- .align 2
-
-@********************** Track 1 **********************@
-
-se_esuka_1:
- .byte KEYSH , se_esuka_key+0
- .byte TEMPO , 150*se_esuka_tbs/2
- .byte VOICE , 38
- .byte BENDR , 2
- .byte VOL , 51*se_esuka_mvl/mxv
- .byte BEND , c_v-32
- .byte TIE , En5 , v080
- .byte W01
- .byte BEND , c_v-26
- .byte W01
- .byte VOL , 56*se_esuka_mvl/mxv
- .byte W01
- .byte BEND , c_v-21
- .byte W01
- .byte VOL , 62*se_esuka_mvl/mxv
- .byte W02
- .byte BEND , c_v-15
- .byte W01
- .byte VOL , 69*se_esuka_mvl/mxv
- .byte W01
- .byte BEND , c_v-7
- .byte W01
- .byte VOL , 75*se_esuka_mvl/mxv
- .byte W01
- .byte BEND , c_v+0
- .byte W02
- .byte VOL , 85*se_esuka_mvl/mxv
- .byte W02
- .byte 92*se_esuka_mvl/mxv
- .byte W02
- .byte 100*se_esuka_mvl/mxv
- .byte W08
- .byte W24
- .byte W24
- .byte W24
- .byte W03
- .byte 96*se_esuka_mvl/mxv
- .byte W03
- .byte 88*se_esuka_mvl/mxv
- .byte W03
- .byte 81*se_esuka_mvl/mxv
- .byte BEND , c_v-5
- .byte W03
- .byte VOL , 74*se_esuka_mvl/mxv
- .byte BEND , c_v-8
- .byte W02
- .byte VOL , 62*se_esuka_mvl/mxv
- .byte BEND , c_v-12
- .byte W02
- .byte VOL , 49*se_esuka_mvl/mxv
- .byte BEND , c_v-21
- .byte W03
- .byte VOL , 39*se_esuka_mvl/mxv
- .byte BEND , c_v-26
- .byte W02
- .byte VOL , 25*se_esuka_mvl/mxv
- .byte BEND , c_v-32
- .byte W03
- .byte EOT
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_esuka:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_esuka_pri @ Priority
- .byte se_esuka_rev @ Reverb.
-
- .word se_esuka_grp
-
- .word se_esuka_1
-
- .end
diff --git a/sound/songs/se_exp.s b/sound/songs/se_exp.s
deleted file mode 100644
index f58767b8f..000000000
--- a/sound/songs/se_exp.s
+++ /dev/null
@@ -1,333 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_exp_grp, voicegroup127
- .equ se_exp_pri, 5
- .equ se_exp_rev, reverb_set+50
- .equ se_exp_mvl, 127
- .equ se_exp_key, 0
- .equ se_exp_tbs, 1
- .equ se_exp_exg, 0
- .equ se_exp_cmp, 1
-
- .section .rodata
- .global se_exp
- .align 2
-
-@********************** Track 1 **********************@
-
-se_exp_1:
- .byte KEYSH , se_exp_key+0
- .byte TEMPO , 240*se_exp_tbs/2
- .byte VOICE , 19
- .byte BENDR , 26
- .byte VOL , 80*se_exp_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+0
- .byte TIE , Fn3 , v112
- .byte W01
- .byte BEND , c_v+8
- .byte W01
- .byte c_v+16
- .byte W01
- .byte c_v+22
- .byte W01
- .byte c_v+31
- .byte W02
- .byte c_v+38
- .byte W01
- .byte VOL , 71*se_exp_mvl/mxv
- .byte BEND , c_v+8
- .byte W01
- .byte c_v+16
- .byte W01
- .byte c_v+22
- .byte W01
- .byte c_v+31
- .byte W02
- .byte c_v+38
- .byte W01
- .byte c_v+15
- .byte W01
- .byte VOL , 50*se_exp_mvl/mxv
- .byte BEND , c_v+1
- .byte W01
- .byte c_v+0
- .byte W01
- .byte c_v+0
- .byte W02
- .byte c_v+3
- .byte W01
- .byte VOL , 51*se_exp_mvl/mxv
- .byte BEND , c_v+3
- .byte W01
- .byte c_v+2
- .byte W01
- .byte c_v+5
- .byte W01
- .byte c_v+4
- .byte W02
- .byte VOL , 52*se_exp_mvl/mxv
- .byte BEND , c_v+4
- .byte W01
- .byte c_v+7
- .byte W01
- .byte c_v+6
- .byte W01
- .byte c_v+5
- .byte W01
- .byte VOL , 52*se_exp_mvl/mxv
- .byte BEND , c_v+8
- .byte W02
- .byte c_v+8
- .byte W01
- .byte c_v+7
- .byte W01
- .byte c_v+10
- .byte W01
- .byte VOL , 54*se_exp_mvl/mxv
- .byte BEND , c_v+10
- .byte W01
- .byte c_v+9
- .byte W02
- .byte c_v+12
- .byte W01
- .byte c_v+12
- .byte W01
- .byte VOL , 55*se_exp_mvl/mxv
- .byte BEND , c_v+11
- .byte W01
- .byte c_v+14
- .byte W01
- .byte c_v+13
- .byte W02
- .byte c_v+12
- .byte W01
- .byte VOL , 56*se_exp_mvl/mxv
- .byte BEND , c_v+16
- .byte W01
- .byte c_v+15
- .byte W01
- .byte c_v+14
- .byte W01
- .byte c_v+17
- .byte W02
- .byte VOL , 57*se_exp_mvl/mxv
- .byte BEND , c_v+17
- .byte W01
- .byte c_v+16
- .byte W01
- .byte c_v+20
- .byte W01
- .byte c_v+19
- .byte W01
- .byte VOL , 57*se_exp_mvl/mxv
- .byte BEND , c_v+19
- .byte W02
- .byte c_v+21
- .byte W01
- .byte c_v+20
- .byte W01
- .byte c_v+20
- .byte W01
- .byte VOL , 59*se_exp_mvl/mxv
- .byte BEND , c_v+23
- .byte W01
- .byte c_v+22
- .byte W02
- .byte c_v+21
- .byte W01
- .byte c_v+25
- .byte W01
- .byte VOL , 60*se_exp_mvl/mxv
- .byte BEND , c_v+24
- .byte W01
- .byte c_v+23
- .byte W01
- .byte c_v+26
- .byte W02
- .byte c_v+25
- .byte W01
- .byte VOL , 61*se_exp_mvl/mxv
- .byte BEND , c_v+24
- .byte W01
- .byte c_v+28
- .byte W01
- .byte c_v+27
- .byte W01
- .byte c_v+26
- .byte W02
- .byte VOL , 62*se_exp_mvl/mxv
- .byte BEND , c_v+30
- .byte W01
- .byte c_v+29
- .byte W01
- .byte c_v+28
- .byte W01
- .byte c_v+32
- .byte W01
- .byte VOL , 62*se_exp_mvl/mxv
- .byte BEND , c_v+30
- .byte W02
- .byte c_v+30
- .byte W01
- .byte c_v+33
- .byte W01
- .byte c_v+32
- .byte W01
- .byte VOL , 64*se_exp_mvl/mxv
- .byte BEND , c_v+31
- .byte W01
- .byte c_v+35
- .byte W02
- .byte c_v+34
- .byte W01
- .byte c_v+33
- .byte W01
- .byte VOL , 65*se_exp_mvl/mxv
- .byte BEND , c_v+37
- .byte W01
- .byte c_v+36
- .byte W01
- .byte c_v+35
- .byte W02
- .byte c_v+39
- .byte W01
- .byte VOL , 66*se_exp_mvl/mxv
- .byte BEND , c_v+38
- .byte W01
- .byte c_v+37
- .byte W01
- .byte c_v+40
- .byte W01
- .byte c_v+39
- .byte W02
- .byte VOL , 67*se_exp_mvl/mxv
- .byte BEND , c_v+38
- .byte W01
- .byte c_v+42
- .byte W01
- .byte c_v+41
- .byte W01
- .byte c_v+40
- .byte W01
- .byte VOL , 68*se_exp_mvl/mxv
- .byte BEND , c_v+44
- .byte W02
- .byte c_v+43
- .byte W01
- .byte c_v+42
- .byte W01
- .byte c_v+46
- .byte W01
- .byte VOL , 69*se_exp_mvl/mxv
- .byte BEND , c_v+45
- .byte W01
- .byte c_v+44
- .byte W02
- .byte c_v+48
- .byte W01
- .byte c_v+46
- .byte W01
- .byte VOL , 70*se_exp_mvl/mxv
- .byte BEND , c_v+45
- .byte W01
- .byte c_v+49
- .byte W01
- .byte c_v+48
- .byte W02
- .byte c_v+48
- .byte W01
- .byte VOL , 71*se_exp_mvl/mxv
- .byte BEND , c_v+51
- .byte W01
- .byte c_v+50
- .byte W01
- .byte c_v+49
- .byte W01
- .byte c_v+53
- .byte W02
- .byte VOL , 72*se_exp_mvl/mxv
- .byte BEND , c_v+52
- .byte W01
- .byte c_v+51
- .byte W01
- .byte c_v+55
- .byte W01
- .byte c_v+53
- .byte W01
- .byte VOL , 73*se_exp_mvl/mxv
- .byte BEND , c_v+52
- .byte W02
- .byte c_v+56
- .byte W01
- .byte c_v+55
- .byte W01
- .byte c_v+54
- .byte W01
- .byte VOL , 74*se_exp_mvl/mxv
- .byte BEND , c_v+58
- .byte W01
- .byte c_v+57
- .byte W02
- .byte c_v+56
- .byte W01
- .byte c_v+59
- .byte W01
- .byte VOL , 75*se_exp_mvl/mxv
- .byte BEND , c_v+59
- .byte W01
- .byte c_v+58
- .byte W01
- .byte c_v+62
- .byte W02
- .byte c_v+61
- .byte W01
- .byte VOL , 76*se_exp_mvl/mxv
- .byte BEND , c_v+60
- .byte W01
- .byte c_v+63
- .byte W01
- .byte c_v+62
- .byte W01
- .byte c_v+61
- .byte W02
- .byte VOL , 77*se_exp_mvl/mxv
- .byte BEND , c_v+63
- .byte W01
- .byte c_v+62
- .byte W01
- .byte c_v+61
- .byte W01
- .byte c_v+63
- .byte W01
- .byte VOL , 78*se_exp_mvl/mxv
- .byte BEND , c_v+62
- .byte W02
- .byte c_v+61
- .byte W01
- .byte c_v+63
- .byte W01
- .byte c_v+62
- .byte W01
- .byte VOL , 79*se_exp_mvl/mxv
- .byte BEND , c_v+61
- .byte W01
- .byte c_v+63
- .byte W02
- .byte EOT
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_exp:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_exp_pri @ Priority
- .byte se_exp_rev @ Reverb.
-
- .word se_exp_grp
-
- .word se_exp_1
-
- .end
diff --git a/sound/songs/se_expmax.s b/sound/songs/se_expmax.s
deleted file mode 100644
index a3a8478b2..000000000
--- a/sound/songs/se_expmax.s
+++ /dev/null
@@ -1,76 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_expmax_grp, voicegroup128
- .equ se_expmax_pri, 5
- .equ se_expmax_rev, reverb_set+50
- .equ se_expmax_mvl, 127
- .equ se_expmax_key, 0
- .equ se_expmax_tbs, 1
- .equ se_expmax_exg, 0
- .equ se_expmax_cmp, 1
-
- .section .rodata
- .global se_expmax
- .align 2
-
-@********************** Track 1 **********************@
-
-se_expmax_1:
- .byte KEYSH , se_expmax_key+0
- .byte TEMPO , 150*se_expmax_tbs/2
- .byte VOICE , 46
- .byte VOL , 94*se_expmax_mvl/mxv
- .byte BENDR , 2
- .byte LFOS , 40
- .byte PAN , c_v+0
- .byte BEND , c_v+15
- .byte N06 , An5 , v112
- .byte W01
- .byte N15 , En6 , v104
- .byte W02
- .byte W01
- .byte MOD , 5
- .byte W02
- .byte W03
- .byte W03
- .byte W03
- .byte W01
- .byte 0
- .byte W02
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_expmax_2:
- .byte KEYSH , se_expmax_key+0
- .byte VOICE , 53
- .byte BENDR , 2
- .byte VOL , 43*se_expmax_mvl/mxv
- .byte PAN , c_v+0
- .byte BEND , c_v+15
- .byte N06 , An4 , v108
- .byte W01
- .byte N12 , Cs6 , v104
- .byte W02
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_expmax:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_expmax_pri @ Priority
- .byte se_expmax_rev @ Reverb.
-
- .word se_expmax_grp
-
- .word se_expmax_1
- .word se_expmax_2
-
- .end
diff --git a/sound/songs/se_fu_zaku.s b/sound/songs/se_fu_zaku.s
deleted file mode 100644
index b494653ee..000000000
--- a/sound/songs/se_fu_zaku.s
+++ /dev/null
@@ -1,54 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fu_zaku_grp, voicegroup127
- .equ se_fu_zaku_pri, 4
- .equ se_fu_zaku_rev, reverb_set+50
- .equ se_fu_zaku_mvl, 127
- .equ se_fu_zaku_key, 0
- .equ se_fu_zaku_tbs, 1
- .equ se_fu_zaku_exg, 0
- .equ se_fu_zaku_cmp, 1
-
- .section .rodata
- .global se_fu_zaku
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fu_zaku_1:
- .byte KEYSH , se_fu_zaku_key+0
- .byte TEMPO , 150*se_fu_zaku_tbs/2
- .byte VOICE , 126
- .byte VOL , 120*se_fu_zaku_mvl/mxv
- .byte N01 , Cn3 , v068
- .byte W01
- .byte En3 , v064
- .byte W01
- .byte Gn3
- .byte W03
- .byte N02 , An2 , v048
- .byte W08
- .byte N01 , Cn3 , v068
- .byte W01
- .byte En3 , v064
- .byte W01
- .byte Gn3
- .byte W03
- .byte N02 , An2 , v048
- .byte W06
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fu_zaku:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fu_zaku_pri @ Priority
- .byte se_fu_zaku_rev @ Reverb.
-
- .word se_fu_zaku_grp
-
- .word se_fu_zaku_1
-
- .end
diff --git a/sound/songs/se_fu_zaku2.s b/sound/songs/se_fu_zaku2.s
deleted file mode 100644
index 0ef523654..000000000
--- a/sound/songs/se_fu_zaku2.s
+++ /dev/null
@@ -1,48 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fu_zaku2_grp, voicegroup127
- .equ se_fu_zaku2_pri, 4
- .equ se_fu_zaku2_rev, reverb_set+50
- .equ se_fu_zaku2_mvl, 127
- .equ se_fu_zaku2_key, 0
- .equ se_fu_zaku2_tbs, 1
- .equ se_fu_zaku2_exg, 0
- .equ se_fu_zaku2_cmp, 1
-
- .section .rodata
- .global se_fu_zaku2
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fu_zaku2_1:
- .byte KEYSH , se_fu_zaku2_key+0
- .byte TEMPO , 150*se_fu_zaku2_tbs/2
- .byte VOICE , 126
- .byte VOL , 110*se_fu_zaku2_mvl/mxv
- .byte N01 , An2 , v112
- .byte W01
- .byte En3
- .byte W01
- .byte Gn3
- .byte W01
- .byte W02
- .byte N02 , Cn3 , v092
- .byte W01
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fu_zaku2:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fu_zaku2_pri @ Priority
- .byte se_fu_zaku2_rev @ Reverb.
-
- .word se_fu_zaku2_grp
-
- .word se_fu_zaku2_1
-
- .end
diff --git a/sound/songs/se_fu_zuzuzu.s b/sound/songs/se_fu_zuzuzu.s
deleted file mode 100644
index b0df814d0..000000000
--- a/sound/songs/se_fu_zuzuzu.s
+++ /dev/null
@@ -1,73 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fu_zuzuzu_grp, voicegroup127
- .equ se_fu_zuzuzu_pri, 4
- .equ se_fu_zuzuzu_rev, reverb_set+50
- .equ se_fu_zuzuzu_mvl, 127
- .equ se_fu_zuzuzu_key, 0
- .equ se_fu_zuzuzu_tbs, 1
- .equ se_fu_zuzuzu_exg, 0
- .equ se_fu_zuzuzu_cmp, 1
-
- .section .rodata
- .global se_fu_zuzuzu
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fu_zuzuzu_1:
- .byte KEYSH , se_fu_zuzuzu_key+0
- .byte TEMPO , 120*se_fu_zuzuzu_tbs/2
- .byte VOICE , 126
- .byte VOL , 127*se_fu_zuzuzu_mvl/mxv
- .byte N08 , An2 , v112
- .byte W03
- .byte W03
- .byte W02
- .byte N01 , Gs2
- .byte W01
- .byte W01
- .byte N08 , An2 , v096
- .byte W02
- .byte W03
- .byte W03
- .byte W01
- .byte N01 , Gs2 , v092
- .byte W01
- .byte N08 , An2 , v080
- .byte W01
- .byte W03
- .byte W03
- .byte W02
- .byte N01 , Gs2 , v076
- .byte W01
- .byte N08 , An2 , v064
- .byte W03
- .byte W03
- .byte W03
- .byte N01 , Gs2 , v060
- .byte W02
- .byte N09 , An2 , v048
- .byte W01
- .byte W03
- .byte W03
- .byte W02
- .byte N01 , Gs2 , v040
- .byte W01
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fu_zuzuzu:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fu_zuzuzu_pri @ Priority
- .byte se_fu_zuzuzu_rev @ Reverb.
-
- .word se_fu_zuzuzu_grp
-
- .word se_fu_zuzuzu_1
-
- .end
diff --git a/sound/songs/se_fuusen1.s b/sound/songs/se_fuusen1.s
deleted file mode 100644
index 458b010c6..000000000
--- a/sound/songs/se_fuusen1.s
+++ /dev/null
@@ -1,53 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fuusen1_grp, voicegroup128
- .equ se_fuusen1_pri, 4
- .equ se_fuusen1_rev, reverb_set+50
- .equ se_fuusen1_mvl, 127
- .equ se_fuusen1_key, 0
- .equ se_fuusen1_tbs, 1
- .equ se_fuusen1_exg, 0
- .equ se_fuusen1_cmp, 1
-
- .section .rodata
- .global se_fuusen1
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fuusen1_1:
- .byte KEYSH , se_fuusen1_key+0
- .byte TEMPO , 240*se_fuusen1_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 105*se_fuusen1_mvl/mxv
- .byte BEND , c_v+0
- .byte N06 , Cn4 , v127
- .byte W06
- .byte VOICE , 23
- .byte N02 , Cn3 , v112
- .byte W07
- .byte N01 , Cn4
- .byte W05
- .byte Cn3 , v100
- .byte W02
- .byte Gn3 , v092
- .byte W02
- .byte Cn3 , v072
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fuusen1:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fuusen1_pri @ Priority
- .byte se_fuusen1_rev @ Reverb.
-
- .word se_fuusen1_grp
-
- .word se_fuusen1_1
-
- .end
diff --git a/sound/songs/se_fuusen2.s b/sound/songs/se_fuusen2.s
deleted file mode 100644
index 065b91adf..000000000
--- a/sound/songs/se_fuusen2.s
+++ /dev/null
@@ -1,52 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fuusen2_grp, voicegroup128
- .equ se_fuusen2_pri, 4
- .equ se_fuusen2_rev, reverb_set+50
- .equ se_fuusen2_mvl, 127
- .equ se_fuusen2_key, 0
- .equ se_fuusen2_tbs, 1
- .equ se_fuusen2_exg, 0
- .equ se_fuusen2_cmp, 1
-
- .section .rodata
- .global se_fuusen2
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fuusen2_1:
- .byte KEYSH , se_fuusen2_key+0
- .byte TEMPO , 240*se_fuusen2_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 105*se_fuusen2_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , Gn4 , v127
- .byte W04
- .byte N01 , Gn4 , v112
- .byte W02
- .byte W02
- .byte Gs3 , v052
- .byte W04
- .byte VOICE , 23
- .byte N02 , Fn3 , v112
- .byte W04
- .byte N01 , Cn4 , v072
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fuusen2:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fuusen2_pri @ Priority
- .byte se_fuusen2_rev @ Reverb.
-
- .word se_fuusen2_grp
-
- .word se_fuusen2_1
-
- .end
diff --git a/sound/songs/se_fuusen3.s b/sound/songs/se_fuusen3.s
deleted file mode 100644
index 0756c9618..000000000
--- a/sound/songs/se_fuusen3.s
+++ /dev/null
@@ -1,60 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_fuusen3_grp, voicegroup128
- .equ se_fuusen3_pri, 4
- .equ se_fuusen3_rev, reverb_set+50
- .equ se_fuusen3_mvl, 127
- .equ se_fuusen3_key, 0
- .equ se_fuusen3_tbs, 1
- .equ se_fuusen3_exg, 0
- .equ se_fuusen3_cmp, 1
-
- .section .rodata
- .global se_fuusen3
- .align 2
-
-@********************** Track 1 **********************@
-
-se_fuusen3_1:
- .byte KEYSH , se_fuusen3_key+0
- .byte TEMPO , 240*se_fuusen3_tbs/2
- .byte VOICE , 2
- .byte BENDR , 12
- .byte VOL , 105*se_fuusen3_mvl/mxv
- .byte BEND , c_v+0
- .byte N02 , Fn3 , v127
- .byte W02
- .byte N01 , Cn4 , v112
- .byte W02
- .byte N03 , Fn3 , v052
- .byte W02
- .byte W02
- .byte VOICE , 23
- .byte N01 , En4 , v092
- .byte W01
- .byte Cn5
- .byte W03
- .byte Gn3
- .byte W01
- .byte En4
- .byte W02
- .byte En3 , v048
- .byte W01
- .byte Bn3
- .byte W02
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_fuusen3:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_fuusen3_pri @ Priority
- .byte se_fuusen3_rev @ Reverb.
-
- .word se_fuusen3_grp
-
- .word se_fuusen3_1
-
- .end
diff --git a/sound/songs/se_hantei1.s b/sound/songs/se_hantei1.s
deleted file mode 100644
index 5ef302ee6..000000000
--- a/sound/songs/se_hantei1.s
+++ /dev/null
@@ -1,58 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hantei1_grp, voicegroup129
- .equ se_hantei1_pri, 5
- .equ se_hantei1_rev, reverb_set+50
- .equ se_hantei1_mvl, 127
- .equ se_hantei1_key, 0
- .equ se_hantei1_tbs, 1
- .equ se_hantei1_exg, 0
- .equ se_hantei1_cmp, 1
-
- .section .rodata
- .global se_hantei1
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hantei1_1:
- .byte KEYSH , se_hantei1_key+0
- .byte TEMPO , 92*se_hantei1_tbs/2
- .byte VOICE , 116
- .byte VOL , 127*se_hantei1_mvl/mxv
- .byte PAN , c_v-62
- .byte N32 , Fn3 , v127
- .byte W12
- .byte W12
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_hantei1_2:
- .byte KEYSH , se_hantei1_key+0
- .byte VOICE , 117
- .byte VOL , 127*se_hantei1_mvl/mxv
- .byte PAN , c_v+63
- .byte BEND , c_v+1
- .byte N32 , An3 , v100
- .byte W12
- .byte W12
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hantei1:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hantei1_pri @ Priority
- .byte se_hantei1_rev @ Reverb.
-
- .word se_hantei1_grp
-
- .word se_hantei1_1
- .word se_hantei1_2
-
- .end
diff --git a/sound/songs/se_hantei2.s b/sound/songs/se_hantei2.s
deleted file mode 100644
index a10a14f41..000000000
--- a/sound/songs/se_hantei2.s
+++ /dev/null
@@ -1,70 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hantei2_grp, voicegroup129
- .equ se_hantei2_pri, 5
- .equ se_hantei2_rev, reverb_set+50
- .equ se_hantei2_mvl, 127
- .equ se_hantei2_key, 0
- .equ se_hantei2_tbs, 1
- .equ se_hantei2_exg, 0
- .equ se_hantei2_cmp, 1
-
- .section .rodata
- .global se_hantei2
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hantei2_1:
- .byte KEYSH , se_hantei2_key+0
- .byte TEMPO , 92*se_hantei2_tbs/2
- .byte VOICE , 116
- .byte VOL , 127*se_hantei2_mvl/mxv
- .byte PAN , c_v-62
- .byte N04 , Fn3 , v127
- .byte W04
- .byte VOICE , 10
- .byte N04 , Cn3
- .byte W05
- .byte VOICE , 116
- .byte N32 , Fn3
- .byte W03
- .byte W12
- .byte W12
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_hantei2_2:
- .byte KEYSH , se_hantei2_key+0
- .byte VOICE , 117
- .byte VOL , 127*se_hantei2_mvl/mxv
- .byte PAN , c_v+63
- .byte BEND , c_v+1
- .byte N04 , Gn3 , v100
- .byte W04
- .byte Dn3
- .byte W05
- .byte N32 , Gn3
- .byte W03
- .byte W12
- .byte W12
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hantei2:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hantei2_pri @ Priority
- .byte se_hantei2_rev @ Reverb.
-
- .word se_hantei2_grp
-
- .word se_hantei2_1
- .word se_hantei2_2
-
- .end
diff --git a/sound/songs/se_hashi.s b/sound/songs/se_hashi.s
deleted file mode 100644
index ba2ed43ce..000000000
--- a/sound/songs/se_hashi.s
+++ /dev/null
@@ -1,46 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hashi_grp, voicegroup128
- .equ se_hashi_pri, 4
- .equ se_hashi_rev, reverb_set+50
- .equ se_hashi_mvl, 127
- .equ se_hashi_key, 0
- .equ se_hashi_tbs, 1
- .equ se_hashi_exg, 0
- .equ se_hashi_cmp, 1
-
- .section .rodata
- .global se_hashi
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hashi_1:
- .byte KEYSH , se_hashi_key+0
- .byte TEMPO , 150*se_hashi_tbs/2
- .byte VOICE , 26
- .byte BENDR , 12
- .byte PAN , c_v+0
- .byte VOL , 95*se_hashi_mvl/mxv
- .byte BEND , c_v+0
- .byte N01 , Cn3 , v127
- .byte W03
- .byte W03
- .byte Gn3
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hashi:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hashi_pri @ Priority
- .byte se_hashi_rev @ Reverb.
-
- .word se_hashi_grp
-
- .word se_hashi_1
-
- .end
diff --git a/sound/songs/se_hazure.s b/sound/songs/se_hazure.s
deleted file mode 100644
index 9bd29f6b5..000000000
--- a/sound/songs/se_hazure.s
+++ /dev/null
@@ -1,55 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hazure_grp, voicegroup127
- .equ se_hazure_pri, 4
- .equ se_hazure_rev, reverb_set+50
- .equ se_hazure_mvl, 127
- .equ se_hazure_key, 0
- .equ se_hazure_tbs, 1
- .equ se_hazure_exg, 0
- .equ se_hazure_cmp, 1
-
- .section .rodata
- .global se_hazure
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hazure_1:
- .byte KEYSH , se_hazure_key+0
- .byte TEMPO , 240*se_hazure_tbs/2
- .byte VOICE , 92
- .byte BENDR , 12
- .byte VOL , 120*se_hazure_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , Cn2 , v127
- .byte W03
- .byte Cn2 , v020
- .byte W03
- .byte N18 , Cn2 , v127
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte N09 , Cn2 , v020
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hazure:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hazure_pri @ Priority
- .byte se_hazure_rev @ Reverb.
-
- .word se_hazure_grp
-
- .word se_hazure_1
-
- .end
diff --git a/sound/songs/se_hi_turun.s b/sound/songs/se_hi_turun.s
deleted file mode 100644
index ab51f35cd..000000000
--- a/sound/songs/se_hi_turun.s
+++ /dev/null
@@ -1,62 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hi_turun_grp, voicegroup128
- .equ se_hi_turun_pri, 4
- .equ se_hi_turun_rev, reverb_set+50
- .equ se_hi_turun_mvl, 127
- .equ se_hi_turun_key, 0
- .equ se_hi_turun_tbs, 1
- .equ se_hi_turun_exg, 0
- .equ se_hi_turun_cmp, 1
-
- .section .rodata
- .global se_hi_turun
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hi_turun_1:
- .byte KEYSH , se_hi_turun_key+0
- .byte TEMPO , 220*se_hi_turun_tbs/2
- .byte VOICE , 9
- .byte VOL , 90*se_hi_turun_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , Gn4 , v112
- .byte W03
- .byte Dn4
- .byte W03
- .byte Gn4
- .byte W03
- .byte N21 , Gn5
- .byte W03
- .byte W03
- .byte VOL , 81*se_hi_turun_mvl/mxv
- .byte BEND , c_v+6
- .byte W03
- .byte VOL , 72*se_hi_turun_mvl/mxv
- .byte BEND , c_v+20
- .byte W03
- .byte VOL , 46*se_hi_turun_mvl/mxv
- .byte BEND , c_v+37
- .byte W03
- .byte VOL , 24*se_hi_turun_mvl/mxv
- .byte BEND , c_v+63
- .byte W03
- .byte VOL , 7*se_hi_turun_mvl/mxv
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hi_turun:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hi_turun_pri @ Priority
- .byte se_hi_turun_rev @ Reverb.
-
- .word se_hi_turun_grp
-
- .word se_hi_turun_1
-
- .end
diff --git a/sound/songs/se_hinsi.s b/sound/songs/se_hinsi.s
deleted file mode 100644
index 3c16f2f1b..000000000
--- a/sound/songs/se_hinsi.s
+++ /dev/null
@@ -1,50 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_hinsi_grp, voicegroup127
- .equ se_hinsi_pri, 3
- .equ se_hinsi_rev, reverb_set+50
- .equ se_hinsi_mvl, 127
- .equ se_hinsi_key, 0
- .equ se_hinsi_tbs, 1
- .equ se_hinsi_exg, 0
- .equ se_hinsi_cmp, 1
-
- .section .rodata
- .global se_hinsi
- .align 2
-
-@********************** Track 1 **********************@
-
-se_hinsi_1:
- .byte KEYSH , se_hinsi_key+0
-se_hinsi_1_B1:
- .byte TEMPO , 150*se_hinsi_tbs/2
- .byte VOICE , 15
- .byte XCMD , xIECV , 10
- .byte xIECL , 8
- .byte VOL , 100*se_hinsi_mvl/mxv
- .byte BEND , c_v+17
- .byte N12 , Dn4 , v080
- .byte W12
- .byte BEND , c_v+31
- .byte N12 , An3
- .byte W12
- .byte W12
- .byte GOTO
- .word se_hinsi_1_B1
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_hinsi:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_hinsi_pri @ Priority
- .byte se_hinsi_rev @ Reverb.
-
- .word se_hinsi_grp
-
- .word se_hinsi_1
-
- .end
diff --git a/sound/songs/se_i.s b/sound/songs/se_i.s
deleted file mode 100644
index fdb4ff5c4..000000000
--- a/sound/songs/se_i.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_i_grp, voicegroup128
- .equ se_i_pri, 4
- .equ se_i_rev, reverb_set+50
- .equ se_i_mvl, 127
- .equ se_i_key, 0
- .equ se_i_tbs, 1
- .equ se_i_exg, 0
- .equ se_i_cmp, 1
-
- .section .rodata
- .global se_i
- .align 2
-
-@********************** Track 1 **********************@
-
-se_i_1:
- .byte KEYSH , se_i_key+0
- .byte TEMPO , 240*se_i_tbs/2
- .byte VOICE , 123
- .byte BENDR , 12
- .byte VOL , 120*se_i_mvl/mxv
- .byte BEND , c_v+0
- .byte N72 , Cn3 , v127
- .byte W24
- .byte W24
- .byte W24
- .byte W24
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_i:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_i_pri @ Priority
- .byte se_i_rev @ Reverb.
-
- .word se_i_grp
-
- .word se_i_1
-
- .end
diff --git a/sound/songs/se_jido_doa.s b/sound/songs/se_jido_doa.s
deleted file mode 100644
index 60a1e4a47..000000000
--- a/sound/songs/se_jido_doa.s
+++ /dev/null
@@ -1,41 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_jido_doa_grp, voicegroup128
- .equ se_jido_doa_pri, 4
- .equ se_jido_doa_rev, reverb_set+50
- .equ se_jido_doa_mvl, 127
- .equ se_jido_doa_key, 0
- .equ se_jido_doa_tbs, 1
- .equ se_jido_doa_exg, 0
- .equ se_jido_doa_cmp, 1
-
- .section .rodata
- .global se_jido_doa
- .align 2
-
-@********************** Track 1 **********************@
-
-se_jido_doa_1:
- .byte KEYSH , se_jido_doa_key+0
- .byte TEMPO , 120*se_jido_doa_tbs/2
- .byte VOICE , 1
- .byte VOL , 95*se_jido_doa_mvl/mxv
- .byte N12 , Cn2 , v127
- .byte W12
- .byte VOL , 0*se_jido_doa_mvl/mxv
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_jido_doa:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_jido_doa_pri @ Priority
- .byte se_jido_doa_rev @ Reverb.
-
- .word se_jido_doa_grp
-
- .word se_jido_doa_1
-
- .end
diff --git a/sound/songs/se_jihanki.s b/sound/songs/se_jihanki.s
deleted file mode 100644
index 931dd5b64..000000000
--- a/sound/songs/se_jihanki.s
+++ /dev/null
@@ -1,46 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_jihanki_grp, voicegroup128
- .equ se_jihanki_pri, 4
- .equ se_jihanki_rev, reverb_set+50
- .equ se_jihanki_mvl, 127
- .equ se_jihanki_key, 0
- .equ se_jihanki_tbs, 1
- .equ se_jihanki_exg, 0
- .equ se_jihanki_cmp, 1
-
- .section .rodata
- .global se_jihanki
- .align 2
-
-@********************** Track 1 **********************@
-
-se_jihanki_1:
- .byte KEYSH , se_jihanki_key+0
- .byte TEMPO , 150*se_jihanki_tbs/2
- .byte VOICE , 8
- .byte VOL , 110*se_jihanki_mvl/mxv
- .byte BEND , c_v+0
- .byte N01 , Cn4 , v092
- .byte W03
- .byte Cn5
- .byte W03
- .byte W03
- .byte N02 , En3 , v127
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_jihanki:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_jihanki_pri @ Priority
- .byte se_jihanki_rev @ Reverb.
-
- .word se_jihanki_grp
-
- .word se_jihanki_1
-
- .end
diff --git a/sound/songs/se_jite_pyoko.s b/sound/songs/se_jite_pyoko.s
deleted file mode 100644
index 36dbcf83b..000000000
--- a/sound/songs/se_jite_pyoko.s
+++ /dev/null
@@ -1,45 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_jite_pyoko_grp, voicegroup127
- .equ se_jite_pyoko_pri, 4
- .equ se_jite_pyoko_rev, reverb_set+50
- .equ se_jite_pyoko_mvl, 127
- .equ se_jite_pyoko_key, 0
- .equ se_jite_pyoko_tbs, 1
- .equ se_jite_pyoko_exg, 0
- .equ se_jite_pyoko_cmp, 1
-
- .section .rodata
- .global se_jite_pyoko
- .align 2
-
-@********************** Track 1 **********************@
-
-se_jite_pyoko_1:
- .byte KEYSH , se_jite_pyoko_key+0
- .byte TEMPO , 180*se_jite_pyoko_tbs/2
- .byte VOICE , 85
- .byte VOL , 90*se_jite_pyoko_mvl/mxv
- .byte BEND , c_v-6
- .byte N02 , Cn3 , v080
- .byte W02
- .byte VOICE , 86
- .byte N03 , Cn4 , v127
- .byte W01
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_jite_pyoko:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_jite_pyoko_pri @ Priority
- .byte se_jite_pyoko_rev @ Reverb.
-
- .word se_jite_pyoko_grp
-
- .word se_jite_pyoko_1
-
- .end
diff --git a/sound/songs/se_jitensya.s b/sound/songs/se_jitensya.s
deleted file mode 100644
index da5d37007..000000000
--- a/sound/songs/se_jitensya.s
+++ /dev/null
@@ -1,40 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_jitensya_grp, voicegroup128
- .equ se_jitensya_pri, 4
- .equ se_jitensya_rev, reverb_set+50
- .equ se_jitensya_mvl, 127
- .equ se_jitensya_key, 0
- .equ se_jitensya_tbs, 1
- .equ se_jitensya_exg, 0
- .equ se_jitensya_cmp, 1
-
- .section .rodata
- .global se_jitensya
- .align 2
-
-@********************** Track 1 **********************@
-
-se_jitensya_1:
- .byte KEYSH , se_jitensya_key+0
- .byte TEMPO , 120*se_jitensya_tbs/2
- .byte VOICE , 0
- .byte VOL , 90*se_jitensya_mvl/mxv
- .byte N96 , Cn3 , v127
- .byte W96
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_jitensya:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_jitensya_pri @ Priority
- .byte se_jitensya_rev @ Reverb.
-
- .word se_jitensya_grp
-
- .word se_jitensya_1
-
- .end
diff --git a/sound/songs/se_jyuni.s b/sound/songs/se_jyuni.s
deleted file mode 100644
index 1267e7f35..000000000
--- a/sound/songs/se_jyuni.s
+++ /dev/null
@@ -1,127 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_jyuni_grp, voicegroup127
- .equ se_jyuni_pri, 4
- .equ se_jyuni_rev, reverb_set+50
- .equ se_jyuni_mvl, 127
- .equ se_jyuni_key, 0
- .equ se_jyuni_tbs, 1
- .equ se_jyuni_exg, 0
- .equ se_jyuni_cmp, 1
-
- .section .rodata
- .global se_jyuni
- .align 2
-
-@********************** Track 1 **********************@
-
-se_jyuni_1:
- .byte KEYSH , se_jyuni_key+0
- .byte TEMPO , 144*se_jyuni_tbs/2
- .byte VOICE , 48
- .byte PAN , c_v+1
- .byte VOL , 110*se_jyuni_mvl/mxv
- .byte N06 , Cn3 , v060
- .byte W06
- .byte N13 , Gn3
- .byte W06
- .byte W01
- .byte VOL , 105*se_jyuni_mvl/mxv
- .byte W01
- .byte 100*se_jyuni_mvl/mxv
- .byte W01
- .byte 89*se_jyuni_mvl/mxv
- .byte W01
- .byte 72*se_jyuni_mvl/mxv
- .byte W02
- .byte 55*se_jyuni_mvl/mxv
- .byte W01
- .byte 38*se_jyuni_mvl/mxv
- .byte W01
- .byte 22*se_jyuni_mvl/mxv
- .byte W01
- .byte 110*se_jyuni_mvl/mxv
- .byte N12 , Gn3 , v032
- .byte W03
- .byte W01
- .byte VOL , 100*se_jyuni_mvl/mxv
- .byte W01
- .byte 91*se_jyuni_mvl/mxv
- .byte W01
- .byte 75*se_jyuni_mvl/mxv
- .byte W01
- .byte 43*se_jyuni_mvl/mxv
- .byte W02
- .byte 24*se_jyuni_mvl/mxv
- .byte W01
- .byte 9*se_jyuni_mvl/mxv
- .byte W05
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_jyuni_2:
- .byte KEYSH , se_jyuni_key+0
- .byte VOICE , 80
- .byte VOL , 110*se_jyuni_mvl/mxv
- .byte PAN , c_v+0
- .byte N06 , Cn3 , v060
- .byte W06
- .byte N13 , Gn3
- .byte W06
- .byte W09
- .byte PAN , c_v-48
- .byte N12 , Gn3 , v032
- .byte W03
- .byte W12
- .byte FINE
-
-@********************** Track 3 **********************@
-
-se_jyuni_3:
- .byte KEYSH , se_jyuni_key+0
- .byte VOICE , 81
- .byte VOL , 110*se_jyuni_mvl/mxv
- .byte PAN , c_v+0
- .byte N06 , Gn2 , v060
- .byte W06
- .byte N13 , Cn3
- .byte W06
- .byte W09
- .byte PAN , c_v+48
- .byte N12 , Cn3 , v032
- .byte W03
- .byte W12
- .byte FINE
-
-@********************** Track 4 **********************@
-
-se_jyuni_4:
- .byte KEYSH , se_jyuni_key+0
- .byte VOICE , 47
- .byte VOL , 110*se_jyuni_mvl/mxv
- .byte N06 , Gn1 , v127
- .byte W06
- .byte N13 , Cn2
- .byte W06
- .byte W12
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_jyuni:
- .byte 4 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_jyuni_pri @ Priority
- .byte se_jyuni_rev @ Reverb.
-
- .word se_jyuni_grp
-
- .word se_jyuni_1
- .word se_jyuni_2
- .word se_jyuni_3
- .word se_jyuni_4
-
- .end
diff --git a/sound/songs/se_kaidan.s b/sound/songs/se_kaidan.s
deleted file mode 100644
index 3563c4062..000000000
--- a/sound/songs/se_kaidan.s
+++ /dev/null
@@ -1,61 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kaidan_grp, voicegroup127
- .equ se_kaidan_pri, 5
- .equ se_kaidan_rev, reverb_set+50
- .equ se_kaidan_mvl, 127
- .equ se_kaidan_key, 0
- .equ se_kaidan_tbs, 1
- .equ se_kaidan_exg, 0
- .equ se_kaidan_cmp, 1
-
- .section .rodata
- .global se_kaidan
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kaidan_1:
- .byte KEYSH , se_kaidan_key+0
- .byte TEMPO , 120*se_kaidan_tbs/2
- .byte VOICE , 126
- .byte VOL , 120*se_kaidan_mvl/mxv
- .byte N02 , An2 , v068
- .byte W02
- .byte Cn3 , v127
- .byte W01
- .byte W01
- .byte En4 , v068
- .byte W02
- .byte W03
- .byte W03
- .byte An2
- .byte W02
- .byte Cn3 , v100
- .byte W01
- .byte W01
- .byte En4 , v068
- .byte W02
- .byte W03
- .byte W03
- .byte An2 , v032
- .byte W02
- .byte Cn3 , v052
- .byte W01
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kaidan:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kaidan_pri @ Priority
- .byte se_kaidan_rev @ Reverb.
-
- .word se_kaidan_grp
-
- .word se_kaidan_1
-
- .end
diff --git a/sound/songs/se_kaifuku.s b/sound/songs/se_kaifuku.s
deleted file mode 100644
index ecaf63c92..000000000
--- a/sound/songs/se_kaifuku.s
+++ /dev/null
@@ -1,46 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kaifuku_grp, voicegroup127
- .equ se_kaifuku_pri, 5
- .equ se_kaifuku_rev, reverb_set+50
- .equ se_kaifuku_mvl, 127
- .equ se_kaifuku_key, 0
- .equ se_kaifuku_tbs, 1
- .equ se_kaifuku_exg, 0
- .equ se_kaifuku_cmp, 1
-
- .section .rodata
- .global se_kaifuku
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kaifuku_1:
- .byte KEYSH , se_kaifuku_key+0
- .byte TEMPO , 132*se_kaifuku_tbs/2
- .byte VOICE , 91
- .byte VOL , 100*se_kaifuku_mvl/mxv
- .byte BEND , c_v-6
- .byte N02 , Cn3 , v112
- .byte W04
- .byte N02
- .byte W04
- .byte VOICE , 90
- .byte N15
- .byte W16
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kaifuku:
- .byte 1 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kaifuku_pri @ Priority
- .byte se_kaifuku_rev @ Reverb.
-
- .word se_kaifuku_grp
-
- .word se_kaifuku_1
-
- .end
diff --git a/sound/songs/se_ki_gasyan.s b/sound/songs/se_ki_gasyan.s
deleted file mode 100644
index 11bcfbf45..000000000
--- a/sound/songs/se_ki_gasyan.s
+++ /dev/null
@@ -1,76 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_ki_gasyan_grp, voicegroup128
- .equ se_ki_gasyan_pri, 4
- .equ se_ki_gasyan_rev, reverb_set+50
- .equ se_ki_gasyan_mvl, 127
- .equ se_ki_gasyan_key, 0
- .equ se_ki_gasyan_tbs, 1
- .equ se_ki_gasyan_exg, 0
- .equ se_ki_gasyan_cmp, 1
-
- .section .rodata
- .global se_ki_gasyan
- .align 2
-
-@********************** Track 1 **********************@
-
-se_ki_gasyan_1:
- .byte KEYSH , se_ki_gasyan_key+0
- .byte TEMPO , 150*se_ki_gasyan_tbs/2
- .byte VOICE , 8
- .byte VOL , 100*se_ki_gasyan_mvl/mxv
- .byte BEND , c_v+0
- .byte N01 , Cn3 , v127
- .byte W02
- .byte N02 , Gn2
- .byte W04
- .byte N17 , Cn3
- .byte W06
- .byte VOL , 98*se_ki_gasyan_mvl/mxv
- .byte W01
- .byte 91*se_ki_gasyan_mvl/mxv
- .byte W01
- .byte 81*se_ki_gasyan_mvl/mxv
- .byte W02
- .byte 75*se_ki_gasyan_mvl/mxv
- .byte W01
- .byte 60*se_ki_gasyan_mvl/mxv
- .byte W01
- .byte 42*se_ki_gasyan_mvl/mxv
- .byte W01
- .byte 25*se_ki_gasyan_mvl/mxv
- .byte W02
- .byte 10*se_ki_gasyan_mvl/mxv
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_ki_gasyan_2:
- .byte VOL , 100*se_ki_gasyan_mvl/mxv
- .byte KEYSH , se_ki_gasyan_key+0
- .byte VOICE , 4
- .byte N01 , Cn3 , v064
- .byte W02
- .byte N02
- .byte W04
- .byte N02
- .byte W18
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_ki_gasyan:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_ki_gasyan_pri @ Priority
- .byte se_ki_gasyan_rev @ Reverb.
-
- .word se_ki_gasyan_grp
-
- .word se_ki_gasyan_1
- .word se_ki_gasyan_2
-
- .end
diff --git a/sound/songs/se_kon.s b/sound/songs/se_kon.s
deleted file mode 100644
index 45a59f4d9..000000000
--- a/sound/songs/se_kon.s
+++ /dev/null
@@ -1,53 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kon_grp, voicegroup128
- .equ se_kon_pri, 4
- .equ se_kon_rev, reverb_set+50
- .equ se_kon_mvl, 127
- .equ se_kon_key, 0
- .equ se_kon_tbs, 1
- .equ se_kon_exg, 0
- .equ se_kon_cmp, 1
-
- .section .rodata
- .global se_kon
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kon_1:
- .byte KEYSH , se_kon_key+0
- .byte TEMPO , 150*se_kon_tbs/2
- .byte VOICE , 16
- .byte VOL , 100*se_kon_mvl/mxv
- .byte BEND , c_v+1
- .byte N12 , Fn4 , v112
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kon_2:
- .byte KEYSH , se_kon_key+0
- .byte VOICE , 17
- .byte VOL , 100*se_kon_mvl/mxv
- .byte BEND , c_v+0
- .byte N09 , Fn4 , v100
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kon:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kon_pri @ Priority
- .byte se_kon_rev @ Reverb.
-
- .word se_kon_grp
-
- .word se_kon_1
- .word se_kon_2
-
- .end
diff --git a/sound/songs/se_kon2.s b/sound/songs/se_kon2.s
deleted file mode 100644
index 127532686..000000000
--- a/sound/songs/se_kon2.s
+++ /dev/null
@@ -1,53 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kon2_grp, voicegroup128
- .equ se_kon2_pri, 4
- .equ se_kon2_rev, reverb_set+50
- .equ se_kon2_mvl, 127
- .equ se_kon2_key, 0
- .equ se_kon2_tbs, 1
- .equ se_kon2_exg, 0
- .equ se_kon2_cmp, 1
-
- .section .rodata
- .global se_kon2
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kon2_1:
- .byte KEYSH , se_kon2_key+0
- .byte TEMPO , 150*se_kon2_tbs/2
- .byte VOICE , 16
- .byte VOL , 100*se_kon2_mvl/mxv
- .byte BEND , c_v+1
- .byte N12 , Fn4 , v100
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kon2_2:
- .byte KEYSH , se_kon2_key+0
- .byte VOICE , 17
- .byte VOL , 100*se_kon2_mvl/mxv
- .byte BEND , c_v+0
- .byte N09 , Fn4 , v088
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kon2:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kon2_pri @ Priority
- .byte se_kon2_rev @ Reverb.
-
- .word se_kon2_grp
-
- .word se_kon2_1
- .word se_kon2_2
-
- .end
diff --git a/sound/songs/se_kon3.s b/sound/songs/se_kon3.s
deleted file mode 100644
index 4e5ee26fa..000000000
--- a/sound/songs/se_kon3.s
+++ /dev/null
@@ -1,53 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kon3_grp, voicegroup128
- .equ se_kon3_pri, 4
- .equ se_kon3_rev, reverb_set+50
- .equ se_kon3_mvl, 127
- .equ se_kon3_key, 0
- .equ se_kon3_tbs, 1
- .equ se_kon3_exg, 0
- .equ se_kon3_cmp, 1
-
- .section .rodata
- .global se_kon3
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kon3_1:
- .byte KEYSH , se_kon3_key+0
- .byte TEMPO , 150*se_kon3_tbs/2
- .byte VOICE , 16
- .byte VOL , 100*se_kon3_mvl/mxv
- .byte BEND , c_v+1
- .byte N12 , Fn4 , v088
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kon3_2:
- .byte KEYSH , se_kon3_key+0
- .byte VOICE , 17
- .byte VOL , 100*se_kon3_mvl/mxv
- .byte BEND , c_v+0
- .byte N09 , Fn4 , v072
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kon3:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kon3_pri @ Priority
- .byte se_kon3_rev @ Reverb.
-
- .word se_kon3_grp
-
- .word se_kon3_1
- .word se_kon3_2
-
- .end
diff --git a/sound/songs/se_kon4.s b/sound/songs/se_kon4.s
deleted file mode 100644
index 4dfe81e34..000000000
--- a/sound/songs/se_kon4.s
+++ /dev/null
@@ -1,53 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kon4_grp, voicegroup128
- .equ se_kon4_pri, 4
- .equ se_kon4_rev, reverb_set+50
- .equ se_kon4_mvl, 127
- .equ se_kon4_key, 0
- .equ se_kon4_tbs, 1
- .equ se_kon4_exg, 0
- .equ se_kon4_cmp, 1
-
- .section .rodata
- .global se_kon4
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kon4_1:
- .byte KEYSH , se_kon4_key+0
- .byte TEMPO , 150*se_kon4_tbs/2
- .byte VOICE , 16
- .byte VOL , 100*se_kon4_mvl/mxv
- .byte BEND , c_v+1
- .byte N12 , Fn4 , v076
- .byte W12
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kon4_2:
- .byte KEYSH , se_kon4_key+0
- .byte VOICE , 17
- .byte VOL , 100*se_kon4_mvl/mxv
- .byte BEND , c_v+0
- .byte N09 , Fn4 , v056
- .byte W12
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kon4:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kon4_pri @ Priority
- .byte se_kon4_rev @ Reverb.
-
- .word se_kon4_grp
-
- .word se_kon4_1
- .word se_kon4_2
-
- .end
diff --git a/sound/songs/se_kouka_h.s b/sound/songs/se_kouka_h.s
deleted file mode 100644
index 955d3c077..000000000
--- a/sound/songs/se_kouka_h.s
+++ /dev/null
@@ -1,105 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kouka_h_grp, voicegroup127
- .equ se_kouka_h_pri, 5
- .equ se_kouka_h_rev, reverb_set+50
- .equ se_kouka_h_mvl, 127
- .equ se_kouka_h_key, 0
- .equ se_kouka_h_tbs, 1
- .equ se_kouka_h_exg, 0
- .equ se_kouka_h_cmp, 1
-
- .section .rodata
- .global se_kouka_h
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kouka_h_1:
- .byte KEYSH , se_kouka_h_key+0
- .byte TEMPO , 90*se_kouka_h_tbs/2
- .byte VOICE , 125
- .byte VOL , 110*se_kouka_h_mvl/mxv
- .byte N03 , Cn3 , v100
- .byte W03
- .byte An2
- .byte W03
- .byte Cn3
- .byte W03
- .byte N06 , Gn3 , v072
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v052
- .byte W03
- .byte N06 , Gn3 , v048
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v028
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte N03 , Cn3
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v012
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kouka_h_2:
- .byte KEYSH , se_kouka_h_key+0
- .byte VOICE , 0
- .byte VOL , 110*se_kouka_h_mvl/mxv
- .byte N03 , Cn4 , v127
- .byte W03
- .byte Cn3
- .byte W03
- .byte Cn4
- .byte W03
- .byte N06 , Gn3 , v088
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v064
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v044
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v028
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte N03 , Cn3 , v012
- .byte W03
- .byte N06 , Gn3
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kouka_h:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kouka_h_pri @ Priority
- .byte se_kouka_h_rev @ Reverb.
-
- .word se_kouka_h_grp
-
- .word se_kouka_h_1
- .word se_kouka_h_2
-
- .end
diff --git a/sound/songs/se_kouka_l.s b/sound/songs/se_kouka_l.s
deleted file mode 100644
index f00241b69..000000000
--- a/sound/songs/se_kouka_l.s
+++ /dev/null
@@ -1,56 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kouka_l_grp, voicegroup127
- .equ se_kouka_l_pri, 5
- .equ se_kouka_l_rev, reverb_set+50
- .equ se_kouka_l_mvl, 127
- .equ se_kouka_l_key, 0
- .equ se_kouka_l_tbs, 1
- .equ se_kouka_l_exg, 0
- .equ se_kouka_l_cmp, 1
-
- .section .rodata
- .global se_kouka_l
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kouka_l_1:
- .byte KEYSH , se_kouka_l_key+0
- .byte TEMPO , 90*se_kouka_l_tbs/2
- .byte VOICE , 127
- .byte VOL , 110*se_kouka_l_mvl/mxv
- .byte N03 , Gn2 , v100
- .byte W03
- .byte N06 , As2
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kouka_l_2:
- .byte KEYSH , se_kouka_l_key+0
- .byte VOICE , 0
- .byte VOL , 110*se_kouka_l_mvl/mxv
- .byte N09 , As1 , v127
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kouka_l:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kouka_l_pri @ Priority
- .byte se_kouka_l_rev @ Reverb.
-
- .word se_kouka_l_grp
-
- .word se_kouka_l_1
- .word se_kouka_l_2
-
- .end
diff --git a/sound/songs/se_kouka_m.s b/sound/songs/se_kouka_m.s
deleted file mode 100644
index b285c1566..000000000
--- a/sound/songs/se_kouka_m.s
+++ /dev/null
@@ -1,82 +0,0 @@
- .include "MPlayDef.s"
-
- .equ se_kouka_m_grp, voicegroup127
- .equ se_kouka_m_pri, 5
- .equ se_kouka_m_rev, reverb_set+50
- .equ se_kouka_m_mvl, 127
- .equ se_kouka_m_key, 0
- .equ se_kouka_m_tbs, 1
- .equ se_kouka_m_exg, 0
- .equ se_kouka_m_cmp, 1
-
- .section .rodata
- .global se_kouka_m
- .align 2
-
-@********************** Track 1 **********************@
-
-se_kouka_m_1:
- .byte KEYSH , se_kouka_m_key+0
- .byte TEMPO , 90*se_kouka_m_tbs/2
- .byte VOICE , 125
- .byte VOL , 110*se_kouka_m_mvl/mxv
- .byte BEND , c_v+0
- .byte N03 , As2 , v100
- .byte W03
- .byte BEND , c_v-33
- .byte N36 , Ds3
- .byte W03
- .byte BEND , c_v+0
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@********************** Track 2 **********************@
-
-se_kouka_m_2:
- .byte KEYSH , se_kouka_m_key+0
- .byte VOICE , 0
- .byte VOL , 110*se_kouka_m_mvl/mxv
- .byte N03 , Cn3 , v127
- .byte W03
- .byte N18
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte W03
- .byte FINE
-
-@******************************************************@
- .align 2
-
-se_kouka_m:
- .byte 2 @ NumTrks
- .byte 0 @ NumBlks
- .byte se_kouka_m_pri @ Priority
- .byte se_kouka_m_rev @ Reverb.
-
- .word se_kouka_m_grp
-
- .word se_kouka_m_1
- .word se_kouka_m_2
-
- .end
diff --git a/src/battle_anim.c b/src/battle_anim.c
index 2d514c955..0a5395b02 100644
--- a/src/battle_anim.c
+++ b/src/battle_anim.c
@@ -16,9 +16,6 @@
#include "palette.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
extern u16 gBattle_WIN0H;
@@ -33,8 +30,8 @@ extern struct MusicPlayerInfo gMPlayInfo_BGM;
extern struct MusicPlayerInfo gMPlayInfo_SE1;
extern struct MusicPlayerInfo gMPlayInfo_SE2;
-extern const u16 gUnknown_082C8D64[];
-extern const u8 * const gBattleAnims_Moves[];
+extern const u16 gMovesWithQuietBGM[];
+extern const u8 *const gBattleAnims_Moves[];
extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
extern const struct BattleAnimBackground gBattleAnimBackgroundTable[];
@@ -110,7 +107,7 @@ EWRAM_DATA bool8 gAnimScriptActive = FALSE;
EWRAM_DATA u8 gAnimVisualTaskCount = 0;
EWRAM_DATA u8 gAnimSoundTaskCount = 0;
EWRAM_DATA struct DisableStruct *gAnimDisableStructPtr = NULL;
-EWRAM_DATA u32 gAnimMoveDmg = 0;
+EWRAM_DATA s32 gAnimMoveDmg = 0;
EWRAM_DATA u16 gAnimMovePower = 0;
EWRAM_DATA static u16 sAnimSpriteIndexArray[ANIM_SPRITE_INDEX_COUNT] = {0};
EWRAM_DATA u8 gAnimFriendship = 0;
@@ -237,7 +234,7 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
else
{
for (i = 0; i < 4; i++)
- gAnimBattlerSpecies[i] = gContestResources->field_18->field_0;
+ gAnimBattlerSpecies[i] = gContestResources->field_18->unk0;
}
if (!isMoveAnim)
@@ -260,9 +257,9 @@ void LaunchBattleAnimation(const u8 *const animsTable[], u16 tableId, bool8 isMo
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);
break;
@@ -684,7 +681,7 @@ void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
}
sub_80A6B30(&unknownStruct);
- CpuFill16(0, unknownStruct.unk0, 0x1000);
+ CpuFill16(0, unknownStruct.bgTiles, 0x1000);
CpuFill16(0xFF, unknownStruct.unk4, 0x800);
SetAnimBgAttribute(1, BG_ANIM_PRIORITY, 2);
@@ -694,7 +691,7 @@ void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
battlerSpriteId = gBattlerSpriteIds[battlerId];
gBattle_BG1_X = -(gSprites[battlerSpriteId].pos1.x + gSprites[battlerSpriteId].pos2.x) + 0x20;
- if (IsContest() && IsSpeciesNotUnown(gContestResources->field_18->field_0))
+ if (IsContest() && IsSpeciesNotUnown(gContestResources->field_18->unk0))
gBattle_BG1_X--;
gBattle_BG1_Y = -(gSprites[battlerSpriteId].pos1.y + gSprites[battlerSpriteId].pos2.y) + 0x20;
@@ -712,7 +709,7 @@ void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
else
battlerPosition = GetBattlerPosition(battlerId);
- sub_8118FBC(1, 0, 0, battlerPosition, unknownStruct.unk8, unknownStruct.unk0, unknownStruct.unk4, unknownStruct.unkA);
+ sub_8118FBC(1, 0, 0, battlerPosition, unknownStruct.unk8, unknownStruct.bgTiles, unknownStruct.unk4, unknownStruct.tilesOffset);
if (IsContest())
sub_80A46A0();
@@ -722,7 +719,7 @@ void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
RequestDma3Fill(0, (void*)(VRAM + 0x6000), 0x2000, 1);
RequestDma3Fill(0, (void*)(VRAM + 0xF000), 0x1000, 1);
sub_80A6B90(&unknownStruct, 2);
- CpuFill16(0, unknownStruct.unk0 + 0x1000, 0x1000);
+ CpuFill16(0, unknownStruct.bgTiles + 0x1000, 0x1000);
CpuFill16(0, unknownStruct.unk4 + 0x400, 0x800);
SetAnimBgAttribute(2, BG_ANIM_PRIORITY, 2);
SetAnimBgAttribute(2, BG_ANIM_SCREEN_SIZE, 1);
@@ -742,7 +739,7 @@ void sub_80A438C(u8 battlerId, bool8 toBG_2, bool8 setSpriteInvisible)
LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20);
CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + 0x120), 0x20);
- sub_8118FBC(2, 0, 0, GetBattlerPosition(battlerId), unknownStruct.unk8, unknownStruct.unk0 + 0x1000, unknownStruct.unk4 + 0x400, unknownStruct.unkA);
+ sub_8118FBC(2, 0, 0, GetBattlerPosition(battlerId), unknownStruct.unk8, unknownStruct.bgTiles + 0x1000, unknownStruct.unk4 + 0x400, unknownStruct.tilesOffset);
}
}
@@ -752,7 +749,7 @@ static void sub_80A46A0(void)
struct UnknownAnimStruct2 unknownStruct;
u16 *ptr;
- if (IsSpeciesNotUnown(gContestResources->field_18->field_0))
+ if (IsSpeciesNotUnown(gContestResources->field_18->unk0))
{
sub_80A6B30(&unknownStruct);
ptr = unknownStruct.unk4;
diff --git a/src/battle_anim_80A5C6C.c b/src/battle_anim_80A5C6C.c
new file mode 100644
index 000000000..f4a4946c3
--- /dev/null
+++ b/src/battle_anim_80A5C6C.c
@@ -0,0 +1,2460 @@
+#include "global.h"
+#include "constants/battle_anim.h"
+#include "constants/species.h"
+#include "battle.h"
+#include "battle_anim.h"
+#include "blend_palette.h"
+#include "contest.h"
+#include "data2.h"
+#include "decompress.h"
+#include "palette.h"
+#include "pokemon_icon.h"
+#include "sprite.h"
+#include "task.h"
+#include "trig.h"
+#include "util.h"
+#include "gpu_regs.h"
+#include "bg.h"
+#include "malloc.h"
+#include "dma3.h"
+
+#define GET_UNOWN_LETTER(personality) (( \
+ (((personality & 0x03000000) >> 24) << 6) \
+ | (((personality & 0x00030000) >> 16) << 4) \
+ | (((personality & 0x00000300) >> 8) << 2) \
+ | (((personality & 0x00000003) >> 0) << 0) \
+) % 28)
+
+#define IS_DOUBLE_BATTLE() ((gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
+
+extern const struct OamData gUnknown_0852497C;
+extern const struct MonCoords gMonFrontPicCoords[];
+extern const struct MonCoords gMonBackPicCoords[];
+extern const u8 gEnemyMonElevation[];
+extern const struct CompressedSpriteSheet gMonFrontPicTable[];
+extern const union AffineAnimCmd *gUnknown_082FF6C0[];
+
+// This file's functions.
+void sub_80A64EC(struct Sprite *sprite);
+void sub_80A653C(struct Sprite *sprite);
+void InitAnimLinearTranslation(struct Sprite *sprite);
+void sub_80A6FB4(struct Sprite *sprite);
+void sub_80A6F98(struct Sprite *sprite);
+void sub_80A7144(struct Sprite *sprite);
+void sub_80A791C(struct Sprite *sprite);
+void sub_80A8DFC(struct Sprite *sprite);
+void sub_80A8E88(struct Sprite *sprite);
+void sub_80A7E6C(u8 spriteId);
+u16 sub_80A7F18(u8 spriteId);
+void AnimTask_BlendMonInAndOutSetup(struct Task *task);
+void sub_80A7AFC(u8 taskId);
+void sub_80A8CAC(u8 taskId);
+void AnimTask_BlendMonInAndOutStep(u8 taskId);
+bool8 sub_80A7238(void);
+void sub_80A8048(s16 *bottom, s16 *top, const void *ptr);
+void *sub_80A8050(s16 bottom, s16 top);
+u8 sub_80A82E4(u8 battlerId);
+void sub_80A8D78(struct Task *task, u8 taskId);
+
+// EWRAM vars
+EWRAM_DATA static union AffineAnimCmd *gUnknown_02038444 = NULL;
+
+// Const rom data
+static const struct UCoords8 sBattlerCoords[][4] =
+{
+ {
+ { 72, 80 },
+ { 176, 40 },
+ { 48, 40 },
+ { 112, 80 },
+ },
+ {
+ { 32, 80 },
+ { 200, 40 },
+ { 90, 88 },
+ { 152, 32 },
+ },
+};
+
+// One entry for each of the four Castform forms.
+const struct MonCoords gCastformFrontSpriteCoords[] =
+{
+ { 0x44, 17 }, // NORMAL
+ { 0x66, 9 }, // SUN
+ { 0x46, 9 }, // RAIN
+ { 0x86, 8 }, // HAIL
+};
+
+static const u8 sCastformElevations[] =
+{
+ 13, // NORMAL
+ 14, // SUN
+ 13, // RAIN
+ 13, // HAIL
+};
+
+// Y position of the backsprite for each of the four Castform forms.
+static const u8 sCastformBackSpriteYCoords[] =
+{
+ 0, // NORMAL
+ 0, // SUN
+ 0, // RAIN
+ 0, // HAIL
+};
+
+static const struct SpriteTemplate sUnknown_08525F90[] =
+{
+ {
+ .tileTag = 55125,
+ .paletteTag = 55125,
+ .oam = &gUnknown_0852497C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ },
+ {
+ .tileTag = 55126,
+ .paletteTag = 55126,
+ .oam = &gUnknown_0852497C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+ }
+};
+
+static const struct SpriteSheet sUnknown_08525FC0[] =
+{
+ { gMiscBlank_Gfx, 0x800, 55125, },
+ { gMiscBlank_Gfx, 0x800, 55126, },
+};
+
+// code
+u8 GetBattlerSpriteCoord(u8 battlerId, u8 attributeId)
+{
+ u8 retVal;
+ u16 species;
+ struct BattleSpriteInfo *spriteInfo;
+
+ if (IsContest())
+ {
+ if (attributeId == BATTLER_COORD_3 && battlerId == 3)
+ attributeId = BATTLER_COORD_Y;
+ }
+
+ switch (attributeId)
+ {
+ case BATTLER_COORD_X:
+ case BATTLER_COORD_X_2:
+ retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].x;
+ break;
+ case BATTLER_COORD_Y:
+ retVal = sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].y;
+ break;
+ case BATTLER_COORD_3:
+ case BATTLER_COORD_4:
+ default:
+ if (IsContest())
+ {
+ if (shared19348.unk4_0)
+ species = shared19348.unk2;
+ else
+ species = shared19348.unk0;
+ }
+ else
+ {
+ if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+ }
+ }
+ if (attributeId == BATTLER_COORD_3)
+ retVal = GetBattlerSpriteFinal_Y(battlerId, species, TRUE);
+ else
+ retVal = GetBattlerSpriteFinal_Y(battlerId, species, FALSE);
+ break;
+ }
+
+ return retVal;
+}
+
+u8 GetBattlerYDelta(u8 battlerId, u16 species)
+{
+ u16 letter;
+ u32 personality;
+ struct BattleSpriteInfo *spriteInfo;
+ u8 ret;
+ u16 coordSpecies;
+
+ if (GetBattlerSide(battlerId) == B_SIDE_PLAYER || IsContest())
+ {
+ if (species == SPECIES_UNOWN)
+ {
+ if (IsContest())
+ {
+ if (shared19348.unk4_0)
+ personality = shared19348.unk10;
+ else
+ personality = shared19348.unk8;
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ else
+ personality = gTransformedPersonalities[battlerId];
+ }
+ letter = GET_UNOWN_LETTER(personality);
+ if (!letter)
+ coordSpecies = species;
+ else
+ coordSpecies = letter + SPECIES_UNOWN_B - 1;
+ ret = gMonBackPicCoords[coordSpecies].y_offset;
+ }
+ else if (species == SPECIES_CASTFORM)
+ {
+ ret = sCastformBackSpriteYCoords[gBattleMonForms[battlerId]];
+ }
+ else if (species > NUM_SPECIES)
+ {
+ ret = gMonBackPicCoords[0].y_offset;
+ }
+ else
+ {
+ ret = gMonBackPicCoords[species].y_offset;
+ }
+ }
+ else
+ {
+ if (species == SPECIES_UNOWN)
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ else
+ personality = gTransformedPersonalities[battlerId];
+ letter = GET_UNOWN_LETTER(personality);
+ if (!letter)
+ coordSpecies = species;
+ else
+ coordSpecies = letter + SPECIES_UNOWN_B - 1;
+ ret = gMonFrontPicCoords[coordSpecies].y_offset;
+ }
+ else if (species == SPECIES_CASTFORM)
+ {
+ ret = gCastformFrontSpriteCoords[gBattleMonForms[battlerId]].y_offset;
+ }
+ else if (species > NUM_SPECIES)
+ {
+ ret = gMonFrontPicCoords[0].y_offset;
+ }
+ else
+ {
+ ret = gMonFrontPicCoords[species].y_offset;
+ }
+ }
+ return ret;
+}
+
+u8 GetBattlerElevation(u8 battlerId, u16 species)
+{
+ u8 ret = 0;
+ if (GetBattlerSide(battlerId) == B_SIDE_OPPONENT)
+ {
+ if (!IsContest())
+ {
+ if (species == SPECIES_CASTFORM)
+ ret = sCastformElevations[gBattleMonForms[battlerId]];
+ else if (species > NUM_SPECIES)
+ ret = gEnemyMonElevation[0];
+ else
+ ret = gEnemyMonElevation[species];
+ }
+ }
+ return ret;
+}
+
+u8 GetBattlerSpriteFinal_Y(u8 battlerId, u16 species, bool8 a3)
+{
+ u16 offset;
+ u8 y;
+
+ if (GetBattlerSide(battlerId) == B_SIDE_PLAYER || IsContest())
+ {
+ offset = GetBattlerYDelta(battlerId, species);
+ }
+ else
+ {
+ offset = GetBattlerYDelta(battlerId, species);
+ offset -= GetBattlerElevation(battlerId, species);
+ }
+ y = offset + sBattlerCoords[IS_DOUBLE_BATTLE()][GetBattlerPosition(battlerId)].y;
+ if (a3)
+ {
+ if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ y += 8;
+ if (y > 104)
+ y = 104;
+ }
+ return y;
+}
+
+u8 GetBattlerSpriteCoord2(u8 battlerId, u8 attributeId)
+{
+ u16 species;
+ struct BattleSpriteInfo *spriteInfo;
+
+ if (attributeId == BATTLER_COORD_3 || attributeId == BATTLER_COORD_4)
+ {
+ if (IsContest())
+ {
+ if (shared19348.unk4_0)
+ species = shared19348.unk2;
+ else
+ species = shared19348.unk0;
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = gAnimBattlerSpecies[battlerId];
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+ }
+ if (attributeId == BATTLER_COORD_3)
+ return GetBattlerSpriteFinal_Y(battlerId, species, TRUE);
+ else
+ return GetBattlerSpriteFinal_Y(battlerId, species, FALSE);
+ }
+ else
+ {
+ return GetBattlerSpriteCoord(battlerId, attributeId);
+ }
+}
+
+u8 GetBattlerSpriteDefault_Y(u8 battlerId)
+{
+ return GetBattlerSpriteCoord(battlerId, BATTLER_COORD_4);
+}
+
+u8 GetSubstituteSpriteDefault_Y(u8 battlerId)
+{
+ u16 y;
+ if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 16;
+ else
+ y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 17;
+ return y;
+}
+
+u8 GetBattlerYCoordWithElevation(u8 battlerId)
+{
+ u16 species;
+ u8 y;
+ struct BattleSpriteInfo *spriteInfo;
+
+ y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y);
+ if (!IsContest())
+ {
+ if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+ }
+ if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ y -= GetBattlerElevation(battlerId, species);
+ }
+ return y;
+}
+
+u8 GetAnimBattlerSpriteId(u8 which)
+{
+ u8 *sprites;
+
+ if (which == ANIM_ATTACKER)
+ {
+ if (IsBattlerSpritePresent(gBattleAnimAttacker))
+ {
+ sprites = gBattlerSpriteIds;
+ return sprites[gBattleAnimAttacker];
+ }
+ else
+ {
+ return 0xff;
+ }
+ }
+ else if (which == ANIM_TARGET)
+ {
+ if (IsBattlerSpritePresent(gBattleAnimTarget))
+ {
+ sprites = gBattlerSpriteIds;
+ return sprites[gBattleAnimTarget];
+ }
+ else
+ {
+ return 0xff;
+ }
+ }
+ else if (which == ANIM_ATK_PARTNER)
+ {
+ if (!IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker)))
+ return 0xff;
+ else
+ return gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)];
+ }
+ else
+ {
+ if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget)))
+ return gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimTarget)];
+ else
+ return 0xff;
+ }
+}
+
+void StoreSpriteCallbackInData6(struct Sprite *sprite, void (*callback)(struct Sprite*))
+{
+ sprite->data[6] = (u32)(callback) & 0xffff;
+ sprite->data[7] = (u32)(callback) >> 16;
+}
+
+void SetCallbackToStoredInData6(struct Sprite *sprite)
+{
+ u32 callback = (u16)sprite->data[6] | (sprite->data[7] << 16);
+ sprite->callback = (void (*)(struct Sprite *))callback;
+}
+
+void sub_80A62EC(struct Sprite *sprite)
+{
+ if (sprite->data[3])
+ {
+ sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
+ sprite->pos2.y = Cos(sprite->data[0], sprite->data[1]);
+ sprite->data[0] += sprite->data[2];
+ if (sprite->data[0] >= 0x100)
+ sprite->data[0] -= 0x100;
+ else if (sprite->data[0] < 0)
+ sprite->data[0] += 0x100;
+ sprite->data[3]--;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A634C(struct Sprite *sprite)
+{
+ if (sprite->data[3])
+ {
+ sprite->pos2.x = Sin(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
+ sprite->pos2.y = Cos(sprite->data[0], (sprite->data[5] >> 8) + sprite->data[1]);
+ sprite->data[0] += sprite->data[2];
+ sprite->data[5] += sprite->data[4];
+ if (sprite->data[0] >= 0x100)
+ sprite->data[0] -= 0x100;
+ else if (sprite->data[0] < 0)
+ sprite->data[0] += 0x100;
+ sprite->data[3]--;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A63C8(struct Sprite *sprite)
+{
+ if (sprite->data[3])
+ {
+ sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
+ sprite->pos2.y = Cos(sprite->data[4], sprite->data[1]);
+ sprite->data[0] += sprite->data[2];
+ sprite->data[4] += sprite->data[5];
+ if (sprite->data[0] >= 0x100)
+ sprite->data[0] -= 0x100;
+ else if (sprite->data[0] < 0)
+ sprite->data[0] += 0x100;
+ if (sprite->data[4] >= 0x100)
+ sprite->data[4] -= 0x100;
+ else if (sprite->data[4] < 0)
+ sprite->data[4] += 0x100;
+ sprite->data[3]--;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A6450(struct Sprite *sprite)
+{
+ if (sprite->data[3])
+ {
+ sprite->pos2.x = Sin(sprite->data[0], sprite->data[1]);
+ sprite->pos2.y = Cos(sprite->data[0], sprite->data[4]);
+ sprite->data[0] += sprite->data[2];
+ if (sprite->data[0] >= 0x100)
+ sprite->data[0] -= 0x100;
+ else if (sprite->data[0] < 0)
+ sprite->data[0] += 0x100;
+ sprite->data[3]--;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+// Simply waits until the sprite's data[0] hits zero.
+// This is used to let sprite anims or affine anims to run for a designated
+// duration.
+void sub_80A64B0(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ sprite->data[0]--;
+ else
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A64D0(struct Sprite *sprite)
+{
+ sub_80A64EC(sprite);
+ sprite->callback = sub_80A653C;
+ sprite->callback(sprite);
+}
+
+void sub_80A64EC(struct Sprite *sprite)
+{
+ s16 old;
+ int v1;
+
+ if (sprite->data[1] > sprite->data[2])
+ sprite->data[0] = -sprite->data[0];
+ v1 = sprite->data[2] - sprite->data[1];
+ old = sprite->data[0];
+ sprite->data[0] = abs(v1 / sprite->data[0]);
+ sprite->data[2] = (sprite->data[4] - sprite->data[3]) / sprite->data[0];
+ sprite->data[1] = old;
+}
+
+void sub_80A653C(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ sprite->pos2.x += sprite->data[1];
+ sprite->pos2.y += sprite->data[2];
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A656C(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ sprite->data[3] += sprite->data[1];
+ sprite->data[4] += sprite->data[2];
+ sprite->pos2.x = sprite->data[3] >> 8;
+ sprite->pos2.y = sprite->data[4] >> 8;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A65A8(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ sprite->data[3] += sprite->data[1];
+ sprite->data[4] += sprite->data[2];
+ sprite->pos2.x = sprite->data[3] >> 8;
+ sprite->pos2.y = sprite->data[4] >> 8;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+ UpdateMonIconFrame(sprite);
+}
+
+void sub_80A65EC(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
+ sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
+ sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2);
+ sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3);
+ sprite->callback = sub_80A64D0;
+}
+
+void sub_80A6630(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ gSprites[sprite->data[3]].pos2.x += sprite->data[1];
+ gSprites[sprite->data[3]].pos2.y += sprite->data[2];
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+// Same as sub_80A6630, but it operates on sub-pixel values
+// to handle slower translations.
+void sub_80A6680(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ sprite->data[3] += sprite->data[1];
+ sprite->data[4] += sprite->data[2];
+ gSprites[sprite->data[5]].pos2.x = sprite->data[3] >> 8;
+ gSprites[sprite->data[5]].pos2.y = sprite->data[4] >> 8;
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void sub_80A66DC(struct Sprite *sprite)
+{
+ if (sprite->data[0] > 0)
+ {
+ sprite->data[0]--;
+ sprite->pos2.x = sprite->data[2] >> 8;
+ sprite->data[2] += sprite->data[1];
+ sprite->pos2.y = sprite->data[4] >> 8;
+ sprite->data[4] += sprite->data[3];
+ if (sprite->data[0] % sprite->data[5] == 0)
+ {
+ if (sprite->data[5])
+ sprite->invisible ^= 1;
+ }
+ }
+ else
+ {
+ SetCallbackToStoredInData6(sprite);
+ }
+}
+
+void move_anim_8074EE0(struct Sprite *sprite)
+{
+ FreeSpriteOamMatrix(sprite);
+ DestroyAnimSprite(sprite);
+}
+
+void sub_80A6760(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x + sprite->pos2.x;
+ sprite->data[3] = sprite->pos1.y + sprite->pos2.y;
+ sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
+ sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
+ sprite->callback = sub_80A64D0;
+}
+
+void sub_80A67A4(struct Sprite *sprite)
+{
+ ResetPaletteStructByUid(sprite->data[5]);
+ move_anim_8074EE0(sprite);
+}
+
+void sub_80A67BC(struct Sprite *sprite)
+{
+ if (sprite->affineAnimEnded)
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A67D8(struct Sprite *sprite)
+{
+ if (sprite->animEnded)
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A67F4(struct Sprite *sprite)
+{
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDALPHA, 0);
+ DestroyAnimSprite(sprite);
+}
+
+void sub_80A6814(u8 taskId)
+{
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDALPHA, 0);
+ DestroyAnimVisualTask(taskId);
+}
+
+void sub_80A6838(struct Sprite *sprite)
+{
+ sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2);
+ sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3);
+}
+
+void sub_80A6864(struct Sprite *sprite, s16 a2)
+{
+ u16 v1 = GetBattlerSpriteCoord(gBattleAnimAttacker, 0);
+ u16 v2 = GetBattlerSpriteCoord(gBattleAnimTarget, 0);
+
+ if (v1 > v2)
+ {
+ sprite->pos1.x -= a2;
+ }
+ else if (v1 < v2)
+ {
+ sprite->pos1.x += a2;
+ }
+ else
+ {
+ if (GetBattlerSide(gBattleAnimAttacker) != 0)
+ sprite->pos1.x -= a2;
+ else
+ sprite->pos1.x += a2;
+ }
+}
+
+void sub_80A68D4(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ InitAnimLinearTranslation(sprite);
+ sprite->data[6] = 0x8000 / sprite->data[0];
+ sprite->data[7] = 0;
+}
+
+bool8 TranslateAnimArc(struct Sprite *sprite)
+{
+ if (TranslateAnimLinear(sprite))
+ return TRUE;
+ sprite->data[7] += sprite->data[6];
+ sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
+ return FALSE;
+}
+
+bool8 sub_80A6934(struct Sprite *sprite)
+{
+ if (TranslateAnimLinear(sprite))
+ return TRUE;
+ sprite->data[7] += sprite->data[6];
+ sprite->pos2.x += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]);
+ return FALSE;
+}
+
+void oamt_add_pos2_onto_pos1(struct Sprite *sprite)
+{
+ sprite->pos1.x += sprite->pos2.x;
+ sprite->pos1.y += sprite->pos2.y;
+ sprite->pos2.x = 0;
+ sprite->pos2.y = 0;
+}
+
+void sub_80A6980(struct Sprite *sprite, bool8 a2)
+{
+ if (!a2)
+ {
+ sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimTarget, 0);
+ sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimTarget, 1);
+ }
+ sub_80A6864(sprite, gBattleAnimArgs[0]);
+ sprite->pos1.y += gBattleAnimArgs[1];
+}
+
+void sub_80A69CC(struct Sprite *sprite, u8 a2)
+{
+ if (!a2)
+ {
+ sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 0);
+ sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 1);
+ }
+ else
+ {
+ sprite->pos1.x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 2);
+ sprite->pos1.y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 3);
+ }
+ sub_80A6864(sprite, gBattleAnimArgs[0]);
+ sprite->pos1.y += gBattleAnimArgs[1];
+}
+
+u8 GetBattlerSide(u8 battlerId)
+{
+ return GET_BATTLER_SIDE2(battlerId);
+}
+
+u8 GetBattlerPosition(u8 battlerId)
+{
+ return GET_BATTLER_POSITION(battlerId);
+}
+
+u8 GetBattlerAtPosition(u8 position)
+{
+ u8 i;
+
+ for (i = 0; i < gBattlersCount; i++)
+ {
+ if (gBattlerPositions[i] == position)
+ break;
+ }
+ return i;
+}
+
+bool8 IsBattlerSpritePresent(u8 battlerId)
+{
+ if (IsContest())
+ {
+ if (gBattleAnimAttacker == battlerId)
+ return TRUE;
+ else if (gBattleAnimTarget == battlerId)
+ return TRUE;
+ else
+ return FALSE;
+ }
+ else
+ {
+ if (gBattlerPositions[battlerId] == 0xff)
+ {
+ return FALSE;
+ }
+ else if (GetBattlerSide(battlerId) != B_SIDE_PLAYER)
+ {
+ if (GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_HP) != 0)
+ return TRUE;
+ }
+ else
+ {
+ if (GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_HP) != 0)
+ return TRUE;
+ }
+ }
+ return FALSE;
+}
+
+bool8 IsDoubleBattle()
+{
+ return IS_DOUBLE_BATTLE();
+}
+
+void sub_80A6B30(struct UnknownAnimStruct2 *unk)
+{
+ if (IsContest())
+ {
+ unk->bgTiles = gUnknown_0202305C;
+ unk->unk4 = (u16 *)gUnknown_02023060;
+ unk->unk8 = 0xe;
+ unk->bgId = 1;
+ unk->tilesOffset = 0;
+ unk->unkC = 0;
+ }
+ else
+ {
+ unk->bgTiles = gUnknown_0202305C;
+ unk->unk4 = (u16 *)gUnknown_02023060;
+ unk->unk8 = 0x8;
+ unk->bgId = 1;
+ unk->tilesOffset = 0x200;
+ unk->unkC = 0;
+ }
+}
+
+void sub_80A6B90(struct UnknownAnimStruct2 *unk, u32 arg1)
+{
+ if (IsContest())
+ {
+ unk->bgTiles = gUnknown_0202305C;
+ unk->unk4 = (u16 *)gUnknown_02023060;
+ unk->unk8 = 0xe;
+ unk->bgId = 1;
+ unk->tilesOffset = 0;
+ unk->unkC = 0;
+ }
+ else if (arg1 == 1)
+ {
+ sub_80A6B30(unk);
+ }
+ else
+ {
+ unk->bgTiles = gUnknown_0202305C;
+ unk->unk4 = (u16 *)gUnknown_02023060;
+ unk->unk8 = 0x9;
+ unk->bgId = 2;
+ unk->tilesOffset = 0x300;
+ unk->unkC = 0;
+ }
+}
+
+void sub_80A6BFC(struct UnknownAnimStruct2 *unk)
+{
+ unk->bgTiles = gUnknown_0202305C;
+ unk->unk4 = (u16 *)gUnknown_02023060;
+ if (IsContest())
+ {
+ unk->unk8 = 0xe;
+ unk->bgId = 1;
+ unk->tilesOffset = 0;
+ unk->unkC = 0;
+ }
+ else if (sub_80A8364(gBattleAnimAttacker) == 1)
+ {
+ unk->unk8 = 8;
+ unk->bgId = 1;
+ unk->tilesOffset = 0x200;
+ unk->unkC = 0;
+ }
+ else
+ {
+ unk->unk8 = 0x9;
+ unk->bgId = 2;
+ unk->tilesOffset = 0x300;
+ unk->unkC = 0;
+ }
+}
+
+void sub_80A6C68(u32 arg0)
+{
+ struct UnknownAnimStruct2 unkStruct;
+
+ sub_80A6B90(&unkStruct, arg0);
+ CpuFill32(0, unkStruct.bgTiles, 0x2000);
+ LoadBgTiles(unkStruct.bgId, unkStruct.bgTiles, 0x2000, unkStruct.tilesOffset);
+ FillBgTilemapBufferRect(unkStruct.bgId, 0, 0, 0, 0x20, 0x40, 0x11);
+ CopyBgTilemapBufferToVram(unkStruct.bgId);
+}
+
+void sub_80A6CC0(u32 bgId, void *src, u32 tilesOffset)
+{
+ CpuFill32(0, gUnknown_0202305C, 0x2000);
+ LZDecompressWram(src, gUnknown_0202305C);
+ LoadBgTiles(bgId, gUnknown_0202305C, 0x2000, tilesOffset);
+}
+
+void sub_80A6D10(u32 bgId, const void *src)
+{
+ FillBgTilemapBufferRect(bgId, 0, 0, 0, 0x20, 0x40, 0x11);
+ CopyToBgTilemapBuffer(bgId, src, 0, 0);
+}
+
+void sub_80A6D48(u32 bgId, const void *src)
+{
+ sub_80A6D10(bgId, src);
+ CopyBgTilemapBufferToVram(bgId);
+}
+
+void sub_80A6D60(struct UnknownAnimStruct2 *unk, const void *src, u32 arg2)
+{
+ sub_80A6D10(unk->bgId, src);
+ if (IsContest() == TRUE)
+ sub_80A4720(unk->unk8, unk->unk4, 0, arg2);
+ CopyBgTilemapBufferToVram(unk->bgId);
+}
+
+u8 sub_80A6D94(void)
+{
+ if (IsContest())
+ return 1;
+ else
+ return 2;
+}
+
+void sub_80A6DAC(bool8 arg0)
+{
+ if (!arg0 || IsContest())
+ {
+ SetAnimBgAttribute(3, BG_ANIM_SCREEN_SIZE, 0);
+ SetAnimBgAttribute(3, BG_ANIM_AREA_OVERFLOW_MODE, 1);
+ }
+ else
+ {
+ SetAnimBgAttribute(3, BG_ANIM_SCREEN_SIZE, 1);
+ SetAnimBgAttribute(3, BG_ANIM_AREA_OVERFLOW_MODE, 0);
+ }
+}
+
+void sub_80A6DEC(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ sub_80A6E14(sprite);
+ sprite->callback = sub_80A65A8;
+ sprite->callback(sprite);
+}
+
+void sub_80A6E14(struct Sprite *sprite)
+{
+ s16 x = (sprite->data[2] - sprite->data[1]) << 8;
+ s16 y = (sprite->data[4] - sprite->data[3]) << 8;
+ sprite->data[1] = x / sprite->data[0];
+ sprite->data[2] = y / sprite->data[0];
+ sprite->data[4] = 0;
+ sprite->data[3] = 0;
+}
+
+void InitAnimLinearTranslation(struct Sprite *sprite)
+{
+ int x = sprite->data[2] - sprite->data[1];
+ int y = sprite->data[4] - sprite->data[3];
+ bool8 movingLeft = x < 0;
+ bool8 movingUp = y < 0;
+ u16 xDelta = abs(x) << 8;
+ u16 yDelta = abs(y) << 8;
+
+ xDelta = xDelta / sprite->data[0];
+ yDelta = yDelta / sprite->data[0];
+
+ if (movingLeft)
+ xDelta |= 1;
+ else
+ xDelta &= ~1;
+
+ if (movingUp)
+ yDelta |= 1;
+ else
+ yDelta &= ~1;
+
+ sprite->data[1] = xDelta;
+ sprite->data[2] = yDelta;
+ sprite->data[4] = 0;
+ sprite->data[3] = 0;
+}
+
+void sub_80A6EEC(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ InitAnimLinearTranslation(sprite);
+ sprite->callback = sub_80A6F98;
+ sprite->callback(sprite);
+}
+
+void sub_80A6F14(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ InitAnimLinearTranslation(sprite);
+ sprite->callback = sub_80A6FB4;
+ sprite->callback(sprite);
+}
+
+bool8 TranslateAnimLinear(struct Sprite *sprite)
+{
+ u16 v1, v2, x, y;
+
+ if (!sprite->data[0])
+ return TRUE;
+
+ v1 = sprite->data[1];
+ v2 = sprite->data[2];
+ x = sprite->data[3];
+ y = sprite->data[4];
+ x += v1;
+ y += v2;
+
+ if (v1 & 1)
+ sprite->pos2.x = -(x >> 8);
+ else
+ sprite->pos2.x = x >> 8;
+
+ if (v2 & 1)
+ sprite->pos2.y = -(y >> 8);
+ else
+ sprite->pos2.y = y >> 8;
+
+ sprite->data[3] = x;
+ sprite->data[4] = y;
+ sprite->data[0]--;
+ return FALSE;
+}
+
+void sub_80A6F98(struct Sprite *sprite)
+{
+ if (TranslateAnimLinear(sprite))
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A6FB4(struct Sprite *sprite)
+{
+ sub_8039E9C(sprite);
+ if (TranslateAnimLinear(sprite))
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A6FD4(struct Sprite *sprite)
+{
+ int v1 = abs(sprite->data[2] - sprite->data[1]) << 8;
+ sprite->data[0] = v1 / sprite->data[0];
+ InitAnimLinearTranslation(sprite);
+}
+
+void sub_80A7000(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ sub_80A6FD4(sprite);
+ sprite->callback = sub_80A6F98;
+ sprite->callback(sprite);
+}
+
+void sub_80A7028(struct Sprite *sprite)
+{
+ int x = sprite->data[2] - sprite->data[1];
+ int y = sprite->data[4] - sprite->data[3];
+ bool8 x_sign = x < 0;
+ bool8 y_sign = y < 0;
+ u16 x2 = abs(x) << 4;
+ u16 y2 = abs(y) << 4;
+
+ x2 /= sprite->data[0];
+ y2 /= sprite->data[0];
+
+ if (x_sign)
+ x2 |= 1;
+ else
+ x2 &= ~1;
+
+ if (y_sign)
+ y2 |= 1;
+ else
+ y2 &= ~1;
+
+ sprite->data[1] = x2;
+ sprite->data[2] = y2;
+ sprite->data[4] = 0;
+ sprite->data[3] = 0;
+}
+
+void sub_80A70C0(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ sub_80A7028(sprite);
+ sprite->callback = sub_80A7144;
+ sprite->callback(sprite);
+}
+
+bool8 sub_80A70E8(struct Sprite *sprite)
+{
+ u16 v1, v2, x, y;
+
+ if (!sprite->data[0])
+ return TRUE;
+
+ v1 = sprite->data[1];
+ v2 = sprite->data[2];
+ x = sprite->data[3];
+ y = sprite->data[4];
+ x += v1;
+ y += v2;
+
+ if (v1 & 1)
+ sprite->pos2.x = -(x >> 4);
+ else
+ sprite->pos2.x = x >> 4;
+
+ if (v2 & 1)
+ sprite->pos2.y = -(y >> 4);
+ else
+ sprite->pos2.y = y >> 4;
+
+ sprite->data[3] = x;
+ sprite->data[4] = y;
+ sprite->data[0]--;
+ return FALSE;
+}
+
+void sub_80A7144(struct Sprite *sprite)
+{
+ if (sub_80A70E8(sprite))
+ SetCallbackToStoredInData6(sprite);
+}
+
+void sub_80A7160(struct Sprite *sprite)
+{
+ int v1 = abs(sprite->data[2] - sprite->data[1]) << 4;
+ sprite->data[0] = v1 / sprite->data[0];
+ sub_80A7028(sprite);
+}
+
+void sub_80A718C(struct Sprite *sprite)
+{
+ sprite->data[1] = sprite->pos1.x;
+ sprite->data[3] = sprite->pos1.y;
+ sub_80A7160(sprite);
+ sprite->callback = sub_80A7144;
+ sprite->callback(sprite);
+}
+
+void obj_id_set_rotscale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation)
+{
+ int i;
+ struct ObjAffineSrcData src;
+ struct OamMatrix matrix;
+
+ src.xScale = xScale;
+ src.yScale = yScale;
+ src.rotation = rotation;
+ if (sub_80A7238())
+ src.xScale = -src.xScale;
+ i = gSprites[spriteId].oam.matrixNum;
+ ObjAffineSet(&src, &matrix, 1, 2);
+ gOamMatrices[i].a = matrix.a;
+ gOamMatrices[i].b = matrix.b;
+ gOamMatrices[i].c = matrix.c;
+ gOamMatrices[i].d = matrix.d;
+}
+
+bool8 sub_80A7238(void)
+{
+ if (IsContest())
+ {
+ if (gSprites[GetAnimBattlerSpriteId(ANIM_ATTACKER)].data[2] == SPECIES_UNOWN)
+ return FALSE;
+ else
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+void sub_80A7270(u8 spriteId, u8 objMode)
+{
+ u8 battlerId = gSprites[spriteId].data[0];
+
+ if (IsContest() || IsBattlerSpriteVisible(battlerId))
+ gSprites[spriteId].invisible = FALSE;
+ gSprites[spriteId].oam.objMode = objMode;
+ gSprites[spriteId].affineAnimPaused = TRUE;
+ if (!IsContest() && !gSprites[spriteId].oam.affineMode)
+ gSprites[spriteId].oam.matrixNum = gBattleSpritesDataPtr->healthBoxesData[battlerId].field_6;
+ gSprites[spriteId].oam.affineMode = 3;
+ CalcCenterToCornerVec(&gSprites[spriteId], gSprites[spriteId].oam.shape, gSprites[spriteId].oam.size, gSprites[spriteId].oam.affineMode);
+}
+
+void sub_80A7344(u8 spriteId)
+{
+ obj_id_set_rotscale(spriteId, 0x100, 0x100, 0);
+ gSprites[spriteId].oam.affineMode = 1;
+ gSprites[spriteId].oam.objMode = 0;
+ gSprites[spriteId].affineAnimPaused = FALSE;
+ CalcCenterToCornerVec(&gSprites[spriteId], gSprites[spriteId].oam.shape, gSprites[spriteId].oam.size, gSprites[spriteId].oam.affineMode);
+}
+
+void sub_80A73A0(u8 spriteId)
+{
+ u16 matrix = gSprites[spriteId].oam.matrixNum;
+ s16 c = gOamMatrices[matrix].c;
+
+ if (c < 0)
+ c = -c;
+ gSprites[spriteId].pos2.y = c >> 3;
+}
+
+// related to obj_id_set_rotscale
+void sub_80A73E0(struct Sprite *sprite, bool8 a2, s16 xScale, s16 yScale, u16 rotation)
+{
+ int i;
+ struct ObjAffineSrcData src;
+ struct OamMatrix matrix;
+
+ if (sprite->oam.affineMode & 1)
+ {
+ sprite->affineAnimPaused = TRUE;
+ if (a2)
+ CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode);
+ src.xScale = xScale;
+ src.yScale = yScale;
+ src.rotation = rotation;
+ if (sub_80A7238())
+ src.xScale = -src.xScale;
+ i = sprite->oam.matrixNum;
+ ObjAffineSet(&src, &matrix, 1, 2);
+ gOamMatrices[i].a = matrix.a;
+ gOamMatrices[i].b = matrix.b;
+ gOamMatrices[i].c = matrix.c;
+ gOamMatrices[i].d = matrix.d;
+ }
+}
+
+void sub_80A749C(struct Sprite *sprite)
+{
+ sub_80A73E0(sprite, TRUE, 0x100, 0x100, 0);
+ sprite->affineAnimPaused = FALSE;
+ CalcCenterToCornerVec(sprite, sprite->oam.shape, sprite->oam.size, sprite->oam.affineMode);
+}
+
+static u16 ArcTan2_(s16 a, s16 b)
+{
+ return ArcTan2(a, b);
+}
+
+u16 ArcTan2Neg(s16 a, s16 b)
+{
+ u16 var = ArcTan2_(a, b);
+ return -var;
+}
+
+void sub_80A750C(u16 a1, bool8 a2)
+{
+ int i;
+ struct PlttData *c;
+ struct PlttData *c2;
+ u16 average;
+
+ a1 *= 0x10;
+
+ if (!a2)
+ {
+ for (i = 0; i < 0x10; i++)
+ {
+ c = (struct PlttData *)&gPlttBufferUnfaded[a1 + i];
+ average = c->r + c->g + c->b;
+ average /= 3;
+
+ c2 = (struct PlttData *)&gPlttBufferFaded[a1 + i];
+ c2->r = average;
+ c2->g = average;
+ c2->b = average;
+ }
+ }
+ else
+ {
+ CpuCopy32(&gPlttBufferUnfaded[a1], &gPlttBufferFaded[a1], 0x20);
+ }
+}
+
+u32 sub_80A75AC(u8 a1, u8 a2, u8 a3, u8 a4, u8 a5, u8 a6, u8 a7)
+{
+ u32 var = 0;
+ u32 shift;
+
+ if (a1)
+ {
+ if (!IsContest())
+ var = 0xe;
+ else
+ var = 1 << sub_80A6D94();
+ }
+ if (a2)
+ {
+ shift = gBattleAnimAttacker + 16;
+ var |= 1 << shift;
+ }
+ if (a3) {
+ shift = gBattleAnimTarget + 16;
+ var |= 1 << shift;
+ }
+ if (a4)
+ {
+ if (IsBattlerSpriteVisible(gBattleAnimAttacker ^ 2))
+ {
+ shift = (gBattleAnimAttacker ^ 2) + 16;
+ var |= 1 << shift;
+ }
+ }
+ if (a5)
+ {
+ if (IsBattlerSpriteVisible(gBattleAnimTarget ^ 2))
+ {
+ shift = (gBattleAnimTarget ^ 2) + 16;
+ var |= 1 << shift;
+ }
+ }
+ if (a6)
+ {
+ if (!IsContest())
+ var |= 0x100;
+ else
+ var |= 0x4000;
+ }
+ if (a7)
+ {
+ if (!IsContest())
+ var |= 0x200;
+ }
+ return var;
+}
+
+u32 sub_80A76C4(u8 a1, u8 a2, u8 a3, u8 a4)
+{
+ u32 var = 0;
+ u32 shift;
+
+ if (IsContest())
+ {
+ if (a1)
+ {
+ var |= 1 << 18;
+ return var;
+ }
+ }
+ else
+ {
+ if (a1)
+ {
+ if (IsBattlerSpriteVisible(GetBattlerAtPosition(B_POSITION_PLAYER_LEFT)))
+ {
+ var |= 1 << (GetBattlerAtPosition(B_POSITION_PLAYER_LEFT) + 16);
+ }
+ }
+ if (a2)
+ {
+ if (IsBattlerSpriteVisible(GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT)))
+ {
+ shift = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT) + 16;
+ var |= 1 << shift;
+ }
+ }
+ if (a3)
+ {
+ if (IsBattlerSpriteVisible(GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT)))
+ {
+ shift = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT) + 16;
+ var |= 1 << shift;
+ }
+ }
+ if (a4)
+ {
+ if (IsBattlerSpriteVisible(GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT)))
+ {
+ shift = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT) + 16;
+ var |= 1 << shift;
+ }
+ }
+ }
+ return var;
+}
+
+u8 sub_80A77AC(u8 a1)
+{
+ return a1;
+}
+
+u8 sub_80A77B4(u8 position)
+{
+ return GetBattlerAtPosition(position);
+}
+
+void sub_80A77C8(struct Sprite *sprite)
+{
+ bool8 var;
+
+ if (!sprite->data[0])
+ {
+ if (!gBattleAnimArgs[3])
+ var = TRUE;
+ else
+ var = FALSE;
+ if (!gBattleAnimArgs[2])
+ sub_80A69CC(sprite, var);
+ else
+ sub_80A6980(sprite, var);
+ sprite->data[0]++;
+
+ }
+ else if (sprite->animEnded || sprite->affineAnimEnded)
+ {
+ move_anim_8074EE0(sprite);
+ }
+}
+
+// Linearly translates a sprite to a target position on the
+// other mon's sprite.
+// arg 0: initial x offset
+// arg 1: initial y offset
+// arg 2: target x offset
+// arg 3: target y offset
+// arg 4: duration
+// arg 5: lower 8 bits = location on attacking mon, upper 8 bits = location on target mon pick to target
+void TranslateAnimSpriteToTargetMonLocation(struct Sprite *sprite)
+{
+ bool8 v1;
+ u8 attributeId;
+
+ if (!(gBattleAnimArgs[5] & 0xff00))
+ v1 = TRUE;
+ else
+ v1 = FALSE;
+
+ if (!(gBattleAnimArgs[5] & 0xff))
+ attributeId = BATTLER_COORD_3;
+ else
+ attributeId = BATTLER_COORD_Y;
+
+ sub_80A69CC(sprite, v1);
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+
+ sprite->data[0] = gBattleAnimArgs[4];
+ sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
+ sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, attributeId) + gBattleAnimArgs[3];
+ sprite->callback = sub_80A6EEC;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
+
+void sub_80A78AC(struct Sprite *sprite)
+{
+ sub_80A69CC(sprite, 1);
+ if (GetBattlerSide(gBattleAnimAttacker))
+ gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+ sprite->data[0] = gBattleAnimArgs[4];
+ sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[2];
+ sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[3];
+ sprite->data[5] = gBattleAnimArgs[5];
+ sub_80A68D4(sprite);
+ sprite->callback = sub_80A791C;
+}
+
+void sub_80A791C(struct Sprite *sprite)
+{
+ if (TranslateAnimArc(sprite))
+ DestroyAnimSprite(sprite);
+}
+
+void sub_80A7938(struct Sprite *sprite)
+{
+ bool8 r4;
+ u8 battlerId, attributeId;
+
+ if (!gBattleAnimArgs[6])
+ {
+ r4 = TRUE;
+ attributeId = BATTLER_COORD_3;
+ }
+ else
+ {
+ r4 = FALSE;
+ attributeId = BATTLER_COORD_Y;
+ }
+ if (!gBattleAnimArgs[5])
+ {
+ sub_80A69CC(sprite, r4);
+ battlerId = gBattleAnimAttacker;
+ }
+ else
+ {
+ sub_80A6980(sprite, r4);
+ battlerId = gBattleAnimTarget;
+ }
+ if (GetBattlerSide(gBattleAnimAttacker))
+ gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+ sub_80A6980(sprite, r4);
+ sprite->data[0] = gBattleAnimArgs[4];
+ sprite->data[2] = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X_2) + gBattleAnimArgs[2];
+ sprite->data[4] = GetBattlerSpriteCoord(battlerId, attributeId) + gBattleAnimArgs[3];
+ sprite->callback = sub_80A6EEC;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
+
+s16 duplicate_obj_of_side_rel2move_in_transparent_mode(u8 whichBattler)
+{
+ u16 i;
+ u8 spriteId = GetAnimBattlerSpriteId(whichBattler);
+
+ if (spriteId != 0xff)
+ {
+ for (i = 0; i < MAX_SPRITES; i++)
+ {
+ if (!gSprites[i].inUse)
+ {
+ gSprites[i] = gSprites[spriteId];
+ gSprites[i].oam.objMode = 1;
+ gSprites[i].invisible = FALSE;
+ return i;
+ }
+ }
+ }
+ return -1;
+}
+
+void obj_delete_but_dont_free_vram(struct Sprite *sprite)
+{
+ sprite->usingSheet = TRUE;
+ DestroySprite(sprite);
+}
+
+void sub_80A7A74(u8 taskId)
+{
+ s16 v1 = 0;
+ s16 v2 = 0;
+
+ if (gBattleAnimArgs[2] > gBattleAnimArgs[0])
+ v2 = 1;
+ if (gBattleAnimArgs[2] < gBattleAnimArgs[0])
+ v2 = -1;
+ if (gBattleAnimArgs[3] > gBattleAnimArgs[1])
+ v1 = 1;
+ if (gBattleAnimArgs[3] < gBattleAnimArgs[1])
+ v1 = -1;
+
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[1] = gBattleAnimArgs[4];
+ gTasks[taskId].data[2] = 0;
+ gTasks[taskId].data[3] = gBattleAnimArgs[0];
+ gTasks[taskId].data[4] = gBattleAnimArgs[1];
+ gTasks[taskId].data[5] = v2;
+ gTasks[taskId].data[6] = v1;
+ gTasks[taskId].data[7] = gBattleAnimArgs[2];
+ gTasks[taskId].data[8] = gBattleAnimArgs[3];
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(gBattleAnimArgs[0], gBattleAnimArgs[1]));
+ gTasks[taskId].func = sub_80A7AFC;
+}
+
+void sub_80A7AFC(u8 taskId)
+{
+ struct Task *task = &gTasks[taskId];
+
+ if (++task->data[0] > task->data[1])
+ {
+ task->data[0] = 0;
+ if (++task->data[2] & 1)
+ {
+ if (task->data[3] != task->data[7])
+ task->data[3] += task->data[5];
+ }
+ else
+ {
+ if (task->data[4] != task->data[8])
+ task->data[4] += task->data[6];
+ }
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(task->data[3], task->data[4]));
+ if (task->data[3] == task->data[7] && task->data[4] == task->data[8])
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+}
+
+// Linearly blends a mon's sprite colors with a target color with increasing
+// strength, and then blends out to the original color.
+// arg 0: anim bank
+// arg 1: blend color
+// arg 2: target blend coefficient
+// arg 3: initial delay
+// arg 4: number of times to blend in and out
+void AnimTask_BlendMonInAndOut(u8 task)
+{
+ u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ if (spriteId == 0xff)
+ {
+ DestroyAnimVisualTask(task);
+ return;
+ }
+ gTasks[task].data[0] = (gSprites[spriteId].oam.paletteNum * 0x10) + 0x101;
+ AnimTask_BlendMonInAndOutSetup(&gTasks[task]);
+}
+
+void AnimTask_BlendMonInAndOutSetup(struct Task *task)
+{
+ task->data[1] = gBattleAnimArgs[1];
+ task->data[2] = 0;
+ task->data[3] = gBattleAnimArgs[2];
+ task->data[4] = 0;
+ task->data[5] = gBattleAnimArgs[3];
+ task->data[6] = 0;
+ task->data[7] = gBattleAnimArgs[4];
+ task->func = AnimTask_BlendMonInAndOutStep;
+}
+
+void AnimTask_BlendMonInAndOutStep(u8 taskId)
+{
+ struct Task *task = &gTasks[taskId];
+
+ if (++task->data[4] >= task->data[5])
+ {
+ task->data[4] = 0;
+ if (!task->data[6])
+ {
+ task->data[2]++;
+ BlendPalette(task->data[0], 15, task->data[2], task->data[1]);
+ if (task->data[2] == task->data[3])
+ task->data[6] = 1;
+ }
+ else
+ {
+ task->data[2]--;
+ BlendPalette(task->data[0], 15, task->data[2], task->data[1]);
+ if (!task->data[2])
+ {
+ if (--task->data[7])
+ {
+ task->data[4] = 0;
+ task->data[6] = 0;
+ }
+ else
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+ }
+ }
+}
+
+void sub_80A7CB4(u8 task)
+{
+ u8 palette = IndexOfSpritePaletteTag(gBattleAnimArgs[0]);
+
+ if (palette == 0xff)
+ {
+ DestroyAnimVisualTask(task);
+ return;
+ }
+ gTasks[task].data[0] = (palette * 0x10) + 0x101;
+ AnimTask_BlendMonInAndOutSetup(&gTasks[task]);
+}
+
+void sub_80A7CFC(struct Task *task, u8 a2, const void *a3)
+{
+ task->data[7] = 0;
+ task->data[8] = 0;
+ task->data[9] = 0;
+ task->data[15] = a2;
+ task->data[10] = 0x100;
+ task->data[11] = 0x100;
+ task->data[12] = 0;
+ sub_80A8048(&task->data[13], &task->data[14], a3);
+ sub_80A7270(a2, 0);
+}
+
+bool8 sub_80A7D34(struct Task *task)
+{
+ gUnknown_02038444 = sub_80A8050(task->data[13], task->data[14]) + (task->data[7] << 3);
+ switch (gUnknown_02038444->type)
+ {
+ default:
+ if (!gUnknown_02038444->frame.duration)
+ {
+ task->data[10] = gUnknown_02038444->frame.xScale;
+ task->data[11] = gUnknown_02038444->frame.yScale;
+ task->data[12] = gUnknown_02038444->frame.rotation;
+ task->data[7]++;
+ gUnknown_02038444++;
+ }
+ task->data[10] += gUnknown_02038444->frame.xScale;
+ task->data[11] += gUnknown_02038444->frame.yScale;
+ task->data[12] += gUnknown_02038444->frame.rotation;
+ obj_id_set_rotscale(task->data[15], task->data[10], task->data[11], task->data[12]);
+ sub_80A7E6C(task->data[15]);
+ if (++task->data[8] >= gUnknown_02038444->frame.duration)
+ {
+ task->data[8] = 0;
+ task->data[7]++;
+ }
+ break;
+ case AFFINEANIMCMDTYPE_JUMP:
+ task->data[7] = gUnknown_02038444->jump.target;
+ break;
+ case AFFINEANIMCMDTYPE_LOOP:
+ if (gUnknown_02038444->loop.count)
+ {
+ if (task->data[9])
+ {
+ if (!--task->data[9])
+ {
+ task->data[7]++;
+ break;
+ }
+ }
+ else
+ {
+ task->data[9] = gUnknown_02038444->loop.count;
+ }
+ if (!task->data[7])
+ {
+ break;
+ }
+ for (;;)
+ {
+ task->data[7]--;
+ gUnknown_02038444--;
+ if (gUnknown_02038444->type == AFFINEANIMCMDTYPE_LOOP)
+ {
+ task->data[7]++;
+ return TRUE;
+ }
+ if (!task->data[7])
+ return TRUE;
+ }
+ }
+ task->data[7]++;
+ break;
+ case AFFINEANIMCMDTYPE_END:
+ gSprites[task->data[15]].pos2.y = 0;
+ sub_80A7344(task->data[15]);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void sub_80A7E6C(u8 spriteId)
+{
+ int var = 0x40 - sub_80A7F18(spriteId) * 2;
+ u16 matrix = gSprites[spriteId].oam.matrixNum;
+ int var2 = (var << 8) / gOamMatrices[matrix].d;
+
+ if (var2 > 0x80)
+ var2 = 0x80;
+ gSprites[spriteId].pos2.y = (var - var2) / 2;
+}
+
+void sub_80A7EC0(u8 spriteId, u8 spriteId2)
+{
+ int var = 0x40 - sub_80A7F18(spriteId2) * 2;
+ u16 matrix = gSprites[spriteId].oam.matrixNum;
+ int var2 = (var << 8) / gOamMatrices[matrix].d;
+
+ if (var2 > 0x80)
+ var2 = 0x80;
+ gSprites[spriteId].pos2.y = (var - var2) / 2;
+}
+
+u16 sub_80A7F18(u8 spriteId)
+{
+ struct BattleSpriteInfo *spriteInfo;
+ u8 battlerId = gSprites[spriteId].data[0];
+ u16 species;
+ u16 i;
+
+ for (i = 0; i < MAX_BATTLERS_COUNT; i++)
+ {
+ if (gBattlerSpriteIds[i] == spriteId)
+ {
+ if (IsContest())
+ {
+ species = shared19348.unk0;
+ return gMonBackPicCoords[species].y_offset;
+ }
+ else
+ {
+ if (GetBattlerSide(i) == B_SIDE_PLAYER)
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[i]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+
+ if (species == SPECIES_CASTFORM)
+ return sCastformBackSpriteYCoords[gBattleMonForms[battlerId]];
+ else
+ return gMonBackPicCoords[species].y_offset;
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[i]], MON_DATA_SPECIES);
+ else
+ species = spriteInfo[battlerId].transformSpecies;
+
+ if (species == SPECIES_CASTFORM)
+ return sCastformElevations[gBattleMonForms[battlerId]];
+ else
+ return gMonFrontPicCoords[species].y_offset;
+ }
+ }
+ }
+ }
+ return 0x40;
+}
+
+void sub_80A8048(s16 *bottom, s16 *top, const void *ptr)
+{
+ *bottom = ((intptr_t) ptr) & 0xffff;
+ *top = (((intptr_t) ptr) >> 16) & 0xffff;
+}
+
+void *sub_80A8050(s16 bottom, s16 top)
+{
+ return (void *)((u16)bottom | ((u16)top << 16));
+}
+
+void sub_80A805C(struct Task *task, u8 a2, s16 a3, s16 a4, s16 a5, s16 a6, u16 a7)
+{
+ task->data[8] = a7;
+ task->data[15] = a2; // spriteId
+ task->data[9] = a3;
+ task->data[10] = a4;
+ task->data[13] = a5;
+ task->data[14] = a6;
+ task->data[11] = (a5 - a3) / a7;
+ task->data[12] = (a6 - a4) / a7;
+}
+
+u8 sub_80A80C8(struct Task *task)
+{
+ if (!task->data[8])
+ return 0;
+
+ if (--task->data[8] != 0)
+ {
+ task->data[9] += task->data[11];
+ task->data[10] += task->data[12];
+ }
+ else
+ {
+ task->data[9] = task->data[13];
+ task->data[10] = task->data[14];
+ }
+ obj_id_set_rotscale(task->data[15], task->data[9], task->data[10], 0);
+ if (task->data[8])
+ sub_80A7E6C(task->data[15]);
+ else
+ gSprites[task->data[15]].pos2.y = 0;
+ return task->data[8];
+}
+
+void AnimTask_GetFrustrationPowerLevel(u8 taskId)
+{
+ u16 powerLevel;
+
+ if (gAnimFriendship <= 30)
+ powerLevel = 0;
+ else if (gAnimFriendship <= 100)
+ powerLevel = 1;
+ else if (gAnimFriendship <= 200)
+ powerLevel = 2;
+ else
+ powerLevel = 3;
+ gBattleAnimArgs[7] = powerLevel;
+ DestroyAnimVisualTask(taskId);
+}
+
+void sub_80A8174(u8 priority)
+{
+ if (IsBattlerSpriteVisible(gBattleAnimTarget))
+ gSprites[gBattlerSpriteIds[gBattleAnimTarget]].oam.priority = priority;
+ if (IsBattlerSpriteVisible(gBattleAnimAttacker))
+ gSprites[gBattlerSpriteIds[gBattleAnimAttacker]].oam.priority = priority;
+ if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget)))
+ gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimTarget)]].oam.priority = priority;
+ if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker)))
+ gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].oam.priority = priority;
+}
+
+void sub_80A8278(void)
+{
+ int i;
+
+ for (i = 0; i < gBattlersCount; i++)
+ {
+ if (IsBattlerSpriteVisible(i))
+ {
+ gSprites[gBattlerSpriteIds[i]].subpriority = sub_80A82E4(i);
+ gSprites[gBattlerSpriteIds[i]].oam.priority = 2;
+ }
+ }
+}
+
+u8 sub_80A82E4(u8 battlerId)
+{
+ u8 position;
+ u8 ret;
+
+ if (IsContest())
+ {
+ if (battlerId == 2)
+ return 30;
+ else
+ return 40;
+ }
+ else
+ {
+ position = GetBattlerPosition(battlerId);
+ if (position == B_POSITION_PLAYER_LEFT)
+ ret = 30;
+ else if (position == B_POSITION_PLAYER_RIGHT)
+ ret = 20;
+ else if (position == B_POSITION_OPPONENT_LEFT)
+ ret = 40;
+ else
+ ret = 50;
+ }
+ return ret;
+}
+
+u8 sub_80A8328(u8 battlerId)
+{
+ u8 position = GetBattlerPosition(battlerId);
+
+ if (IsContest())
+ return 2;
+ else if (position == B_POSITION_PLAYER_LEFT || position == B_POSITION_OPPONENT_RIGHT)
+ return GetAnimBgAttribute(2, BG_ANIM_PRIORITY);
+ else
+ return GetAnimBgAttribute(1, BG_ANIM_PRIORITY);
+}
+
+u8 sub_80A8364(u8 battlerId)
+{
+ if (!IsContest())
+ {
+ u8 position = GetBattlerPosition(battlerId);
+ if (position == B_POSITION_PLAYER_LEFT || position == B_POSITION_OPPONENT_RIGHT)
+ return 2;
+ else
+ return 1;
+ }
+ return 1;
+}
+
+u8 sub_80A8394(u16 species, bool8 isBackpic, u8 a3, s16 x, s16 y, u8 subpriority, u32 personality, u32 trainerId, u32 battlerId, u32 a10)
+{
+ u8 spriteId;
+ u16 sheet = LoadSpriteSheet(&sUnknown_08525FC0[a3]);
+ u16 palette = AllocSpritePalette(sUnknown_08525F90[a3].paletteTag);
+
+ if (gMonSpritesGfxPtr != NULL && gMonSpritesGfxPtr->field_17C == NULL)
+ gMonSpritesGfxPtr->field_17C = AllocZeroed(0x2000);
+ if (!isBackpic)
+ {
+ LoadCompressedPalette(GetFrontSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20);
+ if (a10 == 1 || sub_80688F8(5, battlerId) == 1 || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
+ LoadSpecialPokePic_DontHandleDeoxys(&gMonFrontPicTable[species],
+ gMonSpritesGfxPtr->field_17C,
+ species,
+ personality,
+ TRUE);
+ else
+ LoadSpecialPokePic_2(&gMonFrontPicTable[species],
+ gMonSpritesGfxPtr->field_17C,
+ species,
+ personality,
+ TRUE);
+ }
+ else
+ {
+ LoadCompressedPalette(GetFrontSpritePalFromSpeciesAndPersonality(species, trainerId, personality), (palette * 0x10) + 0x100, 0x20);
+ if (a10 == 1 || sub_80688F8(5, battlerId) == 1 || gBattleSpritesDataPtr->battlerData[battlerId].transformSpecies != 0)
+ LoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[species],
+ gMonSpritesGfxPtr->field_17C,
+ species,
+ personality,
+ FALSE);
+ else
+ LoadSpecialPokePic_2(&gMonBackPicTable[species],
+ gMonSpritesGfxPtr->field_17C,
+ species,
+ personality,
+ FALSE);
+ }
+
+ RequestDma3Copy(gMonSpritesGfxPtr->field_17C, (void *)(OBJ_VRAM0 + (sheet * 0x20)), 0x800, 1);
+ FREE_AND_SET_NULL(gMonSpritesGfxPtr->field_17C);
+
+ if (!isBackpic)
+ spriteId = CreateSprite(&sUnknown_08525F90[a3], x, y + gMonFrontPicCoords[species].y_offset, subpriority);
+ else
+ spriteId = CreateSprite(&sUnknown_08525F90[a3], x, y + gMonBackPicCoords[species].y_offset, subpriority);
+
+ if (IsContest())
+ {
+ gSprites[spriteId].affineAnims = gUnknown_082FF6C0;
+ StartSpriteAffineAnim(&gSprites[spriteId], 0);
+ }
+ return spriteId;
+}
+
+void sub_80A8610(struct Sprite *sprite)
+{
+ DestroySpriteAndFreeResources(sprite);
+}
+
+s16 sub_80A861C(u8 battlerId, u8 a2)
+{
+ u16 species;
+ u32 personality;
+ u16 letter;
+ u16 var;
+ int ret;
+ const struct MonCoords *coords;
+ struct BattleSpriteInfo *spriteInfo;
+
+ if (IsContest())
+ {
+ if (shared19348.unk4_0)
+ {
+ species = shared19348.unk2;
+ personality = shared19348.unk10;
+ }
+ else
+ {
+ species = shared19348.unk0;
+ personality = shared19348.unk8;
+ }
+ if (species == SPECIES_UNOWN)
+ {
+ letter = GET_UNOWN_LETTER(personality);
+ if (!letter)
+ var = SPECIES_UNOWN;
+ else
+ var = letter + SPECIES_UNOWN_B - 1;
+ coords = &gMonBackPicCoords[var];
+ }
+ else if (species == SPECIES_CASTFORM)
+ {
+ coords = &gCastformFrontSpriteCoords[gBattleMonForms[battlerId]];
+ }
+ else if (species <= SPECIES_EGG)
+ {
+ coords = &gMonBackPicCoords[species];
+ }
+ else
+ {
+ coords = &gMonBackPicCoords[0];
+ }
+ }
+ else
+ {
+ if (GetBattlerSide(battlerId) == B_SIDE_PLAYER)
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ {
+ species = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ personality = GetMonData(&gPlayerParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ }
+ else
+ {
+ species = spriteInfo[battlerId].transformSpecies;
+ personality = gTransformedPersonalities[battlerId];
+ }
+ if (species == SPECIES_UNOWN)
+ {
+ letter = GET_UNOWN_LETTER(personality);
+ if (!letter)
+ var = SPECIES_UNOWN;
+ else
+ var = letter + SPECIES_UNOWN_B - 1;
+ coords = &gMonBackPicCoords[var];
+ }
+ else if (species > SPECIES_EGG)
+ {
+ coords = &gMonBackPicCoords[0];
+ }
+ else
+ {
+ coords = &gMonBackPicCoords[species];
+ }
+ }
+ else
+ {
+ spriteInfo = gBattleSpritesDataPtr->battlerData;
+ if (!spriteInfo[battlerId].transformSpecies)
+ {
+ species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_SPECIES);
+ personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[battlerId]], MON_DATA_PERSONALITY);
+ }
+ else
+ {
+ species = spriteInfo[battlerId].transformSpecies;
+ personality = gTransformedPersonalities[battlerId];
+ }
+ if (species == SPECIES_UNOWN)
+ {
+ letter = GET_UNOWN_LETTER(personality);
+ if (!letter)
+ var = SPECIES_UNOWN;
+ else
+ var = letter + SPECIES_UNOWN_B - 1;
+ coords = &gMonFrontPicCoords[var];
+ }
+ else if (species == SPECIES_CASTFORM)
+ {
+ coords = &gCastformFrontSpriteCoords[gBattleMonForms[battlerId]];
+ }
+ else if (species > SPECIES_EGG)
+ {
+ coords = &gMonFrontPicCoords[0];
+ }
+ else
+ {
+ coords = &gMonFrontPicCoords[species];
+ }
+ }
+ }
+
+ switch (a2)
+ {
+ case 0:
+ return (coords->coords & 0xf) * 8;
+ case 1:
+ return (coords->coords >> 4) * 8;
+ case 4:
+ return GetBattlerSpriteCoord(battlerId, 2) - ((coords->coords >> 4) * 4);
+ case 5:
+ return GetBattlerSpriteCoord(battlerId, 2) + ((coords->coords >> 4) * 4);
+ case 2:
+ return GetBattlerSpriteCoord(battlerId, 3) - ((coords->coords & 0xf) * 4);
+ case 3:
+ return GetBattlerSpriteCoord(battlerId, 3) + ((coords->coords & 0xf) * 4);
+ case 6:
+ ret = GetBattlerSpriteCoord(battlerId, 1) + 0x1f;
+ return ret - coords->y_offset;
+ default:
+ return 0;
+ }
+}
+
+void SetAverageBattlerPositions(u8 battlerId, bool8 a2, s16 *x, s16 *y)
+{
+ u8 v1, v2;
+ s16 v3, v4;
+ s16 v5, v6;
+
+ if (!a2)
+ {
+ v1 = 0;
+ v2 = 1;
+ }
+ else
+ {
+ v1 = 2;
+ v2 = 3;
+ }
+ v3 = GetBattlerSpriteCoord(battlerId, v1);
+ v4 = GetBattlerSpriteCoord(battlerId, v2);
+ if (IsDoubleBattle() && !IsContest())
+ {
+ v5 = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), v1);
+ v6 = GetBattlerSpriteCoord(BATTLE_PARTNER(battlerId), v2);
+ }
+ else
+ {
+ v5 = v3;
+ v6 = v4;
+ }
+ *x = (v3 + v5) / 2;
+ *y = (v4 + v6) / 2;
+}
+
+u8 sub_80A89C8(int battlerId, u8 spriteId, int species)
+{
+ u8 newSpriteId = CreateInvisibleSpriteWithCallback(SpriteCallbackDummy);
+ gSprites[newSpriteId] = gSprites[spriteId];
+ gSprites[newSpriteId].usingSheet = TRUE;
+ gSprites[newSpriteId].oam.priority = 0;
+ gSprites[newSpriteId].oam.objMode = 2;
+ gSprites[newSpriteId].oam.tileNum = gSprites[spriteId].oam.tileNum;
+ gSprites[newSpriteId].callback = SpriteCallbackDummy;
+ return newSpriteId;
+}
+
+void sub_80A8A6C(struct Sprite *sprite)
+{
+ sub_80A6838(sprite);
+ if (GetBattlerSide(gBattleAnimAttacker))
+ {
+ sprite->pos1.x -= gBattleAnimArgs[0];
+ gBattleAnimArgs[3] = -gBattleAnimArgs[3];
+ sprite->hFlip = TRUE;
+ }
+ else
+ {
+ sprite->pos1.x += gBattleAnimArgs[0];
+ }
+ sprite->pos1.y += gBattleAnimArgs[1];
+ sprite->data[0] = gBattleAnimArgs[2];
+ sprite->data[1] = gBattleAnimArgs[3];
+ sprite->data[3] = gBattleAnimArgs[4];
+ sprite->data[5] = gBattleAnimArgs[5];
+ StoreSpriteCallbackInData6(sprite, move_anim_8074EE0);
+ sprite->callback = sub_80A66DC;
+}
+
+void sub_80A8AEC(struct Sprite *sprite)
+{
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ {
+ sprite->pos1.x -= gBattleAnimArgs[0];
+ gBattleAnimArgs[3] *= -1;
+ }
+ else
+ {
+ sprite->pos1.x += gBattleAnimArgs[0];
+ }
+ sprite->pos1.y += gBattleAnimArgs[1];
+ sprite->data[0] = gBattleAnimArgs[2];
+ sprite->data[1] = gBattleAnimArgs[3];
+ sprite->data[3] = gBattleAnimArgs[4];
+ sprite->data[5] = gBattleAnimArgs[5];
+ StartSpriteAnim(sprite, gBattleAnimArgs[6]);
+ StoreSpriteCallbackInData6(sprite, move_anim_8074EE0);
+ sprite->callback = sub_80A66DC;
+}
+
+void sub_80A8B64(struct Sprite *sprite)
+{
+ sub_80A6838(sprite);
+ if (GetBattlerSide(gBattleAnimAttacker))
+ sprite->pos1.x -= gBattleAnimArgs[0];
+ else
+ sprite->pos1.x += gBattleAnimArgs[0];
+ sprite->pos1.y += gBattleAnimArgs[1];
+ sprite->callback = sub_80A67D8;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
+
+void sub_80A8BC4(u8 taskId)
+{
+ u16 src;
+ u16 dest;
+ struct Task *task = &gTasks[taskId];
+
+ task->data[0] = GetAnimBattlerSpriteId(ANIM_ATTACKER);
+ task->data[1] = ((GetBattlerSide(gBattleAnimAttacker)) != B_SIDE_PLAYER) ? -8 : 8;
+ task->data[2] = 0;
+ task->data[3] = 0;
+ gSprites[task->data[0]].pos2.x -= task->data[0];
+ task->data[4] = AllocSpritePalette(10097);
+ task->data[5] = 0;
+
+ dest = (task->data[4] + 0x10) * 0x10;
+ src = (gSprites[task->data[0]].oam.paletteNum + 0x10) * 0x10;
+ task->data[6] = sub_80A82E4(gBattleAnimAttacker);
+ if (task->data[6] == 20 || task->data[6] == 40)
+ task->data[6] = 2;
+ else
+ task->data[6] = 3;
+ CpuCopy32(&gPlttBufferUnfaded[src], &gPlttBufferFaded[dest], 0x20);
+ BlendPalette(dest, 16, gBattleAnimArgs[1], gBattleAnimArgs[0]);
+ task->func = sub_80A8CAC;
+}
+
+void sub_80A8CAC(u8 taskId)
+{
+ struct Task *task = &gTasks[taskId];
+ switch (task->data[2])
+ {
+ case 0:
+ sub_80A8D78(task, taskId);
+ gSprites[task->data[0]].pos2.x += task->data[1];
+ if (++task->data[3] == 5)
+ {
+ task->data[3]--;
+ task->data[2]++;
+ }
+ break;
+ case 1:
+ sub_80A8D78(task, taskId);
+ gSprites[task->data[0]].pos2.x -= task->data[1];
+ if (--task->data[3] == 0)
+ {
+ gSprites[task->data[0]].pos2.x = 0;
+ task->data[2]++;
+ }
+ break;
+ case 2:
+ if (!task->data[5])
+ {
+ FreeSpritePaletteByTag(ANIM_TAG_BENT_SPOON);
+ DestroyAnimVisualTask(taskId);
+ }
+ break;
+ }
+}
+
+void sub_80A8D78(struct Task *task, u8 taskId)
+{
+ s16 spriteId = duplicate_obj_of_side_rel2move_in_transparent_mode(0);
+ if (spriteId >= 0)
+ {
+ gSprites[spriteId].oam.priority = task->data[6];
+ gSprites[spriteId].oam.paletteNum = task->data[4];
+ gSprites[spriteId].data[0] = 8;
+ gSprites[spriteId].data[1] = taskId;
+ gSprites[spriteId].data[2] = spriteId;
+ gSprites[spriteId].pos2.x = gSprites[task->data[0]].pos2.x;
+ gSprites[spriteId].callback = sub_80A8DFC;
+ task->data[5]++;
+ }
+}
+
+void sub_80A8DFC(struct Sprite *sprite)
+{
+ if (--sprite->data[0] == 0)
+ {
+ gTasks[sprite->data[1]].data[5]--;
+ obj_delete_but_dont_free_vram(sprite);
+ }
+}
+
+void sub_80A8E30(struct Sprite *sprite)
+{
+ sprite->pos1.x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2);
+ sprite->pos1.y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_3);
+ if (!GetBattlerSide(gBattleAnimAttacker))
+ sprite->data[0] = 5;
+ else
+ sprite->data[0] = -10;
+ sprite->data[1] = -40;
+ sprite->callback = sub_80A8E88;
+}
+
+void sub_80A8E88(struct Sprite *sprite)
+{
+ sprite->data[2] += sprite->data[0];
+ sprite->data[3] += sprite->data[1];
+ sprite->pos2.x = sprite->data[2] / 10;
+ sprite->pos2.y = sprite->data[3] / 10;
+ if (sprite->data[1] < -20)
+ sprite->data[1]++;
+ if (sprite->pos1.y + sprite->pos2.y < -32)
+ DestroyAnimSprite(sprite);
+}
+
+void sub_80A8EE4(struct Sprite *sprite)
+{
+ int x;
+ sprite->data[0] = gBattleAnimArgs[2];
+ sprite->data[2] = sprite->pos1.x + gBattleAnimArgs[4];
+ sprite->data[4] = sprite->pos1.y + gBattleAnimArgs[5];
+ if (!GetBattlerSide(gBattleAnimTarget))
+ {
+ x = (u16)gBattleAnimArgs[4] + 30;
+ sprite->pos1.x += x;
+ sprite->pos1.y = gBattleAnimArgs[5] - 20;
+ }
+ else
+ {
+ x = (u16)gBattleAnimArgs[4] - 30;
+ sprite->pos1.x += x;
+ sprite->pos1.y = gBattleAnimArgs[5] - 80;
+ }
+ sprite->callback = sub_80A6EEC;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
diff --git a/src/battle_anim_80A9C70.c b/src/battle_anim_80A9C70.c
new file mode 100644
index 000000000..1f8a53993
--- /dev/null
+++ b/src/battle_anim_80A9C70.c
@@ -0,0 +1,360 @@
+#include "global.h"
+#include "battle.h"
+#include "battle_anim.h"
+#include "constants/battle_anim.h"
+#include "constants/rgb.h"
+#include "blend_palette.h"
+#include "decompress.h"
+#include "palette.h"
+#include "sprite.h"
+#include "task.h"
+#include "trig.h"
+#include "gpu_regs.h"
+
+extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
+extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
+extern const u8 *const gBattleAnims_StatusConditions[];
+extern const struct OamData gUnknown_08524904;
+extern const struct OamData gUnknown_08524A3C;
+
+extern void sub_8116EB4(u8 taskId);
+
+// This file's functions.
+static void sub_80A9DB4(u8 taskId);
+static void sub_80A9FD0(u8 taskId);
+static void sub_80AA020(u8 taskId);
+static void sub_80AA0D0(u8 taskId);
+static void sub_80AA124(u8 taskId);
+static void Task_DoStatusAnimation(u8 taskId);
+static void sub_80A9E44(struct Sprite *sprite);
+static void sub_80A9E78(struct Sprite *sprite);
+
+// const rom data
+static const struct Subsprite gUnknown_0853EF30[] =
+{
+ {.x = -16, .y = -16, .shape = ST_OAM_SQUARE, .size = 3, .tileOffset = 0, .priority = 2},
+ {.x = -16, .y = 48, .shape = ST_OAM_H_RECTANGLE, .size = 3, .tileOffset = 64, .priority = 2},
+ {.x = 48, .y = -16, .shape = ST_OAM_V_RECTANGLE, .size = 3, .tileOffset = 96, .priority = 2},
+ {.x = 48, .y = 48, .shape = ST_OAM_SQUARE, .size = 2, .tileOffset = 128, .priority = 2},
+};
+
+static const struct SubspriteTable gUnknown_0853EF40[] =
+{
+ {ARRAY_COUNT(gUnknown_0853EF30), gUnknown_0853EF30},
+};
+
+static const struct SpriteTemplate gUnknown_0853EF48 =
+{
+ .tileTag = ANIM_TAG_ICE_CUBE,
+ .paletteTag = ANIM_TAG_ICE_CUBE,
+ .oam = &gUnknown_08524A3C,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+static const struct SpriteTemplate gUnknown_0853EF60 =
+{
+ .tileTag = ANIM_TAG_136,
+ .paletteTag = ANIM_TAG_136,
+ .oam = &gUnknown_08524904,
+ .anims = gDummySpriteAnimTable,
+ .images = NULL,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80A9E44,
+};
+
+// code
+u8 sub_80A9C70(u8 battlerId, bool8 b)
+{
+ u8 battlerSpriteId = gBattlerSpriteIds[battlerId];
+ u8 taskId = CreateTask(sub_80A9DB4, 10);
+ u8 spriteId2;
+ u8 i;
+
+ LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
+ LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_136)]);
+ gTasks[taskId].data[0] = battlerId;
+ if (b)
+ {
+ gTasks[taskId].data[1] = RGB_RED;
+ for (i = 0; i < 10; i++)
+ {
+ spriteId2 = CreateSprite(&gUnknown_0853EF60, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y + 32, 0);
+ gSprites[spriteId2].data[0] = i * 51;
+ gSprites[spriteId2].data[1] = -256;
+ gSprites[spriteId2].invisible = TRUE;
+ if (i > 4)
+ gSprites[spriteId2].data[6] = 21;
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[1] = RGB_BLUE;
+ for (i = 0; i < 10; i++)
+ {
+ spriteId2 = CreateSprite(&gUnknown_0853EF60, gSprites[battlerSpriteId].pos1.x, gSprites[battlerSpriteId].pos1.y - 32, 0);
+ gSprites[spriteId2].data[0] = i * 51;
+ gSprites[spriteId2].data[1] = 256;
+ gSprites[spriteId2].invisible = TRUE;
+ if (i > 4)
+ gSprites[spriteId2].data[6] = 21;
+ }
+ }
+ gSprites[spriteId2].data[7] = 1;
+ return taskId;
+}
+
+static void sub_80A9DB4(u8 taskId)
+{
+ if (gTasks[taskId].data[2] == 2)
+ {
+ gTasks[taskId].data[2] = 0;
+ BlendPalette(0x100 + gTasks[taskId].data[0] * 16, 16, gTasks[taskId].data[4], gTasks[taskId].data[1]);
+ if (gTasks[taskId].data[5] == 0)
+ {
+ gTasks[taskId].data[4]++;
+ if (gTasks[taskId].data[4] > 8)
+ gTasks[taskId].data[5] ^= 1;
+ }
+ else
+ {
+ u16 var = gTasks[taskId].data[4];
+
+ gTasks[taskId].data[4]--;
+ if (gTasks[taskId].data[4] < 0)
+ {
+ gTasks[taskId].data[4] = var;
+ gTasks[taskId].data[5] ^= 1;
+ gTasks[taskId].data[3]++;
+ if (gTasks[taskId].data[3] == 2)
+ DestroyTask(taskId);
+ }
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[2]++;
+ }
+}
+
+static void sub_80A9E44(struct Sprite *sprite)
+{
+ if (sprite->data[6] == 0)
+ {
+ sprite->invisible = FALSE;
+ sprite->callback = sub_80A9E78;
+ sub_80A9E78(sprite);
+ }
+ else
+ {
+ sprite->data[6]--;
+ }
+}
+
+static void sub_80A9E78(struct Sprite *sprite)
+{
+ sprite->pos2.x = Cos(sprite->data[0], 32);
+ sprite->pos2.y = Sin(sprite->data[0], 8);
+ if (sprite->data[0] < 128)
+ sprite->subpriority = 29;
+ else
+ sprite->subpriority = 31;
+ sprite->data[0] = (sprite->data[0] + 8) & 0xFF;
+ sprite->data[5] += sprite->data[1];
+ sprite->pos2.y += sprite->data[5] >> 8;
+ sprite->data[2]++;
+ if (sprite->data[2] == 52)
+ {
+ if (sprite->data[7])
+ DestroySpriteAndFreeResources(sprite);
+ else
+ DestroySprite(sprite);
+ }
+}
+
+void sub_80A9EF4(u8 taskId)
+{
+ s16 x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) - 32;
+ s16 y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_3) - 36;
+ u8 spriteId;
+
+ if (IsContest())
+ x -= 6;
+ SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL);
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(0, 16));
+ spriteId = CreateSprite(&gUnknown_0853EF48, x, y, 4);
+ if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == 0xFFFF)
+ gSprites[spriteId].invisible = TRUE;
+ SetSubspriteTables(&gSprites[spriteId], gUnknown_0853EF40);
+ gTasks[taskId].data[15] = spriteId;
+ gTasks[taskId].func = sub_80A9FD0;
+}
+
+static void sub_80A9FD0(u8 taskId)
+{
+ gTasks[taskId].data[1]++;
+ if (gTasks[taskId].data[1] == 10)
+ {
+ gTasks[taskId].func = sub_80AA020;
+ gTasks[taskId].data[1] = 0;
+ }
+ else
+ {
+ u8 var = gTasks[taskId].data[1];
+
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(var, 16 - var));
+ }
+}
+
+static void sub_80AA020(u8 taskId)
+{
+ u8 palIndex = IndexOfSpritePaletteTag(ANIM_TAG_ICE_CUBE);
+
+ if (gTasks[taskId].data[1]++ > 13)
+ {
+ gTasks[taskId].data[2]++;
+ if (gTasks[taskId].data[2] == 3)
+ {
+ u16 temp;
+
+ temp = gPlttBufferFaded[0x100 + palIndex * 16 + 13];
+ gPlttBufferFaded[0x100 + palIndex * 16 + 13] = gPlttBufferFaded[0x100 + palIndex * 16 + 14];
+ gPlttBufferFaded[0x100 + palIndex * 16 + 14] = gPlttBufferFaded[0x100 + palIndex * 16 + 15];
+ gPlttBufferFaded[0x100 + palIndex * 16 + 15] = temp;
+
+ gTasks[taskId].data[2] = 0;
+ gTasks[taskId].data[3]++;
+ if (gTasks[taskId].data[3] == 3)
+ {
+ gTasks[taskId].data[3] = 0;
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[4]++;
+ if (gTasks[taskId].data[4] == 2)
+ {
+ gTasks[taskId].data[1] = 9;
+ gTasks[taskId].func = sub_80AA0D0;
+ }
+ }
+ }
+ }
+}
+
+static void sub_80AA0D0(u8 taskId)
+{
+ gTasks[taskId].data[1]--;
+ if (gTasks[taskId].data[1] == -1)
+ {
+ gTasks[taskId].func = sub_80AA124;
+ gTasks[taskId].data[1] = 0;
+ }
+ else
+ {
+ u8 var = gTasks[taskId].data[1];
+
+ SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(var, 16 - var));
+ }
+}
+
+static void sub_80AA124(u8 taskId)
+{
+ gTasks[taskId].data[1]++;
+ if (gTasks[taskId].data[1] == 37)
+ {
+ u8 spriteId = gTasks[taskId].data[15];
+
+ FreeSpriteOamMatrix(&gSprites[spriteId]);
+ DestroySprite(&gSprites[spriteId]);
+ }
+ else if (gTasks[taskId].data[1] == 39)
+ {
+ SetGpuReg(REG_OFFSET_BLDCNT, 0);
+ SetGpuReg(REG_OFFSET_BLDALPHA, 0);
+ DestroyAnimVisualTask(taskId);
+ }
+}
+
+#define CASE(by, stat) case (STAT_ANIM_##by + stat - 1)
+
+void AnimTask_StatsChange(u8 taskId)
+{
+ bool16 goesDown = FALSE;
+ s16 animStatId = 0;
+ bool16 sharply = FALSE;
+
+ switch (gBattleSpritesDataPtr->animationData->animArg)
+ {
+ CASE(PLUS1, STAT_ATK): goesDown = FALSE; animStatId = 0; break;
+ CASE(PLUS1, STAT_DEF): goesDown = FALSE; animStatId = 1; break;
+ CASE(PLUS1, STAT_SPEED): goesDown = FALSE; animStatId = 3; break;
+ CASE(PLUS1, STAT_SPATK): goesDown = FALSE; animStatId = 5; break;
+ CASE(PLUS1, STAT_SPDEF): goesDown = FALSE; animStatId = 6; break;
+ CASE(PLUS1, STAT_ACC): goesDown = FALSE; animStatId = 2; break;
+ CASE(PLUS1, STAT_EVASION): goesDown = FALSE; animStatId = 4; break;
+
+ CASE(MINUS1, STAT_ATK): goesDown = TRUE; animStatId = 0; break;
+ CASE(MINUS1, STAT_DEF): goesDown = TRUE; animStatId = 1; break;
+ CASE(MINUS1, STAT_SPEED): goesDown = TRUE; animStatId = 3; break;
+ CASE(MINUS1, STAT_SPATK): goesDown = TRUE; animStatId = 5; break;
+ CASE(MINUS1, STAT_SPDEF): goesDown = TRUE; animStatId = 6; break;
+ CASE(MINUS1, STAT_ACC): goesDown = TRUE; animStatId = 2; break;
+ CASE(MINUS1, STAT_EVASION): goesDown = TRUE; animStatId = 4; break;
+
+ CASE(PLUS2, STAT_ATK): goesDown = FALSE; animStatId = 0; sharply = TRUE; break;
+ CASE(PLUS2, STAT_DEF): goesDown = FALSE; animStatId = 1; sharply = TRUE; break;
+ CASE(PLUS2, STAT_SPEED): goesDown = FALSE; animStatId = 3; sharply = TRUE; break;
+ CASE(PLUS2, STAT_SPATK): goesDown = FALSE; animStatId = 5; sharply = TRUE; break;
+ CASE(PLUS2, STAT_SPDEF): goesDown = FALSE; animStatId = 6; sharply = TRUE; break;
+ CASE(PLUS2, STAT_ACC): goesDown = FALSE; animStatId = 2; sharply = TRUE; break;
+ CASE(PLUS2, STAT_EVASION): goesDown = FALSE; animStatId = 4; sharply = TRUE; break;
+
+ CASE(MINUS2, STAT_ATK): goesDown = TRUE; animStatId = 0; sharply = TRUE; break;
+ CASE(MINUS2, STAT_DEF): goesDown = TRUE; animStatId = 1; sharply = TRUE; break;
+ CASE(MINUS2, STAT_SPEED): goesDown = TRUE; animStatId = 3; sharply = TRUE; break;
+ CASE(MINUS2, STAT_SPATK): goesDown = TRUE; animStatId = 5; sharply = TRUE; break;
+ CASE(MINUS2, STAT_SPDEF): goesDown = TRUE; animStatId = 6; sharply = TRUE; break;
+ CASE(MINUS2, STAT_ACC): goesDown = TRUE; animStatId = 2; sharply = TRUE; break;
+ CASE(MINUS2, STAT_EVASION): goesDown = TRUE; animStatId = 4; sharply = TRUE; break;
+
+ case STAT_ANIM_MULTIPLE_PLUS1: goesDown = FALSE; animStatId = 0xFF; sharply = FALSE; break;
+ case STAT_ANIM_MULTIPLE_PLUS2: goesDown = FALSE; animStatId = 0xFF; sharply = TRUE; break;
+ case STAT_ANIM_MULTIPLE_MINUS1: goesDown = TRUE; animStatId = 0xFF; sharply = FALSE; break;
+ case STAT_ANIM_MULTIPLE_MINUS2: goesDown = TRUE; animStatId = 0xFF; sharply = TRUE; break;
+
+ default:
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+
+ gBattleAnimArgs[0] = goesDown;
+ gBattleAnimArgs[1] = animStatId;
+ gBattleAnimArgs[2] = 0;
+ gBattleAnimArgs[3] = 0;
+ gBattleAnimArgs[4] = sharply;
+ gTasks[taskId].func = sub_8116EB4;
+ sub_8116EB4(taskId);
+}
+
+#undef CASE
+
+void LaunchStatusAnimation(u8 battlerId, u8 statusAnimId)
+{
+ u8 taskId;
+
+ gBattleAnimAttacker = battlerId;
+ gBattleAnimTarget = battlerId;
+ LaunchBattleAnimation(gBattleAnims_StatusConditions, statusAnimId, 0);
+ taskId = CreateTask(Task_DoStatusAnimation, 10);
+ gTasks[taskId].data[0] = battlerId;
+}
+
+static void Task_DoStatusAnimation(u8 taskId)
+{
+ gAnimScriptCallback();
+ if (!gAnimScriptActive)
+ {
+ gBattleSpritesDataPtr->healthBoxesData[gTasks[taskId].data[0]].statusAnimActive = FALSE;
+ DestroyTask(taskId);
+ }
+}
diff --git a/src/battle_anim_80D51AC.c b/src/battle_anim_80D51AC.c
new file mode 100644
index 000000000..1864a1a7a
--- /dev/null
+++ b/src/battle_anim_80D51AC.c
@@ -0,0 +1,1004 @@
+#include "global.h"
+#include "battle.h"
+#include "battle_anim.h"
+#include "sprite.h"
+#include "task.h"
+#include "trig.h"
+
+// This file's functions.
+void AnimTask_ShakeMonStep(u8 taskId);
+void AnimTask_ShakeMon2Step(u8 taskId);
+void AnimTask_ShakeMonInPlaceStep(u8 taskId);
+void AnimTask_ShakeAndSinkMonStep(u8 taskId);
+void sub_80D57B8(u8 taskId);
+void DoHorizontalLunge(struct Sprite *sprite);
+void ReverseHorizontalLungeDirection(struct Sprite *sprite);
+void DoVerticalDip(struct Sprite *sprite);
+void ReverseVerticalDipDirection(struct Sprite* sprite);
+void SlideMonToOriginalPos(struct Sprite *sprite);
+void SlideMonToOriginalPosStep(struct Sprite *sprite);
+void SlideMonToOffset(struct Sprite *sprite);
+void sub_80D5B48(struct Sprite *sprite);
+void sub_80D5C20(struct Sprite *sprite);
+void AnimTask_WindUpLungePart1(u8 taskId);
+void AnimTask_WindUpLungePart2(u8 taskId);
+void AnimTask_SwayMonStep(u8 taskId);
+void AnimTask_ScaleMonAndRestoreStep(u8 taskId);
+void sub_80D6308(u8 taskId);
+void sub_80D646C(u8 taskId);
+void sub_80A8B3C(u8 taskId);
+
+// Task to facilitate simple shaking of a pokemon's picture in battle.
+// The shaking alternates between the original position and the target position.
+// arg 0: anim battler
+// arg 1: x pixel offset
+// arg 2: y pixel offset
+// arg 3: num times to shake
+// arg 4: frame delay
+void AnimTask_ShakeMon(u8 taskId)
+{
+ u8 spriteId;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ if (spriteId == 0xff)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
+ gSprites[spriteId].pos2.y = gBattleAnimArgs[2];
+ gTasks[taskId].data[0] = spriteId;
+ gTasks[taskId].data[1] = gBattleAnimArgs[3];
+ gTasks[taskId].data[2] = gBattleAnimArgs[4];
+ gTasks[taskId].data[3] = gBattleAnimArgs[4];
+ gTasks[taskId].data[4] = gBattleAnimArgs[1];
+ gTasks[taskId].data[5] = gBattleAnimArgs[2];
+ gTasks[taskId].func = AnimTask_ShakeMonStep;
+ AnimTask_ShakeMonStep(taskId);
+}
+
+void AnimTask_ShakeMonStep(u8 taskId)
+{
+ if (gTasks[taskId].data[3] == 0)
+ {
+ if (gSprites[gTasks[taskId].data[0]].pos2.x == 0)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4];
+ }
+ else
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x = 0;
+ }
+ if (gSprites[gTasks[taskId].data[0]].pos2.y == 0)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5];
+ }
+ else
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.y = 0;
+ }
+ gTasks[taskId].data[3] = gTasks[taskId].data[2];
+ if (--gTasks[taskId].data[1] == 0)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x = 0;
+ gSprites[gTasks[taskId].data[0]].pos2.y = 0;
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[3]--;
+ }
+}
+
+// Task to facilitate simple shaking of a pokemon's picture in battle.
+// The shaking alternates between the positive and negative versions of the specified pixel offsets.
+// arg 0: anim battler
+// arg 1: x pixel offset
+// arg 2: y pixel offset
+// arg 3: num times to shake
+// arg 4: frame delay
+void AnimTask_ShakeMon2(u8 taskId)
+{
+ u8 spriteId;
+ bool8 destroy = FALSE;
+ u8 battlerId;
+
+ if (gBattleAnimArgs[0] < 4)
+ {
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ if (spriteId == 0xff)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+ else if (gBattleAnimArgs[0] != 8)
+ {
+ switch (gBattleAnimArgs[0])
+ {
+ case 4:
+ battlerId = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT);
+ break;
+ case 5:
+ battlerId = GetBattlerAtPosition(B_POSITION_PLAYER_RIGHT);
+ break;
+ case 6:
+ battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
+ break;
+ case 7:
+ default:
+ battlerId = GetBattlerAtPosition(B_POSITION_OPPONENT_RIGHT);
+ break;
+ }
+
+ if (IsBattlerSpriteVisible(battlerId) == FALSE)
+ destroy = TRUE;
+
+ spriteId = gBattlerSpriteIds[battlerId];
+ }
+ else
+ {
+ spriteId = gBattlerSpriteIds[gBattleAnimAttacker];
+ }
+
+ if (destroy)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+
+ gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
+ gSprites[spriteId].pos2.y = gBattleAnimArgs[2];
+ gTasks[taskId].data[0] = spriteId;
+ gTasks[taskId].data[1] = gBattleAnimArgs[3];
+ gTasks[taskId].data[2] = gBattleAnimArgs[4];
+ gTasks[taskId].data[3] = gBattleAnimArgs[4];
+ gTasks[taskId].data[4] = gBattleAnimArgs[1];
+ gTasks[taskId].data[5] = gBattleAnimArgs[2];
+ gTasks[taskId].func = AnimTask_ShakeMon2Step;
+ gTasks[taskId].func(taskId);
+}
+
+void AnimTask_ShakeMon2Step(u8 taskId)
+{
+ if (gTasks[taskId].data[3] == 0)
+ {
+ if (gSprites[gTasks[taskId].data[0]].pos2.x == gTasks[taskId].data[4])
+ gSprites[gTasks[taskId].data[0]].pos2.x = -gTasks[taskId].data[4];
+ else
+ gSprites[gTasks[taskId].data[0]].pos2.x = gTasks[taskId].data[4];
+
+ if (gSprites[gTasks[taskId].data[0]].pos2.y == gTasks[taskId].data[5])
+ gSprites[gTasks[taskId].data[0]].pos2.y = -gTasks[taskId].data[5];
+ else
+ gSprites[gTasks[taskId].data[0]].pos2.y = gTasks[taskId].data[5];
+
+ gTasks[taskId].data[3] = gTasks[taskId].data[2];
+ if (--gTasks[taskId].data[1] == 0)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x = 0;
+ gSprites[gTasks[taskId].data[0]].pos2.y = 0;
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[3]--;
+ }
+}
+
+// Task to facilitate simple shaking of a pokemon's picture in battle.
+// The shaking alternates between the positive and negative versions of the specified pixel offsets
+// with respect to the current location of the mon's picture.
+// arg 0: battler
+// arg 1: x offset
+// arg 2: y offset
+// arg 3: num shakes
+// arg 4: delay
+void AnimTask_ShakeMonInPlace(u8 taskId)
+{
+ u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ if (spriteId == 0xff)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+
+ gSprites[spriteId].pos2.x += gBattleAnimArgs[1];
+ gSprites[spriteId].pos2.y += gBattleAnimArgs[2];
+ gTasks[taskId].data[0] = spriteId;
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[2] = gBattleAnimArgs[3];
+ gTasks[taskId].data[3] = 0;
+ gTasks[taskId].data[4] = gBattleAnimArgs[4];
+ gTasks[taskId].data[5] = gBattleAnimArgs[1] * 2;
+ gTasks[taskId].data[6] = gBattleAnimArgs[2] * 2;
+ gTasks[taskId].func = AnimTask_ShakeMonInPlaceStep;
+ gTasks[taskId].func(taskId);
+}
+
+void AnimTask_ShakeMonInPlaceStep(u8 taskId)
+{
+ if (gTasks[taskId].data[3] == 0)
+ {
+ if (gTasks[taskId].data[1] & 1)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5];
+ gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6];
+ }
+ else
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5];
+ gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6];
+ }
+ gTasks[taskId].data[3] = gTasks[taskId].data[4];
+ if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2])
+ {
+ if (gTasks[taskId].data[1] & 1)
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x += gTasks[taskId].data[5] / 2;
+ gSprites[gTasks[taskId].data[0]].pos2.y += gTasks[taskId].data[6] / 2;
+ }
+ else
+ {
+ gSprites[gTasks[taskId].data[0]].pos2.x -= gTasks[taskId].data[5] / 2;
+ gSprites[gTasks[taskId].data[0]].pos2.y -= gTasks[taskId].data[6] / 2;
+ }
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[3]--;
+ }
+}
+
+// Shakes a mon bg horizontally and moves it downward linearly.
+// arg 0: battler
+// arg 1: x offset
+// arg 2: frame delay between each movement
+// arg 3: downward speed (subpixel)
+// arg 4: duration
+void AnimTask_ShakeAndSinkMon(u8 taskId)
+{
+ u8 spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ gSprites[spriteId].pos2.x = gBattleAnimArgs[1];
+ gTasks[taskId].data[0] = spriteId;
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].data[3] = gBattleAnimArgs[3];
+ gTasks[taskId].data[4] = gBattleAnimArgs[4];
+ gTasks[taskId].func = AnimTask_ShakeAndSinkMonStep;
+ gTasks[taskId].func(taskId);
+}
+
+void AnimTask_ShakeAndSinkMonStep(u8 taskId)
+{
+ s16 x;
+ u8 spriteId;
+ spriteId = gTasks[taskId].data[0];
+ x = gTasks[taskId].data[1];
+ if (gTasks[taskId].data[2] == gTasks[taskId].data[8]++)
+ {
+ gTasks[taskId].data[8] = 0;
+ if (gSprites[spriteId].pos2.x == x)
+ x = -x;
+
+ gSprites[spriteId].pos2.x += x;
+ }
+
+ gTasks[taskId].data[1] = x;
+ gTasks[taskId].data[9] += gTasks[taskId].data[3];
+ gSprites[spriteId].pos2.y = gTasks[taskId].data[9] >> 8;
+ if (--gTasks[taskId].data[4] == 0)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+}
+
+// Moves a mon bg picture along an elliptical path that begins
+// and ends at the mon's origin location.
+// arg 0: battler
+// arg 1: ellipse width
+// arg 2: ellipse height
+// arg 3: num loops
+// arg 4: speed (valid values are 0-5)
+void AnimTask_TranslateMonElliptical(u8 taskId)
+{
+ u8 i;
+ u8 spriteId;
+ u8 wavePeriod;
+
+ wavePeriod = 1;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ if (gBattleAnimArgs[4] > 5)
+ gBattleAnimArgs[4] = 5;
+
+ for (i = 0; i < gBattleAnimArgs[4]; i++)
+ {
+ wavePeriod <<= 1;
+ }
+
+ gTasks[taskId].data[0] = spriteId;
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].data[3] = gBattleAnimArgs[3];
+ gTasks[taskId].data[4] = wavePeriod;
+ gTasks[taskId].func = sub_80D57B8;
+ gTasks[taskId].func(taskId);
+}
+
+void sub_80D57B8(u8 taskId)
+{
+ u8 spriteId = gTasks[taskId].data[0];
+ gSprites[spriteId].pos2.x = Sin(gTasks[taskId].data[5], gTasks[taskId].data[1]);
+ gSprites[spriteId].pos2.y = -Cos(gTasks[taskId].data[5], gTasks[taskId].data[2]);
+ gSprites[spriteId].pos2.y += gTasks[taskId].data[2];
+ gTasks[taskId].data[5] += gTasks[taskId].data[4];
+ gTasks[taskId].data[5] &= 0xff;
+
+ if (gTasks[taskId].data[5] == 0)
+ gTasks[taskId].data[3]--;
+
+ if (gTasks[taskId].data[3] == 0)
+ {
+ gSprites[spriteId].pos2.x = 0;
+ gSprites[spriteId].pos2.y = 0;
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+}
+
+// Moves a mon bg picture along an elliptical path that begins
+// and ends at the mon's origin location. Reverses the direction
+// of the path if it's not on the player's side of the battle.
+// arg 0: battler
+// arg 1: ellipse width
+// arg 2: ellipse height
+// arg 3: num loops
+// arg 4: speed (valid values are 0-5)
+void AnimTask_TranslateMonEllipticalRespectSide(u8 taskId)
+{
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+
+ AnimTask_TranslateMonElliptical(taskId);
+}
+
+// Performs a simple horizontal lunge, where the mon moves
+// horizontally, and then moves back in the opposite direction.
+// arg 0: duration of single lunge direction
+// arg 1: x pixel delta that is applied each frame
+void DoHorizontalLunge(struct Sprite *sprite)
+{
+ sprite->invisible = TRUE;
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ sprite->data[1] = -gBattleAnimArgs[1];
+ else
+ sprite->data[1] = gBattleAnimArgs[1];
+
+ sprite->data[0] = gBattleAnimArgs[0];
+ sprite->data[2] = 0;
+ sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker];
+ sprite->data[4] = gBattleAnimArgs[0];
+ StoreSpriteCallbackInData6(sprite, ReverseHorizontalLungeDirection);
+ sprite->callback = sub_80A6630;
+}
+
+void ReverseHorizontalLungeDirection(struct Sprite *sprite)
+{
+ sprite->data[0] = sprite->data[4];
+ sprite->data[1] = -sprite->data[1];
+ sprite->callback = sub_80A6630;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
+
+// Performs a simple vertical dipping motion, where moves vertically, and then
+// moves back in the opposite direction.
+// arg 0: duration of single dip direction
+// arg 1: y pixel delta that is applied each frame
+// arg 2: battler
+void DoVerticalDip(struct Sprite *sprite)
+{
+ u8 spriteId;
+ sprite->invisible = TRUE;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]);
+ sprite->data[0] = gBattleAnimArgs[0];
+ sprite->data[1] = 0;
+ sprite->data[2] = gBattleAnimArgs[1];
+ sprite->data[3] = spriteId;
+ sprite->data[4] = gBattleAnimArgs[0];
+ StoreSpriteCallbackInData6(sprite, ReverseVerticalDipDirection);
+ sprite->callback = sub_80A6630;
+}
+
+void ReverseVerticalDipDirection(struct Sprite *sprite)
+{
+ sprite->data[0] = sprite->data[4];
+ sprite->data[2] = -sprite->data[2];
+ sprite->callback = sub_80A6630;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+}
+
+// Linearly slides a mon's bg picture back to its original sprite position.
+// The sprite parameter is a dummy sprite used for facilitating the movement with its callback.
+// arg 0: 1 = target or 0 = attacker
+// arg 1: direction (0 = horizontal and vertical, 1 = horizontal only, 2 = vertical only)
+// arg 2: duration
+void SlideMonToOriginalPos(struct Sprite *sprite)
+{
+ u32 monSpriteId;
+ if (!gBattleAnimArgs[0])
+ monSpriteId = gBattlerSpriteIds[gBattleAnimAttacker];
+ else
+ monSpriteId = gBattlerSpriteIds[gBattleAnimTarget];
+
+ sprite->data[0] = gBattleAnimArgs[2];
+ sprite->data[1] = gSprites[monSpriteId].pos1.x + gSprites[monSpriteId].pos2.x;
+ sprite->data[2] = gSprites[monSpriteId].pos1.x;
+ sprite->data[3] = gSprites[monSpriteId].pos1.y + gSprites[monSpriteId].pos2.y;
+ sprite->data[4] = gSprites[monSpriteId].pos1.y;
+ sub_80A6E14(sprite);
+ sprite->data[3] = 0;
+ sprite->data[4] = 0;
+ sprite->data[5] = gSprites[monSpriteId].pos2.x;
+ sprite->data[6] = gSprites[monSpriteId].pos2.y;
+ sprite->invisible = TRUE;
+
+ if (gBattleAnimArgs[1] == 1)
+ sprite->data[2] = 0;
+ else if (gBattleAnimArgs[1] == 2)
+ sprite->data[1] = 0;
+
+ sprite->data[7] = gBattleAnimArgs[1];
+ sprite->data[7] |= monSpriteId << 8;
+ sprite->callback = SlideMonToOriginalPosStep;
+}
+
+void SlideMonToOriginalPosStep(struct Sprite *sprite)
+{
+ s8 monSpriteId;
+ u8 lo;
+ struct Sprite *monSprite;
+
+ lo = sprite->data[7] & 0xff;
+ monSpriteId = sprite->data[7] >> 8;
+ monSprite = &gSprites[monSpriteId];
+ if (sprite->data[0] == 0)
+ {
+ if (lo < 2)
+ monSprite->pos2.x = 0;
+
+ if (lo == 2 || lo == 0)
+ monSprite->pos2.y = 0;
+
+ DestroyAnimSprite(sprite);
+ }
+ else
+ {
+ sprite->data[0]--;
+ sprite->data[3] += sprite->data[1];
+ sprite->data[4] += sprite->data[2];
+ monSprite->pos2.x = (s8)(sprite->data[3] >> 8) + sprite->data[5];
+ monSprite->pos2.y = (s8)(sprite->data[4] >> 8) + sprite->data[6];
+ }
+}
+
+// Linearly translates a mon to a target offset. The horizontal offset
+// is mirrored for the opponent's pokemon, and the vertical offset
+// is only mirrored if arg 3 is set to 1.
+// arg 0: 0 = attacker, 1 = target
+// arg 1: target x pixel offset
+// arg 2: target y pixel offset
+// arg 3: mirror vertical translation for opposite battle side
+// arg 4: duration
+void SlideMonToOffset(struct Sprite *sprite)
+{
+ u8 battler;
+ u8 monSpriteId;
+ if (!gBattleAnimArgs[0])
+ battler = gBattleAnimAttacker;
+ else
+ battler = gBattleAnimTarget;
+
+ monSpriteId = gBattlerSpriteIds[battler];
+ if (GetBattlerSide(battler) != B_SIDE_PLAYER)
+ {
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+ if (gBattleAnimArgs[3] == 1)
+ {
+ gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+ }
+ }
+
+ sprite->data[0] = gBattleAnimArgs[4];
+ sprite->data[1] = gSprites[monSpriteId].pos1.x;
+ sprite->data[2] = gSprites[monSpriteId].pos1.x + gBattleAnimArgs[1];
+ sprite->data[3] = gSprites[monSpriteId].pos1.y;
+ sprite->data[4] = gSprites[monSpriteId].pos1.y + gBattleAnimArgs[2];
+ sub_80A6E14(sprite);
+ sprite->data[3] = 0;
+ sprite->data[4] = 0;
+ sprite->data[5] = monSpriteId;
+ sprite->invisible = TRUE;
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+ sprite->callback = sub_80A6680;
+}
+
+void sub_80D5B48(struct Sprite *sprite)
+{
+ u8 spriteId;
+ u8 battlerId;
+ sprite->invisible = TRUE;
+ if (!gBattleAnimArgs[0])
+ {
+ battlerId = gBattleAnimAttacker;
+ }
+ else
+ {
+ battlerId = gBattleAnimTarget;
+ }
+ spriteId = gBattlerSpriteIds[battlerId];
+ if (GetBattlerSide(battlerId))
+ {
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+ if (gBattleAnimArgs[3] == 1)
+ {
+ gBattleAnimArgs[2] = -gBattleAnimArgs[2];
+ }
+ }
+ sprite->data[0] = gBattleAnimArgs[4];
+ sprite->data[1] = gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x;
+ sprite->data[2] = sprite->data[1] + gBattleAnimArgs[1];
+ sprite->data[3] = gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y;
+ sprite->data[4] = sprite->data[3] + gBattleAnimArgs[2];
+ sub_80A6E14(sprite);
+ sprite->data[3] = gSprites[spriteId].pos2.x << 8;
+ sprite->data[4] = gSprites[spriteId].pos2.y << 8;
+ sprite->data[5] = spriteId;
+ sprite->data[6] = gBattleAnimArgs[5];
+ if (!gBattleAnimArgs[5])
+ {
+ StoreSpriteCallbackInData6(sprite, DestroyAnimSprite);
+ }
+ else
+ {
+ StoreSpriteCallbackInData6(sprite, sub_80D5C20);
+ }
+ sprite->callback = sub_80A6680;
+}
+
+
+void sub_80D5C20(struct Sprite *sprite)
+{
+ gSprites[sprite->data[5]].pos2.x = 0;
+ gSprites[sprite->data[5]].pos2.y = 0;
+ DestroyAnimSprite(sprite);
+}
+
+// Task to facilitate a two-part translation animation, in which the sprite
+// is first translated in an arc to one position. Then, it "lunges" to a target
+// x offset. Used in TAKE_DOWN, for example.
+// arg 0: anim bank
+// arg 1: horizontal speed (subpixel)
+// arg 2: wave amplitude
+// arg 3: first duration
+// arg 4: delay before starting lunge
+// arg 5: target x offset for lunge
+// arg 6: lunge duration
+void AnimTask_WindUpLunge(u8 taskId)
+{
+ s16 wavePeriod = 0x8000 / gBattleAnimArgs[3];
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ {
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+ gBattleAnimArgs[5] = -gBattleAnimArgs[5];
+ }
+ gTasks[taskId].data[0] = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ gTasks[taskId].data[1] = (gBattleAnimArgs[1] << 8) / gBattleAnimArgs[3];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].data[3] = gBattleAnimArgs[3];
+ gTasks[taskId].data[4] = gBattleAnimArgs[4];
+ gTasks[taskId].data[5] = (gBattleAnimArgs[5] << 8) / gBattleAnimArgs[6];
+ gTasks[taskId].data[6] = gBattleAnimArgs[6];
+ gTasks[taskId].data[7] = wavePeriod;
+ gTasks[taskId].func = AnimTask_WindUpLungePart1;
+}
+
+void AnimTask_WindUpLungePart1(u8 taskId)
+{
+ u8 spriteId;
+ spriteId = gTasks[taskId].data[0];
+ gTasks[taskId].data[11] += gTasks[taskId].data[1];
+ gSprites[spriteId].pos2.x = gTasks[taskId].data[11] >> 8;
+ gSprites[spriteId].pos2.y = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]);
+ gTasks[taskId].data[10] += gTasks[taskId].data[7];
+ if (--gTasks[taskId].data[3] == 0)
+ {
+ gTasks[taskId].func = AnimTask_WindUpLungePart2;
+ }
+}
+
+void AnimTask_WindUpLungePart2(u8 taskId)
+{
+ u8 spriteId;
+ if (gTasks[taskId].data[4] > 0)
+ {
+ gTasks[taskId].data[4]--;
+ }
+ else
+ {
+ spriteId = gTasks[taskId].data[0];
+ gTasks[taskId].data[12] += gTasks[taskId].data[5];
+ gSprites[spriteId].pos2.x = (gTasks[taskId].data[12] >> 8) + (gTasks[taskId].data[11] >> 8);
+ if (--gTasks[taskId].data[6] == 0)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+}
+
+void sub_80D5DB0(u8 taskId)
+{
+ u8 spriteId;
+ switch (gBattleAnimArgs[0])
+ {
+ case 0:
+ case 1:
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[0]);
+ break;
+ case 2:
+ if (!IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimAttacker)))
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ spriteId = gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)];
+ break;
+ case 3:
+ if (!IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget)))
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ spriteId = gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimTarget)];
+ break;
+ default:
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ gTasks[taskId].data[0] = spriteId;
+ if (GetBattlerSide(gBattleAnimTarget) != B_SIDE_PLAYER)
+ {
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ }
+ else
+ {
+ gTasks[taskId].data[1] = -gBattleAnimArgs[1];
+ }
+ gTasks[taskId].func = sub_80A8B3C;
+}
+
+void sub_80A8B3C(u8 taskId)
+{
+ u8 spriteId = gTasks[taskId].data[0];
+ gSprites[spriteId].pos2.x += gTasks[taskId].data[1];
+ if (gSprites[spriteId].pos2.x + gSprites[spriteId].pos1.x + 0x20 > 0x130u)
+ {
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+}
+
+// Task that facilitates translating the mon bg picture back and forth
+// in a swaying motion (uses Sine wave). It can sway either horizontally
+// or vertically, but not both.
+// arg 0: direction (0 = horizontal, 1 = vertical)
+// arg 1: wave amplitude
+// arg 2: wave period
+// arg 3: num sways
+// arg 4: which mon (0 = attacker, 1`= target)
+void AnimTask_SwayMon(u8 taskId)
+{
+ u8 spriteId;
+ if (GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER)
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[4]);
+ gTasks[taskId].data[0] = gBattleAnimArgs[0];
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].data[3] = gBattleAnimArgs[3];
+ gTasks[taskId].data[4] = spriteId;
+
+ if (gBattleAnimArgs[4] == 0)
+ gTasks[taskId].data[5] = gBattleAnimAttacker;
+ else
+ gTasks[taskId].data[5] = gBattleAnimTarget;
+
+ gTasks[taskId].data[12] = 1;
+ gTasks[taskId].func = AnimTask_SwayMonStep;
+}
+
+void AnimTask_SwayMonStep(u8 taskId)
+{
+ s16 sineValue;
+ u8 spriteId;
+ int waveIndex;
+ u16 sineIndex;
+
+ spriteId = gTasks[taskId].data[4];
+ sineIndex = gTasks[taskId].data[10] + gTasks[taskId].data[2];
+ gTasks[taskId].data[10] = sineIndex;
+ waveIndex = sineIndex >> 8;
+ sineValue = Sin(waveIndex, gTasks[taskId].data[1]);
+
+ if (gTasks[taskId].data[0] == 0)
+ {
+ gSprites[spriteId].pos2.x = sineValue;
+ }
+ else
+ {
+ if (GetBattlerSide(gTasks[taskId].data[5]) == B_SIDE_PLAYER)
+ {
+ gSprites[spriteId].pos2.y = (sineValue >= 0) ? sineValue : -sineValue;
+ }
+ else
+ {
+ gSprites[spriteId].pos2.y = (sineValue >= 0) ? -sineValue : sineValue;
+ }
+ }
+
+ if (((waveIndex >= 0x80u) && (gTasks[taskId].data[11] == 0) && (gTasks[taskId].data[12] == 1))
+ || ((waveIndex < 0x7fu) && (gTasks[taskId].data[11] == 1) && (gTasks[taskId].data[12] == 0)))
+ {
+ gTasks[taskId].data[11] ^= 1;
+ gTasks[taskId].data[12] ^= 1;
+ if (--gTasks[taskId].data[3] == 0)
+ {
+ gSprites[spriteId].pos2.x = 0;
+ gSprites[spriteId].pos2.y = 0;
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+}
+
+// Scales a mon's sprite, and then scales back to its original dimensions.
+// arg 0: x scale delta
+// arg 1: y scale delta
+// arg 2: duration
+// arg 3: anim bank
+// arg 4: sprite object mode
+void AnimTask_ScaleMonAndRestore(u8 taskId)
+{
+ u8 spriteId;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[3]);
+ sub_80A7270(spriteId, gBattleAnimArgs[4]);
+ gTasks[taskId].data[0] = gBattleAnimArgs[0];
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].data[3] = gBattleAnimArgs[2];
+ gTasks[taskId].data[4] = spriteId;
+ gTasks[taskId].data[10] = 0x100;
+ gTasks[taskId].data[11] = 0x100;
+ gTasks[taskId].func = AnimTask_ScaleMonAndRestoreStep;
+}
+
+void AnimTask_ScaleMonAndRestoreStep(u8 taskId)
+{
+ u8 spriteId;
+ gTasks[taskId].data[10] += gTasks[taskId].data[0];
+ gTasks[taskId].data[11] += gTasks[taskId].data[1];
+ spriteId = gTasks[taskId].data[4];
+ obj_id_set_rotscale(spriteId, gTasks[taskId].data[10], gTasks[taskId].data[11], 0);
+ if (--gTasks[taskId].data[2] == 0)
+ {
+ if (gTasks[taskId].data[3] > 0)
+ {
+ gTasks[taskId].data[0] = -gTasks[taskId].data[0];
+ gTasks[taskId].data[1] = -gTasks[taskId].data[1];
+ gTasks[taskId].data[2] = gTasks[taskId].data[3];
+ gTasks[taskId].data[3] = 0;
+ }
+ else
+ {
+ sub_80A7344(spriteId);
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+}
+
+void sub_80D6134(u8 taskId)
+{
+ u8 spriteId;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]);
+ sub_80A7270(spriteId, 0);
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[2] = gBattleAnimArgs[0];
+ if (gBattleAnimArgs[3] != 1)
+ {
+ gTasks[taskId].data[3] = 0;
+ }
+ else
+ {
+ gTasks[taskId].data[3] = gBattleAnimArgs[0] * gBattleAnimArgs[1];
+ }
+ gTasks[taskId].data[4] = gBattleAnimArgs[1];
+ gTasks[taskId].data[5] = spriteId;
+ gTasks[taskId].data[6] = gBattleAnimArgs[3];
+ if (IsContest())
+ {
+ gTasks[taskId].data[7] = 1;
+ }
+ else
+ {
+ if (gBattleAnimArgs[2] == 0)
+ {
+ gTasks[taskId].data[7] = !GetBattlerSide(gBattleAnimAttacker);
+ }
+ else
+ {
+ gTasks[taskId].data[7] = !GetBattlerSide(gBattleAnimTarget);
+ }
+ }
+ if (gTasks[taskId].data[7])
+ {
+ if (!IsContest())
+ {
+ gTasks[taskId].data[3] *= -1;
+ gTasks[taskId].data[4] *= -1;
+ }
+ }
+ gTasks[taskId].func = sub_80D6308;
+}
+
+void sub_80D622C(u8 taskId)
+{
+ u8 spriteId;
+ spriteId = GetAnimBattlerSpriteId(gBattleAnimArgs[2]);
+ sub_80A7270(spriteId, 0);
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[2] = gBattleAnimArgs[0];
+ if (gBattleAnimArgs[2] == 0)
+ {
+ if (GetBattlerSide(gBattleAnimAttacker))
+ {
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+ }
+ }
+ else
+ {
+ if (GetBattlerSide(gBattleAnimTarget))
+ {
+ gBattleAnimArgs[1] = -gBattleAnimArgs[1];
+ }
+ }
+ if (gBattleAnimArgs[3] != 1)
+ {
+ gTasks[taskId].data[3] = 0;
+ }
+ else
+ {
+ gTasks[taskId].data[3] = gBattleAnimArgs[0] * gBattleAnimArgs[1];
+ }
+ gTasks[taskId].data[4] = gBattleAnimArgs[1];
+ gTasks[taskId].data[5] = spriteId;
+ gTasks[taskId].data[6] = gBattleAnimArgs[3];
+ gTasks[taskId].data[7] = 1;
+ gTasks[taskId].data[3] *= -1;
+ gTasks[taskId].data[4] *= -1;
+ gTasks[taskId].func = sub_80D6308;
+}
+
+void sub_80D6308(u8 taskId)
+{
+ gTasks[taskId].data[3] += gTasks[taskId].data[4];
+ obj_id_set_rotscale(gTasks[taskId].data[5], 0x100, 0x100, gTasks[taskId].data[3]);
+ if (gTasks[taskId].data[7])
+ {
+ sub_80A73A0(gTasks[taskId].data[5]);
+ }
+ if (++gTasks[taskId].data[1] >= gTasks[taskId].data[2])
+ {
+ switch (gTasks[taskId].data[6])
+ {
+ case 1:
+ sub_80A7344(gTasks[taskId].data[5]);
+ case 0:
+ default:
+ DestroyAnimVisualTask(taskId);
+ return;
+ case 2:
+ gTasks[taskId].data[1] = 0;
+ gTasks[taskId].data[4] *= -1;
+ gTasks[taskId].data[6] = 1;
+ break;
+ }
+ }
+}
+
+void sub_80D6388(u8 taskId)
+{
+ if (!gBattleAnimArgs[0])
+ {
+ gTasks[taskId].data[15] = gAnimMovePower / 12;
+ if (gTasks[taskId].data[15] < 1)
+ {
+ gTasks[taskId].data[15] = 1;
+ }
+ if (gTasks[taskId].data[15] > 16)
+ {
+ gTasks[taskId].data[15] = 16;
+ }
+ }
+ else
+ {
+ gTasks[taskId].data[15] = gAnimMoveDmg / 12;
+ if (gTasks[taskId].data[15] < 1)
+ {
+ gTasks[taskId].data[15] = 1;
+ }
+ if (gTasks[taskId].data[15] > 16)
+ {
+ gTasks[taskId].data[15] = 16;
+ }
+ }
+ gTasks[taskId].data[14] = gTasks[taskId].data[15] / 2;
+ gTasks[taskId].data[13] = gTasks[taskId].data[14] + (gTasks[taskId].data[15] & 1);
+ gTasks[taskId].data[12] = 0;
+ gTasks[taskId].data[10] = gBattleAnimArgs[3];
+ gTasks[taskId].data[11] = gBattleAnimArgs[4];
+ gTasks[taskId].data[7] = GetAnimBattlerSpriteId(1);
+ gTasks[taskId].data[8] = gSprites[gTasks[taskId].data[7]].pos2.x;
+ gTasks[taskId].data[9] = gSprites[gTasks[taskId].data[7]].pos2.y;
+ gTasks[taskId].data[0] = 0;
+ gTasks[taskId].data[1] = gBattleAnimArgs[1];
+ gTasks[taskId].data[2] = gBattleAnimArgs[2];
+ gTasks[taskId].func = sub_80D646C;
+}
+
+void sub_80D646C(u8 taskId)
+{
+ struct Task *task = &gTasks[taskId];
+ if (++task->data[0] > task->data[1])
+ {
+ task->data[0] = 0;
+ task->data[12] = (task->data[12] + 1) & 1;
+ if (task->data[10])
+ {
+ if (task->data[12])
+ {
+ gSprites[task->data[7]].pos2.x = task->data[8] + task->data[13];
+ }
+ else
+ {
+ gSprites[task->data[7]].pos2.x = task->data[8] - task->data[14];
+ }
+ }
+ if (task->data[11])
+ {
+ if (task->data[12])
+ {
+ gSprites[task->data[7]].pos2.y = task->data[15];
+ }
+ else
+ {
+ gSprites[task->data[7]].pos2.y = 0;
+ }
+ }
+ if (!--task->data[2])
+ {
+ gSprites[task->data[7]].pos2.x = 0;
+ gSprites[task->data[7]].pos2.y = 0;
+ DestroyAnimVisualTask(taskId);
+ return;
+ }
+ }
+}
diff --git a/src/battle_anim_sound_tasks.c b/src/battle_anim_sound_tasks.c
index 5a829171e..6993bd2ee 100644
--- a/src/battle_anim_sound_tasks.c
+++ b/src/battle_anim_sound_tasks.c
@@ -131,7 +131,7 @@ void sub_8158D8C(u8 taskId)
if (IsContest())
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
- species = gContestResources->field_18->field_0;
+ species = gContestResources->field_18->unk0;
else
DestroyAnimVisualTask(taskId); // UB: function should return upon destroying task.
}
@@ -177,7 +177,7 @@ void sub_8158E9C(u8 taskId)
if (IsContest())
{
if (gBattleAnimArgs[0] == ANIM_ATTACKER)
- species = gContestResources->field_18->field_0;
+ species = gContestResources->field_18->unk0;
else
DestroyAnimVisualTask(taskId); // UB: function should return upon destroying task.
}
@@ -281,7 +281,7 @@ void sub_81590B8(u8 taskId)
pan = BattleAnimAdjustPanning(PAN_SIDE_PLAYER);
if (IsContest())
- species = gContestResources->field_18->field_0;
+ species = gContestResources->field_18->unk0;
else
species = gAnimBattlerSpecies[gBattleAnimAttacker];
diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c
index b4dcf586d..80e1574a4 100644
--- a/src/battle_gfx_sfx_util.c
+++ b/src/battle_gfx_sfx_util.c
@@ -29,7 +29,7 @@ extern struct MusicPlayerInfo gMPlayInfo_SE2;
extern struct MusicPlayerInfo gMPlayInfo_BGM;
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 struct CompressedSpriteSheet gMonFrontPicTable[];
extern const struct CompressedSpriteSheet gMonBackPicTable[];
@@ -437,7 +437,7 @@ bool8 TryHandleLaunchBattleTableAnimation(u8 activeBattler, u8 atkBattler, u8 de
gBattleAnimAttacker = atkBattler;
gBattleAnimTarget = defBattler;
gBattleSpritesDataPtr->animationData->animArg = argument;
- LaunchBattleAnimation(gBattleAnims_VariousTable, tableId, FALSE);
+ LaunchBattleAnimation(gBattleAnims_General, tableId, FALSE);
taskId = CreateTask(Task_ClearBitWhenBattleTableAnimDone, 10);
gTasks[taskId].tBattlerId = activeBattler;
gBattleSpritesDataPtr->healthBoxesData[gTasks[taskId].tBattlerId].animFromTableActive = 1;
@@ -899,14 +899,14 @@ void HandleSpeciesGfxDataChange(u8 battlerAtk, u8 battlerDef, bool8 notTransform
if (IsContest())
{
position = 0;
- targetSpecies = gContestResources->field_18->field_2;
- personalityValue = gContestResources->field_18->field_8;
- otId = gContestResources->field_18->field_C;
+ targetSpecies = gContestResources->field_18->unk2;
+ personalityValue = gContestResources->field_18->unk8;
+ otId = gContestResources->field_18->unkC;
HandleLoadSpecialPokePic_DontHandleDeoxys(&gMonBackPicTable[targetSpecies],
gMonSpritesGfxPtr->sprites[0],
targetSpecies,
- gContestResources->field_18->field_10);
+ gContestResources->field_18->unk10);
}
else
{
diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c
index 10b432d8e..0422c11e3 100644
--- a/src/battle_script_commands.c
+++ b/src/battle_script_commands.c
@@ -3,6 +3,7 @@
#include "constants/battle_move_effects.h"
#include "constants/battle_script_commands.h"
#include "battle_message.h"
+#include "battle_anim.h"
#include "battle_ai_script_commands.h"
#include "battle_scripts.h"
#include "constants/moves.h"
@@ -4381,16 +4382,16 @@ static void atk47_setgraphicalstatchangevalues(void)
switch (GET_STAT_BUFF_VALUE2(gBattleScripting.statChanger))
{
case SET_STAT_BUFF_VALUE(1): // +1
- value = 0xF;
+ value = STAT_ANIM_PLUS1;
break;
case SET_STAT_BUFF_VALUE(2): // +2
- value = 0x27;
+ value = STAT_ANIM_PLUS2;
break;
case SET_STAT_BUFF_VALUE(1) | STAT_BUFF_NEGATIVE: // -1
- value = 0x16;
+ value = STAT_ANIM_MINUS1;
break;
case SET_STAT_BUFF_VALUE(2) | STAT_BUFF_NEGATIVE: // -2
- value = 0x2E;
+ value = STAT_ANIM_MINUS2;
break;
}
gBattleScripting.animArg1 = GET_STAT_BUFF_ID(gBattleScripting.statChanger) + value - 1;
@@ -4412,9 +4413,9 @@ static void atk48_playstatchangeanimation(void)
{
s16 startingStatAnimId;
if (gBattlescriptCurrInstr[3] & ATK48_STAT_BY_TWO)
- startingStatAnimId = 0x2D;
+ startingStatAnimId = STAT_ANIM_MINUS2 - 1;
else
- startingStatAnimId = 0x15;
+ startingStatAnimId = STAT_ANIM_MINUS1 - 1;
while (statsToCheck != 0)
{
@@ -4447,18 +4448,18 @@ static void atk48_playstatchangeanimation(void)
if (changeableStatsCount > 1) // more than one stat, so the color is gray
{
if (gBattlescriptCurrInstr[3] & ATK48_STAT_BY_TWO)
- statAnimId = 0x3A;
+ statAnimId = STAT_ANIM_MULTIPLE_MINUS2;
else
- statAnimId = 0x39;
+ statAnimId = STAT_ANIM_MULTIPLE_MINUS1;
}
}
else // goes up
{
s16 startingStatAnimId;
if (gBattlescriptCurrInstr[3] & ATK48_STAT_BY_TWO)
- startingStatAnimId = 0x26;
+ startingStatAnimId = STAT_ANIM_PLUS2 - 1;
else
- startingStatAnimId = 0xE;
+ startingStatAnimId = STAT_ANIM_PLUS1 - 1;
while (statsToCheck != 0)
{
@@ -4473,9 +4474,9 @@ static void atk48_playstatchangeanimation(void)
if (changeableStatsCount > 1) // more than one stat, so the color is gray
{
if (gBattlescriptCurrInstr[3] & ATK48_STAT_BY_TWO)
- statAnimId = 0x38;
+ statAnimId = STAT_ANIM_MULTIPLE_PLUS2;
else
- statAnimId = 0x37;
+ statAnimId = STAT_ANIM_MULTIPLE_PLUS1;
}
}
diff --git a/src/contest.c b/src/contest.c
index 910637387..8eacc89c3 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -2535,7 +2535,7 @@ u8 sub_80DB174(u16 species, u32 otId, u32 personality, u32 index)
LoadCompressedPalette(GetFrontSpritePalFromSpeciesAndPersonality(species, otId, personality), 0x120, 0x20);
SetMultiuseSpriteTemplateToPokemon(species, 0);
- spriteId = CreateSprite(&gMultiuseSpriteTemplate, 0x70, sub_80A600C(2, species, 0), 30);
+ spriteId = CreateSprite(&gMultiuseSpriteTemplate, 0x70, GetBattlerSpriteFinal_Y(2, species, FALSE), 30);
gSprites[spriteId].oam.paletteNum = 2;
gSprites[spriteId].oam.priority = 2;
gSprites[spriteId].subpriority = sub_80A82E4(2);
diff --git a/src/data/pokemon_graphics/back_pic_coordinates.h b/src/data/pokemon_graphics/back_pic_coordinates.h
index f54b409e4..877bf3475 100644
--- a/src/data/pokemon_graphics/back_pic_coordinates.h
+++ b/src/data/pokemon_graphics/back_pic_coordinates.h
@@ -1,4 +1,4 @@
-const struct MonCoords gUnknown_083021D8[] =
+const struct MonCoords gMonBackPicCoords[] =
{
{0x88, 0x00}, // SPECIES_NONE
{0x64, 0x10}, // SPECIES_BULBASAUR
diff --git a/src/intro.c b/src/intro.c
index f21ad348d..e1d61242c 100644
--- a/src/intro.c
+++ b/src/intro.c
@@ -25,6 +25,7 @@
#include "blend_palette.h"
#include "title_screen.h"
#include "constants/rgb.h"
+#include "constants/battle_anim.h"
extern const struct CompressedSpriteSheet gBattleAnimPicTable[];
extern const struct CompressedSpritePalette gBattleAnimPaletteTable[];
@@ -118,7 +119,7 @@ static const struct SpriteTemplate gUnknown_085E4AB8 =
};
static const u8 gUnknown_085E4AD0[][2] =
{
- {0x7C, 0x28},
+ {0x7C, 0x28},
{0x66, 0x1E},
{0x4D, 0x1E},
{0x36, 0x0F},
@@ -664,25 +665,25 @@ static const s16 gUnknown_085E4E94[][2] =
{5, 20},
{3, 28},
};
-static const union AffineAnimCmd gUnknown_085E4ED8[] =
+static const union AffineAnimCmd gUnknown_085E4ED8[] =
{
AFFINEANIMCMD_FRAME(128, 128, 0, 0),
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd gUnknown_085E4EE8[] =
+static const union AffineAnimCmd gUnknown_085E4EE8[] =
{
AFFINEANIMCMD_FRAME(128, 128, 0, 0),
AFFINEANIMCMD_FRAME(16, 16, 0, 16),
AFFINEANIMCMD_FRAME(-16, -16, 0, 8),
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd gUnknown_085E4F08[] =
+static const union AffineAnimCmd gUnknown_085E4F08[] =
{
AFFINEANIMCMD_FRAME(256, 256, 0, 0),
AFFINEANIMCMD_FRAME(8, 8, 0, 48),
AFFINEANIMCMD_END,
};
-static const union AffineAnimCmd gUnknown_085E4F20[] =
+static const union AffineAnimCmd gUnknown_085E4F20[] =
{
AFFINEANIMCMD_FRAME(256, 256, 0, 0),
AFFINEANIMCMD_FRAME(2, 2, 0, 48),
@@ -695,7 +696,7 @@ static const union AffineAnimCmd *const gUnknown_085E4F38[] =
gUnknown_085E4F08,
gUnknown_085E4F20,
};
-static const u16 gUnknown_085E4F48[] =
+static const u16 gUnknown_085E4F48[] =
{
0x100, 0xC0, 0x80, 0x40, 0x00, 0x40, 0x80, 0xC0, 0x100
};
@@ -1086,10 +1087,10 @@ static void Task_IntroWaterDrops(u8 taskId)
if (gIntroFrameCounter == 256)
CreateTask(Task_IntroWaterDrops_2, 0);
-
+
if (gIntroFrameCounter == 368)
CreateWaterDrop(48, 0, 0x400, 5, 0x70, TRUE);
-
+
if (gIntroFrameCounter == 384)
CreateWaterDrop(200, 60, 0x400, 9, 0x80, TRUE);
@@ -1113,7 +1114,7 @@ static void Task_IntroWaterDrops_3(u8 taskId)
s16 *data = gTasks[taskId].data;
if (++data[2] & 1)
data[3]++;
-
+
switch (data[0])
{
case 0:
@@ -1127,7 +1128,7 @@ static void Task_IntroWaterDrops_3(u8 taskId)
data[0] = 0;
break;
}
-
+
if (data[3] > 0x3C)
DestroyTask(taskId);
}
@@ -1206,25 +1207,25 @@ static void Task_IntroStartBikeRide(u8 taskId)
LoadCompressedObjectPic(gIntro2BrendanSpriteSheet);
else
LoadCompressedObjectPic(gIntro2MaySpriteSheet);
-
+
LoadCompressedObjectPic(gIntro2BicycleSpriteSheet);
LoadCompressedObjectPic(gIntro2FlygonSpriteSheet);
-
+
for (spriteId = 0; spriteId < 3; spriteId++)
{
LoadCompressedObjectPic(&gUnknown_085E4AE8[spriteId]);
}
-
+
LoadSpritePalettes(gUnknown_085F530C);
LoadSpritePalettes(gUnknown_085E4B08);
CreateSprite(&gUnknown_085E4BDC, 0x110, 0x80, 0);
CreateSprite(&gUnknown_085E4BA4, 0x120, 0x6E, 1);
-
+
if (gUnknown_0203BCC8 == 0)
spriteId = intro_create_brendan_sprite(0x110, 100);
else
spriteId = intro_create_may_sprite(0x110, 100);
-
+
gSprites[spriteId].callback = sub_816F9D4;
gSprites[spriteId].anims = gUnknown_085E4DC4;
gTasks[taskId].data[1] = spriteId;
@@ -1243,7 +1244,7 @@ static void Task_IntroHandleBikeAndFlygonMovement(u8 taskId)
{
s16 a;
u16 sine;
-
+
if (gIntroFrameCounter == 1856)
{
gUnknown_0203BD28 = 2;
@@ -1427,7 +1428,7 @@ static void sub_816D9C0(struct Sprite *sprite)
case 4:
if (sprite->animEnded)
sprite->pos1.x += 4;
-
+
if (sprite->pos1.x > 336)
{
StartSpriteAnim(sprite, 1);
@@ -1506,7 +1507,7 @@ static void Task_IntroLoadPart3Graphics(u8 taskId)
static void Task_IntroSpinAndZoomPokeball(u8 taskId)
{
gTasks[taskId].data[0] += 0x400;
-
+
if (gTasks[taskId].data[1] <= 0x6BF)
{
gTasks[taskId].data[1] += gTasks[taskId].data[2];
@@ -1516,9 +1517,9 @@ static void Task_IntroSpinAndZoomPokeball(u8 taskId)
{
gTasks[taskId].func = Task_IntroWaitToSetupPart3LegendsFight;
}
-
+
sub_816F2A8(0x78, 0x50, 0x10000 / gTasks[taskId].data[1], gTasks[taskId].data[0]);
-
+
if (gIntroFrameCounter == 28)
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 0x10, RGB_WHITEALPHA);
}
@@ -1531,8 +1532,6 @@ static void Task_IntroWaitToSetupPart3LegendsFight(u8 taskId)
static void Task_IntroLoadPart1Graphics3(u8 taskId)
{
- u16 i;
-
if (!gPaletteFade.active)
{
intro_reset_and_hide_bgs();
@@ -1543,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[0x3A]);
- LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[0x3A]);
+ LoadCompressedObjectPicUsingHeap(&gBattleAnimPicTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
+ LoadCompressedObjectPaletteUsingHeap(&gBattleAnimPaletteTable[GET_TRUE_SPRITE_INDEX(ANIM_TAG_058)]);
CpuCopy16(gIntro3BgPal, gPlttBufferUnfaded, sizeof(gIntro3BgPal));
gTasks[taskId].func = Task_IntroLoadPart1Graphics4;
}
@@ -1584,12 +1583,10 @@ static void Task_IntroLoadPart1Graphics4(u8 taskId)
static void Task_IntroLoadPart1Graphics5(u8 taskId)
{
- u16 foo = gTasks[taskId].data[0];
-
if (gTasks[taskId].data[0] != 32)
{
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
{
@@ -1613,7 +1610,7 @@ static void Task_IntroLoadPart1Graphics7(u8 taskId)
static void Task_IntroLoadPart1Graphics8(u8 taskId)
{
s16 *data = gTasks[taskId].data;
-
+
data[5]++;
if ((u16)(data[0] - 1) < 7 && data[5] % 2 == 0)
data[4] ^= 3;
@@ -1720,7 +1717,7 @@ static void sub_816E190(u8 a0)
{
int i;
u8 spriteId;
-
+
for (i = 0; i < 6; 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]++;
if (sprite->data[3] % 2 == 0)
sprite->pos2.y ^= 3;
-
+
switch(sprite->data[0])
{
case 0:
@@ -1752,7 +1749,7 @@ static void sub_816E1F8(struct Sprite *sprite)
sprite->pos1.x -= 2;
else
sprite->pos1.x += 2;
-
+
if (sprite->pos1.y < 0x50)
sprite->pos1.y -= 2;
else
@@ -1783,9 +1780,9 @@ static void Task_IntroLoadPart1Graphics9(u8 taskId)
static void Task_IntroFadeIn0(u8 taskId)
{
s16 *data = gTasks[taskId].data;
-
+
sub_816F2A8(data[1], data[2], data[3], 0);
-
+
switch (data[0])
{
case 0:
@@ -1928,7 +1925,7 @@ static void sub_816E6D4(u8 a0)
{
int i;
u8 spriteId;
-
+
for (i = 0; i < 6; 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;
u8 spriteId;
-
+
for (i = 0; i < 6; 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;
else
sprite->pos1.x += 3;
-
+
if (sprite->pos1.y < 80)
sprite->pos1.y -= 3;
else
@@ -2053,10 +2050,10 @@ static void Task_IntroFadeIn3(u8 taskId)
static void Task_IntroFadeIn4(u8 taskId)
{
s16 *data = gTasks[taskId].data;
-
+
SetGpuReg(REG_OFFSET_BG0HOFS, (data[6] >> 8));
SetGpuReg(REG_OFFSET_BG1HOFS, -(data[6] >> 8));
-
+
switch (data[0])
{
case 0:
@@ -2070,7 +2067,7 @@ static void Task_IntroFadeIn4(u8 taskId)
case 1:
if (data[6] == 0x2800)
BeginNormalPaletteFade(0x0000FFFE, 3, 0, 16, RGB(9, 10, 10));
-
+
if (data[6] != 0)
data[6] -= 0x80;
else if (!gPaletteFade.active)
@@ -2103,7 +2100,7 @@ static void Task_IntroFadeIn6(u8 taskId)
{
s16 *data = gTasks[taskId].data;
u8 spriteId;
-
+
switch (data[0])
{
case 0:
@@ -2141,7 +2138,7 @@ static void sub_816EC6C(struct Sprite *sprite)
{
if (sprite->animEnded)
sprite->invisible = TRUE;
-
+
switch(sprite->data[0])
{
case 0:
@@ -2171,7 +2168,7 @@ static void sub_816EC6C(struct Sprite *sprite)
static void Task_IntroFadeIn7(u8 taskId)
{
u8 newTaskId;
-
+
LoadCompressedObjectPic(gUnknown_085E5048);
LoadSpritePalettes(gUnknown_085E5058);
SetGpuReg(REG_OFFSET_DISPCNT, DISPCNT_MODE_0
@@ -2194,12 +2191,12 @@ static void Task_IntroFadeIn7(u8 taskId)
static void Task_IntroFadeIn8(u8 taskId)
{
s16 *data = gTasks[taskId].data;
-
+
if (data[7] % 2 == 0)
data[6] ^= 2;
-
+
data[7]++;
-
+
switch(data[0])
{
case 0:
@@ -2248,9 +2245,9 @@ static void sub_816EEA8(u8 taskId)
{
u8 spriteId;
s16 *data = gTasks[taskId].data;
-
+
data[2]++;
-
+
switch(data[0])
{
case 0:
@@ -2377,7 +2374,7 @@ static void Task_IntroWaterDrops_1(u8 taskId)
if (gTasks[taskId].data[1] != 0)
{
u8 tmp;
-
+
gTasks[taskId].data[1]--;
tmp = gTasks[taskId].data[1] / 2;
SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]);
@@ -2420,7 +2417,7 @@ static void Task_IntroWaterDrops_2(u8 taskId)
if (gTasks[taskId].data[1] < 62)
{
u8 tmp;
-
+
gTasks[taskId].data[1]++;
tmp = gTasks[taskId].data[1] / 2;
SetGpuReg(REG_OFFSET_BLDALPHA, gUnknown_0853FF70[tmp]);
@@ -2903,7 +2900,7 @@ static u8 sub_816FDB8(s16 a0, s16 a1, s16 a2)
{
u16 i;
u8 spriteId;
-
+
for (i = 0; i < 9; i++)
{
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)
{
sprite->data[7]++;
-
+
if (sprite->data[0] != 0)
{
s16 sin1;
@@ -2944,7 +2941,7 @@ static void sub_816FEDC(struct Sprite *sprite)
SetOamMatrix(1, a, b, c, d);
}
-
+
switch (sprite->data[0])
{
case 0:
diff --git a/src/item_menu_icons.c b/src/item_menu_icons.c
index f12bb454e..5dd5fd31d 100644
--- a/src/item_menu_icons.c
+++ b/src/item_menu_icons.c
@@ -19,10 +19,10 @@ struct CompressedTilesPal
const u8 *pal;
};
-extern void sub_80D5860(struct Sprite *sprite);
-extern void sub_80D58F8(struct Sprite *sprite);
-extern void sub_80D5968(struct Sprite *sprite);
-extern void sub_80D5A94(struct Sprite *sprite);
+extern void DoHorizontalLunge(struct Sprite *sprite);
+extern void DoVerticalDip(struct Sprite *sprite);
+extern void SlideMonToOriginalPos(struct Sprite *sprite);
+extern void SlideMonToOffset(struct Sprite *sprite);
extern void sub_80D5B48(struct Sprite *sprite);
// this file's functions
@@ -414,7 +414,7 @@ static const struct SpriteTemplate gUnknown_0857FE10 =
.callback = SpriteCallbackDummy,
};
-const struct SpriteTemplate gUnknown_0857FE28 =
+const struct SpriteTemplate gHorizontalLungeSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
@@ -422,10 +422,10 @@ const struct SpriteTemplate gUnknown_0857FE28 =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
- .callback = sub_80D5860,
+ .callback = DoHorizontalLunge,
};
-const struct SpriteTemplate gUnknown_0857FE40 =
+const struct SpriteTemplate gVerticalDipSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
@@ -433,10 +433,10 @@ const struct SpriteTemplate gUnknown_0857FE40 =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
- .callback = sub_80D58F8,
+ .callback = DoVerticalDip,
};
-const struct SpriteTemplate gUnknown_0857FE58 =
+const struct SpriteTemplate gSlideMonToOriginalPosSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
@@ -444,10 +444,10 @@ const struct SpriteTemplate gUnknown_0857FE58 =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
- .callback = sub_80D5968,
+ .callback = SlideMonToOriginalPos,
};
-const struct SpriteTemplate gUnknown_0857FE70 =
+const struct SpriteTemplate gSlideMonToOffsetSpriteTemplate =
{
.tileTag = 0,
.paletteTag = 0,
@@ -455,7 +455,7 @@ const struct SpriteTemplate gUnknown_0857FE70 =
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
- .callback = sub_80D5A94,
+ .callback = SlideMonToOffset,
};
const struct SpriteTemplate gUnknown_0857FE88 =
diff --git a/src/main.c b/src/main.c
index f04f9b61b..4c71ed1f9 100644
--- a/src/main.c
+++ b/src/main.c
@@ -33,7 +33,7 @@ static void VCountIntr(void);
static void SerialIntr(void);
static void IntrDummy(void);
-const u8 gGameVersion = VERSION_EMERALD;
+const u8 gGameVersion = GAME_VERSION;
const u8 gGameLanguage = GAME_LANGUAGE; // English
diff --git a/src/pokeball.c b/src/pokeball.c
index 3dbbb2967..bb02a02ba 100644
--- a/src/pokeball.c
+++ b/src/pokeball.c
@@ -378,8 +378,8 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1;
break;
case POKEBALL_OPPONENT_SENDOUT:
- gSprites[ballSpriteId].pos1.x = GetBattlerSpriteCoord(battlerId, BANK_X_POS);
- gSprites[ballSpriteId].pos1.y = GetBattlerSpriteCoord(battlerId, BANK_Y_POS) + 24;
+ gSprites[ballSpriteId].pos1.x = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_X);
+ gSprites[ballSpriteId].pos1.y = GetBattlerSpriteCoord(battlerId, BATTLER_COORD_Y) + 24;
gBattlerTarget = battlerId;
gSprites[ballSpriteId].data[0] = 0;
gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut;
@@ -399,8 +399,8 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
// this will perform an unused ball throw animation
gSprites[ballSpriteId].data[0] = 0x22;
- gSprites[ballSpriteId].data[2] = GetBattlerSpriteCoord(gBattlerTarget, BANK_X_POS);
- gSprites[ballSpriteId].data[4] = GetBattlerSpriteCoord(gBattlerTarget, BANK_Y_POS) - 16;
+ gSprites[ballSpriteId].data[2] = GetBattlerSpriteCoord(gBattlerTarget, BATTLER_COORD_X);
+ gSprites[ballSpriteId].data[4] = GetBattlerSpriteCoord(gBattlerTarget, BATTLER_COORD_Y) - 16;
gSprites[ballSpriteId].data[5] = -40;
sub_80A68D4(&gSprites[ballSpriteId]);
gSprites[ballSpriteId].oam.affineParam = taskId;
@@ -411,7 +411,7 @@ static void Task_DoPokeballSendOutAnim(u8 taskId)
static void SpriteCB_TestBallThrow(struct Sprite *sprite)
{
- if (AnimateBallThrow(sprite))
+ if (TranslateAnimArc(sprite))
{
u16 ballId;
u8 taskId = sprite->oam.affineParam;
@@ -922,7 +922,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
StartSpriteAffineAnim(sprite, 4);
}
r4 = sprite->data[0];
- sub_80A6F3C(sprite);
+ TranslateAnimLinear(sprite);
sprite->data[7] += sprite->sBattler / 3;
sprite->pos2.y += Sin(HIBYTE(sprite->data[7]), sprite->data[5]);
sprite->oam.affineParam += 0x100;
@@ -940,7 +940,7 @@ static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite)
}
else
{
- if (AnimateBallThrow(sprite))
+ if (TranslateAnimArc(sprite))
{
sprite->pos1.x += sprite->pos2.x;
sprite->pos1.y += sprite->pos2.y;
diff --git a/sym_ewram.txt b/sym_ewram.txt
index 4b3f9d10c..08a834057 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -248,12 +248,9 @@ gUnknown_020375D6: @ 20375D6
.include "src/palette.o"
.include "src/sound.o"
.include "src/battle_anim.o"
-
-.align 2
-
-gUnknown_02038444: @ 2038444
- .space 0x10
-
+ .include "src/battle_anim_80A5C6C.o"
+
+ .space 0xC
gUnknown_02038454: @ 2038454
.space 0x200