shithub: pokecrystal

Download patch

ref: d7a5ea998d5c92607b32e633d8875898a6bc450b
parent: 8152ab612c0405d9e0074b7d51c9785e0dd3bc95
author: PikalaxALT <[email protected]>
date: Wed Dec 23 15:46:23 EST 2015

More battle anims and bg effects

--- a/battle/anim_commands.asm
+++ b/battle/anim_commands.asm
@@ -96,13 +96,13 @@
 	call RunBattleAnimScript
 
 .done
-	call Functioncc8f6
+	call BattleAnim_RevertPals
 	ret
 ; cc163
 
 RunBattleAnimScript: ; cc163
 
-	call Functioncc8d3
+	call ClearBattleAnims
 
 .playframe
 	call RunBattleAnimCommand
@@ -114,32 +114,32 @@
 ; Speed up Rollout's animation.
 	ld a, [FXAnimIDHi]
 	or a
-	jr nz, .asm_cc193
+	jr nz, .not_rollout
 
 	ld a, [FXAnimIDLo]
 	cp ROLLOUT
-	jr nz, .asm_cc193
+	jr nz, .not_rollout
 
 	ld a, $2e
 	ld b, 5
 	ld de, 4
 	ld hl, ActiveBGEffects
-.asm_cc18c
+.find
 	cp [hl]
-	jr z, .asm_cc196
+	jr z, .done
 	add hl, de
 	dec b
-	jr nz, .asm_cc18c
+	jr nz, .find
 
-.asm_cc193
+.not_rollout
 	call BattleAnimDelayFrame
 
-.asm_cc196
+.done
 	ld a, [BattleAnimFlags]
 	bit 0, a
 	jr z, .playframe
 
-	call Functioncc23d
+	call BattleAnim_ClearCGB_OAMFlags
 	ret
 ; cc1a1
 
@@ -193,13 +193,13 @@
 	ld b, a
 	ld a, [wBGP]
 	cp b
-	call nz, Functioncc91a
+	call nz, BattleAnim_SetBGPals
 
 	ld a, [rOBP0]
 	ld b, a
 	ld a, [wOBP0]
 	cp b
-	call nz, Functioncc94b
+	call nz, BattleAnim_SetOBPals
 	ret
 ; cc1fb
 
@@ -253,11 +253,11 @@
 ; cc23d
 
 
-Functioncc23d: ; cc23d
+BattleAnim_ClearCGB_OAMFlags: ; cc23d
 
 	ld a, [BattleAnimFlags]
 	bit 3, a
-	jr z, .skip
+	jr z, .delete
 
 	ld hl, Sprites + 3
 	ld c, (SpritesEnd - Sprites) / 4
@@ -272,7 +272,7 @@
 	jr nz, .loop
 	ret
 
-.skip
+.delete
 	ld hl, Sprites
 	ld c, SpritesEnd - Sprites
 	xor a
@@ -341,9 +341,8 @@
 	ld e, a
 	ld d, 0
 	ld hl, BattleAnimCommands
-rept 2
 	add hl, de
-endr
+	add hl, de
 
 	ld a, [hli]
 	ld h, [hl]
@@ -460,19 +459,19 @@
 	call GetBattleAnimByte
 	ld hl, BattleAnimFlags
 	bit 2, [hl]
-	jr nz, .asm_cc35b
+	jr nz, .continue_loop
 	and a
-	jr z, .asm_cc363
+	jr z, .perpetual
 	dec a
 	set 2, [hl]
 	ld [BattleAnimLoops], a
-.asm_cc35b
+.continue_loop
 	ld hl, BattleAnimLoops
 	ld a, [hl]
 	and a
-	jr z, .asm_cc372
+	jr z, .return_from_loop
 	dec [hl]
-.asm_cc363
+.perpetual
 	call GetBattleAnimByte
 	ld e, a
 	call GetBattleAnimByte
@@ -482,7 +481,8 @@
 	inc hl
 	ld [hl], d
 	ret
-.asm_cc372
+
+.return_from_loop
 	ld hl, BattleAnimFlags
 	res 2, [hl]
 	ld hl, BattleAnimAddress
@@ -489,9 +489,8 @@
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-rept 2
 	inc de
-endr
+	inc de
 	ld [hl], d
 	dec hl
 	ld [hl], e
@@ -498,10 +497,10 @@
 	ret
 
 BattleAnimCmd_JumpUntil: ; cc383 (33:4383)
-	ld hl, wKickCounter
+	ld hl, wBattleAnimParam
 	ld a, [hl]
 	and a
-	jr z, .asm_cc39a
+	jr z, .dont_jump
 
 	dec [hl]
 	call GetBattleAnimByte
@@ -514,14 +513,13 @@
 	ld [hl], d
 	ret
 
-.asm_cc39a
+.dont_jump
 	ld hl, BattleAnimAddress
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-rept 2
 	inc de
-endr
+	inc de
 	ld [hl], d
 	dec hl
 	ld [hl], e
@@ -547,9 +545,8 @@
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-rept 2
 	inc de
-endr
+	inc de
 	ld [hl], d
 	dec hl
 	ld [hl], e
@@ -568,7 +565,7 @@
 
 BattleAnimCmd_JumpIf: ; cc3d6 (33:43d6)
 	call GetBattleAnimByte
-	ld hl, wKickCounter
+	ld hl, wBattleAnimParam
 	cp [hl]
 	jr z, .jump
 
@@ -576,9 +573,8 @@
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-rept 2
 	inc de
-endr
+	inc de
 	ld [hl], d
 	dec hl
 	ld [hl], e
@@ -598,7 +594,7 @@
 BattleAnimCmd_JumpAnd: ; cc3fa (33:43fa)
 	call GetBattleAnimByte
 	ld e, a
-	ld a, [wKickCounter]
+	ld a, [wBattleAnimParam]
 	and e
 	jr nz, .jump
 
@@ -606,9 +602,8 @@
 	ld e, [hl]
 	inc hl
 	ld d, [hl]
-rept 2
 	inc de
-endr
+	inc de
 	ld [hl], d
 	dec hl
 	ld [hl], e
@@ -697,7 +692,7 @@
 	ld [BattleAnimTemps], a
 .loop
 	ld a, [BattleAnimTemps]
-	cp $4f
+	cp (VTiles1 - VTiles0) / $10 - $31
 	ret nc
 	call GetBattleAnimByte
 	ld [hli], a
@@ -713,7 +708,7 @@
 	ld de, VTiles0 tile $31
 	add hl, de
 	ld a, [BattleAnimByte]
-	call Functionce846
+	call LoadBattleAnimObj
 	ld a, [BattleAnimTemps]
 	add c
 	ld [BattleAnimTemps], a
@@ -733,7 +728,7 @@
 	ld d, [hl]
 	ld a, [BattleAnimByte]
 	cp d
-	jr z, .increment
+	jr z, .found
 	ld hl, BATTLEANIMSTRUCT_LENGTH
 	add hl, bc
 	ld c, l
@@ -742,7 +737,7 @@
 	jr nz, .loop
 	ret
 
-.increment
+.found
 	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
 	add hl, bc
 	inc [hl]
@@ -750,24 +745,25 @@
 
 BattleAnimCmd_IncBGEffect: ; cc4e3 (33:44e3)
 	call GetBattleAnimByte
-	ld e, $5
+	ld e, 5
 	ld bc, ActiveBGEffects
-.asm_cc4eb
+.loop
 	ld hl, $0
 	add hl, bc
 	ld d, [hl]
 	ld a, [BattleAnimByte]
 	cp d
-	jr z, .asm_cc500
-	ld hl, $4
+	jr z, .found
+	ld hl, 4
 	add hl, bc
 	ld c, l
 	ld b, h
 	dec e
-	jr nz, .asm_cc4eb
+	jr nz, .loop
 	ret
-.asm_cc500
-	ld hl, $1
+
+.found
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	inc [hl]
 	ret
@@ -774,25 +770,26 @@
 
 BattleAnimCmd_SetObj: ; cc506 (33:4506)
 	call GetBattleAnimByte
-	ld e, $a
+	ld e, 10
 	ld bc, ActiveAnimObjects
-.asm_cc50e
-	ld hl, $0
+.loop
+	ld hl, BATTLEANIMSTRUCT_INDEX
 	add hl, bc
 	ld d, [hl]
 	ld a, [BattleAnimByte]
 	cp d
-	jr z, .asm_cc523
-	ld hl, $18
+	jr z, .found
+	ld hl, BATTLEANIMSTRUCT_LENGTH
 	add hl, bc
 	ld c, l
 	ld b, h
 	dec e
-	jr nz, .asm_cc50e
+	jr nz, .loop
 	ret
-.asm_cc523
+
+.found
 	call GetBattleAnimByte
-	ld hl, $e
+	ld hl, BATTLEANIMSTRUCT_ANON_JT_INDEX
 	add hl, bc
 	ld [hl], a
 	ret
@@ -800,16 +797,15 @@
 BattleAnimCmd_EnemyFeetObj: ; cc52c (33:452c)
 
 	ld hl, wBattleAnimTileDict
-.asm_cc52f
+.loop
 	ld a, [hl]
 	and a
-	jr z, .asm_cc537
-rept 2
+	jr z, .okay
 	inc hl
-endr
-	jr .asm_cc52f
+	inc hl
+	jr .loop
 
-.asm_cc537
+.okay
 	ld a, $28
 	ld [hli], a
 	ld a, $42
@@ -824,48 +820,47 @@
 	ld a, $70
 	ld [BattleAnimTemps], a
 	ld a, $7
-	call Functioncc561
+	call .LoadFootprint
 	ld de, VTiles2 tile $31
 	ld a, $60
 	ld [BattleAnimTemps], a
 	ld a, $6
-	call Functioncc561
+	call .LoadFootprint
 	ret
 
-Functioncc561: ; cc561 (33:4561)
+.LoadFootprint: ; cc561 (33:4561)
 	push af
 	push hl
 	push de
-	ld bc, $3301
+	lb bc, BANK(BattleAnimCmd_EnemyFeetObj), 1
 	call Request2bpp
 	pop de
 	ld a, [BattleAnimTemps]
 	ld l, a
-	ld h, $0
+	ld h, 0
 	add hl, de
 	ld e, l
 	ld d, h
 	pop hl
-	ld bc, $10
+	ld bc, 1 tiles
 	add hl, bc
 	pop af
 	dec a
-	jr nz, Functioncc561
+	jr nz, .LoadFootprint
 	ret
 
 BattleAnimCmd_PlayerHeadObj: ; cc57e (33:457e)
 
 	ld hl, wBattleAnimTileDict
-.asm_cc581
+.loop
 	ld a, [hl]
 	and a
-	jr z, .asm_cc589
-rept 2
+	jr z, .okay
 	inc hl
-endr
-	jr .asm_cc581
+	inc hl
+	jr .loop
 
-.asm_cc589
+.okay
 	ld a, $28
 	ld [hli], a
 	ld a, $35
@@ -880,33 +875,33 @@
 	ld a, $70
 	ld [BattleAnimTemps], a
 	ld a, $7
-	call Functioncc5b3
+	call .LoadHead
 	ld de, VTiles2 tile $31
 	ld a, $60
 	ld [BattleAnimTemps], a
 	ld a, $6
-	call Functioncc5b3
+	call .LoadHead
 	ret
 
-Functioncc5b3: ; cc5b3 (33:45b3)
+.LoadHead: ; cc5b3 (33:45b3)
 	push af
 	push hl
 	push de
-	ld bc, $3302
+	lb bc, BANK(BattleAnimCmd_EnemyFeetObj), 2
 	call Request2bpp
 	pop de
 	ld a, [BattleAnimTemps]
 	ld l, a
-	ld h, $0
+	ld h, 0
 	add hl, de
 	ld e, l
 	ld d, h
 	pop hl
-	ld bc, $20
+	ld bc, 2 tiles
 	add hl, bc
 	pop af
 	dec a
-	jr nz, Functioncc5b3
+	jr nz, .LoadHead
 	ret
 
 BattleAnimCmd_CheckPokeball: ; cc5d0 (33:45d0)
@@ -998,18 +993,18 @@
 	and a
 	jr z, .player
 
-	ld hl, MonsterSpriteGFX
-	ld de, sScratch + $130
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $10
-	ld de, sScratch + $1a0
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $20
-	ld de, sScratch + $140
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $30
-	ld de, sScratch + $1b0
-	call CopyMonsterSpriteTile
+	ld hl, MonsterSpriteGFX + 0 tiles
+	ld de, sScratch + $13 tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 1 tiles
+	ld de, sScratch + $1a tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 2 tiles
+	ld de, sScratch + $14 tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 3 tiles
+	ld de, sScratch + $1b tiles
+	call .CopyTile
 
 	ld hl, VTiles2 tile $00
 	ld de, sScratch
@@ -1018,18 +1013,18 @@
 	jr .done
 
 .player
-	ld hl, MonsterSpriteGFX + $40
-	ld de, sScratch + $100
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $50
-	ld de, sScratch + $160
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $60
-	ld de, sScratch + $110
-	call CopyMonsterSpriteTile
-	ld hl, MonsterSpriteGFX + $70
-	ld de, sScratch + $170
-	call CopyMonsterSpriteTile
+	ld hl, MonsterSpriteGFX + 4 tiles
+	ld de, sScratch + $10 tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 5 tiles
+	ld de, sScratch + $16 tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 6 tiles
+	ld de, sScratch + $11 tiles
+	call .CopyTile
+	ld hl, MonsterSpriteGFX + 7 tiles
+	ld de, sScratch + $17 tiles
+	call .CopyTile
 
 	ld hl, VTiles2 tile $31
 	ld de, sScratch
@@ -1042,8 +1037,8 @@
 	ld [rSVBK], a
 	ret
 
-CopyMonsterSpriteTile: ; cc6c6 (33:46c6)
-	ld bc, $10
+.CopyTile: ; cc6c6 (33:46c6)
+	ld bc, 1 tiles
 	ld a, BANK(MonsterSpriteGFX)
 	call FarCopyBytes
 	ret
@@ -1064,7 +1059,7 @@
 
 GetMinimizePic: ; cc6e7 (33:46e7)
 	ld hl, sScratch
-	ld bc, $310
+	ld bc, $31 tiles
 .loop
 	xor a
 	ld [hli], a
@@ -1077,7 +1072,7 @@
 	and a
 	jr z, .player
 
-	ld de, sScratch + $1a0
+	ld de, sScratch + $1a tiles
 	call CopyMinimizePic
 	ld hl, VTiles2 tile $00
 	ld de, sScratch
@@ -1131,11 +1126,11 @@
 	and a
 	jr z, .player
 
-	callab Function3f486
+	callab DropEnemySub
 	jr .done
 
 .player
-	callab Function3f447
+	callab DropPlayerSub
 
 .done
 	pop af
@@ -1152,7 +1147,7 @@
 	ld a, [CurPartySpecies] ; CurPartySpecies
 	push af
 
-	ld a, [wKickCounter]
+	ld a, [wBattleAnimParam]
 	ld [CurPartySpecies], a ; CurPartySpecies
 
 	ld a, [hBattleTurn]
@@ -1159,7 +1154,7 @@
 	and a
 	jr z, .player
 
-	ld hl, BattleMonDVs ; BattleMonDVs
+	ld hl, BattleMonDVs
 	predef GetUnownLetter
 	ld de, VTiles2 tile $00
 	predef GetFrontpic
@@ -1166,7 +1161,7 @@
 	jr .done
 
 .player
-	ld hl, EnemyMonDVs ; EnemyMonDVs
+	ld hl, EnemyMonDVs
 	predef GetUnownLetter
 	ld de, VTiles2 tile $31
 	predef GetBackpic
@@ -1385,7 +1380,7 @@
 	ret
 ; cc8d3
 
-Functioncc8d3: ; cc8d3
+ClearBattleAnims: ; cc8d3
 ; Clear animation block
 	ld hl, LYOverrides
 	ld bc, wBattleAnimEnd - LYOverrides
@@ -1402,9 +1397,8 @@
 	inc hl
 	ld d, [hl]
 	ld hl, BattleAnimations
-rept 2
 	add hl, de
-endr
+	add hl, de
 	call GetBattleAnimPointer
 	call BattleAnimAssignPals
 	call BattleAnimDelayFrame
@@ -1411,7 +1405,7 @@
 	ret
 ; cc8f6
 
-Functioncc8f6: ; cc8f6
+BattleAnim_RevertPals: ; cc8f6
 	call WaitTop
 	ld a, %11100100
 	ld [wBGP], a
@@ -1429,7 +1423,7 @@
 	ret
 ; cc91a
 
-Functioncc91a: ; cc91a
+BattleAnim_SetBGPals: ; cc91a
 	ld [rBGP], a
 	ld a, [hCGB]
 	and a
@@ -1457,7 +1451,7 @@
 	ret
 ; cc94b
 
-Functioncc94b: ; cc94b
+BattleAnim_SetOBPals: ; cc94b
 	ld [rOBP0], a
 	ld a, [hCGB]
 	and a
@@ -1481,7 +1475,7 @@
 
 BattleAnim_UpdateOAM_All: ; cc96e
 	ld a, $0
-	ld [w5_d418], a
+	ld [wBattleAnimOAMPointerLo], a
 	ld hl, ActiveAnimObjects
 	ld e, 10
 .loop
@@ -1503,7 +1497,7 @@
 	add hl, bc
 	dec e
 	jr nz, .loop
-	ld a, [w5_d418]
+	ld a, [wBattleAnimOAMPointerLo]
 	ld l, a
 	ld h, Sprites / $100
 .loop2
--- a/battle/anim_objects.asm
+++ b/battle/anim_objects.asm
@@ -106,7 +106,7 @@
 	ld a, [hli]
 	ld h, [hl]
 	ld l, a
-	ld a, [w5_d418]
+	ld a, [wBattleAnimOAMPointerLo]
 	ld e, a
 	ld d, Sprites / $100
 .loop
@@ -173,7 +173,7 @@
 	inc hl
 	inc de
 	ld a, e
-	ld [w5_d418], a
+	ld [wBattleAnimOAMPointerLo], a
 	cp $a0
 	jr nc, .exit_set_carry
 	dec c
@@ -620,7 +620,7 @@
 
 ; ce846
 
-Functionce846: ; ce846 (33:6846)
+LoadBattleAnimObj: ; ce846 (33:6846)
 	push hl
 	ld l, a
 	ld h, 0
--- a/battle/anims.asm
+++ b/battle/anims.asm
@@ -297,7 +297,7 @@
 	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 $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_wait 128
 	anim_ret
 ; c92c1
@@ -420,41 +420,41 @@
 ; c93d1
 
 BattleAnim_SendOutMon: ; c93d1
-	anim_jumpif $0, BattleAnim_SendOutMon_branch_c9471
-	anim_jumpif $1, BattleAnim_SendOutMon_branch_c941c
-	anim_jumpif $2, BattleAnim_SendOutMon_branch_c93fa
+	anim_jumpif $0, .Normal
+	anim_jumpif $1, .Shiny
+	anim_jumpif $2, .Unknown
 	anim_1gfx ANIM_GFX_SMOKE
-	anim_call BattleAnim_SendOutMon_branch_cbca7
-	anim_bgeffect $2b, $0, $1, $0
+	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_SendOutMon_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c93fa
 
-BattleAnim_SendOutMon_branch_c93fa: ; c93fa
+.Unknown: ; c93fa
 	anim_1gfx ANIM_GFX_SMOKE
-	anim_call BattleAnim_SendOutMon_branch_cbca7
-	anim_bgeffect $2a, $0, $1, $0
+	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 $2a
+	anim_incbgeffect ANIM_BG_2A
 	anim_wait 96
-	anim_incbgeffect $2a
-	anim_call BattleAnim_SendOutMon_branch_cbcb7
+	anim_incbgeffect ANIM_BG_2A
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c941c
 
-BattleAnim_SendOutMon_branch_c941c: ; c941c
+.Shiny: ; c941c
 	anim_1gfx ANIM_GFX_SPEED
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $3
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -482,7 +482,7 @@
 	anim_ret
 ; c9471
 
-BattleAnim_SendOutMon_branch_c9471: ; c9471
+.Normal: ; c9471
 	anim_1gfx ANIM_GFX_SMOKE
 	anim_sound 0, 0, SFX_BALL_POOF
 	anim_obj ANIM_OBJ_1C, 44, 96, $0
@@ -569,7 +569,7 @@
 
 BattleAnim_Par: ; c9508
 	anim_1gfx ANIM_GFX_STATUS
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -647,37 +647,37 @@
 ; c9592
 
 BattleAnim_EnemyStatDown: ; c9592
-	anim_call BattleAnim_EnemyStatDown_branch_cbcc2
+	anim_call BattleAnim_FollowEnemyFeet_1
 	anim_bgeffect ANIM_BG_VIBRATE_MON, $0, $0, $0
 	anim_wait 40
