shithub: pokecrystal

ref: 2548f75feba2d9db28cd9e3e286d473ff27120f4
dir: /data/moves/animations.asm/

View raw version
BattleAnimations:: ; c906f
; entries correspond to constants/move_constants.asm
	dw BattleAnim_0
	dw BattleAnim_Pound
	dw BattleAnim_KarateChop
	dw BattleAnim_Doubleslap
	dw BattleAnim_CometPunch
	dw BattleAnim_MegaPunch
	dw BattleAnim_PayDay
	dw BattleAnim_FirePunch
	dw BattleAnim_IcePunch
	dw BattleAnim_Thunderpunch
	dw BattleAnim_Scratch
	dw BattleAnim_Vicegrip
	dw BattleAnim_Guillotine
	dw BattleAnim_RazorWind
	dw BattleAnim_SwordsDance
	dw BattleAnim_Cut
	dw BattleAnim_Gust
	dw BattleAnim_WingAttack
	dw BattleAnim_Whirlwind
	dw BattleAnim_Fly
	dw BattleAnim_Bind
	dw BattleAnim_Slam
	dw BattleAnim_VineWhip
	dw BattleAnim_Stomp
	dw BattleAnim_DoubleKick
	dw BattleAnim_MegaKick
	dw BattleAnim_JumpKick
	dw BattleAnim_RollingKick
	dw BattleAnim_SandAttack
	dw BattleAnim_Headbutt
	dw BattleAnim_HornAttack
	dw BattleAnim_FuryAttack
	dw BattleAnim_HornDrill
	dw BattleAnim_Tackle
	dw BattleAnim_BodySlam
	dw BattleAnim_Wrap
	dw BattleAnim_TakeDown
	dw BattleAnim_Thrash
	dw BattleAnim_DoubleEdge
	dw BattleAnim_TailWhip
	dw BattleAnim_PoisonSting
	dw BattleAnim_Twineedle
	dw BattleAnim_PinMissile
	dw BattleAnim_Leer
	dw BattleAnim_Bite
	dw BattleAnim_Growl
	dw BattleAnim_Roar
	dw BattleAnim_Sing
	dw BattleAnim_Supersonic
	dw BattleAnim_Sonicboom
	dw BattleAnim_Disable
	dw BattleAnim_Acid
	dw BattleAnim_Ember
	dw BattleAnim_Flamethrower
	dw BattleAnim_Mist
	dw BattleAnim_WaterGun
	dw BattleAnim_HydroPump
	dw BattleAnim_Surf
	dw BattleAnim_IceBeam
	dw BattleAnim_Blizzard
	dw BattleAnim_Psybeam
	dw BattleAnim_Bubblebeam
	dw BattleAnim_AuroraBeam
	dw BattleAnim_HyperBeam
	dw BattleAnim_Peck
	dw BattleAnim_DrillPeck
	dw BattleAnim_Submission
	dw BattleAnim_LowKick
	dw BattleAnim_Counter
	dw BattleAnim_SeismicToss
	dw BattleAnim_Strength
	dw BattleAnim_Absorb
	dw BattleAnim_MegaDrain
	dw BattleAnim_LeechSeed
	dw BattleAnim_Growth
	dw BattleAnim_RazorLeaf
	dw BattleAnim_Solarbeam
	dw BattleAnim_Poisonpowder
	dw BattleAnim_StunSpore
	dw BattleAnim_SleepPowder
	dw BattleAnim_PetalDance
	dw BattleAnim_StringShot
	dw BattleAnim_DragonRage
	dw BattleAnim_FireSpin
	dw BattleAnim_Thundershock
	dw BattleAnim_Thunderbolt
	dw BattleAnim_ThunderWave
	dw BattleAnim_Thunder
	dw BattleAnim_RockThrow
	dw BattleAnim_Earthquake
	dw BattleAnim_Fissure
	dw BattleAnim_Dig
	dw BattleAnim_Toxic
	dw BattleAnim_Confusion
	dw BattleAnim_PsychicM
	dw BattleAnim_Hypnosis
	dw BattleAnim_Meditate
	dw BattleAnim_Agility
	dw BattleAnim_QuickAttack
	dw BattleAnim_Rage
	dw BattleAnim_Teleport
	dw BattleAnim_NightShade
	dw BattleAnim_Mimic
	dw BattleAnim_Screech
	dw BattleAnim_DoubleTeam
	dw BattleAnim_Recover
	dw BattleAnim_Harden
	dw BattleAnim_Minimize
	dw BattleAnim_Smokescreen
	dw BattleAnim_ConfuseRay
	dw BattleAnim_Withdraw
	dw BattleAnim_DefenseCurl
	dw BattleAnim_Barrier
	dw BattleAnim_LightScreen
	dw BattleAnim_Haze
	dw BattleAnim_Reflect
	dw BattleAnim_FocusEnergy
	dw BattleAnim_Bide
	dw BattleAnim_Metronome
	dw BattleAnim_MirrorMove
	dw BattleAnim_Selfdestruct
	dw BattleAnim_EggBomb
	dw BattleAnim_Lick
	dw BattleAnim_Smog
	dw BattleAnim_Sludge
	dw BattleAnim_BoneClub
	dw BattleAnim_FireBlast
	dw BattleAnim_Waterfall
	dw BattleAnim_Clamp
	dw BattleAnim_Swift
	dw BattleAnim_SkullBash
	dw BattleAnim_SpikeCannon
	dw BattleAnim_Constrict
	dw BattleAnim_Amnesia
	dw BattleAnim_Kinesis
	dw BattleAnim_Softboiled
	dw BattleAnim_HiJumpKick
	dw BattleAnim_Glare
	dw BattleAnim_DreamEater
	dw BattleAnim_PoisonGas
	dw BattleAnim_Barrage
	dw BattleAnim_LeechLife
	dw BattleAnim_LovelyKiss
	dw BattleAnim_SkyAttack
	dw BattleAnim_Transform
	dw BattleAnim_Bubble
	dw BattleAnim_DizzyPunch
	dw BattleAnim_Spore
	dw BattleAnim_Flash
	dw BattleAnim_Psywave
	dw BattleAnim_Splash
	dw BattleAnim_AcidArmor
	dw BattleAnim_Crabhammer
	dw BattleAnim_Explosion
	dw BattleAnim_FurySwipes
	dw BattleAnim_Bonemerang
	dw BattleAnim_Rest
	dw BattleAnim_RockSlide
	dw BattleAnim_HyperFang
	dw BattleAnim_Sharpen
	dw BattleAnim_Conversion
	dw BattleAnim_TriAttack
	dw BattleAnim_SuperFang
	dw BattleAnim_Slash
	dw BattleAnim_Substitute
	dw BattleAnim_Struggle
	dw BattleAnim_Sketch
	dw BattleAnim_TripleKick
	dw BattleAnim_Thief
	dw BattleAnim_SpiderWeb
	dw BattleAnim_MindReader
	dw BattleAnim_Nightmare
	dw BattleAnim_FlameWheel
	dw BattleAnim_Snore
	dw BattleAnim_Curse
	dw BattleAnim_Flail
	dw BattleAnim_Conversion2
	dw BattleAnim_Aeroblast
	dw BattleAnim_CottonSpore
	dw BattleAnim_Reversal
	dw BattleAnim_Spite
	dw BattleAnim_PowderSnow
	dw BattleAnim_Protect
	dw BattleAnim_MachPunch
	dw BattleAnim_ScaryFace
	dw BattleAnim_FaintAttack
	dw BattleAnim_SweetKiss
	dw BattleAnim_BellyDrum
	dw BattleAnim_SludgeBomb
	dw BattleAnim_MudSlap
	dw BattleAnim_Octazooka
	dw BattleAnim_Spikes
	dw BattleAnim_ZapCannon
	dw BattleAnim_Foresight
	dw BattleAnim_DestinyBond
	dw BattleAnim_PerishSong
	dw BattleAnim_IcyWind
	dw BattleAnim_Detect
	dw BattleAnim_BoneRush
	dw BattleAnim_LockOn
	dw BattleAnim_Outrage
	dw BattleAnim_Sandstorm
	dw BattleAnim_GigaDrain
	dw BattleAnim_Endure
	dw BattleAnim_Charm
	dw BattleAnim_Rollout
	dw BattleAnim_FalseSwipe
	dw BattleAnim_Swagger
	dw BattleAnim_MilkDrink
	dw BattleAnim_Spark
	dw BattleAnim_FuryCutter
	dw BattleAnim_SteelWing
	dw BattleAnim_MeanLook
	dw BattleAnim_Attract
	dw BattleAnim_SleepTalk
	dw BattleAnim_HealBell
	dw BattleAnim_Return
	dw BattleAnim_Present
	dw BattleAnim_Frustration
	dw BattleAnim_Safeguard
	dw BattleAnim_PainSplit
	dw BattleAnim_SacredFire
	dw BattleAnim_Magnitude
	dw BattleAnim_Dynamicpunch
	dw BattleAnim_Megahorn
	dw BattleAnim_Dragonbreath
	dw BattleAnim_BatonPass
	dw BattleAnim_Encore
	dw BattleAnim_Pursuit
	dw BattleAnim_RapidSpin
	dw BattleAnim_SweetScent
	dw BattleAnim_IronTail
	dw BattleAnim_MetalClaw
	dw BattleAnim_VitalThrow
	dw BattleAnim_MorningSun
	dw BattleAnim_Synthesis
	dw BattleAnim_Moonlight
	dw BattleAnim_HiddenPower
	dw BattleAnim_CrossChop
	dw BattleAnim_Twister
	dw BattleAnim_RainDance
	dw BattleAnim_SunnyDay
	dw BattleAnim_Crunch
	dw BattleAnim_MirrorCoat
	dw BattleAnim_PsychUp
	dw BattleAnim_Extremespeed
	dw BattleAnim_Ancientpower
	dw BattleAnim_ShadowBall
	dw BattleAnim_FutureSight
	dw BattleAnim_RockSmash
	dw BattleAnim_Whirlpool
	dw BattleAnim_BeatUp
	dw BattleAnim_252
	dw BattleAnim_253
	dw BattleAnim_254
	dw BattleAnim_SweetScent2
; $100
	dw BattleAnim_ThrowPokeBall
	dw BattleAnim_SendOutMon
	dw BattleAnim_ReturnMon
	dw BattleAnim_Confused
	dw BattleAnim_Slp
	dw BattleAnim_Brn
	dw BattleAnim_Psn
	dw BattleAnim_Sap
	dw BattleAnim_Frz
	dw BattleAnim_Par
	dw BattleAnim_InLove
	dw BattleAnim_InSandstorm
	dw BattleAnim_InNightmare
	dw BattleAnim_InWhirlpool
	dw BattleAnim_Miss
	dw BattleAnim_EnemyDamage
	dw BattleAnim_EnemyStatDown
	dw BattleAnim_PlayerStatDown
	dw BattleAnim_PlayerDamage
	dw BattleAnim_Wobble
	dw BattleAnim_Shake
	dw BattleAnim_HitConfusion
; c929b

BattleAnim_0: ; c929b
BattleAnim_252: ; c929b
BattleAnim_253: ; c929b
BattleAnim_254: ; c929b
BattleAnim_MirrorMove: ; c929b
	anim_ret
; c929c

BattleAnim_SweetScent2: ; c929c
	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_MISC
	anim_obj ANIM_OBJ_FLOWER, 64, 96, $2
	anim_wait 2
	anim_obj ANIM_OBJ_FLOWER, 64, 80, $2
	anim_wait 64
	anim_obj ANIM_OBJ_COTTON, 136, 40, $15
	anim_obj ANIM_OBJ_COTTON, 136, 40, $2a
	anim_obj ANIM_OBJ_COTTON, 136, 40, $3f
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_wait 128
	anim_ret
; c92c1

BattleAnim_ThrowPokeBall
	anim_if_param_equal NO_ITEM, .TheTrainerBlockedTheBall
	anim_if_param_equal MASTER_BALL, .MasterBall
	anim_if_param_equal ULTRA_BALL, .UltraBall
	anim_if_param_equal GREAT_BALL, .GreatBall
	; any other ball
	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_POKE_BALL, 68, 92, $40
	anim_wait 36
	anim_obj ANIM_OBJ_POKE_BALL, 136, 65, $0
	anim_setobj $2, $7
	anim_wait 16
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 136, 64, $10
	anim_wait 16
	anim_jump .Shake
; c92f2

.TheTrainerBlockedTheBall:
	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_HIT
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_POKE_BALL_BLOCKED, 64, 92, $20
	anim_wait 20
	anim_obj ANIM_OBJ_01, 112, 40, $0
	anim_wait 32
	anim_ret
; c9305

.UltraBall:
	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_POKE_BALL, 68, 92, $40
	anim_wait 36
	anim_obj ANIM_OBJ_POKE_BALL, 136, 65, $0
	anim_setobj $2, $7
	anim_wait 16
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 136, 64, $10
	anim_wait 16
	anim_jump .Shake
; c9326

.GreatBall:
	anim_2gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_POKE_BALL, 68, 92, $40
	anim_wait 36
	anim_obj ANIM_OBJ_POKE_BALL, 136, 65, $0
	anim_setobj $2, $7
	anim_wait 16
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 136, 64, $10
	anim_wait 16
	anim_jump .Shake
; c9347

.MasterBall:
	anim_3gfx ANIM_GFX_POKE_BALL, ANIM_GFX_SMOKE, ANIM_GFX_SPEED
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_POKE_BALL, 64, 92, $20
	anim_wait 36
	anim_obj ANIM_OBJ_POKE_BALL, 136, 65, $0
	anim_setobj $2, $7
	anim_wait 16
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 136, 64, $10
	anim_wait 24
	anim_sound 0, 1, SFX_MASTER_BALL
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $30
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $31
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $32
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $33
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $34
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $35
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $36
	anim_obj ANIM_OBJ_MASTER_BALL_SPARKLE, 136, 56, $37
	anim_wait 64
.Shake:
	anim_bgeffect ANIM_BG_RETURN_MON, $0, $0, $0
	anim_wait 8
	anim_incobj  2
	anim_wait 16
	anim_sound 0, 1, SFX_CHANGE_DEX_MODE
	anim_incobj  1
	anim_wait 32
	anim_sound 0, 1, SFX_BALL_BOUNCE
	anim_wait 32
	anim_wait 32
	anim_wait 32
	anim_wait 8
	anim_setvar $0
.Loop:
	anim_wait 48
	anim_checkpokeball
	anim_if_var_equal $1, .Click
	anim_if_var_equal $2, .BreakFree
	anim_incobj  1
	anim_sound 0, 1, SFX_BALL_WIGGLE
	anim_jump .Loop
; c93bc

.Click:
	anim_clearsprites
	anim_ret
; c93be

.BreakFree:
	anim_setobj $1, $b
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 136, 64, $10
	anim_wait 2
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $0, $0
	anim_wait 32
	anim_ret
; c93d1

BattleAnim_SendOutMon: ; c93d1
	anim_if_param_equal $0, .Normal
	anim_if_param_equal $1, .Shiny
	anim_if_param_equal $2, .Unknown
	anim_1gfx ANIM_GFX_SMOKE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_2B, $0, $1, $0
	anim_sound 0, 0, SFX_BALL_POOF
	anim_obj ANIM_OBJ_1B, 48, 96, $0
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
	anim_wait 128
	anim_wait 4
	anim_call BattleAnim_ShowMon_0
	anim_ret

.Unknown:
	anim_1gfx ANIM_GFX_SMOKE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_2A, $0, $1, $0
	anim_wait 1
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 4
	anim_sound 0, 0, SFX_BALL_POOF
	anim_obj ANIM_OBJ_1B, 48, 96, $0
	anim_incbgeffect ANIM_BG_2A
	anim_wait 96
	anim_incbgeffect ANIM_BG_2A
	anim_call BattleAnim_ShowMon_0
	anim_ret

.Shiny:
	anim_1gfx ANIM_GFX_SPEED
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $0
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $8
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $10
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $18
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $20
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $28
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $30
	anim_wait 4
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_6D, 48, 96, $38
	anim_wait 32
	anim_ret

.Normal:
	anim_1gfx ANIM_GFX_SMOKE
	anim_sound 0, 0, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 44, 96, $0
	anim_wait 4
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; c9483

BattleAnim_ReturnMon: ; c9483
	anim_sound 0, 0, SFX_BALL_POOF
BattleAnim_BatonPass_branch_c9486: ; c9486
	anim_bgeffect ANIM_BG_RETURN_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; c948d

BattleAnim_Confused: ; c948d
	anim_1gfx ANIM_GFX_STATUS
	anim_sound 0, 0, SFX_KINESIS
	anim_obj ANIM_OBJ_CHICK, 44, 56, $15
	anim_obj ANIM_OBJ_CHICK, 44, 56, $aa
	anim_obj ANIM_OBJ_CHICK, 44, 56, $bf
	anim_wait 96
	anim_ret
; c94a3

BattleAnim_Slp: ; c94a3
	anim_1gfx ANIM_GFX_STATUS
	anim_sound 0, 0, SFX_TAIL_WHIP
.loop
	anim_obj ANIM_OBJ_54, 64, 80, $0
	anim_wait 40
	anim_loop 3, .loop
	anim_wait 32
	anim_ret
; c94b4

BattleAnim_Brn: ; c94b4
	anim_1gfx ANIM_GFX_FIRE
.loop
	anim_sound 0, 0, SFX_BURN
	anim_obj ANIM_OBJ_BURNED, 56, 88, $10
	anim_wait 4
	anim_loop 3, .loop
	anim_wait 6
	anim_ret
; c94c5

BattleAnim_Psn: ; c94c5
	anim_1gfx ANIM_GFX_POISON
	anim_sound 0, 0, SFX_POISON
	anim_obj ANIM_OBJ_SKULL, 64, 56, $0
	anim_wait 8
	anim_sound 0, 0, SFX_POISON
	anim_obj ANIM_OBJ_SKULL, 48, 56, $0
	anim_wait 8
	anim_ret
; c94da

BattleAnim_Sap: ; c94da
	anim_1gfx ANIM_GFX_CHARGE
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 128, 48, $2
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 64, $3
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 32, $4
	anim_wait 16
	anim_ret
; c94f8

BattleAnim_Frz: ; c94f8
	anim_1gfx ANIM_GFX_ICE
	anim_obj ANIM_OBJ_FROZEN, 44, 110, $0
	anim_sound 0, 0, SFX_SHINE
	anim_wait 16
	anim_sound 0, 0, SFX_SHINE
	anim_wait 16
	anim_ret
; c9508

