shithub: pokecrystal

Download patch

ref: c5675927feefc60a286de1725515d1475a30ca2c
parent: 56d0f13e1601f1da5a551a2ad531e333a5be110e
author: Remy Oukaour <[email protected]>
date: Tue Dec 12 07:18:11 EST 2017

Identify more sprite-related constants

--- a/constants/sprite_data_constants.asm
+++ b/constants/sprite_data_constants.asm
@@ -1,18 +1,18 @@
 ; sprite_header struct members (see gfx/sprite_headers.asm)
 	const_def
-	const SPRITEHEADER_ADDR_LO
-	const SPRITEHEADER_ADDR_HI
-	const SPRITEHEADER_SIZE
-	const SPRITEHEADER_BANK
-	const SPRITEHEADER_TYPE
-	const SPRITEHEADER_PALETTE
+	const SPRITEHEADER_ADDR_LO ; 0
+	const SPRITEHEADER_ADDR_HI ; 1
+	const SPRITEHEADER_SIZE    ; 2
+	const SPRITEHEADER_BANK    ; 3
+	const SPRITEHEADER_TYPE    ; 4
+	const SPRITEHEADER_PALETTE ; 5
 NUM_SPRITEHEADER_FIELDS EQU const_value
 
 ; sprite types
 const_value SET 1
-	const WALKING_SPRITE
-	const STANDING_SPRITE
-	const STILL_SPRITE
+	const WALKING_SPRITE  ; 1
+	const STANDING_SPRITE ; 2
+	const STILL_SPRITE    ; 3
 
 ; sprite palettes
 	const_def
@@ -80,118 +80,118 @@
 
 ; MapObjectMovementPattern.Pointers indexes (see engine/map_objects.asm)
 	const_def
-	const SPRITEMOVEFN_00
-	const SPRITEMOVEFN_RANDOM_WALK_Y
-	const SPRITEMOVEFN_RANDOM_WALK_X
-	const SPRITEMOVEFN_RANDOM_WALK_XY
-	const SPRITEMOVEFN_SLOW_RANDOM_SPIN
-	const SPRITEMOVEFN_FAST_RANDOM_SPIN
-	const SPRITEMOVEFN_STANDING
-	const SPRITEMOVEFN_OBEY_DPAD
-	const SPRITEMOVEFN_08
-	const SPRITEMOVEFN_09
-	const SPRITEMOVEFN_0A
-	const SPRITEMOVEFN_0B
-	const SPRITEMOVEFN_0C
-	const SPRITEMOVEFN_0D
-	const SPRITEMOVEFN_0E
-	const SPRITEMOVEFN_FOLLOW
-	const SPRITEMOVEFN_SCRIPTED
-	const SPRITEMOVEFN_STRENGTH
-	const SPRITEMOVEFN_FOLLOWNOTEXACT
-	const SPRITEMOVEFN_SHADOW
-	const SPRITEMOVEFN_EMOTE
-	const SPRITEMOVEFN_BIG_SNORLAX
-	const SPRITEMOVEFN_BOUNCE
-	const SPRITEMOVEFN_SCREENSHAKE
-	const SPRITEMOVEFN_SPIN_CLOCKWISE
-	const SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE
-	const SPRITEMOVEFN_BOULDERDUST
-	const SPRITEMOVEFN_GRASS
+	const SPRITEMOVEFN_00                    ; 00
+	const SPRITEMOVEFN_RANDOM_WALK_Y         ; 01
+	const SPRITEMOVEFN_RANDOM_WALK_X         ; 02
+	const SPRITEMOVEFN_RANDOM_WALK_XY        ; 03
+	const SPRITEMOVEFN_SLOW_RANDOM_SPIN      ; 04
+	const SPRITEMOVEFN_FAST_RANDOM_SPIN      ; 05
+	const SPRITEMOVEFN_STANDING              ; 06
+	const SPRITEMOVEFN_OBEY_DPAD             ; 07
+	const SPRITEMOVEFN_08                    ; 08
+	const SPRITEMOVEFN_09                    ; 09
+	const SPRITEMOVEFN_0A                    ; 0a
+	const SPRITEMOVEFN_0B                    ; 0b
+	const SPRITEMOVEFN_0C                    ; 0c
+	const SPRITEMOVEFN_0D                    ; 0d
+	const SPRITEMOVEFN_0E                    ; 0e
+	const SPRITEMOVEFN_FOLLOW                ; 0f
+	const SPRITEMOVEFN_SCRIPTED              ; 10
+	const SPRITEMOVEFN_STRENGTH              ; 11
+	const SPRITEMOVEFN_FOLLOWNOTEXACT        ; 12
+	const SPRITEMOVEFN_SHADOW                ; 13
+	const SPRITEMOVEFN_EMOTE                 ; 14
+	const SPRITEMOVEFN_BIG_SNORLAX           ; 15
+	const SPRITEMOVEFN_BOUNCE                ; 16
+	const SPRITEMOVEFN_SCREENSHAKE           ; 17
+	const SPRITEMOVEFN_SPIN_CLOCKWISE        ; 18
+	const SPRITEMOVEFN_SPIN_COUNTERCLOCKWISE ; 19
+	const SPRITEMOVEFN_BOULDERDUST           ; 1a
+	const SPRITEMOVEFN_GRASS                 ; 1b
 
 ; StepTypesJumptable indexes (see engine/map_objects.asm)
 	const_def
-	const STEP_TYPE_00
-	const STEP_TYPE_SLEEP
-	const STEP_TYPE_NPC_WALK
-	const STEP_TYPE_03
-	const STEP_TYPE_04
-	const STEP_TYPE_05
-	const STEP_TYPE_PLAYER_WALK
-	const STEP_TYPE_07
-	const STEP_TYPE_NPC_JUMP
-	const STEP_TYPE_PLAYER_JUMP
-	const STEP_TYPE_HALF_STEP
-	const STEP_TYPE_BUMP
-	const STEP_TYPE_TELEPORT_FROM
-	const STEP_TYPE_TELEPORT_TO
-	const STEP_TYPE_SKYFALL
-	const STEP_TYPE_0F
-	const STEP_TYPE_GOT_BITE
-	const STEP_TYPE_ROCK_SMASH
-	const STEP_TYPE_RETURN_DIG
-	const STEP_TYPE_TRACKING_OBJECT
-	const STEP_TYPE_14
-	const STEP_TYPE_15
-	const STEP_TYPE_16
-	const STEP_TYPE_17
-	const STEP_TYPE_18
-	const STEP_TYPE_SKYFALL_TOP
+	const STEP_TYPE_00              ; 00
+	const STEP_TYPE_SLEEP           ; 01
+	const STEP_TYPE_NPC_WALK        ; 02
+	const STEP_TYPE_03              ; 03
+	const STEP_TYPE_04              ; 04
+	const STEP_TYPE_05              ; 05
+	const STEP_TYPE_PLAYER_WALK     ; 06
+	const STEP_TYPE_07              ; 07
+	const STEP_TYPE_NPC_JUMP        ; 08
+	const STEP_TYPE_PLAYER_JUMP     ; 09
+	const STEP_TYPE_HALF_STEP       ; 0a
+	const STEP_TYPE_BUMP            ; 0b
+	const STEP_TYPE_TELEPORT_FROM   ; 0c
+	const STEP_TYPE_TELEPORT_TO     ; 0d
+	const STEP_TYPE_SKYFALL         ; 0e
+	const STEP_TYPE_0F              ; 0f
+	const STEP_TYPE_GOT_BITE        ; 10
+	const STEP_TYPE_ROCK_SMASH      ; 11
+	const STEP_TYPE_RETURN_DIG      ; 12
+	const STEP_TYPE_TRACKING_OBJECT ; 13
+	const STEP_TYPE_14              ; 14
+	const STEP_TYPE_15              ; 15
+	const STEP_TYPE_16              ; 16
+	const STEP_TYPE_17              ; 17
+	const STEP_TYPE_18              ; 18
+	const STEP_TYPE_SKYFALL_TOP     ; 19
 
 ; PersonActionPairPointers indexes (see engine/map_object_action.asm)
 	const_def