-	anim_call BattleAnim_EnemyStatDown_branch_cbcd2
+	anim_call BattleAnim_ShowMon_1
 	anim_wait 1
 	anim_ret
 ; c95a0
 
 BattleAnim_PlayerStatDown: ; c95a0
-	anim_call BattleAnim_PlayerStatDown_branch_cbcc2
+	anim_call BattleAnim_FollowEnemyFeet_1
 	anim_bgeffect ANIM_BG_WOBBLE_MON, $0, $0, $0
 	anim_wait 40
-	anim_call BattleAnim_PlayerStatDown_branch_cbcd2
+	anim_call BattleAnim_ShowMon_1
 	anim_wait 1
 	anim_ret
 ; c95ae
 
 BattleAnim_PlayerDamage: ; c95ae
-	anim_bgeffect $20, $20, $2, $20
+	anim_bgeffect ANIM_BG_20, $20, $2, $20
 	anim_wait 40
 	anim_ret
 ; c95b5
 
 BattleAnim_Wobble: ; c95b5
-	anim_bgeffect $35, $0, $0, $0
+	anim_bgeffect ANIM_BG_35, $0, $0, $0
 	anim_wait 40
 	anim_ret
 ; c95bc
 
 BattleAnim_Shake: ; c95bc
-	anim_bgeffect $1f, $20, $2, $40
+	anim_bgeffect ANIM_BG_1F, $20, $2, $40
 	anim_wait 40
 	anim_ret
 ; c95c3
@@ -755,7 +755,7 @@
 BattleAnim_Bide_branch_c9651: ; c9651
 BattleAnim_MegaPunch: ; c9651
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_Bide_branch_c965e: ; c965e
@@ -835,7 +835,7 @@
 
 BattleAnim_HiJumpKick: ; c96fc
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_jumpif $1, BattleAnim_HiJumpKick_branch_c971e
 	anim_wait 32
 	anim_sound 0, 1, SFX_JUMP_KICK
@@ -869,7 +869,7 @@
 
 BattleAnim_MegaKick: ; c973e
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_wait 67
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_MegaKick_branch_c974b: ; c974b
@@ -885,7 +885,7 @@
 
 BattleAnim_HyperFang: ; c9764
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $20, $1, $0
+	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
@@ -896,7 +896,7 @@
 
 BattleAnim_SuperFang: ; c977b
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 BattleAnim_SuperFang_branch_c9788: ; c9788
@@ -1116,21 +1116,21 @@
 	anim_loop 3, BattleAnim_Bubblebeam_branch_c993f
 	anim_wait 64
 	anim_clearobjs
-	anim_bgeffect $30, $0, $0, $0
+	anim_bgeffect ANIM_BG_30, $0, $0, $0
 	anim_wait 1
-	anim_call BattleAnim_Bubblebeam_branch_cbcca
-	anim_bgeffect $31, $1c, $0, $0
+	anim_call BattleAnim_FollowPlayerHead_1
+	anim_bgeffect ANIM_BG_31, $1c, $0, $0
 	anim_wait 19
-	anim_call BattleAnim_Bubblebeam_branch_cbcd2
-	anim_bgeffect $32, $0, $0, $0
+	anim_call BattleAnim_ShowMon_1
+	anim_bgeffect ANIM_BG_32, $0, $0, $0
 	anim_wait 8
 	anim_ret
 ; c9979
 
 BattleAnim_WaterGun: ; c9979
-	anim_bgeffect $30, $0, $0, $0
+	anim_bgeffect ANIM_BG_30, $0, $0, $0
 	anim_1gfx ANIM_GFX_WATER
-	anim_call BattleAnim_WaterGun_branch_cbcca
+	anim_call BattleAnim_FollowPlayerHead_1
 	anim_sound 16, 2, SFX_WATER_GUN
 	anim_obj ANIM_OBJ_24, 64, 88, $0
 	anim_wait 8
@@ -1138,52 +1138,52 @@
 	anim_wait 8
 	anim_obj ANIM_OBJ_24, 64, 82, $0
 	anim_wait 24
-	anim_bgeffect $31, $1c, $0, $0
+	anim_bgeffect ANIM_BG_31, $1c, $0, $0
 	anim_wait 8
-	anim_bgeffect $31, $8, $0, $0
+	anim_bgeffect ANIM_BG_31, $8, $0, $0
 	anim_wait 8
-	anim_bgeffect $31, $30, $0, $0
+	anim_bgeffect ANIM_BG_31, $30, $0, $0
 	anim_wait 32
-	anim_call BattleAnim_WaterGun_branch_cbcd2
-	anim_bgeffect $32, $0, $0, $0
+	anim_call BattleAnim_ShowMon_1
+	anim_bgeffect ANIM_BG_32, $0, $0, $0
 	anim_wait 16
 	anim_ret
 ; c99b4
 
 BattleAnim_HydroPump: ; c99b4
-	anim_bgeffect $30, $0, $0, $0
+	anim_bgeffect ANIM_BG_30, $0, $0, $0
 	anim_1gfx ANIM_GFX_WATER
-	anim_call BattleAnim_HydroPump_branch_cbcca
+	anim_call BattleAnim_FollowPlayerHead_1
 	anim_sound 0, 1, SFX_HYDRO_PUMP
 	anim_obj ANIM_OBJ_25, 108, 72, $0
-	anim_bgeffect $31, $1c, $0, $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 $31, $8, $0, $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 $31, $30, $0, $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 $31, $1c, $0, $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 $31, $8, $0, $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 $31, $30, $0, $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 $31, $1c, $0, $0
+	anim_bgeffect ANIM_BG_31, $1c, $0, $0
 	anim_wait 32
-	anim_call BattleAnim_HydroPump_branch_cbcd2
-	anim_bgeffect $32, $0, $0, $0
+	anim_call BattleAnim_ShowMon_1
+	anim_bgeffect ANIM_BG_32, $0, $0, $0
 	anim_wait 16
 	anim_ret
 ; c9a2a
@@ -1299,7 +1299,7 @@
 
 BattleAnim_Solarbeam_branch_c9b30: ; c9b30
 	anim_1gfx ANIM_GFX_BEAM
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_call BattleAnim_Solarbeam_branch_cbb39
 	anim_wait 48
 	anim_ret
@@ -1368,8 +1368,8 @@
 BattleAnim_RazorWind: ; c9bbd
 	anim_jumpif $1, BattleAnim_RazorWind_branch_c9fb5
 	anim_1gfx ANIM_GFX_WHIP
-	anim_bgeffect $6, $0, $1, $0
-BattleAnim_RazorWind_branch_c9bc8: ; c9bc8
+	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
@@ -1386,7 +1386,7 @@
 	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_41, 120, 64, $83
 	anim_wait 4
-	anim_loop 3, BattleAnim_RazorWind_branch_c9bc8
+	anim_loop 3, .loop
 	anim_wait 24
 	anim_ret
 ; c9c00
@@ -1393,7 +1393,7 @@
 
 BattleAnim_Sonicboom_JP: ; c9c00
 	anim_2gfx ANIM_GFX_WHIP, ANIM_GFX_HIT
-BattleAnim_Sonicboom_JP_branch_c9c03: ; c9c03
+.loop
 	anim_sound 3, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_43, 64, 80, $3
 	anim_wait 8
@@ -1403,7 +1403,7 @@
 	anim_sound 3, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_43, 64, 96, $4
 	anim_wait 8
-	anim_loop 2, BattleAnim_Sonicboom_JP_branch_c9c03
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_incobj  1
 	anim_incobj  2
@@ -1419,12 +1419,11 @@
 BattleAnim_Gust: ; c9c36
 BattleAnim_Sonicboom: ; c9c36
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
-BattleAnim_Gust_branch_c9c39: ; c9c39
-BattleAnim_Sonicboom_branch_c9c39: ; c9c39
+.loop
 	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 136, 72, $0
 	anim_wait 6
-	anim_loop 9, BattleAnim_Gust_branch_c9c39
+	anim_loop 9, .loop
 	anim_obj ANIM_OBJ_01, 144, 64, $18
 	anim_wait 8
 	anim_obj ANIM_OBJ_01, 128, 32, $18
@@ -1435,17 +1434,17 @@
 BattleAnim_Selfdestruct: ; c9c53
 	anim_1gfx ANIM_GFX_EXPLOSION
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $24
-	anim_jumpif $1, BattleAnim_Selfdestruct_branch_c9c63
+	anim_jumpif $1, .loop
 	anim_call BattleAnim_Selfdestruct_branch_cbb8f
 	anim_wait 16
 	anim_ret
 ; c9c63
 
-BattleAnim_Selfdestruct_branch_c9c63: ; c9c63
+.loop
 	anim_call BattleAnim_Selfdestruct_branch_cbb62
 	anim_wait 5
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_loop 2, BattleAnim_Selfdestruct_branch_c9c63
+	anim_loop 2, .loop
 	anim_wait 16
 	anim_ret
 ; c9c72
@@ -1452,19 +1451,19 @@
 
 BattleAnim_Explosion: ; c9c72
 	anim_1gfx ANIM_GFX_EXPLOSION
-	anim_bgeffect $1f, $60, $4, $10
+	anim_bgeffect ANIM_BG_1F, $60, $4, $10
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $24
-	anim_jumpif $1, BattleAnim_Explosion_branch_c9c87
+	anim_jumpif $1, .loop
 	anim_call BattleAnim_Explosion_branch_cbb8f
 	anim_wait 16
 	anim_ret
 ; c9c87
 
-BattleAnim_Explosion_branch_c9c87: ; c9c87
+.loop
 	anim_call BattleAnim_Explosion_branch_cbb62
 	anim_wait 5
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
-	anim_loop 2, BattleAnim_Explosion_branch_c9c87
+	anim_loop 2, .loop
 	anim_wait 16
 	anim_ret
 ; c9c96
@@ -1478,7 +1477,7 @@
 
 BattleAnim_RockThrow: ; c9c9d
 	anim_1gfx ANIM_GFX_ROCKS
-	anim_bgeffect $1f, $60, $1, $0
+	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
@@ -1499,8 +1498,8 @@
 
 BattleAnim_RockSlide: ; c9cd2
 	anim_1gfx ANIM_GFX_ROCKS
-	anim_bgeffect $1f, $c0, $1, $0
-BattleAnim_RockSlide_branch_c9cd9: ; c9cd9
+	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
@@ -1516,7 +1515,7 @@
 	anim_sound 0, 1, SFX_STRENGTH
 	anim_obj ANIM_OBJ_1E, 136, 68, $30
 	anim_wait 16
-	anim_loop 4, BattleAnim_RockSlide_branch_c9cd9
+	anim_loop 4, .loop
 	anim_wait 96
 	anim_ret
 ; c9d0c
@@ -1524,7 +1523,7 @@
 BattleAnim_Sing: ; c9d0c
 	anim_1gfx ANIM_GFX_NOISE
 	anim_sound 16, 2, SFX_SING
-BattleAnim_Sing_branch_c9d11: ; c9d11
+.loop
 	anim_obj ANIM_OBJ_23, 64, 92, $0
 	anim_wait 8
 	anim_obj ANIM_OBJ_23, 64, 92, $1
@@ -1535,7 +1534,7 @@
 	anim_wait 8
 	anim_obj ANIM_OBJ_23, 64, 92, $2
 	anim_wait 8
-	anim_loop 4, BattleAnim_Sing_branch_c9d11
+	anim_loop 4, .loop
 	anim_wait 64
 	anim_ret
 ; c9d35
@@ -1545,10 +1544,7 @@
 BattleAnim_Spore: ; c9d35
 BattleAnim_StunSpore: ; c9d35
 	anim_1gfx ANIM_GFX_POWDER
-BattleAnim_Poisonpowder_branch_c9d37: ; c9d37
-BattleAnim_SleepPowder_branch_c9d37: ; c9d37
-BattleAnim_Spore_branch_c9d37: ; c9d37
-BattleAnim_StunSpore_branch_c9d37: ; c9d37
+.loop
 	anim_sound 0, 1, SFX_POWDER
 	anim_obj ANIM_OBJ_26, 104, 16, $0
 	anim_wait 4
@@ -1564,7 +1560,7 @@
 	anim_sound 0, 1, SFX_POWDER
 	anim_obj ANIM_OBJ_26, 120, 16, $0
 	anim_wait 4
-	anim_loop 2, BattleAnim_Poisonpowder_branch_c9d37
+	anim_loop 2, .loop
 	anim_wait 96
 	anim_ret
 ; c9d6a
@@ -1571,9 +1567,9 @@
 
 BattleAnim_HyperBeam: ; c9d6a
 	anim_1gfx ANIM_GFX_BEAM
-	anim_bgeffect $1f, $30, $4, $10
+	anim_bgeffect ANIM_BG_1F, $30, $4, $10
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_call BattleAnim_HyperBeam_branch_cbb39
 	anim_wait 48
 	anim_ret
@@ -1581,7 +1577,7 @@
 
 BattleAnim_AuroraBeam: ; c9d80
 	anim_1gfx ANIM_GFX_BEAM
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -1679,14 +1675,14 @@
 
 BattleAnim_Teleport: ; c9e4f
 	anim_1gfx ANIM_GFX_SPEED
-	anim_call BattleAnim_Teleport_branch_cbca7
+	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_Teleport_branch_cbcb7
-	anim_bgeffect $6, $0, $1, $0
+	anim_call BattleAnim_ShowMon_0
+	anim_bgeffect ANIM_BG_06, $0, $1, $0
 	anim_call BattleAnim_Teleport_branch_cbb12
 	anim_wait 64
 	anim_ret
@@ -1707,7 +1703,7 @@
 
 BattleAnim_Fly_branch_c9e89: ; c9e89
 	anim_1gfx ANIM_GFX_SPEED
-	anim_bgeffect $6, $0, $1, $0
+	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
@@ -1715,7 +1711,7 @@
 ; c9e9a
 
 BattleAnim_DoubleTeam: ; c9e9a
-	anim_call BattleAnim_DoubleTeam_branch_cbcaf
+	anim_call BattleAnim_FollowPlayerHead_0
 	anim_sound 0, 0, SFX_PSYBEAM
 	anim_bgeffect ANIM_BG_DOUBLE_TEAM, $0, $1, $0
 	anim_wait 96
@@ -1722,15 +1718,15 @@
 	anim_incbgeffect ANIM_BG_DOUBLE_TEAM
 	anim_wait 24
 	anim_incbgeffect ANIM_BG_DOUBLE_TEAM
-	anim_call BattleAnim_DoubleTeam_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c9eaf
 
 BattleAnim_Recover: ; c9eaf
 	anim_1gfx ANIM_GFX_BUBBLE
-	anim_call BattleAnim_Recover_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_FULL_HEAL
-	anim_bgeffect $18, $0, $1, $40
+	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
@@ -1740,8 +1736,8 @@
 	anim_obj ANIM_OBJ_2C, 44, 88, $36
 	anim_obj ANIM_OBJ_2C, 44, 88, $37
 	anim_wait 64
-	anim_incbgeffect $18
-	anim_call BattleAnim_Recover_branch_cbcb7
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c9eeb
 
@@ -1748,7 +1744,7 @@
 BattleAnim_Absorb: ; c9eeb
 	anim_1gfx ANIM_GFX_CHARGE
 	anim_obj ANIM_OBJ_3D, 44, 88, $0
-BattleAnim_Absorb_branch_c9ef2: ; c9ef2
+.loop
 	anim_sound 6, 3, SFX_WATER_GUN
 	anim_obj ANIM_OBJ_45, 128, 48, $2
 	anim_wait 6
@@ -1758,7 +1754,7 @@
 	anim_sound 6, 3, SFX_WATER_GUN
 	anim_obj ANIM_OBJ_45, 136, 32, $4
 	anim_wait 6
-	anim_loop 5, BattleAnim_Absorb_branch_c9ef2
+	anim_loop 5, .loop
 	anim_wait 32
 	anim_ret
 ; c9f13
@@ -1765,10 +1761,10 @@
 
 BattleAnim_MegaDrain: ; c9f13
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_call BattleAnim_MegaDrain_branch_cbca7
-	anim_bgeffect $1c, $0, $0, $10
+	anim_call BattleAnim_FollowEnemyFeet_0
+	anim_bgeffect ANIM_BG_1C, $0, $0, $10
 	anim_setvar $0
-BattleAnim_MegaDrain_branch_c9f1f: ; c9f1f
+.loop
 	anim_sound 6, 3, SFX_WATER_GUN
 	anim_obj ANIM_OBJ_45, 128, 48, $2
 	anim_wait 6
@@ -1779,20 +1775,20 @@
 	anim_obj ANIM_OBJ_45, 136, 32, $4
 	anim_wait 6
 	anim_incvar
-	anim_jumpvar $7, BattleAnim_MegaDrain_branch_c9f4e
-	anim_jumpvar $2, BattleAnim_MegaDrain_branch_c9f46
-	anim_jump BattleAnim_MegaDrain_branch_c9f1f
+	anim_jumpvar $7, .done
+	anim_jumpvar $2, .spawn
+	anim_jump .loop
 ; c9f46
 
-BattleAnim_MegaDrain_branch_c9f46: ; c9f46
+.spawn
 	anim_obj ANIM_OBJ_3D, 44, 88, $0
-	anim_jump BattleAnim_MegaDrain_branch_c9f1f
+	anim_jump .loop
 ; c9f4e
 
-BattleAnim_MegaDrain_branch_c9f4e: ; c9f4e
+.done
 	anim_wait 32
-	anim_incbgeffect $1c
-	anim_call BattleAnim_MegaDrain_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1C
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c9f55
 
@@ -1818,7 +1814,7 @@
 
 BattleAnim_Softboiled: ; c9f85
 	anim_2gfx ANIM_GFX_EGG, ANIM_GFX_BUBBLE
-	anim_call BattleAnim_Softboiled_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_SWITCH_POKEMON
 	anim_obj ANIM_OBJ_46, 44, 104, $6
 	anim_wait 128
@@ -1825,15 +1821,15 @@
 	anim_incobj  2
 	anim_obj ANIM_OBJ_46, 76, 104, $b
 	anim_wait 16
-	anim_bgeffect $18, $0, $1, $40
+	anim_bgeffect ANIM_BG_18, $0, $1, $40
 	anim_sound 0, 0, SFX_METRONOME
-BattleAnim_Softboiled_branch_c9fa4: ; c9fa4
+.loop
 	anim_obj ANIM_OBJ_2C, 44, 88, $20
 	anim_wait 8
-	anim_loop 8, BattleAnim_Softboiled_branch_c9fa4
+	anim_loop 8, .loop
 	anim_wait 128
-	anim_incbgeffect $18
-	anim_call BattleAnim_Softboiled_branch_cbcb7
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c9fb5
 
@@ -1842,13 +1838,10 @@
 BattleAnim_SkullBash_branch_c9fb5: ; c9fb5
 BattleAnim_SkyAttack_branch_c9fb5: ; c9fb5
 	anim_1gfx ANIM_GFX_SPEED
-	anim_call BattleAnim_FocusEnergy_branch_cbca7
-	anim_bgeffect $16, $0, $1, $40
-	anim_bgeffect $6, $0, $2, $0
-BattleAnim_FocusEnergy_branch_c9fc4: ; c9fc4
-BattleAnim_RazorWind_branch_c9fc4: ; c9fc4
-BattleAnim_SkullBash_branch_c9fc4: ; c9fc4
-BattleAnim_SkyAttack_branch_c9fc4: ; c9fc4
+	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
@@ -1864,10 +1857,10 @@
 	anim_wait 2
 	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop 3, BattleAnim_FocusEnergy_branch_c9fc4
+	anim_loop 3, .loop
 	anim_wait 8
-	anim_incbgeffect $16
-	anim_call BattleAnim_FocusEnergy_branch_cbcb7
+	anim_incbgeffect ANIM_BG_16
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; c9ffc
 
@@ -1874,12 +1867,12 @@
 BattleAnim_Bide: ; c9ffc
 	anim_jumpif $0, BattleAnim_Bide_branch_c9651
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Bide_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_ESCAPE_ROPE
-	anim_bgeffect $1a, $0, $1, $20
+	anim_bgeffect ANIM_BG_1A, $0, $1, $20
 	anim_wait 72
-	anim_incbgeffect $1a
-	anim_call BattleAnim_Bide_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1A
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca014
 
@@ -1919,12 +1912,12 @@
 
 BattleAnim_Confusion: ; ca058
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Confusion_branch_cbcca
+	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_Confusion_branch_cbcd2
+	anim_call BattleAnim_ShowMon_1
 	anim_ret
 ; ca06c
 