BattleAnim_Par: ; c9508
	anim_1gfx ANIM_GFX_STATUS
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_sound 0, 0, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_PARALYZED, 20, 88, $42
	anim_obj ANIM_OBJ_PARALYZED, 76, 88, $c2
	anim_wait 128
	anim_ret
; c951e

BattleAnim_InLove: ; c951e
	anim_1gfx ANIM_GFX_OBJECTS
	anim_sound 0, 0, SFX_LICK
	anim_obj ANIM_OBJ_HEART, 64, 76, $0
	anim_wait 32
	anim_sound 0, 0, SFX_LICK
	anim_obj ANIM_OBJ_HEART, 36, 72, $0
	anim_wait 32
	anim_ret
; c9533

BattleAnim_InSandstorm: ; c9533
	anim_1gfx ANIM_GFX_POWDER
	anim_obj ANIM_OBJ_A2, 88, 0, $0
	anim_wait 8
	anim_obj ANIM_OBJ_A2, 72, 0, $1
	anim_wait 8
	anim_obj ANIM_OBJ_A2, 56, 0, $2
.loop
	anim_sound 0, 1, SFX_MENU
	anim_wait 8
	anim_loop 6, .loop
	anim_wait 8
	anim_ret
; c9550

BattleAnim_InNightmare: ; c9550
	anim_1gfx ANIM_GFX_ANGELS
	anim_sound 0, 0, SFX_BUBBLEBEAM
	anim_obj ANIM_OBJ_95, 68, 80, $0
	anim_wait 40
	anim_ret
; c955c

BattleAnim_InWhirlpool: ; c955c
	anim_1gfx ANIM_GFX_WIND
	anim_bgeffect ANIM_BG_WHIRLPOOL, $0, $0, $0
	anim_sound 0, 1, SFX_SURF
.loop
	anim_obj ANIM_OBJ_GUST, 132, 72, $0
	anim_wait 6
	anim_loop 6, .loop
	anim_incbgeffect ANIM_BG_WHIRLPOOL
	anim_wait 1
	anim_ret
; c9574

BattleAnim_HitConfusion: ; c9574
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 0, SFX_POUND
	anim_obj ANIM_OBJ_04, 44, 96, $0
	anim_wait 16
	anim_ret
; c9580

BattleAnim_Miss: ; c9580
	anim_ret
; c9581

BattleAnim_EnemyDamage: ; c9581
.loop
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $0, $0
	anim_wait 5
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 5
	anim_loop 3, .loop
	anim_ret
; c9592

BattleAnim_EnemyStatDown: ; c9592
	anim_call BattleAnim_FollowEnemyFeet_1
	anim_bgeffect ANIM_BG_VIBRATE_MON, $0, $0, $0
	anim_wait 40
	anim_call BattleAnim_ShowMon_1
	anim_wait 1
	anim_ret
; c95a0

BattleAnim_PlayerStatDown: ; c95a0
	anim_call BattleAnim_FollowEnemyFeet_1
	anim_bgeffect ANIM_BG_WOBBLE_MON, $0, $0, $0
	anim_wait 40
	anim_call BattleAnim_ShowMon_1
	anim_wait 1
	anim_ret
; c95ae

BattleAnim_PlayerDamage: ; c95ae
	anim_bgeffect ANIM_BG_20, $20, $2, $20
	anim_wait 40
	anim_ret
; c95b5

BattleAnim_Wobble: ; c95b5
	anim_bgeffect ANIM_BG_35, $0, $0, $0
	anim_wait 40
	anim_ret
; c95bc

BattleAnim_Shake: ; c95bc
	anim_bgeffect ANIM_BG_1F, $20, $2, $40
	anim_wait 40
	anim_ret
; c95c3

BattleAnim_Pound: ; c95c3
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_POUND
	anim_obj ANIM_OBJ_08, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; c95d5

BattleAnim_KarateChop: ; c95d5
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_KARATE_CHOP
	anim_obj ANIM_OBJ_08, 136, 40, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 40, $0
	anim_wait 6
	anim_sound 0, 1, SFX_KARATE_CHOP
	anim_obj ANIM_OBJ_08, 136, 44, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 44, $0
	anim_wait 6
	anim_sound 0, 1, SFX_KARATE_CHOP
	anim_obj ANIM_OBJ_08, 136, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 16
	anim_ret
; c9605

BattleAnim_Doubleslap: ; c9605
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_Doubleslap_branch_c961b
	anim_sound 0, 1, SFX_DOUBLESLAP
	anim_obj ANIM_OBJ_08, 144, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 8
	anim_ret
; c961b

BattleAnim_Doubleslap_branch_c961b: ; c961b
	anim_sound 0, 1, SFX_DOUBLESLAP
	anim_obj ANIM_OBJ_08, 120, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 120, 48, $0
	anim_wait 8
	anim_ret
; c962b

BattleAnim_CometPunch: ; c962b
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_CometPunch_branch_c9641
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_06, 144, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 8
	anim_ret
; c9641

BattleAnim_CometPunch_branch_c9641: ; c9641
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_06, 120, 64, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 120, 64, $0
	anim_wait 8
	anim_ret
; c9651

BattleAnim_Bide_branch_c9651: ; c9651
BattleAnim_MegaPunch: ; c9651
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_wait 48
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
.loop
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_06, 136, 56, $0
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_06, 136, 56, $0
	anim_wait 6
	anim_loop 3, .loop
	anim_ret
; c9677

BattleAnim_Stomp: ; c9677
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_STOMP
	anim_obj ANIM_OBJ_07, 136, 40, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 40, $0
	anim_wait 6
	anim_sound 0, 1, SFX_STOMP
	anim_obj ANIM_OBJ_07, 136, 44, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 44, $0
	anim_wait 6
	anim_sound 0, 1, SFX_STOMP
	anim_obj ANIM_OBJ_07, 136, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 16
	anim_ret
; c96a7

BattleAnim_DoubleKick: ; c96a7
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_DoubleKick_branch_c96bd
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 144, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 8
	anim_ret
; c96bd

BattleAnim_DoubleKick_branch_c96bd: ; c96bd
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 120, 64, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 120, 64, $0
	anim_wait 8
	anim_ret
; c96cd

BattleAnim_JumpKick: ; c96cd
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_JumpKick_branch_c96f1
	anim_sound 0, 1, SFX_JUMP_KICK
	anim_obj ANIM_OBJ_07, 112, 72, $0
	anim_obj ANIM_OBJ_07, 100, 60, $0
	anim_setobj $1, $2
	anim_setobj $2, $2
	anim_wait 24
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_04, 136, 48, $0
	anim_wait 16
	anim_ret
; c96f1

BattleAnim_JumpKick_branch_c96f1: ; c96f1
	anim_wait 8
	anim_sound 0, 0, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_04, 44, 88, $0
	anim_wait 16
	anim_ret
; c96fc

BattleAnim_HiJumpKick: ; c96fc
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_if_param_equal $1, BattleAnim_HiJumpKick_branch_c971e
	anim_wait 32
	anim_sound 0, 1, SFX_JUMP_KICK
	anim_obj ANIM_OBJ_07, 112, 72, $0
	anim_setobj $1, $2
	anim_wait 16
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_04, 136, 48, $0
	anim_wait 16
	anim_ret
; c971e

BattleAnim_HiJumpKick_branch_c971e: ; c971e
	anim_wait 16
	anim_sound 0, 0, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_04, 44, 88, $0
	anim_wait 16
	anim_ret
; c9729

BattleAnim_RollingKick: ; c9729
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 112, 56, $0
	anim_setobj $1, $3
	anim_wait 12
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 16
	anim_ret
; c973e

BattleAnim_MegaKick: ; c973e
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_wait 67
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
.loop
	anim_sound 0, 1, SFX_MEGA_KICK
	anim_obj ANIM_OBJ_07, 136, 56, $0
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_07, 136, 56, $0
	anim_wait 6
	anim_loop 3, .loop
	anim_ret
; c9764

BattleAnim_HyperFang: ; c9764
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $20, $1, $0
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_09, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; c977b

BattleAnim_SuperFang: ; c977b
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_wait 48
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
.loop
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_09, 136, 56, $0
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_09, 136, 56, $0
	anim_wait 6
	anim_loop 3, .loop
	anim_ret
; c97a1

BattleAnim_Ember: ; c97a1
	anim_1gfx ANIM_GFX_FIRE
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0B, 64, 96, $12
	anim_wait 4
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0B, 64, 100, $14
	anim_wait 4
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0B, 64, 84, $13
	anim_wait 16
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_sound 0, 1, SFX_EMBER
	anim_obj ANIM_OBJ_0B, 120, 68, $30
	anim_obj ANIM_OBJ_0B, 132, 68, $30
	anim_obj ANIM_OBJ_0B, 144, 68, $30
	anim_wait 32
	anim_ret
; c97d8

BattleAnim_FirePunch: ; c97d8
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_FIRE
	anim_obj ANIM_OBJ_0A, 136, 56, $43
	anim_call BattleAnim_FirePunch_branch_cbbcc
	anim_wait 16
	anim_ret
; c97e5

BattleAnim_FireSpin: ; c97e5
	anim_1gfx ANIM_GFX_FIRE
.loop
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0E, 64, 88, $4
	anim_wait 2
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0E, 64, 96, $3
	anim_wait 2
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0E, 64, 88, $3
	anim_wait 2
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0E, 64, 96, $4
	anim_wait 2
	anim_loop 2, .loop
	anim_wait 96
	anim_ret
; c9811

BattleAnim_DragonRage: ; c9811
	anim_1gfx ANIM_GFX_FIRE
.loop
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0C, 64, 92, $0
	anim_wait 3
	anim_loop 16, .loop
	anim_wait 64
	anim_ret
; c9822

BattleAnim_Flamethrower: ; c9822
	anim_1gfx ANIM_GFX_FIRE
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0D, 64, 92, $3
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 75, 86, $5
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 85, 81, $7
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 96, 76, $9
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 106, 71, $b
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 116, 66, $c
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 126, 61, $a
	anim_wait 2
	anim_obj ANIM_OBJ_0D, 136, 56, $8
	anim_wait 16
.loop
	anim_sound 0, 1, SFX_EMBER
	anim_wait 16
	anim_loop 6, .loop
	anim_wait 16
	anim_ret
; c9861

BattleAnim_FireBlast: ; c9861
	anim_1gfx ANIM_GFX_FIRE
.loop1
	anim_sound 6, 2, SFX_EMBER
	anim_obj ANIM_OBJ_0F, 64, 92, $7
	anim_wait 6
	anim_loop 10, .loop1
.loop2
	anim_sound 0, 1, SFX_EMBER
	anim_wait 8
	anim_loop 10, .loop2
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_incobj  7
	anim_incobj  8
	anim_incobj  9
	anim_incobj 10
	anim_wait 2
.loop3
	anim_sound 0, 1, SFX_EMBER
	anim_obj ANIM_OBJ_0F, 136, 56, $1
	anim_obj ANIM_OBJ_0F, 136, 56, $2
	anim_obj ANIM_OBJ_0F, 136, 56, $3
	anim_obj ANIM_OBJ_0F, 136, 56, $4
	anim_obj ANIM_OBJ_0F, 136, 56, $5
	anim_wait 16
	anim_loop 2, .loop3
	anim_wait 32
	anim_ret
; c98b0

BattleAnim_IcePunch: ; c98b0
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_ICE
	anim_obj ANIM_OBJ_0A, 136, 56, $43
	anim_call BattleAnim_IcePunch_branch_cbbdf
	anim_wait 32
	anim_ret
; c98bd

BattleAnim_IceBeam: ; c98bd
	anim_1gfx ANIM_GFX_ICE
.loop
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_ICE_BEAM, 64, 92, $4
	anim_wait 4
	anim_loop 5, .loop
	anim_obj ANIM_OBJ_ICE_BUILDUP, 136, 74, $10
.loop2
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_ICE_BEAM, 64, 92, $4
	anim_wait 4
	anim_loop 15, .loop2
	anim_wait 48
	anim_sound 0, 1, SFX_SHINE
	anim_wait 8
	anim_sound 0, 1, SFX_SHINE
	anim_wait 8
	anim_ret
; c98e8

BattleAnim_Blizzard: ; c98e8
	anim_1gfx ANIM_GFX_ICE
.loop
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_BLIZZARD, 64, 88, $63
	anim_wait 2
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_BLIZZARD, 64, 80, $64
	anim_wait 2
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_BLIZZARD, 64, 96, $63
	anim_wait 2
	anim_loop 3, .loop
	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
	anim_wait 32
	anim_obj ANIM_OBJ_ICE_BUILDUP, 136, 74, $10
	anim_wait 128
	anim_sound 0, 1, SFX_SHINE
	anim_wait 8
	anim_sound 0, 1, SFX_SHINE
	anim_wait 24
	anim_ret
; c991e

BattleAnim_Bubble: ; c991e
	anim_1gfx ANIM_GFX_BUBBLE
	anim_sound 32, 2, SFX_WATER_GUN
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $c1
	anim_wait 6
	anim_sound 32, 2, SFX_WATER_GUN
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $e1
	anim_wait 6
	anim_sound 32, 2, SFX_WATER_GUN
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $d1
	anim_wait 128
	anim_wait 32
	anim_ret
; c993d

BattleAnim_Bubblebeam: ; c993d
	anim_1gfx ANIM_GFX_BUBBLE
.loop
	anim_sound 16, 2, SFX_BUBBLEBEAM
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $92
	anim_wait 6
	anim_sound 16, 2, SFX_BUBBLEBEAM
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $b3
	anim_wait 6
	anim_sound 16, 2, SFX_BUBBLEBEAM
	anim_obj ANIM_OBJ_BUBBLE, 64, 92, $f4
	anim_wait 8
	anim_loop 3, .loop
	anim_wait 64
	anim_clearobjs
	anim_bgeffect ANIM_BG_30, $0, $0, $0
	anim_wait 1
	anim_call BattleAnim_FollowPlayerHead_1
	anim_bgeffect ANIM_BG_31, $1c, $0, $0
	anim_wait 19
	anim_call BattleAnim_ShowMon_1
	anim_bgeffect ANIM_BG_32, $0, $0, $0
	anim_wait 8
	anim_ret
; c9979

BattleAnim_WaterGun: ; c9979
	anim_bgeffect ANIM_BG_30, $0, $0, $0
	anim_1gfx ANIM_GFX_WATER
	anim_call BattleAnim_FollowPlayerHead_1
	anim_sound 16, 2, SFX_WATER_GUN
	anim_obj ANIM_OBJ_24, 64, 88, $0
	anim_wait 8
	anim_obj ANIM_OBJ_24, 64, 76, $0
	anim_wait 8
	anim_obj ANIM_OBJ_24, 64, 82, $0
	anim_wait 24
	anim_bgeffect ANIM_BG_31, $1c, $0, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_31, $8, $0, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_31, $30, $0, $0
	anim_wait 32
	anim_call BattleAnim_ShowMon_1
	anim_bgeffect ANIM_BG_32, $0, $0, $0
	anim_wait 16
	anim_ret
; c99b4

BattleAnim_HydroPump: ; c99b4
	anim_bgeffect ANIM_BG_30, $0, $0, $0
	anim_1gfx ANIM_GFX_WATER
	anim_call BattleAnim_FollowPlayerHead_1
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 108, 72, $0
	anim_bgeffect ANIM_BG_31, $1c, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 116, 72, $0
	anim_bgeffect ANIM_BG_31, $8, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 124, 72, $0
	anim_bgeffect ANIM_BG_31, $30, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 132, 72, $0
	anim_bgeffect ANIM_BG_31, $1c, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 140, 72, $0
	anim_bgeffect ANIM_BG_31, $8, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 148, 72, $0
	anim_bgeffect ANIM_BG_31, $30, $0, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_25, 156, 72, $0
	anim_bgeffect ANIM_BG_31, $1c, $0, $0
	anim_wait 32
	anim_call BattleAnim_ShowMon_1
	anim_bgeffect ANIM_BG_32, $0, $0, $0
	anim_wait 16
	anim_ret
; c9a2a

BattleAnim_Surf: ; c9a2a
	anim_1gfx ANIM_GFX_BUBBLE
	anim_bgeffect ANIM_BG_SURF, $0, $0, $0
	anim_obj ANIM_OBJ_22, 88, 104, $8
.loop
	anim_sound 0, 1, SFX_SURF
	anim_wait 32
	anim_loop 4, .loop
	anim_incobj  1
	anim_wait 56
	anim_ret
; c9a42

BattleAnim_VineWhip: ; c9a42
	anim_1gfx ANIM_GFX_WHIP
	anim_sound 0, 1, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_40, 116, 52, $80
	anim_wait 4
	anim_sound 0, 1, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_3F, 128, 60, $0
	anim_wait 4
	anim_incobj  1
	anim_wait 4
	anim_ret
; c9a5a

BattleAnim_LeechSeed: ; c9a5a
	anim_1gfx ANIM_GFX_PLANT
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_LEECH_SEED, 48, 80, $20
	anim_wait 8
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_LEECH_SEED, 48, 80, $30
	anim_wait 8
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_LEECH_SEED, 48, 80, $28
	anim_wait 32
	anim_sound 0, 1, SFX_CHARGE
	anim_wait 128
	anim_ret
; c9a7c

BattleAnim_RazorLeaf: ; c9a7c
	anim_1gfx ANIM_GFX_PLANT
	anim_sound 0, 0, SFX_VINE_WHIP
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $28
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $5c
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $10
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $e8
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $9c
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $d0
	anim_wait 6
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $1c
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $50
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $dc
	anim_obj ANIM_OBJ_RAZOR_LEAF, 48, 80, $90
	anim_wait 80
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  3
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  5
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  7
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  9
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  1
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  2
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  4
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  6
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj  8
	anim_wait 2
	anim_sound 16, 2, SFX_VINE_WHIP
	anim_incobj 10
	anim_wait 64
	anim_ret
; c9af2

BattleAnim_Solarbeam: ; c9af2
	anim_if_param_equal $0, .FireSolarBeam
	; charge turn
	anim_1gfx ANIM_GFX_CHARGE
	anim_sound 0, 0, SFX_CHARGE
	anim_obj ANIM_OBJ_3D, 48, 84, $0
	anim_obj ANIM_OBJ_3C, 48, 84, $0
	anim_obj ANIM_OBJ_3C, 48, 84, $8
	anim_obj ANIM_OBJ_3C, 48, 84, $10
	anim_obj ANIM_OBJ_3C, 48, 84, $18
	anim_obj ANIM_OBJ_3C, 48, 84, $20
	anim_obj ANIM_OBJ_3C, 48, 84, $28
	anim_obj ANIM_OBJ_3C, 48, 84, $30
	anim_obj ANIM_OBJ_3C, 48, 84, $38
	anim_wait 104
	anim_bgeffect ANIM_BG_FLASH_WHITE, $0, $4, $2
	anim_wait 64
	anim_ret