-	const PERSON_ACTION_00
-	const PERSON_ACTION_STAND
-	const PERSON_ACTION_STEP
-	const PERSON_ACTION_BUMP
-	const PERSON_ACTION_SPIN
-	const PERSON_ACTION_SPIN_FLICKER
-	const PERSON_ACTION_FISHING
-	const PERSON_ACTION_SHADOW
-	const PERSON_ACTION_EMOTE
-	const PERSON_ACTION_BIG_SNORLAX
-	const PERSON_ACTION_BOUNCE
-	const PERSON_ACTION_WEIRD_TREE
-	const PERSON_ACTION_BIG_LAPRAS
-	const PERSON_ACTION_BIG_DOLL
-	const PERSON_ACTION_BOULDER_DUST
-	const PERSON_ACTION_GRASS_SHAKE
-	const PERSON_ACTION_SKYFALL
+	const PERSON_ACTION_00           ; 00
+	const PERSON_ACTION_STAND        ; 01
+	const PERSON_ACTION_STEP         ; 02
+	const PERSON_ACTION_BUMP         ; 03
+	const PERSON_ACTION_SPIN         ; 04
+	const PERSON_ACTION_SPIN_FLICKER ; 05
+	const PERSON_ACTION_FISHING      ; 06
+	const PERSON_ACTION_SHADOW       ; 07
+	const PERSON_ACTION_EMOTE        ; 08
+	const PERSON_ACTION_BIG_SNORLAX  ; 09
+	const PERSON_ACTION_BOUNCE       ; 0a
+	const PERSON_ACTION_WEIRD_TREE   ; 0b
+	const PERSON_ACTION_BIG_LAPRAS   ; 0c
+	const PERSON_ACTION_BIG_DOLL     ; 0d
+	const PERSON_ACTION_BOULDER_DUST ; 0e
+	const PERSON_ACTION_GRASS_SHAKE  ; 0f
+	const PERSON_ACTION_SKYFALL      ; 10
 
 ; Facings indexes (see data/facings.asm)
 	const_def
-	const FACING_STEP_DOWN_0
-	const FACING_STEP_DOWN_1
-	const FACING_STEP_DOWN_2
-	const FACING_STEP_DOWN_3
-	const FACING_STEP_UP_0
-	const FACING_STEP_UP_1
-	const FACING_STEP_UP_2
-	const FACING_STEP_UP_3
-	const FACING_STEP_LEFT_0
-	const FACING_STEP_LEFT_1
-	const FACING_STEP_LEFT_2
-	const FACING_STEP_LEFT_3
-	const FACING_STEP_RIGHT_0
-	const FACING_STEP_RIGHT_1
-	const FACING_STEP_RIGHT_2
-	const FACING_STEP_RIGHT_3
-	const FACING_FISH_DOWN
-	const FACING_FISH_UP
-	const FACING_FISH_LEFT
-	const FACING_FISH_RIGHT
-	const FACING_EMOTE
-	const FACING_SHADOW
-	const FACING_BIG_DOLL_ASYM
-	const FACING_BIG_DOLL_SYM
-	const FACING_WEIRD_TREE_0
-	const FACING_WEIRD_TREE_1
-	const FACING_WEIRD_TREE_2
-	const FACING_WEIRD_TREE_3
-	const FACING_BOULDER_DUST_1
-	const FACING_BOULDER_DUST_2
-	const FACING_GRASS_1
-	const FACING_GRASS_2
+	const FACING_STEP_DOWN_0    ; 00
+	const FACING_STEP_DOWN_1    ; 01
+	const FACING_STEP_DOWN_2    ; 02
+	const FACING_STEP_DOWN_3    ; 03
+	const FACING_STEP_UP_0      ; 04
+	const FACING_STEP_UP_1      ; 05
+	const FACING_STEP_UP_2      ; 06
+	const FACING_STEP_UP_3      ; 07
+	const FACING_STEP_LEFT_0    ; 08
+	const FACING_STEP_LEFT_1    ; 09
+	const FACING_STEP_LEFT_2    ; 0a
+	const FACING_STEP_LEFT_3    ; 0b
+	const FACING_STEP_RIGHT_0   ; 0c
+	const FACING_STEP_RIGHT_1   ; 0d
+	const FACING_STEP_RIGHT_2   ; 0e
+	const FACING_STEP_RIGHT_3   ; 0f
+	const FACING_FISH_DOWN      ; 10
+	const FACING_FISH_UP        ; 11
+	const FACING_FISH_LEFT      ; 12
+	const FACING_FISH_RIGHT     ; 13
+	const FACING_EMOTE          ; 14
+	const FACING_SHADOW         ; 15
+	const FACING_BIG_DOLL_ASYM  ; 16
+	const FACING_BIG_DOLL_SYM   ; 17
+	const FACING_WEIRD_TREE_0   ; 18
+	const FACING_WEIRD_TREE_1   ; 19
+	const FACING_WEIRD_TREE_2   ; 1a
+	const FACING_WEIRD_TREE_3   ; 1b
+	const FACING_BOULDER_DUST_1 ; 1c
+	const FACING_BOULDER_DUST_2 ; 1d
+	const FACING_GRASS_1        ; 1e
+	const FACING_GRASS_2        ; 1f
 
 ; sprite_anim_struct members (see macros/wram.asm)
 	const_def
@@ -214,51 +214,51 @@
 
 ; SpriteAnimSeqData indexes (see data/sprite_anim_seqs.asm)
 	const_def
-	const SPRITE_ANIM_INDEX_PARTY_MON
-	const SPRITE_ANIM_INDEX_GS_TITLE_TRAIL
-	const SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR
-	const SPRITE_ANIM_INDEX_GAMEFREAK_LOGO
-	const SPRITE_ANIM_INDEX_GS_INTRO_STAR
-	const SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE
-	const SPRITE_ANIM_INDEX_SLOTS_GOLEM
-	const SPRITE_ANIM_INDEX_SLOTS_CHANSEY
-	const SPRITE_ANIM_INDEX_SLOTS_EGG
-	const SPRITE_ANIM_INDEX_COMPOSE_MAIL_CURSOR
-	const SPRITE_ANIM_INDEX_RED_WALK
-	const SPRITE_ANIM_INDEX_0B
-	const SPRITE_ANIM_INDEX_DUMMY_GAME
-	const SPRITE_ANIM_INDEX_POKEGEAR_ARROW
-	const SPRITE_ANIM_INDEX_TRADE_POKE_BALL
-	const SPRITE_ANIM_INDEX_TRADE_POOF
-	const SPRITE_ANIM_INDEX_TRADE_TUBE_BULGE
-	const SPRITE_ANIM_INDEX_TRADEMON_ICON
-	const SPRITE_ANIM_INDEX_TRADEMON_BUBBLE
-	const SPRITE_ANIM_INDEX_EVOLUTION_BALL_OF_LIGHT
-	const SPRITE_ANIM_INDEX_RADIO_TUNING_KNOB
-	const SPRITE_ANIM_INDEX_MAGNET_TRAIN_RED
-	const SPRITE_ANIM_INDEX_LEAF
-	const SPRITE_ANIM_INDEX_CUT_TREE
-	const SPRITE_ANIM_INDEX_FLY_LEAF
-	const SPRITE_ANIM_INDEX_EGG_CRACK
-	const SPRITE_ANIM_INDEX_1A
-	const SPRITE_ANIM_INDEX_HEADBUTT
-	const SPRITE_ANIM_INDEX_EGG_HATCH
-	const SPRITE_ANIM_INDEX_1D
-	const SPRITE_ANIM_INDEX_BLUE_WALK
-	const SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE
-	const SPRITE_ANIM_INDEX_20
-	const SPRITE_ANIM_INDEX_21
-	const SPRITE_ANIM_INDEX_22
-	const SPRITE_ANIM_INDEX_23
-	const SPRITE_ANIM_INDEX_24
-	const SPRITE_ANIM_INDEX_25
-	const SPRITE_ANIM_INDEX_INTRO_SUICUNE
-	const SPRITE_ANIM_INDEX_INTRO_PICHU
-	const SPRITE_ANIM_INDEX_INTRO_WOOPER
-	const SPRITE_ANIM_INDEX_INTRO_UNOWN
-	const SPRITE_ANIM_INDEX_INTRO_UNOWN_F
-	const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY
-	const SPRITE_ANIM_INDEX_CELEBI
+	const SPRITE_ANIM_INDEX_PARTY_MON               ; 00
+	const SPRITE_ANIM_INDEX_GS_TITLE_TRAIL          ; 01
+	const SPRITE_ANIM_INDEX_NAMING_SCREEN_CURSOR    ; 02
+	const SPRITE_ANIM_INDEX_GAMEFREAK_LOGO          ; 03
+	const SPRITE_ANIM_INDEX_GS_INTRO_STAR           ; 04
+	const SPRITE_ANIM_INDEX_GS_INTRO_SPARKLE        ; 05
+	const SPRITE_ANIM_INDEX_SLOTS_GOLEM             ; 06
+	const SPRITE_ANIM_INDEX_SLOTS_CHANSEY           ; 07
+	const SPRITE_ANIM_INDEX_SLOTS_EGG               ; 08
+	const SPRITE_ANIM_INDEX_COMPOSE_MAIL_CURSOR     ; 09
+	const SPRITE_ANIM_INDEX_RED_WALK                ; 0a
+	const SPRITE_ANIM_INDEX_UNUSED_CURSOR           ; 0b
+	const SPRITE_ANIM_INDEX_DUMMY_GAME              ; 0c
+	const SPRITE_ANIM_INDEX_POKEGEAR_ARROW          ; 0d
+	const SPRITE_ANIM_INDEX_TRADE_POKE_BALL         ; 0e
+	const SPRITE_ANIM_INDEX_TRADE_POOF              ; 0f
+	const SPRITE_ANIM_INDEX_TRADE_TUBE_BULGE        ; 10
+	const SPRITE_ANIM_INDEX_TRADEMON_ICON           ; 11
+	const SPRITE_ANIM_INDEX_TRADEMON_BUBBLE         ; 12
+	const SPRITE_ANIM_INDEX_EVOLUTION_BALL_OF_LIGHT ; 13
+	const SPRITE_ANIM_INDEX_RADIO_TUNING_KNOB       ; 14
+	const SPRITE_ANIM_INDEX_MAGNET_TRAIN_RED        ; 15
+	const SPRITE_ANIM_INDEX_LEAF                    ; 16
+	const SPRITE_ANIM_INDEX_CUT_TREE                ; 17
+	const SPRITE_ANIM_INDEX_FLY_LEAF                ; 18
+	const SPRITE_ANIM_INDEX_EGG_CRACK               ; 19
+	const SPRITE_ANIM_INDEX_1A                      ; 1a
+	const SPRITE_ANIM_INDEX_HEADBUTT                ; 1b
+	const SPRITE_ANIM_INDEX_EGG_HATCH               ; 1c
+	const SPRITE_ANIM_INDEX_1D                      ; 1d
+	const SPRITE_ANIM_INDEX_BLUE_WALK               ; 1e
+	const SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE       ; 1f
+	const SPRITE_ANIM_INDEX_MOBILE_TRADE_SENT_BALL  ; 20
+	const SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_BALL    ; 21
+	const SPRITE_ANIM_INDEX_22                      ; 22
+	const SPRITE_ANIM_INDEX_23                      ; 23
+	const SPRITE_ANIM_INDEX_24                      ; 24
+	const SPRITE_ANIM_INDEX_25                      ; 25
+	const SPRITE_ANIM_INDEX_INTRO_SUICUNE           ; 26
+	const SPRITE_ANIM_INDEX_INTRO_PICHU             ; 27
+	const SPRITE_ANIM_INDEX_INTRO_WOOPER            ; 28
+	const SPRITE_ANIM_INDEX_INTRO_UNOWN             ; 29
+	const SPRITE_ANIM_INDEX_INTRO_UNOWN_F           ; 2a
+	const SPRITE_ANIM_INDEX_INTRO_SUICUNE_AWAY      ; 2b
+	const SPRITE_ANIM_INDEX_CELEBI                  ; 2c
 
 ; DoAnimFrame.Jumptable indexes (see engine/sprite_anims.asm)
 	const_def