@@ -1943,21 +1936,21 @@
 ; ca08a
 
 BattleAnim_Earthquake: ; ca08a
-	anim_bgeffect $1f, $60, $4, $10
-BattleAnim_Earthquake_branch_ca08f: ; ca08f
+	anim_bgeffect ANIM_BG_1F, $60, $4, $10
+.loop
 	anim_sound 0, 1, SFX_EMBER
 	anim_wait 24
-	anim_loop 4, BattleAnim_Earthquake_branch_ca08f
+	anim_loop 4, .loop
 	anim_ret
 ; ca098
 
 BattleAnim_Fissure: ; ca098
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
-	anim_bgeffect $1f, $60, $4, $0
-BattleAnim_Fissure_branch_ca0a2: ; ca0a2
+	anim_bgeffect ANIM_BG_1F, $60, $4, $0
+.loop
 	anim_sound 0, 1, SFX_EMBER
 	anim_wait 24
-	anim_loop 4, BattleAnim_Fissure_branch_ca0a2
+	anim_loop 4, .loop
 	anim_ret
 ; ca0ab
 
@@ -1964,18 +1957,18 @@
 BattleAnim_Growl: ; ca0ab
 	anim_1gfx ANIM_GFX_NOISE
 	anim_enemyfeetobj
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_cry $0
-BattleAnim_Growl_branch_ca0b5: ; ca0b5
+.loop
 	anim_call BattleAnim_Growl_branch_cbbbc
 	anim_wait 16
-	anim_loop 3, BattleAnim_Growl_branch_ca0b5
+	anim_loop 3, .loop
 	anim_wait 9
 	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $1, $0
 	anim_wait 8
-	anim_bgeffect $19, $0, $0, $40
+	anim_bgeffect ANIM_BG_19, $0, $0, $40
 	anim_wait 64
-	anim_incbgeffect $19
+	anim_incbgeffect ANIM_BG_19
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 5
@@ -1986,27 +1979,27 @@
 
 BattleAnim_Roar: ; ca0d7
 	anim_1gfx ANIM_GFX_NOISE
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_cry $1
-BattleAnim_Roar_branch_ca0e0: ; ca0e0
+.loop
 	anim_call BattleAnim_Roar_branch_cbbbc
 	anim_wait 16
-	anim_loop 3, BattleAnim_Roar_branch_ca0e0
+	anim_loop 3, .loop
 	anim_wait 16
-	anim_jumpif $0, BattleAnim_Roar_branch_ca0f3
-	anim_bgeffect $27, $0, $0, $0
+	anim_jumpif $0, .done
+	anim_bgeffect ANIM_BG_27, $0, $0, $0
 	anim_wait 64
-BattleAnim_Roar_branch_ca0f3: ; ca0f3
+.done
 	anim_ret
 ; ca0f4
 
 BattleAnim_Supersonic: ; ca0f4
 	anim_1gfx ANIM_GFX_PSYCHIC
-BattleAnim_Supersonic_branch_ca0f6: ; ca0f6
+.loop
 	anim_sound 6, 2, SFX_SUPERSONIC
 	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 4
-	anim_loop 10, BattleAnim_Supersonic_branch_ca0f6
+	anim_loop 10, .loop
 	anim_wait 64
 	anim_ret
 ; ca105
@@ -2013,12 +2006,12 @@
 
 BattleAnim_Screech: ; ca105
 	anim_1gfx ANIM_GFX_PSYCHIC
-	anim_bgeffect $1f, $8, $1, $20
+	anim_bgeffect ANIM_BG_1F, $8, $1, $20
 	anim_sound 6, 2, SFX_SCREECH
-BattleAnim_Screech_branch_ca10f: ; ca10f
+.loop
 	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 2
-	anim_loop 2, BattleAnim_Screech_branch_ca10f
+	anim_loop 2, .loop
 	anim_wait 64
 	anim_ret
 ; ca11b
@@ -2025,8 +2018,8 @@
 
 BattleAnim_ConfuseRay: ; ca11b
 	anim_1gfx ANIM_GFX_SPEED
-	anim_bgeffect $6, $0, $2, $0
-	anim_bgeffect $8, $0, $4, $0
+	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
@@ -2036,10 +2029,10 @@
 	anim_obj ANIM_OBJ_4D, 64, 88, $a8
 	anim_obj ANIM_OBJ_4D, 64, 88, $b0
 	anim_obj ANIM_OBJ_4D, 64, 88, $b8
-BattleAnim_ConfuseRay_branch_ca154: ; ca154
+.loop
 	anim_sound 6, 2, SFX_WHIRLWIND
 	anim_wait 16
-	anim_loop 8, BattleAnim_ConfuseRay_branch_ca154
+	anim_loop 8, .loop
 	anim_wait 32
 	anim_ret
 ; ca15e
@@ -2046,7 +2039,7 @@
 
 BattleAnim_Leer: ; ca15e
 	anim_1gfx ANIM_GFX_BEAM
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_call BattleAnim_Leer_branch_cbadc
 	anim_wait 16
 	anim_ret
@@ -2054,7 +2047,7 @@
 
 BattleAnim_Reflect: ; ca16a
 	anim_1gfx ANIM_GFX_REFLECT
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -2068,7 +2061,7 @@
 
 BattleAnim_LightScreen: ; ca18e
 	anim_2gfx ANIM_GFX_SPEED, ANIM_GFX_REFLECT
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -2121,10 +2114,10 @@
 BattleAnim_Rest: ; ca212
 	anim_1gfx ANIM_GFX_STATUS
 	anim_sound 0, 0, SFX_TAIL_WHIP
-BattleAnim_Rest_branch_ca217: ; ca217
+.loop
 	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 40
-	anim_loop 3, BattleAnim_Rest_branch_ca217
+	anim_loop 3, .loop
 	anim_wait 32
 	anim_ret
 ; ca223
@@ -2131,12 +2124,12 @@
 
 BattleAnim_AcidArmor: ; ca223
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_AcidArmor_branch_cbcaf
+	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_AcidArmor_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca237
 
@@ -2143,39 +2136,38 @@
 BattleAnim_Splash: ; ca237
 	anim_1gfx ANIM_GFX_HIT
 	anim_sound 0, 0, SFX_VICEGRIP
-	anim_call BattleAnim_Splash_branch_cbcaf
-	anim_bgeffect $22, $0, $1, $0
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_22, $0, $1, $0
 	anim_wait 96
-	anim_incbgeffect $22
-	anim_call BattleAnim_Splash_branch_cbcb7
+	anim_incbgeffect ANIM_BG_22
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca24b
 
 BattleAnim_Dig: ; ca24b
 	anim_2gfx ANIM_GFX_SAND, ANIM_GFX_HIT
-	anim_jumpif $0, BattleAnim_Dig_branch_ca27d
-	anim_jumpif $2, BattleAnim_Dig_branch_ca286
-	anim_call BattleAnim_Dig_branch_cbcaf
-	anim_bgeffect $23, $0, $1, $1
+	anim_jumpif $0, .hit
+	anim_jumpif $2, .fail
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_23, $0, $1, $1
 	anim_obj ANIM_OBJ_57, 72, 104, $0
-BattleAnim_Dig_branch_ca263: ; ca263
+.loop
 	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_56, 56, 104, $0
 	anim_wait 16
-	anim_loop 6, BattleAnim_Dig_branch_ca263
+	anim_loop 6, .loop
 	anim_wait 32
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $1, $0
 	anim_wait 8
-	anim_incbgeffect $23
-	anim_call BattleAnim_Dig_branch_cbcb7
+	anim_incbgeffect ANIM_BG_23
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
-; ca27d
 
-BattleAnim_Dig_branch_ca27d: ; ca27d
+.hit
 	anim_sound 0, 1, SFX_MEGA_PUNCH
 	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 32
-BattleAnim_Dig_branch_ca286: ; ca286
+.fail
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 32
 	anim_ret
@@ -2189,7 +2181,7 @@
 
 BattleAnim_StringShot: ; ca293
 	anim_1gfx ANIM_GFX_WEB
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -2213,38 +2205,38 @@
 
 BattleAnim_Headbutt: ; ca2d1
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $14, $2, $0
+	anim_bgeffect ANIM_BG_1F, $14, $2, $0
 	anim_wait 32
-	anim_call BattleAnim_Headbutt_branch_cbca7
+	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_Headbutt_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca2ef
 
 BattleAnim_Tackle: ; ca2ef
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Tackle_branch_cbcaf
+	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_Tackle_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca307
 
 BattleAnim_BodySlam: ; ca307
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_BodySlam_branch_cbcaf
-	anim_bgeffect $22, $0, $1, $0
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_22, $0, $1, $0
 	anim_wait 32
-	anim_incbgeffect $22
+	anim_incbgeffect ANIM_BG_22
 	anim_wait 4
-	anim_bgeffect $25, $0, $1, $0
+	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
@@ -2252,13 +2244,13 @@
 	anim_sound 0, 1, SFX_TACKLE
 	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 3
-	anim_call BattleAnim_BodySlam_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca331
 
 BattleAnim_TakeDown: ; ca331
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_TakeDown_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 3
 	anim_sound 0, 1, SFX_TACKLE
@@ -2269,13 +2261,13 @@
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
 	anim_obj ANIM_OBJ_01, 144, 48, $0
 	anim_wait 3
-	anim_call BattleAnim_TakeDown_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca35c
 
 BattleAnim_DoubleEdge: ; ca35c
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_DoubleEdge_branch_cbca7
+	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
@@ -2285,14 +2277,14 @@
 	anim_sound 0, 1, SFX_TACKLE
 	anim_obj ANIM_OBJ_00, 144, 48, $0
 	anim_wait 3
-	anim_call BattleAnim_DoubleEdge_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca382
 
 BattleAnim_Submission: ; ca382
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Submission_branch_cbcc2
-	anim_bgeffect $26, $0, $0, $0
+	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
@@ -2301,18 +2293,18 @@
 	anim_wait 32
 	anim_obj ANIM_OBJ_01, 136, 52, $0
 	anim_wait 32
-	anim_incbgeffect $26
-	anim_call BattleAnim_Submission_branch_cbcd2
+	anim_incbgeffect ANIM_BG_26
+	anim_call BattleAnim_ShowMon_1
 	anim_ret
 ; ca3a8
 
 BattleAnim_Whirlwind: ; ca3a8
 	anim_1gfx ANIM_GFX_WIND
-BattleAnim_Whirlwind_branch_ca3aa: ; ca3aa
+.loop
 	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 64, 112, $0
 	anim_wait 6
-	anim_loop 9, BattleAnim_Whirlwind_branch_ca3aa
+	anim_loop 9, .loop
 	anim_incobj  1
 	anim_incobj  2
 	anim_incobj  3
@@ -2324,21 +2316,21 @@
 	anim_incobj  9
 	anim_sound 16, 2, SFX_WHIRLWIND
 	anim_wait 128
-	anim_jumpif $0, BattleAnim_Whirlwind_branch_ca3d7
-	anim_bgeffect $27, $0, $0, $0
+	anim_jumpif $0, .done
+	anim_bgeffect ANIM_BG_27, $0, $0, $0
 	anim_wait 64
-BattleAnim_Whirlwind_branch_ca3d7: ; ca3d7
+.done
 	anim_ret
 ; ca3d8
 
 BattleAnim_Hypnosis: ; ca3d8
 	anim_1gfx ANIM_GFX_PSYCHIC
-BattleAnim_Hypnosis_branch_ca3da: ; ca3da
+.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, BattleAnim_Hypnosis_branch_ca3da
+	anim_loop 3, .loop
 	anim_wait 56
 	anim_ret
 ; ca3ee
@@ -2346,11 +2338,11 @@
 BattleAnim_Haze: ; ca3ee
 	anim_1gfx ANIM_GFX_HAZE
 	anim_sound 0, 1, SFX_SURF
-BattleAnim_Haze_branch_ca3f3: ; ca3f3
+.loop
 	anim_obj ANIM_OBJ_5B, 48, 56, $0
 	anim_obj ANIM_OBJ_5B, 132, 16, $0
 	anim_wait 12
-	anim_loop 5, BattleAnim_Haze_branch_ca3f3
+	anim_loop 5, .loop
 	anim_wait 96
 	anim_ret
 ; ca404
@@ -2359,10 +2351,10 @@
 	anim_obp0 $54
 	anim_1gfx ANIM_GFX_HAZE
 	anim_sound 0, 0, SFX_SURF
-BattleAnim_Mist_branch_ca40b: ; ca40b
+.loop
 	anim_obj ANIM_OBJ_5C, 48, 56, $0
 	anim_wait 8
-	anim_loop 10, BattleAnim_Mist_branch_ca40b
+	anim_loop 10, .loop
 	anim_wait 96
 	anim_ret
 ; ca417
@@ -2370,10 +2362,10 @@
 BattleAnim_Smog: ; ca417
 	anim_1gfx ANIM_GFX_HAZE
 	anim_sound 0, 1, SFX_BUBBLEBEAM
-BattleAnim_Smog_branch_ca41c: ; ca41c
+.loop
 	anim_obj ANIM_OBJ_5D, 132, 16, $0
 	anim_wait 8
-	anim_loop 10, BattleAnim_Smog_branch_ca41c
+	anim_loop 10, .loop
 	anim_wait 96
 	anim_ret
 ; ca428
@@ -2381,10 +2373,10 @@
 BattleAnim_PoisonGas: ; ca428
 	anim_1gfx ANIM_GFX_HAZE
 	anim_sound 16, 2, SFX_BUBBLEBEAM
-BattleAnim_PoisonGas_branch_ca42d: ; ca42d
+.loop
 	anim_obj ANIM_OBJ_5E, 44, 80, $2
 	anim_wait 8
-	anim_loop 10, BattleAnim_PoisonGas_branch_ca42d
+	anim_loop 10, .loop
 	anim_wait 128
 	anim_ret
 ; ca439
@@ -2424,7 +2416,7 @@
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $40
 	anim_obj ANIM_OBJ_5F, 72, 80, $3
 	anim_wait 8
-BattleAnim_HornDrill_branch_ca48b: ; ca48b
+.loop
 	anim_sound 0, 1, SFX_HORN_ATTACK
 	anim_obj ANIM_OBJ_00, 132, 40, $0
 	anim_wait 8
@@ -2437,7 +2429,7 @@
 	anim_sound 0, 1, SFX_HORN_ATTACK
 	anim_obj ANIM_OBJ_00, 124, 48, $0
 	anim_wait 8
-	anim_loop 3, BattleAnim_HornDrill_branch_ca48b
+	anim_loop 3, .loop
 	anim_ret
 ; ca4b4
 
@@ -2466,7 +2458,7 @@
 
 BattleAnim_PinMissile: ; ca4e7
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-BattleAnim_PinMissile_branch_ca4ea: ; ca4ea
+.loop
 	anim_obj ANIM_OBJ_60, 64, 92, $28
 	anim_wait 8
 	anim_obj ANIM_OBJ_60, 56, 84, $28
@@ -2479,7 +2471,7 @@
 	anim_wait 8
 	anim_sound 0, 1, SFX_POISON_STING
 	anim_obj ANIM_OBJ_05, 132, 52, $0
-	anim_loop 3, BattleAnim_PinMissile_branch_ca4ea
+	anim_loop 3, .loop
 	anim_wait 16
 	anim_ret
 ; ca51a
@@ -2486,7 +2478,7 @@
 
 BattleAnim_SpikeCannon: ; ca51a
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-BattleAnim_SpikeCannon_branch_ca51d: ; ca51d
+.loop
 	anim_obj ANIM_OBJ_60, 64, 92, $18
 	anim_wait 8
 	anim_obj ANIM_OBJ_60, 56, 84, $18
@@ -2499,7 +2491,7 @@
 	anim_wait 8
 	anim_sound 0, 1, SFX_POISON_STING
 	anim_obj ANIM_OBJ_05, 132, 52, $0
-	anim_loop 3, BattleAnim_SpikeCannon_branch_ca51d
+	anim_loop 3, .loop
 	anim_wait 16
 	anim_ret
 ; ca54d
@@ -2506,15 +2498,15 @@
 
 BattleAnim_Transform: ; ca54d
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Transform_branch_cbcaf
+	anim_call BattleAnim_FollowPlayerHead_0
 	anim_transform
 	anim_sound 0, 0, SFX_PSYBEAM
-	anim_bgeffect $28, $0, $1, $0
+	anim_bgeffect ANIM_BG_28, $0, $1, $0
 	anim_wait 48
 	anim_updateactorpic
-	anim_incbgeffect $28
+	anim_incbgeffect ANIM_BG_28
 	anim_wait 48
-	anim_call BattleAnim_Transform_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca564
 
@@ -2521,10 +2513,10 @@
 BattleAnim_PetalDance: ; ca564
 	anim_sound 0, 0, SFX_MENU
 	anim_2gfx ANIM_GFX_FLOWER, ANIM_GFX_HIT
-BattleAnim_PetalDance_branch_ca56a: ; ca56a
+.loop
 	anim_obj ANIM_OBJ_61, 48, 56, $0
 	anim_wait 11
-	anim_loop 8, BattleAnim_PetalDance_branch_ca56a
+	anim_loop 8, .loop
 	anim_wait 128
 	anim_wait 64
 	anim_sound 0, 1, SFX_COMET_PUNCH
@@ -2574,7 +2566,7 @@
 
 BattleAnim_LovelyKiss: ; ca5de
 	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -2608,14 +2600,14 @@
 
 BattleAnim_Crabhammer: ; ca624
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
-BattleAnim_Crabhammer_branch_ca631: ; ca631
+.loop
 	anim_sound 0, 1, SFX_MEGA_PUNCH
 	anim_obj ANIM_OBJ_00, 136, 56, $0
 	anim_wait 12
-	anim_loop 3, BattleAnim_Crabhammer_branch_ca631
+	anim_loop 3, .loop
 	anim_ret
 ; ca63f
 
@@ -2622,31 +2614,31 @@
 BattleAnim_SkullBash: ; ca63f
 	anim_jumpif $1, BattleAnim_SkullBash_branch_c9fb5
 	anim_1gfx ANIM_GFX_HIT
-	anim_bgeffect $1f, $14, $2, $0
+	anim_bgeffect ANIM_BG_1F, $14, $2, $0
 	anim_wait 32
-	anim_call BattleAnim_SkullBash_branch_cbca7
+	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
-BattleAnim_SkullBash_branch_ca659: ; ca659
+.loop
 	anim_sound 0, 1, SFX_HEADBUTT
 	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 8
-	anim_loop 3, BattleAnim_SkullBash_branch_ca659
-	anim_call BattleAnim_SkullBash_branch_cbcb7
+	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 $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_obj ANIM_OBJ_6B, 80, 76, $0
 	anim_wait 32
-BattleAnim_Kinesis_branch_ca678: ; ca678
+.loop
 	anim_sound 0, 0, SFX_KINESIS
 	anim_obj ANIM_OBJ_4B, 64, 88, $0
 	anim_wait 32
-	anim_loop 3, BattleAnim_Kinesis_branch_ca678
+	anim_loop 3, .loop
 	anim_wait 32
 	anim_sound 0, 0, SFX_KINESIS_2
 	anim_wait 32
@@ -2666,7 +2658,7 @@
 
 BattleAnim_DrillPeck: ; ca6a0
 	anim_1gfx ANIM_GFX_HIT
-BattleAnim_DrillPeck_branch_ca6a2: ; ca6a2
+.loop
 	anim_sound 0, 1, SFX_PECK
 	anim_obj ANIM_OBJ_02, 124, 56, $0
 	anim_wait 4
@@ -2679,7 +2671,7 @@
 	anim_sound 0, 1, SFX_PECK
 	anim_obj ANIM_OBJ_02, 132, 64, $0
 	anim_wait 4
-	anim_loop 5, BattleAnim_DrillPeck_branch_ca6a2
+	anim_loop 5, .loop
 	anim_wait 16
 	anim_ret
 ; ca6cc
@@ -2687,7 +2679,7 @@
 BattleAnim_Guillotine: ; ca6cc
 	anim_1gfx ANIM_GFX_CUT
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $10
-	anim_bgeffect $1f, $40, $2, $0
+	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
@@ -2730,7 +2722,7 @@
 	anim_jumpif $2, BattleAnim_Substitute_branch_ca76e
 	anim_jumpif $1, BattleAnim_Substitute_branch_ca760
 	anim_1gfx ANIM_GFX_SMOKE
-	anim_bgeffect $27, $0, $1, $0
+	anim_bgeffect ANIM_BG_27, $0, $1, $0
 	anim_wait 48
 	anim_raisesub
 	anim_obj ANIM_OBJ_1C, 48, 96, $0
@@ -2740,7 +2732,7 @@
 ; ca760
 
 BattleAnim_Substitute_branch_ca760: ; ca760