; c9b30

.FireSolarBeam
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_call BattleAnim_Solarbeam_branch_cbb39
	anim_wait 48
	anim_ret
; c9b3c

BattleAnim_Thunderpunch: ; c9b3c
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_LIGHTNING
	anim_obj ANIM_OBJ_0A, 136, 56, $43
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $2
	anim_sound 0, 1, SFX_THUNDER
	anim_obj ANIM_OBJ_2F, 152, 68, $0
	anim_wait 64
	anim_ret
; c9b53

BattleAnim_Thundershock: ; c9b53
	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
	anim_obj ANIM_OBJ_34, 136, 56, $2
	anim_wait 16
	anim_sound 0, 1, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_33, 136, 56, $0
	anim_wait 96
	anim_ret
; c9b66

BattleAnim_Thunderbolt: ; c9b66
	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
	anim_obj ANIM_OBJ_LIGHTNING_BOLT, 136, 56, $2
	anim_wait 16
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 1, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_31, 136, 56, $0
	anim_wait 64
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_wait 64
	anim_ret
; c9b84

BattleAnim_ThunderWave: ; c9b84
	anim_1gfx ANIM_GFX_LIGHTNING
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
	anim_sound 0, 1, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_30, 136, 56, $0
	anim_wait 20
	anim_bgp $1b
	anim_incobj  1
	anim_wait 96
	anim_ret
; c9b9a

BattleAnim_Thunder: ; c9b9a
	anim_1gfx ANIM_GFX_LIGHTNING
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $20
	anim_sound 0, 1, SFX_THUNDER
	anim_obj ANIM_OBJ_2E, 120, 68, $0
	anim_wait 16
	anim_sound 0, 1, SFX_THUNDER
	anim_obj ANIM_OBJ_2F, 152, 68, $0
	anim_wait 16
	anim_sound 0, 1, SFX_THUNDER
	anim_obj ANIM_OBJ_2D, 136, 68, $0
	anim_wait 48
	anim_ret
; c9bbd

BattleAnim_RazorWind: ; c9bbd
	anim_if_param_equal $1, BattleAnim_RazorWind_branch_c9fb5
	anim_1gfx ANIM_GFX_WHIP
	anim_bgeffect ANIM_BG_06, $0, $1, $0
.loop
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_42, 152, 40, $3
	anim_wait 4
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_42, 136, 56, $3
	anim_wait 4
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_42, 152, 64, $3
	anim_wait 4
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_41, 120, 40, $83
	anim_wait 4
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_41, 120, 64, $83
	anim_wait 4
	anim_loop 3, .loop
	anim_wait 24
	anim_ret
; c9c00

BattleAnim_Sonicboom_JP: ; c9c00
	anim_2gfx ANIM_GFX_WHIP, ANIM_GFX_HIT
.loop
	anim_sound 3, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_43, 64, 80, $3
	anim_wait 8
	anim_sound 3, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_43, 64, 88, $2
	anim_wait 8
	anim_sound 3, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_43, 64, 96, $4
	anim_wait 8
	anim_loop 2, .loop
	anim_wait 32
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; c9c36

BattleAnim_Gust: ; c9c36
BattleAnim_Sonicboom: ; c9c36
	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
.loop
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_GUST, 136, 72, $0
	anim_wait 6
	anim_loop 9, .loop
	anim_obj ANIM_OBJ_01, 144, 64, $18
	anim_wait 8
	anim_obj ANIM_OBJ_01, 128, 32, $18
	anim_wait 16
	anim_ret
; c9c53

BattleAnim_Selfdestruct: ; c9c53
	anim_1gfx ANIM_GFX_EXPLOSION
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $24
	anim_if_param_equal $1, .loop
	anim_call BattleAnim_Selfdestruct_branch_cbb8f
	anim_wait 16
	anim_ret
; c9c63

.loop
	anim_call BattleAnim_Selfdestruct_branch_cbb62
	anim_wait 5
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_loop 2, .loop
	anim_wait 16
	anim_ret
; c9c72

BattleAnim_Explosion: ; c9c72
	anim_1gfx ANIM_GFX_EXPLOSION
	anim_bgeffect ANIM_BG_1F, $60, $4, $10
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $24
	anim_if_param_equal $1, .loop
	anim_call BattleAnim_Explosion_branch_cbb8f
	anim_wait 16
	anim_ret
; c9c87

.loop
	anim_call BattleAnim_Explosion_branch_cbb62
	anim_wait 5
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_loop 2, .loop
	anim_wait 16
	anim_ret
; c9c96

BattleAnim_Acid: ; c9c96
	anim_1gfx ANIM_GFX_POISON
	anim_call BattleAnim_Acid_branch_cbc35
	anim_wait 64
	anim_ret
; c9c9d

BattleAnim_RockThrow: ; c9c9d
	anim_1gfx ANIM_GFX_ROCKS
	anim_bgeffect ANIM_BG_1F, $60, $1, $0
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 128, 64, $40
	anim_wait 2
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1D, 120, 68, $30
	anim_wait 2
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 152, 68, $30
	anim_wait 2
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1D, 144, 64, $40
	anim_wait 2
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 136, 68, $30
	anim_wait 96
	anim_ret
; c9cd2

BattleAnim_RockSlide: ; c9cd2
	anim_1gfx ANIM_GFX_ROCKS
	anim_bgeffect ANIM_BG_1F, $c0, $1, $0
.loop
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 128, 64, $40
	anim_wait 4
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1D, 120, 68, $30
	anim_wait 4
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 152, 68, $30
	anim_wait 4
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1D, 144, 64, $40
	anim_wait 4
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 136, 68, $30
	anim_wait 16
	anim_loop 4, .loop
	anim_wait 96
	anim_ret
; c9d0c

BattleAnim_Sing: ; c9d0c
	anim_1gfx ANIM_GFX_NOISE
	anim_sound 16, 2, SFX_SING
.loop
	anim_obj ANIM_OBJ_23, 64, 92, $0
	anim_wait 8
	anim_obj ANIM_OBJ_23, 64, 92, $1
	anim_wait 8
	anim_obj ANIM_OBJ_23, 64, 92, $2
	anim_wait 8
	anim_obj ANIM_OBJ_23, 64, 92, $0
	anim_wait 8
	anim_obj ANIM_OBJ_23, 64, 92, $2
	anim_wait 8
	anim_loop 4, .loop
	anim_wait 64
	anim_ret
; c9d35

BattleAnim_Poisonpowder: ; c9d35
BattleAnim_SleepPowder: ; c9d35
BattleAnim_Spore: ; c9d35
BattleAnim_StunSpore: ; c9d35
	anim_1gfx ANIM_GFX_POWDER
.loop
	anim_sound 0, 1, SFX_POWDER
	anim_obj ANIM_OBJ_26, 104, 16, $0
	anim_wait 4
	anim_sound 0, 1, SFX_POWDER
	anim_obj ANIM_OBJ_26, 136, 16, $0
	anim_wait 4
	anim_sound 0, 1, SFX_POWDER
	anim_obj ANIM_OBJ_26, 112, 16, $0
	anim_wait 4
	anim_sound 0, 1, SFX_POWDER
	anim_obj ANIM_OBJ_26, 128, 16, $0
	anim_wait 4
	anim_sound 0, 1, SFX_POWDER
	anim_obj ANIM_OBJ_26, 120, 16, $0
	anim_wait 4
	anim_loop 2, .loop
	anim_wait 96
	anim_ret
; c9d6a

BattleAnim_HyperBeam: ; c9d6a
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_1F, $30, $4, $10
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_call BattleAnim_HyperBeam_branch_cbb39
	anim_wait 48
	anim_ret
; c9d80

BattleAnim_AuroraBeam: ; c9d80
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_wait 64
	anim_call BattleAnim_AuroraBeam_branch_cbb39
	anim_wait 48
	anim_incobj  5
	anim_wait 64
	anim_ret
; c9d95

BattleAnim_Vicegrip: ; c9d95
	anim_1gfx ANIM_GFX_CUT
	anim_sound 0, 1, SFX_VICEGRIP
	anim_obj ANIM_OBJ_37, 152, 40, $0
	anim_obj ANIM_OBJ_39, 120, 72, $0
	anim_wait 32
	anim_ret
; c9da6

BattleAnim_Scratch: ; c9da6
	anim_1gfx ANIM_GFX_CUT
	anim_sound 0, 1, SFX_SCRATCH
	anim_obj ANIM_OBJ_37, 144, 48, $0
	anim_obj ANIM_OBJ_37, 140, 44, $0
	anim_obj ANIM_OBJ_37, 136, 40, $0
	anim_wait 32
	anim_ret
; c9dbc

BattleAnim_FurySwipes: ; c9dbc
	anim_1gfx ANIM_GFX_CUT
	anim_if_param_equal $1, BattleAnim_FurySwipes_branch_c9dd9
	anim_sound 0, 1, SFX_SCRATCH
	anim_obj ANIM_OBJ_37, 144, 48, $0
	anim_obj ANIM_OBJ_37, 140, 44, $0
	anim_obj ANIM_OBJ_37, 136, 40, $0
	anim_sound 0, 1, SFX_SCRATCH
	anim_wait 32
	anim_ret
; c9dd9

BattleAnim_FurySwipes_branch_c9dd9: ; c9dd9
	anim_sound 0, 1, SFX_SCRATCH
	anim_obj ANIM_OBJ_38, 120, 48, $0
	anim_obj ANIM_OBJ_38, 124, 44, $0
	anim_obj ANIM_OBJ_38, 128, 40, $0
	anim_sound 0, 1, SFX_SCRATCH
	anim_wait 32
	anim_ret
; c9df0

BattleAnim_Cut: ; c9df0
	anim_1gfx ANIM_GFX_CUT
	anim_sound 0, 1, SFX_CUT
	anim_obj ANIM_OBJ_3A, 152, 40, $0
	anim_wait 32
	anim_ret
; c9dfc

BattleAnim_Slash: ; c9dfc
	anim_1gfx ANIM_GFX_CUT
	anim_sound 0, 1, SFX_CUT
	anim_obj ANIM_OBJ_3A, 152, 40, $0
	anim_obj ANIM_OBJ_3A, 148, 36, $0
	anim_wait 32
	anim_ret
; c9e0d

BattleAnim_Clamp: ; c9e0d
	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
	anim_obj ANIM_OBJ_35, 136, 56, $a0
	anim_obj ANIM_OBJ_35, 136, 56, $20
	anim_wait 16
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_01, 144, 48, $18
	anim_wait 32
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_01, 128, 64, $18
	anim_wait 16
	anim_ret
; c9e2e

BattleAnim_Bite: ; c9e2e
	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
	anim_obj ANIM_OBJ_36, 136, 56, $98
	anim_obj ANIM_OBJ_36, 136, 56, $18
	anim_wait 8
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_01, 144, 48, $18
	anim_wait 16
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_01, 128, 64, $18
	anim_wait 8
	anim_ret
; c9e4f

BattleAnim_Teleport: ; c9e4f
	anim_1gfx ANIM_GFX_SPEED
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TELEPORT, $0, $1, $0
	anim_wait 32
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_wait 3
	anim_incbgeffect ANIM_BG_TELEPORT
	anim_call BattleAnim_ShowMon_0
	anim_bgeffect ANIM_BG_06, $0, $1, $0
	anim_call BattleAnim_Teleport_branch_cbb12
	anim_wait 64
	anim_ret
; c9e6f

BattleAnim_Fly: ; c9e6f
	anim_if_param_equal $1, BattleAnim_Fly_branch_c9e89
	anim_if_param_equal $2, BattleAnim_Fly_branch_c9e82
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 32
BattleAnim_Fly_branch_c9e82: ; c9e82
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; c9e89

BattleAnim_Fly_branch_c9e89: ; c9e89
	anim_1gfx ANIM_GFX_SPEED
	anim_bgeffect ANIM_BG_06, $0, $1, $0
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_call BattleAnim_Fly_branch_cbb12
	anim_wait 64
	anim_ret
; c9e9a

BattleAnim_DoubleTeam: ; c9e9a
	anim_call BattleAnim_FollowPlayerHead_0
	anim_sound 0, 0, SFX_PSYBEAM
	anim_bgeffect ANIM_BG_DOUBLE_TEAM, $0, $1, $0
	anim_wait 96
	anim_incbgeffect ANIM_BG_DOUBLE_TEAM
	anim_wait 24
	anim_incbgeffect ANIM_BG_DOUBLE_TEAM
	anim_call BattleAnim_ShowMon_0
	anim_ret
; c9eaf

BattleAnim_Recover: ; c9eaf
	anim_1gfx ANIM_GFX_BUBBLE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_FULL_HEAL
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_obj ANIM_OBJ_2C, 44, 88, $30
	anim_obj ANIM_OBJ_2C, 44, 88, $31
	anim_obj ANIM_OBJ_2C, 44, 88, $32
	anim_obj ANIM_OBJ_2C, 44, 88, $33
	anim_obj ANIM_OBJ_2C, 44, 88, $34
	anim_obj ANIM_OBJ_2C, 44, 88, $35
	anim_obj ANIM_OBJ_2C, 44, 88, $36
	anim_obj ANIM_OBJ_2C, 44, 88, $37
	anim_wait 64
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; c9eeb

BattleAnim_Absorb: ; c9eeb
	anim_1gfx ANIM_GFX_CHARGE
	anim_obj ANIM_OBJ_3D, 44, 88, $0
.loop
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 128, 48, $2
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 64, $3
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 32, $4
	anim_wait 6
	anim_loop 5, .loop
	anim_wait 32
	anim_ret
; c9f13

BattleAnim_MegaDrain: ; c9f13
	anim_1gfx ANIM_GFX_CHARGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1C, $0, $0, $10
	anim_setvar $0
.loop
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 128, 48, $2
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 64, $3
	anim_wait 6
	anim_sound 6, 3, SFX_WATER_GUN
	anim_obj ANIM_OBJ_ABSORB, 136, 32, $4
	anim_wait 6
	anim_incvar
	anim_if_var_equal $7, .done
	anim_if_var_equal $2, .spawn
	anim_jump .loop
; c9f46

.spawn
	anim_obj ANIM_OBJ_3D, 44, 88, $0
	anim_jump .loop
; c9f4e

.done
	anim_wait 32
	anim_incbgeffect ANIM_BG_1C
	anim_call BattleAnim_ShowMon_0
	anim_ret
; c9f55

BattleAnim_EggBomb: ; c9f55
	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_EXPLOSION
	anim_sound 0, 0, SFX_SWITCH_POKEMON
	anim_obj ANIM_OBJ_46, 44, 104, $1
	anim_wait 128
	anim_wait 96
	anim_incobj  1
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_18, 128, 64, $0
	anim_wait 8
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_18, 144, 68, $0
	anim_wait 8
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_18, 136, 72, $0
	anim_wait 24
	anim_ret
; c9f85

BattleAnim_Softboiled: ; c9f85
	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_BUBBLE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_SWITCH_POKEMON
	anim_obj ANIM_OBJ_46, 44, 104, $6
	anim_wait 128
	anim_incobj  2
	anim_obj ANIM_OBJ_46, 76, 104, $b
	anim_wait 16
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_sound 0, 0, SFX_METRONOME
.loop
	anim_obj ANIM_OBJ_2C, 44, 88, $20
	anim_wait 8
	anim_loop 8, .loop
	anim_wait 128
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; c9fb5

BattleAnim_FocusEnergy: ; c9fb5
BattleAnim_RazorWind_branch_c9fb5: ; c9fb5
BattleAnim_SkullBash_branch_c9fb5: ; c9fb5
BattleAnim_SkyAttack_branch_c9fb5: ; c9fb5
	anim_1gfx ANIM_GFX_SPEED
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_16, $0, $1, $40
	anim_bgeffect ANIM_BG_06, $0, $2, $0
.loop
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_obj ANIM_OBJ_47, 44, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 36, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 52, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 28, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 60, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 20, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 68, 108, $8
	anim_wait 2
	anim_loop 3, .loop
	anim_wait 8
	anim_incbgeffect ANIM_BG_16
	anim_call BattleAnim_ShowMon_0
	anim_ret
; c9ffc

BattleAnim_Bide: ; c9ffc
	anim_if_param_equal $0, BattleAnim_Bide_branch_c9651
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_ESCAPE_ROPE
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_wait 72
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca014

BattleAnim_Bind: ; ca014
	anim_1gfx ANIM_GFX_ROPE
	anim_sound 0, 1, SFX_BIND
	anim_obj ANIM_OBJ_48, 132, 64, $0
	anim_wait 8
	anim_obj ANIM_OBJ_49, 132, 56, $0
	anim_wait 8
	anim_obj ANIM_OBJ_48, 132, 48, $0
	anim_wait 64
	anim_sound 0, 1, SFX_BIND
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_wait 96
	anim_ret
; ca036

BattleAnim_Wrap: ; ca036
	anim_1gfx ANIM_GFX_ROPE
	anim_sound 0, 1, SFX_BIND
	anim_obj ANIM_OBJ_48, 132, 64, $0
	anim_wait 8
	anim_obj ANIM_OBJ_48, 132, 56, $0
	anim_wait 8
	anim_obj ANIM_OBJ_48, 132, 48, $0
	anim_wait 64
	anim_sound 0, 1, SFX_BIND
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_wait 96
	anim_ret
; ca058

BattleAnim_Confusion: ; ca058
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_1
	anim_sound 0, 1, SFX_PSYCHIC
	anim_bgeffect ANIM_BG_NIGHT_SHADE, $0, $0, $8
	anim_wait 128
	anim_incbgeffect ANIM_BG_NIGHT_SHADE
	anim_call BattleAnim_ShowMon_1
	anim_ret
; ca06c

BattleAnim_Constrict: ; ca06c
	anim_1gfx ANIM_GFX_ROPE
	anim_sound 0, 1, SFX_BIND
	anim_obj ANIM_OBJ_49, 132, 64, $0
	anim_wait 8
	anim_obj ANIM_OBJ_48, 132, 48, $0
	anim_wait 8
	anim_obj ANIM_OBJ_49, 132, 40, $0
	anim_wait 8
	anim_obj ANIM_OBJ_48, 132, 56, $0
	anim_wait 64
	anim_ret
; ca08a