@@ -275,7 +275,7 @@
 	const SPRITE_ANIM_SEQ_SLOTS_CHANSEY
 	const SPRITE_ANIM_SEQ_SLOTS_EGG
 	const SPRITE_ANIM_SEQ_MAIL_CURSOR
-	const SPRITE_ANIM_SEQ_0D
+	const SPRITE_ANIM_SEQ_FOR_UNUSED_CURSOR
 	const SPRITE_ANIM_SEQ_DUMMY_GAME_CURSOR
 	const SPRITE_ANIM_SEQ_POKEGEAR_ARROW
 	const SPRITE_ANIM_SEQ_TRADE_POKE_BALL
@@ -347,8 +347,8 @@
 	const SPRITE_ANIM_FRAMESET_2C ; unused?
 	const SPRITE_ANIM_FRAMESET_BLUE_WALK
 	const SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_BLUE
-	const SPRITE_ANIM_FRAMESET_2F
-	const SPRITE_ANIM_FRAMESET_30
+	const SPRITE_ANIM_FRAMESET_MOBILE_TRADE_SENT_BALL
+	const SPRITE_ANIM_FRAMESET_MOBILE_TRADE_OT_BALL
 	const SPRITE_ANIM_FRAMESET_31
 	const SPRITE_ANIM_FRAMESET_32
 	const SPRITE_ANIM_FRAMESET_33
@@ -401,24 +401,24 @@
 	const SPRITE_ANIM_FRAME_IDX_1D
 	const SPRITE_ANIM_FRAME_IDX_GS_TITLE_TRAIL_1 ; 1e
 	const SPRITE_ANIM_FRAME_IDX_GS_TITLE_TRAIL_2 ; 1f
-	const SPRITE_ANIM_FRAME_IDX_20
+	const SPRITE_ANIM_FRAME_IDX_TEXT_ENTRY_CURSOR ; 20
 	const SPRITE_ANIM_FRAME_IDX_FOR_FRAMESET_09 ; 21
 	const SPRITE_ANIM_FRAME_IDX_22
-	const SPRITE_ANIM_FRAME_IDX_23
-	const SPRITE_ANIM_FRAME_IDX_24
-	const SPRITE_ANIM_FRAME_IDX_25
-	const SPRITE_ANIM_FRAME_IDX_26
-	const SPRITE_ANIM_FRAME_IDX_27
-	const SPRITE_ANIM_FRAME_IDX_28
-	const SPRITE_ANIM_FRAME_IDX_29
-	const SPRITE_ANIM_FRAME_IDX_2A
-	const SPRITE_ANIM_FRAME_IDX_2B
-	const SPRITE_ANIM_FRAME_IDX_2C
-	const SPRITE_ANIM_FRAME_IDX_2D
-	const SPRITE_ANIM_FRAME_IDX_2E
+	const SPRITE_ANIM_FRAME_IDX_GS_INTRO_STAR ; 23
+	const SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_1 ; 24
+	const SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_2 ; 25
+	const SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_3 ; 26
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_1 ; 27
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_2 ; 28
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1 ; 29
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_2 ; 2a
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_3 ; 2b
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_4 ; 2c
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_5 ; 2d
+	const SPRITE_ANIM_FRAME_IDX_SLOTS_EGG ; 2e
 	const SPRITE_ANIM_FRAME_IDX_STILL_CURSOR ; 2f
-	const SPRITE_ANIM_FRAME_IDX_30
-	const SPRITE_ANIM_FRAME_IDX_31
+	const SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1 ; 30
+	const SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2 ; 31
 	const SPRITE_ANIM_FRAME_IDX_32
 	const SPRITE_ANIM_FRAME_IDX_33
 	const SPRITE_ANIM_FRAME_IDX_34
@@ -470,8 +470,8 @@
 	const SPRITE_ANIM_FRAME_IDX_62
 	const SPRITE_ANIM_FRAME_IDX_BLUE_WALK_1 ; 63
 	const SPRITE_ANIM_FRAME_IDX_BLUE_WALK_2 ; 64
-	const SPRITE_ANIM_FRAME_IDX_65
-	const SPRITE_ANIM_FRAME_IDX_66
+	const SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_1 ; 65
+	const SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_2 ; 66
 	const SPRITE_ANIM_FRAME_IDX_67
 	const SPRITE_ANIM_FRAME_IDX_68
 	const SPRITE_ANIM_FRAME_IDX_69
@@ -498,14 +498,14 @@
 	const SPRITE_ANIM_FRAME_IDX_INTRO_SUICUNE_AWAY ; 7e
 	const SPRITE_ANIM_FRAME_IDX_CELEBI_1 ; 7f
 	const SPRITE_ANIM_FRAME_IDX_CELEBI_2 ; 80
-	const SPRITE_ANIM_FRAME_IDX_81
-	const SPRITE_ANIM_FRAME_IDX_82
-	const SPRITE_ANIM_FRAME_IDX_83
-	const SPRITE_ANIM_FRAME_IDX_84
-	const SPRITE_ANIM_FRAME_IDX_85
-	const SPRITE_ANIM_FRAME_IDX_86
-	const SPRITE_ANIM_FRAME_IDX_87
-	const SPRITE_ANIM_FRAME_IDX_88
-	const SPRITE_ANIM_FRAME_IDX_89
-	const SPRITE_ANIM_FRAME_IDX_8A
-	const SPRITE_ANIM_FRAME_IDX_8B
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_1 ; 81
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_2 ; 82
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_3 ; 83
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_4 ; 84
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_5 ; 85
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_6 ; 86
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_7 ; 87
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_8 ; 88
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_9 ; 89
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_10 ; 8A
+	const SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_11 ; 8B
--- a/data/sprite_anim_frames.asm
+++ b/data/sprite_anim_frames.asm
@@ -47,8 +47,8 @@
 	dw .Frameset_2c
 	dw .Frameset_BlueWalk
 	dw .Frameset_MagnetTrainBlue