-	anim_bgeffect $27, $0, $1, $0
+	anim_bgeffect ANIM_BG_27, $0, $1, $0
 	anim_wait 48
 	anim_dropsub
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
@@ -2749,7 +2741,7 @@
 ; ca76e
 
 BattleAnim_Substitute_branch_ca76e: ; ca76e
-	anim_bgeffect $27, $0, $1, $0
+	anim_bgeffect ANIM_BG_27, $0, $1, $0
 	anim_wait 48
 	anim_raisesub
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
@@ -2769,14 +2761,14 @@
 BattleAnim_Minimize: ; ca78a
 	anim_sound 0, 0, SFX_SURF
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Minimize_branch_cbcaf
+	anim_call BattleAnim_FollowPlayerHead_0
 	anim_minimize
-	anim_bgeffect $28, $0, $1, $0
+	anim_bgeffect ANIM_BG_28, $0, $1, $0
 	anim_wait 48
 	anim_updateactorpic
-	anim_incbgeffect $28
+	anim_incbgeffect ANIM_BG_28
 	anim_wait 48
-	anim_call BattleAnim_Minimize_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca7a1
 
@@ -2783,7 +2775,7 @@
 BattleAnim_SkyAttack: ; ca7a1
 	anim_jumpif $1, BattleAnim_SkyAttack_branch_c9fb5
 	anim_1gfx ANIM_GFX_SKY_ATTACK
-	anim_bgeffect $27, $0, $1, $0
+	anim_bgeffect ANIM_BG_27, $0, $1, $0
 	anim_wait 32
 	anim_sound 0, 0, SFX_HYPER_BEAM
 	anim_obj ANIM_OBJ_6E, 48, 88, $40
@@ -2805,12 +2797,12 @@
 	anim_bgp $1b
 	anim_obp1 $1b
 	anim_wait 32
-	anim_call BattleAnim_NightShade_branch_cbcca
+	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_NightShade_branch_cbcd2
+	anim_call BattleAnim_ShowMon_1
 	anim_ret
 ; ca7e5
 
@@ -2837,8 +2829,8 @@
 
 BattleAnim_Withdraw: ; ca80c
 	anim_1gfx ANIM_GFX_REFLECT
-	anim_call BattleAnim_Withdraw_branch_cbcaf
-	anim_bgeffect $21, $0, $1, $50
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_21, $0, $1, $50
 	anim_wait 48
 	anim_sound 0, 0, SFX_SHINE
 	anim_obj ANIM_OBJ_70, 48, 88, $0
@@ -2845,20 +2837,20 @@
 	anim_wait 64
 	anim_incobj  2
 	anim_wait 1
-	anim_incbgeffect $21
-	anim_call BattleAnim_Withdraw_branch_cbcb7
+	anim_incbgeffect ANIM_BG_21
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca829
 
 BattleAnim_Psybeam: ; ca829
 	anim_1gfx ANIM_GFX_PSYCHIC
-	anim_bgeffect $6, $0, $2, $0
-	anim_bgeffect $8, $0, $4, $0
-BattleAnim_Psybeam_branch_ca835: ; ca835
+	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, BattleAnim_Psybeam_branch_ca835
+	anim_loop 10, .loop
 	anim_wait 48
 	anim_ret
 ; ca844
@@ -2886,9 +2878,9 @@
 BattleAnim_Harden: ; ca85e
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
-	anim_call BattleAnim_Harden_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_call BattleAnim_Harden_branch_cbc43
-	anim_call BattleAnim_Harden_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca86c
 
@@ -2895,7 +2887,7 @@
 BattleAnim_Psywave: ; ca86c
 	anim_1gfx ANIM_GFX_PSYCHIC
 	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
-BattleAnim_Psywave_branch_ca873: ; ca873
+.loop
 	anim_sound 6, 2, SFX_PSYCHIC
 	anim_obj ANIM_OBJ_4C, 64, 80, $2
 	anim_wait 8
@@ -2905,7 +2897,7 @@
 	anim_sound 6, 2, SFX_PSYCHIC
 	anim_obj ANIM_OBJ_4C, 64, 96, $4
 	anim_wait 8
-	anim_loop 3, BattleAnim_Psywave_branch_ca873
+	anim_loop 3, .loop
 	anim_wait 32
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_wait 4
@@ -2915,7 +2907,7 @@
 BattleAnim_Glare: ; ca897
 	anim_1gfx ANIM_GFX_BEAM
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $20
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_call BattleAnim_Glare_branch_cbadc
 	anim_wait 16
 	anim_ret
@@ -2979,11 +2971,11 @@
 	anim_sound 0, 1, SFX_BALL_POOF
 	anim_obj ANIM_OBJ_1C, 108, 70, $10
 	anim_wait 8
-BattleAnim_Smokescreen_branch_ca951: ; ca951
+.loop
 	anim_sound 0, 1, SFX_MENU
 	anim_obj ANIM_OBJ_74, 132, 60, $20
 	anim_wait 8
-	anim_loop 5, BattleAnim_Smokescreen_branch_ca951
+	anim_loop 5, .loop
 	anim_wait 128
 	anim_ret
 ; ca960
@@ -2990,7 +2982,7 @@
 
 BattleAnim_Strength: ; ca960
 	anim_2gfx ANIM_GFX_ROCKS, ANIM_GFX_HIT
-	anim_bgeffect $20, $10, $1, $20
+	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
@@ -3035,13 +3027,13 @@
 
 BattleAnim_Meditate: ; ca9d8
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Meditate_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_PSYBEAM
-	anim_bgeffect $28, $0, $1, $0
+	anim_bgeffect ANIM_BG_28, $0, $1, $0
 	anim_wait 48
-	anim_incbgeffect $28
+	anim_incbgeffect ANIM_BG_28
 	anim_wait 48
-	anim_call BattleAnim_Meditate_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; ca9ed
 
@@ -3048,14 +3040,14 @@
 BattleAnim_Sharpen: ; ca9ed
 	anim_1gfx ANIM_GFX_SHAPES
 	anim_obp0 $e4
-	anim_call BattleAnim_Sharpen_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_SHARPEN
-	anim_bgeffect $18, $0, $1, $40
+	anim_bgeffect ANIM_BG_18, $0, $1, $40
 	anim_obj ANIM_OBJ_78, 48, 88, $0
 	anim_wait 96
 	anim_incobj  2
-	anim_incbgeffect $18
-	anim_call BattleAnim_Sharpen_branch_cbcb7
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; caa0a
 
@@ -3062,20 +3054,20 @@
 BattleAnim_DefenseCurl: ; caa0a
 	anim_1gfx ANIM_GFX_SHAPES
 	anim_obp0 $e4
-	anim_call BattleAnim_DefenseCurl_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_SHARPEN
-	anim_bgeffect $18, $0, $1, $40
+	anim_bgeffect ANIM_BG_18, $0, $1, $40
 	anim_obj ANIM_OBJ_79, 48, 88, $0
 	anim_wait 96
 	anim_incobj  2
-	anim_incbgeffect $18
-	anim_call BattleAnim_DefenseCurl_branch_cbcb7
+	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 $20, $10, $1, $20
+	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
@@ -3089,12 +3081,12 @@
 
 BattleAnim_Rage: ; caa45
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Rage_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
+	anim_call BattleAnim_FollowEnemyFeet_0
+	anim_bgeffect ANIM_BG_1A, $0, $1, $20
 	anim_sound 0, 0, SFX_RAGE
 	anim_wait 72
-	anim_incbgeffect $1a
-	anim_call BattleAnim_Rage_branch_cbcb7
+	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
@@ -3110,8 +3102,8 @@
 BattleAnim_Agility: ; caa74
 	anim_1gfx ANIM_GFX_WIND
 	anim_obp0 $fc
-	anim_call BattleAnim_Agility_branch_cbca7
-	anim_bgeffect $18, $0, $1, $40
+	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
@@ -3120,12 +3112,12 @@
 	anim_obj ANIM_OBJ_7D, 8, 56, $c
 	anim_obj ANIM_OBJ_7D, 8, 80, $4
 	anim_obj ANIM_OBJ_7D, 8, 104, $e
-BattleAnim_Agility_branch_caaa4: ; caaa4
+.loop
 	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_wait 4
-	anim_loop 18, BattleAnim_Agility_branch_caaa4
-	anim_incbgeffect $18
-	anim_call BattleAnim_Agility_branch_cbcb7
+	anim_loop 18, .loop
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; caab2
 
@@ -3142,7 +3134,7 @@
 BattleAnim_Barrier: ; caac5
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_enemyfeetobj
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -3155,10 +3147,10 @@
 
 BattleAnim_Waterfall: ; caae1
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Waterfall_branch_cbcaf
-	anim_bgeffect $25, $0, $1, $0
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_25, $0, $1, $0
 	anim_wait 16
-	anim_call BattleAnim_Waterfall_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_sound 0, 1, SFX_LICK
 	anim_obj ANIM_OBJ_01, 136, 56, $0
 	anim_wait 3
@@ -3181,11 +3173,11 @@
 	anim_1gfx ANIM_GFX_PSYCHIC
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
 	anim_bgeffect ANIM_BG_PSYCHIC, $0, $0, $0
-BattleAnim_PsychicM_branch_cab29: ; cab29
+.loop
 	anim_sound 6, 2, SFX_PSYCHIC
 	anim_obj ANIM_OBJ_4C, 64, 88, $2
 	anim_wait 8
-	anim_loop 8, BattleAnim_PsychicM_branch_cab29
+	anim_loop 8, .loop
 	anim_wait 96
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_wait 4
@@ -3213,10 +3205,10 @@
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_SPEED
 	anim_sound 0, 0, SFX_METRONOME
 	anim_obj ANIM_OBJ_7A, 72, 88, $0
-BattleAnim_Metronome_branch_cab5d: ; cab5d
+.loop
 	anim_obj ANIM_OBJ_7B, 72, 80, $0
 	anim_wait 8
-	anim_loop 5, BattleAnim_Metronome_branch_cab5d
+	anim_loop 5, .loop
 	anim_wait 48
 	anim_ret
 ; cab69
@@ -3223,7 +3215,7 @@
 
 BattleAnim_Counter: ; cab69
 	anim_1gfx ANIM_GFX_HIT
-BattleAnim_Counter_branch_cab6b: ; cab6b
+.loop
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $6, $2
 	anim_sound 0, 1, SFX_POUND
 	anim_obj ANIM_OBJ_08, 120, 72, $0
@@ -3239,7 +3231,7 @@
 	anim_obj ANIM_OBJ_07, 152, 56, $0
 	anim_obj ANIM_OBJ_00, 152, 56, $0
 	anim_wait 6
-	anim_loop 3, BattleAnim_Counter_branch_cab6b
+	anim_loop 3, .loop
 	anim_wait 16
 	anim_ret
 ; cabaa
@@ -3292,7 +3284,7 @@
 
 BattleAnim_Disable: ; cac24
 	anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_STATUS
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -3304,12 +3296,12 @@
 
 BattleAnim_TailWhip: ; cac41
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_TailWhip_branch_cbcaf
+	anim_call BattleAnim_FollowPlayerHead_0
 	anim_sound 0, 0, SFX_TAIL_WHIP
-	anim_bgeffect $26, $0, $1, $0
+	anim_bgeffect ANIM_BG_26, $0, $1, $0
 	anim_wait 32
-	anim_incbgeffect $26
-	anim_call BattleAnim_TailWhip_branch_cbcb7
+	anim_incbgeffect ANIM_BG_26
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cac55
 
@@ -3323,13 +3315,13 @@
 
 BattleAnim_Sketch: ; cac61
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_call BattleAnim_Sketch_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
+	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 $1a
-	anim_call BattleAnim_Sketch_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1A
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 1
 	anim_ret
 ; cac7b
@@ -3366,13 +3358,13 @@
 
 BattleAnim_Thief: ; cacb5
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Thief_branch_cbca7
+	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_Thief_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 1
 	anim_1gfx ANIM_GFX_STATUS
 	anim_sound 0, 1, SFX_THIEF_2
@@ -3383,7 +3375,7 @@
 
 BattleAnim_SpiderWeb: ; cacd9
 	anim_1gfx ANIM_GFX_WEB
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -3398,13 +3390,13 @@
 BattleAnim_MindReader: ; cacfb
 	anim_1gfx ANIM_GFX_MISC
 	anim_sound 0, 1, SFX_MIND_READER
-BattleAnim_MindReader_branch_cad00: ; cad00
+.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, BattleAnim_MindReader_branch_cad00
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_ret
 ; cad1b
@@ -3422,13 +3414,13 @@
 
 BattleAnim_FlameWheel: ; cad30
 	anim_1gfx ANIM_GFX_FIRE
-BattleAnim_FlameWheel_branch_cad32: ; cad32
+.loop
 	anim_sound 0, 0, SFX_EMBER
 	anim_obj ANIM_OBJ_7F, 48, 96, $0
 	anim_wait 6
-	anim_loop 8, BattleAnim_FlameWheel_branch_cad32
+	anim_loop 8, .loop
 	anim_wait 96
-	anim_call BattleAnim_FlameWheel_branch_cbca7
+	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
@@ -3448,18 +3440,18 @@
 	anim_2gfx ANIM_GFX_STATUS, ANIM_GFX_NOISE
 	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 32
-	anim_bgeffect $1f, $60, $2, $0
+	anim_bgeffect ANIM_BG_1F, $60, $2, $0
 	anim_sound 0, 0, SFX_SNORE
-BattleAnim_Snore_branch_cad7c: ; cad7c
+.loop
 	anim_call BattleAnim_Snore_branch_cbbbc
 	anim_wait 16
-	anim_loop 2, BattleAnim_Snore_branch_cad7c
+	anim_loop 2, .loop
 	anim_wait 8
 	anim_ret
 ; cad86
 
 BattleAnim_Curse: ; cad86
-	anim_jumpif $1, BattleAnim_Curse_branch_cada3
+	anim_jumpif $1, .NotGhost
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_OBJECTS
 	anim_obj ANIM_OBJ_A5, 68, 72, $0
 	anim_sound 0, 0, SFX_CURSE
@@ -3472,16 +3464,16 @@
 	anim_ret
 ; cada3
 
-BattleAnim_Curse_branch_cada3: ; cada3
+.NotGhost: ; cada3
 	anim_1gfx ANIM_GFX_SPEED
-	anim_call BattleAnim_Curse_branch_cbca7
-	anim_bgeffect $19, $0, $1, $40
+	anim_call BattleAnim_FollowEnemyFeet_0
+	anim_bgeffect ANIM_BG_19, $0, $1, $40
 	anim_sound 0, 0, SFX_SHARPEN
 	anim_wait 64
-	anim_incbgeffect $19
+	anim_incbgeffect ANIM_BG_19
 	anim_wait 1
-	anim_bgeffect $16, $0, $1, $40
-BattleAnim_Curse_branch_cadb9: ; cadb9
+	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
@@ -3497,18 +3489,18 @@
 	anim_wait 2
 	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop 3, BattleAnim_Curse_branch_cadb9
+	anim_loop 3, .loop
 	anim_wait 8
-	anim_incbgeffect $16
-	anim_call BattleAnim_Curse_branch_cbcb7
+	anim_incbgeffect ANIM_BG_16
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cadf1
 
 BattleAnim_Flail: ; cadf1
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Flail_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_sound 0, 0, SFX_SUBMISSION
-	anim_bgeffect $2c, $0, $1, $0
+	anim_bgeffect ANIM_BG_2C, $0, $1, $0
 	anim_wait 8
 	anim_obj ANIM_OBJ_01, 120, 48, $0
 	anim_wait 8
@@ -3516,8 +3508,8 @@
 	anim_wait 8
 	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 8
-	anim_incbgeffect $2c
-	anim_call BattleAnim_Flail_branch_cbcb7
+	anim_incbgeffect ANIM_BG_2C
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cae17
 
@@ -3540,8 +3532,8 @@
 BattleAnim_Aeroblast: ; cae4b
 	anim_2gfx ANIM_GFX_BEAM, ANIM_GFX_AEROBLAST
 	anim_bgp $1b
-	anim_bgeffect $1f, $50, $4, $10
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -3562,10 +3554,10 @@
 	anim_obp0 $54
 	anim_1gfx ANIM_GFX_MISC
 	anim_sound 0, 1, SFX_POWDER
-BattleAnim_CottonSpore_branch_cae8b: ; cae8b
+.loop: ; cae8b
 	anim_obj ANIM_OBJ_81, 132, 32, $0
 	anim_wait 8
-	anim_loop 5, BattleAnim_CottonSpore_branch_cae8b
+	anim_loop 5, .loop
 	anim_wait 96
 	anim_ret
 ; cae97
@@ -3572,7 +3564,7 @@
 
 BattleAnim_Reversal: ; cae97
 	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_HIT
-	anim_bgeffect $7, $0, $0, $0
+	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
@@ -3604,7 +3596,7 @@
 
 BattleAnim_PowderSnow: ; caee2
 	anim_1gfx ANIM_GFX_ICE
-BattleAnim_PowderSnow_branch_caee4: ; caee4
+.loop: ; caee4
 	anim_sound 6, 2, SFX_SHINE
 	anim_obj ANIM_OBJ_8F, 64, 88, $23
 	anim_wait 2
@@ -3614,7 +3606,7 @@
 	anim_sound 6, 2, SFX_SHINE
 	anim_obj ANIM_OBJ_8F, 64, 96, $23
 	anim_wait 2
-	anim_loop 2, BattleAnim_PowderSnow_branch_caee4
+	anim_loop 2, .loop
 	anim_bgeffect ANIM_BG_WHITE_HUES, $0, $8, $0
 	anim_wait 40
 	anim_call BattleAnim_PowderSnow_branch_cbbdf
@@ -3624,7 +3616,7 @@
 
 BattleAnim_Protect: ; caf0e
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -3659,7 +3651,7 @@
 BattleAnim_ScaryFace: ; caf73
 	anim_1gfx ANIM_GFX_BEAM
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_call BattleAnim_ScaryFace_branch_cbadc
 	anim_wait 64
 	anim_ret
@@ -3668,8 +3660,8 @@
 BattleAnim_FaintAttack: ; caf84
 	anim_1gfx ANIM_GFX_HIT
 	anim_sound 0, 0, SFX_CURSE
-	anim_call BattleAnim_FaintAttack_branch_cbca7
-	anim_bgeffect $1d, $0, $1, $80
+	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
@@ -3680,8 +3672,8 @@
 	anim_sound 0, 1, SFX_COMET_PUNCH
 	anim_obj ANIM_OBJ_04, 136, 48, $0
 	anim_wait 32
-	anim_incbgeffect $1d
-	anim_call BattleAnim_FaintAttack_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1D
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 4
 	anim_ret
 ; cafb4
@@ -3688,7 +3680,7 @@
 
 BattleAnim_SweetKiss: ; cafb4
 	anim_2gfx ANIM_GFX_OBJECTS, ANIM_GFX_ANGELS
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -3764,13 +3756,13 @@
 	anim_wait 16
 	anim_obj ANIM_OBJ_1C, 132, 56, $10
 	anim_wait 8
-	anim_jumpif $0, BattleAnim_Octazooka_branch_cb091
-BattleAnim_Octazooka_branch_cb086: ; cb086
+	anim_jumpif $0, .done
+.loop
 	anim_obj ANIM_OBJ_74, 132, 60, $20
 	anim_wait 8
-	anim_loop 5, BattleAnim_Octazooka_branch_cb086
+	anim_loop 5, .loop
 	anim_wait 128
-BattleAnim_Octazooka_branch_cb091: ; cb091
+.done
 	anim_ret
 ; cb092
 
@@ -3805,15 +3797,15 @@
 
 BattleAnim_Foresight: ; cb0d0
 	anim_1gfx ANIM_GFX_SHINE
-	anim_call BattleAnim_Foresight_branch_cbcc2
-	anim_bgeffect $7, $0, $0, $0
+	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 $19, $0, $0, $40
+	anim_bgeffect ANIM_BG_19, $0, $0, $40
 	anim_wait 64
-	anim_incbgeffect $19
-	anim_call BattleAnim_Foresight_branch_cbcd2
+	anim_incbgeffect ANIM_BG_19
+	anim_call BattleAnim_ShowMon_1
 	anim_wait 8
 	anim_ret
 ; cb0f0
@@ -3839,7 +3831,7 @@
 
 BattleAnim_PerishSong: ; cb113
 	anim_1gfx ANIM_GFX_NOISE
-	anim_bgeffect $6, $0, $2, $0
+	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_A6, 88, 0, $0
@@ -3856,11 +3848,11 @@
 
 BattleAnim_IcyWind: ; cb14c
 	anim_1gfx ANIM_GFX_SPEED