BattleAnim_Earthquake: ; ca08a
	anim_bgeffect ANIM_BG_1F, $60, $4, $10
.loop
	anim_sound 0, 1, SFX_EMBER
	anim_wait 24
	anim_loop 4, .loop
	anim_ret
; ca098

BattleAnim_Fissure: ; ca098
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
	anim_bgeffect ANIM_BG_1F, $60, $4, $0
.loop
	anim_sound 0, 1, SFX_EMBER
	anim_wait 24
	anim_loop 4, .loop
	anim_ret
; ca0ab

BattleAnim_Growl: ; ca0ab
	anim_1gfx ANIM_GFX_NOISE
	anim_enemyfeetobj
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_cry $0
.loop
	anim_call BattleAnim_Growl_branch_cbbbc
	anim_wait 16
	anim_loop 3, .loop
	anim_wait 9
	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $1, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_19, $0, $0, $40
	anim_wait 64
	anim_incbgeffect ANIM_BG_19
	anim_wait 1
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 5
	anim_incobj 10
	anim_wait 8
	anim_ret
; ca0d7

BattleAnim_Roar: ; ca0d7
	anim_1gfx ANIM_GFX_NOISE
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_cry $1
.loop
	anim_call BattleAnim_Roar_branch_cbbbc
	anim_wait 16
	anim_loop 3, .loop
	anim_wait 16
	anim_if_param_equal $0, .done
	anim_bgeffect ANIM_BG_27, $0, $0, $0
	anim_wait 64
.done
	anim_ret
; ca0f4

BattleAnim_Supersonic: ; ca0f4
	anim_1gfx ANIM_GFX_PSYCHIC
.loop
	anim_sound 6, 2, SFX_SUPERSONIC
	anim_obj ANIM_OBJ_4C, 64, 88, $2
	anim_wait 4
	anim_loop 10, .loop
	anim_wait 64
	anim_ret
; ca105

BattleAnim_Screech: ; ca105
	anim_1gfx ANIM_GFX_PSYCHIC
	anim_bgeffect ANIM_BG_1F, $8, $1, $20
	anim_sound 6, 2, SFX_SCREECH
.loop
	anim_obj ANIM_OBJ_4C, 64, 88, $2
	anim_wait 2
	anim_loop 2, .loop
	anim_wait 64
	anim_ret
; ca11b

BattleAnim_ConfuseRay: ; ca11b
	anim_1gfx ANIM_GFX_SPEED
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_08, $0, $4, $0
	anim_obj ANIM_OBJ_4D, 64, 88, $0
	anim_obj ANIM_OBJ_4D, 64, 88, $80
	anim_obj ANIM_OBJ_4D, 64, 88, $88
	anim_obj ANIM_OBJ_4D, 64, 88, $90
	anim_obj ANIM_OBJ_4D, 64, 88, $98
	anim_obj ANIM_OBJ_4D, 64, 88, $a0
	anim_obj ANIM_OBJ_4D, 64, 88, $a8
	anim_obj ANIM_OBJ_4D, 64, 88, $b0
	anim_obj ANIM_OBJ_4D, 64, 88, $b8
.loop
	anim_sound 6, 2, SFX_WHIRLWIND
	anim_wait 16
	anim_loop 8, .loop
	anim_wait 32
	anim_ret
; ca15e

BattleAnim_Leer: ; ca15e
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_call BattleAnim_Leer_branch_cbadc
	anim_wait 16
	anim_ret
; ca16a

BattleAnim_Reflect: ; ca16a
	anim_1gfx ANIM_GFX_REFLECT
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_wait 24
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_wait 64
	anim_ret
; ca18e

BattleAnim_LightScreen: ; ca18e
	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_REFLECT
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_sound 0, 0, SFX_FLASH
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $0
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $8
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $10
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $18
	anim_wait 4
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_obj ANIM_OBJ_6D, 72, 80, $20
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $28
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $30
	anim_wait 4
	anim_obj ANIM_OBJ_6D, 72, 80, $38
	anim_wait 64
	anim_ret
; ca1d5

BattleAnim_Amnesia: ; ca1d5
	anim_1gfx ANIM_GFX_STATUS
	anim_sound 0, 0, SFX_LICK
	anim_obj ANIM_OBJ_53, 64, 80, $2
	anim_wait 16
	anim_obj ANIM_OBJ_53, 68, 80, $1
	anim_wait 16
	anim_obj ANIM_OBJ_53, 72, 80, $0
	anim_wait 64
	anim_ret
; ca1ed

BattleAnim_DizzyPunch: ; ca1ed
	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_HIT
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 136, 40, $0
	anim_obj ANIM_OBJ_02, 136, 64, $0
	anim_wait 16
	anim_sound 0, 1, SFX_KINESIS
	anim_obj ANIM_OBJ_CHICK, 136, 24, $15
	anim_obj ANIM_OBJ_CHICK, 136, 24, $aa
	anim_obj ANIM_OBJ_CHICK, 136, 24, $bf
	anim_wait 96
	anim_ret
; ca212

BattleAnim_Rest: ; ca212
	anim_1gfx ANIM_GFX_STATUS
	anim_sound 0, 0, SFX_TAIL_WHIP
.loop
	anim_obj ANIM_OBJ_54, 64, 80, $0
	anim_wait 40
	anim_loop 3, .loop
	anim_wait 32
	anim_ret
; ca223

BattleAnim_AcidArmor: ; ca223
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_ACID_ARMOR, $0, $1, $8
	anim_sound 0, 0, SFX_MEGA_PUNCH
	anim_wait 64
	anim_incbgeffect ANIM_BG_ACID_ARMOR
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca237

BattleAnim_Splash: ; ca237
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 0, SFX_VICEGRIP
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_BOUNCE_DOWN, $0, $1, $0
	anim_wait 96
	anim_incbgeffect ANIM_BG_BOUNCE_DOWN
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca24b

BattleAnim_Dig: ; ca24b
	anim_2gfx ANIM_GFX_SAND, ANIM_GFX_HIT
	anim_if_param_equal $0, .hit
	anim_if_param_equal $2, .fail
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_DIG, $0, $1, $1
	anim_obj ANIM_OBJ_57, 72, 104, $0
.loop
	anim_sound 0, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_56, 56, 104, $0
	anim_wait 16
	anim_loop 6, .loop
	anim_wait 32
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_wait 8
	anim_incbgeffect ANIM_BG_DIG
	anim_call BattleAnim_ShowMon_0
	anim_ret

.hit
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 32
.fail
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; ca28d

BattleAnim_SandAttack: ; ca28d
	anim_1gfx ANIM_GFX_SAND
	anim_call BattleAnim_SandAttack_branch_cbc5b
	anim_ret
; ca293

BattleAnim_StringShot: ; ca293
	anim_1gfx ANIM_GFX_WEB
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_5A, 64, 80, $0
	anim_wait 4
	anim_sound 0, 1, SFX_MENU
	anim_obj ANIM_OBJ_5A, 132, 48, $1
	anim_wait 4
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_5A, 64, 88, $0
	anim_wait 4
	anim_sound 0, 1, SFX_MENU
	anim_obj ANIM_OBJ_5A, 132, 64, $1
	anim_wait 4
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_5A, 64, 84, $0
	anim_wait 4
	anim_sound 0, 1, SFX_MENU
	anim_obj ANIM_OBJ_5A, 132, 56, $2
	anim_wait 64
	anim_ret
; ca2d1

BattleAnim_Headbutt: ; ca2d1
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $14, $2, $0
	anim_wait 32
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_HEADBUTT
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca2ef

BattleAnim_Tackle: ; ca2ef
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_00, 136, 48, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca307

BattleAnim_BodySlam: ; ca307
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_BOUNCE_DOWN, $0, $1, $0
	anim_wait 32
	anim_incbgeffect ANIM_BG_BOUNCE_DOWN
	anim_wait 4
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 3
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 6
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 3
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca331

BattleAnim_TakeDown: ; ca331
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 3
	anim_sound 0, 1, SFX_TACKLE
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_obj ANIM_OBJ_01, 128, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_TACKLE
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 3
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca35c

BattleAnim_DoubleEdge: ; ca35c
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $10
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 3
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_00, 128, 48, $0
	anim_wait 6
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_00, 144, 48, $0
	anim_wait 3
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca382

BattleAnim_Submission: ; ca382
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_1
	anim_bgeffect ANIM_BG_26, $0, $0, $0
	anim_sound 0, 1, SFX_SUBMISSION
	anim_wait 32
	anim_obj ANIM_OBJ_01, 120, 48, $0
	anim_wait 32
	anim_obj ANIM_OBJ_01, 152, 56, $0
	anim_wait 32
	anim_obj ANIM_OBJ_01, 136, 52, $0
	anim_wait 32
	anim_incbgeffect ANIM_BG_26
	anim_call BattleAnim_ShowMon_1
	anim_ret
; ca3a8

BattleAnim_Whirlwind: ; ca3a8
	anim_1gfx ANIM_GFX_WIND
.loop
	anim_sound 0, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_GUST, 64, 112, $0
	anim_wait 6
	anim_loop 9, .loop
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_incobj  7
	anim_incobj  8
	anim_incobj  9
	anim_sound 16, 2, SFX_WHIRLWIND
	anim_wait 128
	anim_if_param_equal $0, .done
	anim_bgeffect ANIM_BG_27, $0, $0, $0
	anim_wait 64
.done
	anim_ret
; ca3d8

BattleAnim_Hypnosis: ; ca3d8
	anim_1gfx ANIM_GFX_PSYCHIC
.loop
	anim_sound 6, 2, SFX_SUPERSONIC
	anim_obj ANIM_OBJ_4C, 64, 88, $2
	anim_obj ANIM_OBJ_4C, 56, 80, $2
	anim_wait 8
	anim_loop 3, .loop
	anim_wait 56
	anim_ret
; ca3ee

BattleAnim_Haze: ; ca3ee
	anim_1gfx ANIM_GFX_HAZE
	anim_sound 0, 1, SFX_SURF
.loop
	anim_obj ANIM_OBJ_HAZE, 48, 56, $0
	anim_obj ANIM_OBJ_HAZE, 132, 16, $0
	anim_wait 12
	anim_loop 5, .loop
	anim_wait 96
	anim_ret
; ca404

BattleAnim_Mist: ; ca404
	anim_obp0 $54
	anim_1gfx ANIM_GFX_HAZE
	anim_sound 0, 0, SFX_SURF
.loop
	anim_obj ANIM_OBJ_MIST, 48, 56, $0
	anim_wait 8
	anim_loop 10, .loop
	anim_wait 96
	anim_ret
; ca417

BattleAnim_Smog: ; ca417
	anim_1gfx ANIM_GFX_HAZE
	anim_sound 0, 1, SFX_BUBBLEBEAM
.loop
	anim_obj ANIM_OBJ_SMOG, 132, 16, $0
	anim_wait 8
	anim_loop 10, .loop
	anim_wait 96
	anim_ret
; ca428

BattleAnim_PoisonGas: ; ca428
	anim_1gfx ANIM_GFX_HAZE
	anim_sound 16, 2, SFX_BUBBLEBEAM
.loop
	anim_obj ANIM_OBJ_POISON_GAS, 44, 80, $2
	anim_wait 8
	anim_loop 10, .loop
	anim_wait 128
	anim_ret
; ca439

BattleAnim_HornAttack: ; ca439
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_obj ANIM_OBJ_HORN, 72, 80, $1
	anim_wait 16
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; ca44c

BattleAnim_FuryAttack: ; ca44c
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_obj ANIM_OBJ_HORN, 72, 72, $2
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_04, 128, 40, $0
	anim_wait 8
	anim_obj ANIM_OBJ_HORN, 80, 88, $2
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_04, 136, 56, $0
	anim_wait 8
	anim_obj ANIM_OBJ_HORN, 76, 80, $2
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_04, 132, 48, $0
	anim_wait 8
	anim_ret
; ca47d

BattleAnim_HornDrill: ; ca47d
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
	anim_obj ANIM_OBJ_HORN, 72, 80, $3
	anim_wait 8
.loop
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_00, 132, 40, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_00, 140, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_00, 132, 56, $0
	anim_wait 8
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_obj ANIM_OBJ_00, 124, 48, $0
	anim_wait 8
	anim_loop 3, .loop
	anim_ret
; ca4b4

BattleAnim_PoisonSting: ; ca4b4
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_obj ANIM_OBJ_60, 64, 92, $14
	anim_wait 16
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 136, 56, $0
	anim_wait 16
	anim_ret
; ca4c7

BattleAnim_Twineedle: ; ca4c7
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_60, 64, 92, $14
	anim_obj ANIM_OBJ_60, 56, 84, $14
	anim_wait 16
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 136, 56, $0
	anim_obj ANIM_OBJ_05, 128, 48, $0
	anim_wait 16
	anim_ret
; ca4e7

BattleAnim_PinMissile: ; ca4e7
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
.loop
	anim_obj ANIM_OBJ_60, 64, 92, $28
	anim_wait 8
	anim_obj ANIM_OBJ_60, 56, 84, $28
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 136, 56, $0
	anim_wait 8
	anim_obj ANIM_OBJ_60, 52, 88, $28
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 128, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 132, 52, $0
	anim_loop 3, .loop
	anim_wait 16
	anim_ret
; ca51a

BattleAnim_SpikeCannon: ; ca51a
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
.loop
	anim_obj ANIM_OBJ_60, 64, 92, $18
	anim_wait 8
	anim_obj ANIM_OBJ_60, 56, 84, $18
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 136, 56, $0
	anim_wait 8
	anim_obj ANIM_OBJ_60, 52, 88, $18
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 128, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_POISON_STING
	anim_obj ANIM_OBJ_05, 132, 52, $0
	anim_loop 3, .loop
	anim_wait 16
	anim_ret
; ca54d

BattleAnim_Transform: ; ca54d
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_transform
	anim_sound 0, 0, SFX_PSYBEAM
	anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
	anim_wait 48
	anim_updateactorpic
	anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
	anim_wait 48
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca564

BattleAnim_PetalDance: ; ca564
	anim_sound 0, 0, SFX_MENU
	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_HIT
.loop
	anim_obj ANIM_OBJ_61, 48, 56, $0
	anim_wait 11
	anim_loop 8, .loop
	anim_wait 128
	anim_wait 64
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 16
	anim_ret
; ca580

BattleAnim_Barrage: ; ca580
	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_EXPLOSION
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_62, 64, 92, $10
	anim_wait 36
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_18, 136, 56, $0
	anim_wait 16
	anim_ret
; ca596

BattleAnim_PayDay: ; ca596
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_STATUS
	anim_sound 0, 1, SFX_POUND
	anim_obj ANIM_OBJ_01, 128, 56, $0
	anim_wait 16
	anim_sound 0, 1, SFX_PAY_DAY
	anim_obj ANIM_OBJ_63, 120, 76, $1
	anim_wait 64
	anim_ret
; ca5ac

BattleAnim_Mimic: ; ca5ac
	anim_1gfx ANIM_GFX_SPEED
	anim_obp0 $fc
	anim_sound 63, 3, SFX_LICK
	anim_obj ANIM_OBJ_65, 132, 44, $0
	anim_obj ANIM_OBJ_65, 132, 44, $8
	anim_obj ANIM_OBJ_65, 132, 44, $10
	anim_obj ANIM_OBJ_65, 132, 44, $18
	anim_obj ANIM_OBJ_65, 132, 44, $20
	anim_obj ANIM_OBJ_65, 132, 44, $28
	anim_obj ANIM_OBJ_65, 132, 44, $30
	anim_obj ANIM_OBJ_65, 132, 44, $38
	anim_wait 128
	anim_wait 48
	anim_ret
; ca5de

BattleAnim_LovelyKiss: ; ca5de
	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_obj ANIM_OBJ_96, 152, 40, $0
	anim_wait 32
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_HEART, 128, 40, $0
	anim_wait 40
	anim_ret
; ca5f6

BattleAnim_Bonemerang: ; ca5f6
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_HIT
	anim_sound 6, 2, SFX_HYDRO_PUMP
	anim_obj ANIM_OBJ_67, 88, 56, $1c
	anim_wait 24
	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 24
	anim_ret
; ca60c

BattleAnim_Swift: ; ca60c
	anim_1gfx ANIM_GFX_OBJECTS
	anim_sound 6, 2, SFX_METRONOME
	anim_obj ANIM_OBJ_6A, 64, 88, $4
	anim_wait 4
	anim_obj ANIM_OBJ_6A, 64, 72, $4
	anim_wait 4
	anim_obj ANIM_OBJ_6A, 64, 76, $4
	anim_wait 64
	anim_ret
; ca624

BattleAnim_Crabhammer: ; ca624
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_wait 48
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
.loop
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 12
	anim_loop 3, .loop
	anim_ret
; ca63f

BattleAnim_SkullBash: ; ca63f
	anim_if_param_equal $1, BattleAnim_SkullBash_branch_c9fb5
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $14, $2, $0
	anim_wait 32
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
.loop
	anim_sound 0, 1, SFX_HEADBUTT
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 8
	anim_loop 3, .loop
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca66a

BattleAnim_Kinesis: ; ca66a
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_NOISE
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_obj ANIM_OBJ_6B, 80, 76, $0
	anim_wait 32
.loop
	anim_sound 0, 0, SFX_KINESIS
	anim_obj ANIM_OBJ_4B, 64, 88, $0
	anim_wait 32
	anim_loop 3, .loop
	anim_wait 32
	anim_sound 0, 0, SFX_KINESIS_2
	anim_wait 32
	anim_ret
; ca68b

BattleAnim_Peck: ; ca68b
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 128, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 136, 56, $0
	anim_wait 16
	anim_ret
; ca6a0

BattleAnim_DrillPeck: ; ca6a0
	anim_1gfx ANIM_GFX_HIT
.loop
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 124, 56, $0
	anim_wait 4
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 132, 48, $0
	anim_wait 4
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 140, 56, $0
	anim_wait 4
	anim_sound 0, 1, SFX_PECK
	anim_obj ANIM_OBJ_02, 132, 64, $0
	anim_wait 4
	anim_loop 5, .loop
	anim_wait 16
	anim_ret
; ca6cc

BattleAnim_Guillotine: ; ca6cc
	anim_1gfx ANIM_GFX_CUT
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $10
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_sound 0, 1, SFX_VICEGRIP
	anim_obj ANIM_OBJ_37, 156, 44, $0
	anim_obj ANIM_OBJ_37, 152, 40, $0
	anim_obj ANIM_OBJ_37, 148, 36, $0
	anim_obj ANIM_OBJ_39, 124, 76, $0
	anim_obj ANIM_OBJ_39, 120, 72, $0
	anim_obj ANIM_OBJ_39, 116, 68, $0
	anim_obj ANIM_OBJ_39, 120, 72, $0
	anim_wait 32
	anim_ret