-	dw .Frameset_2f
-	dw .Frameset_30
+	dw .Frameset_MobileTradeSentBall
+	dw .Frameset_MobileTradeOTBall
 	dw .Frameset_31
 	dw .Frameset_32
 	dw .Frameset_33
@@ -117,10 +117,10 @@
 	dorestart
 
 .Frameset_MagnetTrainBlue:
-	frame SPRITE_ANIM_FRAME_IDX_65,  8
-	frame SPRITE_ANIM_FRAME_IDX_66,  8
-	frame SPRITE_ANIM_FRAME_IDX_65,  8
-	frame SPRITE_ANIM_FRAME_IDX_66,  8, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_1,  8
+	frame SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_2,  8
+	frame SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_1,  8
+	frame SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_2,  8, OAM_X_FLIP
 	dorestart
 
 .Frameset_GSTitleTrail:
@@ -129,7 +129,7 @@
 	dorestart
 
 .Frameset_TextEntryCursor:
-	frame SPRITE_ANIM_FRAME_IDX_20,  1
+	frame SPRITE_ANIM_FRAME_IDX_TEXT_ENTRY_CURSOR,  1
 	dorepeat  1
 	dorestart
 
@@ -139,59 +139,59 @@
 	dorestart
 
 .Frameset_GameFreakLogo:
-	frame SPRITE_ANIM_FRAME_IDX_81, 12
-	frame SPRITE_ANIM_FRAME_IDX_82,  1
-	frame SPRITE_ANIM_FRAME_IDX_83,  1
-	frame SPRITE_ANIM_FRAME_IDX_82,  4
-	frame SPRITE_ANIM_FRAME_IDX_81, 12
-	frame SPRITE_ANIM_FRAME_IDX_82, 12
-	frame SPRITE_ANIM_FRAME_IDX_83,  4
-	frame SPRITE_ANIM_FRAME_IDX_84, 32
-	frame SPRITE_ANIM_FRAME_IDX_85,  3
-	frame SPRITE_ANIM_FRAME_IDX_86,  3
-	frame SPRITE_ANIM_FRAME_IDX_87,  4
-	frame SPRITE_ANIM_FRAME_IDX_88,  4
-	frame SPRITE_ANIM_FRAME_IDX_89,  4
-	frame SPRITE_ANIM_FRAME_IDX_8A, 10
-	frame SPRITE_ANIM_FRAME_IDX_8B,  7
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_1,  12
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_2,   1
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_3,   1
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_2,   4
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_1,  12
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_2,  12
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_3,   4
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_4,  32
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_5,   3
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_6,   3
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_7,   4
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_8,   4
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_9,   4
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_10, 10
+	frame SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_11,  7
 	endanim
 
 .Frameset_GSIntroStar:
-	frame SPRITE_ANIM_FRAME_IDX_23,  3
-	frame SPRITE_ANIM_FRAME_IDX_23,  3, OAM_Y_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_STAR,  3
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_STAR,  3, OAM_Y_FLIP
 	dorestart
 
 .Frameset_GSIntroSparkle:
-	frame SPRITE_ANIM_FRAME_IDX_24,  2
-	frame SPRITE_ANIM_FRAME_IDX_25,  2
-	frame SPRITE_ANIM_FRAME_IDX_26,  2
-	frame SPRITE_ANIM_FRAME_IDX_25,  2
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_1,  2
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_2,  2
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_3,  2
+	frame SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_2,  2
 	dorestart
 
 .Frameset_SlotsGolem:
-	frame SPRITE_ANIM_FRAME_IDX_27,  7
-	frame SPRITE_ANIM_FRAME_IDX_28,  7
-	frame SPRITE_ANIM_FRAME_IDX_27,  7, OAM_Y_FLIP
-	frame SPRITE_ANIM_FRAME_IDX_28,  7, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_1,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_2,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_1,  7, OAM_Y_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_2,  7, OAM_X_FLIP
 	dorestart
 
 .Frameset_SlotsChansey:
-	frame SPRITE_ANIM_FRAME_IDX_29,  7
-	frame SPRITE_ANIM_FRAME_IDX_2A,  7
-	frame SPRITE_ANIM_FRAME_IDX_29,  7
-	frame SPRITE_ANIM_FRAME_IDX_2B,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_2,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_3,  7
 	dorestart
 
 .Frameset_SlotsChansey2:
-	frame SPRITE_ANIM_FRAME_IDX_29,  7
-	frame SPRITE_ANIM_FRAME_IDX_2C,  7
-	frame SPRITE_ANIM_FRAME_IDX_2D,  7
-	frame SPRITE_ANIM_FRAME_IDX_2C,  7
-	frame SPRITE_ANIM_FRAME_IDX_29,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_4,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_5,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_4,  7
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1,  7
 	endanim
 
 .Frameset_SlotsEgg:
-	frame SPRITE_ANIM_FRAME_IDX_2E, 20
+	frame SPRITE_ANIM_FRAME_IDX_SLOTS_EGG, 20
 	endanim
 
 .Frameset_StillCursor:
@@ -199,14 +199,14 @@
 	endanim
 
 .Frameset_TradePokeBall:
-	frame SPRITE_ANIM_FRAME_IDX_30, 32
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1, 32
 	endanim
 
 .Frameset_TradePokeBall0:
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
 	dorestart
 
 .Frameset_TradePoof:
@@ -370,37 +370,37 @@
 	frame SPRITE_ANIM_FRAME_IDX_62,  2
 	endanim
 
-.Frameset_2f:
+.Frameset_MobileTradeSentBall:
 	frame SPRITE_ANIM_FRAME_IDX_32,  3
 	frame SPRITE_ANIM_FRAME_IDX_33,  3
 	frame SPRITE_ANIM_FRAME_IDX_34,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
 	endanim
 
-.Frameset_30:
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3
-	frame SPRITE_ANIM_FRAME_IDX_30,  3
-	frame SPRITE_ANIM_FRAME_IDX_31,  3, OAM_X_FLIP
+.Frameset_MobileTradeOTBall:
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1,  3
+	frame SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2,  3, OAM_X_FLIP
 	frame SPRITE_ANIM_FRAME_IDX_32,  3
 	frame SPRITE_ANIM_FRAME_IDX_33,  3
 	frame SPRITE_ANIM_FRAME_IDX_34,  3
--- a/data/sprite_anim_oam.asm
+++ b/data/sprite_anim_oam.asm
@@ -33,24 +33,24 @@
 	dbw $42, .OAMData_1b ; SPRITE_ANIM_FRAME_IDX_1D
 	dbw $f8, .OAMData_GSTitleTrail ; SPRITE_ANIM_FRAME_IDX_GS_TITLE_TRAIL_1
 	dbw $fa, .OAMData_GSTitleTrail ; SPRITE_ANIM_FRAME_IDX_GS_TITLE_TRAIL_2
-	dbw $00, .OAMData_20 ; SPRITE_ANIM_FRAME_IDX_20
+	dbw $00, .OAMData_TextEntryCursor ; SPRITE_ANIM_FRAME_IDX_TEXT_ENTRY_CURSOR
 	dbw $00, .OAMData_ForFrameset09 ; SPRITE_ANIM_FRAME_IDX_FOR_FRAMESET_09
 	dbw $00, .OAMData_22 ; SPRITE_ANIM_FRAME_IDX_22