-	anim_bgeffect $6, $0, $2, $0
+	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
-BattleAnim_IcyWind_branch_cb15c: ; cb15c
+.loop
 	anim_wait 8
 	anim_obj ANIM_OBJ_AE, 64, 88, $4
 	anim_wait 8
@@ -3868,7 +3860,7 @@
 	anim_wait 8
 	anim_obj ANIM_OBJ_AE, 64, 96, $4
 	anim_wait 8
-	anim_loop 2, BattleAnim_IcyWind_branch_cb15c
+	anim_loop 2, .loop
 	anim_wait 16
 	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $1, $0
 	anim_wait 6
@@ -3884,7 +3876,7 @@
 
 BattleAnim_Detect: ; cb18c
 	anim_1gfx ANIM_GFX_SHINE
-	anim_bgeffect $7, $0, $0, $0
+	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
@@ -3908,13 +3900,13 @@
 BattleAnim_LockOn: ; cb1bc
 	anim_1gfx ANIM_GFX_MISC
 	anim_sound 0, 1, SFX_MIND_READER
-BattleAnim_LockOn_branch_cb1c1: ; cb1c1
+.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, BattleAnim_LockOn_branch_cb1c1
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_ret
 ; cb1dc
@@ -3921,12 +3913,12 @@
 
 BattleAnim_Outrage: ; cb1dc
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Outrage_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
+	anim_call BattleAnim_FollowEnemyFeet_0
+	anim_bgeffect ANIM_BG_1A, $0, $1, $20
 	anim_sound 0, 0, SFX_OUTRAGE
 	anim_wait 72
-	anim_incbgeffect $1a
-	anim_call BattleAnim_Outrage_branch_cbcb7
+	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
@@ -3947,10 +3939,10 @@
 	anim_obj ANIM_OBJ_A2, 72, 0, $1
 	anim_wait 8
 	anim_obj ANIM_OBJ_A2, 56, 0, $2
-BattleAnim_Sandstorm_branch_cb223: ; cb223
+.loop
 	anim_sound 0, 1, SFX_MENU
 	anim_wait 8
-	anim_loop 16, BattleAnim_Sandstorm_branch_cb223
+	anim_loop 16, .loop
 	anim_wait 8
 	anim_ret
 ; cb22d
@@ -3957,18 +3949,18 @@
 
 BattleAnim_GigaDrain: ; cb22d
 	anim_2gfx ANIM_GFX_BUBBLE, ANIM_GFX_CHARGE
-	anim_call BattleAnim_GigaDrain_branch_cbca7
-	anim_bgeffect $1c, $0, $0, $10
+	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 $1c
-	anim_call BattleAnim_GigaDrain_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1C
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 1
 	anim_1gfx ANIM_GFX_SHINE
-	anim_bgeffect $7, $0, $0, $0
-BattleAnim_GigaDrain_branch_cb24d: ; cb24d
+	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
@@ -3980,7 +3972,7 @@
 	anim_wait 5
 	anim_obj ANIM_OBJ_9D, 40, 84, $0
 	anim_wait 5
-	anim_loop 2, BattleAnim_GigaDrain_branch_cb24d
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_ret
 ; cb274
@@ -3987,10 +3979,10 @@
 
 BattleAnim_Endure: ; cb274
 	anim_1gfx ANIM_GFX_SPEED
-	anim_call BattleAnim_Endure_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
-	anim_bgeffect $7, $0, $2, $0
-BattleAnim_Endure_branch_cb283: ; cb283
+	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
@@ -4006,22 +3998,22 @@
 	anim_wait 2
 	anim_obj ANIM_OBJ_47, 68, 108, $8
 	anim_wait 2
-	anim_loop 5, BattleAnim_Endure_branch_cb283
+	anim_loop 5, .loop
 	anim_wait 8
-	anim_incbgeffect $1a
-	anim_call BattleAnim_Endure_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1A
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb2bb
 
 BattleAnim_Charm: ; cb2bb
 	anim_1gfx ANIM_GFX_OBJECTS
-	anim_call BattleAnim_Charm_branch_cbca7
-	anim_bgeffect $26, $0, $1, $0
+	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 $26
-	anim_call BattleAnim_Charm_branch_cbcb7
+	anim_incbgeffect ANIM_BG_26
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 4
 	anim_ret
 ; cb2d5
@@ -4029,20 +4021,20 @@
 BattleAnim_Rollout: ; cb2d5
 	anim_1gfx ANIM_GFX_HIT
 	anim_sound 0, 0, SFX_SPARK
-	anim_call BattleAnim_Rollout_branch_cbcaf
-	anim_bgeffect $2e, $60, $1, $1
-	anim_bgeffect $25, $0, $1, $0
+	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_Rollout_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb2f5
 
 BattleAnim_FalseSwipe: ; cb2f5
 	anim_2gfx ANIM_GFX_SHINE, ANIM_GFX_CUT
-	anim_bgeffect $7, $0, $0, $0
+	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
@@ -4053,11 +4045,11 @@
 
 BattleAnim_Swagger: ; cb30d
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_WIND
-BattleAnim_Swagger_branch_cb310: ; cb310
+.loop
 	anim_sound 0, 0, SFX_MENU
 	anim_obj ANIM_OBJ_A9, 72, 88, $44
 	anim_wait 32
-	anim_loop 2, BattleAnim_Swagger_branch_cb310
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_sound 0, 1, SFX_KINESIS_2
 	anim_obj ANIM_OBJ_83, 104, 40, $0
@@ -4067,18 +4059,18 @@
 
 BattleAnim_MilkDrink: ; cb328
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_BUBBLE
-	anim_call BattleAnim_MilkDrink_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_obj ANIM_OBJ_82, 74, 104, $0
 	anim_wait 16
-	anim_bgeffect $18, $0, $1, $40
+	anim_bgeffect ANIM_BG_18, $0, $1, $40
 	anim_sound 0, 0, SFX_MILK_DRINK
-BattleAnim_MilkDrink_branch_cb33c: ; cb33c
+.loop
 	anim_obj ANIM_OBJ_2C, 44, 88, $20
 	anim_wait 8
-	anim_loop 8, BattleAnim_MilkDrink_branch_cb33c
+	anim_loop 8, .loop
 	anim_wait 128
-	anim_incbgeffect $18
-	anim_call BattleAnim_MilkDrink_branch_cbcb7
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb34d
 
@@ -4090,7 +4082,7 @@
 	anim_wait 24
 	anim_setobj $1, $3
 	anim_wait 1
-	anim_call BattleAnim_Spark_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_sound 0, 0, SFX_SPARK
 	anim_wait 16
@@ -4107,18 +4099,17 @@
 
 BattleAnim_FuryCutter: ; cb386
 	anim_1gfx ANIM_GFX_CUT
-BattleAnim_FuryCutter_branch_cb388: ; cb388
+.loop
 	anim_sound 0, 1, SFX_CUT
-	anim_jumpand $1, BattleAnim_FuryCutter_branch_cb397
+	anim_jumpand $1, .obj1
 	anim_obj ANIM_OBJ_3A, 152, 40, $0
-	anim_jump BattleAnim_FuryCutter_branch_cb39c
-; cb397
+	anim_jump .okay
 
-BattleAnim_FuryCutter_branch_cb397: ; cb397
+.obj1
 	anim_obj ANIM_OBJ_3B, 112, 40, $0
-BattleAnim_FuryCutter_branch_cb39c: ; cb39c
+.okay
 	anim_wait 16
-	anim_jumpuntil BattleAnim_FuryCutter_branch_cb388
+	anim_jumpuntil .loop
 	anim_ret
 ; cb3a1
 
@@ -4126,9 +4117,9 @@
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
 	anim_sound 0, 0, SFX_RAGE
-	anim_call BattleAnim_SteelWing_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_call BattleAnim_SteelWing_branch_cbc43
-	anim_call BattleAnim_SteelWing_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_1gfx ANIM_GFX_HIT
 	anim_resetobp0
 	anim_sound 0, 1, SFX_WING_ATTACK
@@ -4165,11 +4156,11 @@
 
 BattleAnim_Attract: ; cb405
 	anim_1gfx ANIM_GFX_OBJECTS
-BattleAnim_Attract_branch_cb407: ; cb407
+.loop
 	anim_sound 0, 0, SFX_ATTRACT
 	anim_obj ANIM_OBJ_66, 44, 80, $2
 	anim_wait 8
-	anim_loop 5, BattleAnim_Attract_branch_cb407
+	anim_loop 5, .loop
 	anim_wait 128
 	anim_wait 64
 	anim_ret
@@ -4177,11 +4168,11 @@
 
 BattleAnim_SleepTalk: ; cb417
 	anim_1gfx ANIM_GFX_STATUS
-BattleAnim_SleepTalk_branch_cb419: ; cb419
+.loop
 	anim_sound 0, 0, SFX_STRENGTH
 	anim_obj ANIM_OBJ_54, 64, 80, $0
 	anim_wait 40
-	anim_loop 2, BattleAnim_SleepTalk_branch_cb419
+	anim_loop 2, .loop
 	anim_wait 32
 	anim_ret
 ; cb428
@@ -4190,7 +4181,7 @@
 	anim_2gfx ANIM_GFX_MISC, ANIM_GFX_NOISE
 	anim_obj ANIM_OBJ_84, 72, 56, $0
 	anim_wait 32
-BattleAnim_HealBell_branch_cb431: ; cb431
+.loop
 	anim_sound 0, 0, SFX_HEAL_BELL
 	anim_obj ANIM_OBJ_85, 72, 52, $0
 	anim_wait 8
@@ -4206,7 +4197,7 @@
 	anim_sound 0, 0, SFX_HEAL_BELL
 	anim_obj ANIM_OBJ_85, 72, 52, $2
 	anim_wait 8
-	anim_loop 4, BattleAnim_HealBell_branch_cb431
+	anim_loop 4, .loop
 	anim_wait 64
 	anim_ret
 ; cb464
@@ -4213,18 +4204,18 @@
 
 BattleAnim_Return: ; cb464
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Return_branch_cbcaf
-	anim_bgeffect $22, $0, $1, $0
+	anim_call BattleAnim_FollowPlayerHead_0
+	anim_bgeffect ANIM_BG_22, $0, $1, $0
 	anim_sound 0, 0, SFX_RETURN
 	anim_wait 64
-	anim_incbgeffect $22
+	anim_incbgeffect ANIM_BG_22
 	anim_wait 32
-	anim_bgeffect $25, $0, $1, $0
+	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_Return_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb488
 
@@ -4236,24 +4227,23 @@
 	anim_obj ANIM_OBJ_53, 104, 48, $0
 	anim_wait 48
 	anim_incobj  2
-	anim_jumpif $3, BattleAnim_Present_branch_cb4b2
+	anim_jumpif $3, .heal
 	anim_incobj  1
 	anim_wait 1
 	anim_1gfx ANIM_GFX_EXPLOSION
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $12
-BattleAnim_Present_branch_cb4aa: ; cb4aa
+.loop
 	anim_call BattleAnim_Present_branch_cbb8f
 	anim_wait 16
-	anim_jumpuntil BattleAnim_Present_branch_cb4aa
+	anim_jumpuntil .loop
 	anim_ret
-; cb4b2
 
-BattleAnim_Present_branch_cb4b2: ; cb4b2
+.heal
 	anim_sound 0, 1, SFX_METRONOME
-BattleAnim_Present_branch_cb4b5: ; cb4b5
+.loop2
 	anim_obj ANIM_OBJ_2C, 132, 48, $24
 	anim_wait 8
-	anim_loop 8, BattleAnim_Present_branch_cb4b5
+	anim_loop 8, .loop2
 	anim_wait 128
 	anim_ret
 ; cb4c1
@@ -4264,8 +4254,8 @@
 	anim_obj ANIM_OBJ_83, 72, 80, $0
 	anim_wait 40
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_Frustration_branch_cbca7
-	anim_bgeffect $26, $0, $1, $0
+	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
@@ -4276,15 +4266,15 @@
 	anim_sound 0, 1, SFX_COMET_PUNCH
 	anim_obj ANIM_OBJ_01, 136, 48, $0
 	anim_wait 8
-	anim_incbgeffect $26
+	anim_incbgeffect ANIM_BG_26
 	anim_wait 1
-	anim_call BattleAnim_Frustration_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb4f9
 
 BattleAnim_Safeguard: ; cb4f9
 	anim_1gfx ANIM_GFX_MISC
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -4297,14 +4287,14 @@
 
 BattleAnim_PainSplit: ; cb51e
 	anim_2gfx ANIM_GFX_HIT, ANIM_GFX_OBJECTS
-	anim_call BattleAnim_PainSplit_branch_cbcaf
-	anim_bgeffect $25, $0, $1, $0
+	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_PainSplit_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 1
 	anim_ret
 ; cb53d
@@ -4311,15 +4301,15 @@
 
 BattleAnim_SacredFire: ; cb53d
 	anim_1gfx ANIM_GFX_FIRE
-	anim_bgeffect $6, $0, $2, $0
+	anim_bgeffect ANIM_BG_06, $0, $2, $0
 	anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
-BattleAnim_SacredFire_branch_cb549: ; cb549
+.loop
 	anim_sound 0, 0, SFX_EMBER
 	anim_obj ANIM_OBJ_80, 48, 104, $0
 	anim_wait 8
-	anim_loop 8, BattleAnim_SacredFire_branch_cb549
+	anim_loop 8, .loop
 	anim_wait 96
-	anim_call BattleAnim_SacredFire_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_bgeffect ANIM_BG_TACKLE, $0, $1, $0
 	anim_wait 4
 	anim_sound 0, 1, SFX_EMBER
@@ -4336,8 +4326,8 @@
 
 BattleAnim_Magnitude: ; cb57d
 	anim_1gfx ANIM_GFX_ROCKS
-BattleAnim_Magnitude_branch_cb57f: ; cb57f
-	anim_bgeffect $1f, $e, $4, $0
+.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
@@ -4349,7 +4339,7 @@
 	anim_wait 2
 	anim_obj ANIM_OBJ_1E, 136, 68, $30
 	anim_wait 2
-	anim_jumpuntil BattleAnim_Magnitude_branch_cb57f
+	anim_jumpuntil .loop
 	anim_wait 96
 	anim_ret
 ; cb5aa
@@ -4367,7 +4357,7 @@
 
 BattleAnim_Megahorn: ; cb5c0
 	anim_2gfx ANIM_GFX_HORN, ANIM_GFX_HIT
-	anim_bgeffect $1f, $40, $2, $0
+	anim_bgeffect ANIM_BG_1F, $40, $2, $0
 	anim_wait 48
 	anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $8, $3
 	anim_obj ANIM_OBJ_5F, 72, 80, $1
@@ -4381,10 +4371,10 @@
 BattleAnim_Dragonbreath: ; cb5de
 	anim_1gfx ANIM_GFX_FIRE
 	anim_sound 6, 2, SFX_EMBER
-BattleAnim_Dragonbreath_branch_cb5e3: ; cb5e3
+.loop
 	anim_obj ANIM_OBJ_90, 64, 92, $4
 	anim_wait 4
-	anim_loop 10, BattleAnim_Dragonbreath_branch_cb5e3
+	anim_loop 10, .loop
 	anim_wait 64
 	anim_ret
 ; cb5ef
@@ -4423,7 +4413,7 @@
 BattleAnim_Pursuit_branch_cb62b: ; cb62b
 	anim_bgeffect ANIM_BG_HIDE_MON, $0, $0, $0
 	anim_wait 4
-	anim_call BattleAnim_Pursuit_branch_cbcc2
+	anim_call BattleAnim_FollowEnemyFeet_1
 	anim_obj ANIM_OBJ_AD, 132, 64, $0
 	anim_wait 64
 	anim_obj ANIM_OBJ_AD, 132, 64, $1
@@ -4434,9 +4424,9 @@
 	anim_wait 16
 	anim_sound 0, 1, SFX_MEGA_PUNCH
 	anim_obj ANIM_OBJ_00, 120, 56, $0
-	anim_bgeffect $2d, $0, $0, $0
+	anim_bgeffect ANIM_BG_2D, $0, $0, $0
 	anim_wait 16
-	anim_call BattleAnim_Pursuit_branch_cbcd2
+	anim_call BattleAnim_ShowMon_1
 	anim_wait 1
 	anim_ret
 ; cb65e
@@ -4444,14 +4434,14 @@
 BattleAnim_RapidSpin: ; cb65e
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
 	anim_obp0 $e4
-BattleAnim_RapidSpin_branch_cb663: ; cb663
+.loop
 	anim_sound 0, 0, SFX_MENU
 	anim_obj ANIM_OBJ_A8, 44, 112, $0
 	anim_wait 2
-	anim_loop 5, BattleAnim_RapidSpin_branch_cb663
+	anim_loop 5, .loop
 	anim_wait 24
-	anim_call BattleAnim_RapidSpin_branch_cbcaf
-	anim_bgeffect $25, $0, $1, $0
+	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
@@ -4484,18 +4474,18 @@
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
 	anim_sound 0, 0, SFX_RAGE
-	anim_call BattleAnim_IronTail_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_call BattleAnim_IronTail_branch_cbc43
 	anim_wait 4
 	anim_1gfx ANIM_GFX_HIT
 	anim_resetobp0
-	anim_bgeffect $26, $0, $1, $0
+	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 $26
-	anim_call BattleAnim_IronTail_branch_cbcb7
+	anim_incbgeffect ANIM_BG_26
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cb6dc
 
@@ -4503,9 +4493,9 @@
 	anim_1gfx ANIM_GFX_REFLECT
 	anim_obp0 $0
 	anim_sound 0, 0, SFX_RAGE
-	anim_call BattleAnim_MetalClaw_branch_cbca7
+	anim_call BattleAnim_FollowEnemyFeet_0
 	anim_call BattleAnim_MetalClaw_branch_cbc43
-	anim_call BattleAnim_MetalClaw_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_1gfx ANIM_GFX_CUT
 	anim_resetobp0
 	anim_sound 0, 1, SFX_SCRATCH
@@ -4518,8 +4508,8 @@
 
 BattleAnim_VitalThrow: ; cb703
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_VitalThrow_branch_cbca7
-	anim_bgeffect $2f, $0, $1, $0
+	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
@@ -4530,9 +4520,9 @@
 	anim_sound 0, 0, SFX_MENU
 	anim_obj ANIM_OBJ_04, 68, 104, $0
 	anim_wait 8
-	anim_incbgeffect $2f
+	anim_incbgeffect ANIM_BG_2F
 	anim_wait 16
-	anim_call BattleAnim_VitalThrow_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_sound 0, 1, SFX_MEGA_PUNCH
 	anim_obj ANIM_OBJ_03, 132, 56, $0
 	anim_wait 16
@@ -4541,19 +4531,19 @@
 
 BattleAnim_MorningSun: ; cb739
 	anim_1gfx ANIM_GFX_SHINE
-	anim_bgeffect $7, $0, $0, $0
+	anim_bgeffect ANIM_BG_07, $0, $0, $0
 	anim_sound 0, 0, SFX_MORNING_SUN
-BattleAnim_MorningSun_branch_cb743: ; cb743
+.loop
 	anim_obj ANIM_OBJ_9C, 16, 48, $88
 	anim_wait 6
-	anim_loop 5, BattleAnim_MorningSun_branch_cb743
+	anim_loop 5, .loop
 	anim_wait 32
-	anim_jumpif $0, BattleAnim_MorningSun_branch_cb756
+	anim_jumpif $0, .zero
 	anim_call BattleAnim_MorningSun_branch_cbc6a
 	anim_ret
 ; cb756
 
-BattleAnim_MorningSun_branch_cb756: ; cb756
+.zero
 	anim_call BattleAnim_MorningSun_branch_cbc80
 	anim_ret
 ; cb75a
@@ -4560,13 +4550,13 @@
 
 BattleAnim_Synthesis: ; cb75a
 	anim_1gfx ANIM_GFX_SHINE
-	anim_call BattleAnim_Synthesis_branch_cbca7
-	anim_bgeffect $18, $0, $1, $40
-	anim_bgeffect $7, $0, $0, $0
+	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 $18
-	anim_call BattleAnim_Synthesis_branch_cbcb7
+	anim_incbgeffect ANIM_BG_18
+	anim_call BattleAnim_ShowMon_0
 	anim_jumpif $1, BattleAnim_Synthesis_branch_cb77a
 	anim_call BattleAnim_Synthesis_branch_cbc6a
 	anim_ret
@@ -4581,7 +4571,7 @@
 	anim_2gfx ANIM_GFX_CUT, ANIM_GFX_HIT
 	anim_bgp $1b
 	anim_obp0 $c0
-	anim_bgeffect $1f, $20, $2, $0
+	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
@@ -4597,7 +4587,7 @@
 BattleAnim_Moonlight: ; cb7a8
 	anim_1gfx ANIM_GFX_SHINE
 	anim_bgp $1b