; ca700

BattleAnim_Flash: ; ca700
	anim_1gfx ANIM_GFX_SPEED
	anim_sound 0, 1, SFX_FLASH
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $20
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $0
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $8
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $10
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $18
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $20
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $28
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $30
	anim_wait 4
	anim_obj ANIM_OBJ_6C, 136, 56, $38
	anim_wait 32
	anim_ret
; ca73c

BattleAnim_Substitute: ; ca73c
	anim_sound 0, 0, SFX_SURF
	anim_if_param_equal $3, BattleAnim_Substitute_branch_ca77c
	anim_if_param_equal $2, BattleAnim_Substitute_branch_ca76e
	anim_if_param_equal $1, BattleAnim_Substitute_branch_ca760
	anim_1gfx ANIM_GFX_SMOKE
	anim_bgeffect ANIM_BG_27, $0, $1, $0
	anim_wait 48
	anim_raisesub
	anim_obj ANIM_OBJ_BALL_POOF, 48, 96, $0
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; ca760

BattleAnim_Substitute_branch_ca760: ; ca760
	anim_bgeffect ANIM_BG_27, $0, $1, $0
	anim_wait 48
	anim_dropsub
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; ca76e

BattleAnim_Substitute_branch_ca76e: ; ca76e
	anim_bgeffect ANIM_BG_27, $0, $1, $0
	anim_wait 48
	anim_raisesub
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; ca77c

BattleAnim_Substitute_branch_ca77c: ; ca77c
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_wait 48
	anim_dropsub
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 32
	anim_ret
; ca78a

BattleAnim_Minimize: ; ca78a
	anim_sound 0, 0, SFX_SURF
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_minimize
	anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
	anim_wait 48
	anim_updateactorpic
	anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
	anim_wait 48
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca7a1

BattleAnim_SkyAttack: ; ca7a1
	anim_if_param_equal $1, BattleAnim_SkyAttack_branch_c9fb5
	anim_1gfx ANIM_GFX_SKY_ATTACK
	anim_bgeffect ANIM_BG_27, $0, $1, $0
	anim_wait 32
	anim_sound 0, 0, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_SKY_ATTACK_FEAROW, 48, 88, $40
	anim_wait 64
	anim_incobj  1
	anim_wait 21
	anim_sound 0, 1, SFX_HYPER_BEAM
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_wait 64
	anim_incobj  1
	anim_wait 32
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 16
	anim_ret
; ca7cc

BattleAnim_NightShade: ; ca7cc
	anim_1gfx ANIM_GFX_HIT
	anim_bgp $1b
	anim_obp1 $1b
	anim_wait 32
	anim_call BattleAnim_FollowPlayerHead_1
	anim_bgeffect ANIM_BG_NIGHT_SHADE, $0, $0, $8
	anim_sound 0, 1, SFX_PSYCHIC
	anim_wait 96
	anim_incbgeffect ANIM_BG_NIGHT_SHADE
	anim_call BattleAnim_ShowMon_1
	anim_ret
; ca7e5

BattleAnim_Lick: ; ca7e5
	anim_1gfx ANIM_GFX_WATER
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_LICK, 136, 56, $0
	anim_wait 64
	anim_ret
; ca7f1

BattleAnim_TriAttack: ; ca7f1
	anim_3gfx ANIM_GFX_FIRE, ANIM_GFX_ICE, ANIM_GFX_LIGHTNING
	anim_call BattleAnim_TriAttack_branch_cbbcc
	anim_wait 16
	anim_call BattleAnim_TriAttack_branch_cbbdf
	anim_wait 16
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $4
	anim_sound 0, 1, SFX_THUNDER
	anim_obj ANIM_OBJ_2F, 152, 68, $0
	anim_wait 16
	anim_ret
; ca80c

BattleAnim_Withdraw: ; ca80c
	anim_1gfx ANIM_GFX_REFLECT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_WITHDRAW, $0, $1, $50
	anim_wait 48
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_WITHDRAW, 48, 88, $0
	anim_wait 64
	anim_incobj  2
	anim_wait 1
	anim_incbgeffect ANIM_BG_WITHDRAW
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca829

BattleAnim_Psybeam: ; ca829
	anim_1gfx ANIM_GFX_PSYCHIC
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_08, $0, $4, $0
.loop
	anim_sound 6, 2, SFX_PSYBEAM
	anim_obj ANIM_OBJ_4C, 64, 88, $4
	anim_wait 4
	anim_loop 10, .loop
	anim_wait 48
	anim_ret
; ca844

BattleAnim_DreamEater: ; ca844
	anim_1gfx ANIM_GFX_BUBBLE
	anim_bgp $1b
	anim_obp0 $27
	anim_sound 6, 3, SFX_WATER_GUN
	anim_call BattleAnim_DreamEater_branch_cbab3
	anim_wait 128
	anim_wait 48
	anim_ret
; ca853

BattleAnim_LeechLife: ; ca853
	anim_1gfx ANIM_GFX_BUBBLE
	anim_sound 6, 3, SFX_WATER_GUN
	anim_call BattleAnim_LeechLife_branch_cbab3
	anim_wait 128
	anim_wait 48
	anim_ret
; ca85e

BattleAnim_Harden: ; ca85e
	anim_1gfx ANIM_GFX_REFLECT
	anim_obp0 $0
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_call BattleAnim_Harden_branch_cbc43
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca86c

BattleAnim_Psywave: ; ca86c
	anim_1gfx ANIM_GFX_PSYCHIC
	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
.loop
	anim_sound 6, 2, SFX_PSYCHIC
	anim_obj ANIM_OBJ_4C, 64, 80, $2
	anim_wait 8
	anim_sound 6, 2, SFX_PSYCHIC
	anim_obj ANIM_OBJ_4C, 64, 88, $3
	anim_wait 8
	anim_sound 6, 2, SFX_PSYCHIC
	anim_obj ANIM_OBJ_4C, 64, 96, $4
	anim_wait 8
	anim_loop 3, .loop
	anim_wait 32
	anim_incbgeffect ANIM_BG_PSYCHIC
	anim_wait 4
	anim_ret
; ca897

BattleAnim_Glare: ; ca897
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $20
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_call BattleAnim_Glare_branch_cbadc
	anim_wait 16
	anim_ret
; ca8a8

BattleAnim_Thrash: ; ca8a8
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_POUND
	anim_obj ANIM_OBJ_08, 120, 72, $0
	anim_obj ANIM_OBJ_00, 120, 72, $0
	anim_wait 6
	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
	anim_obj ANIM_OBJ_06, 136, 56, $0
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 152, 40, $0
	anim_obj ANIM_OBJ_00, 152, 40, $0
	anim_wait 16
	anim_ret
; ca8d5

BattleAnim_Growth: ; ca8d5
	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
	anim_1gfx ANIM_GFX_CHARGE
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_obj ANIM_OBJ_72, 48, 108, $0
	anim_obj ANIM_OBJ_72, 48, 108, $8
	anim_obj ANIM_OBJ_72, 48, 108, $10
	anim_obj ANIM_OBJ_72, 48, 108, $18
	anim_obj ANIM_OBJ_72, 48, 108, $20
	anim_obj ANIM_OBJ_72, 48, 108, $28
	anim_obj ANIM_OBJ_72, 48, 108, $30
	anim_obj ANIM_OBJ_72, 48, 108, $38
	anim_wait 64
	anim_ret
; ca909

BattleAnim_Conversion2: ; ca909
	anim_1gfx ANIM_GFX_EXPLOSION
	anim_sound 63, 3, SFX_SHARPEN
	anim_obj ANIM_OBJ_73, 132, 44, $0
	anim_obj ANIM_OBJ_73, 132, 44, $8
	anim_obj ANIM_OBJ_73, 132, 44, $10
	anim_obj ANIM_OBJ_73, 132, 44, $18
	anim_obj ANIM_OBJ_73, 132, 44, $20
	anim_obj ANIM_OBJ_73, 132, 44, $28
	anim_obj ANIM_OBJ_73, 132, 44, $30
	anim_obj ANIM_OBJ_73, 132, 44, $38
	anim_wait 128
	anim_wait 48
	anim_ret
; ca939

BattleAnim_Smokescreen: ; ca939
	anim_3gfx ANIM_GFX_HAZE, ANIM_GFX_EGG, ANIM_GFX_SMOKE
	anim_sound 6, 2, SFX_THROW_BALL
	anim_obj ANIM_OBJ_75, 64, 92, $6c
	anim_wait 24
	anim_incobj  1
	anim_sound 0, 1, SFX_BALL_POOF
	anim_obj ANIM_OBJ_BALL_POOF, 108, 70, $10
	anim_wait 8
.loop
	anim_sound 0, 1, SFX_MENU
	anim_obj ANIM_OBJ_74, 132, 60, $20
	anim_wait 8
	anim_loop 5, .loop
	anim_wait 128
	anim_ret
; ca960

BattleAnim_Strength: ; ca960
	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_20, $10, $1, $20
	anim_sound 0, 0, SFX_STRENGTH
	anim_obj ANIM_OBJ_1F, 64, 104, $1
	anim_wait 128
	anim_incobj  1
	anim_wait 20
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 132, 40, $0
	anim_wait 16
	anim_ret
; ca97e

BattleAnim_SwordsDance: ; ca97e
	anim_1gfx ANIM_GFX_WHIP
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_obj ANIM_OBJ_76, 48, 108, $0
	anim_obj ANIM_OBJ_76, 48, 108, $d
	anim_obj ANIM_OBJ_76, 48, 108, $1a
	anim_obj ANIM_OBJ_76, 48, 108, $27
	anim_obj ANIM_OBJ_76, 48, 108, $34
	anim_wait 56
	anim_ret
; ca99e

BattleAnim_QuickAttack: ; ca99e
	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_HIT
	anim_sound 0, 0, SFX_MENU
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_obj ANIM_OBJ_77, 24, 88, $2
	anim_obj ANIM_OBJ_77, 32, 88, $1
	anim_obj ANIM_OBJ_77, 40, 88, $0
	anim_obj ANIM_OBJ_77, 48, 88, $80
	anim_obj ANIM_OBJ_77, 56, 88, $81
	anim_obj ANIM_OBJ_77, 64, 88, $82
	anim_wait 12
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 16
	anim_ret
; ca9d8

BattleAnim_Meditate: ; ca9d8
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_PSYBEAM
	anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
	anim_wait 48
	anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
	anim_wait 48
	anim_call BattleAnim_ShowMon_0
	anim_ret
; ca9ed

BattleAnim_Sharpen: ; ca9ed
	anim_1gfx ANIM_GFX_SHAPES
	anim_obp0 $e4
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_SHARPEN
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_obj ANIM_OBJ_78, 48, 88, $0
	anim_wait 96
	anim_incobj  2
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; caa0a

BattleAnim_DefenseCurl: ; caa0a
	anim_1gfx ANIM_GFX_SHAPES
	anim_obp0 $e4
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_SHARPEN
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_obj ANIM_OBJ_79, 48, 88, $0
	anim_wait 96
	anim_incobj  2
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; caa27

BattleAnim_SeismicToss: ; caa27
	anim_2gfx ANIM_GFX_GLOBE, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_20, $10, $1, $20
	anim_sound 0, 0, SFX_STRENGTH
	anim_obj ANIM_OBJ_20, 64, 104, $1
	anim_wait 128
	anim_incobj  1
	anim_wait 20
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 132, 40, $0
	anim_wait 16
	anim_ret
; caa45

BattleAnim_Rage: ; caa45
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_sound 0, 0, SFX_RAGE
	anim_wait 72
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
	anim_obj ANIM_OBJ_00, 120, 72, $0
	anim_wait 6
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 152, 40, $0
	anim_wait 16
	anim_ret
; caa74

BattleAnim_Agility: ; caa74
	anim_1gfx ANIM_GFX_WIND
	anim_obp0 $fc
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_obj ANIM_OBJ_7D, 8, 24, $10
	anim_obj ANIM_OBJ_7D, 8, 48, $2
	anim_obj ANIM_OBJ_7D, 8, 88, $8
	anim_wait 4
	anim_obj ANIM_OBJ_7D, 8, 32, $6
	anim_obj ANIM_OBJ_7D, 8, 56, $c
	anim_obj ANIM_OBJ_7D, 8, 80, $4
	anim_obj ANIM_OBJ_7D, 8, 104, $e
.loop
	anim_sound 0, 0, SFX_RAZOR_WIND
	anim_wait 4
	anim_loop 18, .loop
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; caab2

BattleAnim_BoneClub: ; caab2
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_MISC
	anim_obj ANIM_OBJ_68, 64, 88, $2
	anim_wait 32
	anim_sound 0, 1, SFX_BONE_CLUB
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; caac5

BattleAnim_Barrier: ; caac5
	anim_1gfx ANIM_GFX_REFLECT
	anim_enemyfeetobj
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_wait 8
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_wait 32
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_wait 32
	anim_ret
; caae1

BattleAnim_Waterfall: ; caae1
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 16
	anim_call BattleAnim_ShowMon_0
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 3
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 3
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_01, 136, 40, $0
	anim_wait 3
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_01, 136, 32, $0
	anim_wait 3
	anim_sound 0, 1, SFX_LICK
	anim_obj ANIM_OBJ_01, 136, 24, $0
	anim_wait 8
	anim_ret
; cab1d

BattleAnim_PsychicM: ; cab1d
	anim_1gfx ANIM_GFX_PSYCHIC
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
.loop
	anim_sound 6, 2, SFX_PSYCHIC
	anim_obj ANIM_OBJ_4C, 64, 88, $2
	anim_wait 8
	anim_loop 8, .loop
	anim_wait 96
	anim_incbgeffect ANIM_BG_PSYCHIC
	anim_wait 4
	anim_ret
; cab3b

BattleAnim_Sludge: ; cab3b
	anim_1gfx ANIM_GFX_POISON
	anim_call BattleAnim_Sludge_branch_cbc15
	anim_wait 56
	anim_ret
; cab42

BattleAnim_Toxic: ; cab42
	anim_1gfx ANIM_GFX_POISON
	anim_bgeffect ANIM_BG_BLACK_HUES, $0, $8, $0
	anim_call BattleAnim_Toxic_branch_cbc35
	anim_wait 32
	anim_call BattleAnim_Toxic_branch_cbc15
	anim_wait 64
	anim_ret
; cab52

BattleAnim_Metronome: ; cab52
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_SPEED
	anim_sound 0, 0, SFX_METRONOME
	anim_obj ANIM_OBJ_7A, 72, 88, $0
.loop
	anim_obj ANIM_OBJ_7B, 72, 80, $0
	anim_wait 8
	anim_loop 5, .loop
	anim_wait 48
	anim_ret
; cab69

BattleAnim_Counter: ; cab69
	anim_1gfx ANIM_GFX_HIT
.loop
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
	anim_sound 0, 1, SFX_POUND
	anim_obj ANIM_OBJ_08, 120, 72, $0
	anim_obj ANIM_OBJ_00, 120, 72, $0
	anim_wait 6
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_06, 136, 40, $0
	anim_obj ANIM_OBJ_00, 136, 40, $0
	anim_wait 6
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
	anim_sound 0, 1, SFX_MEGA_KICK
	anim_obj ANIM_OBJ_07, 152, 56, $0
	anim_obj ANIM_OBJ_00, 152, 56, $0
	anim_wait 6
	anim_loop 3, .loop
	anim_wait 16
	anim_ret
; cabaa

BattleAnim_LowKick: ; cabaa
	anim_1gfx ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 124, 64, $0
	anim_obj ANIM_OBJ_00, 124, 64, $0
	anim_wait 6
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 132, 64, $0
	anim_obj ANIM_OBJ_00, 132, 64, $0
	anim_wait 6
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 140, 64, $0
	anim_obj ANIM_OBJ_00, 140, 64, $0
	anim_wait 16
	anim_ret
; cabe6

BattleAnim_WingAttack: ; cabe6
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 148, 56, $0
	anim_obj ANIM_OBJ_01, 116, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 144, 56, $0
	anim_obj ANIM_OBJ_01, 120, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 140, 56, $0
	anim_obj ANIM_OBJ_01, 124, 56, $0
	anim_wait 16
	anim_ret
; cac13

BattleAnim_Slam: ; cac13
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $2
	anim_obj ANIM_OBJ_01, 124, 40, $0
	anim_wait 16
	anim_ret
; cac24

BattleAnim_Disable: ; cac24
	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_STATUS
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_obj ANIM_OBJ_7C, 132, 56, $0
	anim_wait 16
	anim_sound 0, 1, SFX_BIND
	anim_obj ANIM_OBJ_PARALYZED, 104, 56, $42
	anim_obj ANIM_OBJ_PARALYZED, 160, 56, $c2
	anim_wait 96
	anim_ret
; cac41

BattleAnim_TailWhip: ; cac41
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_sound 0, 0, SFX_TAIL_WHIP
	anim_bgeffect ANIM_BG_26, $0, $1, $0
	anim_wait 32
	anim_incbgeffect ANIM_BG_26
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cac55

BattleAnim_Struggle: ; cac55
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 1, SFX_POUND
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; cac61

BattleAnim_Sketch: ; cac61
	anim_1gfx ANIM_GFX_OBJECTS
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_sound 0, 0, SFX_SKETCH
	anim_obj ANIM_OBJ_98, 72, 80, $0
	anim_wait 80
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_wait 1
	anim_ret
; cac7b

BattleAnim_TripleKick: ; cac7b
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_TripleKick_branch_cac95
	anim_if_param_equal $2, BattleAnim_TripleKick_branch_caca5
	anim_sound 0, 1, SFX_MEGA_KICK
	anim_obj ANIM_OBJ_07, 144, 48, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 144, 48, $0
	anim_wait 8
	anim_ret
; cac95

BattleAnim_TripleKick_branch_cac95: ; cac95
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 120, 64, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 120, 64, $0
	anim_wait 8
	anim_ret
; caca5

BattleAnim_TripleKick_branch_caca5: ; caca5
	anim_sound 0, 1, SFX_DOUBLE_KICK
	anim_obj ANIM_OBJ_07, 132, 32, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 132, 32, $0
	anim_wait 8
	anim_ret
; cacb5