-	dbw $0f, .OAMData_23 ; SPRITE_ANIM_FRAME_IDX_23
-	dbw $11, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_24
-	dbw $12, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_25
-	dbw $13, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_26
-	dbw $00, .OAMData_27 ; SPRITE_ANIM_FRAME_IDX_27
-	dbw $08, .OAMData_27 ; SPRITE_ANIM_FRAME_IDX_28
-	dbw $10, .OAMData_29 ; SPRITE_ANIM_FRAME_IDX_29
-	dbw $10, .OAMData_2a ; SPRITE_ANIM_FRAME_IDX_2A
-	dbw $10, .OAMData_2b ; SPRITE_ANIM_FRAME_IDX_2B
-	dbw $10, .OAMData_2c ; SPRITE_ANIM_FRAME_IDX_2C
-	dbw $10, .OAMData_2d ; SPRITE_ANIM_FRAME_IDX_2D
-	dbw $3a, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_2E
+	dbw $0f, .OAMData_GSIntroStar ; SPRITE_ANIM_FRAME_IDX_GS_INTRO_STAR
+	dbw $11, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_1
+	dbw $12, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_2
+	dbw $13, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_GS_INTRO_SPARKLE_3
+	dbw $00, .OAMData_SlotsGolem ; SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_1
+	dbw $08, .OAMData_SlotsGolem ; SPRITE_ANIM_FRAME_IDX_SLOTS_GOLEM_2
+	dbw $10, .OAMData_SlotsChansey1 ; SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_1
+	dbw $10, .OAMData_SlotsChansey2 ; SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_2
+	dbw $10, .OAMData_SlotsChansey3 ; SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_3
+	dbw $10, .OAMData_SlotsChansey4 ; SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_4
+	dbw $10, .OAMData_SlotsChansey5 ; SPRITE_ANIM_FRAME_IDX_SLOTS_CHANSEY_5
+	dbw $3a, .OAMData_02 ; SPRITE_ANIM_FRAME_IDX_SLOTS_EGG
 	dbw $00, .OAMData_RedWalk ; SPRITE_ANIM_FRAME_IDX_STILL_CURSOR
-	dbw $00, .OAMData_30 ; SPRITE_ANIM_FRAME_IDX_30
-	dbw $02, .OAMData_31 ; SPRITE_ANIM_FRAME_IDX_31
+	dbw $00, .OAMData_TradePokeBall1 ; SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_1
+	dbw $02, .OAMData_31 ; SPRITE_ANIM_FRAME_IDX_TRADE_POKE_BALL_2
 	dbw $06, .OAMData_19 ; SPRITE_ANIM_FRAME_IDX_32
 	dbw $0a, .OAMData_19 ; SPRITE_ANIM_FRAME_IDX_33
 	dbw $0e, .OAMData_19 ; SPRITE_ANIM_FRAME_IDX_34
@@ -102,8 +102,8 @@
 	dbw $00, .OAMData_62 ; SPRITE_ANIM_FRAME_IDX_62
 	dbw $00, .OAMData_BlueWalk ; SPRITE_ANIM_FRAME_IDX_BLUE_WALK_1
 	dbw $04, .OAMData_BlueWalk ; SPRITE_ANIM_FRAME_IDX_BLUE_WALK_2
-	dbw $00, .OAMData_65 ; SPRITE_ANIM_FRAME_IDX_65
-	dbw $04, .OAMData_65 ; SPRITE_ANIM_FRAME_IDX_66
+	dbw $00, .OAMData_MagnetTrainBlue ; SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_1
+	dbw $04, .OAMData_MagnetTrainBlue ; SPRITE_ANIM_FRAME_IDX_MAGNET_TRAIN_BLUE_2
 	dbw $20, .OAMData_67 ; SPRITE_ANIM_FRAME_IDX_67
 	dbw $21, .OAMData_67 ; SPRITE_ANIM_FRAME_IDX_68
 	dbw $22, .OAMData_69 ; SPRITE_ANIM_FRAME_IDX_69
@@ -130,17 +130,17 @@
 	dbw $80, .OAMData_IntroSuicuneAway ; SPRITE_ANIM_FRAME_IDX_INTRO_SUICUNE_AWAY
 	dbw $00, .OAMData_Celebi ; SPRITE_ANIM_FRAME_IDX_CELEBI_1
 	dbw $04, .OAMData_Celebi ; SPRITE_ANIM_FRAME_IDX_CELEBI_2
-	dbw $d0, .OAMData_81 ; SPRITE_ANIM_FRAME_IDX_81
-	dbw $d3, .OAMData_81 ; SPRITE_ANIM_FRAME_IDX_82
-	dbw $d6, .OAMData_81 ; SPRITE_ANIM_FRAME_IDX_83
-	dbw $6c, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_84
-	dbw $68, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_85
-	dbw $64, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_86
-	dbw $60, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_87
-	dbw $0c, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_88
-	dbw $08, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_89
-	dbw $04, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_8A
-	dbw $00, .OAMData_84 ; SPRITE_ANIM_FRAME_IDX_8B
+	dbw $d0, .OAMData_GameFreakLogo1_3 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_1
+	dbw $d3, .OAMData_GameFreakLogo1_3 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_2
+	dbw $d6, .OAMData_GameFreakLogo1_3 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_3
+	dbw $6c, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_4
+	dbw $68, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_5
+	dbw $64, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_6
+	dbw $60, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_7
+	dbw $0c, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_8
+	dbw $08, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_9
+	dbw $04, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_10
+	dbw $00, .OAMData_GameFreakLogo4_11 ; SPRITE_ANIM_FRAME_IDX_GAMEFREAK_LOGO_11
 
 .OAMData_02:
 	db 1
@@ -153,14 +153,14 @@
 	dsprite  0,  0, -1,  0, $10, $00
 	dsprite  0,  0,  0,  0, $11, $00
 
-.OAMData_23:
+.OAMData_GSIntroStar:
 	db 4
-	dsprite -1,  0, -1,  0, $00, $00
-	dsprite -1,  0,  0,  0, $00, $20
-	dsprite  0,  0, -1,  0, $01, $00
-	dsprite  0,  0,  0,  0, $01, $20
+	dsprite -1,  0, -1,  0, $00, 0
+	dsprite -1,  0,  0,  0, $00, 0 | X_FLIP
+	dsprite  0,  0, -1,  0, $01, 0
+	dsprite  0,  0,  0,  0, $01, 0 | X_FLIP
 
-.OAMData_30:
+.OAMData_TradePokeBall1:
 	db 4
 	dsprite -1,  0, -1,  0, $00, $80
 	dsprite -1,  0,  0,  0, $00, $a0
@@ -453,25 +453,25 @@
 	dsprite  0,  0, -1,  0, $02, PAL_OW_TREE
 	dsprite  0,  0,  0,  0, $03, PAL_OW_TREE
 
-.OAMData_20:
+.OAMData_TextEntryCursor:
 	db 4
-	dsprite -1,  7, -1,  7, $00, $00
-	dsprite -1,  7,  0,  0, $00, $20
-	dsprite  0,  0, -1,  7, $00, $40
-	dsprite  0,  0,  0,  0, $00, $60
+	dsprite -1,  7, -1,  7, $00, 0
+	dsprite -1,  7,  0,  0, $00, 0 | X_FLIP
+	dsprite  0,  0, -1,  7, $00, 0 | Y_FLIP
+	dsprite  0,  0,  0,  0, $00, 0 | X_FLIP | Y_FLIP
 
 .OAMData_ForFrameset09:
 	db 10
-	dsprite -1,  7,  0,  0, $00, $0
-	dsprite -1,  7,  1,  0, $01, $0
-	dsprite -1,  7,  2,  0, $01, $0
-	dsprite -1,  7,  3,  0, $01, $0
-	dsprite -1,  7,  4,  0, $00, $0 | X_FLIP
-	dsprite  0,  0,  0,  0, $00, $0 | Y_FLIP
-	dsprite  0,  0,  1,  0, $01, $0 | Y_FLIP
-	dsprite  0,  0,  2,  0, $01, $0 | Y_FLIP
-	dsprite  0,  0,  3,  0, $01, $0 | Y_FLIP
-	dsprite  0,  0,  4,  0, $00, $0 | X_FLIP | Y_FLIP
+	dsprite -1,  7,  0,  0, $00, 0
+	dsprite -1,  7,  1,  0, $01, 0
+	dsprite -1,  7,  2,  0, $01, 0
+	dsprite -1,  7,  3,  0, $01, 0
+	dsprite -1,  7,  4,  0, $00, 0 | X_FLIP
+	dsprite  0,  0,  0,  0, $00, 0 | Y_FLIP
+	dsprite  0,  0,  1,  0, $01, 0 | Y_FLIP
+	dsprite  0,  0,  2,  0, $01, 0 | Y_FLIP
+	dsprite  0,  0,  3,  0, $01, 0 | Y_FLIP
+	dsprite  0,  0,  4,  0, $00, 0 | X_FLIP | Y_FLIP
 
 .OAMData_22:
 	db 15
@@ -491,65 +491,65 @@
 	dsprite  1,  4, -1,  4, $0d, $11
 	dsprite  1,  4,  0,  4, $0e, $11
 
-.OAMData_27:
+.OAMData_SlotsGolem:
 	db 6