-	anim_bgeffect $7, $0, $0, $0
+	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
@@ -4618,9 +4608,9 @@
 
 BattleAnim_HiddenPower: ; cb7db
 	anim_1gfx ANIM_GFX_CHARGE
-	anim_call BattleAnim_HiddenPower_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
-	anim_bgeffect $7, $0, $2, $0
+	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
@@ -4629,12 +4619,12 @@
 	anim_obj ANIM_OBJ_9F, 44, 88, $28
 	anim_obj ANIM_OBJ_9F, 44, 88, $30
 	anim_obj ANIM_OBJ_9F, 44, 88, $38
-BattleAnim_HiddenPower_branch_cb812: ; cb812
+.loop
 	anim_sound 0, 0, SFX_SWORDS_DANCE
 	anim_wait 8
-	anim_loop 12, BattleAnim_HiddenPower_branch_cb812
-	anim_incbgeffect $1a
-	anim_call BattleAnim_HiddenPower_branch_cbcb7
+	anim_loop 12, .loop
+	anim_incbgeffect ANIM_BG_1A
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 1
 	anim_incobj  2
 	anim_incobj  3
@@ -4657,7 +4647,7 @@
 	anim_obj ANIM_OBJ_A0, 152, 40, $0
 	anim_obj ANIM_OBJ_A1, 120, 72, $0
 	anim_wait 8
-	anim_bgeffect $1f, $58, $2, $0
+	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
@@ -4667,15 +4657,15 @@
 
 BattleAnim_Twister: ; cb85a
 	anim_2gfx ANIM_GFX_WIND, ANIM_GFX_HIT
-BattleAnim_Twister_branch_cb85d: ; cb85d
+.loop1
 	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_obj ANIM_OBJ_GUST, 64, 112, $0
 	anim_wait 6
-	anim_loop 9, BattleAnim_Twister_branch_cb85d
-BattleAnim_Twister_branch_cb86a: ; cb86a
+	anim_loop 9, .loop1
+.loop2
 	anim_sound 0, 0, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop 8, BattleAnim_Twister_branch_cb86a
+	anim_loop 8, .loop2
 	anim_incobj  1
 	anim_incobj  2
 	anim_incobj  3
@@ -4687,15 +4677,15 @@
 	anim_incobj  9
 	anim_wait 64
 	anim_obj ANIM_OBJ_01, 144, 64, $18
-BattleAnim_Twister_branch_cb88a: ; cb88a
+.loop3
 	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop 4, BattleAnim_Twister_branch_cb88a
+	anim_loop 4, .loop3
 	anim_obj ANIM_OBJ_01, 128, 32, $18
-BattleAnim_Twister_branch_cb897: ; cb897
+.loop4
 	anim_sound 0, 1, SFX_RAZOR_WIND
 	anim_wait 8
-	anim_loop 4, BattleAnim_Twister_branch_cb897
+	anim_loop 4, .loop4
 	anim_incobj  1
 	anim_incobj  2
 	anim_incobj  3
@@ -4738,8 +4728,8 @@
 
 BattleAnim_MirrorCoat: ; cb8e9
 	anim_2gfx ANIM_GFX_REFLECT, ANIM_GFX_SPEED
-	anim_bgeffect $6, $0, $2, $0
-BattleAnim_MirrorCoat_branch_cb8f1: ; cb8f1
+	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
@@ -4750,7 +4740,7 @@
 	anim_wait 8
 	anim_obj ANIM_OBJ_AE, 64, 96, $4
 	anim_wait 8
-	anim_loop 3, BattleAnim_MirrorCoat_branch_cb8f1
+	anim_loop 3, .loop
 	anim_wait 32
 	anim_ret
 ; cb917
@@ -4757,8 +4747,8 @@
 
 BattleAnim_PsychUp: ; cb917
 	anim_1gfx ANIM_GFX_STATUS
-	anim_call BattleAnim_PsychUp_branch_cbca7
-	anim_bgeffect $1a, $0, $1, $20
+	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
@@ -4765,8 +4755,8 @@
 	anim_obj ANIM_OBJ_B1, 44, 88, $20
 	anim_obj ANIM_OBJ_B1, 44, 88, $30
 	anim_wait 64
-	anim_incbgeffect $1a
-	anim_call BattleAnim_PsychUp_branch_cbcb7
+	anim_incbgeffect ANIM_BG_1A
+	anim_call BattleAnim_ShowMon_0
 	anim_wait 16
 	anim_ret
 ; cb940
@@ -4832,7 +4822,7 @@
 
 BattleAnim_FutureSight: ; cb9db
 	anim_1gfx ANIM_GFX_WIND
-	anim_bgeffect $6, $0, $2, $0
+	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
@@ -4843,10 +4833,10 @@
 	anim_obj ANIM_OBJ_7D, 8, 56, $c
 	anim_obj ANIM_OBJ_7D, 8, 80, $4
 	anim_obj ANIM_OBJ_7D, 8, 104, $e
-BattleAnim_FutureSight_branch_cba10: ; cba10
+.loop
 	anim_sound 0, 0, SFX_THROW_BALL
 	anim_wait 16
-	anim_loop 4, BattleAnim_FutureSight_branch_cba10
+	anim_loop 4, .loop
 	anim_incbgeffect ANIM_BG_PSYCHIC
 	anim_ret
 ; cba1b
@@ -4880,10 +4870,10 @@
 	anim_bgeffect ANIM_BG_WHIRLPOOL, $0, $0, $0
 	anim_sound 0, 1, SFX_SURF
 	anim_wait 16
-BattleAnim_Whirlpool_branch_cba75: ; cba75
+.loop
 	anim_obj ANIM_OBJ_GUST, 132, 72, $0
 	anim_wait 6
-	anim_loop 9, BattleAnim_Whirlpool_branch_cba75
+	anim_loop 9, .loop
 	anim_wait 64
 	anim_incbgeffect ANIM_BG_WHIRLPOOL
 	anim_wait 1
@@ -4891,7 +4881,7 @@
 ; cba84
 
 BattleAnim_BeatUp: ; cba84
-	anim_jumpif $0, BattleAnim_BeatUp_branch_cba9b
+	anim_jumpif $0, .current_mon
 	anim_sound 0, 0, SFX_BALL_POOF
 	anim_bgeffect ANIM_BG_RETURN_MON, $0, $1, $0
 	anim_wait 16
@@ -4899,15 +4889,15 @@
 	anim_sound 0, 0, SFX_BALL_POOF
 	anim_bgeffect ANIM_BG_ENTER_MON, $0, $1, $0
 	anim_wait 16
-BattleAnim_BeatUp_branch_cba9b: ; cba9b
+.current_mon
 	anim_1gfx ANIM_GFX_HIT
-	anim_call BattleAnim_BeatUp_branch_cbca7
+	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_BeatUp_branch_cbcb7
+	anim_call BattleAnim_ShowMon_0
 	anim_ret
 ; cbab3
 
@@ -5025,12 +5015,11 @@
 BattleAnim_FirePunch_branch_cbbcc: ; cbbcc
 BattleAnim_TriAttack_branch_cbbcc: ; cbbcc
 	anim_sound 0, 1, SFX_EMBER
-BattleAnim_FirePunch_branch_cbbcf: ; cbbcf
-BattleAnim_TriAttack_branch_cbbcf: ; cbbcf
+.loop
 	anim_obj ANIM_OBJ_BURNED, 136, 56, $10
 	anim_obj ANIM_OBJ_BURNED, 136, 56, $90
 	anim_wait 4
-	anim_loop 4, BattleAnim_FirePunch_branch_cbbcf
+	anim_loop 4, .loop
 	anim_ret
 ; cbbdf
 
@@ -5060,6 +5049,7 @@
 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
@@ -5069,16 +5059,17 @@
 	anim_sound 0, 1, SFX_UNKNOWN_7F
 	anim_obj ANIM_OBJ_1A, 148, 72, $0
 	anim_wait 8
-	anim_loop 5, BattleAnim_SludgeBomb_branch_cbc15
+	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, BattleAnim_Acid_branch_cbc35
+	anim_loop 8, .loop
 	anim_ret
 ; cbc43
 
@@ -5087,22 +5078,23 @@
 BattleAnim_MetalClaw_branch_cbc43: ; cbc43
 BattleAnim_SteelWing_branch_cbc43: ; cbc43
 	anim_sound 0, 0, SFX_SHINE
-	anim_bgeffect $17, $0, $1, $40
+	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 $17
+	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, BattleAnim_MudSlap_branch_cbc5b
+	anim_loop 8, .loop
 	anim_wait 32
 	anim_ret
 ; cbc6a
@@ -5124,9 +5116,7 @@
 BattleAnim_MorningSun_branch_cbc80: ; cbc80
 BattleAnim_Synthesis_branch_cbc80: ; cbc80
 	anim_sound 0, 0, SFX_METRONOME
-BattleAnim_Moonlight_branch_cbc83: ; cbc83
-BattleAnim_MorningSun_branch_cbc83: ; cbc83
-BattleAnim_Synthesis_branch_cbc83: ; cbc83
+.loop
 	anim_obj ANIM_OBJ_9D, 24, 64, $0
 	anim_wait 5
 	anim_obj ANIM_OBJ_9D, 56, 104, $0
@@ -5137,52 +5127,12 @@
 	anim_wait 5
 	anim_obj ANIM_OBJ_9D, 40, 84, $0
 	anim_wait 5
-	anim_loop 2, BattleAnim_Moonlight_branch_cbc83
+	anim_loop 2, .loop
 	anim_wait 16
 	anim_ret
 ; cbca7
 
-BattleAnim_Agility_branch_cbca7: ; cbca7
-BattleAnim_BeatUp_branch_cbca7: ; cbca7
-BattleAnim_Bide_branch_cbca7: ; cbca7
-BattleAnim_Charm_branch_cbca7: ; cbca7
-BattleAnim_Curse_branch_cbca7: ; cbca7
-BattleAnim_DefenseCurl_branch_cbca7: ; cbca7
-BattleAnim_DoubleEdge_branch_cbca7: ; cbca7
-BattleAnim_Endure_branch_cbca7: ; cbca7
-BattleAnim_FaintAttack_branch_cbca7: ; cbca7
-BattleAnim_Flail_branch_cbca7: ; cbca7
-BattleAnim_FlameWheel_branch_cbca7: ; cbca7
-BattleAnim_FocusEnergy_branch_cbca7: ; cbca7
-BattleAnim_Frustration_branch_cbca7: ; cbca7
-BattleAnim_GigaDrain_branch_cbca7: ; cbca7
-BattleAnim_Harden_branch_cbca7: ; cbca7
-BattleAnim_Headbutt_branch_cbca7: ; cbca7
-BattleAnim_HiddenPower_branch_cbca7: ; cbca7
-BattleAnim_IronTail_branch_cbca7: ; cbca7
-BattleAnim_Meditate_branch_cbca7: ; cbca7
-BattleAnim_MegaDrain_branch_cbca7: ; cbca7
-BattleAnim_MetalClaw_branch_cbca7: ; cbca7
-BattleAnim_MilkDrink_branch_cbca7: ; cbca7
-BattleAnim_Outrage_branch_cbca7: ; cbca7
-BattleAnim_PsychUp_branch_cbca7: ; cbca7
-BattleAnim_Rage_branch_cbca7: ; cbca7
-BattleAnim_RazorWind_branch_cbca7: ; cbca7
-BattleAnim_Recover_branch_cbca7: ; cbca7
-BattleAnim_SacredFire_branch_cbca7: ; cbca7
-BattleAnim_SendOutMon_branch_cbca7: ; cbca7
-BattleAnim_Sharpen_branch_cbca7: ; cbca7
-BattleAnim_Sketch_branch_cbca7: ; cbca7
-BattleAnim_SkullBash_branch_cbca7: ; cbca7
-BattleAnim_SkyAttack_branch_cbca7: ; cbca7
-BattleAnim_Softboiled_branch_cbca7: ; cbca7
-BattleAnim_Spark_branch_cbca7: ; cbca7
-BattleAnim_SteelWing_branch_cbca7: ; cbca7
-BattleAnim_Synthesis_branch_cbca7: ; cbca7
-BattleAnim_TakeDown_branch_cbca7: ; cbca7
-BattleAnim_Teleport_branch_cbca7: ; cbca7
-BattleAnim_Thief_branch_cbca7: ; cbca7
-BattleAnim_VitalThrow_branch_cbca7: ; cbca7
+BattleAnim_FollowEnemyFeet_0: ; cbca7
 	anim_enemyfeetobj
 	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $0, $0
 	anim_wait 6
@@ -5189,21 +5139,7 @@
 	anim_ret
 ; cbcaf
 
-BattleAnim_AcidArmor_branch_cbcaf: ; cbcaf
-BattleAnim_BodySlam_branch_cbcaf: ; cbcaf
-BattleAnim_Dig_branch_cbcaf: ; cbcaf
-BattleAnim_DoubleTeam_branch_cbcaf: ; cbcaf
-BattleAnim_Minimize_branch_cbcaf: ; cbcaf
-BattleAnim_PainSplit_branch_cbcaf: ; cbcaf
-BattleAnim_RapidSpin_branch_cbcaf: ; cbcaf
-BattleAnim_Return_branch_cbcaf: ; cbcaf
-BattleAnim_Rollout_branch_cbcaf: ; cbcaf
-BattleAnim_Splash_branch_cbcaf: ; cbcaf
-BattleAnim_Tackle_branch_cbcaf: ; cbcaf
-BattleAnim_TailWhip_branch_cbcaf: ; cbcaf
-BattleAnim_Transform_branch_cbcaf: ; cbcaf
-BattleAnim_Waterfall_branch_cbcaf: ; cbcaf
-BattleAnim_Withdraw_branch_cbcaf: ; cbcaf
+BattleAnim_FollowPlayerHead_0: ; cbcaf
 	anim_playerheadobj
 	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $0, $0
 	anim_wait 6
@@ -5210,58 +5146,7 @@
 	anim_ret
 ; cbcb7
 
-BattleAnim_AcidArmor_branch_cbcb7: ; cbcb7
-BattleAnim_Agility_branch_cbcb7: ; cbcb7
-BattleAnim_BeatUp_branch_cbcb7: ; cbcb7
-BattleAnim_Bide_branch_cbcb7: ; cbcb7
-BattleAnim_BodySlam_branch_cbcb7: ; cbcb7
-BattleAnim_Charm_branch_cbcb7: ; cbcb7
-BattleAnim_Curse_branch_cbcb7: ; cbcb7
-BattleAnim_DefenseCurl_branch_cbcb7: ; cbcb7
-BattleAnim_Dig_branch_cbcb7: ; cbcb7
-BattleAnim_DoubleEdge_branch_cbcb7: ; cbcb7
-BattleAnim_DoubleTeam_branch_cbcb7: ; cbcb7
-BattleAnim_Endure_branch_cbcb7: ; cbcb7
-BattleAnim_FaintAttack_branch_cbcb7: ; cbcb7
-BattleAnim_Flail_branch_cbcb7: ; cbcb7
-BattleAnim_FocusEnergy_branch_cbcb7: ; cbcb7
-BattleAnim_Frustration_branch_cbcb7: ; cbcb7
-BattleAnim_GigaDrain_branch_cbcb7: ; cbcb7
-BattleAnim_Harden_branch_cbcb7: ; cbcb7
-BattleAnim_Headbutt_branch_cbcb7: ; cbcb7
-BattleAnim_HiddenPower_branch_cbcb7: ; cbcb7
-BattleAnim_IronTail_branch_cbcb7: ; cbcb7
-BattleAnim_Meditate_branch_cbcb7: ; cbcb7
-BattleAnim_MegaDrain_branch_cbcb7: ; cbcb7
-BattleAnim_MetalClaw_branch_cbcb7: ; cbcb7
-BattleAnim_MilkDrink_branch_cbcb7: ; cbcb7
-BattleAnim_Minimize_branch_cbcb7: ; cbcb7
-BattleAnim_Outrage_branch_cbcb7: ; cbcb7
-BattleAnim_PainSplit_branch_cbcb7: ; cbcb7
-BattleAnim_PsychUp_branch_cbcb7: ; cbcb7
-BattleAnim_Rage_branch_cbcb7: ; cbcb7
-BattleAnim_RazorWind_branch_cbcb7: ; cbcb7
-BattleAnim_Recover_branch_cbcb7: ; cbcb7
-BattleAnim_Return_branch_cbcb7: ; cbcb7
-BattleAnim_Rollout_branch_cbcb7: ; cbcb7
-BattleAnim_SendOutMon_branch_cbcb7: ; cbcb7
-BattleAnim_Sharpen_branch_cbcb7: ; cbcb7
-BattleAnim_Sketch_branch_cbcb7: ; cbcb7
-BattleAnim_SkullBash_branch_cbcb7: ; cbcb7
-BattleAnim_SkyAttack_branch_cbcb7: ; cbcb7
-BattleAnim_Softboiled_branch_cbcb7: ; cbcb7
-BattleAnim_Splash_branch_cbcb7: ; cbcb7
-BattleAnim_SteelWing_branch_cbcb7: ; cbcb7
-BattleAnim_Synthesis_branch_cbcb7: ; cbcb7
-BattleAnim_Tackle_branch_cbcb7: ; cbcb7
-BattleAnim_TailWhip_branch_cbcb7: ; cbcb7
-BattleAnim_TakeDown_branch_cbcb7: ; cbcb7
-BattleAnim_Teleport_branch_cbcb7: ; cbcb7
-BattleAnim_Thief_branch_cbcb7: ; cbcb7
-BattleAnim_Transform_branch_cbcb7: ; cbcb7
-BattleAnim_VitalThrow_branch_cbcb7: ; cbcb7
-BattleAnim_Waterfall_branch_cbcb7: ; cbcb7
-BattleAnim_Withdraw_branch_cbcb7: ; cbcb7
+BattleAnim_ShowMon_0: ; cbcb7
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $0, $0
 	anim_wait 5
@@ -5270,11 +5155,7 @@
 	anim_ret
 ; cbcc2
 
-BattleAnim_EnemyStatDown_branch_cbcc2: ; cbcc2
-BattleAnim_Foresight_branch_cbcc2: ; cbcc2
-BattleAnim_PlayerStatDown_branch_cbcc2: ; cbcc2
-BattleAnim_Pursuit_branch_cbcc2: ; cbcc2
-BattleAnim_Submission_branch_cbcc2: ; cbcc2
+BattleAnim_FollowEnemyFeet_1: ; cbcc2
 	anim_enemyfeetobj
 	anim_bgeffect ANIM_BG_FEET_FOLLOW, $0, $1, $0
 	anim_wait 6
@@ -5281,11 +5162,7 @@
 	anim_ret
 ; cbcca
 
-BattleAnim_Bubblebeam_branch_cbcca: ; cbcca
-BattleAnim_Confusion_branch_cbcca: ; cbcca
-BattleAnim_HydroPump_branch_cbcca: ; cbcca
-BattleAnim_NightShade_branch_cbcca: ; cbcca
-BattleAnim_WaterGun_branch_cbcca: ; cbcca
+BattleAnim_FollowPlayerHead_1: ; cbcca
 	anim_playerheadobj
 	anim_bgeffect ANIM_BG_HEAD_FOLLOW, $0, $1, $0
 	anim_wait 4
@@ -5292,16 +5169,7 @@
 	anim_ret
 ; cbcd2
 
-BattleAnim_Bubblebeam_branch_cbcd2: ; cbcd2
-BattleAnim_Confusion_branch_cbcd2: ; cbcd2
-BattleAnim_EnemyStatDown_branch_cbcd2: ; cbcd2
-BattleAnim_Foresight_branch_cbcd2: ; cbcd2
-BattleAnim_HydroPump_branch_cbcd2: ; cbcd2
-BattleAnim_NightShade_branch_cbcd2: ; cbcd2
-BattleAnim_PlayerStatDown_branch_cbcd2: ; cbcd2
-BattleAnim_Pursuit_branch_cbcd2: ; cbcd2
-BattleAnim_Submission_branch_cbcd2: ; cbcd2
-BattleAnim_WaterGun_branch_cbcd2: ; cbcd2
+BattleAnim_ShowMon_1: ; cbcd2
 	anim_wait 1
 	anim_bgeffect ANIM_BG_SHOW_MON, $0, $1, $0
 	anim_wait 4
--- a/battle/bg_effects.asm
+++ b/battle/bg_effects.asm
@@ -2,7 +2,7 @@
 
 ExecuteBGEffects: ; c8000 (32:4000)
 	ld hl, ActiveBGEffects
-	ld e, $5
+	ld e, 5
 .loop
 	ld a, [hl]
 	and a