BattleAnim_Thief: ; cacb5
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 16
	anim_sound 0, 1, SFX_THIEF
	anim_obj ANIM_OBJ_01, 128, 48, $0
	anim_wait 16
	anim_call BattleAnim_ShowMon_0
	anim_wait 1
	anim_1gfx ANIM_GFX_STATUS
	anim_sound 0, 1, SFX_THIEF_2
	anim_obj ANIM_OBJ_8B, 120, 76, $1
	anim_wait 64
	anim_ret
; cacd9

BattleAnim_SpiderWeb: ; cacd9
	anim_1gfx ANIM_GFX_WEB
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_obj ANIM_OBJ_92, 132, 48, $0
	anim_sound 6, 2, SFX_SPIDER_WEB
	anim_obj ANIM_OBJ_5A, 64, 80, $0
	anim_wait 4
	anim_obj ANIM_OBJ_5A, 64, 88, $0
	anim_wait 4
	anim_obj ANIM_OBJ_5A, 64, 84, $0
	anim_wait 64
	anim_ret
; cacfb

BattleAnim_MindReader: ; cacfb
	anim_1gfx ANIM_GFX_MISC
	anim_sound 0, 1, SFX_MIND_READER
.loop
	anim_obj ANIM_OBJ_88, 132, 48, $3
	anim_obj ANIM_OBJ_88, 132, 48, $12
	anim_obj ANIM_OBJ_88, 132, 48, $20
	anim_obj ANIM_OBJ_88, 132, 48, $31
	anim_wait 16
	anim_loop 2, .loop
	anim_wait 32
	anim_ret
; cad1b

BattleAnim_Nightmare: ; cad1b
	anim_1gfx ANIM_GFX_ANGELS
	anim_bgp $1b
	anim_obp0 $f
	anim_obj ANIM_OBJ_94, 132, 40, $0
	anim_obj ANIM_OBJ_94, 132, 40, $a0
	anim_sound 0, 1, SFX_NIGHTMARE
	anim_wait 96
	anim_ret
; cad30

BattleAnim_FlameWheel: ; cad30
	anim_1gfx ANIM_GFX_FIRE
.loop
	anim_sound 0, 0, SFX_EMBER
	anim_obj ANIM_OBJ_7F, 48, 96, $0
	anim_wait 6
	anim_loop 8, .loop
	anim_wait 96
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
	anim_sound 0, 1, SFX_EMBER
	anim_obj ANIM_OBJ_0F, 136, 48, $1
	anim_obj ANIM_OBJ_0F, 136, 48, $4
	anim_obj ANIM_OBJ_0F, 136, 48, $5
	anim_wait 8
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 4
	anim_incobj  9
	anim_wait 8
	anim_ret
; cad6b

BattleAnim_Snore: ; cad6b
	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_NOISE
	anim_obj ANIM_OBJ_54, 64, 80, $0
	anim_wait 32
	anim_bgeffect ANIM_BG_1F, $60, $2, $0
	anim_sound 0, 0, SFX_SNORE
.loop
	anim_call BattleAnim_Snore_branch_cbbbc
	anim_wait 16
	anim_loop 2, .loop
	anim_wait 8
	anim_ret
; cad86

BattleAnim_Curse: ; cad86
	anim_if_param_equal $1, .NotGhost
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_OBJECTS
	anim_obj ANIM_OBJ_A5, 68, 72, $0
	anim_sound 0, 0, SFX_CURSE
	anim_wait 32
	anim_incobj  1
	anim_wait 12
	anim_sound 0, 0, SFX_POISON_STING
	anim_obj ANIM_OBJ_04, 44, 96, $0
	anim_wait 16
	anim_ret
; cada3

.NotGhost: ; cada3
	anim_1gfx ANIM_GFX_SPEED
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_19, $0, $1, $40
	anim_sound 0, 0, SFX_SHARPEN
	anim_wait 64
	anim_incbgeffect ANIM_BG_19
	anim_wait 1
	anim_bgeffect ANIM_BG_16, $0, $1, $40
.loop
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_obj ANIM_OBJ_47, 44, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 36, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 52, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 28, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 60, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 20, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 68, 108, $8
	anim_wait 2
	anim_loop 3, .loop
	anim_wait 8
	anim_incbgeffect ANIM_BG_16
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cadf1

BattleAnim_Flail: ; cadf1
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_sound 0, 0, SFX_SUBMISSION
	anim_bgeffect ANIM_BG_2C, $0, $1, $0
	anim_wait 8
	anim_obj ANIM_OBJ_01, 120, 48, $0
	anim_wait 8
	anim_obj ANIM_OBJ_01, 152, 48, $0
	anim_wait 8
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 8
	anim_incbgeffect ANIM_BG_2C
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cae17

BattleAnim_Conversion: ; cae17
	anim_1gfx ANIM_GFX_EXPLOSION
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_sound 63, 3, SFX_SHARPEN
	anim_obj ANIM_OBJ_91, 48, 88, $0
	anim_obj ANIM_OBJ_91, 48, 88, $8
	anim_obj ANIM_OBJ_91, 48, 88, $10
	anim_obj ANIM_OBJ_91, 48, 88, $18
	anim_obj ANIM_OBJ_91, 48, 88, $20
	anim_obj ANIM_OBJ_91, 48, 88, $28
	anim_obj ANIM_OBJ_91, 48, 88, $30
	anim_obj ANIM_OBJ_91, 48, 88, $38
	anim_wait 128
	anim_ret
; cae4b

BattleAnim_Aeroblast: ; cae4b
	anim_2gfx ANIM_GFX_BEAM, ANIM_GFX_AEROBLAST
	anim_bgp $1b
	anim_bgeffect ANIM_BG_1F, $50, $4, $10
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_sound 0, 0, SFX_AEROBLAST
	anim_obj ANIM_OBJ_B3, 72, 88, $0
	anim_wait 32
	anim_sound 0, 0, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 80, 84, $0
	anim_wait 2
	anim_sound 0, 1, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 96, 76, $0
	anim_wait 2
	anim_sound 0, 1, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 112, 68, $0
	anim_obj ANIM_OBJ_28, 126, 62, $0
	anim_wait 48
	anim_ret
; cae84

BattleAnim_CottonSpore: ; cae84
	anim_obp0 $54
	anim_1gfx ANIM_GFX_MISC
	anim_sound 0, 1, SFX_POWDER
.loop ; cae8b
	anim_obj ANIM_OBJ_COTTON_SPORE, 132, 32, $0
	anim_wait 8
	anim_loop 5, .loop
	anim_wait 96
	anim_ret
; cae97

BattleAnim_Reversal: ; cae97
	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_04, 112, 64, $0
	anim_wait 2
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_A7, 120, 56, $0
	anim_wait 2
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_04, 128, 56, $0
	anim_wait 2
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_A7, 136, 48, $0
	anim_wait 2
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_04, 144, 48, $0
	anim_wait 2
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_A7, 152, 40, $0
	anim_wait 24
	anim_ret
; caed6

BattleAnim_Spite: ; caed6
	anim_1gfx ANIM_GFX_ANGELS
	anim_obj ANIM_OBJ_A4, 132, 16, $0
	anim_sound 0, 1, SFX_SPITE
	anim_wait 96
	anim_ret
; caee2

BattleAnim_PowderSnow: ; caee2
	anim_1gfx ANIM_GFX_ICE
.loop ; caee4
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_8F, 64, 88, $23
	anim_wait 2
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_8F, 64, 80, $24
	anim_wait 2
	anim_sound 6, 2, SFX_SHINE
	anim_obj ANIM_OBJ_8F, 64, 96, $23
	anim_wait 2
	anim_loop 2, .loop
	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
	anim_wait 40
	anim_call BattleAnim_PowderSnow_branch_cbbdf
	anim_wait 32
	anim_ret
; caf0e

BattleAnim_Protect: ; caf0e
	anim_1gfx ANIM_GFX_OBJECTS
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_obj ANIM_OBJ_8A, 80, 80, $0
	anim_obj ANIM_OBJ_8A, 80, 80, $d
	anim_obj ANIM_OBJ_8A, 80, 80, $1a
	anim_obj ANIM_OBJ_8A, 80, 80, $27
	anim_obj ANIM_OBJ_8A, 80, 80, $34
	anim_sound 0, 0, SFX_PROTECT
	anim_wait 96
	anim_ret
; caf33

BattleAnim_MachPunch: ; caf33
	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_77, 24, 88, $2
	anim_obj ANIM_OBJ_77, 32, 88, $1
	anim_obj ANIM_OBJ_77, 40, 88, $0
	anim_obj ANIM_OBJ_77, 48, 88, $80
	anim_obj ANIM_OBJ_77, 56, 88, $81
	anim_obj ANIM_OBJ_77, 64, 88, $82
	anim_wait 12
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_06, 136, 56, $0
	anim_wait 6
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 16
	anim_ret
; caf73

BattleAnim_ScaryFace: ; caf73
	anim_1gfx ANIM_GFX_BEAM
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_call BattleAnim_ScaryFace_branch_cbadc
	anim_wait 64
	anim_ret
; caf84

BattleAnim_FaintAttack: ; caf84
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 0, SFX_CURSE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1D, $0, $1, $80
	anim_wait 96
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_04, 120, 32, $0
	anim_wait 8
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_04, 152, 40, $0
	anim_wait 8
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_04, 136, 48, $0
	anim_wait 32
	anim_incbgeffect ANIM_BG_1D
	anim_call BattleAnim_ShowMon_0
	anim_wait 4
	anim_ret
; cafb4

BattleAnim_SweetKiss: ; cafb4
	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_obj ANIM_OBJ_97, 96, 40, $0
	anim_sound 0, 1, SFX_SWEET_KISS
	anim_wait 32
	anim_sound 0, 1, SFX_SWEET_KISS_2
	anim_obj ANIM_OBJ_HEART, 120, 40, $0
	anim_wait 40
	anim_ret
; cafcf

BattleAnim_BellyDrum: ; cafcf
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_NOISE
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 24
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 24
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 24
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_sound 0, 0, SFX_BELLY_DRUM
	anim_obj ANIM_OBJ_AA, 64, 104, $0
	anim_obj ANIM_OBJ_AB, 64, 92, $f8
	anim_wait 12
	anim_ret
; cb051

BattleAnim_SludgeBomb: ; cb051
	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_POISON
	anim_bgeffect ANIM_BG_BLACK_HUES, $0, $8, $0
	anim_sound 6, 2, SFX_SLUDGE_BOMB
	anim_obj ANIM_OBJ_62, 64, 92, $10
	anim_wait 36
	anim_call BattleAnim_SludgeBomb_branch_cbc15
	anim_wait 64
	anim_ret
; cb067

BattleAnim_MudSlap: ; cb067
	anim_1gfx ANIM_GFX_SAND
	anim_obp0 $fc
	anim_call BattleAnim_MudSlap_branch_cbc5b
	anim_ret
; cb06f

BattleAnim_Octazooka: ; cb06f
	anim_3gfx ANIM_GFX_HAZE, ANIM_GFX_EGG, ANIM_GFX_SMOKE
	anim_sound 6, 2, SFX_SLUDGE_BOMB
	anim_obj ANIM_OBJ_8C, 64, 92, $4
	anim_wait 16
	anim_obj ANIM_OBJ_BALL_POOF, 132, 56, $10
	anim_wait 8
	anim_if_param_equal $0, .done
.loop
	anim_obj ANIM_OBJ_74, 132, 60, $20
	anim_wait 8
	anim_loop 5, .loop
	anim_wait 128
.done
	anim_ret
; cb092

BattleAnim_Spikes: ; cb092
	anim_1gfx ANIM_GFX_MISC
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_SPIKES, 48, 88, $20
	anim_wait 8
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_SPIKES, 48, 88, $30
	anim_wait 8
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_SPIKES, 48, 88, $28
	anim_wait 64
	anim_ret
; cb0b0

BattleAnim_ZapCannon: ; cb0b0
	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
	anim_bgp $1b
	anim_obp0 $30
	anim_sound 6, 2, SFX_ZAP_CANNON
	anim_obj ANIM_OBJ_A3, 64, 92, $2
	anim_wait 40
	anim_sound 0, 1, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_LIGHTNING_BOLT, 136, 56, $2
	anim_wait 16
	anim_obj ANIM_OBJ_31, 136, 56, $0
	anim_wait 128
	anim_ret
; cb0d0

BattleAnim_Foresight: ; cb0d0
	anim_1gfx ANIM_GFX_SHINE
	anim_call BattleAnim_FollowEnemyFeet_1
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 1, SFX_FORESIGHT
	anim_obj ANIM_OBJ_A7, 132, 40, $0
	anim_wait 24
	anim_bgeffect ANIM_BG_19, $0, $0, $40
	anim_wait 64
	anim_incbgeffect ANIM_BG_19
	anim_call BattleAnim_ShowMon_1
	anim_wait 8
	anim_ret
; cb0f0

BattleAnim_DestinyBond: ; cb0f0
	anim_1gfx ANIM_GFX_ANGELS
	anim_bgp $1b
	anim_obp0 $0
	anim_if_param_equal $1, BattleAnim_DestinyBond_branch_cb104
	anim_sound 6, 2, SFX_WHIRLWIND
	anim_obj ANIM_OBJ_9B, 44, 120, $2
	anim_wait 128
	anim_ret
; cb104

BattleAnim_DestinyBond_branch_cb104: ; cb104
	anim_obj ANIM_OBJ_9B, 132, 76, $0
	anim_sound 0, 1, SFX_KINESIS
	anim_bgeffect ANIM_BG_RETURN_MON, $0, $0, $0
	anim_wait 32
	anim_ret
; cb113

BattleAnim_PerishSong: ; cb113
	anim_1gfx ANIM_GFX_NOISE
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_sound 0, 2, SFX_PERISH_SONG
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $0
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $8
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $10
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $18
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $20
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $28
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $30
	anim_obj ANIM_OBJ_PERISH_SONG, 88, 0, $38
	anim_wait 112
	anim_ret
; cb14c

BattleAnim_IcyWind: ; cb14c
	anim_1gfx ANIM_GFX_SPEED
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_playerheadobj
	anim_sound 0, 0, SFX_PSYCHIC
.loop
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 88, $4
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 80, $4
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 96, $4
	anim_wait 8
	anim_loop 2, .loop
	anim_wait 16
	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $1, $0
	anim_wait 6
	anim_bgeffect ANIM_BG_NIGHT_SHADE, $0, $0, $8
	anim_wait 64
	anim_incbgeffect ANIM_BG_NIGHT_SHADE
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 4
	anim_incobj  7
	anim_wait 1
	anim_ret
; cb18c

BattleAnim_Detect: ; cb18c
	anim_1gfx ANIM_GFX_SHINE
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 0, SFX_FORESIGHT
	anim_obj ANIM_OBJ_A7, 64, 88, $0
	anim_wait 24
	anim_ret
; cb19d

BattleAnim_BoneRush: ; cb19d
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_MISC
	anim_sound 0, 1, SFX_BONE_CLUB
	anim_obj ANIM_OBJ_69, 132, 56, $2
	anim_wait 16
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 120, 48, $0
	anim_wait 16
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 144, 64, $0
	anim_wait 16
	anim_ret
; cb1bc

BattleAnim_LockOn: ; cb1bc
	anim_1gfx ANIM_GFX_MISC
	anim_sound 0, 1, SFX_MIND_READER
.loop
	anim_obj ANIM_OBJ_87, 132, 48, $3
	anim_obj ANIM_OBJ_87, 132, 48, $12
	anim_obj ANIM_OBJ_87, 132, 48, $20
	anim_obj ANIM_OBJ_87, 132, 48, $31
	anim_wait 16
	anim_loop 2, .loop
	anim_wait 32
	anim_ret
; cb1dc

BattleAnim_Outrage: ; cb1dc
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_sound 0, 0, SFX_OUTRAGE
	anim_wait 72
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
	anim_sound 0, 1, SFX_MOVE_PUZZLE_PIECE
	anim_obj ANIM_OBJ_00, 120, 72, $0
	anim_wait 6
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 152, 40, $0
	anim_wait 16
	anim_ret
; cb210

BattleAnim_Sandstorm: ; cb210
	anim_1gfx ANIM_GFX_POWDER
	anim_obj ANIM_OBJ_A2, 88, 0, $0
	anim_wait 8
	anim_obj ANIM_OBJ_A2, 72, 0, $1
	anim_wait 8
	anim_obj ANIM_OBJ_A2, 56, 0, $2
.loop
	anim_sound 0, 1, SFX_MENU
	anim_wait 8
	anim_loop 16, .loop
	anim_wait 8
	anim_ret
; cb22d

BattleAnim_GigaDrain: ; cb22d
	anim_2gfx ANIM_GFX_BUBBLE, ANIM_GFX_CHARGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1C, $0, $0, $10
	anim_sound 6, 3, SFX_GIGA_DRAIN
	anim_call BattleAnim_GigaDrain_branch_cbab3
	anim_wait 48
	anim_wait 128
	anim_incbgeffect ANIM_BG_1C
	anim_call BattleAnim_ShowMon_0
	anim_wait 1
	anim_1gfx ANIM_GFX_SHINE
	anim_bgeffect ANIM_BG_07, $0, $0, $0
.loop
	anim_sound 0, 0, SFX_METRONOME
	anim_obj ANIM_OBJ_9D, 24, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 56, 104, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 24, 104, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 56, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 40, 84, $0
	anim_wait 5
	anim_loop 2, .loop
	anim_wait 32
	anim_ret
; cb274

BattleAnim_Endure: ; cb274
	anim_1gfx ANIM_GFX_SPEED
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_bgeffect ANIM_BG_07, $0, $2, $0
.loop
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_obj ANIM_OBJ_47, 44, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 36, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 52, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 28, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 60, 108, $6
	anim_wait 2
	anim_obj ANIM_OBJ_47, 20, 108, $8
	anim_wait 2
	anim_obj ANIM_OBJ_47, 68, 108, $8
	anim_wait 2
	anim_loop 5, .loop
	anim_wait 8
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb2bb

BattleAnim_Charm: ; cb2bb
	anim_1gfx ANIM_GFX_OBJECTS
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_26, $0, $1, $0
	anim_sound 0, 0, SFX_ATTRACT
	anim_obj ANIM_OBJ_HEART, 64, 80, $0
	anim_wait 32
	anim_incbgeffect ANIM_BG_26
	anim_call BattleAnim_ShowMon_0
	anim_wait 4
	anim_ret
; cb2d5

BattleAnim_Rollout: ; cb2d5
	anim_1gfx ANIM_GFX_HIT
	anim_sound 0, 0, SFX_SPARK
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_2E, $60, $1, $1
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_03, 136, 40, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb2f5