-	dsprite -2,  4, -2,  4, $00, $15
-	dsprite -2,  4, -1,  4, $02, $15
-	dsprite -2,  4,  0,  4, $00, $35
-	dsprite  0,  4, -2,  4, $04, $15
-	dsprite  0,  4, -1,  4, $06, $15
-	dsprite  0,  4,  0,  4, $04, $35
+	dsprite -2,  4, -2,  4, $00, 5 | OBP_NUM
+	dsprite -2,  4, -1,  4, $02, 5 | OBP_NUM
+	dsprite -2,  4,  0,  4, $00, 5 | OBP_NUM | X_FLIP
+	dsprite  0,  4, -2,  4, $04, 5 | OBP_NUM
+	dsprite  0,  4, -1,  4, $06, 5 | OBP_NUM
+	dsprite  0,  4,  0,  4, $04, 5 | OBP_NUM | X_FLIP
 
-.OAMData_29:
+.OAMData_SlotsChansey1:
 	db 6
-	dsprite -2,  4, -2,  4, $00, $16
-	dsprite -2,  4, -1,  4, $02, $16
-	dsprite -2,  4,  0,  4, $04, $16
-	dsprite  0,  4, -2,  4, $06, $16
-	dsprite  0,  4, -1,  4, $08, $16
-	dsprite  0,  4,  0,  4, $0a, $16
+	dsprite -2,  4, -2,  4, $00, 6 | OBP_NUM
+	dsprite -2,  4, -1,  4, $02, 6 | OBP_NUM
+	dsprite -2,  4,  0,  4, $04, 6 | OBP_NUM
+	dsprite  0,  4, -2,  4, $06, 6 | OBP_NUM
+	dsprite  0,  4, -1,  4, $08, 6 | OBP_NUM
+	dsprite  0,  4,  0,  4, $0a, 6 | OBP_NUM
 
-.OAMData_2a:
+.OAMData_SlotsChansey2:
 	db 6
-	dsprite -2,  4, -2,  4, $00, $16
-	dsprite -2,  4, -1,  4, $02, $16
-	dsprite -2,  4,  0,  4, $04, $16
-	dsprite  0,  4, -2,  4, $0c, $16
-	dsprite  0,  4, -1,  4, $0e, $16
-	dsprite  0,  4,  0,  4, $10, $16
+	dsprite -2,  4, -2,  4, $00, 6 | OBP_NUM
+	dsprite -2,  4, -1,  4, $02, 6 | OBP_NUM
+	dsprite -2,  4,  0,  4, $04, 6 | OBP_NUM
+	dsprite  0,  4, -2,  4, $0c, 6 | OBP_NUM
+	dsprite  0,  4, -1,  4, $0e, 6 | OBP_NUM
+	dsprite  0,  4,  0,  4, $10, 6 | OBP_NUM
 
-.OAMData_2b:
+.OAMData_SlotsChansey3:
 	db 6
-	dsprite -2,  4, -2,  4, $00, $16
-	dsprite -2,  4, -1,  4, $02, $16
-	dsprite -2,  4,  0,  4, $04, $16
-	dsprite  0,  4, -2,  4, $12, $16
-	dsprite  0,  4, -1,  4, $14, $16
-	dsprite  0,  4,  0,  4, $16, $16
+	dsprite -2,  4, -2,  4, $00, 6 | OBP_NUM
+	dsprite -2,  4, -1,  4, $02, 6 | OBP_NUM
+	dsprite -2,  4,  0,  4, $04, 6 | OBP_NUM
+	dsprite  0,  4, -2,  4, $12, 6 | OBP_NUM
+	dsprite  0,  4, -1,  4, $14, 6 | OBP_NUM
+	dsprite  0,  4,  0,  4, $16, 6 | OBP_NUM
 
-.OAMData_2c:
+.OAMData_SlotsChansey4:
 	db 6
-	dsprite -2,  4, -2,  4, $00, $16
-	dsprite -2,  4, -1,  4, $02, $16
-	dsprite -2,  4,  0,  4, $04, $16
-	dsprite  0,  4, -2,  4, $18, $16
-	dsprite  0,  4, -1,  4, $1a, $16
-	dsprite  0,  4,  0,  4, $1c, $16
+	dsprite -2,  4, -2,  4, $00, 6 | OBP_NUM
+	dsprite -2,  4, -1,  4, $02, 6 | OBP_NUM
+	dsprite -2,  4,  0,  4, $04, 6 | OBP_NUM
+	dsprite  0,  4, -2,  4, $18, 6 | OBP_NUM
+	dsprite  0,  4, -1,  4, $1a, 6 | OBP_NUM
+	dsprite  0,  4,  0,  4, $1c, 6 | OBP_NUM
 
-.OAMData_2d:
+.OAMData_SlotsChansey5:
 	db 6
-	dsprite -2,  4, -2,  4, $1e, $16
-	dsprite -2,  4, -1,  4, $20, $16
-	dsprite -2,  4,  0,  4, $22, $16
-	dsprite  0,  4, -2,  4, $24, $16
-	dsprite  0,  4, -1,  4, $26, $16
-	dsprite  0,  4,  0,  4, $28, $16
+	dsprite -2,  4, -2,  4, $1e, 6 | OBP_NUM
+	dsprite -2,  4, -1,  4, $20, 6 | OBP_NUM
+	dsprite -2,  4,  0,  4, $22, 6 | OBP_NUM
+	dsprite  0,  4, -2,  4, $24, 6 | OBP_NUM
+	dsprite  0,  4, -1,  4, $26, 6 | OBP_NUM
+	dsprite  0,  4,  0,  4, $28, 6 | OBP_NUM
 
 .OAMData_RadioTuningKnob:
 	db 3
-	dsprite -2,  4, -1,  4, $00, $0 | OBP_NUM
-	dsprite -1,  4, -1,  4, $00, $0 | OBP_NUM
-	dsprite  0,  4, -1,  4, $00, $0 | OBP_NUM
+	dsprite -2,  4, -1,  4, $00, 0 | OBP_NUM
+	dsprite -1,  4, -1,  4, $00, 0 | OBP_NUM
+	dsprite  0,  4, -1,  4, $00, 0 | OBP_NUM
 
 .OAMData_4b:
 	db 6
@@ -689,7 +689,7 @@
 
 .OAMData_GSTitleTrail:
 	db 1
-	dsprite -1,  4, -1,  4, $00, $1 | OBP_NUM
+	dsprite -1,  4, -1,  4, $00, 1 | OBP_NUM
 
 .OAMData_5c:
 	db 12
@@ -749,12 +749,12 @@
 	dsprite  0,  0, -1,  0, $02, PAL_OW_BLUE
 	dsprite  0,  0,  0,  0, $03, PAL_OW_BLUE
 
-.OAMData_65:
+.OAMData_MagnetTrainBlue:
 	db 4
-	dsprite -1,  0, -1,  0, $00, $81
-	dsprite -1,  0,  0,  0, $01, $81
-	dsprite  0,  0, -1,  0, $02, $81
-	dsprite  0,  0,  0,  0, $03, $81
+	dsprite -1,  0, -1,  0, $00, PAL_OW_BLUE | BEHIND_BG
+	dsprite -1,  0,  0,  0, $01, PAL_OW_BLUE | BEHIND_BG
+	dsprite  0,  0, -1,  0, $02, PAL_OW_BLUE | BEHIND_BG
+	dsprite  0,  0,  0,  0, $03, PAL_OW_BLUE | BEHIND_BG
 
 .OAMData_67:
 	db 1
@@ -1013,29 +1013,29 @@
 
 .OAMData_7a:
 	db 8
-	dsprite -1,  0, -2,  0, $00, $0
-	dsprite -1,  0, -1,  0, $01, $0
-	dsprite -1,  0,  0,  0, $01, $0 | X_FLIP
-	dsprite -1,  0,  1,  0, $00, $0 | X_FLIP
-	dsprite  0,  0, -2,  0, $00, $0 | Y_FLIP
-	dsprite  0,  0, -1,  0, $01, $0 | Y_FLIP
-	dsprite  0,  0,  0,  0, $01, $0 | X_FLIP | Y_FLIP
-	dsprite  0,  0,  1,  0, $00, $0 | X_FLIP | Y_FLIP
+	dsprite -1,  0, -2,  0, $00, 0
+	dsprite -1,  0, -1,  0, $01, 0
+	dsprite -1,  0,  0,  0, $01, 0 | X_FLIP
+	dsprite -1,  0,  1,  0, $00, 0 | X_FLIP
+	dsprite  0,  0, -2,  0, $00, 0 | Y_FLIP
+	dsprite  0,  0, -1,  0, $01, 0 | Y_FLIP
+	dsprite  0,  0,  0,  0, $01, 0 | X_FLIP | Y_FLIP
+	dsprite  0,  0,  1,  0, $00, 0 | X_FLIP | Y_FLIP
 
 .OAMData_7b:
 	db 12