@@ -11,11 +11,11 @@
 	ld b, h
 	push hl
 	push de
-	call Functionc804a
+	call DoBattleBGEffectFunction
 	pop de
 	pop hl
 .next
-	ld bc, $4
+	ld bc, 4
 	add hl, bc
 	dec e
 	jr nz, .loop
@@ -23,12 +23,12 @@
 
 QueueBGEffect: ; c801a (32:401a)
 	ld hl, ActiveBGEffects
-	ld e, $5
+	ld e, 5
 .loop
 	ld a, [hl]
 	and a
 	jr z, .load
-	ld bc, $4
+	ld bc, 4
 	add hl, bc
 	dec e
 	jr nz, .loop
@@ -38,7 +38,7 @@
 .load
 	ld c, l
 	ld b, h
-	ld hl, $0
+	ld hl, BG_EFFECT_STRUCT_FUNCTION
 	add hl, bc
 	ld a, [BattleAnimTemps]
 	ld [hli], a
@@ -51,13 +51,13 @@
 	ret
 
 EndBattleBGEffect: ; c8043 (32:4043)
-	ld hl, 0
+	ld hl, BG_EFFECT_STRUCT_FUNCTION
 	add hl, bc
 	ld [hl], 0
 	ret
 
-Functionc804a: ; c804a (32:404a)
-	ld hl, 0
+DoBattleBGEffectFunction: ; c804a (32:404a)
+	ld hl, BG_EFFECT_STRUCT_FUNCTION
 	add hl, bc
 	ld e, [hl]
 	ld d, 0
@@ -131,11 +131,11 @@
 	call EndBattleBGEffect
 	ret
 
-Functionc80ca: ; c80ca (32:40ca)
-	ld hl, $1
+BatttleBGEffects_GetNamedJumptablePointer: ; c80ca (32:40ca)
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld l, [hl]
-	ld h, $0
+	ld h, 0
 	add hl, hl
 	add hl, de
 	ld a, [hli]
@@ -145,10 +145,10 @@
 
 BattleBGEffects_AnonJumptable: ; c80d7 (32:40d7)
 	pop de
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld l, [hl]
-	ld h, $0
+	ld h, 0
 	add hl, hl
 	add hl, de
 	ld a, [hli]
@@ -156,8 +156,8 @@
 	ld l, a
 	jp [hl]
 
-Functionc80e5: ; c80e5 (32:40e5)
-	ld hl, $1
+BattleBGEffects_IncrementJumptable: ; c80e5 (32:40e5)
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	inc [hl]
 	ret
@@ -164,7 +164,7 @@
 
 BattleBGEffect_FlashInverted: ; c80eb (32:40eb)
 	ld de, .inverted
-	jp Functionc80fb
+	jp BattleBGEffect_FlashContinue
 
 ; c80f1 (32:40f1)
 
@@ -175,7 +175,7 @@
 
 BattleBGEffect_FlashWhite: ; c80f3 (32:40f3)
 	ld de, .white
-	jp Functionc80fb
+	jp BattleBGEffect_FlashContinue
 
 ; c80f9 (32:40f9)
 
@@ -184,33 +184,34 @@
 	db %00000000 ; 0000
 ; c80fb
 
-Functionc80fb: ; c80fb (32:40fb)
+BattleBGEffect_FlashContinue: ; c80fb (32:40fb)
+; current timer, flash duration, number of flashes
 	ld a, $1
 	ld [BattleAnimTemps], a
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld a, [hl]
 	and a
-	jr z, .asm_c810a
+	jr z, .init
 	dec [hl]
 	ret
 
-.asm_c810a
-	ld hl, $2
+.init
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld [hl], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
-	jr nz, .asm_c8120
+	jr nz, .apply_pal
 	call EndBattleBGEffect
 	ret
 
-.asm_c8120
+.apply_pal
 	dec a
 	ld [hl], a
 	and 1
@@ -274,13 +275,14 @@
 ; c8171
 
 BattleBGEffect_06: ; c8171 (32:4171)
-	call Functionc9059
-	jr nz, .asm_c817b
-	ld de, Unknown_c8185
-	jr .asm_c817e
-.asm_c817b
-	ld de, Unknown_c8188
-.asm_c817e
+	call BattleBGEffects_CheckSGB
+	jr nz, .sgb
+	ld de, .PalsCGB
+	jr .okay
+
+.sgb
+	ld de, .PalsSGB
+.okay
 	call Functionc8d57
 	ld [wOBP0], a
 	ret
@@ -287,22 +289,23 @@
 
 ; c8185 (32:4185)
 
-Unknown_c8185:
+.PalsCGB:
 	db $e4, $90, $fe
 ; c8188
 
-Unknown_c8188:
+.PalsSGB:
 	db $f0, $c0, $fe
 ; c818b
 
 BattleBGEffect_07: ; c818b (32:418b)
-	call Functionc9059
-	jr nz, .asm_c8195
-	ld de, Unknown_c819f
-	jr .asm_c8198
-.asm_c8195
-	ld de, Unknown_c81a2
-.asm_c8198
+	call BattleBGEffects_CheckSGB
+	jr nz, .sgb
+	ld de, .PalsCGB
+	jr .okay
+
+.sgb
+	ld de, .PalsSGB
+.okay
 	call Functionc8d57
 	ld [wOBP0], a
 	ret
@@ -309,16 +312,16 @@
 
 ; c819f (32:419f)
 
-Unknown_c819f:
+.PalsCGB:
 	db $e4, $d8, $fe
 ; c81a2
 
-Unknown_c81a2:
+.PalsSGB:
 	db $f0, $cc, $fe
 ; c81a5
 
 BattleBGEffect_08: ; c81a5 (32:41a5)
-	ld de, Unknown_c81af
+	ld de, .Pals
 	call Functionc8d57
 	ld [wBGP], a
 	ret
@@ -325,7 +328,7 @@
 
 ; c81af (32:41af)
 
-Unknown_c81af:
+.Pals:
 	db $1b, $63, $87, $fe
 ; c81b3
 
@@ -333,14 +336,14 @@
 	call BattleBGEffects_AnonJumptable
 .anon_jumptable
 	dw Functionc81c0
-	dw Functionc80e5
-	dw Functionc80e5
-	dw Functionc80e5
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
 	dw Functionc81e3
 
 
 Functionc81c0: ; c81c0 (32:41c0)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	push bc
 	call Functionc9038
 	jr nz, .six_by_six
@@ -347,6 +350,7 @@
 	hlcoord 12, 0
 	lb bc, 7, 7
 	jr .got_dims
+
 .six_by_six
 	hlcoord 2, 6
 	lb bc, 6, 6
@@ -376,6 +380,7 @@
 	jr nz, .six_by_six
 	ld de, Unknown_c8210
 	jr .got_dims
+
 .six_by_six
 	ld de, Unknown_c820c
 .got_dims
@@ -403,9 +408,9 @@
 .anon_jumptable
 	dw Functionc8223
 	dw Functionc825a
-	dw Functionc80e5
-	dw Functionc80e5
-	dw Functionc80e5
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
 	dw Functionc827a
 
 
@@ -418,7 +423,7 @@
 	ret
 
 .asm_c8230
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	push bc
 	call Functionc9038
 	jr nz, .asm_c8242
@@ -426,6 +431,7 @@
 	ld [BattleAnimTemps], a
 	ld a, $84
 	jr .asm_c8249
+
 .asm_c8242
 	ld a, $b9
 	ld [BattleAnimTemps], a
@@ -441,7 +447,7 @@
 	ret
 
 Functionc825a: ; c825a (32:425a)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	push bc
 	call Functionc9038
 	jr nz, .asm_c826b
@@ -448,6 +454,7 @@
 	hlcoord 12, 6
 	ld bc, $107
 	jr .asm_c8271
+
 .asm_c826b
 	hlcoord 2, 6
 	lb bc, 1, 6
@@ -469,9 +476,9 @@
 .anon_jumptable
 	dw Functionc8290
 	dw Functionc82c7
-	dw Functionc80e5
-	dw Functionc80e5
-	dw Functionc80e5
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
 	dw Functionc82e7
 
 
@@ -484,7 +491,7 @@
 	ret
 
 .asm_c829d
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	push bc
 	call Functionc9038
 	jr nz, .asm_c82af
@@ -492,6 +499,7 @@
 	ld [BattleAnimTemps], a
 	ld a, $84
 	jr .asm_c82b6
+
 .asm_c82af
 	ld a, $bb
 	ld [BattleAnimTemps], a
@@ -507,7 +515,7 @@
 	ret
 
 Functionc82c7: ; c82c7 (32:42c7)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	push bc
 	call Functionc9038
 	jr nz, .asm_c82d8
@@ -514,6 +522,7 @@
 	hlcoord 12, 5
 	ld bc, $207
 	jr .asm_c82de
+
 .asm_c82d8
 	hlcoord 2, 6
 	lb bc, 2, 6
@@ -539,16 +548,16 @@
 .anon_jumptable
 	dw Functionc8302
 	dw Functionc831d
-	dw Functionc80e5
-	dw Functionc80e5
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
 	dw Functionc8365
 
 
 Functionc8302: ; c8302 (32:4302)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc9038
 	ld [hl], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -555,16 +564,17 @@
 	jr z, .asm_c8315
 	ld a, $9
 	jr .asm_c8317
+
 .asm_c8315
 	ld a, $8
 .asm_c8317
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], a
 	ret
 
 Functionc831d: ; c831d (32:431d)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -587,6 +597,7 @@
 	dec e
 	jr nz, .asm_c832b
 	jr .asm_c8355
+
 .asm_c833e
 	hlcoord 19, 0
 	ld de, $807
@@ -610,8 +621,8 @@
 	ld [hBGMapThird], a
 	ld a, $1
 	ld [hBGMapMode], a
-	call Functionc80e5
-	ld hl, $3
+	call BattleBGEffects_IncrementJumptable
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	dec [hl]
 	ret
@@ -619,12 +630,12 @@
 Functionc8365: ; c8365 (32:4365)
 	xor a
 	ld [hBGMapMode], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
 	jr z, .asm_c8377
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld [hl], $1
 	ret
@@ -638,6 +649,7 @@
 	jr nz, .asm_c8385
 	ld de, Unknown_c839e
 	jr .asm_c8388
+
 .asm_c8385
 	ld de, Unknown_c8394
 .asm_c8388
@@ -669,6 +681,7 @@
 	jr nz, .asm_c83b2
 	ld de, Unknown_c83d7
 	jr .asm_c83b5
+
 .asm_c83b2
 	ld de, Unknown_c83c1
 .asm_c83b5
@@ -707,14 +720,14 @@
 	call BattleBGEffects_AnonJumptable
 .anon_jumptable
 	dw Functionc83fa
-	dw Functionc80e5
-	dw Functionc80e5
+	dw BattleBGEffects_IncrementJumptable
+	dw BattleBGEffects_IncrementJumptable
 	dw Functionc842a
 	dw Functionc8434
 
 
 Functionc83fa: ; c83fa (32:43fa)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld e, [hl]
 	ld d, $0
@@ -735,7 +748,7 @@
 	jr z, .asm_c841d
 	call Functionc8458
 .asm_c841d
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ld a, $1
 	ld [hBGMapMode], a
 	ret
@@ -747,7 +760,7 @@
 Functionc842a: ; c842a (32:442a)
 	xor a
 	ld [hBGMapMode], a
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld [hl], $0
 	ret
@@ -912,7 +925,7 @@
 
 
 Functionc854e: ; c854e (32:454e)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ld de, $202
 	call Functionc8f69
 
@@ -955,6 +968,7 @@
 	ld a, [hl]
 	pop hl
 	jr .asm_c858c
+
 .asm_c858b
 	xor a
 .asm_c858c
@@ -978,7 +992,7 @@
 
 
 Functionc85a2: ; c85a2 (32:45a2)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	ld [hLCDStatCustom], a
@@ -1006,13 +1020,13 @@
 	ret
 
 BattleBGEffect_31: ; c85ce (32:45ce)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld e, a
 	add $4
 	ld [hl], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and $f0
@@ -1020,11 +1034,11 @@
 	xor $ff
 	add $4
 	ld d, a
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld a, [hl]
 	ld [BattleAnimTemps], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	cp $20
@@ -1053,7 +1067,7 @@
 
 
 Functionc8610: ; c8610 (32:4610)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	ld [hLCDStatCustom], a
@@ -1063,13 +1077,13 @@
 	ld [hLCDStatCustom + 2], a
 	ld de, $605
 	call Functionc8f2e
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ret
 
 Functionc862e: ; c862e (32:462e)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	inc [hl]
@@ -1091,7 +1105,7 @@
 
 
 Functionc8648: ; c8648 (32:4648)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1116,11 +1130,11 @@
 
 
 Functionc866b: ; c866b (32:466b)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	call Functionc8ede
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld e, [hl]
 	ld d, $2
@@ -1147,7 +1161,7 @@
 
 
 Functionc8698: ; c8698 (32:4698)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1154,13 +1168,13 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $0
 	ret
 
 Functionc86af: ; c86af (32:46af)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $10
@@ -1170,7 +1184,7 @@
 	ret
 
 Functionc86bd: ; c86bd (32:46bd)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $ff
@@ -1180,20 +1194,20 @@
 	ret
 
 asm_c86cb: ; c86cb (32:46cb)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ret
 
 Functionc86cf: ; c86cf (32:46cf)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	ld d, $2
 	call Functionc905d
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	add [hl]
 	call Functionc86ea
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	add $4
@@ -1239,11 +1253,11 @@
 
 
 Functionc8712: ; c8712 (32:4712)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	call Functionc8ede
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld e, [hl]
 	ld d, $2
@@ -1302,7 +1316,7 @@
 
 
 Functionc876a: ; c876a (32:476a)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	call Functionc8ede
@@ -1309,30 +1323,30 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $1
 	ret
 
 Functionc8781: ; c8781 (32:4781)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and $3f
 	ld d, a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	cp d
 	ret nc
 	call Functionc901b
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	rlca
 	rlca
 	and $3
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	add [hl]
 	ld [hl], a
@@ -1352,7 +1366,7 @@
 
 
 Functionc87b2: ; c87b2 (32:47b2)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	call Functionc8ede
@@ -1359,16 +1373,16 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $2
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ret
 
 Functionc87cf: ; c87cf (32:47cf)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -1378,7 +1392,7 @@
 
 .asm_c87d9
 	ld [hl], $10
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 
 Functionc87de: ; c87de (32:47de)
 	ld a, [hLCDStatCustom + 1]
@@ -1386,7 +1400,7 @@
 	ld a, [hLCDStatCustom + 2]
 	sub l
 	dec a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	cp [hl]
 	ret c
@@ -1394,13 +1408,13 @@
 	push af
 	and $7
 	jr nz, .asm_c87f6
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	dec [hl]
 .asm_c87f6
 	pop af
 	call Functionc901b
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 rept 2
 	inc [hl]
@@ -1421,7 +1435,7 @@
 
 
 Functionc8810: ; c8810 (32:4810)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1428,7 +1442,7 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	call Functionc9038
@@ -1435,6 +1449,7 @@
 	jr nz, .asm_c882f
 	ld a, $2
 	jr .asm_c8831
+
 .asm_c882f
 	ld a, $fe
 .asm_c8831
@@ -1455,7 +1470,7 @@
 
 
 Functionc8842: ; c8842 (32:4842)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ef4
@@ -1462,7 +1477,7 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	call Functionc9038
@@ -1469,6 +1484,7 @@
 	jr nz, .asm_c8861
 	ld a, $2
 	jr .asm_c8863
+
 .asm_c8861
 	ld a, $fe
 .asm_c8863
@@ -1480,7 +1496,7 @@
 	ret
 
 Functionc8869: ; c8869 (32:4869)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $f8
@@ -1488,13 +1504,13 @@
 	cp $8
 	jr nz, .asm_c8879
 .asm_c8876
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 .asm_c8879
 	call Functionc88a5
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	add [hl]
 	ld [hl], a
@@ -1501,20 +1517,20 @@
 	ret
 
 Functionc8888: ; c8888 (32:4888)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
 	jr nz, .asm_c8893
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 .asm_c8893
 	call Functionc88a5
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	xor $ff
 	inc a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	add [hl]
 	ld [hl], a
@@ -1549,6 +1565,7 @@
 	ld l, a
 	ld [hl], $0
 	jr .asm_c88d6
+
 .asm_c88d0
 	ld a, [hLCDStatCustom + 2]
 	dec a
@@ -1585,7 +1602,7 @@
 	ret
 
 Functionc88f6: ; c88f6 (32:48f6)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1592,7 +1609,7 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	call Functionc9038
@@ -1599,6 +1616,7 @@
 	jr nz, .asm_c8915
 	ld a, $fe
 	jr .asm_c8917
+
 .asm_c8915
 	ld a, $2
 .asm_c8917
@@ -1630,7 +1648,7 @@
 
 
 Functionc8933: ; c8933 (32:4933)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1637,19 +1655,19 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ret
 
 Functionc894a: ; c894a (32:494a)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld d, $8
 	call Functionc905d
 	call Functionc900b
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	add $4
@@ -1669,7 +1687,7 @@
 
 
 Functionc896d: ; c896d (32:496d)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1677,7 +1695,7 @@
 	inc a
 	ld [hLCDStatCustom + 2], a
 	xor a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hli], a
 	ld [hl], a
@@ -1684,13 +1702,13 @@
 	ret
 
 Functionc8985: ; c8985 (32:4985)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld d, $6
 	call Functionc905d
 	push af
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	ld d, $2
@@ -1699,12 +1717,12 @@
 	pop af
 	add e
 	call Functionc900b
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	add $8
 	ld [hl], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	add $2
@@ -1724,7 +1742,7 @@
 
 
 Functionc89be: ; c89be (32:49be)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -1731,7 +1749,7 @@
 	ret
 
 Functionc89ca: ; c89ca (32:49ca)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $20
@@ -1743,7 +1761,7 @@
 	ret
 
 Functionc89da: ; c89da (32:49da)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -1767,7 +1785,7 @@
 
 
 Functionc89f7: ; c89f7 (32:49f7)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $42
 	call Functionc8ef4
@@ -1774,22 +1792,22 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $1
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $20
 	ret
 
 Functionc8a14: ; c8a14 (32:4a14)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	cp $38
 	ret nc
 	push af
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld d, $10
@@ -1799,7 +1817,7 @@
 	pop af
 	add d
 	call Functionc901b
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 rept 2
 	inc [hl]
@@ -1822,7 +1840,7 @@
 
 
 Functionc8a49: ; c8a49 (32:4a49)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ld a, $e4
 	call Functionc8ecb
 	ld a, $47
@@ -1840,8 +1858,9 @@
 	xor a
 	ld [hli], a
 	jr .asm_c8a60
+
 .asm_c8a69
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 
@@ -1855,13 +1874,13 @@
 	ret
 
 .asm_c8a79
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ld a, [hLCDStatCustom + 1]
 	inc a
 	ld [hLCDStatCustom + 1], a
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ret
 
 Functionc8a88: ; c8a88 (32:4a88)
@@ -1875,7 +1894,7 @@
 	ret
 
 .asm_c8a96
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ret
 
 Functionc8a9a: ; c8a9a (32:4a9a)
@@ -1900,7 +1919,7 @@
 	ret
 
 Functionc8ab0: ; c8ab0 (32:4ab0)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	inc [hl]
@@ -1929,17 +1948,17 @@
 
 
 Functionc8ad3: ; c8ad3 (32:4ad3)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $40
 	ret
 
 Functionc8ae5: ; c8ae5 (32:4ae5)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -1970,7 +1989,7 @@
 
 
 Functionc8b0e: ; c8b0e (32:4b0e)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ld a, $e4
 	call Functionc8ecb
 	ld a, $47
@@ -1982,7 +2001,7 @@
 	ret
 
 Functionc8b22: ; c8b22 (32:4b22)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	inc [hl]
@@ -2007,6 +2026,7 @@
 	ld e, [hl]
 	ld bc, $2f30
 	jr .asm_c8b5b
+
 .asm_c8b4d
 	ld hl, Unknown_c8be0
 	add hl, de
@@ -2044,7 +2064,7 @@
 
 asm_c8b7a: ; c8b7a (32:4b7a)
 	ld de, Jumptable_c8b81
-	call Functionc80ca
+	call BatttleBGEffects_GetNamedJumptablePointer
 	jp [hl]
 
 ; c8b81 (32:4b81)
@@ -2056,8 +2076,8 @@
 ; c8b87
 
 Functionc8b87: ; c8b87
-	call Functionc80e5
-	ld hl, $3
+	call BattleBGEffects_IncrementJumptable
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ret
@@ -2065,7 +2085,7 @@
 ; c8b91
 
 Functionc8b91: ; c8b91
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	inc [hl]
@@ -2235,7 +2255,7 @@
 
 
 Functionc8c68: ; c8c68 (32:4c68)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	call Functionc8ede