BattleAnim_FalseSwipe: ; cb2f5
	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_CUT
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 1, SFX_CUT
	anim_obj ANIM_OBJ_3A, 152, 40, $0
	anim_wait 4
	anim_obj ANIM_OBJ_9D, 136, 40, $0
	anim_wait 32
	anim_ret
; cb30d

BattleAnim_Swagger: ; cb30d
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_WIND
.loop
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_A9, 72, 88, $44
	anim_wait 32
	anim_loop 2, .loop
	anim_wait 32
	anim_sound 0, 1, SFX_KINESIS_2
	anim_obj ANIM_OBJ_83, 104, 40, $0
	anim_wait 40
	anim_ret
; cb328

BattleAnim_MilkDrink: ; cb328
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_BUBBLE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_obj ANIM_OBJ_82, 74, 104, $0
	anim_wait 16
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_sound 0, 0, SFX_MILK_DRINK
.loop
	anim_obj ANIM_OBJ_2C, 44, 88, $20
	anim_wait 8
	anim_loop 8, .loop
	anim_wait 128
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb34d

BattleAnim_Spark: ; cb34d
	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
	anim_sound 0, 0, SFX_ZAP_CANNON
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
	anim_obj ANIM_OBJ_30, 48, 92, $0
	anim_wait 24
	anim_setobj $1, $3
	anim_wait 1
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_sound 0, 0, SFX_SPARK
	anim_wait 16
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 4
	anim_incobj  2
	anim_wait 1
	anim_sound 0, 1, SFX_THUNDERSHOCK
	anim_obj ANIM_OBJ_LIGHTNING_BOLT, 136, 56, $2
	anim_obj ANIM_OBJ_33, 136, 56, $0
	anim_wait 32
	anim_ret
; cb386

BattleAnim_FuryCutter: ; cb386
	anim_1gfx ANIM_GFX_CUT
.loop
	anim_sound 0, 1, SFX_CUT
	anim_if_param_and %00000001, .obj1
	anim_obj ANIM_OBJ_3A, 152, 40, $0
	anim_jump .okay

.obj1
	anim_obj ANIM_OBJ_3B, 112, 40, $0
.okay
	anim_wait 16
	anim_jumpuntil .loop
	anim_ret
; cb3a1

BattleAnim_SteelWing: ; cb3a1
	anim_1gfx ANIM_GFX_REFLECT
	anim_obp0 $0
	anim_sound 0, 0, SFX_RAGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_call BattleAnim_SteelWing_branch_cbc43
	anim_call BattleAnim_ShowMon_0
	anim_1gfx ANIM_GFX_HIT
	anim_resetobp0
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 148, 56, $0
	anim_obj ANIM_OBJ_01, 116, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 144, 56, $0
	anim_obj ANIM_OBJ_01, 120, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_WING_ATTACK
	anim_obj ANIM_OBJ_01, 140, 56, $0
	anim_obj ANIM_OBJ_01, 124, 56, $0
	anim_wait 16
	anim_ret
; cb3df

BattleAnim_MeanLook: ; cb3df
	anim_1gfx ANIM_GFX_PSYCHIC
	anim_obp0 $e0
	anim_sound 0, 1, SFX_MEAN_LOOK
	anim_obj ANIM_OBJ_AC, 148, 32, $0
	anim_wait 5
	anim_obj ANIM_OBJ_AC, 116, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_AC, 148, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_AC, 116, 32, $0
	anim_wait 5
	anim_obj ANIM_OBJ_AC, 132, 48, $0
	anim_wait 128
	anim_ret
; cb405

BattleAnim_Attract: ; cb405
	anim_1gfx ANIM_GFX_OBJECTS
.loop
	anim_sound 0, 0, SFX_ATTRACT
	anim_obj ANIM_OBJ_66, 44, 80, $2
	anim_wait 8
	anim_loop 5, .loop
	anim_wait 128
	anim_wait 64
	anim_ret
; cb417

BattleAnim_SleepTalk: ; cb417
	anim_1gfx ANIM_GFX_STATUS
.loop
	anim_sound 0, 0, SFX_STRENGTH
	anim_obj ANIM_OBJ_54, 64, 80, $0
	anim_wait 40
	anim_loop 2, .loop
	anim_wait 32
	anim_ret
; cb428

BattleAnim_HealBell: ; cb428
	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_NOISE
	anim_obj ANIM_OBJ_84, 72, 56, $0
	anim_wait 32
.loop
	anim_sound 0, 0, SFX_HEAL_BELL
	anim_obj ANIM_OBJ_85, 72, 52, $0
	anim_wait 8
	anim_sound 0, 0, SFX_HEAL_BELL
	anim_obj ANIM_OBJ_85, 72, 52, $1
	anim_wait 8
	anim_sound 0, 0, SFX_HEAL_BELL
	anim_obj ANIM_OBJ_85, 72, 52, $2
	anim_wait 8
	anim_sound 0, 0, SFX_HEAL_BELL
	anim_obj ANIM_OBJ_85, 72, 52, $0
	anim_wait 8
	anim_sound 0, 0, SFX_HEAL_BELL
	anim_obj ANIM_OBJ_85, 72, 52, $2
	anim_wait 8
	anim_loop 4, .loop
	anim_wait 64
	anim_ret
; cb464

BattleAnim_Return: ; cb464
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_BOUNCE_DOWN, $0, $1, $0
	anim_sound 0, 0, SFX_RETURN
	anim_wait 64
	anim_incbgeffect ANIM_BG_BOUNCE_DOWN
	anim_wait 32
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_03, 136, 40, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb488

BattleAnim_Present: ; cb488
	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_BUBBLE
	anim_sound 0, 1, SFX_PRESENT
	anim_obj ANIM_OBJ_8D, 64, 88, $6c
	anim_wait 56
	anim_obj ANIM_OBJ_53, 104, 48, $0
	anim_wait 48
	anim_incobj  2
	anim_if_param_equal $3, .heal
	anim_incobj  1
	anim_wait 1
	anim_1gfx ANIM_GFX_EXPLOSION
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $12
.loop
	anim_call BattleAnim_Present_branch_cbb8f
	anim_wait 16
	anim_jumpuntil .loop
	anim_ret

.heal
	anim_sound 0, 1, SFX_METRONOME
.loop2
	anim_obj ANIM_OBJ_2C, 132, 48, $24
	anim_wait 8
	anim_loop 8, .loop2
	anim_wait 128
	anim_ret
; cb4c1

BattleAnim_Frustration: ; cb4c1
	anim_1gfx ANIM_GFX_MISC
	anim_sound 0, 0, SFX_KINESIS_2
	anim_obj ANIM_OBJ_83, 72, 80, $0
	anim_wait 40
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_26, $0, $1, $0
	anim_wait 8
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 120, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 152, 48, $0
	anim_wait 8
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 136, 48, $0
	anim_wait 8
	anim_incbgeffect ANIM_BG_26
	anim_wait 1
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb4f9

BattleAnim_Safeguard: ; cb4f9
	anim_1gfx ANIM_GFX_MISC
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_obj ANIM_OBJ_89, 80, 80, $0
	anim_obj ANIM_OBJ_89, 80, 80, $d
	anim_obj ANIM_OBJ_89, 80, 80, $1a
	anim_obj ANIM_OBJ_89, 80, 80, $27
	anim_obj ANIM_OBJ_89, 80, 80, $34
	anim_sound 0, 0, SFX_PROTECT
	anim_wait 96
	anim_ret
; cb51e

BattleAnim_PainSplit: ; cb51e
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_OBJECTS
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_TACKLE
	anim_obj ANIM_OBJ_04, 112, 48, $0
	anim_obj ANIM_OBJ_04, 76, 96, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_wait 1
	anim_ret
; cb53d

BattleAnim_SacredFire: ; cb53d
	anim_1gfx ANIM_GFX_FIRE
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
.loop
	anim_sound 0, 0, SFX_EMBER
	anim_obj ANIM_OBJ_80, 48, 104, $0
	anim_wait 8
	anim_loop 8, .loop
	anim_wait 96
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_EMBER
	anim_obj ANIM_OBJ_0F, 136, 48, $1
	anim_obj ANIM_OBJ_0F, 136, 48, $4
	anim_obj ANIM_OBJ_0F, 136, 48, $5
	anim_wait 8
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 4
	anim_incobj  9
	anim_wait 8
	anim_ret
; cb57d

BattleAnim_Magnitude: ; cb57d
	anim_1gfx ANIM_GFX_ROCKS
.loop
	anim_bgeffect ANIM_BG_1F, $e, $4, $0
	anim_sound 0, 1, SFX_STRENGTH
	anim_obj ANIM_OBJ_1E, 128, 64, $40
	anim_wait 2
	anim_obj ANIM_OBJ_1E, 120, 68, $30
	anim_wait 2
	anim_obj ANIM_OBJ_1E, 152, 68, $30
	anim_wait 2
	anim_obj ANIM_OBJ_1E, 144, 64, $40
	anim_wait 2
	anim_obj ANIM_OBJ_1E, 136, 68, $30
	anim_wait 2
	anim_jumpuntil .loop
	anim_wait 96
	anim_ret
; cb5aa

BattleAnim_Dynamicpunch: ; cb5aa
	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_EXPLOSION
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_0A, 136, 56, $43
	anim_wait 16
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $12
	anim_call BattleAnim_Dynamicpunch_branch_cbb8f
	anim_wait 16
	anim_ret
; cb5c0

BattleAnim_Megahorn: ; cb5c0
	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
	anim_bgeffect ANIM_BG_1F, $40, $2, $0
	anim_wait 48
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
	anim_obj ANIM_OBJ_HORN, 72, 80, $1
	anim_sound 0, 1, SFX_HORN_ATTACK
	anim_wait 16
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 16
	anim_ret
; cb5de

BattleAnim_Dragonbreath: ; cb5de
	anim_1gfx ANIM_GFX_FIRE
	anim_sound 6, 2, SFX_EMBER
.loop
	anim_obj ANIM_OBJ_90, 64, 92, $4
	anim_wait 4
	anim_loop 10, .loop
	anim_wait 64
	anim_ret
; cb5ef

BattleAnim_BatonPass: ; cb5ef
	anim_1gfx ANIM_GFX_MISC
	anim_obj ANIM_OBJ_86, 44, 104, $20
	anim_sound 0, 0, SFX_BATON_PASS
	anim_call BattleAnim_BatonPass_branch_c9486
	anim_wait 64
	anim_ret
; cb5fe

BattleAnim_Encore: ; cb5fe
	anim_1gfx ANIM_GFX_OBJECTS
	anim_obj ANIM_OBJ_99, 64, 80, $90
	anim_obj ANIM_OBJ_99, 64, 80, $10
	anim_sound 0, 0, SFX_ENCORE
	anim_wait 16
	anim_obj ANIM_OBJ_9A, 64, 72, $2c
	anim_wait 32
	anim_obj ANIM_OBJ_9A, 64, 72, $34
	anim_wait 16
	anim_ret
; cb61b

BattleAnim_Pursuit: ; cb61b
	anim_1gfx ANIM_GFX_HIT
	anim_if_param_equal $1, BattleAnim_Pursuit_branch_cb62b
	anim_sound 0, 1, SFX_COMET_PUNCH
	anim_obj ANIM_OBJ_01, 136, 56, $0
	anim_wait 16
	anim_ret
; cb62b

BattleAnim_Pursuit_branch_cb62b: ; cb62b
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $0, $0
	anim_wait 4
	anim_call BattleAnim_FollowEnemyFeet_1
	anim_obj ANIM_OBJ_AD, 132, 64, $0
	anim_wait 64
	anim_obj ANIM_OBJ_AD, 132, 64, $1
	anim_sound 0, 1, SFX_BALL_POOF
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $0, $0
	anim_wait 64
	anim_incobj  3
	anim_wait 16
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_00, 120, 56, $0
	anim_bgeffect ANIM_BG_2D, $0, $0, $0
	anim_wait 16
	anim_call BattleAnim_ShowMon_1
	anim_wait 1
	anim_ret
; cb65e

BattleAnim_RapidSpin: ; cb65e
	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
	anim_obp0 $e4
.loop
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_A8, 44, 112, $0
	anim_wait 2
	anim_loop 5, .loop
	anim_wait 24
	anim_call BattleAnim_FollowPlayerHead_0
	anim_bgeffect ANIM_BG_25, $0, $1, $0
	anim_wait 4
	anim_resetobp0
	anim_sound 0, 1, SFX_MEGA_KICK
	anim_obj ANIM_OBJ_04, 136, 40, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 4
	anim_incobj  6
	anim_wait 1
	anim_ret
; cb68e

BattleAnim_SweetScent: ; cb68e
	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_MISC
	anim_sound 0, 0, SFX_SWEET_SCENT
	anim_obj ANIM_OBJ_FLOWER, 64, 96, $2
	anim_wait 2
	anim_obj ANIM_OBJ_FLOWER, 64, 80, $2
	anim_wait 96
	anim_obp0 $54
	anim_sound 0, 1, SFX_SWEET_SCENT_2
	anim_obj ANIM_OBJ_COTTON, 136, 40, $15
	anim_obj ANIM_OBJ_COTTON, 136, 40, $2a
	anim_obj ANIM_OBJ_COTTON, 136, 40, $3f
	anim_wait 128
	anim_ret
; cb6b6

BattleAnim_IronTail: ; cb6b6
	anim_1gfx ANIM_GFX_REFLECT
	anim_obp0 $0
	anim_sound 0, 0, SFX_RAGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_call BattleAnim_IronTail_branch_cbc43
	anim_wait 4
	anim_1gfx ANIM_GFX_HIT
	anim_resetobp0
	anim_bgeffect ANIM_BG_26, $0, $1, $0
	anim_wait 16
	anim_sound 0, 1, SFX_MEGA_KICK
	anim_obj ANIM_OBJ_00, 136, 48, $0
	anim_wait 16
	anim_incbgeffect ANIM_BG_26
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cb6dc

BattleAnim_MetalClaw: ; cb6dc
	anim_1gfx ANIM_GFX_REFLECT
	anim_obp0 $0
	anim_sound 0, 0, SFX_RAGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_call BattleAnim_MetalClaw_branch_cbc43
	anim_call BattleAnim_ShowMon_0
	anim_1gfx ANIM_GFX_CUT
	anim_resetobp0
	anim_sound 0, 1, SFX_SCRATCH
	anim_obj ANIM_OBJ_37, 144, 48, $0
	anim_obj ANIM_OBJ_37, 140, 44, $0
	anim_obj ANIM_OBJ_37, 136, 40, $0
	anim_wait 32
	anim_ret
; cb703

BattleAnim_VitalThrow: ; cb703
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_2F, $0, $1, $0
	anim_wait 16
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_04, 64, 96, $0
	anim_wait 8
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_04, 56, 88, $0
	anim_wait 8
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_04, 68, 104, $0
	anim_wait 8
	anim_incbgeffect ANIM_BG_2F
	anim_wait 16
	anim_call BattleAnim_ShowMon_0
	anim_sound 0, 1, SFX_MEGA_PUNCH
	anim_obj ANIM_OBJ_03, 132, 56, $0
	anim_wait 16
	anim_ret
; cb739

BattleAnim_MorningSun: ; cb739
	anim_1gfx ANIM_GFX_SHINE
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 0, SFX_MORNING_SUN
.loop
	anim_obj ANIM_OBJ_9C, 16, 48, $88
	anim_wait 6
	anim_loop 5, .loop
	anim_wait 32
	anim_if_param_equal 0, .zero
	anim_call BattleAnim_MorningSun_branch_cbc6a
	anim_ret
; cb756

.zero
	anim_call BattleAnim_MorningSun_branch_cbc80
	anim_ret
; cb75a

BattleAnim_Synthesis: ; cb75a
	anim_1gfx ANIM_GFX_SHINE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_18, $0, $1, $40
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_sound 0, 0, SFX_OUTRAGE
	anim_wait 72
	anim_incbgeffect ANIM_BG_18
	anim_call BattleAnim_ShowMon_0
	anim_if_param_equal $1, .one
	anim_call BattleAnim_Synthesis_branch_cbc6a
	anim_ret
; cb77a

.one
	anim_call BattleAnim_Synthesis_branch_cbc80
	anim_ret
; cb77e

BattleAnim_Crunch: ; cb77e
	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
	anim_bgp $1b
	anim_obp0 $c0
	anim_bgeffect ANIM_BG_1F, $20, $2, $0
	anim_obj ANIM_OBJ_36, 136, 56, $a8
	anim_obj ANIM_OBJ_36, 136, 56, $28
	anim_wait 8
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_00, 144, 48, $18
	anim_wait 16
	anim_sound 0, 1, SFX_BITE
	anim_obj ANIM_OBJ_00, 128, 64, $18
	anim_wait 8
	anim_ret
; cb7a8

BattleAnim_Moonlight: ; cb7a8
	anim_1gfx ANIM_GFX_SHINE
	anim_bgp $1b
	anim_bgeffect ANIM_BG_07, $0, $0, $0
	anim_obj ANIM_OBJ_9E, 0, 40, $0
	anim_obj ANIM_OBJ_9E, 16, 56, $0
	anim_obj ANIM_OBJ_9E, 32, 72, $0
	anim_obj ANIM_OBJ_9E, 48, 88, $0
	anim_obj ANIM_OBJ_9E, 64, 104, $0
	anim_wait 1
	anim_sound 0, 0, SFX_MOONLIGHT
	anim_wait 63
	anim_if_param_equal $3, .three
	anim_call BattleAnim_Moonlight_branch_cbc6a
	anim_ret

.three
	anim_call BattleAnim_Moonlight_branch_cbc80
	anim_ret
; cb7db

BattleAnim_HiddenPower: ; cb7db
	anim_1gfx ANIM_GFX_CHARGE
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_bgeffect ANIM_BG_07, $0, $2, $0
	anim_obj ANIM_OBJ_9F, 44, 88, $0
	anim_obj ANIM_OBJ_9F, 44, 88, $8
	anim_obj ANIM_OBJ_9F, 44, 88, $10
	anim_obj ANIM_OBJ_9F, 44, 88, $18
	anim_obj ANIM_OBJ_9F, 44, 88, $20
	anim_obj ANIM_OBJ_9F, 44, 88, $28
	anim_obj ANIM_OBJ_9F, 44, 88, $30
	anim_obj ANIM_OBJ_9F, 44, 88, $38
.loop
	anim_sound 0, 0, SFX_SWORDS_DANCE
	anim_wait 8
	anim_loop 12, .loop
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_wait 1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_incobj  7
	anim_incobj  8
	anim_incobj  9
	anim_wait 16
	anim_1gfx ANIM_GFX_HIT
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 32
	anim_ret