-	dsprite -3,  0, -1,  0, $00, $0
-	dsprite -2,  0, -1,  0, $01, $0
-	dsprite -1,  0, -1,  0, $02, $0
-	dsprite -3,  0,  0,  0, $00, $0 | X_FLIP
-	dsprite -2,  0,  0,  0, $01, $0 | X_FLIP
-	dsprite -1,  0,  0,  0, $02, $0 | X_FLIP
-	dsprite  0,  0, -1,  0, $02, $0 | Y_FLIP
-	dsprite  1,  0, -1,  0, $01, $0 | Y_FLIP
-	dsprite  2,  0, -1,  0, $00, $0 | Y_FLIP
-	dsprite  0,  0,  0,  0, $02, $0 | X_FLIP | Y_FLIP
-	dsprite  1,  0,  0,  0, $01, $0 | X_FLIP | Y_FLIP
-	dsprite  2,  0,  0,  0, $00, $0 | X_FLIP | Y_FLIP
+	dsprite -3,  0, -1,  0, $00, 0
+	dsprite -2,  0, -1,  0, $01, 0
+	dsprite -1,  0, -1,  0, $02, 0
+	dsprite -3,  0,  0,  0, $00, 0 | X_FLIP
+	dsprite -2,  0,  0,  0, $01, 0 | X_FLIP
+	dsprite -1,  0,  0,  0, $02, 0 | X_FLIP
+	dsprite  0,  0, -1,  0, $02, 0 | Y_FLIP
+	dsprite  1,  0, -1,  0, $01, 0 | Y_FLIP
+	dsprite  2,  0, -1,  0, $00, 0 | Y_FLIP
+	dsprite  0,  0,  0,  0, $02, 0 | X_FLIP | Y_FLIP
+	dsprite  1,  0,  0,  0, $01, 0 | X_FLIP | Y_FLIP
+	dsprite  2,  0,  0,  0, $00, 0 | X_FLIP | Y_FLIP
 
 .OAMData_7c:
 	db 20
@@ -1062,26 +1062,26 @@
 
 .OAMData_IntroSuicuneAway:
 	db 20
-	dsprite  0,  0,   1,  0, $00, $1 | BEHIND_BG
-	dsprite  1,  0,   2,  0, $00, $1 | BEHIND_BG
-	dsprite  2,  0,   3,  0, $00, $1 | BEHIND_BG
-	dsprite  3,  0,   4,  0, $00, $1 | BEHIND_BG
-	dsprite  4,  0,   5,  0, $00, $1 | BEHIND_BG
-	dsprite  3,  0,   6,  0, $00, $1 | BEHIND_BG
-	dsprite  2,  0,   7,  0, $00, $1 | BEHIND_BG
-	dsprite  1,  0,   8,  0, $00, $1 | BEHIND_BG
-	dsprite  0,  0,   9,  0, $00, $1 | BEHIND_BG
-	dsprite  1,  0,  10,  0, $00, $1 | BEHIND_BG
-	dsprite  2,  0,  11,  0, $00, $1 | BEHIND_BG
-	dsprite  3,  0,  12,  0, $00, $1 | BEHIND_BG
-	dsprite  4,  0,  13,  0, $00, $1 | BEHIND_BG
-	dsprite  3,  0,  14,  0, $00, $1 | BEHIND_BG
-	dsprite  2,  0,  15,  0, $00, $1 | BEHIND_BG
-	dsprite  1,  0,  16,  0, $00, $1 | BEHIND_BG
-	dsprite  0,  0, -15,  0, $00, $1 | BEHIND_BG
-	dsprite  1,  0, -14,  0, $00, $1 | BEHIND_BG
-	dsprite  2,  0, -13,  0, $00, $1 | BEHIND_BG
-	dsprite  3,  0, -12,  0, $00, $1 | BEHIND_BG
+	dsprite  0,  0,   1,  0, $00, 1 | BEHIND_BG
+	dsprite  1,  0,   2,  0, $00, 1 | BEHIND_BG
+	dsprite  2,  0,   3,  0, $00, 1 | BEHIND_BG
+	dsprite  3,  0,   4,  0, $00, 1 | BEHIND_BG
+	dsprite  4,  0,   5,  0, $00, 1 | BEHIND_BG
+	dsprite  3,  0,   6,  0, $00, 1 | BEHIND_BG
+	dsprite  2,  0,   7,  0, $00, 1 | BEHIND_BG
+	dsprite  1,  0,   8,  0, $00, 1 | BEHIND_BG
+	dsprite  0,  0,   9,  0, $00, 1 | BEHIND_BG
+	dsprite  1,  0,  10,  0, $00, 1 | BEHIND_BG
+	dsprite  2,  0,  11,  0, $00, 1 | BEHIND_BG
+	dsprite  3,  0,  12,  0, $00, 1 | BEHIND_BG
+	dsprite  4,  0,  13,  0, $00, 1 | BEHIND_BG
+	dsprite  3,  0,  14,  0, $00, 1 | BEHIND_BG
+	dsprite  2,  0,  15,  0, $00, 1 | BEHIND_BG
+	dsprite  1,  0,  16,  0, $00, 1 | BEHIND_BG
+	dsprite  0,  0, -15,  0, $00, 1 | BEHIND_BG
+	dsprite  1,  0, -14,  0, $00, 1 | BEHIND_BG
+	dsprite  2,  0, -13,  0, $00, 1 | BEHIND_BG
+	dsprite  3,  0, -12,  0, $00, 1 | BEHIND_BG
 
 .OAMData_Celebi:
 	db 4
@@ -1090,42 +1090,42 @@
 	dsprite  0,  0, -1,  0, $02, PAL_OW_GREEN
 	dsprite  0,  0,  0,  0, $03, PAL_OW_GREEN
 
-.OAMData_81:
+.OAMData_GameFreakLogo1_3:
 	db 9
-	dsprite -2,  0, -2,  4, $00, $01
-	dsprite -2,  0, -1,  4, $01, $01
-	dsprite -2,  0,  0,  4, $02, $01
-	dsprite -1,  0, -2,  4, $10, $01
-	dsprite -1,  0, -1,  4, $11, $01
-	dsprite -1,  0,  0,  4, $12, $01
-	dsprite  0,  0, -2,  4, $20, $01
-	dsprite  0,  0, -1,  4, $21, $01
-	dsprite  0,  0,  0,  4, $22, $01
+	dsprite -2,  0, -2,  4, $00, 1
+	dsprite -2,  0, -1,  4, $01, 1
+	dsprite -2,  0,  0,  4, $02, 1
+	dsprite -1,  0, -2,  4, $10, 1
+	dsprite -1,  0, -1,  4, $11, 1
+	dsprite -1,  0,  0,  4, $12, 1
+	dsprite  0,  0, -2,  4, $20, 1
+	dsprite  0,  0, -1,  4, $21, 1
+	dsprite  0,  0,  0,  4, $22, 1
 
-.OAMData_84:
+.OAMData_GameFreakLogo4_11:
 	db 24