@@ -2242,16 +2262,16 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], $1
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $20
 	ret
 
 Functionc8c85: ; c8c85 (32:4c85)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -2259,7 +2279,7 @@
 	dec [hl]
 	and $1
 	ret nz
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	xor $ff
@@ -2281,7 +2301,7 @@
 
 
 Functionc8cab: ; c8cab (32:4cab)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	call Functionc8eca
 	ld a, $43
 	ld [hLCDStatCustom], a
@@ -2289,13 +2309,13 @@
 	ld [hLCDStatCustom + 1], a
 	ld a, $37
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 	ret
 
 Functionc8cc3: ; c8cc3 (32:4cc3)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $40
@@ -2303,7 +2323,7 @@
 	ld d, $6
 	call Functionc905d
 	call Functionc900b
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	add $2
@@ -2348,7 +2368,7 @@
 	ret
 
 Functionc8d0b: ; c8d0b (32:4d0b)
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -2359,13 +2379,13 @@
 
 .asm_c8d18
 	dec [hl]
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	and $f
 	jr z, .asm_c8d2a
 	dec [hl]
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -2376,7 +2396,7 @@
 	swap a
 	or [hl]
 	ld [hl], a
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	xor $ff
@@ -2386,7 +2406,7 @@
 	ret
 
 BattleBGEffect_35: ; c8d3a (32:4d3a)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	cp $40
@@ -2394,7 +2414,7 @@
 	ld d, $6
 	call Functionc905d
 	ld [hSCX], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	add $2
@@ -2407,7 +2427,7 @@
 	ret
 
 Functionc8d57: ; c8d57 (32:4d57)
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld a, [hl]
 	and a
@@ -2414,7 +2434,7 @@
 	jr z, .asm_c8d69
 
 	dec [hl]
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	call Functionc8eb2
@@ -2421,10 +2441,10 @@
 	ret
 
 .asm_c8d69
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
-	ld hl, $1
+	ld hl, BG_EFFECT_STRUCT_JT_INDEX
 	add hl, bc
 	ld [hl], a
 	call Functionc8eac
@@ -2436,7 +2456,7 @@
 	jr nz, asm_c8dd4
 	push de
 	ld de, Jumptable_c8d85
-	call Functionc80ca
+	call BatttleBGEffects_GetNamedJumptablePointer
 	pop de
 	jp [hl]
 
@@ -2447,7 +2467,7 @@
 
 
 Functionc8d8b: ; c8d8b (32:4d8b)
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
 	ld a, $e4
 	call Functionc8ecb
 	ld a, $47
@@ -2455,17 +2475,17 @@
 	ld a, [hLCDStatCustom + 2]
 	inc a
 	ld [hLCDStatCustom + 2], a
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld [hl], $0
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], a
 	ret
 
 Functionc8daa: ; c8daa (32:4daa)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and $f
@@ -2484,7 +2504,7 @@
 	ret
 
 .asm_c8dc3
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	dec [hl]
 	ret
@@ -2499,7 +2519,7 @@
 asm_c8dd4: ; c8dd4 (32:4dd4)
 	push de
 	ld de, Jumptable_c8ddd
-	call Functionc80ca
+	call BatttleBGEffects_GetNamedJumptablePointer
 	pop de
 	jp [hl]
 
@@ -2514,21 +2534,21 @@
 Functionc8de7: ; c8de7 (32:4de7)
 	call Functionc9038
 	jr nz, .asm_c8df2
-	call Functionc80e5
-	call Functionc80e5
+	call BattleBGEffects_IncrementJumptable
+	call BattleBGEffects_IncrementJumptable
 .asm_c8df2
-	call Functionc80e5
-	ld hl, $3
+	call BattleBGEffects_IncrementJumptable
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	ld [hl], $0
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld [hl], a
 	ret
 
 Functionc8e02: ; c8e02 (32:4e02)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and $f
@@ -2547,7 +2567,7 @@
 	ret
 
 .asm_c8e1b
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	dec [hl]
 	ret
@@ -2559,7 +2579,7 @@
 	ret
 
 Functionc8e2a: ; c8e2a (32:4e2a)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hl]
 	and $f
@@ -2578,7 +2598,7 @@
 	ret
 
 .asm_c8e43
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	dec [hl]
 	ret
@@ -2644,7 +2664,7 @@
 	ret
 
 Functionc8eac: ; c8eac (32:4eac)
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld a, [hl]
 	inc [hl]
@@ -2659,7 +2679,7 @@
 	cp $fe
 	jr nz, .asm_c8ec6
 	ld a, [de]
-	ld hl, $3
+	ld hl, BG_EFFECT_STRUCT_03
 	add hl, bc
 	ld [hl], $0
 .asm_c8ec6
@@ -2694,6 +2714,7 @@
 	jr nz, .asm_c8eea
 	ld de, $36
 	jr .asm_c8eed
+
 .asm_c8eea
 	ld de, $2f5e
 .asm_c8eed
@@ -2709,6 +2730,7 @@
 	jr nz, .asm_c8f00
 	ld de, $36
 	jr .asm_c8f03
+
 .asm_c8f00
 	ld de, $2d5e
 .asm_c8f03
@@ -2847,6 +2869,7 @@
 	ld [BattleAnimTemps + 1], a
 	pop af
 	jr .asm_c8faf
+
 .asm_c8fe1
 	pop bc
 	and a
@@ -2929,7 +2952,7 @@
 	ret
 
 Functionc9038: ; c9038 (32:5038)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hBattleTurn]
 	and $1
@@ -2937,7 +2960,7 @@
 	ret
 
 Functionc9042: ; c9042 (32:5042)
-	ld hl, $2
+	ld hl, BG_EFFECT_STRUCT_02
 	add hl, bc
 	ld a, [hBattleTurn]
 	and $1
@@ -2952,7 +2975,7 @@
 	and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND
 	ret
 
-Functionc9059: ; c9059 (32:5059)
+BattleBGEffects_CheckSGB: ; c9059 (32:5059)
 	ld a, [hSGB]
 	and a
 	ret
--- a/battle/core.asm
+++ b/battle/core.asm
@@ -3762,7 +3762,7 @@
 
 	xor a
 	ld [wNumHits], a
-	ld [wKickCounter], a
+	ld [wBattleAnimParam], a
 	call SetEnemyTurn
 	ld de, ANIM_SEND_OUT_MON
 	call Call_PlayBattleAnim
@@ -3770,7 +3770,7 @@
 	call BattleCheckEnemyShininess
 	jr nc, .not_shiny
 	ld a, 1 ; shiny anim
-	ld [wKickCounter], a
+	ld [wBattleAnimParam], a
 	ld de, ANIM_SEND_OUT_MON
 	call Call_PlayBattleAnim
 .not_shiny
@@ -4268,13 +4268,13 @@
 	call SetPlayerTurn
 	xor a
 	ld [wNumHits], a
-	ld [wKickCounter], a
+	ld [wBattleAnimParam], a
 	ld de, ANIM_SEND_OUT_MON
 	call Call_PlayBattleAnim
 	call BattleCheckPlayerShininess
 	jr nc, .not_shiny
-	ld a, $1
-	ld [wKickCounter], a
+	ld a, 1
+	ld [wBattleAnimParam], a
 	ld de, ANIM_SEND_OUT_MON
 	call Call_PlayBattleAnim
 
@@ -8398,7 +8398,7 @@
 	ld hl, BattleAnimCmd_RaiseSub
 	jr nz, GetBackpic_DoAnim ; substitute
 
-Function3f447: ; 3f447
+DropPlayerSub: ; 3f447
 	ld a, [wPlayerMinimized]
 	and a
 	ld hl, BattleAnimCmd_MinimizeOpp
@@ -8434,7 +8434,7 @@
 	ld hl, BattleAnimCmd_RaiseSub
 	jr nz, GetFrontpic_DoAnim
 
-Function3f486: ; 3f486
+DropEnemySub: ; 3f486
 	ld a, [wEnemyMinimized]
 	and a
 	ld hl, BattleAnimCmd_MinimizeOpp
@@ -9595,7 +9595,7 @@
 	ld a, 1
 	ld [hBattleTurn], a
 	ld a, 1
-	ld [wKickCounter], a
+	ld [wBattleAnimParam], a
 	ld de, ANIM_SEND_OUT_MON
 	call Call_PlayBattleAnim
 
--- a/battle/effect_commands.asm
+++ b/battle/effect_commands.asm
@@ -5584,12 +5584,12 @@
 
 StatUpAnimation: ; 36281
 	ld bc, wPlayerMinimized
-	ld hl, Function3f447
+	ld hl, DropPlayerSub
 	ld a, [hBattleTurn]
 	and a
 	jr z, .do_player ; 0x3628a $6
 	ld bc, wEnemyMinimized
-	ld hl, Function3f486
+	ld hl, DropEnemySub
 .do_player
 	ld a, BATTLE_VARS_MOVE_ANIM
 	call GetBattleVar
@@ -6174,11 +6174,11 @@
 
 
 BattleCommand_LowerSubNoAnim: ; 365c3
-	ld hl, Function3f447
+	ld hl, DropPlayerSub
 	ld a, [hBattleTurn]
 	and a
 	jr z, .PlayerTurn ; 365c9 $3
-	ld hl, Function3f486
+	ld hl, DropEnemySub
 .PlayerTurn
 	xor a
 	ld [hBGMapMode], a
@@ -9239,13 +9239,13 @@
 BattleCommand_HealMorn: ; 37b74
 ; healmorn
 	ld b, MORN
-	jr BattleCommand_HealMorn6c
+	jr BattleCommand_TimeBasedHealContinue
 ; 37b78
 
 BattleCommand_HealDay: ; 37b78
 ; healday
 	ld b, DAY
-	jr BattleCommand_HealMorn6c
+	jr BattleCommand_TimeBasedHealContinue
 ; 37b7c
 
 BattleCommand_HealNite: ; 37b7c
@@ -9254,7 +9254,7 @@
 	; fallthrough
 ; 37b7e
 
-BattleCommand_HealMorn6c: ; 37b7e
+BattleCommand_TimeBasedHealContinue: ; 37b7e
 ; Time- and weather-sensitive heal.
 
 	ld hl, BattleMonMaxHP
@@ -9284,7 +9284,7 @@
 	ld a, [TimeOfDay]
 	cp b
 	jr z, .Weather
-	dec c
+	dec c ; double
 
 .Weather
 	ld a, [Weather]
--- a/battle/objects/gfx_headers.asm
+++ b/battle/objects/gfx_headers.asm
@@ -3,51 +3,50 @@
 
 object_gfx: MACRO
 ; label, # tiles
-	db \2
-	db BANK(\1)
-	dw \1
+	db  \1
+	dba \2
 ENDM
 
-	object_gfx AnimObj00GFX, 0
-	object_gfx AnimObj01GFX, 21
-	object_gfx AnimObj02GFX, 6
-	object_gfx AnimObj03GFX, 6
-	object_gfx AnimObj04GFX, 20
-	object_gfx AnimObj05GFX, 26
-	object_gfx AnimObj06GFX, 18
-	object_gfx AnimObj07GFX, 12
-	object_gfx AnimObj08GFX, 9
-	object_gfx AnimObj09GFX, 17
-	object_gfx AnimObj10GFX, 6
-	object_gfx AnimObj11GFX, 10
-	object_gfx AnimObj12GFX, 9
-	object_gfx AnimObj13GFX, 13
-	object_gfx AnimObj14GFX, 16
-	object_gfx AnimObj15GFX, 2
-	object_gfx AnimObj16GFX, 11
-	object_gfx AnimObj17GFX, 9
-	object_gfx AnimObj18GFX, 9
-	object_gfx AnimObj19GFX, 19
-	object_gfx AnimObj20GFX, 10
-	object_gfx AnimObj21GFX, 12
-	object_gfx AnimObj22GFX, 18
-	object_gfx AnimObj23GFX, 13
-	object_gfx AnimObj24GFX, 10
-	object_gfx AnimObj25GFX, 27
-	object_gfx AnimObj26GFX, 12
-	object_gfx AnimObj27GFX, 14
-	object_gfx AnimObj28GFX, 16
-	object_gfx AnimObj29GFX, 7
-	object_gfx AnimObj30GFX, 8
-	object_gfx AnimObj31GFX, 40
-	object_gfx AnimObj32GFX, 36
-	object_gfx AnimObj33GFX, 16
-	object_gfx AnimObj34GFX, 48
-	object_gfx AnimObj35GFX, 18
-	object_gfx AnimObj36GFX, 38
-	object_gfx AnimObj37GFX, 35
-	object_gfx AnimObj38GFX, 18
-	object_gfx AnimObj39GFX, 24
-	object_gfx NULL, 1
-	object_gfx NULL, 1
+	object_gfx  0, AnimObj00GFX
+	object_gfx 21, AnimObj01GFX
+	object_gfx  6, AnimObj02GFX
+	object_gfx  6, AnimObj03GFX
+	object_gfx 20, AnimObj04GFX
+	object_gfx 26, AnimObj05GFX
+	object_gfx 18, AnimObj06GFX
+	object_gfx 12, AnimObj07GFX
+	object_gfx  9, AnimObj08GFX
+	object_gfx 17, AnimObj09GFX
+	object_gfx  6, AnimObj10GFX
+	object_gfx 10, AnimObj11GFX
+	object_gfx  9, AnimObj12GFX
+	object_gfx 13, AnimObj13GFX
+	object_gfx 16, AnimObj14GFX
+	object_gfx  2, AnimObj15GFX
+	object_gfx 11, AnimObj16GFX
+	object_gfx  9, AnimObj17GFX
+	object_gfx  9, AnimObj18GFX
+	object_gfx 19, AnimObj19GFX
+	object_gfx 10, AnimObj20GFX
+	object_gfx 12, AnimObj21GFX
+	object_gfx 18, AnimObj22GFX
+	object_gfx 13, AnimObj23GFX
+	object_gfx 10, AnimObj24GFX
+	object_gfx 27, AnimObj25GFX
+	object_gfx 12, AnimObj26GFX
+	object_gfx 14, AnimObj27GFX
+	object_gfx 16, AnimObj28GFX
+	object_gfx  7, AnimObj29GFX
+	object_gfx  8, AnimObj30GFX
+	object_gfx 40, AnimObj31GFX
+	object_gfx 36, AnimObj32GFX
+	object_gfx 16, AnimObj33GFX
+	object_gfx 48, AnimObj34GFX
+	object_gfx 18, AnimObj35GFX
+	object_gfx 38, AnimObj36GFX
+	object_gfx 35, AnimObj37GFX
+	object_gfx 18, AnimObj38GFX
+	object_gfx 24, AnimObj39GFX
+	object_gfx  1, NULL
+	object_gfx  1, NULL
 ; cfd9e
--- a/constants/animation_constants.asm
+++ b/constants/animation_constants.asm
@@ -299,35 +299,61 @@
 
 
 
-ANIM_BG_FLASH_INVERTED EQU $01
-ANIM_BG_FLASH_WHITE EQU $02
-ANIM_BG_WHITE_HUES EQU $03
-ANIM_BG_BLACK_HUES EQU $04
-ANIM_BG_ALTERNATE_HUES EQU $05
-; ???? EQU $06
-; ???? EQU $07
-; ???? EQU $08
-ANIM_BG_HIDE_MON EQU $09
-ANIM_BG_SHOW_MON EQU $0a
-ANIM_BG_ENTER_MON EQU $0b
-ANIM_BG_RETURN_MON EQU $0c
-ANIM_BG_SURF EQU $0d
-ANIM_BG_WHIRLPOOL EQU $0e
-ANIM_BG_TELEPORT EQU $0f
-ANIM_BG_NIGHT_SHADE EQU $10
-ANIM_BG_FEET_FOLLOW EQU $11
-ANIM_BG_HEAD_FOLLOW EQU $12
-ANIM_BG_DOUBLE_TEAM EQU $13
-ANIM_BG_ACID_ARMOR EQU $14
-ANIM_BG_RAPID_FLASH EQU $15 ; unused
+const_value SET 1
+	const ANIM_BG_FLASH_INVERTED
+	const ANIM_BG_FLASH_WHITE
+	const ANIM_BG_WHITE_HUES
+	const ANIM_BG_BLACK_HUES
+	const ANIM_BG_ALTERNATE_HUES
+	const ANIM_BG_06
+	const ANIM_BG_07
+	const ANIM_BG_08
+	const ANIM_BG_HIDE_MON
+	const ANIM_BG_SHOW_MON
+	const ANIM_BG_ENTER_MON
+	const ANIM_BG_RETURN_MON
+	const ANIM_BG_SURF
+	const ANIM_BG_WHIRLPOOL
+	const ANIM_BG_TELEPORT
+	const ANIM_BG_NIGHT_SHADE
+	const ANIM_BG_FEET_FOLLOW
+	const ANIM_BG_HEAD_FOLLOW
+	const ANIM_BG_DOUBLE_TEAM
+	const ANIM_BG_ACID_ARMOR
+	const ANIM_BG_RAPID_FLASH
+	const ANIM_BG_16
+	const ANIM_BG_17
+	const ANIM_BG_18
+	const ANIM_BG_19
+	const ANIM_BG_1A
+	const ANIM_BG_1B
+	const ANIM_BG_1C
+	const ANIM_BG_1D
+	const ANIM_BG_1E
+	const ANIM_BG_1F
+	const ANIM_BG_20
+	const ANIM_BG_21
+	const ANIM_BG_22
+	const ANIM_BG_23
+	const ANIM_BG_TACKLE
+	const ANIM_BG_25
+	const ANIM_BG_26
+	const ANIM_BG_27
+	const ANIM_BG_28
+	const ANIM_BG_PSYCHIC
+	const ANIM_BG_2A
+	const ANIM_BG_2B
+	const ANIM_BG_2C
+	const ANIM_BG_2D
+	const ANIM_BG_2E
+	const ANIM_BG_2F
+	const ANIM_BG_30
+	const ANIM_BG_31
+	const ANIM_BG_32
+	const ANIM_BG_VIBRATE_MON
+	const ANIM_BG_WOBBLE_MON
+	const ANIM_BG_35
 
-ANIM_BG_TACKLE EQU $24
-
-ANIM_BG_PSYCHIC EQU $29
-
-ANIM_BG_VIBRATE_MON EQU $33
-ANIM_BG_WOBBLE_MON EQU $34
-
 	const_def
 	const ANIM_MON_SLOW    ; 0
 	const ANIM_MON_NORMAL  ; 1
@@ -338,3 +364,9 @@
 	const ANIM_MON_UNUSED  ; 6
 	const ANIM_MON_EGG1    ; 7
 	const ANIM_MON_EGG2    ; 8
+
+	const_def
+	const BG_EFFECT_STRUCT_FUNCTION
+	const BG_EFFECT_STRUCT_JT_INDEX
+	const BG_EFFECT_STRUCT_02
+	const BG_EFFECT_STRUCT_03
--- a/wram.asm
+++ b/wram.asm
@@ -755,6 +755,7 @@
 	ds 2
 
 wBattleReward:: ds 3
+wBattleAnimParam::
 wKickCounter::
 wPresentPower:: ds 1
 wc68a::
@@ -3317,10 +3318,22 @@
 AnimObject10:: battle_anim_struct AnimObject10
 ActiveAnimObjectsEnd:: ; d3aa
 
+battle_bg_effect: MACRO
+\1_Function:: ds 1
+\1_01:: ds 1
+\1_02:: ds 1
+\1_03:: ds 1
+endm
+
 ActiveBGEffects:: ; d3fa
-	ds 4 * 5
+BGEffect1:: battle_bg_effect BGEffect1
+BGEffect2:: battle_bg_effect BGEffect2
+BGEffect3:: battle_bg_effect BGEffect3
+BGEffect4:: battle_bg_effect BGEffect4
+BGEffect5:: battle_bg_effect BGEffect5
+ActiveBGEffectsEnd::
 
-wNumActiveBattleAnims:: ds 1
+wNumActiveBattleAnims:: ds 1 ; d40e
 
 BattleAnimFlags:: ; d40f
 	ds 1
@@ -3336,14 +3349,12 @@
 	ds 1
 BattleAnimByte:: ; d417
 	ds 1
-w5_d418:: ds 1
+wBattleAnimOAMPointerLo:: ds 1 ; d418
 BattleAnimTemps:: ; d419
 	ds 8
 	ds 1
 w5_d422:: ds $32
 wBattleAnimEnd::
-	ds $e
-; d462
 
 SECTION "WRAM 5 MOBILE", WRAMX [$d800], BANK [5]
 w5_d800:: ds $200