; cb83a

BattleAnim_CrossChop: ; cb83a
	anim_1gfx ANIM_GFX_CUT
	anim_sound 0, 1, SFX_CUT
	anim_obj ANIM_OBJ_A0, 152, 40, $0
	anim_obj ANIM_OBJ_A1, 120, 72, $0
	anim_wait 8
	anim_bgeffect ANIM_BG_1F, $58, $2, $0
	anim_wait 92
	anim_sound 0, 1, SFX_VICEGRIP
	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $10
	anim_wait 16
	anim_ret
; cb85a

BattleAnim_Twister: ; cb85a
	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
.loop1
	anim_sound 0, 0, SFX_RAZOR_WIND
	anim_obj ANIM_OBJ_GUST, 64, 112, $0
	anim_wait 6
	anim_loop 9, .loop1
.loop2
	anim_sound 0, 0, SFX_RAZOR_WIND
	anim_wait 8
	anim_loop 8, .loop2
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_incobj  7
	anim_incobj  8
	anim_incobj  9
	anim_wait 64
	anim_obj ANIM_OBJ_01, 144, 64, $18
.loop3
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_wait 8
	anim_loop 4, .loop3
	anim_obj ANIM_OBJ_01, 128, 32, $18
.loop4
	anim_sound 0, 1, SFX_RAZOR_WIND
	anim_wait 8
	anim_loop 4, .loop4
	anim_incobj  1
	anim_incobj  2
	anim_incobj  3
	anim_incobj  4
	anim_incobj  5
	anim_incobj  6
	anim_incobj  7
	anim_incobj  8
	anim_incobj  9
	anim_wait 32
	anim_ret
; cb8b3

BattleAnim_RainDance: ; cb8b3
	anim_1gfx ANIM_GFX_WATER
	anim_bgp $f8
	anim_obp0 $7c
	anim_sound 0, 1, SFX_RAIN_DANCE
	anim_obj ANIM_OBJ_AF, 88, 0, $0
	anim_wait 8
	anim_obj ANIM_OBJ_AF, 88, 0, $1
	anim_wait 8
	anim_obj ANIM_OBJ_AF, 88, 0, $2
	anim_wait 128
	anim_ret
; cb8cf

BattleAnim_SunnyDay: ; cb8cf
	anim_1gfx ANIM_GFX_WATER
	anim_bgp $90
	anim_sound 0, 1, SFX_MORNING_SUN
	anim_obj ANIM_OBJ_AF, 88, 0, $2
	anim_wait 8
	anim_obj ANIM_OBJ_AF, 88, 0, $2
	anim_wait 8
	anim_obj ANIM_OBJ_AF, 88, 0, $2
	anim_wait 128
	anim_ret
; cb8e9

BattleAnim_MirrorCoat: ; cb8e9
	anim_2gfx ANIM_GFX_REFLECT, ANIM_GFX_SPEED
	anim_bgeffect ANIM_BG_06, $0, $2, $0
.loop
	anim_sound 0, 0, SFX_SHINE
	anim_obj ANIM_OBJ_50, 72, 80, $0
	anim_obj ANIM_OBJ_AE, 64, 72, $4
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 88, $4
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 80, $4
	anim_wait 8
	anim_obj ANIM_OBJ_AE, 64, 96, $4
	anim_wait 8
	anim_loop 3, .loop
	anim_wait 32
	anim_ret
; cb917

BattleAnim_PsychUp: ; cb917
	anim_1gfx ANIM_GFX_STATUS
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_1A, $0, $1, $20
	anim_sound 0, 0, SFX_PSYBEAM
	anim_obj ANIM_OBJ_B1, 44, 88, $0
	anim_obj ANIM_OBJ_B1, 44, 88, $10
	anim_obj ANIM_OBJ_B1, 44, 88, $20
	anim_obj ANIM_OBJ_B1, 44, 88, $30
	anim_wait 64
	anim_incbgeffect ANIM_BG_1A
	anim_call BattleAnim_ShowMon_0
	anim_wait 16
	anim_ret
; cb940

BattleAnim_Extremespeed: ; cb940
	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_CUT
	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
	anim_sound 0, 0, SFX_MENU
	anim_obj ANIM_OBJ_77, 24, 88, $2
	anim_obj ANIM_OBJ_77, 32, 88, $1
	anim_obj ANIM_OBJ_77, 40, 88, $0
	anim_obj ANIM_OBJ_77, 48, 88, $80
	anim_obj ANIM_OBJ_77, 56, 88, $81
	anim_obj ANIM_OBJ_77, 64, 88, $82
	anim_wait 12
	anim_sound 0, 1, SFX_CUT
	anim_obj ANIM_OBJ_3A, 152, 40, $0
	anim_wait 32
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 16
	anim_ret
; cb97a

BattleAnim_Ancientpower: ; cb97a
	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
	anim_sound 0, 0, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 64, 108, $20
	anim_wait 8
	anim_sound 0, 0, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 75, 102, $20
	anim_wait 8
	anim_sound 0, 0, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 85, 97, $20
	anim_wait 8
	anim_sound 0, 0, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 96, 92, $20
	anim_wait 8
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 106, 87, $20
	anim_wait 8
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 116, 82, $20
	anim_wait 8
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B2, 126, 77, $20
	anim_wait 8
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_00, 136, 56, $0
	anim_wait 6
	anim_ret
; cb9c6

BattleAnim_ShadowBall: ; cb9c6
	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_SMOKE
	anim_bgp $1b
	anim_sound 6, 2, SFX_SLUDGE_BOMB
	anim_obj ANIM_OBJ_B4, 64, 92, $2
	anim_wait 32
	anim_obj ANIM_OBJ_BALL_POOF, 132, 56, $10
	anim_wait 24
	anim_ret
; cb9db

BattleAnim_FutureSight: ; cb9db
	anim_1gfx ANIM_GFX_WIND
	anim_bgeffect ANIM_BG_06, $0, $2, $0
	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
	anim_obj ANIM_OBJ_7D, 8, 24, $10
	anim_obj ANIM_OBJ_7D, 8, 48, $2
	anim_obj ANIM_OBJ_7D, 8, 88, $8
	anim_wait 4
	anim_obj ANIM_OBJ_7D, 8, 32, $6
	anim_obj ANIM_OBJ_7D, 8, 56, $c
	anim_obj ANIM_OBJ_7D, 8, 80, $4
	anim_obj ANIM_OBJ_7D, 8, 104, $e
.loop
	anim_sound 0, 0, SFX_THROW_BALL
	anim_wait 16
	anim_loop 4, .loop
	anim_incbgeffect ANIM_BG_PSYCHIC
	anim_ret
; cba1b

BattleAnim_RockSmash: ; cba1b
	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_01, 128, 56, $0
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B5, 128, 64, $28
	anim_obj ANIM_OBJ_B5, 128, 64, $5c
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B5, 128, 64, $10
	anim_obj ANIM_OBJ_B5, 128, 64, $e8
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B5, 128, 64, $9c
	anim_obj ANIM_OBJ_B5, 128, 64, $d0
	anim_wait 6
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B5, 128, 64, $1c
	anim_obj ANIM_OBJ_B5, 128, 64, $50
	anim_sound 0, 1, SFX_SPARK
	anim_obj ANIM_OBJ_B5, 128, 64, $dc
	anim_obj ANIM_OBJ_B5, 128, 64, $90
	anim_wait 32
	anim_ret
; cba6a

BattleAnim_Whirlpool: ; cba6a
	anim_1gfx ANIM_GFX_WIND
	anim_bgeffect ANIM_BG_WHIRLPOOL, $0, $0, $0
	anim_sound 0, 1, SFX_SURF
	anim_wait 16
.loop
	anim_obj ANIM_OBJ_GUST, 132, 72, $0
	anim_wait 6
	anim_loop 9, .loop
	anim_wait 64
	anim_incbgeffect ANIM_BG_WHIRLPOOL
	anim_wait 1
	anim_ret
; cba84

BattleAnim_BeatUp: ; cba84
	anim_if_param_equal $0, .current_mon
	anim_sound 0, 0, SFX_BALL_POOF
	anim_bgeffect ANIM_BG_RETURN_MON, $0, $1, $0
	anim_wait 16
	anim_beatup
	anim_sound 0, 0, SFX_BALL_POOF
	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
	anim_wait 16
.current_mon
	anim_1gfx ANIM_GFX_HIT
	anim_call BattleAnim_FollowEnemyFeet_0
	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
	anim_wait 4
	anim_sound 0, 1, SFX_BEAT_UP
	anim_obj ANIM_OBJ_00, 136, 48, $0
	anim_wait 8
	anim_call BattleAnim_ShowMon_0
	anim_ret
; cbab3

BattleAnim_DreamEater_branch_cbab3: ; cbab3
BattleAnim_GigaDrain_branch_cbab3: ; cbab3
BattleAnim_LeechLife_branch_cbab3: ; cbab3
	anim_obj ANIM_OBJ_71, 132, 44, $0
	anim_obj ANIM_OBJ_71, 132, 44, $8
	anim_obj ANIM_OBJ_71, 132, 44, $10
	anim_obj ANIM_OBJ_71, 132, 44, $18
	anim_obj ANIM_OBJ_71, 132, 44, $20
	anim_obj ANIM_OBJ_71, 132, 44, $28
	anim_obj ANIM_OBJ_71, 132, 44, $30
	anim_obj ANIM_OBJ_71, 132, 44, $38
	anim_ret
; cbadc

BattleAnim_Glare_branch_cbadc: ; cbadc
BattleAnim_Leer_branch_cbadc: ; cbadc
BattleAnim_ScaryFace_branch_cbadc: ; cbadc
	anim_sound 6, 2, SFX_LEER
	anim_obj ANIM_OBJ_4E, 72, 84, $0
	anim_obj ANIM_OBJ_4E, 64, 80, $0
	anim_obj ANIM_OBJ_4E, 88, 76, $0
	anim_obj ANIM_OBJ_4E, 80, 72, $0
	anim_obj ANIM_OBJ_4E, 104, 68, $0
	anim_obj ANIM_OBJ_4E, 96, 64, $0
	anim_obj ANIM_OBJ_4E, 120, 60, $0
	anim_obj ANIM_OBJ_4E, 112, 56, $0
	anim_obj ANIM_OBJ_4F, 130, 54, $0
	anim_obj ANIM_OBJ_4F, 122, 50, $0
	anim_ret
; cbb12

BattleAnim_Fly_branch_cbb12: ; cbb12
BattleAnim_Teleport_branch_cbb12: ; cbb12
	anim_sound 0, 0, SFX_WARP_TO
	anim_obj ANIM_OBJ_44, 44, 108, $0
	anim_obj ANIM_OBJ_44, 44, 100, $0
	anim_obj ANIM_OBJ_44, 44, 92, $0
	anim_obj ANIM_OBJ_44, 44, 84, $0
	anim_obj ANIM_OBJ_44, 44, 76, $0
	anim_obj ANIM_OBJ_44, 44, 68, $0
	anim_obj ANIM_OBJ_44, 44, 60, $0
	anim_ret
; cbb39

BattleAnim_AuroraBeam_branch_cbb39: ; cbb39
BattleAnim_HyperBeam_branch_cbb39: ; cbb39
BattleAnim_Solarbeam_branch_cbb39: ; cbb39
	anim_sound 0, 0, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 64, 92, $0
	anim_wait 4
	anim_sound 0, 0, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 80, 84, $0
	anim_wait 4
	anim_sound 0, 1, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 96, 76, $0
	anim_wait 4
	anim_sound 0, 1, SFX_HYPER_BEAM
	anim_obj ANIM_OBJ_27, 112, 68, $0
	anim_obj ANIM_OBJ_28, 126, 62, $0
	anim_ret
; cbb62

BattleAnim_Explosion_branch_cbb62: ; cbb62
BattleAnim_Selfdestruct_branch_cbb62: ; cbb62
	anim_sound 0, 0, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 24, 64, $0
	anim_wait 5
	anim_sound 0, 0, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 56, 104, $0
	anim_wait 5
	anim_sound 0, 0, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 24, 104, $0
	anim_wait 5
	anim_sound 0, 0, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 56, 64, $0
	anim_wait 5
	anim_sound 0, 0, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 40, 84, $0
	anim_ret
; cbb8f

BattleAnim_Dynamicpunch_branch_cbb8f: ; cbb8f
BattleAnim_Explosion_branch_cbb8f: ; cbb8f
BattleAnim_Present_branch_cbb8f: ; cbb8f
BattleAnim_Selfdestruct_branch_cbb8f: ; cbb8f
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 148, 32, $0
	anim_wait 5
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 116, 72, $0
	anim_wait 5
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 148, 72, $0
	anim_wait 5
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 116, 32, $0
	anim_wait 5
	anim_sound 0, 1, SFX_EGG_BOMB
	anim_obj ANIM_OBJ_17, 132, 52, $0
	anim_ret
; cbbbc

BattleAnim_Growl_branch_cbbbc: ; cbbbc
BattleAnim_Roar_branch_cbbbc: ; cbbbc
BattleAnim_Snore_branch_cbbbc: ; cbbbc
	anim_obj ANIM_OBJ_4B, 64, 76, $0
	anim_obj ANIM_OBJ_4B, 64, 88, $1
	anim_obj ANIM_OBJ_4B, 64, 100, $2
	anim_ret
; cbbcc

BattleAnim_FirePunch_branch_cbbcc: ; cbbcc
BattleAnim_TriAttack_branch_cbbcc: ; cbbcc
	anim_sound 0, 1, SFX_EMBER
.loop
	anim_obj ANIM_OBJ_BURNED, 136, 56, $10
	anim_obj ANIM_OBJ_BURNED, 136, 56, $90
	anim_wait 4
	anim_loop 4, .loop
	anim_ret
; cbbdf

BattleAnim_IcePunch_branch_cbbdf: ; cbbdf
BattleAnim_PowderSnow_branch_cbbdf: ; cbbdf
BattleAnim_TriAttack_branch_cbbdf: ; cbbdf
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 128, 42, $0
	anim_wait 6
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 144, 70, $0
	anim_wait 6
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 120, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 152, 56, $0
	anim_wait 6
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 144, 42, $0
	anim_wait 6
	anim_sound 0, 1, SFX_SHINE
	anim_obj ANIM_OBJ_12, 128, 70, $0
	anim_ret
; cbc15

BattleAnim_SludgeBomb_branch_cbc15: ; cbc15
BattleAnim_Sludge_branch_cbc15: ; cbc15
BattleAnim_Toxic_branch_cbc15: ; cbc15
.loop
	anim_sound 0, 1, SFX_UNKNOWN_7F
	anim_obj ANIM_OBJ_1A, 132, 72, $0
	anim_wait 8
	anim_sound 0, 1, SFX_UNKNOWN_7F
	anim_obj ANIM_OBJ_1A, 116, 72, $0
	anim_wait 8
	anim_sound 0, 1, SFX_UNKNOWN_7F
	anim_obj ANIM_OBJ_1A, 148, 72, $0
	anim_wait 8
	anim_loop 5, .loop
	anim_ret
; cbc35

BattleAnim_Acid_branch_cbc35: ; cbc35
BattleAnim_Toxic_branch_cbc35: ; cbc35
.loop
	anim_sound 6, 2, SFX_BUBBLEBEAM
	anim_obj ANIM_OBJ_19, 64, 92, $10
	anim_wait 5
	anim_loop 8, .loop
	anim_ret
; cbc43

BattleAnim_Harden_branch_cbc43: ; cbc43
BattleAnim_IronTail_branch_cbc43: ; cbc43
BattleAnim_MetalClaw_branch_cbc43: ; cbc43
BattleAnim_SteelWing_branch_cbc43: ; cbc43
	anim_sound 0, 0, SFX_SHINE
	anim_bgeffect ANIM_BG_17, $0, $1, $40
	anim_wait 8
	anim_obj ANIM_OBJ_51, 48, 84, $0
	anim_wait 32
	anim_obj ANIM_OBJ_51, 48, 84, $0
	anim_wait 64
	anim_incbgeffect ANIM_BG_17
	anim_ret
; cbc5b

BattleAnim_MudSlap_branch_cbc5b: ; cbc5b
BattleAnim_SandAttack_branch_cbc5b: ; cbc5b
.loop
	anim_sound 6, 2, SFX_MENU
	anim_obj ANIM_OBJ_58, 64, 92, $4
	anim_wait 4
	anim_loop 8, .loop
	anim_wait 32
	anim_ret
; cbc6a

BattleAnim_Moonlight_branch_cbc6a: ; cbc6a
BattleAnim_MorningSun_branch_cbc6a: ; cbc6a
BattleAnim_Synthesis_branch_cbc6a: ; cbc6a
	anim_sound 0, 0, SFX_METRONOME
	anim_obj ANIM_OBJ_9D, 44, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 24, 96, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 56, 104, $0
	anim_wait 21
	anim_ret
; cbc80

BattleAnim_Moonlight_branch_cbc80: ; cbc80
BattleAnim_MorningSun_branch_cbc80: ; cbc80
BattleAnim_Synthesis_branch_cbc80: ; cbc80
	anim_sound 0, 0, SFX_METRONOME
.loop
	anim_obj ANIM_OBJ_9D, 24, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 56, 104, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 24, 104, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 56, 64, $0
	anim_wait 5
	anim_obj ANIM_OBJ_9D, 40, 84, $0
	anim_wait 5
	anim_loop 2, .loop
	anim_wait 16
	anim_ret
; cbca7

BattleAnim_FollowEnemyFeet_0: ; cbca7
	anim_enemyfeetobj
	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $0, $0
	anim_wait 6
	anim_ret
; cbcaf

BattleAnim_FollowPlayerHead_0: ; cbcaf
	anim_playerheadobj
	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $0, $0
	anim_wait 6
	anim_ret
; cbcb7

BattleAnim_ShowMon_0: ; cbcb7
	anim_wait 1
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
	anim_wait 5
	anim_incobj  1
	anim_wait 1
	anim_ret
; cbcc2

BattleAnim_FollowEnemyFeet_1: ; cbcc2
	anim_enemyfeetobj
	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $1, $0
	anim_wait 6
	anim_ret
; cbcca

BattleAnim_FollowPlayerHead_1: ; cbcca
	anim_playerheadobj
	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $1, $0
	anim_wait 4
	anim_ret
; cbcd2

BattleAnim_ShowMon_1: ; cbcd2
	anim_wait 1
	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
	anim_wait 4
	anim_incobj  1
	anim_wait 1
	anim_ret
; cbcdd