-	dsprite -5,  0, -2,  4, $00, $01
-	dsprite -5,  0, -1,  4, $01, $01
-	dsprite -5,  0,  0,  4, $02, $01
-	dsprite -5,  0,  1,  4, $03, $01
-	dsprite -4,  0, -2,  4, $10, $01
-	dsprite -4,  0, -1,  4, $11, $01
-	dsprite -4,  0,  0,  4, $12, $01
-	dsprite -4,  0,  1,  4, $13, $01
-	dsprite -3,  0, -2,  4, $20, $01
-	dsprite -3,  0, -1,  4, $21, $01
-	dsprite -3,  0,  0,  4, $22, $01
-	dsprite -3,  0,  1,  4, $23, $01
-	dsprite -2,  0, -2,  4, $30, $01
-	dsprite -2,  0, -1,  4, $31, $01
-	dsprite -2,  0,  0,  4, $32, $01
-	dsprite -2,  0,  1,  4, $33, $01
-	dsprite -1,  0, -2,  4, $40, $01
-	dsprite -1,  0, -1,  4, $41, $01
-	dsprite -1,  0,  0,  4, $42, $01
-	dsprite -1,  0,  1,  4, $43, $01
-	dsprite  0,  0, -2,  4, $50, $01
-	dsprite  0,  0, -1,  4, $51, $01
-	dsprite  0,  0,  0,  4, $52, $01
-	dsprite  0,  0,  1,  4, $53, $01
+	dsprite -5,  0, -2,  4, $00, 1
+	dsprite -5,  0, -1,  4, $01, 1
+	dsprite -5,  0,  0,  4, $02, 1
+	dsprite -5,  0,  1,  4, $03, 1
+	dsprite -4,  0, -2,  4, $10, 1
+	dsprite -4,  0, -1,  4, $11, 1
+	dsprite -4,  0,  0,  4, $12, 1
+	dsprite -4,  0,  1,  4, $13, 1
+	dsprite -3,  0, -2,  4, $20, 1
+	dsprite -3,  0, -1,  4, $21, 1
+	dsprite -3,  0,  0,  4, $22, 1
+	dsprite -3,  0,  1,  4, $23, 1
+	dsprite -2,  0, -2,  4, $30, 1
+	dsprite -2,  0, -1,  4, $31, 1
+	dsprite -2,  0,  0,  4, $32, 1
+	dsprite -2,  0,  1,  4, $33, 1
+	dsprite -1,  0, -2,  4, $40, 1
+	dsprite -1,  0, -1,  4, $41, 1
+	dsprite -1,  0,  0,  4, $42, 1
+	dsprite -1,  0,  1,  4, $43, 1
+	dsprite  0,  0, -2,  4, $50, 1
+	dsprite  0,  0, -1,  4, $51, 1
+	dsprite  0,  0,  0,  4, $52, 1
+	dsprite  0,  0,  1,  4, $53, 1
 ; 8e706
--- a/data/sprite_anim_seqs.asm
+++ b/data/sprite_anim_seqs.asm
@@ -23,8 +23,8 @@
 	db SPRITE_ANIM_FRAMESET_TEXT_ENTRY_CURSOR, SPRITE_ANIM_SEQ_MAIL_CURSOR, $05
 ; SPRITE_ANIM_INDEX_RED_WALK
 	db SPRITE_ANIM_FRAMESET_RED_WALK, SPRITE_ANIM_SEQ_NULL, $00
-; SPRITE_ANIM_INDEX_0B
-	db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_0D, $08
+; SPRITE_ANIM_INDEX_UNUSED_CURSOR
+	db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_FOR_UNUSED_CURSOR, $08
 ; SPRITE_ANIM_INDEX_DUMMY_GAME
 	db SPRITE_ANIM_FRAMESET_STILL_CURSOR, SPRITE_ANIM_SEQ_DUMMY_GAME_CURSOR, $08
 ; SPRITE_ANIM_INDEX_POKEGEAR_ARROW
@@ -65,10 +65,10 @@
 	db SPRITE_ANIM_FRAMESET_BLUE_WALK, SPRITE_ANIM_SEQ_NULL, $00
 ; SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE
 	db SPRITE_ANIM_FRAMESET_MAGNET_TRAIN_BLUE, SPRITE_ANIM_SEQ_NULL, $00
-; SPRITE_ANIM_INDEX_20
-	db SPRITE_ANIM_FRAMESET_2F, SPRITE_ANIM_SEQ_NULL, $00
-; SPRITE_ANIM_INDEX_21
-	db SPRITE_ANIM_FRAMESET_30, SPRITE_ANIM_SEQ_NULL, $00
+; SPRITE_ANIM_INDEX_MOBILE_TRADE_SENT_BALL
+	db SPRITE_ANIM_FRAMESET_MOBILE_TRADE_SENT_BALL, SPRITE_ANIM_SEQ_NULL, $00
+; SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_BALL
+	db SPRITE_ANIM_FRAMESET_MOBILE_TRADE_OT_BALL, SPRITE_ANIM_SEQ_NULL, $00
 ; SPRITE_ANIM_INDEX_22
 	db SPRITE_ANIM_FRAMESET_31, SPRITE_ANIM_SEQ_NULL, $00
 ; SPRITE_ANIM_INDEX_23
--- a/docs/map_scripts.md
+++ b/docs/map_scripts.md
@@ -3,7 +3,7 @@
 
 ## `const_value set 2`
 
-### `const` *`MAPNAME_PERSONNAME`*
+- **`const` *`MAPNAME_PERSONNAME`***
 
 
 ## `MapName_MapScriptHeader:`
@@ -11,17 +11,19 @@
 
 ## `.MapTriggers: db` *N*
 
-### `maptrigger` *script*
+- **`maptrigger` *script***
 
 
 ## `.MapCallbacks: db` *N*
 
-### `dbw` *type*, *script*
+- **`dbw` *type*, *script***
 
 
 ## Scripts
 
+[Scripting commands](docs/scripting_commands.md)
 
+
 ## Text
 
 - **`text`**
@@ -39,19 +41,19 @@
 
 ## `.Warps: db` *N*
 
-### `warp_def` *y*, *x*, *warp_id*, *map*
+- **`warp_def` *y*, *x*, *warp_id*, *map***
 
 
 ## `.XYTriggers: db` *N*
 
-### `xy_trigger` *id*, *y*, *x*, `$0`, *script*, `$0`, `$0`
+- **`xy_trigger` *id*, *y*, *x*, `$0`, *script*, `$0`, `$0`**
 
 
 ## `.Signposts: db` *N*
 
-### `signpost` *y*, *x*, *type*, *script*
+- `signpost` *y*, *x*, *type*, *script***
 
-#### Signpost types:
+Signpost types:
 
 - **`SIGNPOST_READ`**
 
@@ -69,9 +71,9 @@
 
 ## `.PersonEvents: db` *N*
 
-### `person_event` *sprite*, *y*, *x*, *movement*, *ry*, *rx*, *hour*, *daytime*, *palette*, *type*, *range*, *script*, *event_flag*
+- **`person_event` *sprite*, *y*, *x*, *movement*, *ry*, *rx*, *hour*, *daytime*, *palette*, *type*, *range*, *script*, *event_flag***
 
-#### Movement types:
+Movement types:
 
 - **`SPRITEMOVEDATA_ITEM_TREE`**
 
@@ -105,7 +107,7 @@
 
 - **`SPRITEMOVEDATA_LAPRAS`**
 
-#### Person types:
+Person types:
 
 - **`PERSONTYPE_SCRIPT`**
 
--- a/engine/sprite_anims.asm
+++ b/engine/sprite_anims.asm
@@ -27,7 +27,7 @@
 	dw .SlotsChansey
 	dw .SlotsChanseyEgg
 	dw .MailCursor
-	dw .sprite_anim_seq_0D
+	dw .ForUnusedCursor
 	dw .DummyGameCursor
 	dw .PokegearArrow
 	dw .TradePokeBall
@@ -404,7 +404,7 @@
 	ld [hl], a
 	ret
 
-.sprite_anim_seq_0D ; 8d46e (23:546e)
+.ForUnusedCursor ; 8d46e (23:546e)
 	callab ret_e00ed
 	ret
 
--- a/misc/mobile_42.asm
+++ b/misc/mobile_42.asm
@@ -526,7 +526,7 @@
 	call DelayFrames
 	call Function108bec
 	depixel 10, 11, 4, 0
-	ld a, SPRITE_ANIM_INDEX_20
+	ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_SENT_BALL
 	call _InitSpriteAnimStruct
 	ld de, SFX_BALL_POOF
 	call PlaySFX
@@ -561,7 +561,7 @@
 	ld a, $90
 	ld [hWY], a
 	depixel 10, 11, 4, 0
-	ld a, SPRITE_ANIM_INDEX_21
+	ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_BALL
 	call _InitSpriteAnimStruct
 	call Function108b45
 	ld a, $1
@@ -661,7 +661,7 @@
 	call DelayFrames
 	call Function108c2b
 	depixel 10, 11, 4, 0
-	ld a, SPRITE_ANIM_INDEX_20
+	ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_SENT_BALL
 	call _InitSpriteAnimStruct
 	ld de, SFX_BALL_POOF
 	call PlaySFX
@@ -705,7 +705,7 @@
 	ld a, $90
 	ld [hWY], a
 	depixel 10, 11, 4, 0
-	ld a, SPRITE_ANIM_INDEX_21
+	ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_BALL
 	call _InitSpriteAnimStruct
 	call Function108b45
 	ld a, $1
@@ -774,7 +774,7 @@
 	ld a, $90
 	ld [hWY], a
 	depixel 10, 11, 4, 0
-	ld a, SPRITE_ANIM_INDEX_21
+	ld a, SPRITE_ANIM_INDEX_MOBILE_TRADE_OT_BALL
 	call _InitSpriteAnimStruct
 	call Function108b45
 	ld a, $1