From 8982501b7860b97cd659262cbb14f375ca07b54a Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Sun, 1 Oct 2017 13:03:51 -0500 Subject: [PATCH 01/13] Extract baseroms from reset_rtc_screen --- asm/reset_rtc_screen.s | 4 +- data/reset_rtc_screen.s | 75 +++++++++++++++--- graphics/misc/reset_rtc_screen_arrow.pal | 7 ++ graphics/misc/reset_rtc_screen_downarrow.png | Bin 0 -> 113 bytes graphics/misc/reset_rtc_screen_rightarrow.png | Bin 0 -> 110 bytes 5 files changed, 74 insertions(+), 12 deletions(-) create mode 100644 graphics/misc/reset_rtc_screen_arrow.pal create mode 100644 graphics/misc/reset_rtc_screen_downarrow.png create mode 100644 graphics/misc/reset_rtc_screen_rightarrow.png diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s index ac2c1181ce..1f5ef83d8c 100644 --- a/asm/reset_rtc_screen.s +++ b/asm/reset_rtc_screen.s @@ -291,7 +291,7 @@ sub_809EB04: @ 809EB04 lsrs r5, 24 ldr r0, =gUnknown_085104C4 bl LoadSpritePalette - ldr r0, =gUnknown_085104F0 + ldr r0, =gSpriteTemplate_85104F0 mov r8, r0 movs r1, 0x35 movs r2, 0x44 @@ -655,7 +655,7 @@ sub_809EDE8: @ 809EDE8 lsls r0, r4, 1 adds r0, r4 lsls r0, 2 - ldr r1, =gUnknown_0851041C + ldr r1, =gUnknown_08510420 - 0x4 adds r2, r0, r1 ldr r1, =gMain ldrh r3, [r1, 0x2E] diff --git a/data/reset_rtc_screen.s b/data/reset_rtc_screen.s index 2ed5f746ce..f08f30e90c 100644 --- a/data/reset_rtc_screen.s +++ b/data/reset_rtc_screen.s @@ -4,20 +4,75 @@ .section .rodata .align 2, 0 -gUnknown_08510404:: @ 8510404 - .incbin "baserom.gba", 0x510404, 0x4 +gUnknown_08510404:: @ 8510404 struct BgTemplate + .4byte 0x000001f0 + .align 2 gUnknown_08510408:: @ 8510408 - .incbin "baserom.gba", 0x510408, 0x14 - -gUnknown_0851041C:: @ 851041C - .incbin "baserom.gba", 0x51041c, 0x4 + window_template 0x00, 0x01, 0x01, 0x13, 0x09, 0x0f, 0x0155 + window_template 0x00, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x00e9 + window_template 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0000 + .align 2 gUnknown_08510420:: @ 8510420 - .incbin "baserom.gba", 0x510420, 0xa4 + window_template 0x00, 0x04, 0x09, 0x15, 0x02, 0x0f, 0x00bf + .align 2 +gUnknown_08510428:: @ 8510428 + .byte 3, 0, 1, 0, 15, 39, 0, 2, 0, 0, 0, 0 + .byte 4, 0, 0, 0, 23, 0, 1, 3, 0, 0, 0, 0 + .byte 5, 0, 0, 0, 59, 0, 2, 4, 0, 0, 0, 0 + .byte 6, 0, 0, 0, 59, 0, 3, 5, 0, 0, 0, 0 + .byte 7, 0, 0, 0, 0, 0, 4, 0, 6, 0, 0, 0 + + .align 2 +gOamData_08510464:: @ 8510464 + .2byte 0x0000 + .2byte 0x0000 + .2byte 0x0000 + + .align 2 +gResetRtcScreen_DownArrowGfx:: @ 851046C + .incbin "graphics/misc/reset_rtc_screen_downarrow.4bpp" + + .align 2 +gResetRtcScreen_RightArrowGfx:: @ 851048C + .incbin "graphics/misc/reset_rtc_screen_rightarrow.4bpp" + + .align 2 +gResetRtcScreen_ArrowPal: @ 85104AC + .incbin "graphics/misc/reset_rtc_screen_arrow.gbapal" + + .align 2 +gSpriteImageTable_85104B4:: @ 85104B4 + obj_frame_tiles gResetRtcScreen_DownArrowGfx, 0x20 + obj_frame_tiles gResetRtcScreen_RightArrowGfx, 0x20 + + .align 2 gUnknown_085104C4:: @ 85104C4 - .incbin "baserom.gba", 0x5104c4, 0x2c + obj_pal gResetRtcScreen_ArrowPal, 0x1000 -gUnknown_085104F0:: @ 85104F0 - .incbin "baserom.gba", 0x5104f0, 0x18 + .align 2 +gSpriteAnim_85104CC:: @ 85104CC + obj_image_anim_frame 0, 30 + obj_image_anim_jump 0 + + .align 2 +gSpriteAnim_85104D4: @ 85104D4 + obj_image_anim_frame 0, 30, OBJ_IMAGE_ANIM_V_FLIP + obj_image_anim_jump 0 + + .align 2 +gSpriteAnim_85104DC:: @ 85104DC + obj_image_anim_frame 1, 30 + obj_image_anim_jump 0 + + .align 2 +gSpriteAnimTable_85104E4:: @ 85104E4 + .4byte gSpriteAnim_85104CC + .4byte gSpriteAnim_85104D4 + .4byte gSpriteAnim_85104DC + + .align 2 +gSpriteTemplate_85104F0:: @ 85104F0 + spr_template 0xFFFF, 0x1000, gOamData_08510464, gSpriteAnimTable_85104E4, gSpriteImageTable_85104B4, gDummySpriteAffineAnimTable, SpriteCallbackDummy diff --git a/graphics/misc/reset_rtc_screen_arrow.pal b/graphics/misc/reset_rtc_screen_arrow.pal new file mode 100644 index 0000000000..b2e8a5f5fb --- /dev/null +++ b/graphics/misc/reset_rtc_screen_arrow.pal @@ -0,0 +1,7 @@ +JASC-PAL +0100 +4 +0 0 0 +255 0 0 +74 74 74 +0 0 0 diff --git a/graphics/misc/reset_rtc_screen_downarrow.png b/graphics/misc/reset_rtc_screen_downarrow.png new file mode 100644 index 0000000000000000000000000000000000000000..8f7b3480df00af52e7149aa8ef9b4ca2ba479ee0 GIT binary patch literal 113 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U4JOMr-u0Z-f1A~{B7m#7n|0)eg zDR{a#hH%VGPGDeERaIqWb9Hn~Y4Qx<&{({JL1l)71cN>glSHED?G&I|22WQ%mvv4F FO#o!r7S;d& literal 0 HcmV?d00001 diff --git a/graphics/misc/reset_rtc_screen_rightarrow.png b/graphics/misc/reset_rtc_screen_rightarrow.png new file mode 100644 index 0000000000000000000000000000000000000000..785b3c1dbb2823a98039961d8e40149a43330881 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0vp^93afX3?$7I7w-U4JOMr-u0Z-f1A~{B7m#7n|0)eg z$$GjthH%VGPGDeEQ)N|9)L>C!5p`%0=uu^v$jTrs%{bA>AxHwKkipZ{&t;ucLK6V- CH54fT literal 0 HcmV?d00001 From ba758afc1486b6cfb262d2fa96bbe9efd6c1720c Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Sun, 1 Oct 2017 14:48:29 -0500 Subject: [PATCH 02/13] Extract baseroms from and combine fldeff_emotion and trainer_see Also extract from bike --- asm/fldeff_emotion.s | 328 -------------------------- asm/trainer_see.s | 328 +++++++++++++++++++++++++- data/bike.s | 47 +++- data/cable_club.s | 9 +- data/fldeff_emotion.s | 11 - data/strings.s | 8 +- data/trainer_see.s | 83 ++++++- graphics/misc/emotion_exclamation.png | Bin 0 -> 108 bytes graphics/misc/emotion_heart.png | Bin 0 -> 126 bytes graphics/misc/emotion_question.png | Bin 0 -> 117 bytes ld_script.txt | 2 - 11 files changed, 452 insertions(+), 364 deletions(-) delete mode 100644 asm/fldeff_emotion.s delete mode 100644 data/fldeff_emotion.s create mode 100644 graphics/misc/emotion_exclamation.png create mode 100644 graphics/misc/emotion_heart.png create mode 100644 graphics/misc/emotion_question.png diff --git a/asm/fldeff_emotion.s b/asm/fldeff_emotion.s deleted file mode 100644 index 37096a438d..0000000000 --- a/asm/fldeff_emotion.s +++ /dev/null @@ -1,328 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start oei_exclamation_mark -oei_exclamation_mark: @ 80B4620 - push {lr} - ldr r0, =gUnknown_085507B4 - movs r1, 0 - movs r2, 0 - movs r3, 0x53 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _080B4648 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - movs r1, 0 - movs r2, 0 - bl sub_80B46D8 -_080B4648: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end oei_exclamation_mark - - thumb_func_start sub_80B4658 -sub_80B4658: @ 80B4658 - push {lr} - ldr r0, =gUnknown_085507B4 - movs r1, 0 - movs r2, 0 - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _080B4680 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - movs r1, 0x21 - movs r2, 0x1 - bl sub_80B46D8 -_080B4680: - movs r0, 0 - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B4658 - - thumb_func_start sub_80B4690 -sub_80B4690: @ 80B4690 - push {r4,lr} - ldr r0, =gUnknown_085507CC - movs r1, 0 - movs r2, 0 - movs r3, 0x52 - bl CreateSpriteAtEnd - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x40 - beq _080B46C6 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - ldr r0, =gSprites - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2E - movs r2, 0 - bl sub_80B46D8 - ldrb r1, [r4, 0x5] - movs r0, 0xF - ands r0, r1 - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x5] -_080B46C6: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B4690 - - thumb_func_start sub_80B46D8 -@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3) -sub_80B46D8: @ 80B46D8 - push {r4,lr} - lsls r2, 24 - lsrs r2, 24 - ldrb r4, [r0, 0x5] - movs r3, 0xD - negs r3, r3 - ands r3, r4 - movs r4, 0x4 - orrs r3, r4 - strb r3, [r0, 0x5] - movs r3, 0x3E - adds r3, r0 - mov r12, r3 - ldrb r3, [r3] - movs r4, 0x2 - orrs r3, r4 - mov r4, r12 - strb r3, [r4] - ldr r4, =gFieldEffectSpawnParams - ldr r3, [r4] - strh r3, [r0, 0x2E] - ldr r3, [r4, 0x4] - strh r3, [r0, 0x30] - ldr r3, [r4, 0x8] - strh r3, [r0, 0x32] - ldr r3, =0x0000fffb - strh r3, [r0, 0x34] - strh r1, [r0, 0x3C] - adds r1, r2, 0 - bl StartSpriteAnim - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80B46D8 - - thumb_func_start objc_exclamation_mark_probably -objc_exclamation_mark_probably: @ 80B4724 - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r4, 0x32] - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _080B4756 - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080B4764 -_080B4756: - ldrh r1, [r4, 0x3C] - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldEffectStop - b _080B47B2 -_080B4764: - ldr r2, =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - ldrh r3, [r4, 0x34] - ldrh r0, [r4, 0x36] - adds r2, r3, r0 - strh r2, [r4, 0x36] - ldrh r0, [r1, 0x20] - strh r0, [r4, 0x20] - ldrh r0, [r1, 0x22] - subs r0, 0x10 - strh r0, [r4, 0x22] - ldrh r0, [r1, 0x24] - strh r0, [r4, 0x24] - ldrh r0, [r1, 0x26] - adds r0, r2 - strh r0, [r4, 0x26] - lsls r2, 16 - asrs r2, 16 - cmp r2, 0 - beq _080B47B0 - adds r0, r3, 0x1 - strh r0, [r4, 0x34] - b _080B47B2 - .pool -_080B47B0: - strh r2, [r4, 0x34] -_080B47B2: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end objc_exclamation_mark_probably - - thumb_func_start sub_80B47BC -sub_80B47BC: @ 80B47BC - push {lr} - ldr r0, =gUnknown_02038BFC - ldrb r0, [r0] - cmp r0, 0 - beq _080B47D4 - ldr r0, =gUnknown_03006090 - ldrb r0, [r0, 0xC] - b _080B47D8 - .pool -_080B47D4: - ldr r0, =gUnknown_03006090 - ldrb r0, [r0] -_080B47D8: - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B47BC - - thumb_func_start sub_80B47E0 -sub_80B47E0: @ 80B47E0 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bls _080B47EE - movs r0, 0 - b _080B4800 -_080B47EE: - cmp r0, 0 - beq _080B47FC - ldr r0, =gUnknown_03006090 - ldrb r0, [r0, 0xC] - b _080B4800 - .pool -_080B47FC: - ldr r0, =gUnknown_03006090 - ldrb r0, [r0] -_080B4800: - pop {r1} - bx r1 - .pool - thumb_func_end sub_80B47E0 - - thumb_func_start sub_80B4808 -sub_80B4808: @ 80B4808 - push {lr} - ldr r0, =gUnknown_030060AC - ldrb r0, [r0] - cmp r0, 0x1 - bne _080B4870 - ldr r2, =gUnknown_03006090 - ldr r0, =gUnknown_03006080 - ldrh r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =gMapObjects - adds r0, r1 - ldrb r0, [r0, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetOppositeDirection - lsls r0, 24 - lsrs r0, 24 - bl GetFaceDirectionAnimId - ldr r3, =gUnknown_03006084 - strb r0, [r3] - movs r0, 0xFE - strb r0, [r3, 0x1] - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0xFF - bl exec_movement - b _080B489E - .pool -_080B4870: - ldr r0, =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, =gMapObjects - adds r0, r1 - ldrb r0, [r0, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - ldr r3, =gUnknown_03006084 - strb r0, [r3] - movs r0, 0xFE - strb r0, [r3, 0x1] - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0xFF - bl exec_movement -_080B489E: - movs r0, 0xFF - bl sub_809BE48 - pop {r0} - bx r0 - .pool - thumb_func_end sub_80B4808 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/trainer_see.s b/asm/trainer_see.s index d57ad1815f..d638498ee9 100644 --- a/asm/trainer_see.s +++ b/asm/trainer_see.s @@ -267,7 +267,7 @@ CheckIfTrainerCanApproachPlayer: @ 80B3DF0 mov r8, r4 cmp r0, 0x1 bne _080B3E50 - ldr r1, =gUnknown_0855072C + ldr r1, =gIsTrainerInRange ldrb r0, [r7, 0x18] lsls r0, 28 lsrs r0, 26 @@ -300,7 +300,7 @@ _080B3E4C: _080B3E50: movs r5, 0 _080B3E52: - ldr r0, =gUnknown_0855072C + ldr r0, =gIsTrainerInRange lsls r4, r5, 2 adds r4, r0 ldrb r1, [r7, 0x1D] @@ -702,7 +702,7 @@ c3_8081EDC: @ 80B4118 b _080B416C .pool _080B4150: - ldr r7, =gUnknown_0855073C + ldr r7, =gTrainerSeeFuncList _080B4152: movs r1, 0x8 ldrsh r0, [r4, r1] @@ -1186,7 +1186,7 @@ sub_80B44C8: @ 80B44C8 adds r0, 0x1 strh r0, [r4, 0x16] _080B44FA: - ldr r1, =gUnknown_0855076C + ldr r1, =gTrainerSeeFuncList2 movs r2, 0x8 ldrsh r0, [r4, r2] lsls r0, 2 @@ -1322,4 +1322,324 @@ _080B4616: .pool thumb_func_end sub_80B45D0 + thumb_func_start oei_exclamation_mark +oei_exclamation_mark: @ 80B4620 + push {lr} + ldr r0, =gSpriteTemplate_85507B4 + movs r1, 0 + movs r2, 0 + movs r3, 0x53 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r1, r0, 24 + cmp r1, 0x40 + beq _080B4648 + lsls r0, r1, 4 + adds r0, r1 + lsls r0, 2 + ldr r1, =gSprites + adds r0, r1 + movs r1, 0 + movs r2, 0 + bl sub_80B46D8 +_080B4648: + movs r0, 0 + pop {r1} + bx r1 + .pool + thumb_func_end oei_exclamation_mark + + thumb_func_start sub_80B4658 +sub_80B4658: @ 80B4658 + push {lr} + ldr r0, =gSpriteTemplate_85507B4 + movs r1, 0 + movs r2, 0 + movs r3, 0x52 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r1, r0, 24 + cmp r1, 0x40 + beq _080B4680 + lsls r0, r1, 4 + adds r0, r1 + lsls r0, 2 + ldr r1, =gSprites + adds r0, r1 + movs r1, 0x21 + movs r2, 0x1 + bl sub_80B46D8 +_080B4680: + movs r0, 0 + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B4658 + + thumb_func_start sub_80B4690 +sub_80B4690: @ 80B4690 + push {r4,lr} + ldr r0, =gSpriteTemplate_85507CC + movs r1, 0 + movs r2, 0 + movs r3, 0x52 + bl CreateSpriteAtEnd + lsls r0, 24 + lsrs r0, 24 + cmp r0, 0x40 + beq _080B46C6 + lsls r4, r0, 4 + adds r4, r0 + lsls r4, 2 + ldr r0, =gSprites + adds r4, r0 + adds r0, r4, 0 + movs r1, 0x2E + movs r2, 0 + bl sub_80B46D8 + ldrb r1, [r4, 0x5] + movs r0, 0xF + ands r0, r1 + movs r1, 0x20 + orrs r0, r1 + strb r0, [r4, 0x5] +_080B46C6: + movs r0, 0 + pop {r4} + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B4690 + + thumb_func_start sub_80B46D8 +@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3) +sub_80B46D8: @ 80B46D8 + push {r4,lr} + lsls r2, 24 + lsrs r2, 24 + ldrb r4, [r0, 0x5] + movs r3, 0xD + negs r3, r3 + ands r3, r4 + movs r4, 0x4 + orrs r3, r4 + strb r3, [r0, 0x5] + movs r3, 0x3E + adds r3, r0 + mov r12, r3 + ldrb r3, [r3] + movs r4, 0x2 + orrs r3, r4 + mov r4, r12 + strb r3, [r4] + ldr r4, =gFieldEffectSpawnParams + ldr r3, [r4] + strh r3, [r0, 0x2E] + ldr r3, [r4, 0x4] + strh r3, [r0, 0x30] + ldr r3, [r4, 0x8] + strh r3, [r0, 0x32] + ldr r3, =0x0000fffb + strh r3, [r0, 0x34] + strh r1, [r0, 0x3C] + adds r1, r2, 0 + bl StartSpriteAnim + pop {r4} + pop {r0} + bx r0 + .pool + thumb_func_end sub_80B46D8 + + thumb_func_start objc_exclamation_mark_probably +objc_exclamation_mark_probably: @ 80B4724 + push {r4,lr} + sub sp, 0x4 + adds r4, r0, 0 + ldrh r0, [r4, 0x2E] + lsls r0, 24 + lsrs r0, 24 + ldrh r1, [r4, 0x30] + lsls r1, 24 + lsrs r1, 24 + ldrh r2, [r4, 0x32] + lsls r2, 24 + lsrs r2, 24 + mov r3, sp + bl TryGetFieldObjectIdByLocalIdAndMap + lsls r0, 24 + cmp r0, 0 + bne _080B4756 + adds r0, r4, 0 + adds r0, 0x3F + ldrb r1, [r0] + movs r0, 0x10 + ands r0, r1 + cmp r0, 0 + beq _080B4764 +_080B4756: + ldrh r1, [r4, 0x3C] + lsls r1, 24 + lsrs r1, 24 + adds r0, r4, 0 + bl FieldEffectStop + b _080B47B2 +_080B4764: + ldr r2, =gMapObjects + mov r0, sp + ldrb r1, [r0] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + adds r0, r2 + ldrb r0, [r0, 0x4] + lsls r1, r0, 4 + adds r1, r0 + lsls r1, 2 + ldr r0, =gSprites + adds r1, r0 + ldrh r3, [r4, 0x34] + ldrh r0, [r4, 0x36] + adds r2, r3, r0 + strh r2, [r4, 0x36] + ldrh r0, [r1, 0x20] + strh r0, [r4, 0x20] + ldrh r0, [r1, 0x22] + subs r0, 0x10 + strh r0, [r4, 0x22] + ldrh r0, [r1, 0x24] + strh r0, [r4, 0x24] + ldrh r0, [r1, 0x26] + adds r0, r2 + strh r0, [r4, 0x26] + lsls r2, 16 + asrs r2, 16 + cmp r2, 0 + beq _080B47B0 + adds r0, r3, 0x1 + strh r0, [r4, 0x34] + b _080B47B2 + .pool +_080B47B0: + strh r2, [r4, 0x34] +_080B47B2: + add sp, 0x4 + pop {r4} + pop {r0} + bx r0 + thumb_func_end objc_exclamation_mark_probably + + thumb_func_start sub_80B47BC +sub_80B47BC: @ 80B47BC + push {lr} + ldr r0, =gUnknown_02038BFC + ldrb r0, [r0] + cmp r0, 0 + beq _080B47D4 + ldr r0, =gUnknown_03006090 + ldrb r0, [r0, 0xC] + b _080B47D8 + .pool +_080B47D4: + ldr r0, =gUnknown_03006090 + ldrb r0, [r0] +_080B47D8: + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B47BC + + thumb_func_start sub_80B47E0 +sub_80B47E0: @ 80B47E0 + push {lr} + lsls r0, 24 + lsrs r0, 24 + cmp r0, 0x1 + bls _080B47EE + movs r0, 0 + b _080B4800 +_080B47EE: + cmp r0, 0 + beq _080B47FC + ldr r0, =gUnknown_03006090 + ldrb r0, [r0, 0xC] + b _080B4800 + .pool +_080B47FC: + ldr r0, =gUnknown_03006090 + ldrb r0, [r0] +_080B4800: + pop {r1} + bx r1 + .pool + thumb_func_end sub_80B47E0 + + thumb_func_start sub_80B4808 +sub_80B4808: @ 80B4808 + push {lr} + ldr r0, =gUnknown_030060AC + ldrb r0, [r0] + cmp r0, 0x1 + bne _080B4870 + ldr r2, =gUnknown_03006090 + ldr r0, =gUnknown_03006080 + ldrh r1, [r0] + lsls r0, r1, 1 + adds r0, r1 + lsls r0, 2 + adds r0, r2 + ldrb r1, [r0] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + ldr r1, =gMapObjects + adds r0, r1 + ldrb r0, [r0, 0x18] + lsls r0, 28 + lsrs r0, 28 + bl GetOppositeDirection + lsls r0, 24 + lsrs r0, 24 + bl GetFaceDirectionAnimId + ldr r3, =gUnknown_03006084 + strb r0, [r3] + movs r0, 0xFE + strb r0, [r3, 0x1] + ldr r0, =gSaveBlock1Ptr + ldr r0, [r0] + ldrb r1, [r0, 0x5] + ldrb r2, [r0, 0x4] + movs r0, 0xFF + bl exec_movement + b _080B489E + .pool +_080B4870: + ldr r0, =gPlayerAvatar + ldrb r1, [r0, 0x5] + lsls r0, r1, 3 + adds r0, r1 + lsls r0, 2 + ldr r1, =gMapObjects + adds r0, r1 + ldrb r0, [r0, 0x18] + lsls r0, 28 + lsrs r0, 28 + bl GetFaceDirectionAnimId + ldr r3, =gUnknown_03006084 + strb r0, [r3] + movs r0, 0xFE + strb r0, [r3, 0x1] + ldr r0, =gSaveBlock1Ptr + ldr r0, [r0] + ldrb r1, [r0, 0x5] + ldrb r2, [r0, 0x4] + movs r0, 0xFF + bl exec_movement +_080B489E: + movs r0, 0xFF + bl sub_809BE48 + pop {r0} + bx r0 + .pool + thumb_func_end sub_80B4808 + .align 2, 0 @ Don't pad with nop. diff --git a/data/bike.s b/data/bike.s index 26bcc87453..ffb33e52b6 100644 --- a/data/bike.s +++ b/data/bike.s @@ -5,19 +5,54 @@ .align 2, 0 gUnknown_0859744C:: @ 859744C - .incbin "baserom.gba", 0x59744c, 0x10 + .4byte sub_8119224 + .4byte sub_8119238 + .4byte sub_8119280 + .4byte sub_8119344 + .align 2 gUnknown_0859745C:: @ 859745C - .incbin "baserom.gba", 0x59745c, 0xc + .4byte PlayerGoSpeed0 + .4byte PlayerGoSpeed1 + .4byte PlayerGoSpeed3 + .align 2 gUnknown_08597468:: @ 8597468 - .incbin "baserom.gba", 0x597468, 0x34 + .4byte sub_81197E4 + .4byte sub_81197F4 + .4byte sub_8119830 + .4byte sub_81198C0 + .4byte sub_81198FC + .4byte sub_8119938 + .4byte sub_8119974 + .4byte sub_81199B0 + .4byte sub_8119A24 + .4byte sub_8119A94 + .4byte sub_8119AA4 + .4byte sub_8119B34 + .4byte sub_8119BC4 + .align 2 gUnknown_0859749C:: @ 859749C - .incbin "baserom.gba", 0x59749c, 0x1c + .4byte CheckMovementInputAcroBikeNormal + .4byte CheckMovementInputAcroBikeChangingDirection + .4byte CheckMovementInputAcroBikeStandingWheelie + .4byte CheckMovementInputAcroBikeBunnyHop + .4byte CheckMovementInputAcroBikeMovingWheelie + .4byte CheckMovementInputAcroBikeUnknownMode5 + .4byte CheckMovementInputAcroBikeUnknownMode6 + .align 2 gUnknown_085974B8:: @ 85974B8 - .incbin "baserom.gba", 0x5974b8, 0x8 + .2byte 0x0001, 0x0002, 0x0004 + .align 1 +gUnknown_085974BE:: @ 85974BE + .2byte 0x0004 + + .align 2 gUnknown_085974C0:: @ 85974C0 - .incbin "baserom.gba", 0x5974c0, 0x70 + .4byte 0x00000001, 0x00000002, 0x0000000f, 0x0000000f, gUnknown_085974BE, gUnknown_085974BE, 0x00000001 + .4byte 0x00000002, 0x00000002, 0x0000000f, 0x0000000f, gUnknown_085974BE, gUnknown_085974BE, 0x00000002 + .4byte 0x00000003, 0x00000002, 0x0000000f, 0x0000000f, gUnknown_085974BE, gUnknown_085974BE, 0x00000003 + .4byte 0x00000004, 0x00000002, 0x0000000f, 0x0000000f, gUnknown_085974BE, gUnknown_085974BE, 0x00000004 diff --git a/data/cable_club.s b/data/cable_club.s index 4961cb1cc1..f62b0b90a9 100644 --- a/data/cable_club.s +++ b/data/cable_club.s @@ -4,8 +4,13 @@ .section .rodata .align 2, 0 + .align 2 gUnknown_08550594:: @ 8550594 - .incbin "baserom.gba", 0x550594, 0x8 + window_template 0x00, 0x10, 0x0b, 0x0b, 0x02, 0x0f, 0x0125 + .align 2 gUnknown_0855059C:: @ 855059C - .incbin "baserom.gba", 0x55059c, 0x190 + .4byte gText_BronzeCard + .4byte gText_CopperCard + .4byte gText_SilverCard + .4byte gText_GoldCard diff --git a/data/fldeff_emotion.s b/data/fldeff_emotion.s deleted file mode 100644 index f2c90d6370..0000000000 --- a/data/fldeff_emotion.s +++ /dev/null @@ -1,11 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2, 0 - -gUnknown_085507B4:: @ 85507B4 - .incbin "baserom.gba", 0x5507b4, 0x18 - -gUnknown_085507CC:: @ 85507CC - .incbin "baserom.gba", 0x5507cc, 0x18 diff --git a/data/strings.s b/data/strings.s index 5fb8ca902f..78e936b133 100644 --- a/data/strings.s +++ b/data/strings.s @@ -4452,16 +4452,16 @@ gText_ButtonTypeLEqualsA:: @ 85EE65D gText_XPLink:: @ 85EE667 .string "{STR_VAR_1}P LINK$" -gUnknown_085EE670:: @ 85EE670 +gText_BronzeCard:: @ 85EE670 .string "BRONZE$" -gUnknown_085EE677:: @ 85EE677 +gText_CopperCard:: @ 85EE677 .string "COPPER$" -gUnknown_085EE67E:: @ 85EE67E +gText_SilverCard:: @ 85EE67E .string "SILVER$" -gUnknown_085EE685:: @ 85EE685 +gText_GoldCard:: @ 85EE685 .string "GOLD$" gText_Day:: @ 85EE68A diff --git a/data/trainer_see.s b/data/trainer_see.s index 7480cb290d..79c1a9f980 100644 --- a/data/trainer_see.s +++ b/data/trainer_see.s @@ -2,13 +2,82 @@ .include "constants/constants.inc" .section .rodata - .align 2, 0 -gUnknown_0855072C:: @ 855072C - .incbin "baserom.gba", 0x55072c, 0x10 + .align 2 +gEmotion_ExclamationMarkGfx:: @ 85505AC + .incbin "graphics/misc/emotion_exclamation.4bpp" -gUnknown_0855073C:: @ 855073C - .incbin "baserom.gba", 0x55073c, 0x30 + .align 2 +gEmotion_QuestionMarkGfx:: @ 855062C + .incbin "graphics/misc/emotion_question.4bpp" -gUnknown_0855076C:: @ 855076C - .incbin "baserom.gba", 0x55076c, 0x48 + .align 2 +gEmotion_HeartGfx:: @ 85506AC + .incbin "graphics/misc/emotion_heart.4bpp" + + .align 2 +gIsTrainerInRange:: @ 855072C + .4byte IsTrainerInRangeSouth + .4byte IsTrainerInRangeNorth + .4byte IsTrainerInRangeWest + .4byte IsTrainerInRangeEast + + .align 2 +gTrainerSeeFuncList:: @ 855073C + .4byte sub_80B4178 + .4byte sub_80B417C + .4byte sub_80B41C0 + .4byte sub_80B4200 + .4byte sub_80B425C + .4byte sub_80B4318 + .4byte sub_80B435C + .4byte sub_80B4390 + .4byte sub_80B43AC + .4byte sub_80B43E0 + .4byte sub_80B4438 + .4byte sub_80B44AC + + .align 2 +gTrainerSeeFuncList2:: @ 855076C + .4byte sub_80B43AC + .4byte sub_80B43E0 + .4byte sub_80B4438 + .4byte sub_80B44AC + + .align 2 +gOamData_855077C:: @ 855077C + .2byte 0x0000 + .2byte 0x4000 + .2byte 0x0400 + + .align 2 +gSpriteImageTable_8550784:: @ 8550784 + obj_tiles gEmotion_ExclamationMarkGfx, 0x0080, 0x0000 + obj_tiles gEmotion_QuestionMarkGfx, 0x0080, 0x0000 + + .align 2 +gSpriteImageTable_8550794:: @ 8550794 + obj_tiles gEmotion_HeartGfx, 0x0080, 0x0000 + + .align 2 +gSpriteAnim_855079C:: @ 855079C + obj_image_anim_frame 0, 60 + obj_image_anim_end + + .align 2 +gSpriteAnim_85507A4:: @ 85507A4 + obj_image_anim_frame 1, 60 + obj_image_anim_end + + .align 2 +gSpriteAnimTable_85507AC:: @ 85507AC + .4byte gSpriteAnim_855079C + .4byte gSpriteAnim_85507A4 + + .align 2 +gSpriteTemplate_85507B4:: @ 85507B4 + spr_template 0xffff, 0xffff, gOamData_855077C, gSpriteAnimTable_85507AC, gSpriteImageTable_8550784, gDummySpriteAffineAnimTable, objc_exclamation_mark_probably + + .align 2 +gSpriteTemplate_85507CC:: @ 85507CC + spr_template 0xffff, 0x1004, gOamData_855077C, gSpriteAnimTable_85507AC, gSpriteImageTable_8550794, gDummySpriteAffineAnimTable, objc_exclamation_mark_probably diff --git a/graphics/misc/emotion_exclamation.png b/graphics/misc/emotion_exclamation.png new file mode 100644 index 0000000000000000000000000000000000000000..595566d2fea26b6281516e483fef6bbb92b861c4 GIT binary patch literal 108 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fEx#-1*YAsjQ4fAF*N{AWG*!2Ym1 zBb!3Pl=L4bID`Zkj3p!rj94TtN*2UgEKLYIpxbK6%;3LU#kppZzzopr E08s=Sh5!Hn literal 0 HcmV?d00001 diff --git a/graphics/misc/emotion_heart.png b/graphics/misc/emotion_heart.png new file mode 100644 index 0000000000000000000000000000000000000000..9995984b4ce96069ca1510acc52a99724252dfff GIT binary patch literal 126 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExuAVNAAsjPH`!)(5FyLTz^;T6o z@#;#>bIuK%7P0f5^)s^+Io$G25@fI3utZ8HF|>16mG_bP28-H#_g?QcGGfm^B3^a> Y#y(}8h2|xXJwOI~y85}Sb4q9e0Gm1~2LJ#7 literal 0 HcmV?d00001 diff --git a/graphics/misc/emotion_question.png b/graphics/misc/emotion_question.png new file mode 100644 index 0000000000000000000000000000000000000000..7376fd058ef5b3d284631bc224350f76cc076419 GIT binary patch literal 117 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExHl8kyAsjQ4fAF*N{AWG*!2Ym1 zBb!3Pl=L4bID`Zkj3p!#co+p-5;?e>ma?!)T$C($`$EY;`@ytBa~K)?9aWsoc#LF0 O=6SmMxvX Date: Wed, 4 Oct 2017 02:38:25 -0500 Subject: [PATCH 03/13] Extract baseroms from miscellaneous files Had to leave some unfinished due to complexity at the moment --- asm/battle_1.s | 10 +- asm/battle_7.s | 4 +- asm/battle_controller_linkopponent.s | 4 +- asm/battle_controller_linkpartner.s | 2 +- asm/battle_controller_opponent.s | 4 +- asm/battle_controller_player.s | 8 +- asm/battle_controller_player_partner.s | 4 +- asm/battle_controller_recorded_opponent.s | 2 +- asm/battle_controller_recorded_player.s | 4 +- asm/battle_controller_safari.s | 2 +- asm/battle_controller_wally.s | 4 +- asm/main_menu.s | 14 +- asm/reshow_battle_screen.s | 4 +- asm/rom_80A5C6C.s | 4 +- data/battle_1.s | 12 + data/battle_anims.s | 720 ++- data/battle_message.s | 14 + data/data2b.s | 4939 ++++++++++++++++++- data/enemy_mon_elevation.inc | 415 ++ data/fanfares.s | 20 +- data/graphics.s | 118 +- data/graphics/trainers/back_pic_coords.inc | 10 + data/graphics/trainers/front_pic_coords.inc | 95 + data/main_menu.s | 141 + data/reset_rtc_screen.s | 2 +- data/strings.s | 84 +- data/title_screen.s | 11 +- data/trainer_money.inc | 59 + data/trainer_see.s | 6 +- data/type_effectiveness.inc | 119 + graphics/birch_speech/bg0.pal | 19 + graphics/birch_speech/bg1.pal | 19 + graphics/birch_speech/bg2.pal | 11 + graphics/birch_speech/map.bin | Bin 0 -> 1280 bytes graphics/birch_speech/shadow.png | Bin 0 -> 433 bytes graphics/link/minigame_digits.pal | 19 + graphics/link/minigame_digits.png | Bin 0 -> 264 bytes graphics/link/minigame_digits2.png | Bin 0 -> 296 bytes graphics/misc/main_menu_bg.pal | 19 + graphics/misc/main_menu_text.pal | 19 + graphics/title_screen/unk_853EF78.pal | 115 + ld_script.txt | 2 + src/util.c | 2 +- 43 files changed, 6815 insertions(+), 245 deletions(-) create mode 100644 data/battle_1.s create mode 100644 data/enemy_mon_elevation.inc create mode 100644 data/graphics/trainers/back_pic_coords.inc create mode 100644 data/graphics/trainers/front_pic_coords.inc create mode 100644 data/main_menu.s create mode 100644 data/trainer_money.inc create mode 100644 data/type_effectiveness.inc create mode 100644 graphics/birch_speech/bg0.pal create mode 100644 graphics/birch_speech/bg1.pal create mode 100644 graphics/birch_speech/bg2.pal create mode 100644 graphics/birch_speech/map.bin create mode 100644 graphics/birch_speech/shadow.png create mode 100644 graphics/link/minigame_digits.pal create mode 100644 graphics/link/minigame_digits.png create mode 100644 graphics/link/minigame_digits2.png create mode 100644 graphics/misc/main_menu_bg.pal create mode 100644 graphics/misc/main_menu_text.pal create mode 100644 graphics/title_screen/unk_853EF78.pal diff --git a/asm/battle_1.s b/asm/battle_1.s index 636bafbea0..d57f91d378 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -1547,7 +1547,7 @@ _080358E0: .4byte _08035A40 .4byte _08035A70 _08035904: - ldr r4, =gUnknown_0831ABA8 + ldr r4, =gBattleTerrainTable ldr r5, =gBattleTerrain ldrb r1, [r5] lsls r0, r1, 2 @@ -2632,7 +2632,7 @@ _08036350: lsls r0, 24 cmp r0, 0 bne _0803639C - ldr r4, =gUnknown_0831ABA8 + ldr r4, =gBattleTerrainTable ldr r5, =gBattleTerrain ldrb r1, [r5] lsls r0, r1, 2 @@ -2778,7 +2778,7 @@ _080364A8: .4byte _08036510 .4byte _08036518 _080364CC: - ldr r2, =gUnknown_0831ABA8 + ldr r2, =gBattleTerrainTable ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 @@ -2888,7 +2888,7 @@ _080365B4: .4byte _0803661C .4byte _08036624 _080365D8: - ldr r2, =gUnknown_0831ABA8 + ldr r2, =gBattleTerrainTable ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 @@ -3003,7 +3003,7 @@ _080366C8: .4byte _08036738 .4byte _08036740 _080366EC: - ldr r2, =gUnknown_0831ABA8 + ldr r2, =gBattleTerrainTable ldr r0, =gBattleTerrain ldrb r1, [r0] lsls r0, r1, 2 diff --git a/asm/battle_7.s b/asm/battle_7.s index 0115598196..0b5ca514f3 100644 --- a/asm/battle_7.s +++ b/asm/battle_7.s @@ -3365,7 +3365,7 @@ _0805EDE4: adds r4, r1, 0 cmp r0, 0 beq _0805EE06 - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation ldrh r1, [r3, 0x2] adds r1, r0 ldrb r0, [r1] @@ -3441,7 +3441,7 @@ sub_805EE54: @ 805EE54 beq _0805EE7E adds r5, r0, 0 _0805EE7E: - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation adds r0, r5, r0 ldrb r0, [r0] cmp r0, 0 diff --git a/asm/battle_controller_linkopponent.s b/asm/battle_controller_linkopponent.s index 5a762a174a..8ea32eca04 100644 --- a/asm/battle_controller_linkopponent.s +++ b/asm/battle_controller_linkopponent.s @@ -4283,7 +4283,7 @@ _0806694C: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 @@ -4411,7 +4411,7 @@ _08066A76: mov r0, r8 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_083054E0 + ldr r2, =gTrainerFrontPicCoords mov r3, r8 lsls r1, r3, 2 adds r1, r2 diff --git a/asm/battle_controller_linkpartner.s b/asm/battle_controller_linkpartner.s index 3a1b21ed7d..504ba6b5c8 100644 --- a/asm/battle_controller_linkpartner.s +++ b/asm/battle_controller_linkpartner.s @@ -3706,7 +3706,7 @@ _0814D002: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r8, r7 - ldr r0, =gUnknown_08305D2C + ldr r0, =gTrainerBackPicCoords lsls r4, 2 adds r4, r0 ldrb r0, [r4] diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s index 69d4776d4d..0910fc8e2c 100644 --- a/asm/battle_controller_opponent.s +++ b/asm/battle_controller_opponent.s @@ -4339,7 +4339,7 @@ _080617CA: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 @@ -4564,7 +4564,7 @@ _080619DE: mov r0, r8 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_083054E0 + ldr r2, =gTrainerFrontPicCoords mov r3, r8 lsls r1, r3, 2 adds r1, r2 diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s index 5f7e1b9544..d3b29ffe88 100644 --- a/asm/battle_controller_player.s +++ b/asm/battle_controller_player.s @@ -7371,11 +7371,11 @@ _0805B5E0: beq _0805B618 movs r0, 0x5A mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords b _0805B642 .pool _0805B618: - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords lsls r0, r4, 2 adds r0, r1 ldrb r1, [r0] @@ -7392,7 +7392,7 @@ _0805B618: _0805B63C: movs r0, 0x50 mov r9, r0 - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords _0805B642: lsls r0, r4, 2 adds r0, r1 @@ -7733,7 +7733,7 @@ _0805B926: adds r0, r4, 0 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords lsls r4, 2 adds r4, r1 ldrb r1, [r4] diff --git a/asm/battle_controller_player_partner.s b/asm/battle_controller_player_partner.s index 784eacab11..32e3ac5d1d 100644 --- a/asm/battle_controller_player_partner.s +++ b/asm/battle_controller_player_partner.s @@ -4182,7 +4182,7 @@ sub_81BD37C: @ 81BD37C movs r4, 0x7 movs r0, 0x5A mov r9, r0 - ldr r0, =gUnknown_08305D2C + ldr r0, =gTrainerBackPicCoords ldrb r1, [r0, 0x1C] b _081BD3BE .pool @@ -4193,7 +4193,7 @@ _081BD3A8: lsrs r4, r0, 24 movs r0, 0x20 mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords lsls r0, r4, 2 adds r0, r1 ldrb r1, [r0] diff --git a/asm/battle_controller_recorded_opponent.s b/asm/battle_controller_recorded_opponent.s index 90928e7d4a..cde1bc1284 100644 --- a/asm/battle_controller_recorded_opponent.s +++ b/asm/battle_controller_recorded_opponent.s @@ -4096,7 +4096,7 @@ _0818892C: bl sub_806A12C ldr r6, =gUnknown_0202499C mov r9, r7 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords mov r2, r8 lsls r0, r2, 2 adds r0, r1 diff --git a/asm/battle_controller_recorded_player.s b/asm/battle_controller_recorded_player.s index 534f340681..f24cf8c4ad 100644 --- a/asm/battle_controller_recorded_player.s +++ b/asm/battle_controller_recorded_player.s @@ -4033,14 +4033,14 @@ _0818BD72: beq _0818BD9C movs r0, 0x5A mov r9, r0 - ldr r1, =gUnknown_083054E0 + ldr r1, =gTrainerFrontPicCoords b _0818BD9E .pool _0818BD98: movs r0, 0x50 mov r9, r0 _0818BD9C: - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords _0818BD9E: lsls r0, r4, 2 adds r0, r1 diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s index cc149ea4f7..a8187d6421 100644 --- a/asm/battle_controller_safari.s +++ b/asm/battle_controller_safari.s @@ -580,7 +580,7 @@ sub_8159800: @ 8159800 adds r0, r6, 0 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r2, =gUnknown_08305D2C + ldr r2, =gTrainerBackPicCoords ldr r1, [r4] ldrb r1, [r1, 0x8] lsls r1, 2 diff --git a/asm/battle_controller_wally.s b/asm/battle_controller_wally.s index eab7174664..9f3b4ce561 100644 --- a/asm/battle_controller_wally.s +++ b/asm/battle_controller_wally.s @@ -3039,7 +3039,7 @@ sub_8169EC8: @ 8169EC8 movs r0, 0x6 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords ldrb r1, [r1, 0x18] movs r2, 0x8 subs r2, r1 @@ -3124,7 +3124,7 @@ dp01t_07_6_: @ 8169F94 movs r0, 0x6 bl sub_806A12C ldr r0, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords ldrb r1, [r1, 0x18] movs r2, 0x8 subs r2, r1 diff --git a/asm/main_menu.s b/asm/main_menu.s index 40466ae1bf..6194f04874 100644 --- a/asm/main_menu.s +++ b/asm/main_menu.s @@ -119,11 +119,11 @@ InitMainMenu: @ 802F6F4 str r0, [r1, 0x8] ldr r0, [r1, 0x8] bl ResetPaletteFade - ldr r0, =gUnknown_082FF0A0 + ldr r0, =gMainMenuBgPal movs r1, 0 movs r2, 0x20 bl LoadPalette - ldr r0, =gUnknown_082FF0C0 + ldr r0, =gMainMenuTextPal movs r1, 0xF0 movs r2, 0x20 bl LoadPalette @@ -1914,7 +1914,7 @@ task_new_game_prof_birch_speech_1: @ 80307B0 movs r0, 0x54 movs r1, 0 bl SetGpuReg - ldr r0, =gUnknown_082FED3C + ldr r0, =gBirchIntroShadowGfx movs r1, 0xC0 lsls r1, 19 bl LZ77UnCompVram @@ -3679,7 +3679,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678 str r0, [r1, 0x8] ldr r0, [r1, 0x8] bl ResetPaletteFade - ldr r0, =gUnknown_082FED3C + ldr r0, =gBirchIntroShadowGfx adds r1, r4, 0 bl LZ77UnCompVram ldr r0, =gUnknown_082FEEF0 @@ -3689,7 +3689,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678 movs r1, 0 movs r2, 0x40 bl LoadPalette - ldr r0, =gUnknown_082FF01A + ldr r0, =gUnknown_082FF018+2 movs r1, 0x1 movs r2, 0x10 bl LoadPalette @@ -4459,11 +4459,11 @@ set_default_player_name: @ 8031DC4 adds r5, r1, 0 cmp r0, 0 bne _08031DE4 - ldr r1, =gUnknown_082FF128 + ldr r1, =gMalePresetNames b _08031DE6 .pool _08031DE4: - ldr r1, =gUnknown_082FF178 + ldr r1, =gFemalePresetNames _08031DE6: lsls r0, r2, 2 adds r0, r1 diff --git a/asm/reshow_battle_screen.s b/asm/reshow_battle_screen.s index 42ba43ec0e..2066c37ed0 100644 --- a/asm/reshow_battle_screen.s +++ b/asm/reshow_battle_screen.s @@ -618,7 +618,7 @@ _080A986C: adds r0, r4, 0 bl sub_806A12C ldr r6, =gUnknown_0202499C - ldr r1, =gUnknown_08305D2C + ldr r1, =gTrainerBackPicCoords ldr r0, [r5] ldrb r0, [r0, 0x8] lsls r0, 2 @@ -656,7 +656,7 @@ _080A98D0: movs r0, 0x6 bl sub_806A12C ldr r5, =gUnknown_0202499C - ldr r0, =gUnknown_08305D2C + ldr r0, =gTrainerBackPicCoords ldrb r0, [r0, 0x18] movs r4, 0x8 subs r4, r0 diff --git a/asm/rom_80A5C6C.s b/asm/rom_80A5C6C.s index 267045179b..0f6f5a6231 100644 --- a/asm/rom_80A5C6C.s +++ b/asm/rom_80A5C6C.s @@ -419,11 +419,11 @@ _080A5FE8: lsls r0, 1 cmp r4, r0 bls _080A5FF8 - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation b _080A5FFC .pool _080A5FF8: - ldr r0, =gUnknown_08305DCC + ldr r0, =gEnemyMonElevation adds r0, r7, r0 _080A5FFC: ldrb r5, [r0] diff --git a/data/battle_1.s b/data/battle_1.s new file mode 100644 index 0000000000..37f68bfd65 --- /dev/null +++ b/data/battle_1.s @@ -0,0 +1,12 @@ + + .include "asm/macros.inc" + .include "constants/constants.inc" + + .section .rodata + + .align 2 +gUnknown_082FF1C8:: @ 82FF1C8 + .byte 0x01, 0x04, 0x10, 0x40 + .byte 0x02, 0x04, 0x08, 0x20 + .byte 0x02, 0x04, 0x08, 0x20 + .byte 0x00, 0x00, 0x00, 0x00 diff --git a/data/battle_anims.s b/data/battle_anims.s index 6b48bcd2ae..471394fe8f 100644 --- a/data/battle_anims.s +++ b/data/battle_anims.s @@ -4,6 +4,8 @@ .section .rodata .align 2, 0 + @ only partially done because this file terrifies me + gUnknown_08524904:: @ 8524904 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00 @@ -291,62 +293,740 @@ gUnknown_08524B34:: @ 8524B34 gUnknown_08524B3C:: @ 8524B3C .byte 0x00, 0x87, 0x00, 0xc0, 0x00, 0x08, 0x00, 0x00 + .align 2 gUnknown_08524B44:: @ 8524B44 - .incbin "baserom.gba", 0x524b44, 0x1d0 + obj_tiles 0x08c02538, 0x0200, 0x2710 + obj_tiles 0x08c1c6e0, 0x0300, 0x2711 + obj_tiles 0x08c20784, 0x0200, 0x2712 + obj_tiles 0x08c025e8, 0x0100, 0x2713 + obj_tiles 0x08c0265c, 0x0200, 0x2714 + obj_tiles 0x08c0270c, 0x0400, 0x2715 + obj_tiles 0x08c027e0, 0x0180, 0x2716 + obj_tiles 0x08c029cc, 0x0800, 0x2717 + obj_tiles 0x08c02b68, 0x0020, 0x2718 + obj_tiles 0x08c02fa4, 0x0400, 0x2719 + obj_tiles 0x08c02bc4, 0x1200, 0x271a + obj_tiles 0x08c032ac, 0x0180, 0x271b + obj_tiles 0x08c0334c, 0x0080, 0x271c + obj_tiles 0x08c03438, 0x0080, 0x271d + obj_tiles 0x08c1fbd4, 0x0280, 0x271e + obj_tiles 0x08c03484, 0x0080, 0x271f + obj_tiles 0x08c03518, 0x0100, 0x2720 + obj_tiles 0x08c03598, 0x0020, 0x2721 + obj_tiles 0x08c24d7c, 0x0080, 0x2722 + obj_tiles 0x08c035f8, 0x0400, 0x2723 + obj_tiles 0x08c036b8, 0x0200, 0x2724 + obj_tiles 0x08c03a28, 0x0a00, 0x2725 + obj_tiles 0x08c03a28, 0x0a00, 0x2726 + obj_tiles 0x08c037d4, 0x0380, 0x2727 + obj_tiles 0x08c03ea0, 0x0300, 0x2728 + obj_tiles 0x08c03db0, 0x0a00, 0x2729 + obj_tiles 0x08c04494, 0x0a00, 0x272a + obj_tiles 0x08c0481c, 0x0a00, 0x272b + obj_tiles 0x08c04b40, 0x0a00, 0x272c + obj_tiles 0x08c04e90, 0x0a00, 0x272d + obj_tiles 0x08c05170, 0x0a00, 0x272e + obj_tiles 0x08c03f80, 0x0e00, 0x272f + obj_tiles 0x08c043a8, 0x0380, 0x2730 + obj_tiles 0x08c0557c, 0x1000, 0x2731 + obj_tiles 0x08c05eec, 0x0800, 0x2732 + obj_tiles 0x08c062b8, 0x0a00, 0x2733 + obj_tiles 0x08c06678, 0x0800, 0x2734 + obj_tiles 0x08c06a4c, 0x0a00, 0x2735 + obj_tiles 0x08c07964, 0x0a00, 0x2736 + obj_tiles 0x08c07b88, 0x0a00, 0x2737 + obj_tiles 0x08c07e84, 0x0a00, 0x2738 + obj_tiles 0x08c08090, 0x0a00, 0x2739 + obj_tiles 0x08c082c4, 0x0a00, 0x273a + obj_tiles 0x08c085bc, 0x0a00, 0x273b + obj_tiles 0x08c08a0c, 0x0a00, 0x273c + obj_tiles 0x08c08ca0, 0x0a00, 0x273d + obj_tiles 0x08c09604, 0x1000, 0x273e + obj_tiles 0x08c09604, 0x1000, 0x273f + obj_tiles 0x08c09cf0, 0x1000, 0x2740 + obj_tiles 0x08c09cf0, 0x1000, 0x2741 + obj_tiles 0x08c09ffc, 0x0200, 0x2742 + obj_tiles 0x08c0a09c, 0x0200, 0x2743 + obj_tiles 0x08c0a148, 0x0200, 0x2744 + obj_tiles 0x08c2e830, 0x0800, 0x2745 + obj_tiles 0x08c0a3a8, 0x0080, 0x2746 + obj_tiles 0x08c0a8bc, 0x0200, 0x2747 + obj_tiles 0x08c0a3ec, 0x1000, 0x2748 + obj_tiles 0x08c0a980, 0x0180, 0x2749 + .align 2 gUnknown_08524D14:: @ 8524D14 - .incbin "baserom.gba", 0x524d14, 0x270 + obj_tiles 0x08c0aa2c, 0x0c00, 0x274a + obj_tiles 0x08c0aebc, 0x0100, 0x274b + obj_tiles 0x08c0af38, 0x0040, 0x274c + obj_tiles 0x08c0af7c, 0x0180, 0x274d + obj_tiles 0x08c0b04c, 0x0800, 0x274e + obj_tiles 0x08c0b444, 0x0480, 0x274f + obj_tiles 0x08c23104, 0x0200, 0x2750 + obj_tiles 0x08c0b6bc, 0x0200, 0x2751 + obj_tiles 0x08c0b7f0, 0x0100, 0x2752 + obj_tiles 0x08c0b6bc, 0x0200, 0x2753 + obj_tiles 0x08c0b6bc, 0x0200, 0x2754 + obj_tiles 0x08c0b6bc, 0x0200, 0x2755 + obj_tiles 0x08c0b864, 0x0200, 0x2756 + obj_tiles 0x08c0b90c, 0x0a00, 0x2757 + obj_tiles 0x08c0bb38, 0x0300, 0x2758 + obj_tiles 0x08c0bc20, 0x0180, 0x2759 + obj_tiles 0x08c1b29c, 0x00a0, 0x275a + obj_tiles 0x08c0bd5c, 0x0700, 0x275b + obj_tiles 0x08c14cec, 0x0400, 0x275c + obj_tiles 0x08c14f50, 0x0200, 0x275d + obj_tiles 0x08c0bffc, 0x0300, 0x275e + obj_tiles 0x08c0c1bc, 0x0c00, 0x275f + obj_tiles 0x08c0c5ec, 0x0a00, 0x2760 + obj_tiles 0x08c0c974, 0x0080, 0x2761 + obj_tiles 0x08c0cb90, 0x0040, 0x2762 + obj_tiles 0x08c0ce18, 0x0e00, 0x2763 + obj_tiles 0x08c0d2bc, 0x0e00, 0x2764 + obj_tiles 0x08c0d680, 0x0280, 0x2765 + obj_tiles 0x08c0d738, 0x0200, 0x2766 + obj_tiles 0x08c24cfc, 0x0080, 0x2767 + obj_tiles 0x08c0d8a8, 0x00c0, 0x2768 + obj_tiles 0x08c0d8f8, 0x0a00, 0x2769 + obj_tiles 0x08c0db6c, 0x0200, 0x276a + obj_tiles 0x08c0dbfc, 0x0180, 0x276b + obj_tiles 0x08c0dd30, 0x0080, 0x276c + obj_tiles 0x08c0ddac, 0x1000, 0x276d + obj_tiles 0x08c0e47c, 0x0a00, 0x276e + obj_tiles 0x08c0e620, 0x0180, 0x276f + obj_tiles 0x08c0e6d0, 0x0380, 0x2770 + obj_tiles 0x08c0e840, 0x0c00, 0x2771 + obj_tiles 0x08c0ea20, 0x0200, 0x2772 + obj_tiles 0x08c27cec, 0x0200, 0x2773 + obj_tiles 0x08c0eb58, 0x0200, 0x2774 + obj_tiles 0x08c0ec58, 0x0200, 0x2775 + obj_tiles 0x08c0ed88, 0x0400, 0x2776 + obj_tiles 0x08c0ef20, 0x0080, 0x2777 + obj_tiles 0x08c0ef8c, 0x0400, 0x2778 + obj_tiles 0x08c0f174, 0x0c00, 0x2779 + obj_tiles 0x08c0f720, 0x0200, 0x277a + obj_tiles 0x08c0f810, 0x1000, 0x277b + obj_tiles 0x08c0fbe4, 0x0a00, 0x277c + obj_tiles 0x08c0ff68, 0x0020, 0x277d + obj_tiles 0x08c0ffb8, 0x0e00, 0x277e + obj_tiles 0x08c1039c, 0x0080, 0x277f + obj_tiles 0x08c10404, 0x0a00, 0x2780 + obj_tiles 0x08c10754, 0x0400, 0x2781 + obj_tiles 0x08c109e8, 0x0200, 0x2782 + obj_tiles 0x08c115e4, 0x0700, 0x2783 + obj_tiles 0x08c12e88, 0x0800, 0x2784 + obj_tiles 0x08c1315c, 0x0a00, 0x2785 + obj_tiles 0x08c133b4, 0x0600, 0x2786 + obj_tiles 0x08c13568, 0x0800, 0x2787 + obj_tiles 0x08c13820, 0x0200, 0x2788 + obj_tiles 0x08c1393c, 0x0040, 0x2789 + obj_tiles 0x08c1398c, 0x0180, 0x278a + obj_tiles 0x08c13aa4, 0x0600, 0x278b + obj_tiles 0x08c13be0, 0x0600, 0x278c + obj_tiles 0x08c13ea0, 0x0200, 0x278d + obj_tiles 0x08c13fb4, 0x0080, 0x278e + obj_tiles 0x08c1403c, 0x0200, 0x278f + obj_tiles 0x08c14200, 0x0800, 0x2790 + obj_tiles 0x08c1448c, 0x0080, 0x2791 + obj_tiles 0x08c144f0, 0x0a00, 0x2792 + obj_tiles 0x08c148e8, 0x0280, 0x2793 + obj_tiles 0x08c14a58, 0x0280, 0x2794 + obj_tiles 0x08c14b78, 0x0100, 0x2795 + obj_tiles 0x08c14c1c, 0x0200, 0x2796 + obj_tiles 0x08c1a3a0, 0x0200, 0x2797 + .align 2 gUnknown_08524F84:: @ 8524F84 - .incbin "baserom.gba", 0x524f84, 0x308 + obj_tiles 0x08c1a540, 0x0020, 0x2798 + obj_tiles 0x08c1a58c, 0x0a00, 0x2799 + obj_tiles 0x08c1ab40, 0x0800, 0x279a + obj_tiles 0x08c1a790, 0x0800, 0x279b + obj_tiles 0x08c1ac8c, 0x00c0, 0x279c + obj_tiles 0x08c1ad2c, 0x01c0, 0x279d + obj_tiles 0x08c1ae54, 0x0100, 0x279e + obj_tiles 0x08c2cbac, 0x0800, 0x279f + obj_tiles 0x08c1bc64, 0x0200, 0x27a0 + obj_tiles 0x08c1a9a0, 0x0800, 0x27a1 + obj_tiles 0x08c02478, 0x0180, 0x27a2 + obj_tiles 0x08c1af6c, 0x0180, 0x27a3 + obj_tiles 0x08c1b178, 0x0200, 0x27a4 + obj_tiles 0x08c1b0a8, 0x0200, 0x27a5 + obj_tiles 0x08c1b328, 0x0180, 0x27a6 + obj_tiles 0x08c1b418, 0x0400, 0x27a7 + obj_tiles 0x08c033cc, 0x0080, 0x27a8 + obj_tiles 0x08c1b510, 0x0100, 0x27a9 + obj_tiles 0x08c1b594, 0x0100, 0x27aa + obj_tiles 0x08c1b660, 0x0140, 0x27ab + obj_tiles 0x08c1b748, 0x0800, 0x27ac + obj_tiles 0x08c1b988, 0x0200, 0x27ad + obj_tiles 0x08c1ba04, 0x0100, 0x27ae + obj_tiles 0x08c1baf0, 0x00a0, 0x27af + obj_tiles 0x08c1bb94, 0x0100, 0x27b0 + obj_tiles 0x08c0297c, 0x0080, 0x27b1 + obj_tiles 0x08c1be40, 0x0300, 0x27b2 + obj_tiles 0x08c1bee4, 0x0100, 0x27b3 + obj_tiles 0x08c1bee4, 0x0100, 0x27b4 + obj_tiles 0x08c1bee4, 0x0100, 0x27b5 + obj_tiles 0x08c1bfa4, 0x0800, 0x27b6 + obj_tiles 0x08c1bfa4, 0x0800, 0x27b7 + obj_tiles 0x08c1bfa4, 0x0800, 0x27b8 + obj_tiles 0x08c1bfa4, 0x0800, 0x27b9 + obj_tiles 0x08c1bfa4, 0x0800, 0x27ba + obj_tiles 0x08c1c350, 0x0080, 0x27bb + obj_tiles 0x08c1bc64, 0x0200, 0x27bc + obj_tiles 0x08c1c7bc, 0x0200, 0x27bd + obj_tiles 0x08c1d5fc, 0x0200, 0x27be + obj_tiles 0x08c1d6c4, 0x0080, 0x27bf + obj_tiles 0x08c1d750, 0x0200, 0x27c0 + obj_tiles 0x08c1d8d0, 0x0500, 0x27c1 + obj_tiles 0x08c1d9ac, 0x0800, 0x27c2 + obj_tiles 0x08c1db64, 0x0400, 0x27c3 + obj_tiles 0x08c1dc40, 0x0020, 0x27c4 + obj_tiles 0x08c1dc58, 0x0800, 0x27c5 + obj_tiles 0x08c1dfe8, 0x0100, 0x27c6 + obj_tiles 0x08c1e0b4, 0x0800, 0x27c7 + obj_tiles 0x08c1e354, 0x0400, 0x27c8 + obj_tiles 0x08c1e4d0, 0x0a00, 0x27c9 + obj_tiles 0x08c1edd8, 0x1000, 0x27ca + obj_tiles 0x08c1ebc8, 0x0800, 0x27cb + obj_tiles 0x08d966c0, 0x0400, 0x27cc + obj_tiles 0x08c20198, 0x0200, 0x27cd + obj_tiles 0x08c1fc84, 0x0800, 0x27ce + obj_tiles 0x08c1ff04, 0x0800, 0x27cf + obj_tiles 0x08c2023c, 0x0800, 0x27d0 + obj_tiles 0x08c204e4, 0x0200, 0x27d1 + obj_tiles 0x08c20c4c, 0x0800, 0x27d2 + obj_tiles 0x08c20fac, 0x0200, 0x27d3 + obj_tiles 0x08c20890, 0x0800, 0x27d4 + obj_tiles 0x08c21084, 0x0200, 0x27d5 + obj_tiles 0x08c2121c, 0x0800, 0x27d6 + obj_tiles 0x08c21634, 0x0400, 0x27d7 + obj_tiles 0x08c21718, 0x0200, 0x27d8 + obj_tiles 0x08c21874, 0x0a80, 0x27d9 + obj_tiles 0x08c220a8, 0x0600, 0x27da + obj_tiles 0x08c22234, 0x0800, 0x27db + obj_tiles 0x08c21f0c, 0x0200, 0x27dc + obj_tiles 0x08c226a4, 0x0600, 0x27dd + obj_tiles 0x08c22404, 0x0800, 0x27de + obj_tiles 0x08c228fc, 0x0180, 0x27df + obj_tiles 0x08c229ec, 0x0800, 0x27e0 + obj_tiles 0x08c22ddc, 0x0800, 0x27e1 + obj_tiles 0x08c23218, 0x0080, 0x27e2 + obj_tiles 0x08c242b0, 0x0080, 0x27e3 + obj_tiles 0x08c2407c, 0x0800, 0x27e4 + obj_tiles 0x08c24300, 0x0800, 0x27e5 + obj_tiles 0x08c24590, 0x0600, 0x27e6 + obj_tiles 0x08c24820, 0x0600, 0x27e7 + obj_tiles 0x08c23218, 0x0080, 0x27e8 + obj_tiles 0x08c23ff4, 0x0080, 0x27e9 + obj_tiles 0x08c24c50, 0x0180, 0x27ea + obj_tiles 0x08c23218, 0x0080, 0x27eb + obj_tiles 0x08c24dfc, 0x0200, 0x27ec + obj_tiles 0x08c24f48, 0x0400, 0x27ed + obj_tiles 0x08c251ac, 0x0a00, 0x27ee + obj_tiles 0x08c254e0, 0x0800, 0x27ef + obj_tiles 0x08c25794, 0x0200, 0x27f0 + obj_tiles 0x08c27764, 0x0400, 0x27f1 + obj_tiles 0x08c27a58, 0x0080, 0x27f2 + obj_tiles 0x08c27910, 0x0800, 0x27f3 + obj_tiles 0x08c25b1c, 0x0200, 0x27f4 + obj_tiles 0x08c27b08, 0x0300, 0x27f5 + obj_tiles 0x08c258b8, 0x0800, 0x27f6 + obj_tiles 0x08c28394, 0x0380, 0x27f7 + obj_tiles 0x08c27e34, 0x0800, 0x27f8 + .align 2 gUnknown_0852528C:: @ 852528C - .incbin "baserom.gba", 0x52528c, 0x120 + obj_tiles 0x08c28564, 0x00c0, 0x27f9 + obj_tiles 0x08c28610, 0x0800, 0x27fa + obj_tiles 0x08c28880, 0x0060, 0x27fb + obj_tiles 0x08c28880, 0x0060, 0x27fc + obj_tiles 0x08c28880, 0x0060, 0x27fd + obj_tiles 0x08c287f4, 0x0080, 0x27fe + obj_tiles 0x08c2caa0, 0x0180, 0x27ff + obj_tiles 0x08c2cdf4, 0x0180, 0x2800 + obj_tiles 0x08c2d348, 0x0200, 0x2801 + obj_tiles 0x08c2d570, 0x0200, 0x2802 + obj_tiles 0x08c2d6d0, 0x0020, 0x2803 + obj_tiles 0x08c2e554, 0x0400, 0x2804 + obj_tiles 0x08c2df08, 0x0600, 0x2805 + obj_tiles 0x08c2e0ac, 0x1000, 0x2806 + obj_tiles 0x08c2e64c, 0x0400, 0x2807 + obj_tiles 0x08c2eba4, 0x0020, 0x2808 + obj_tiles 0x08c2ebd4, 0x0080, 0x2809 + obj_tiles 0x08c2ec44, 0x0800, 0x280a + obj_tiles 0x08c2ee38, 0x0080, 0x280b + obj_tiles 0x08c2eeb4, 0x0200, 0x280c + obj_tiles 0x08c2eff0, 0x0400, 0x280d + obj_tiles 0x08c2f1f4, 0x0200, 0x280e + obj_tiles 0x08c2f354, 0x0200, 0x280f + obj_tiles 0x08c2f4f0, 0x0800, 0x2810 + obj_tiles 0x08c2f8a4, 0x0280, 0x2811 + obj_tiles 0x08c2f3e0, 0x0200, 0x2812 + obj_tiles 0x08c1b0a8, 0x0200, 0x2813 + obj_tiles 0x08d8dae0, 0x0400, 0x2814 + obj_tiles 0x08d8d2a4, 0x0200, 0x2815 + obj_tiles 0x08d8e840, 0x0200, 0x2816 + obj_tiles 0x08d93b44, 0x0080, 0x2817 + obj_tiles 0x08d8ea54, 0x0020, 0x2818 + obj_tiles 0x08d8ea54, 0x0020, 0x2819 + obj_tiles 0x08d93b9c, 0x0080, 0x281a + obj_tiles 0x08c2407c, 0x0800, 0x281b + obj_tiles 0x08d8ea54, 0x0020, 0x281c + .align 2 gUnknown_085253AC:: @ 85253AC - .incbin "baserom.gba", 0x5253ac, 0x270 + obj_tiles 0x08d8ef2c, 0x0080, 0x281d + obj_tiles 0x08dba378, 0x0400, 0x281e + obj_tiles 0x08dba4b8, 0x0080, 0x281f + obj_tiles 0x08d8ecc4, 0x0800, 0x2820 + obj_tiles 0x08d8ef04, 0x0020, 0x2821 + obj_tiles 0x08d8ef98, 0x0800, 0x2822 + obj_tiles 0x08d8f118, 0x0800, 0x2823 + obj_tiles 0x08d8f284, 0x0800, 0x2824 + obj_tiles 0x08d92eec, 0x1000, 0x2825 + obj_tiles 0x08d93c24, 0x0800, 0x2826 + obj_tiles 0x08d93e4c, 0x00a0, 0x2827 + obj_tiles 0x08d8f780, 0x0800, 0x2828 + obj_tiles 0x08d93eb4, 0x0200, 0x2829 + obj_tiles 0x08dba174, 0x0600, 0x282a + obj_tiles 0x08d93474, 0x0200, 0x282b + obj_tiles 0x08d94658, 0x0800, 0x282c + obj_tiles 0x08d949f0, 0x0200, 0x282d + obj_tiles 0x08c1e0b4, 0x0800, 0x282e + obj_tiles 0x08c0a3ec, 0x1000, 0x282f + obj_tiles 0x08c1bee4, 0x0100, 0x2830 + obj_pal 0x08c028cc, 0x2710 + obj_pal 0x08c1c794, 0x2711 + obj_pal 0x08c20868, 0x2712 + obj_pal 0x08c028f0, 0x2713 + obj_pal 0x08c02918, 0x2714 + obj_pal 0x08c0292c, 0x2715 + obj_pal 0x08c02954, 0x2716 + obj_pal 0x08c02b48, 0x2717 + obj_pal 0x08c02b88, 0x2718 + obj_pal 0x08c0328c, 0x2719 + obj_pal 0x08c02ba4, 0x271a + obj_pal 0x08c03324, 0x271b + obj_pal 0x08c033b4, 0x271c + obj_pal 0x08c0346c, 0x271d + obj_pal 0x08c1fc68, 0x271e + obj_pal 0x08c034f0, 0x271f + obj_pal 0x08c03588, 0x2720 + obj_pal 0x08c03588, 0x2721 + obj_pal 0x08c24db8, 0x2722 + obj_pal 0x08c035dc, 0x2723 + obj_pal 0x08c03784, 0x2724 + obj_pal 0x08c03a00, 0x2725 + obj_pal 0x08c03d60, 0x2726 + obj_pal 0x08c037ac, 0x2727 + obj_pal 0x08c03f6c, 0x2728 + obj_pal 0x08c03d88, 0x2729 + obj_pal 0x08c047cc, 0x272a + obj_pal 0x08c047f4, 0x272b + obj_pal 0x08c04b18, 0x272c + obj_pal 0x08c05148, 0x272d + obj_pal 0x08c05530, 0x272e + obj_pal 0x08c04360, 0x272f + obj_pal 0x08c04380, 0x2730 + obj_pal 0x08c05554, 0x2731 + obj_pal 0x08c05554, 0x2732 + obj_pal 0x08c05554, 0x2733 + obj_pal 0x08c06650, 0x2734 + obj_pal 0x08c06650, 0x2735 + obj_pal 0x08c07914, 0x2736 + obj_pal 0x08c0793c, 0x2737 + obj_pal 0x08c07914, 0x2738 + obj_pal 0x08c07914, 0x2739 + obj_pal 0x08c08594, 0x273a + obj_pal 0x08c089bc, 0x273b + obj_pal 0x08c089e4, 0x273c + obj_pal 0x08c08c78, 0x273d + obj_pal 0x08c099e4, 0x273e + obj_pal 0x08c09a04, 0x273e + obj_pal 0x08c09f88, 0x2740 + obj_pal 0x08c09fb0, 0x2741 + obj_pal 0x08c09fd8, 0x2742 + obj_pal 0x08c09fd8, 0x2743 + obj_pal 0x08c09fd8, 0x2744 + obj_pal 0x08c047cc, 0x2745 + obj_pal 0x08c0a3d4, 0x2746 + obj_pal 0x08c09fd8, 0x2747 + obj_pal 0x08c0a894, 0x2748 + obj_pal 0x08c0aa08, 0x2749 + + .align 2 gUnknown_0852561C:: @ 852561C - .incbin "baserom.gba", 0x52561c, 0x270 + obj_pal 0x08c0ae94, 0x274a + obj_pal 0x08c0af1c, 0x274b + obj_pal 0x08c0af60, 0x274c + obj_pal 0x08c0b02c, 0x274d + obj_pal 0x08c0b41c, 0x274e + obj_pal 0x08c0b600, 0x274f + obj_pal 0x08c231f4, 0x2750 + obj_pal 0x08c0b7d0, 0x2751 + obj_pal 0x08c0b83c, 0x2752 + obj_pal 0x08d8eaa4, 0x2753 + obj_pal 0x08d8eac4, 0x2754 + obj_pal 0x08c0b7d0, 0x2755 + obj_pal 0x08c0b8e4, 0x2756 + obj_pal 0x08c0b8e4, 0x2757 + obj_pal 0x08c0bc08, 0x2758 + obj_pal 0x08c0bd3c, 0x2759 + obj_pal 0x08c1b304, 0x275a + obj_pal 0x08c0bfd8, 0x275b + obj_pal 0x08c14f28, 0x275c + obj_pal 0x08c14f28, 0x275d + obj_pal 0x08c0c194, 0x275e + obj_pal 0x08c0c194, 0x275f + obj_pal 0x08c0c950, 0x2760 + obj_pal 0x08c0c9f8, 0x2761 + obj_pal 0x08c0cbb4, 0x2762 + obj_pal 0x08c0cbc8, 0x2763 + obj_pal 0x08c0cbf0, 0x2764 + obj_pal 0x08c0cc18, 0x2765 + obj_pal 0x08c0cc30, 0x2766 + obj_pal 0x08c24d54, 0x2767 + obj_pal 0x08c0cc58, 0x2768 + obj_pal 0x08c0cc74, 0x2769 + obj_pal 0x08c0cc9c, 0x276a + obj_pal 0x08c0b698, 0x276b + obj_pal 0x08c0ccc0, 0x276c + obj_pal 0x08c0ccdc, 0x276d + obj_pal 0x08c0cd04, 0x276e + obj_pal 0x08c0cd44, 0x276f + obj_pal 0x08c0cd6c, 0x2770 + obj_pal 0x08c0cd88, 0x2771 + obj_pal 0x08c0cd04, 0x2772 + obj_pal 0x08c27e0c, 0x2773 + obj_pal 0x08c0cdb0, 0x2774 + obj_pal 0x08c0cdcc, 0x2775 + obj_pal 0x08c0cdcc, 0x2776 + obj_pal 0x08c0cdf4, 0x2777 + obj_pal 0x08c0f14c, 0x2778 + obj_pal 0x08c0f6f8, 0x2779 + obj_pal 0x08c0f6f8, 0x277a + obj_pal 0x08c0fbbc, 0x277b + obj_pal 0x08c0fbbc, 0x277c + obj_pal 0x08c0ff90, 0x277d + obj_pal 0x08c0ff90, 0x277e + obj_pal 0x08c103e0, 0x277f + obj_pal 0x08c1072c, 0x2780 + obj_pal 0x08c109c0, 0x2781 + obj_pal 0x08c10adc, 0x2782 + obj_pal 0x08c028ac, 0x2783 + obj_pal 0x08c13134, 0x2784 + obj_pal 0x08c13398, 0x2785 + obj_pal 0x08c1354c, 0x2786 + obj_pal 0x08c137f8, 0x2787 + obj_pal 0x08c13914, 0x2788 + obj_pal 0x08c13968, 0x2789 + obj_pal 0x08c13a88, 0x278a + obj_pal 0x08c13a88, 0x278b + obj_pal 0x08c13e78, 0x278c + obj_pal 0x08c13f8c, 0x278d + obj_pal 0x08c1401c, 0x278e + obj_pal 0x08c141dc, 0x278f + obj_pal 0x08c1446c, 0x2790 + obj_pal 0x08c1446c, 0x2791 + obj_pal 0x08c148c0, 0x2792 + obj_pal 0x08c148c0, 0x2793 + obj_pal 0x08c14b58, 0x2794 + obj_pal 0x08c14bf4, 0x2795 + obj_pal 0x08c14bf4, 0x2796 + obj_pal 0x08c1a478, 0x2797 + .align 2 gUnknown_0852588C:: @ 852588C - .incbin "baserom.gba", 0x52588c, 0x308 + obj_pal 0x08c1a564, 0x2798 + obj_pal 0x08c1a478, 0x2799 + obj_pal 0x08c1a478, 0x279a + obj_pal 0x08c1a980, 0x279b + obj_pal 0x08c1ad0c, 0x279c + obj_pal 0x08c1ae34, 0x279d + obj_pal 0x08c1ae34, 0x279e + obj_pal 0x08c2cddc, 0x279f + obj_pal 0x08c1bcdc, 0x27a0 + obj_pal 0x08c1a980, 0x27a1 + obj_pal 0x08c028ac, 0x27a2 + obj_pal 0x08c1b080, 0x27a3 + obj_pal 0x08c1b25c, 0x27a4 + obj_pal 0x08c1b25c, 0x27a5 + obj_pal 0x08c1b3fc, 0x27a6 + obj_pal 0x08c1b3fc, 0x27a7 + obj_pal 0x08c03414, 0x27a8 + obj_pal 0x08c1b57c, 0x27a9 + obj_pal 0x08c1b640, 0x27aa + obj_pal 0x08c1b728, 0x27ab + obj_pal 0x08c1b960, 0x27ac + obj_pal 0x08c1b9ec, 0x27ad + obj_pal 0x08c1bacc, 0x27ae + obj_pal 0x08c1bb6c, 0x27af + obj_pal 0x08c1bc3c, 0x27b0 + obj_pal 0x08c029a4, 0x27b1 + obj_pal 0x08c1bec4, 0x27b2 + obj_pal 0x08c1bf44, 0x27b3 + obj_pal 0x08c1bf74, 0x27b4 + obj_pal 0x08c1bf8c, 0x27b5 + obj_pal 0x08c1c2b0, 0x27b6 + obj_pal 0x08c1c2d0, 0x27b7 + obj_pal 0x08c1c2f0, 0x27b8 + obj_pal 0x08c1c310, 0x27b9 + obj_pal 0x08c1c330, 0x27ba + obj_pal 0x08c1c39c, 0x27bb + obj_pal 0x08c1c3c4, 0x27bc + obj_pal 0x08c1c794, 0x27bd + obj_pal 0x08c1d69c, 0x27be + obj_pal 0x08c1d728, 0x27bf + obj_pal 0x08c1d8a8, 0x27c0 + obj_pal 0x08c1d994, 0x27c1 + obj_pal 0x08c1db14, 0x27c2 + obj_pal 0x08c1db3c, 0x27c3 + obj_pal 0x08c1db3c, 0x27c4 + obj_pal 0x08c1db3c, 0x27c5 + obj_pal 0x08c1e08c, 0x27c6 + obj_pal 0x08c1e32c, 0x27c7 + obj_pal 0x08c1e4a8, 0x27c8 + obj_pal 0x08c1e8e4, 0x27c9 + obj_pal 0x08c1f1a4, 0x27ca + obj_pal 0x08c1edb8, 0x27cb + obj_pal 0x08d967d4, 0x27cc + obj_pal 0x08c2021c, 0x27cd + obj_pal 0x08c1fee0, 0x27ce + obj_pal 0x08c20170, 0x27cf + obj_pal 0x08c204bc, 0x27d0 + obj_pal 0x08c20640, 0x27d1 + obj_pal 0x08c20f84, 0x27d2 + obj_pal 0x08c21064, 0x27d3 + obj_pal 0x08c20c34, 0x27d4 + obj_pal 0x08c211f4, 0x27d5 + obj_pal 0x08c2160c, 0x27d6 + obj_pal 0x08c216fc, 0x27d7 + obj_pal 0x08c21858, 0x27d8 + obj_pal 0x08c21ee4, 0x27d9 + obj_pal 0x08c22210, 0x27da + obj_pal 0x08c223e0, 0x27db + obj_pal 0x08c22080, 0x27dc + obj_pal 0x08c228d8, 0x27dd + obj_pal 0x08c22610, 0x27de + obj_pal 0x08c229c8, 0x27df + obj_pal 0x08c1c2d0, 0x27e0 + obj_pal 0x08c230e4, 0x27e1 + obj_pal 0x08c232a0, 0x27e2 + obj_pal 0x08c2456c, 0x27e3 + obj_pal 0x08c2456c, 0x27e4 + obj_pal 0x08c2456c, 0x27e5 + obj_pal 0x08c231f4, 0x27e6 + obj_pal 0x08c249ac, 0x27e7 + obj_pal 0x08c232c0, 0x27e8 + obj_pal 0x08c2405c, 0x27e9 + obj_pal 0x08c24c28, 0x27ea + obj_pal 0x08c23280, 0x27eb + obj_pal 0x08c24dd4, 0x27ec + obj_pal 0x08c24f28, 0x27ed + obj_pal 0x08c25498, 0x27ee + obj_pal 0x08c254c0, 0x27ef + obj_pal 0x08c25774, 0x27f0 + obj_pal 0x08c278e8, 0x27f1 + obj_pal 0x08c27ae4, 0x27f2 + obj_pal 0x08c27ae4, 0x27f3 + obj_pal 0x08c25afc, 0x27f4 + obj_pal 0x08c27cc4, 0x27f5 + obj_pal 0x08c25890, 0x27f6 + obj_pal 0x08c2836c, 0x27f7 + obj_pal 0x08c2836c, 0x27f8 + .align 2 gUnknown_08525B94:: @ 8525B94 - .incbin "baserom.gba", 0x525b94, 0x120 + obj_pal 0x08c285e8, 0x27f9 + obj_pal 0x08c287d0, 0x27fa + obj_pal 0x08c288d0, 0x27fb + obj_pal 0x08c288ec, 0x27fc + obj_pal 0x08c28908, 0x27fd + obj_pal 0x08c2885c, 0x27fe + obj_pal 0x08c2cb84, 0x27ff + obj_pal 0x08c2ce94, 0x2800 + obj_pal 0x08c2d40c, 0x2801 + obj_pal 0x08c2d6ac, 0x2802 + obj_pal 0x08c2d6f8, 0x2803 + obj_pal 0x08c2e630, 0x2804 + obj_pal 0x08c2dee0, 0x2805 + obj_pal 0x08c2dee0, 0x2806 + obj_pal 0x08c231f4, 0x2807 + obj_pal 0x08c2ebbc, 0x2808 + obj_pal 0x08c2ec24, 0x2809 + obj_pal 0x08c2ec24, 0x280a + obj_pal 0x08c2ee9c, 0x280b + obj_pal 0x08c2efcc, 0x280c + obj_pal 0x08c2f1cc, 0x280d + obj_pal 0x08c2f32c, 0x280e + obj_pal 0x08c2f3cc, 0x280f + obj_pal 0x08c2f87c, 0x2810 + obj_pal 0x08c2f9c0, 0x2811 + obj_pal 0x08c2f4c8, 0x2812 + obj_pal 0x08c1b27c, 0x2813 + obj_pal 0x08d8dc9c, 0x2814 + obj_pal 0x08d8dab8, 0x2815 + obj_pal 0x08d8e914, 0x2816 + obj_pal 0x08d93b84, 0x2817 + obj_pal 0x08d8ea74, 0x2818 + obj_pal 0x08d8ea8c, 0x2819 + obj_pal 0x08d93bdc, 0x281a + obj_pal 0x08d93bf4, 0x281b + obj_pal 0x08d93c0c, 0x281c + .align 2 gUnknown_08525CB4:: @ 8525CB4 - .incbin "baserom.gba", 0x525cb4, 0xa0 + obj_pal 0x08d8ef80, 0x281d + obj_pal 0x08dba35c, 0x281e + obj_pal 0x08dba4a0, 0x281f + obj_pal 0x08d8eee0, 0x2820 + obj_pal 0x08d8eee0, 0x2821 + obj_pal 0x08d8f3ec, 0x2822 + obj_pal 0x08d8f3ec, 0x2823 + obj_pal 0x08d8f3ec, 0x2824 + obj_pal 0x08d92ec4, 0x2825 + obj_pal 0x08d93e30, 0x2826 + obj_pal 0x08d93e98, 0x2827 + obj_pal 0x08d8fb7c, 0x2828 + obj_pal 0x08d9403c, 0x2829 + obj_pal 0x08dba14c, 0x282a + obj_pal 0x08d93458, 0x282b + obj_pal 0x08d949d4, 0x282c + obj_pal 0x08d94a90, 0x282d + obj_pal 0x08d96698, 0x282e + obj_pal 0x08d9104c, 0x282f + obj_pal 0x08c1bf5c, 0x2830 + .align 2 gUnknown_08525D54:: @ 8525D54 - .incbin "baserom.gba", 0x525d54, 0x144 + .4byte 0x08c1c844, 0x08c1ce3c, 0x08c1ce5c + .4byte 0x08c1c844, 0x08c1ce3c, 0x08c1ce5c + .4byte 0x08d90074, 0x08d90d3c, 0x08d90d58 + .4byte 0x08c1e90c, 0x08c1eadc, 0x08c1eb00 + .4byte 0x08c25bec, 0x08c25bc4, 0x08c26958 + .4byte 0x08c25bec, 0x08c25bc4, 0x08c26e54 + .4byte 0x08c25bec, 0x08c25bc4, 0x08c27324 + .4byte 0x08c28924, 0x08c28acc, 0x08c28b1c + .4byte 0x08c28924, 0x08c28acc, 0x08c28cac + .4byte 0x08c29dbc, 0x08c29d7c, 0x08c29a84 + .4byte 0x08c29dbc, 0x08c29d7c, 0x08c2a33c + .4byte 0x08c2bde4, 0x08c2c780, 0x08c2c7a8 + .4byte 0x08c2b05c, 0x08c2bdc4, 0x08c2a808 + .4byte 0x08c2b05c, 0x08c2bdc4, 0x08c2aad0 + .4byte 0x08c2b05c, 0x08c2bdc4, 0x08c2adcc + .4byte 0x08d8dcb4, 0x08d8e624, 0x08d8e648 + .4byte 0x08d92b28, 0x08d92b00, 0x08d92d88 + .4byte 0x08d8f414, 0x08d8f570, 0x08d8f598 + .4byte 0x08c28924, 0x08c28af4, 0x08c28b1c + .4byte 0x08c28924, 0x08c28af4, 0x08c28cac + .4byte 0x08c28e38, 0x08c29860, 0x08c29880 + .4byte 0x08d9405c, 0x08d94350, 0x08d9436c + .4byte 0x08c29dbc, 0x08c29d9c, 0x08c29a84 + .4byte 0x08c29dbc, 0x08c29d9c, 0x08c2a33c + .4byte 0x08c25bec, 0x08d91074, 0x08c26958 + .4byte 0x08c25bec, 0x08d91074, 0x08c26e54 + .4byte 0x08c25bec, 0x08d91074, 0x08c27324 + .align 2 gUnknown_08525E98:: @ 8525E98 - .incbin "baserom.gba", 0x525e98, 0xc0 + .4byte ma00_load_graphics + .4byte ma01_080728D0 + .4byte ma02_instanciate_template + .4byte sub_80A3ECC + .4byte ma04_wait_countdown + .4byte sub_80A3F88 + .4byte nullsub_6 + .4byte nullsub_7 + .4byte sub_80A3FC4 + .4byte ma09_play_sound + .4byte sub_80A41D8 + .4byte ma0B_0807324C + .4byte ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument + .4byte ma0D_reset_BLDCNT_and_BLDALPHA + .4byte ma0E_call + .4byte sub_80A4D00 + .4byte ma10_080736AC + .4byte ma11_if_else + .4byte ma12_cond_if + .4byte ma13_goto + .4byte ma14_load_background + .4byte ma15_load_battle_screen_elements + .4byte ma16_wait_for_battle_screen_elements_s2 + .4byte sub_80A5124 + .4byte ma18_load_background_probably + .4byte ma19_08073BC8 + .4byte ma1A_8073C00 + .4byte ma1B_8073C2C + .4byte ma1C_8073ED0 + .4byte ma1D_08073FB4 + .4byte ma1E_set_BLDCNT + .4byte sub_80A57F8 + .4byte ma20_wait_for_something + .4byte ma21_08074164 + .4byte sub_80A4A18 + .4byte ma23_8073484 + .4byte sub_80A5944 + .4byte sub_80A4E5C + .4byte sub_80A5508 + .4byte sub_80A559C + .4byte sub_80A5984 + .4byte sub_80A59DC + .4byte sub_80A5A0C + .4byte ma2B_make_side_invisible + .4byte ma2C_make_side_visible + .4byte sub_80A5AFC + .4byte sub_80A5BAC + .4byte ma2F_stop_music + .align 2 gUnknown_08525F58:: @ 8525F58 - .incbin "baserom.gba", 0x525f58, 0x20 + .byte 0x48, 0x50, 0x00, 0x00, 0xb0, 0x28, 0x00, 0x00 + .byte 0x30, 0x28, 0x00, 0x00, 0x70, 0x50, 0x00, 0x00 + .byte 0x20, 0x50, 0x00, 0x00, 0xc8, 0x28, 0x00, 0x00 + .byte 0x5a, 0x58, 0x00, 0x00, 0x98, 0x20, 0x00, 0x00 + .align 2 gUnknown_08525F78:: @ 8525F78 - .incbin "baserom.gba", 0x525f78, 0x10 + .byte 0x44, 0x11, 0x00, 0x00, 0x66, 0x09, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00, 0x86, 0x08, 0x00, 0x00 + .align 2 gUnknown_08525F88:: @ 8525F88 - .incbin "baserom.gba", 0x525f88, 0x4 + .byte 0x0d, 0x0e, 0x0d, 0x0d + .align 2 gUnknown_08525F8C:: @ 8525F8C - .incbin "baserom.gba", 0x525f8c, 0x4 + .byte 0x00, 0x00, 0x00, 0x00 + .align 2 gUnknown_08525F90:: @ 8525F90 - .incbin "baserom.gba", 0x525f90, 0x30 + spr_template 0xd755, 0xd755, gUnknown_0852497C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + spr_template 0xd756, 0xd756, gUnknown_0852497C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + .align 2 gUnknown_08525FC0:: @ 8525FC0 - .incbin "baserom.gba", 0x525fc0, 0x18f80 + obj_tiles gMiscBlank_Gfx, 0x0800, 0xd755 + obj_tiles gMiscBlank_Gfx, 0x0800, 0xd756 + .align 2 +@ the mother of all baserom includes + .incbin "baserom.gba", 0x525fd0, 0x18f60 + + .align 2 +gUnknown_0853EF30:: @ 853EF30 + .byte 0xf0, 0xf0, 0x0c, 0x80, 0xf0, 0x30, 0x0d, 0x84, 0x30, 0xf0, 0x0e, 0x86, 0x30, 0x30, 0x08, 0x88 + + .align 2 gUnknown_0853EF40:: @ 853EF40 - .incbin "baserom.gba", 0x53ef40, 0x8 + .4byte 0x00000004, gUnknown_0853EF30 + .align 2 gUnknown_0853EF48:: @ 853EF48 - .incbin "baserom.gba", 0x53ef48, 0x18 + spr_template 0x271a, 0x271a, gUnknown_08524A3C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + .align 2 gUnknown_0853EF60:: @ 853EF60 - .incbin "baserom.gba", 0x53ef60, 0xf8 + spr_template 0x2798, 0x2798, gUnknown_08524904, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80A9E44 + diff --git a/data/battle_message.s b/data/battle_message.s index 05847eed03..4ec085d2fb 100644 --- a/data/battle_message.s +++ b/data/battle_message.s @@ -1768,12 +1768,26 @@ gText_SafariBalls:: @ 85CCB2C gText_SafariBallLeft:: @ 85CCB3C .string "{HIGHLIGHT DARK_GREY}Left: $" .string "{HIGHLIGHT DARK_GREY}$" + +gText_Sleep:: @ 85CCB50 .string "sleep$" + +gText_Poison:: @ 85CCB4A .string "poison$" + +gText_Burn:: @ 85CCB5C .string "burn$" + +gText_Paralysis:: @ 85CCB57 .string "paralysis$" + +gText_Ice:: @ 85CCB66 .string "ice$" + +gText_Confusion:: @ 85CCB98 .string "confusion$" + +gText_Love:: @ 85CCBA0 .string "love$" gText_SpaceAndSpace:: @ 85CCB79 diff --git a/data/data2b.s b/data/data2b.s index fd72e835e6..77bb776cc8 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -6,103 +6,3895 @@ .section .rodata .align 2 - - -gUnknown_082FECFC:: @ 82FECFC - .incbin "baserom.gba", 0x2fecfc, 0x40 - -gUnknown_082FED3C:: @ 82FED3C - .incbin "baserom.gba", 0x2fed3c, 0x1b4 - -gUnknown_082FEEF0:: @ 82FEEF0 - .incbin "baserom.gba", 0x2feef0, 0x128 - -gUnknown_082FF018:: @ 82FF018 - .incbin "baserom.gba", 0x2ff018, 0x2 - -gUnknown_082FF01A:: @ 82FF01A - .incbin "baserom.gba", 0x2ff01a, 0xe - -gUnknown_082FF028:: @ 82FF028 - .incbin "baserom.gba", 0x2ff028, 0x10 - -gUnknown_082FF038:: @ 82FF038 - .incbin "baserom.gba", 0x2ff038, 0x10 - -gUnknown_082FF048:: @ 82FF048 - .incbin "baserom.gba", 0x2ff048, 0x28 - -gUnknown_082FF070:: @ 82FF070 - .incbin "baserom.gba", 0x2ff070, 0x10 - -gUnknown_082FF080:: @ 82FF080 - .incbin "baserom.gba", 0x2ff080, 0x8 - -gUnknown_082FF088:: @ 82FF088 - .incbin "baserom.gba", 0x2ff088, 0x18 - -gUnknown_082FF0A0:: @ 82FF0A0 - .incbin "baserom.gba", 0x2ff0a0, 0x20 - -gUnknown_082FF0C0:: @ 82FF0C0 - .incbin "baserom.gba", 0x2ff0c0, 0x20 - -gUnknown_082FF0E0:: @ 82FF0E0 - .incbin "baserom.gba", 0x2ff0e0, 0x3 - -gUnknown_082FF0E3:: @ 82FF0E3 - .incbin "baserom.gba", 0x2ff0e3, 0x5 - -gUnknown_082FF0E8:: @ 82FF0E8 - .incbin "baserom.gba", 0x2ff0e8, 0x8 - -gUnknown_082FF0F0:: @ 82FF0F0 - .incbin "baserom.gba", 0x2ff0f0, 0x4 - -gUnknown_082FF0F4:: @ 82FF0F4 - .incbin "baserom.gba", 0x2ff0f4, 0x20 - -gUnknown_082FF114:: @ 82FF114 - .incbin "baserom.gba", 0x2ff114, 0x4 - -gUnknown_082FF118:: @ 82FF118 - .incbin "baserom.gba", 0x2ff118, 0x10 - -gUnknown_082FF128:: @ 82FF128 - .incbin "baserom.gba", 0x2ff128, 0x50 - -gUnknown_082FF178:: @ 82FF178 - .incbin "baserom.gba", 0x2ff178, 0x50 - -gUnknown_082FF1C8:: @ 82FF1C8 - .incbin "baserom.gba", 0x2ff1c8, 0x10 - gUnknown_082FF1D8:: @ 82FF1D8 - .incbin "baserom.gba", 0x2ff1d8, 0x20 + .incbin "graphics/link/minigame_digits.gbapal" + .align 2 gUnknown_082FF1F8:: @ 82FF1F8 - .incbin "baserom.gba", 0x2ff1f8, 0x420 + .incbin "graphics/link/minigame_digits.4bpp.lz" + .align 2 +gUnknown_082FF2B8:: @ 82FF2B8 + .incbin "graphics/link/minigame_digits2.4bpp.lz" + + .align 2 +gUnknown_082FF3A8:: @ 82FF3A8 + .byte 0x00, 0x80, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0x88, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0x90, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0x98, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xa0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xa8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xb0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xb8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xc0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xc8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xd0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xd8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xe0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xe8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xf0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + .byte 0x00, 0xf8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + + .align 2 +gUnknown_082FF428:: @ 82FF428 + obj_frame_tiles gTrainerBackPic_Brendan, 0x0800 + obj_frame_tiles gTrainerBackPic_Brendan + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_Brendan + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_Brendan + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_May, 0x0800 + obj_frame_tiles gTrainerBackPic_May + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_May + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_May + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_Red, 0x0800 + obj_frame_tiles gTrainerBackPic_Red + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_Red + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_Red + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_Red + 0x2000, 0x0800 + obj_frame_tiles gTrainerBackPic_Leaf, 0x0800 + obj_frame_tiles gTrainerBackPic_Leaf + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_Leaf + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_Leaf + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_Leaf + 0x2000, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireBrendan, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireMay, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_Wally, 0x0800 + obj_frame_tiles gTrainerBackPic_Wally + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_Wally + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_Wally + 0x1800, 0x0800 + obj_frame_tiles gTrainerBackPic_Steven, 0x0800 + obj_frame_tiles gTrainerBackPic_Steven + 0x0800, 0x0800 + obj_frame_tiles gTrainerBackPic_Steven + 0x1000, 0x0800 + obj_frame_tiles gTrainerBackPic_Steven + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF538:: @ 82FF538 + .2byte 0x0000, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF540:: @ 82FF540 + .2byte 0x0003, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF548:: @ 82FF548 + .2byte 0x0100, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF558:: @ 82FF558 + .2byte 0xff00, 0x0100, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF568:: @ 82FF568 + .2byte 0x0028, 0x0028, 0x0000, 0x0000, 0x0012, 0x0012, 0x0c00, 0x0000 + .2byte 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF580:: @ 82FF580 + .2byte 0xfffe, 0xfffe, 0x1200, 0x0000, 0xfff0, 0xfff0, 0x0f00, 0x0000 + .2byte 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF598:: @ 82FF598 + .2byte 0x00a0, 0x0100, 0x0000, 0x0000, 0x0004, 0x0000, 0x0800, 0x0000 + .2byte 0xfffc, 0x0000, 0x0800, 0x0000, 0x7ffe, 0x0001, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF5B8:: @ 82FF5B8 + .2byte 0x0002, 0x0002, 0x1400, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF5C8:: @ 82FF5C8 + .2byte 0xfffe, 0xfffe, 0x1400, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF5D8:: @ 82FF5D8 + .2byte 0x0100, 0x0100, 0x0000, 0x0000, 0xfff0, 0xfff0, 0x0900, 0x0000 + .2byte 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF5F0:: @ 82FF5F0 + .2byte 0x0004, 0x0004, 0x3f00, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF600:: @ 82FF600 + .2byte 0x0000, 0x0000, 0x05fd, 0x0000, 0x0000, 0x0000, 0x0503, 0x0000 + .2byte 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 gUnknown_082FF618:: @ 82FF618 - .incbin "baserom.gba", 0x2ff618, 0x7c + .4byte gUnknown_082FF548 + .4byte gUnknown_082FF568 + .4byte gUnknown_082FF580 + .4byte gUnknown_082FF598 + .4byte gUnknown_082FF5B8 + .4byte gUnknown_082FF5C8 + .4byte gUnknown_082FF5F0 + .4byte gUnknown_082FF600 + .4byte gUnknown_082FF5D8 + .align 2 +gUnknown_082FF63C:: @ 82FF63C + .2byte 0xfffc, 0xfffc, 0x3f04, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF64C:: @ 82FF64C + .2byte 0x0000, 0x0000, 0x0503, 0x0000, 0x0000, 0x0000, 0x05fd, 0x0000 + .2byte 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF664:: @ 82FF664 + .2byte 0x0000, 0x0000, 0x14fb, 0x0000, 0x0000, 0x0000, 0x1400, 0x0000 + .2byte 0x0000, 0x0000, 0x1405, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF684:: @ 82FF684 + .2byte 0x0000, 0x0000, 0x6e09, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 gUnknown_082FF694:: @ 82FF694 - .incbin "baserom.gba", 0x2ff694, 0x2c + .4byte gUnknown_082FF548 + .4byte gUnknown_082FF568 + .4byte gUnknown_082FF580 + .4byte gUnknown_082FF598 + .4byte gUnknown_082FF5B8 + .4byte gUnknown_082FF5C8 + .4byte gUnknown_082FF63C + .4byte gUnknown_082FF64C + .4byte gUnknown_082FF664 + .4byte gUnknown_082FF5D8 + .4byte gUnknown_082FF684 + .align 2 gUnknown_082FF6C0:: @ 82FF6C0 - .incbin "baserom.gba", 0x2ff6c0, 0x4c + .4byte gUnknown_082FF558 + .4byte gUnknown_082FF568 + .4byte gUnknown_082FF580 + .4byte gUnknown_082FF598 + .4byte gUnknown_082FF5B8 + .4byte gUnknown_082FF5C8 + .4byte gUnknown_082FF63C + .4byte gUnknown_082FF64C + .4byte gUnknown_082FF664 + .4byte gUnknown_082FF5D8 + .4byte gUnknown_082FF684 + .align 2 +gUnknown_082FF6EC:: @ 82FF6EC + .2byte 0x0000, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF6F4:: @ 82FF6F4 + .2byte 0x0001, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF6FC:: @ 82FF6FC + .2byte 0x0002, 0x0000, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF704:: @ 82FF704 + .2byte 0x0003, 0x0000, 0xffff, 0x0000 + + .align 2 gUnknown_082FF70C:: @ 82FF70C - .incbin "baserom.gba", 0x2ff70c, 0x162c + .4byte gUnknown_082FF6EC + .4byte gUnknown_082FF6F4 + .4byte gUnknown_082FF6FC + .4byte gUnknown_082FF704 + .align 2 +gUnknown_082FF71C:: @ 82FF71C + .2byte 0x0000, 0x0001, 0x0001, 0x0019, 0x0000, 0x0007, 0x0001, 0x0007 + .2byte 0x0000, 0x0007, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF734:: @ 82FF734 + .2byte 0x0000, 0x0001, 0x0002, 0x0008, 0x0000, 0x0008, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF744:: @ 82FF744 + .2byte 0x0000, 0x000a, 0x0002, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF750:: @ 82FF750 + .2byte 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF758:: @ 82FF758 + .2byte 0x0000, 0x0001, 0x0001, 0x0005, 0x0000, 0x0005, 0x0001, 0x0005 + .2byte 0x0000, 0x0005, 0x0001, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF774:: @ 82FF774 + .2byte 0x0000, 0x0001, 0x0002, 0x000c, 0x0000, 0x000e, 0x0002, 0x000c + .2byte 0x0000, 0x000e, 0x0002, 0x000c, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF790:: @ 82FF790 + .2byte 0x0000, 0x000e, 0x0002, 0x000c, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF79C:: @ 82FF79C + .2byte 0x0000, 0x000a, 0x0001, 0x000a, 0x0000, 0x000a, 0x0001, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7B0:: @ 82FF7B0 + .2byte 0x0000, 0x000a, 0x0002, 0x000a, 0x0000, 0x000a, 0x0002, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7C4:: @ 82FF7C4 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7CC:: @ 82FF7CC + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7D4:: @ 82FF7D4 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7DC:: @ 82FF7DC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7E4:: @ 82FF7E4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7EC:: @ 82FF7EC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7F4:: @ 82FF7F4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF7FC:: @ 82FF7FC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF804:: @ 82FF804 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF80C:: @ 82FF80C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF814:: @ 82FF814 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF81C:: @ 82FF81C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF824:: @ 82FF824 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF82C:: @ 82FF82C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF834:: @ 82FF834 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF83C:: @ 82FF83C + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF844:: @ 82FF844 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF84C:: @ 82FF84C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF854:: @ 82FF854 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF85C:: @ 82FF85C + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF864:: @ 82FF864 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF86C:: @ 82FF86C + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF874:: @ 82FF874 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF87C:: @ 82FF87C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF884:: @ 82FF884 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF88C:: @ 82FF88C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF894:: @ 82FF894 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF89C:: @ 82FF89C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF8A4:: @ 82FF8A4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF8AC:: @ 82FF8AC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF8B4:: @ 82FF8B4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF8BC:: @ 82FF8BC + .2byte 0x0000, 0x000f, 0x0008, 0x000f, 0x0002, 0x0016, 0x0008, 0x0005 + .2byte 0x0003, 0x0008, 0x0004, 0x0005, 0x0006, 0x0005, 0x0004, 0x0005 + .2byte 0x0006, 0x0005, 0x0004, 0x0005, 0x0006, 0x0005, 0x0004, 0x0005 + .2byte 0x0006, 0x0005, 0x0005, 0x0005, 0x0007, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF8FC:: @ 82FF8FC + .2byte 0x0000, 0x000a, 0x0008, 0x000f, 0x0002, 0x000f, 0x0008, 0x000f + .2byte 0x0009, 0x000f, 0x0000, 0x000a, 0x0009, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF91C:: @ 82FF91C + .2byte 0x0000, 0x000a, 0x0009, 0x000a, 0x0000, 0x000a, 0x000a, 0x0014, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF930:: @ 82FF930 + .2byte 0x0000, 0x000f, 0x000b, 0x000f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF93C:: @ 82FF93C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF944:: @ 82FF944 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF94C:: @ 82FF94C + .2byte 0x0000, 0x000a, 0x0001, 0x0007, 0x0002, 0x0007, 0x0003, 0x0004 + .2byte 0x0004, 0x0004, 0x0003, 0x0004, 0x0004, 0x0004, 0x0003, 0x0004 + .2byte 0x0004, 0x0004, 0x0003, 0x0004, 0x0001, 0x0006, 0x0005, 0x0002 + .2byte 0x0000, 0x0002, 0x0005, 0x0002, 0x0000, 0x0002, 0x0005, 0x0002 + .2byte 0x0006, 0x0002, 0x0005, 0x0002, 0x0006, 0x0002, 0x0006, 0x000a + .2byte 0x0005, 0x0004, 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FF9A8:: @ 82FF9A8 + .2byte 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c, 0x0000, 0x000c + .2byte 0x0007, 0x000c, 0x0008, 0x000c, 0x0000, 0x000c, 0x0007, 0x000c + .2byte 0x0008, 0x000c, 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c + .2byte 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c, 0x0009, 0x0003 + .2byte 0x0000, 0x0003, 0x0009, 0x0003, 0x0000, 0x0003, 0x0007, 0x000c + .2byte 0x0008, 0x000c, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA00:: @ 82FFA00 + .2byte 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c, 0x0000, 0x000c + .2byte 0x0007, 0x000c, 0x0008, 0x000c, 0x0000, 0x000c, 0x0007, 0x000c + .2byte 0x0008, 0x000c, 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c + .2byte 0x0000, 0x000c, 0x0007, 0x000c, 0x0008, 0x000c, 0x0009, 0x0003 + .2byte 0x0000, 0x0003, 0x0009, 0x0003, 0x0000, 0x0003, 0x0007, 0x000c + .2byte 0x0008, 0x000c, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA58:: @ 82FFA58 + .2byte 0x0000, 0x0012, 0x000a, 0x0012, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA64:: @ 82FFA64 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA6C:: @ 82FFA6C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA74:: @ 82FFA74 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA7C:: @ 82FFA7C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA84:: @ 82FFA84 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA8C:: @ 82FFA8C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA94:: @ 82FFA94 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFA9C:: @ 82FFA9C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAA4:: @ 82FFAA4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAAC:: @ 82FFAAC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAB4:: @ 82FFAB4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFABC:: @ 82FFABC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAC4:: @ 82FFAC4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFACC:: @ 82FFACC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAD4:: @ 82FFAD4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFADC:: @ 82FFADC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAE4:: @ 82FFAE4 + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAEC:: @ 82FFAEC + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAF4:: @ 82FFAF4 + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFAFC:: @ 82FFAFC + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB04:: @ 82FFB04 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB0C:: @ 82FFB0C + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB14:: @ 82FFB14 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB1C:: @ 82FFB1C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB24:: @ 82FFB24 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB2C:: @ 82FFB2C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB34:: @ 82FFB34 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB3C:: @ 82FFB3C + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB44:: @ 82FFB44 + .2byte 0x0000, 0x0001, 0x0001, 0x0012, 0x0000, 0x0012, 0x0001, 0x0012 + .2byte 0x0000, 0x0012, 0x0001, 0x0012, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB60:: @ 82FFB60 + .2byte 0x0000, 0x0001, 0x0002, 0x0012, 0x0000, 0x0012, 0x0002, 0x0012 + .2byte 0x0000, 0x0012, 0x0002, 0x0012, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFB7C:: @ 82FFB7C + .2byte 0x0000, 0x0005, 0x0002, 0x0005, 0x0003, 0x0006, 0x0001, 0x0005 + .2byte 0x0000, 0x0005, 0x0002, 0x0005, 0x0003, 0x0005, 0x0001, 0x0005 + .2byte 0x0000, 0x0005, 0x0001, 0x0007, 0x0000, 0x0004, 0x0004, 0x0004 + .2byte 0x0000, 0x0004, 0x0004, 0x0004, 0x0000, 0x0014, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFBBC:: @ 82FFBBC + .2byte 0x0000, 0x0006, 0x0001, 0x0006, 0x0002, 0x0006, 0x0003, 0x0006 + .2byte 0x0001, 0x0006, 0x0000, 0x0006, 0x0001, 0x0006, 0x0000, 0x001e + .2byte 0xffff, 0x0000 + + .align 2 +gUnknown_082FFBE0:: @ 82FFBE0 + .2byte 0x0000, 0x000c, 0x0005, 0x000c, 0x0000, 0x000c, 0x0006, 0x000c, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFBF4:: @ 82FFBF4 + .2byte 0x0007, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFBFC:: @ 82FFBFC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC04:: @ 82FFC04 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC0C:: @ 82FFC0C + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC14:: @ 82FFC14 + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC1C:: @ 82FFC1C + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC24:: @ 82FFC24 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC2C:: @ 82FFC2C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC34:: @ 82FFC34 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC3C:: @ 82FFC3C + .2byte 0x0000, 0x0001, 0x0001, 0x000a, 0x0000, 0x000a, 0x0001, 0x000a + .2byte 0x0000, 0x000a, 0x0001, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC58:: @ 82FFC58 + .2byte 0x0000, 0x0001, 0x0002, 0x0008, 0x0000, 0x000c, 0x0002, 0x0008 + .2byte 0x0000, 0x000c, 0x0002, 0x0008, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC74:: @ 82FFC74 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC7C:: @ 82FFC7C + .2byte 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC84:: @ 82FFC84 + .2byte 0x0001, 0x0009, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC8C:: @ 82FFC8C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC94:: @ 82FFC94 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFC9C:: @ 82FFC9C + .2byte 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCA4:: @ 82FFCA4 + .2byte 0x0001, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCAC:: @ 82FFCAC + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCB4:: @ 82FFCB4 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCBC:: @ 82FFCBC + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCC4:: @ 82FFCC4 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCCC:: @ 82FFCCC + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCD4:: @ 82FFCD4 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCDC:: @ 82FFCDC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCE4:: @ 82FFCE4 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCEC:: @ 82FFCEC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCF4:: @ 82FFCF4 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFCFC:: @ 82FFCFC + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD04:: @ 82FFD04 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD0C:: @ 82FFD0C + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD14:: @ 82FFD14 + .2byte 0x0000, 0x0005, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD1C:: @ 82FFD1C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD24:: @ 82FFD24 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD2C:: @ 82FFD2C + .2byte 0x0002, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD34:: @ 82FFD34 + .2byte 0x0003, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD3C:: @ 82FFD3C + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD44:: @ 82FFD44 + .2byte 0x0000, 0x003f, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD4C:: @ 82FFD4C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD54:: @ 82FFD54 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD5C:: @ 82FFD5C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD64:: @ 82FFD64 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD6C:: @ 82FFD6C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD74:: @ 82FFD74 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD7C:: @ 82FFD7C + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD84:: @ 82FFD84 + .2byte 0x0001, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFD8C:: @ 82FFD8C + .2byte 0x0000, 0x0014, 0x0001, 0x001e, 0x0000, 0x0014, 0x0001, 0x001e, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFDA0:: @ 82FFDA0 + .2byte 0x0000, 0x0014, 0x0002, 0x0014, 0x0000, 0x0014, 0x0002, 0x0014, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFDB4:: @ 82FFDB4 + .2byte 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFDBC:: @ 82FFDBC + .2byte 0x0000, 0x000a, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFDC4:: @ 82FFDC4 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_082FFDCC:: @ 82FFDCC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDD0:: @ 82FFDD0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDD4:: @ 82FFDD4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDD8:: @ 82FFDD8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDDC:: @ 82FFDDC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDE0:: @ 82FFDE0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDE4:: @ 82FFDE4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDE8:: @ 82FFDE8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDEC:: @ 82FFDEC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDF0:: @ 82FFDF0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDF4:: @ 82FFDF4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDF8:: @ 82FFDF8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFDFC:: @ 82FFDFC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE00:: @ 82FFE00 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE04:: @ 82FFE04 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE08:: @ 82FFE08 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE0C:: @ 82FFE0C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE10:: @ 82FFE10 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE14:: @ 82FFE14 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE18:: @ 82FFE18 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE1C:: @ 82FFE1C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE20:: @ 82FFE20 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE24:: @ 82FFE24 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE28:: @ 82FFE28 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE2C:: @ 82FFE2C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE30:: @ 82FFE30 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE34:: @ 82FFE34 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE38:: @ 82FFE38 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE3C:: @ 82FFE3C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE40:: @ 82FFE40 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE44:: @ 82FFE44 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE48:: @ 82FFE48 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE4C:: @ 82FFE4C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE50:: @ 82FFE50 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE54:: @ 82FFE54 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE58:: @ 82FFE58 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE5C:: @ 82FFE5C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE60:: @ 82FFE60 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE64:: @ 82FFE64 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE68:: @ 82FFE68 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE6C:: @ 82FFE6C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE70:: @ 82FFE70 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE74:: @ 82FFE74 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE78:: @ 82FFE78 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE7C:: @ 82FFE7C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE80:: @ 82FFE80 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE84:: @ 82FFE84 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE88:: @ 82FFE88 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE8C:: @ 82FFE8C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE90:: @ 82FFE90 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE94:: @ 82FFE94 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE98:: @ 82FFE98 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFE9C:: @ 82FFE9C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEA0:: @ 82FFEA0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEA4:: @ 82FFEA4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEA8:: @ 82FFEA8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEAC:: @ 82FFEAC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEB0:: @ 82FFEB0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEB4:: @ 82FFEB4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEB8:: @ 82FFEB8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEBC:: @ 82FFEBC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEC0:: @ 82FFEC0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEC4:: @ 82FFEC4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEC8:: @ 82FFEC8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFECC:: @ 82FFECC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFED0:: @ 82FFED0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFED4:: @ 82FFED4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFED8:: @ 82FFED8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEDC:: @ 82FFEDC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEE0:: @ 82FFEE0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEE4:: @ 82FFEE4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEE8:: @ 82FFEE8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEEC:: @ 82FFEEC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEF0:: @ 82FFEF0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEF4:: @ 82FFEF4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEF8:: @ 82FFEF8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFEFC:: @ 82FFEFC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF00:: @ 82FFF00 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF04:: @ 82FFF04 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF08:: @ 82FFF08 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF0C:: @ 82FFF0C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF10:: @ 82FFF10 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF14:: @ 82FFF14 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF18:: @ 82FFF18 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF1C:: @ 82FFF1C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF20:: @ 82FFF20 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF24:: @ 82FFF24 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF28:: @ 82FFF28 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF2C:: @ 82FFF2C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF30:: @ 82FFF30 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF34:: @ 82FFF34 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF38:: @ 82FFF38 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF3C:: @ 82FFF3C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF40:: @ 82FFF40 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF44:: @ 82FFF44 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF48:: @ 82FFF48 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF4C:: @ 82FFF4C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF50:: @ 82FFF50 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF54:: @ 82FFF54 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF58:: @ 82FFF58 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF5C:: @ 82FFF5C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF60:: @ 82FFF60 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF64:: @ 82FFF64 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF68:: @ 82FFF68 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF6C:: @ 82FFF6C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF70:: @ 82FFF70 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF74:: @ 82FFF74 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF78:: @ 82FFF78 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF7C:: @ 82FFF7C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF80:: @ 82FFF80 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF84:: @ 82FFF84 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF88:: @ 82FFF88 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF8C:: @ 82FFF8C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF90:: @ 82FFF90 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF94:: @ 82FFF94 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF98:: @ 82FFF98 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFF9C:: @ 82FFF9C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFA0:: @ 82FFFA0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFA4:: @ 82FFFA4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFA8:: @ 82FFFA8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFAC:: @ 82FFFAC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFB0:: @ 82FFFB0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFB4:: @ 82FFFB4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFB8:: @ 82FFFB8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFBC:: @ 82FFFBC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFC0:: @ 82FFFC0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFC4:: @ 82FFFC4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFC8:: @ 82FFFC8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFCC:: @ 82FFFCC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFD0:: @ 82FFFD0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFD4:: @ 82FFFD4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFD8:: @ 82FFFD8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFDC:: @ 82FFFDC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFE0:: @ 82FFFE0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFE4:: @ 82FFFE4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFE8:: @ 82FFFE8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFEC:: @ 82FFFEC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFF0:: @ 82FFFF0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFF4:: @ 82FFFF4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFF8:: @ 82FFFF8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_082FFFFC:: @ 82FFFFC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300000:: @ 8300000 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300004:: @ 8300004 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300008:: @ 8300008 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830000C:: @ 830000C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300010:: @ 8300010 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300014:: @ 8300014 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300018:: @ 8300018 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830001C:: @ 830001C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300020:: @ 8300020 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300024:: @ 8300024 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300028:: @ 8300028 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830002C:: @ 830002C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300030:: @ 8300030 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300034:: @ 8300034 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300038:: @ 8300038 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830003C:: @ 830003C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300040:: @ 8300040 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300044:: @ 8300044 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300048:: @ 8300048 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830004C:: @ 830004C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300050:: @ 8300050 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300054:: @ 8300054 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300058:: @ 8300058 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830005C:: @ 830005C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300060:: @ 8300060 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300064:: @ 8300064 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300068:: @ 8300068 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830006C:: @ 830006C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300070:: @ 8300070 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300074:: @ 8300074 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300078:: @ 8300078 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830007C:: @ 830007C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300080:: @ 8300080 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300084:: @ 8300084 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300088:: @ 8300088 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830008C:: @ 830008C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300090:: @ 8300090 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300094:: @ 8300094 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300098:: @ 8300098 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830009C:: @ 830009C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000A0:: @ 83000A0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000A4:: @ 83000A4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000A8:: @ 83000A8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000AC:: @ 83000AC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000B0:: @ 83000B0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000B4:: @ 83000B4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000B8:: @ 83000B8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000BC:: @ 83000BC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000C0:: @ 83000C0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000C4:: @ 83000C4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000C8:: @ 83000C8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000CC:: @ 83000CC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000D0:: @ 83000D0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000D4:: @ 83000D4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000D8:: @ 83000D8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000DC:: @ 83000DC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000E0:: @ 83000E0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000E4:: @ 83000E4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000E8:: @ 83000E8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000EC:: @ 83000EC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000F0:: @ 83000F0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000F4:: @ 83000F4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000F8:: @ 83000F8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083000FC:: @ 83000FC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300100:: @ 8300100 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300104:: @ 8300104 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300108:: @ 8300108 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830010C:: @ 830010C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300110:: @ 8300110 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300114:: @ 8300114 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300118:: @ 8300118 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830011C:: @ 830011C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300120:: @ 8300120 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300124:: @ 8300124 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300128:: @ 8300128 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830012C:: @ 830012C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300130:: @ 8300130 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300134:: @ 8300134 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300138:: @ 8300138 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830013C:: @ 830013C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300140:: @ 8300140 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300144:: @ 8300144 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300148:: @ 8300148 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830014C:: @ 830014C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300150:: @ 8300150 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300154:: @ 8300154 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300158:: @ 8300158 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830015C:: @ 830015C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300160:: @ 8300160 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300164:: @ 8300164 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300168:: @ 8300168 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830016C:: @ 830016C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300170:: @ 8300170 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300174:: @ 8300174 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300178:: @ 8300178 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830017C:: @ 830017C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300180:: @ 8300180 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300184:: @ 8300184 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300188:: @ 8300188 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830018C:: @ 830018C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300190:: @ 8300190 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300194:: @ 8300194 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300198:: @ 8300198 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830019C:: @ 830019C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001A0:: @ 83001A0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001A4:: @ 83001A4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001A8:: @ 83001A8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001AC:: @ 83001AC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001B0:: @ 83001B0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001B4:: @ 83001B4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001B8:: @ 83001B8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001BC:: @ 83001BC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001C0:: @ 83001C0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001C4:: @ 83001C4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001C8:: @ 83001C8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001CC:: @ 83001CC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001D0: @ 83001D0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001D4:: @ 83001D4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF71C + .4byte gUnknown_082FF734 + .4byte gUnknown_082FF744 + .4byte gUnknown_082FF750 + + .align 2 +gUnknown_083001E8:: @ 83001E8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083001EC:: @ 83001EC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF758 + .4byte gUnknown_082FF774 + .4byte gUnknown_082FF790 + + .align 2 +gUnknown_083001FC:: @ 83001FC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300200:: @ 8300200 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF79C + .4byte gUnknown_082FF7B0 + + .align 2 +gUnknown_0830020C:: @ 830020C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7C4 + + .align 2 +gUnknown_08300214:: @ 8300214 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7CC + + .align 2 +gUnknown_0830021C:: @ 830021C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7D4 + + .align 2 +gUnknown_08300224:: @ 8300224 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7DC + .4byte gUnknown_082FF7E4 + + .align 2 +gUnknown_08300230:: @ 8300230 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7EC + .4byte gUnknown_082FF7F4 + + .align 2 +gUnknown_0830023C:: @ 830023C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF7FC + .4byte gUnknown_082FF804 + + .align 2 +gUnknown_08300248:: @ 8300248 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF80C + .4byte gUnknown_082FF814 + + .align 2 +gUnknown_08300254:: @ 8300254 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF81C + .4byte gUnknown_082FF824 + + .align 2 +gUnknown_08300260:: @ 8300260 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300264:: @ 8300264 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF82C + + .align 2 +gUnknown_0830026C:: @ 830026C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF834 + .4byte gUnknown_082FF83C + + .align 2 +gUnknown_08300278:: @ 8300278 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF844 + + .align 2 +gUnknown_08300280:: @ 8300280 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF84C + + .align 2 +gUnknown_08300288:: @ 8300288 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF854 + .4byte gUnknown_082FF85C + + .align 2 +gUnknown_08300294:: @ 8300294 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300298:: @ 8300298 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830029C:: @ 830029C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083002A0:: @ 83002A0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF864 + + .align 2 +gUnknown_083002A8:: @ 83002A8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF86C + + .align 2 +gUnknown_083002B0:: @ 83002B0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF874 + + .align 2 +gUnknown_083002B8:: @ 83002B8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF87C + + .align 2 +gUnknown_083002C0:: @ 83002C0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083002C4:: @ 83002C4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF884 + + .align 2 +gUnknown_083002CC:: @ 83002CC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF88C + .4byte gUnknown_082FF894 + + .align 2 +gUnknown_083002D8:: @ 83002D8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF89C + .4byte gUnknown_082FF8A4 + + .align 2 +gUnknown_083002E4:: @ 83002E4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF8AC + .4byte gUnknown_082FF8B4 + + .align 2 +gUnknown_083002F0:: @ 83002F0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF8BC + .4byte gUnknown_082FF8FC + .4byte gUnknown_082FF91C + .4byte gUnknown_082FF930 + + .align 2 +gUnknown_08300304:: @ 8300304 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300308:: @ 8300308 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF93C + + .align 2 +gUnknown_08300310:: @ 8300310 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF944 + + .align 2 +gUnknown_08300318:: @ 8300318 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FF94C + .4byte gUnknown_082FF9A8 + .4byte gUnknown_082FFA00 + .4byte gUnknown_082FFA58 + + .align 2 +gUnknown_0830032C:: @ 830032C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA64 + + .align 2 +gUnknown_08300334:: @ 8300334 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA6C + + .align 2 +gUnknown_0830033C:: @ 830033C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA74 + + .align 2 +gUnknown_08300344:: @ 8300344 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300348:: @ 8300348 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA7C + .4byte gUnknown_082FFA84 + + .align 2 +gUnknown_08300354:: @ 8300354 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300358:: @ 8300358 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830035C:: @ 830035C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA8C + .4byte gUnknown_082FFA94 + + .align 2 +gUnknown_08300368:: @ 8300368 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830036C:: @ 830036C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300370:: @ 8300370 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFA9C + .4byte gUnknown_082FFAA4 + + .align 2 +gUnknown_0830037C:: @ 830037C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFAAC + .4byte gUnknown_082FFAB4 + + .align 2 +gUnknown_08300388:: @ 8300388 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFABC + .4byte gUnknown_082FFAC4 + + .align 2 +gUnknown_08300394:: @ 8300394 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFACC + .4byte gUnknown_082FFAD4 + + .align 2 +gUnknown_083003A0:: @ 83003A0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFADC + + .align 2 +gUnknown_083003A8:: @ 83003A8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFAE4 + + .align 2 +gUnknown_083003B0:: @ 83003B0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFAEC + + .align 2 +gUnknown_083003B8:: @ 83003B8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFAF4 + + .align 2 +gUnknown_083003C0:: @ 83003C0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFAFC + + .align 2 +gUnknown_083003C8:: @ 83003C8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB04 + .4byte gUnknown_082FFB0C + + .align 2 +gUnknown_083003D4:: @ 83003D4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB14 + + .align 2 +gUnknown_083003DC:: @ 83003DC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB1C + .4byte gUnknown_082FFB24 + + .align 2 +gUnknown_083003E8:: @ 83003E8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB2C + + .align 2 +gUnknown_083003F0:: @ 83003F0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB34 + + .align 2 +gUnknown_083003F8:: @ 83003F8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB3C + + .align 2 +gUnknown_08300400:: @ 8300400 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB44 + .4byte gUnknown_082FFB60 + + .align 2 +gUnknown_0830040C:: @ 830040C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300410:: @ 8300410 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300414:: @ 8300414 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300418:: @ 8300418 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830041C:: @ 830041C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300420:: @ 8300420 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300424:: @ 8300424 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFB7C + .4byte gUnknown_082FFBBC + .4byte gUnknown_082FFBE0 + .4byte gUnknown_082FFBF4 + + .align 2 +gUnknown_08300438:: @ 8300438 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFBFC + .4byte gUnknown_082FFC04 + + .align 2 +gUnknown_08300444:: @ 8300444 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC0C + + .align 2 +gUnknown_0830044C:: @ 830044C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC14 + + .align 2 +gUnknown_08300454:: @ 8300454 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC1C + + .align 2 +gUnknown_0830045C:: @ 830045C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC24 + + .align 2 +gUnknown_08300464:: @ 8300464 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC2C + + .align 2 +gUnknown_0830046C:: @ 830046C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC34 + + .align 2 +gUnknown_08300474:: @ 8300474 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC3C + .4byte gUnknown_082FFC58 + + .align 2 +gUnknown_08300480:: @ 8300480 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC74 + + .align 2 +gUnknown_08300488:: @ 8300488 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC7C + .4byte gUnknown_082FFC84 + + .align 2 +gUnknown_08300494:: @ 8300494 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC8C + .4byte gUnknown_082FFC94 + + .align 2 +gUnknown_083004A0:: @ 83004A0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFC9C + .4byte gUnknown_082FFCA4 + + .align 2 +gUnknown_083004AC:: @ 83004AC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004B0:: @ 83004B0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCAC + + .align 2 +gUnknown_083004B8:: @ 83004B8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCB4 + + .align 2 +gUnknown_083004C0:: @ 83004C0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCBC + + .align 2 +gUnknown_083004C8:: @ 83004C8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCC4 + + .align 2 +gUnknown_083004D0:: @ 83004D0 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCCC + + .align 2 +gUnknown_083004D8:: @ 83004D8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCD4 + + .align 2 +gUnknown_083004E0:: @ 83004E0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004E4:: @ 83004E4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004E8:: @ 83004E8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004EC:: @ 83004EC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCDC + + .align 2 +gUnknown_083004F4:: @ 83004F4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004F8:: @ 83004F8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083004FC:: @ 83004FC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCE4 + + .align 2 +gUnknown_08300504:: @ 8300504 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCEC + .4byte gUnknown_082FFCF4 + + .align 2 +gUnknown_08300510:: @ 8300510 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFCFC + + .align 2 +gUnknown_08300518:: @ 8300518 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830051C:: @ 830051C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300520:: @ 8300520 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300524:: @ 8300524 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD04 + + .align 2 +gUnknown_0830052C:: @ 830052C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD0C + + .align 2 +gUnknown_08300534:: @ 8300534 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD14 + + .align 2 +gUnknown_0830053C:: @ 830053C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD1C + .4byte gUnknown_082FFD24 + .4byte gUnknown_082FFD2C + .4byte gUnknown_082FFD34 + + .align 2 +gUnknown_08300550:: @ 8300550 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD3C + + .align 2 +gUnknown_08300558:: @ 8300558 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD44 + + .align 2 +gUnknown_08300560:: @ 8300560 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300564:: @ 8300564 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300568:: @ 8300568 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830056C:: @ 830056C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300570:: @ 8300570 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300574:: @ 8300574 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300578:: @ 8300578 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830057C:: @ 830057C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD4C + .4byte gUnknown_082FFD54 + + .align 2 +gUnknown_08300588:: @ 8300588 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830058C:: @ 830058C + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD5C + .4byte gUnknown_082FFD64 + + .align 2 +gUnknown_08300598:: @ 8300598 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830059C:: @ 830059C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005A0:: @ 83005A0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005A4:: @ 83005A4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD6C + + .align 2 +gUnknown_083005AC:: @ 83005AC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD74 + + .align 2 +gUnknown_083005B4:: @ 83005B4 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD7C + .4byte gUnknown_082FFD84 + + .align 2 +gUnknown_083005C0:: @ 83005C0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005C4:: @ 83005C4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005C8:: @ 83005C8 + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFD8C + .4byte gUnknown_082FFDA0 + + .align 2 +gUnknown_083005D4:: @ 83005D4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005D8:: @ 83005D8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005DC:: @ 83005DC + .4byte gUnknown_082FF538 + .4byte gUnknown_082FFDC4 + + .align 2 +gUnknown_083005E4:: @ 83005E4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005E8:: @ 83005E8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005EC:: @ 83005EC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005F0:: @ 83005F0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005F4:: @ 83005F4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005F8:: @ 83005F8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083005FC:: @ 83005FC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300600:: @ 8300600 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300604:: @ 8300604 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300608:: @ 8300608 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830060C:: @ 830060C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300610:: @ 8300610 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300614:: @ 8300614 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300618:: @ 8300618 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830061C:: @ 830061C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300620:: @ 8300620 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300624:: @ 8300624 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300628:: @ 8300628 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830062C:: @ 830062C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300630:: @ 8300630 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300634:: @ 8300634 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300638:: @ 8300638 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830063C:: @ 830063C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300640:: @ 8300640 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300644:: @ 8300644 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300648:: @ 8300648 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830064C:: @ 830064C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300650:: @ 8300650 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08300654:: @ 8300654 + .4byte gUnknown_082FF538 + + .4byte gUnknown_082FFDCC + .4byte gUnknown_082FFDD0 + .4byte gUnknown_082FFDD4 + .4byte gUnknown_082FFDD8 + .4byte gUnknown_082FFDDC + .4byte gUnknown_082FFDE0 + .4byte gUnknown_082FFDE4 + .4byte gUnknown_082FFDE8 + .4byte gUnknown_082FFDEC + .4byte gUnknown_082FFDF0 + .4byte gUnknown_082FFDF4 + .4byte gUnknown_082FFDF8 + .4byte gUnknown_082FFDFC + .4byte gUnknown_082FFE00 + .4byte gUnknown_082FFE04 + .4byte gUnknown_082FFE08 + .4byte gUnknown_082FFE0C + .4byte gUnknown_082FFE10 + .4byte gUnknown_082FFE14 + .4byte gUnknown_082FFE18 + .4byte gUnknown_082FFE1C + .4byte gUnknown_082FFE20 + .4byte gUnknown_082FFE24 + .4byte gUnknown_082FFE28 + .4byte gUnknown_082FFE2C + .4byte gUnknown_082FFE30 + .4byte gUnknown_082FFE34 + .4byte gUnknown_082FFE38 + .4byte gUnknown_082FFE3C + .4byte gUnknown_082FFE40 + .4byte gUnknown_082FFE44 + .4byte gUnknown_082FFE48 + .4byte gUnknown_082FFE4C + .4byte gUnknown_082FFE50 + .4byte gUnknown_082FFE54 + .4byte gUnknown_082FFE58 + .4byte gUnknown_082FFE5C + .4byte gUnknown_082FFE60 + .4byte gUnknown_082FFE64 + .4byte gUnknown_082FFE68 + .4byte gUnknown_082FFE6C + .4byte gUnknown_082FFE70 + .4byte gUnknown_082FFE74 + .4byte gUnknown_082FFE78 + .4byte gUnknown_082FFE7C + .4byte gUnknown_082FFE80 + .4byte gUnknown_082FFE84 + .4byte gUnknown_082FFE88 + .4byte gUnknown_082FFE8C + .4byte gUnknown_082FFE90 + .4byte gUnknown_082FFE94 + .4byte gUnknown_082FFE98 + .4byte gUnknown_082FFE9C + .4byte gUnknown_082FFEA0 + .4byte gUnknown_082FFEA4 + .4byte gUnknown_082FFEA8 + .4byte gUnknown_082FFEAC + .4byte gUnknown_082FFEB0 + .4byte gUnknown_082FFEB4 + .4byte gUnknown_082FFEB8 + .4byte gUnknown_082FFEBC + .4byte gUnknown_082FFEC0 + .4byte gUnknown_082FFEC4 + .4byte gUnknown_082FFEC8 + .4byte gUnknown_082FFECC + .4byte gUnknown_082FFED0 + .4byte gUnknown_082FFED4 + .4byte gUnknown_082FFED8 + .4byte gUnknown_082FFEDC + .4byte gUnknown_082FFEE0 + .4byte gUnknown_082FFEE4 + .4byte gUnknown_082FFEE8 + .4byte gUnknown_082FFEEC + .4byte gUnknown_082FFEF0 + .4byte gUnknown_082FFEF4 + .4byte gUnknown_082FFEF8 + .4byte gUnknown_082FFEFC + .4byte gUnknown_082FFF00 + .4byte gUnknown_082FFF04 + .4byte gUnknown_082FFF08 + .4byte gUnknown_082FFF0C + .4byte gUnknown_082FFF10 + .4byte gUnknown_082FFF14 + .4byte gUnknown_082FFF18 + .4byte gUnknown_082FFF1C + .4byte gUnknown_082FFF20 + .4byte gUnknown_082FFF24 + .4byte gUnknown_082FFF28 + .4byte gUnknown_082FFF2C + .4byte gUnknown_082FFF30 + .4byte gUnknown_082FFF34 + .4byte gUnknown_082FFF38 + .4byte gUnknown_082FFF3C + .4byte gUnknown_082FFF40 + .4byte gUnknown_082FFF44 + .4byte gUnknown_082FFF48 + .4byte gUnknown_082FFF4C + .4byte gUnknown_082FFF50 + .4byte gUnknown_082FFF54 + .4byte gUnknown_082FFF58 + .4byte gUnknown_082FFF5C + .4byte gUnknown_082FFF60 + .4byte gUnknown_082FFF64 + .4byte gUnknown_082FFF68 + .4byte gUnknown_082FFF6C + .4byte gUnknown_082FFF70 + .4byte gUnknown_082FFF74 + .4byte gUnknown_082FFF78 + .4byte gUnknown_082FFF7C + .4byte gUnknown_082FFF80 + .4byte gUnknown_082FFF84 + .4byte gUnknown_082FFF88 + .4byte gUnknown_082FFF8C + .4byte gUnknown_082FFF90 + .4byte gUnknown_082FFF94 + .4byte gUnknown_082FFF98 + .4byte gUnknown_082FFF9C + .4byte gUnknown_082FFFA0 + .4byte gUnknown_082FFFA4 + .4byte gUnknown_082FFFA8 + .4byte gUnknown_082FFFAC + .4byte gUnknown_082FFFB0 + .4byte gUnknown_082FFFB4 + .4byte gUnknown_082FFFB8 + .4byte gUnknown_082FFFBC + .4byte gUnknown_082FFFC0 + .4byte gUnknown_082FFFC4 + .4byte gUnknown_082FFFC8 + .4byte gUnknown_082FFFCC + .4byte gUnknown_082FFFD0 + .4byte gUnknown_082FFFD4 + .4byte gUnknown_082FFFD8 + .4byte gUnknown_082FFFDC + .4byte gUnknown_082FFFE0 + .4byte gUnknown_082FFFE4 + .4byte gUnknown_082FFFE8 + .4byte gUnknown_082FFFEC + .4byte gUnknown_082FFFF0 + .4byte gUnknown_082FFFF4 + .4byte gUnknown_082FFFF8 + .4byte gUnknown_082FFFFC + .4byte gUnknown_08300000 + .4byte gUnknown_08300004 + .4byte gUnknown_08300008 + .4byte gUnknown_0830000C + .4byte gUnknown_08300010 + .4byte gUnknown_08300014 + .4byte gUnknown_08300018 + .4byte gUnknown_0830001C + .4byte gUnknown_08300020 + .4byte gUnknown_08300024 + .4byte gUnknown_08300028 + .4byte gUnknown_0830002C + .4byte gUnknown_08300030 + .4byte gUnknown_08300034 + .4byte gUnknown_08300038 + .4byte gUnknown_0830003C + .4byte gUnknown_08300040 + .4byte gUnknown_08300044 + .4byte gUnknown_08300048 + .4byte gUnknown_0830004C + .4byte gUnknown_08300050 + .4byte gUnknown_08300054 + .4byte gUnknown_08300058 + .4byte gUnknown_0830005C + .4byte gUnknown_08300060 + .4byte gUnknown_08300064 + .4byte gUnknown_08300068 + .4byte gUnknown_0830006C + .4byte gUnknown_08300070 + .4byte gUnknown_08300074 + .4byte gUnknown_08300078 + .4byte gUnknown_0830007C + .4byte gUnknown_08300080 + .4byte gUnknown_08300084 + .4byte gUnknown_08300088 + .4byte gUnknown_0830008C + .4byte gUnknown_08300090 + .4byte gUnknown_08300094 + .4byte gUnknown_08300098 + .4byte gUnknown_0830009C + .4byte gUnknown_083000A0 + .4byte gUnknown_083000A4 + .4byte gUnknown_083000A8 + .4byte gUnknown_083000AC + .4byte gUnknown_083000B0 + .4byte gUnknown_083000B4 + .4byte gUnknown_083000B8 + .4byte gUnknown_083000BC + .4byte gUnknown_083000C0 + .4byte gUnknown_083000C4 + .4byte gUnknown_083000C8 + .4byte gUnknown_083000CC + .4byte gUnknown_083000D0 + .4byte gUnknown_083000D4 + .4byte gUnknown_083000D8 + .4byte gUnknown_083000DC + .4byte gUnknown_083000E0 + .4byte gUnknown_083000E4 + .4byte gUnknown_083000E8 + .4byte gUnknown_083000EC + .4byte gUnknown_083000F0 + .4byte gUnknown_083000F4 + .4byte gUnknown_083000F8 + .4byte gUnknown_083000FC + .4byte gUnknown_08300100 + .4byte gUnknown_08300104 + .4byte gUnknown_08300108 + .4byte gUnknown_0830010C + .4byte gUnknown_08300110 + .4byte gUnknown_08300114 + .4byte gUnknown_08300118 + .4byte gUnknown_0830011C + .4byte gUnknown_08300120 + .4byte gUnknown_08300124 + .4byte gUnknown_08300128 + .4byte gUnknown_0830012C + .4byte gUnknown_08300130 + .4byte gUnknown_08300134 + .4byte gUnknown_08300138 + .4byte gUnknown_0830013C + .4byte gUnknown_08300140 + .4byte gUnknown_08300144 + .4byte gUnknown_08300148 + .4byte gUnknown_0830014C + .4byte gUnknown_08300150 + .4byte gUnknown_08300154 + .4byte gUnknown_08300158 + .4byte gUnknown_0830015C + .4byte gUnknown_08300160 + .4byte gUnknown_08300164 + .4byte gUnknown_08300168 + .4byte gUnknown_0830016C + .4byte gUnknown_08300170 + .4byte gUnknown_08300174 + .4byte gUnknown_08300178 + .4byte gUnknown_0830017C + .4byte gUnknown_08300180 + .4byte gUnknown_08300184 + .4byte gUnknown_08300188 + .4byte gUnknown_0830018C + .4byte gUnknown_08300190 + .4byte gUnknown_08300194 + .4byte gUnknown_08300198 + .4byte gUnknown_0830019C + .4byte gUnknown_083001A0 + .4byte gUnknown_083001A4 + .4byte gUnknown_083001A8 + .4byte gUnknown_083001AC + .4byte gUnknown_083001B0 + .4byte gUnknown_083001B4 + .4byte gUnknown_083001B8 + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001BC + .4byte gUnknown_083001C0 + .4byte gUnknown_083001C4 + .4byte gUnknown_083001C8 + .4byte gUnknown_083001CC + .4byte gUnknown_083001D0 + .4byte gUnknown_083001D4 + .4byte gUnknown_083001E8 + .4byte gUnknown_083001EC + .4byte gUnknown_083001FC + .4byte gUnknown_08300200 + .4byte gUnknown_0830020C + .4byte gUnknown_08300214 + .4byte gUnknown_0830021C + .4byte gUnknown_08300224 + .4byte gUnknown_08300230 + .4byte gUnknown_0830023C + .4byte gUnknown_08300248 + .4byte gUnknown_08300254 + .4byte gUnknown_08300260 + .4byte gUnknown_08300264 + .4byte gUnknown_0830026C + .4byte gUnknown_08300278 + .4byte gUnknown_08300280 + .4byte gUnknown_08300288 + .4byte gUnknown_08300294 + .4byte gUnknown_08300298 + .4byte gUnknown_0830029C + .4byte gUnknown_083002A0 + .4byte gUnknown_083002A8 + .4byte gUnknown_083002B0 + .4byte gUnknown_083002B8 + .4byte gUnknown_083002C0 + .4byte gUnknown_083002C4 + .4byte gUnknown_083002CC + .4byte gUnknown_083002D8 + .4byte gUnknown_083002E4 + .4byte gUnknown_083002F0 + .4byte gUnknown_08300304 + .4byte gUnknown_08300308 + .4byte gUnknown_08300310 + .4byte gUnknown_08300318 + .4byte gUnknown_0830032C + .4byte gUnknown_08300334 + .4byte gUnknown_0830033C + .4byte gUnknown_08300344 + .4byte gUnknown_08300348 + .4byte gUnknown_08300354 + .4byte gUnknown_08300358 + .4byte gUnknown_0830035C + .4byte gUnknown_08300368 + .4byte gUnknown_0830036C + .4byte gUnknown_08300370 + .4byte gUnknown_0830037C + .4byte gUnknown_08300388 + .4byte gUnknown_08300394 + .4byte gUnknown_083003A0 + .4byte gUnknown_083003A8 + .4byte gUnknown_083003B0 + .4byte gUnknown_083003B8 + .4byte gUnknown_083003C0 + .4byte gUnknown_083003C8 + .4byte gUnknown_083003D4 + .4byte gUnknown_083003DC + .4byte gUnknown_083003E8 + .4byte gUnknown_083003F0 + .4byte gUnknown_083003F8 + .4byte gUnknown_08300400 + .4byte gUnknown_0830040C + .4byte gUnknown_08300410 + .4byte gUnknown_08300414 + .4byte gUnknown_08300418 + .4byte gUnknown_0830041C + .4byte gUnknown_08300420 + .4byte gUnknown_08300424 + .4byte gUnknown_08300438 + .4byte gUnknown_08300444 + .4byte gUnknown_0830044C + .4byte gUnknown_08300454 + .4byte gUnknown_0830045C + .4byte gUnknown_08300464 + .4byte gUnknown_0830046C + .4byte gUnknown_08300474 + .4byte gUnknown_08300480 + .4byte gUnknown_08300488 + .4byte gUnknown_08300494 + .4byte gUnknown_083004A0 + .4byte gUnknown_083004AC + .4byte gUnknown_083004B0 + .4byte gUnknown_083004B8 + .4byte gUnknown_083004C0 + .4byte gUnknown_083004C8 + .4byte gUnknown_083004D0 + .4byte gUnknown_083004D8 + .4byte gUnknown_083004E0 + .4byte gUnknown_083004E4 + .4byte gUnknown_083004E8 + .4byte gUnknown_083004EC + .4byte gUnknown_083004F4 + .4byte gUnknown_083004F8 + .4byte gUnknown_083004FC + .4byte gUnknown_08300504 + .4byte gUnknown_08300510 + .4byte gUnknown_08300518 + .4byte gUnknown_0830051C + .4byte gUnknown_08300520 + .4byte gUnknown_08300524 + .4byte gUnknown_0830052C + .4byte gUnknown_08300534 + .4byte gUnknown_0830053C + .4byte gUnknown_08300550 + .4byte gUnknown_08300558 + .4byte gUnknown_08300560 + .4byte gUnknown_08300564 + .4byte gUnknown_08300568 + .4byte gUnknown_0830056C + .4byte gUnknown_08300570 + .4byte gUnknown_08300574 + .4byte gUnknown_08300578 + .4byte gUnknown_0830057C + .4byte gUnknown_08300588 + .4byte gUnknown_0830058C + .4byte gUnknown_08300598 + .4byte gUnknown_0830059C + .4byte gUnknown_083005A0 + .4byte gUnknown_083005A4 + .4byte gUnknown_083005AC + .4byte gUnknown_083005B4 + .4byte gUnknown_083005C0 + .4byte gUnknown_083005C4 + .4byte gUnknown_083005C8 + .4byte gUnknown_083005D4 + .4byte gUnknown_083005D8 + .4byte gUnknown_083005DC + .4byte gUnknown_083005E4 + .4byte gUnknown_083005E8 + .4byte gUnknown_083005EC + .4byte gUnknown_083005EC + .4byte gUnknown_083005F0 + .4byte gUnknown_083005F4 + .4byte gUnknown_083005F8 + .4byte gUnknown_083005FC + .4byte gUnknown_08300600 + .4byte gUnknown_08300604 + .4byte gUnknown_08300608 + .4byte gUnknown_0830060C + .4byte gUnknown_08300610 + .4byte gUnknown_08300614 + .4byte gUnknown_08300618 + .4byte gUnknown_0830061C + .4byte gUnknown_08300620 + .4byte gUnknown_08300624 + .4byte gUnknown_08300628 + .4byte gUnknown_0830062C + .4byte gUnknown_08300630 + .4byte gUnknown_08300634 + .4byte gUnknown_08300638 + .4byte gUnknown_0830063C + .4byte gUnknown_08300640 + .4byte gUnknown_08300644 + .4byte gUnknown_08300648 + .4byte gUnknown_0830064C + .4byte gUnknown_08300650 + .4byte gUnknown_08300654 + + .align 2 gUnknown_08300D38:: @ 8300D38 - .incbin "baserom.gba", 0x300d38, 0x6e0 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x45, 0x0e, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x45, 0x10, 0x00, 0x00 + .byte 0x54, 0x14, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x54, 0x12, 0x00, 0x00 + .byte 0x45, 0x0e, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x67, 0x0b, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x45, 0x0f, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x67, 0x09, 0x00, 0x00 + .byte 0x67, 0x04, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x45, 0x0f, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x78, 0x02, 0x00, 0x00 + .byte 0x55, 0x10, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x45, 0x10, 0x00, 0x00 + .byte 0x67, 0x08, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x45, 0x0f, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x54, 0x12, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x56, 0x09, 0x00, 0x00 + .byte 0x78, 0x02, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x74, 0x13, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x65, 0x0f, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x54, 0x12, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x43, 0x15, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x57, 0x05, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x55, 0x10, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x78, 0x02, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x44, 0x13, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x67, 0x04, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x45, 0x0f, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x78, 0x02, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x88, 0x08, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x54, 0x11, 0x00, 0x00 + .byte 0x56, 0x09, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x55, 0x0d, 0x00, 0x00 + .byte 0x45, 0x0f, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x54, 0x11, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x75, 0x0e, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0d, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x47, 0x04, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x55, 0x0d, 0x00, 0x00 + .byte 0x58, 0x03, 0x00, 0x00 + .byte 0x56, 0x0c, 0x00, 0x00 + .byte 0x67, 0x04, 0x00, 0x00 + .byte 0x54, 0x13, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x75, 0x10, 0x00, 0x00 + .byte 0x87, 0x0b, 0x00, 0x00 + .byte 0x45, 0x0c, 0x00, 0x00 + .byte 0x44, 0x14, 0x00, 0x00 + .byte 0x44, 0x12, 0x00, 0x00 + .byte 0x34, 0x14, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x44, 0x14, 0x00, 0x00 + .byte 0x47, 0x07, 0x00, 0x00 + .byte 0x55, 0x10, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x45, 0x0e, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x58, 0x03, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x67, 0x08, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x58, 0x01, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x35, 0x0f, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x74, 0x11, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0d, 0x00, 0x00 + .byte 0x57, 0x06, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x78, 0x01, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x57, 0x0d, 0x00, 0x00 + .byte 0x43, 0x14, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x78, 0x04, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x35, 0x0f, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x56, 0x09, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x56, 0x0c, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x45, 0x0e, 0x00, 0x00 + .byte 0x75, 0x11, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x74, 0x10, 0x00, 0x00 + .byte 0x86, 0x0f, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x46, 0x10, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x74, 0x12, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x64, 0x10, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x68, 0x08, 0x00, 0x00 + .byte 0x84, 0x18, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x65, 0x0f, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x75, 0x0f, 0x00, 0x00 + .byte 0x87, 0x0a, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x55, 0x10, 0x00, 0x00 + .byte 0x78, 0x06, 0x00, 0x00 + .byte 0x56, 0x0c, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x46, 0x0b, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x46, 0x18, 0x00, 0x00 + .byte 0x66, 0x0c, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x46, 0x0d, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x86, 0x0c, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x64, 0x12, 0x00, 0x00 + .byte 0x67, 0x04, 0x00, 0x00 + .byte 0x65, 0x0f, 0x00, 0x00 + .byte 0x87, 0x09, 0x00, 0x00 + .byte 0x65, 0x10, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x74, 0x10, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x56, 0x0e, 0x00, 0x00 + .byte 0x66, 0x0c, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x68, 0x01, 0x00, 0x00 + .byte 0x76, 0x11, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x74, 0x12, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x55, 0x12, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x68, 0x00, 0x00, 0x00 + .byte 0x56, 0x0e, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x77, 0x08, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x77, 0x0b, 0x00, 0x00 + .byte 0x43, 0x14, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x34, 0x11, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x35, 0x0f, 0x00, 0x00 + .byte 0x47, 0x06, 0x00, 0x00 + .byte 0x78, 0x01, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x78, 0x04, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x66, 0x0d, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x37, 0x06, 0x00, 0x00 + .byte 0x33, 0x14, 0x00, 0x00 + .byte 0x34, 0x10, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x44, 0x11, 0x00, 0x00 + .byte 0x44, 0x11, 0x00, 0x00 + .byte 0x35, 0x0e, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x34, 0x10, 0x00, 0x00 + .byte 0x34, 0x11, 0x00, 0x00 + .byte 0x44, 0x11, 0x00, 0x00 + .byte 0x34, 0x13, 0x00, 0x00 + .byte 0x44, 0x13, 0x00, 0x00 + .byte 0x43, 0x14, 0x00, 0x00 + .byte 0x44, 0x10, 0x00, 0x00 + .byte 0x34, 0x13, 0x00, 0x00 + .byte 0x43, 0x15, 0x00, 0x00 + .byte 0x34, 0x13, 0x00, 0x00 + .byte 0x45, 0x0c, 0x00, 0x00 + .byte 0x34, 0x12, 0x00, 0x00 + .byte 0x44, 0x12, 0x00, 0x00 + .byte 0x44, 0x12, 0x00, 0x00 + .byte 0x44, 0x13, 0x00, 0x00 + .byte 0x33, 0x15, 0x00, 0x00 + .byte 0x34, 0x11, 0x00, 0x00 + .byte 0x34, 0x10, 0x00, 0x00 + .byte 0x35, 0x0f, 0x00, 0x00 + .byte 0x35, 0x0d, 0x00, 0x00 @ 8301418 .include "data/graphics/pokemon/mon_still_front_pic_table.inc" + .align 2 gUnknown_083021D8:: @ 83021D8 - .incbin "baserom.gba", 0x3021d8, 0x6e0 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x64, 0x10, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x85, 0x0c, 0x00, 0x00 + .byte 0x78, 0x02, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x63, 0x14, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x74, 0x10, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x67, 0x04, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x75, 0x0c, 0x00, 0x00 + .byte 0x84, 0x10, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x43, 0x14, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x75, 0x0c, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x55, 0x0e, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x85, 0x0c, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x54, 0x11, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x78, 0x01, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x68, 0x03, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x73, 0x15, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x65, 0x0f, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x54, 0x10, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x54, 0x11, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x75, 0x0c, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x66, 0x09, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x36, 0x08, 0x00, 0x00 + .byte 0x75, 0x0c, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x65, 0x0f, 0x00, 0x00 + .byte 0x84, 0x10, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x63, 0x15, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x75, 0x0d, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x55, 0x0c, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x65, 0x0e, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x56, 0x09, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x67, 0x05, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x76, 0x09, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x83, 0x15, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x73, 0x14, 0x00, 0x00 + .byte 0x83, 0x14, 0x00, 0x00 + .byte 0x75, 0x0f, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x83, 0x14, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x64, 0x11, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x88, 0x00, 0x00, 0x00 + .byte 0x83, 0x15, 0x00, 0x00 + .byte 0x83, 0x16, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x85, 0x0c, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x67, 0x07, 0x00, 0x00 + .byte 0x68, 0x02, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x75, 0x0e, 0x00, 0x00 + .byte 0x74, 0x11, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x84, 0x10, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x86, 0x0b, 0x00, 0x00 + .byte 0x84, 0x13, 0x00, 0x00 + .byte 0x64, 0x12, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x76, 0x0a, 0x00, 0x00 + .byte 0x85, 0x0c, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x87, 0x04, 0x00, 0x00 + .byte 0x76, 0x0b, 0x00, 0x00 + .byte 0x68, 0x03, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x87, 0x06, 0x00, 0x00 + .byte 0x77, 0x07, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x85, 0x0f, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x86, 0x08, 0x00, 0x00 + .byte 0x66, 0x0b, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x68, 0x02, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x78, 0x03, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x65, 0x0c, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x88, 0x01, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x54, 0x11, 0x00, 0x00 + .byte 0x84, 0x11, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x76, 0x08, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x83, 0x17, 0x00, 0x00 + .byte 0x77, 0x05, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x57, 0x06, 0x00, 0x00 + .byte 0x77, 0x04, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x85, 0x0d, 0x00, 0x00 + .byte 0x77, 0x06, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x84, 0x10, 0x00, 0x00 + .byte 0x83, 0x14, 0x00, 0x00 + .byte 0x86, 0x0a, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x85, 0x0e, 0x00, 0x00 + .byte 0x84, 0x13, 0x00, 0x00 + .byte 0x87, 0x07, 0x00, 0x00 + .byte 0x78, 0x00, 0x00, 0x00 + .byte 0x88, 0x02, 0x00, 0x00 + .byte 0x88, 0x03, 0x00, 0x00 + .byte 0x87, 0x05, 0x00, 0x00 + .byte 0x86, 0x09, 0x00, 0x00 + .byte 0x47, 0x07, 0x00, 0x00 + .byte 0x36, 0x0a, 0x00, 0x00 + .byte 0x56, 0x09, 0x00, 0x00 + .byte 0x67, 0x06, 0x00, 0x00 + .byte 0x56, 0x08, 0x00, 0x00 + .byte 0x56, 0x0a, 0x00, 0x00 + .byte 0x66, 0x0a, 0x00, 0x00 + .byte 0x57, 0x05, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x37, 0x07, 0x00, 0x00 + .byte 0x46, 0x09, 0x00, 0x00 + .byte 0x57, 0x07, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x66, 0x08, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x45, 0x0c, 0x00, 0x00 + .byte 0x57, 0x04, 0x00, 0x00 + .byte 0x45, 0x0d, 0x00, 0x00 + .byte 0x65, 0x0d, 0x00, 0x00 + .byte 0x56, 0x0b, 0x00, 0x00 + .byte 0x55, 0x0d, 0x00, 0x00 + .byte 0x55, 0x0f, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x46, 0x0a, 0x00, 0x00 + .byte 0x37, 0x06, 0x00, 0x00 + .byte 0x47, 0x06, 0x00, 0x00 @ 83028B8 .include "data/graphics/pokemon/mon_back_pic_table.inc" @@ -113,14 +3905,475 @@ gUnknown_083021D8:: @ 83021D8 @ 8304438 .include "data/graphics/pokemon/mon_shiny_palette_table.inc" -@ 83051F8 - .incbin "baserom.gba", 0x3051f8, 0x174 +gUnknown_083051F8:: @ 83051F8 + .4byte gUnknown_082FF538 + .align 2 +gUnknown_083051FC:: @ 83051FC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305200:: @ 8305200 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305204:: @ 8305204 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305208:: @ 8305208 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830520C:: @ 830520C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305210:: @ 8305210 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305214:: @ 8305214 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305218:: @ 8305218 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830521C:: @ 830521C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305220:: @ 8305220 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305224:: @ 8305224 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305228:: @ 8305228 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830522C:: @ 830522C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305230:: @ 8305230 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305234:: @ 8305234 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305238:: @ 8305238 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830523C:: @ 830523C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305240:: @ 8305240 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305244:: @ 8305244 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305248:: @ 8305248 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830524C:: @ 830524C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305250:: @ 8305250 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305254:: @ 8305254 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305258:: @ 8305258 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830525C:: @ 830525C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305260:: @ 8305260 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305264:: @ 8305264 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305268:: @ 8305268 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830526C:: @ 830526C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305270:: @ 8305270 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305274:: @ 8305274 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305278:: @ 8305278 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830527C:: @ 830527C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305280:: @ 8305280 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305284:: @ 8305284 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305288:: @ 8305288 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830528C:: @ 830528C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305290:: @ 8305290 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305294:: @ 8305294 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305298:: @ 8305298 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830529C:: @ 830529C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052A0:: @ 83052A0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052A4:: @ 83052A4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052A8:: @ 83052A8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052AC:: @ 83052AC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052B0:: @ 83052B0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052B4:: @ 83052B4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052B8:: @ 83052B8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052BC:: @ 83052BC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052C0:: @ 83052C0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052C4:: @ 83052C4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052C8:: @ 83052C8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052CC:: @ 83052CC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052D0:: @ 83052D0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052D4:: @ 83052D4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052D8:: @ 83052D8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052DC:: @ 83052DC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052E0:: @ 83052E0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052E4:: @ 83052E4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052E8:: @ 83052E8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052EC:: @ 83052EC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052F0:: @ 83052F0 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052F4:: @ 83052F4 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052F8:: @ 83052F8 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_083052FC:: @ 83052FC + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305300:: @ 8305300 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305304:: @ 8305304 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305308:: @ 8305308 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830530C:: @ 830530C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305310:: @ 8305310 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305314:: @ 8305314 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305318:: @ 8305318 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830531C:: @ 830531C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305320:: @ 8305320 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305324:: @ 8305324 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305328:: @ 8305328 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830532C:: @ 830532C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305330:: @ 8305330 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305334:: @ 8305334 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305338:: @ 8305338 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830533C:: @ 830533C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305340:: @ 8305340 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305344:: @ 8305344 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305348:: @ 8305348 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830534C:: @ 830534C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305350:: @ 8305350 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305354:: @ 8305354 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305358:: @ 8305358 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_0830535C:: @ 830535C + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305360:: @ 8305360 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305364:: @ 8305364 + .4byte gUnknown_082FF538 + + .align 2 +gUnknown_08305368:: @ 8305368 + .4byte gUnknown_082FF538 + + .align 2 gUnknown_0830536C:: @ 830536C - .incbin "baserom.gba", 0x30536c, 0x174 + .4byte gUnknown_083051F8 + .4byte gUnknown_083051FC + .4byte gUnknown_08305200 + .4byte gUnknown_08305204 + .4byte gUnknown_08305208 + .4byte gUnknown_0830520C + .4byte gUnknown_08305210 + .4byte gUnknown_08305214 + .4byte gUnknown_08305218 + .4byte gUnknown_0830521C + .4byte gUnknown_08305220 + .4byte gUnknown_08305224 + .4byte gUnknown_08305228 + .4byte gUnknown_0830522C + .4byte gUnknown_08305230 + .4byte gUnknown_08305234 + .4byte gUnknown_08305238 + .4byte gUnknown_0830523C + .4byte gUnknown_08305240 + .4byte gUnknown_08305244 + .4byte gUnknown_08305248 + .4byte gUnknown_0830524C + .4byte gUnknown_08305250 + .4byte gUnknown_08305254 + .4byte gUnknown_08305258 + .4byte gUnknown_0830525C + .4byte gUnknown_08305260 + .4byte gUnknown_08305264 + .4byte gUnknown_08305268 + .4byte gUnknown_0830526C + .4byte gUnknown_08305270 + .4byte gUnknown_08305274 + .4byte gUnknown_08305278 + .4byte gUnknown_0830527C + .4byte gUnknown_08305280 + .4byte gUnknown_08305284 + .4byte gUnknown_08305288 + .4byte gUnknown_0830528C + .4byte gUnknown_08305290 + .4byte gUnknown_08305294 + .4byte gUnknown_08305298 + .4byte gUnknown_0830529C + .4byte gUnknown_083052A0 + .4byte gUnknown_083052A4 + .4byte gUnknown_083052A8 + .4byte gUnknown_083052AC + .4byte gUnknown_083052B0 + .4byte gUnknown_083052B4 + .4byte gUnknown_083052B8 + .4byte gUnknown_083052BC + .4byte gUnknown_083052C0 + .4byte gUnknown_083052C4 + .4byte gUnknown_083052C8 + .4byte gUnknown_083052CC + .4byte gUnknown_083052D0 + .4byte gUnknown_083052D4 + .4byte gUnknown_083052D8 + .4byte gUnknown_083052DC + .4byte gUnknown_083052E0 + .4byte gUnknown_083052E4 + .4byte gUnknown_083052E8 + .4byte gUnknown_083052EC + .4byte gUnknown_083052F0 + .4byte gUnknown_083052F4 + .4byte gUnknown_083052F8 + .4byte gUnknown_083052FC + .4byte gUnknown_08305300 + .4byte gUnknown_08305304 + .4byte gUnknown_08305308 + .4byte gUnknown_0830530C + .4byte gUnknown_08305310 + .4byte gUnknown_08305314 + .4byte gUnknown_08305318 + .4byte gUnknown_0830531C + .4byte gUnknown_08305320 + .4byte gUnknown_08305324 + .4byte gUnknown_08305328 + .4byte gUnknown_0830532C + .4byte gUnknown_08305330 + .4byte gUnknown_08305334 + .4byte gUnknown_08305338 + .4byte gUnknown_0830533C + .4byte gUnknown_08305340 + .4byte gUnknown_08305344 + .4byte gUnknown_08305348 + .4byte gUnknown_0830534C + .4byte gUnknown_08305350 + .4byte gUnknown_08305354 + .4byte gUnknown_08305358 + .4byte gUnknown_0830535C + .4byte gUnknown_08305360 + .4byte gUnknown_08305364 + .4byte gUnknown_08305368 -gUnknown_083054E0:: @ 83054E0 - .incbin "baserom.gba", 0x3054e0, 0x174 +@ 83054E0 + .include "data/graphics/trainers/front_pic_coords.inc" @ 8305654 .include "data/graphics/trainers/trainer_front_pic_table.inc" @@ -128,14 +4381,93 @@ gUnknown_083054E0:: @ 83054E0 @ 830593C .include "data/graphics/trainers/trainer_front_pic_palette_table.inc" -@ 8305C24 - .incbin "baserom.gba", 0x305c24, 0xe8 +gUnknown_08305C24:: @ 8305C24 + .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 + .2byte 0x0003, 0x0032, 0xffff, 0x0000 + .align 2 +gUnknown_08305C3C:: @ 8305C3C + .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 + .2byte 0x0003, 0x0032, 0xffff, 0x0000 + + .align 2 +gUnknown_08305C54:: @ 8305C54 + .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 + .2byte 0x0003, 0x0032, 0xffff, 0x0000 + + .align 2 +gUnknown_08305C6C:: @ 8305C6C + .2byte 0x0001, 0x0014, 0x0002, 0x0006, 0x0003, 0x0006, 0x0004, 0x0018 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_08305C84:: @ 8305C84 + .2byte 0x0001, 0x0014, 0x0002, 0x0006, 0x0003, 0x0006, 0x0004, 0x0018 + .2byte 0x0000, 0x0001, 0xffff, 0x0000 + + .align 2 +gUnknown_08305C9C:: @ 8305C9C + .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 + .2byte 0x0003, 0x0032, 0xffff, 0x0000 + + .align 2 +gUnknown_08305CB4:: @ 8305CB4 + .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 + .2byte 0x0003, 0x0032, 0xffff, 0x0000 + + .align 2 +gUnknown_08305CCC:: @ 8305CCC + .4byte gUnknown_082FF540 + .4byte gUnknown_08305C24 + + .align 2 +gUnknown_08305CD4:: @ 8305CD4 + .4byte gUnknown_082FF540 + .4byte gUnknown_08305C3C + + .align 2 +gUnknown_08305CDC:: @ 8305CDC + .4byte gUnknown_082FF538 + .4byte gUnknown_08305C6C + + .align 2 +gUnknown_08305CE4:: @ 8305CE4 + .4byte gUnknown_082FF538 + .4byte gUnknown_08305C84 + + .align 2 +gUnknown_08305CEC:: @ 8305CEC + .4byte gUnknown_082FF540 + .4byte gUnknown_08305C9C + + .align 2 +gUnknown_08305CF4:: @ 8305CF4 + .4byte gUnknown_082FF540 + .4byte gUnknown_08305CB4 + + .align 2 +gUnknown_08305CFC:: @ 8305CFC + .4byte gUnknown_082FF540 + .4byte gUnknown_08305C54 + + .align 2 +gUnknown_08305D04:: @ 8305D04 + .4byte gUnknown_082FF540 + .4byte gUnknown_08305C3C + + .align 2 gUnknown_08305D0C:: @ 8305D0C - .incbin "baserom.gba", 0x305d0c, 0x20 + .4byte gUnknown_08305CCC + .4byte gUnknown_08305CD4 + .4byte gUnknown_08305CDC + .4byte gUnknown_08305CE4 + .4byte gUnknown_08305CEC + .4byte gUnknown_08305CF4 + .4byte gUnknown_08305CFC + .4byte gUnknown_08305D04 -gUnknown_08305D2C:: @ 8305D2C - .incbin "baserom.gba", 0x305d2c, 0x20 +@ 8305D2C + .include "data/graphics/trainers/back_pic_coords.inc" @ 8305D4C .include "data/graphics/trainers/trainer_back_pic_table.inc" @@ -143,8 +4475,10 @@ gUnknown_08305D2C:: @ 8305D2C @ 8305D8C .include "data/graphics/trainers/trainer_back_pic_palette_table.inc" -gUnknown_08305DCC:: @ 8305DCC - .incbin "baserom.gba", 0x305dcc, 0x3ce0 +@ 8305DCC + .include "data/enemy_mon_elevation.inc" + + .incbin "baserom.gba", 0x305f68, 0x3b44 gUnknown_08309AAC:: @ 8309AAC .incbin "baserom.gba", 0x309aac, 0x6e0 @@ -153,7 +4487,116 @@ gUnknown_08309AAC:: @ 8309AAC .include "data/graphics/pokemon/mon_front_pic_table.inc" @ 830AF4C - .incbin "baserom.gba", 0x30af4c, 0x6e0 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000088, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000888, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000886, 0x00000886 + .4byte 0x00000888, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000888, 0x00000886, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000886, 0x00000886 + .4byte 0x00000888, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000886, 0x00000886, 0x00000088 + .4byte 0x00000886, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000886, 0x00000888, 0x00000088, 0x00000088 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000886, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000886, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000886, 0x00000886, 0x00000888 + .4byte 0x00000886, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000088, 0x00000088, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000886, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000886 + .4byte 0x00000888, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000888, 0x00000886, 0x00000888 + .4byte 0x00000088, 0x00000088, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000888, 0x00000886 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000088 + .4byte 0x00000888, 0x00000886, 0x00000886, 0x00000888 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000088, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000886 + .4byte 0x00000888, 0x00000886, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000888, 0x00000088, 0x00000888 + .4byte 0x00000888, 0x00000088, 0x00000088, 0x00000888 + .4byte 0x00000886, 0x00000888, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000088, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000088, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000088 + .4byte 0x00000886, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000888 + .4byte 0x00000886, 0x00000888, 0x00000088, 0x00000088 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000088 + .4byte 0x00000888, 0x00000888, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000888, 0x00000088, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000886 + .4byte 0x00000088, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000886, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000886 + .4byte 0x00000886, 0x00000886, 0x00000888, 0x00000888 + .4byte 0x00000886, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000886, 0x00000886 + .4byte 0x00001882, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000886, 0x00000088, 0x00000886, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000886 + .4byte 0x00000886, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000886, 0x00000088 + .4byte 0x00000088, 0x00000886, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000886, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000886 + .4byte 0x00000886, 0x00000886, 0x00000886, 0x00000088 + .4byte 0x00000886, 0x00000088, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000886, 0x00000886 + .4byte 0x00000886, 0x00000888, 0x00000886, 0x00000886 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000886, 0x00000886, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000088, 0x00000088, 0x00000088 + .4byte 0x00000088, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 + .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 @ 830B62C .include "data/trainer_parties.inc" @@ -170,47 +4613,236 @@ gUnknown_08309AAC:: @ 8309AAC @ 831977C .include "data/text/move_names.inc" - .incbin "baserom.gba", 0x31a983, 0x4d +.align 2 + .2byte 0x0300, 0x0000 + .align 2 +gUnknown_0831A988:: @ 831A988 + .byte 0x00, 0x03, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00 + + .align 2 +gUnknown_0831A990:: @ 831A990 + .byte 0x00, 0x03, 0x00, 0xc0, 0x40, 0x00, 0x00, 0x00 + + .align 2 +gUnknown_0831A998:: @ 831A998 + .2byte 0x0080, 0x0080, 0x0000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_0831A9A8:: @ 831A9A8 + .2byte 0x0080, 0x0080, 0x0000, 0x0000, 0x0018, 0x0018, 0x8000, 0x0000 + .2byte 0x0018, 0x0018, 0x8000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_0831A9C8:: @ 831A9C8 + .4byte gUnknown_0831A998 + .4byte gUnknown_0831A9A8 + + .align 2 gUnknown_0831A9D0:: @ 831A9D0 - .incbin "baserom.gba", 0x31a9d0, 0x18 + spr_template 0x2710, 0x2710, gUnknown_0831A988, gDummySpriteAnimTable, NULL, gUnknown_0831A9C8, nullsub_17 + .align 2 gUnknown_0831A9E8:: @ 831A9E8 - .incbin "baserom.gba", 0x31a9e8, 0x18 + spr_template 0x2710, 0x2710, gUnknown_0831A990, gDummySpriteAnimTable, NULL, gUnknown_0831A9C8, nullsub_17 + .align 2 gUnknown_0831AA00:: @ 831AA00 - .incbin "baserom.gba", 0x31aa00, 0x8 + obj_tiles gUnknown_08D77B0C, 0x1000, 0x2710 + .align 2 gUnknown_0831AA08:: @ 831AA08 - .incbin "baserom.gba", 0x31aa08, 0x198 + .4byte 0x00000580, 0x000005c5, 0x000013e6, 0x000033ab + .align 2 +gUnknown_0831AA18:: @ 831AA18 + window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x00, 0x0090 + window_template 0x00, 0x01, 0x23, 0x0e, 0x04, 0x00, 0x01c0 + window_template 0x00, 0x11, 0x23, 0x0c, 0x04, 0x05, 0x0190 + window_template 0x00, 0x02, 0x37, 0x08, 0x02, 0x05, 0x0300 + window_template 0x00, 0x0b, 0x37, 0x08, 0x02, 0x05, 0x0310 + window_template 0x00, 0x02, 0x39, 0x08, 0x02, 0x05, 0x0320 + window_template 0x00, 0x0b, 0x39, 0x08, 0x02, 0x05, 0x0330 + window_template 0x00, 0x15, 0x37, 0x04, 0x02, 0x05, 0x0290 + window_template 0x00, 0x15, 0x39, 0x00, 0x00, 0x05, 0x0298 + window_template 0x00, 0x19, 0x37, 0x04, 0x02, 0x05, 0x0298 + window_template 0x00, 0x15, 0x39, 0x08, 0x02, 0x05, 0x02a0 + window_template 0x00, 0x15, 0x37, 0x08, 0x04, 0x05, 0x02b0 + window_template 0x00, 0x1a, 0x09, 0x03, 0x04, 0x05, 0x0100 + window_template 0x01, 0x13, 0x08, 0x0a, 0x0b, 0x05, 0x0100 + window_template 0x02, 0x12, 0x00, 0x0c, 0x03, 0x06, 0x016e + window_template 0x01, 0x02, 0x03, 0x06, 0x02, 0x05, 0x0020 + window_template 0x02, 0x02, 0x03, 0x06, 0x02, 0x05, 0x0040 + window_template 0x01, 0x02, 0x02, 0x06, 0x02, 0x05, 0x0020 + window_template 0x02, 0x02, 0x02, 0x06, 0x02, 0x05, 0x0040 + window_template 0x01, 0x02, 0x06, 0x06, 0x02, 0x05, 0x0060 + window_template 0x02, 0x02, 0x06, 0x06, 0x02, 0x05, 0x0080 + window_template 0x00, 0x0c, 0x02, 0x06, 0x02, 0x00, 0x00a0 + window_template 0x00, 0x04, 0x02, 0x07, 0x02, 0x00, 0x00a0 + window_template 0x00, 0x13, 0x02, 0x07, 0x02, 0x00, 0x00b0 + window_template_terminator + + .align 2 +gUnknown_0831AAE0:: @ 831AAE0 + window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x00, 0x0090 + window_template 0x00, 0x01, 0x23, 0x0e, 0x04, 0x00, 0x01c0 + window_template 0x00, 0x11, 0x23, 0x0c, 0x04, 0x05, 0x0190 + window_template 0x00, 0x02, 0x37, 0x08, 0x02, 0x05, 0x0300 + window_template 0x00, 0x0b, 0x37, 0x08, 0x02, 0x05, 0x0310 + window_template 0x00, 0x02, 0x39, 0x08, 0x02, 0x05, 0x0320 + window_template 0x00, 0x0b, 0x39, 0x08, 0x02, 0x05, 0x0330 + window_template 0x00, 0x15, 0x37, 0x04, 0x02, 0x05, 0x0290 + window_template 0x00, 0x15, 0x39, 0x00, 0x00, 0x05, 0x0298 + window_template 0x00, 0x19, 0x37, 0x04, 0x02, 0x05, 0x0298 + window_template 0x00, 0x15, 0x39, 0x08, 0x02, 0x05, 0x02a0 + window_template 0x00, 0x15, 0x37, 0x08, 0x04, 0x05, 0x02b0 + window_template 0x00, 0x1a, 0x09, 0x03, 0x04, 0x05, 0x0100 + window_template 0x01, 0x13, 0x08, 0x0a, 0x0b, 0x05, 0x0100 + window_template 0x02, 0x12, 0x00, 0x0c, 0x03, 0x06, 0x016e + window_template 0x00, 0x06, 0x01, 0x08, 0x02, 0x05, 0x0100 + window_template 0x00, 0x0e, 0x01, 0x02, 0x02, 0x05, 0x0110 + window_template 0x00, 0x10, 0x01, 0x08, 0x02, 0x05, 0x0114 + window_template 0x00, 0x0c, 0x04, 0x06, 0x02, 0x05, 0x0124 + window_template 0x00, 0x0c, 0x06, 0x06, 0x02, 0x05, 0x0130 + window_template 0x00, 0x0c, 0x08, 0x06, 0x02, 0x05, 0x013c + window_template 0x00, 0x08, 0x0b, 0x0e, 0x02, 0x05, 0x0148 + window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x07, 0x0090 + window_template_terminator + + .align 2 gUnknown_0831ABA0:: @ 831ABA0 - .incbin "baserom.gba", 0x31aba0, 0x8 + .4byte gUnknown_0831AA18 + .4byte gUnknown_0831AAE0 -gUnknown_0831ABA8:: @ 831ABA8 - .incbin "baserom.gba", 0x31aba8, 0xc8 + .align 2 +gBattleTerrainTable:: @ 831ABA8 + @ tall_grass + .4byte gUnknown_08D77D68 + .4byte gUnknown_08D78350 + .4byte gUnknown_08D7E280 + .4byte gUnknown_08D7E808 + .4byte gUnknown_08D78318 + @ long_grass + .4byte gUnknown_08D78600 + .4byte gUnknown_08D78CB8 + .4byte gUnknown_08D7E9C4 + .4byte gUnknown_08D7F0D4 + .4byte gUnknown_08D78C78 + + @ sand + .4byte gUnknown_08D78F68 + .4byte gUnknown_08D795A8 + .4byte gUnknown_08D7F30C + .4byte gUnknown_08D7F850 + .4byte gUnknown_08D79560 + + @ underwater + .4byte gUnknown_08D79858 + .4byte gUnknown_08D79E58 + .4byte gUnknown_08D7F9F8 + .4byte gUnknown_08D7FEC4 + .4byte gUnknown_08D79E10 + + @ water + .4byte gUnknown_08D7A108 + .4byte gUnknown_08D7A720 + .4byte gUnknown_08D80054 + .4byte gUnknown_08D80660 + .4byte gUnknown_08D7A6DC + + @ pond_water + .4byte gUnknown_08D7A9D0 + .4byte gUnknown_08D7AFB8 + .4byte gUnknown_08D80804 + .4byte gUnknown_08D80D50 + .4byte gUnknown_08D7AF78 + + @ rock + .4byte gUnknown_08D7B268 + .4byte gUnknown_08D7B864 + .4byte gUnknown_08D80E9C + .4byte gUnknown_08D8147C + .4byte gUnknown_08D7B828 + + @ cave + .4byte gUnknown_08D7BB14 + .4byte gUnknown_08D7C154 + .4byte gUnknown_08D81610 + .4byte gUnknown_08D81E2C + .4byte gUnknown_08D7C10C + + @ building + .4byte gUnknown_08D7C440 + .4byte gUnknown_08D7CA28 + .4byte gUnknown_08D820D4 + .4byte gUnknown_08D824E4 + .4byte gUnknown_08D7DEB4 + + @ plain + .4byte gUnknown_08D7C440 + .4byte gUnknown_08D7CA28 + .4byte gUnknown_08D820D4 + .4byte gUnknown_08D824E4 + .4byte gUnknown_08D7C404 + + .align 2 gUnknown_0831AC70:: @ 831AC70 - .incbin "baserom.gba", 0x31ac70, 0x18 + .4byte REG_BG3HOFS + .4byte ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1 + .4byte 1 + .4byte REG_BG3HOFS + .4byte ((DMA_ENABLE | DMA_START_HBLANK | DMA_32BIT | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1 + .4byte 1 + .align 2 gUnknown_0831AC88:: @ 831AC88 - .incbin "baserom.gba", 0x31ac88, 0x18 + spr_template 0x0000, 0x0000, gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_8038528 + .align 2 gUnknown_0831ACA0:: @ 831ACA0 - .incbin "baserom.gba", 0x31aca0, 0x40 + .string "ヌケニン$" @ "Nukenin" (Shedinja) + .align 2 +gUnknown_0831ACA8:: @ 831ACA8 + .2byte 0x0100 + .2byte 0xC000 + .2byte 0x0800 + + .align 2 +gUnknown_0831ACB0:: @ 831ACB0 + .2byte 0x0100 + .2byte 0xC000 + .2byte 0x2800 + + .align 2 +gUnknown_0831ACB8:: @ 831ACB8 + .2byte 0x0000, 0x0005, 0xfffe, 0x0000 + + .align 2 +gUnknown_0831ACC0:: @ 831ACC0 + .4byte gUnknown_0831ACB8 + + .align 2 +gUnknown_0831ACC4:: @ 831ACC4 + .2byte 0xfff0, 0x0000, 0x0400, 0x0000, 0x0000, 0x0000, 0x3c00, 0x0000, 0x7ffe, 0x0001, 0x0000, 0x0000 + + .align 2 +gUnknown_0831ACDC:: @ 831ACDC + .4byte gUnknown_0831ACC4 + + .align 2 gUnknown_0831ACE0:: @ 831ACE0 - .incbin "baserom.gba", 0x31ace0, 0x8 + .byte 0xe0, 0xf0, 0xf0, 0xe0, 0xe0, 0x00, 0x00, 0x00 -gTypeEffectiveness:: @ 831ACE8 - .incbin "baserom.gba", 0x31ace8, 0x150 +@ 831ACE8 + .include "data/type_effectiveness.inc" @ 831AE38 .include "data/text/type_names.inc" - .align 2 -gTrainerMoneyTable:: @ 831AEB8 - .incbin "baserom.gba", 0x31aeb8, 0xe0 +@ 831AEB8 + .include "data/trainer_money.inc" @ 831AF98 .include "data/text/ability_descriptions.inc" @@ -221,45 +4853,92 @@ gTrainerMoneyTable:: @ 831AEB8 @ 831BAD4 .include "data/text/ability_description_pointers.inc" + .align 2 gUnknown_0831BC0C:: @ 831BC0C - .incbin "baserom.gba", 0x31bc0c, 0x38 + .4byte sub_803E0B8 + .4byte sub_803E90C + .4byte bs2_8016374 + .4byte sub_803EE48 + .4byte sub_803EFA8 + .4byte bs5_8016AC0 + .4byte sub_803F050 + .4byte sub_803F120 + .4byte bs8_exit_by_flight + .4byte bs9_8016C9C + .4byte sub_80458B4 + .4byte bsB_exit_by_move + .4byte bsC_8016D70 + .4byte bsD_proceed + .align 2 gUnknown_0831BC44:: @ 831BC44 - .incbin "baserom.gba", 0x31bc44, 0x2c + .4byte bc_8013B1C + .4byte sub_803D8C0 + .4byte sub_803DAC0 + .4byte sub_803DAC0 + .4byte sub_803DBA0 + .4byte sub_803DCD8 + .4byte bc_80158BC + .4byte sub_803DCD8 + .4byte sub_803DCD8 + .4byte sub_803DCD8 + .4byte sub_803DCD8 -gStatusConditionString_PoisonJpn:: @ 831BC70 - .incbin "baserom.gba", 0x31bc70, 0x8 +gStatusConditionString_PoisonJpn:: @ 81FA69C + .string "どく$$$$$$" -gStatusConditionString_SleepJpn:: @ 831BC78 - .incbin "baserom.gba", 0x31bc78, 0x8 +gStatusConditionString_SleepJpn:: @ 81FA6A4 + .string "ねむり$$$$$" -gStatusConditionString_ParalysisJpn:: @ 831BC80 - .incbin "baserom.gba", 0x31bc80, 0x8 +gStatusConditionString_ParalysisJpn:: @ 81FA6AC + .string "まひ$$$$$$" -gStatusConditionString_BurnJpn:: @ 831BC88 - .incbin "baserom.gba", 0x31bc88, 0x8 +gStatusConditionString_BurnJpn:: @ 81FA6B4 + .string "やけど$$$$$" -gStatusConditionString_IceJpn:: @ 831BC90 - .incbin "baserom.gba", 0x31bc90, 0x8 +gStatusConditionString_IceJpn:: @ 81FA6BC + .string "こおり$$$$$" -gStatusConditionString_ConfusionJpn:: @ 831BC98 - .incbin "baserom.gba", 0x31bc98, 0x8 +gStatusConditionString_ConfusionJpn:: @ 81FA6C4 + .string "こんらん$$$$" -gStatusConditionString_LoveJpn:: @ 831BCA0 - .incbin "baserom.gba", 0x31bca0, 0x8 +gStatusConditionString_LoveJpn:: @ 81FA6CC + .string "メロメロ$$$$" + .align 2 gUnknown_0831BCA8:: @ 831BCA8 - .incbin "baserom.gba", 0x31bca8, 0x38 + .4byte gStatusConditionString_PoisonJpn, gText_Poison + .4byte gStatusConditionString_SleepJpn, gText_Sleep + .4byte gStatusConditionString_ParalysisJpn, gText_Paralysis + .4byte gStatusConditionString_BurnJpn, gText_Burn + .4byte gStatusConditionString_IceJpn, gText_Ice + .4byte gStatusConditionString_ConfusionJpn, gText_Confusion + .4byte gStatusConditionString_LoveJpn, gText_Love gUnknown_0831BCE0:: @ 831BCE0 - .incbin "baserom.gba", 0x31bce0, 0xf + .byte 0, 0, 0 + .byte 3, 5, 0 + .byte 2, 3, 0 + .byte 1, 2, 0 + .byte 1, 1, 0 gUnknown_0831BCEF:: @ 831BCEF - .incbin "baserom.gba", 0x31bcef, 0x4 + .byte 4, 3, 2, 1 gUnknown_0831BCF3:: @ 831BCF3 - .incbin "baserom.gba", 0x31bcf3, 0x5 + .byte 4, 4, 4, 4 + .align 2 gSoundMovesTable:: @ 831BCF8 - .incbin "baserom.gba", 0x31bcf8, 0x18 + .2byte 0x2D + .2byte 0x2E + .2byte 0x2F + .2byte 0x30 + .2byte 0x67 + .2byte 0xAD + .2byte 0xFD + .2byte 0x13F + .2byte 0x140 + .2byte 0x130 + .2byte 0xFFFF diff --git a/data/enemy_mon_elevation.inc b/data/enemy_mon_elevation.inc new file mode 100644 index 0000000000..2dadadd076 --- /dev/null +++ b/data/enemy_mon_elevation.inc @@ -0,0 +1,415 @@ +@ This determines how much higher above the usual position the enemy Pokémon +@ is during battle. Species that float or fly have nonzero values. +gEnemyMonElevation:: @ 8305DCC + .byte 0 @ 0 + .byte 0 @ SPECIES_BULBASAUR + .byte 0 @ SPECIES_IVYSAUR + .byte 0 @ SPECIES_VENUSAUR + .byte 0 @ SPECIES_CHARMANDER + .byte 0 @ SPECIES_CHARMELEON + .byte 0 @ SPECIES_CHARIZARD + .byte 0 @ SPECIES_SQUIRTLE + .byte 0 @ SPECIES_WARTORTLE + .byte 0 @ SPECIES_BLASTOISE + .byte 0 @ SPECIES_CATERPIE + .byte 0 @ SPECIES_METAPOD + .byte 8 @ SPECIES_BUTTERFREE + .byte 0 @ SPECIES_WEEDLE + .byte 0 @ SPECIES_KAKUNA + .byte 8 @ SPECIES_BEEDRILL + .byte 16 @ SPECIES_PIDGEY + .byte 0 @ SPECIES_PIDGEOTTO + .byte 4 @ SPECIES_PIDGEOT + .byte 0 @ SPECIES_RATTATA + .byte 0 @ SPECIES_RATICATE + .byte 0 @ SPECIES_SPEAROW + .byte 6 @ SPECIES_FEAROW + .byte 0 @ SPECIES_EKANS + .byte 0 @ SPECIES_ARBOK + .byte 0 @ SPECIES_PIKACHU + .byte 0 @ SPECIES_RAICHU + .byte 0 @ SPECIES_SANDSHREW + .byte 0 @ SPECIES_SANDSLASH + .byte 0 @ SPECIES_NIDORAN_F + .byte 0 @ SPECIES_NIDORINA + .byte 0 @ SPECIES_NIDOQUEEN + .byte 0 @ SPECIES_NIDORAN_M + .byte 0 @ SPECIES_NIDORINO + .byte 0 @ SPECIES_NIDOKING + .byte 0 @ SPECIES_CLEFAIRY + .byte 0 @ SPECIES_CLEFABLE + .byte 0 @ SPECIES_VULPIX + .byte 0 @ SPECIES_NINETALES + .byte 0 @ SPECIES_JIGGLYPUFF + .byte 0 @ SPECIES_WIGGLYTUFF + .byte 8 @ SPECIES_ZUBAT + .byte 8 @ SPECIES_GOLBAT + .byte 0 @ SPECIES_ODDISH + .byte 0 @ SPECIES_GLOOM + .byte 0 @ SPECIES_VILEPLUME + .byte 0 @ SPECIES_PARAS + .byte 0 @ SPECIES_PARASECT + .byte 0 @ SPECIES_VENONAT + .byte 8 @ SPECIES_VENOMOTH + .byte 0 @ SPECIES_DIGLETT + .byte 0 @ SPECIES_DUGTRIO + .byte 0 @ SPECIES_MEOWTH + .byte 0 @ SPECIES_PERSIAN + .byte 0 @ SPECIES_PSYDUCK + .byte 0 @ SPECIES_GOLDUCK + .byte 0 @ SPECIES_MANKEY + .byte 0 @ SPECIES_PRIMEAPE + .byte 0 @ SPECIES_GROWLITHE + .byte 0 @ SPECIES_ARCANINE + .byte 0 @ SPECIES_POLIWAG + .byte 0 @ SPECIES_POLIWHIRL + .byte 0 @ SPECIES_POLIWRATH + .byte 0 @ SPECIES_ABRA + .byte 0 @ SPECIES_KADABRA + .byte 0 @ SPECIES_ALAKAZAM + .byte 0 @ SPECIES_MACHOP + .byte 0 @ SPECIES_MACHOKE + .byte 0 @ SPECIES_MACHAMP + .byte 0 @ SPECIES_BELLSPROUT + .byte 0 @ SPECIES_WEEPINBELL + .byte 0 @ SPECIES_VICTREEBEL + .byte 0 @ SPECIES_TENTACOOL + .byte 0 @ SPECIES_TENTACRUEL + .byte 16 @ SPECIES_GEODUDE + .byte 0 @ SPECIES_GRAVELER + .byte 0 @ SPECIES_GOLEM + .byte 0 @ SPECIES_PONYTA + .byte 0 @ SPECIES_RAPIDASH + .byte 0 @ SPECIES_SLOWPOKE + .byte 0 @ SPECIES_SLOWBRO + .byte 16 @ SPECIES_MAGNEMITE + .byte 8 @ SPECIES_MAGNETON + .byte 0 @ SPECIES_FARFETCHD + .byte 0 @ SPECIES_DODUO + .byte 0 @ SPECIES_DODRIO + .byte 0 @ SPECIES_SEEL + .byte 0 @ SPECIES_DEWGONG + .byte 0 @ SPECIES_GRIMER + .byte 0 @ SPECIES_MUK + .byte 0 @ SPECIES_SHELLDER + .byte 0 @ SPECIES_CLOYSTER + .byte 4 @ SPECIES_GASTLY + .byte 4 @ SPECIES_HAUNTER + .byte 0 @ SPECIES_GENGAR + .byte 0 @ SPECIES_ONIX + .byte 0 @ SPECIES_DROWZEE + .byte 0 @ SPECIES_HYPNO + .byte 0 @ SPECIES_KRABBY + .byte 0 @ SPECIES_KINGLER + .byte 10 @ SPECIES_VOLTORB + .byte 12 @ SPECIES_ELECTRODE + .byte 0 @ SPECIES_EXEGGCUTE + .byte 0 @ SPECIES_EXEGGUTOR + .byte 0 @ SPECIES_CUBONE + .byte 0 @ SPECIES_MAROWAK + .byte 0 @ SPECIES_HITMONLEE + .byte 0 @ SPECIES_HITMONCHAN + .byte 0 @ SPECIES_LICKITUNG + .byte 8 @ SPECIES_KOFFING + .byte 6 @ SPECIES_WEEZING + .byte 0 @ SPECIES_RHYHORN + .byte 0 @ SPECIES_RHYDON + .byte 0 @ SPECIES_CHANSEY + .byte 0 @ SPECIES_TANGELA + .byte 0 @ SPECIES_KANGASKHAN + .byte 0 @ SPECIES_HORSEA + .byte 0 @ SPECIES_SEADRA + .byte 0 @ SPECIES_GOLDEEN + .byte 0 @ SPECIES_SEAKING + .byte 0 @ SPECIES_STARYU + .byte 0 @ SPECIES_STARMIE + .byte 0 @ SPECIES_MR_MIME + .byte 0 @ SPECIES_SCYTHER + .byte 0 @ SPECIES_JYNX + .byte 0 @ SPECIES_ELECTABUZZ + .byte 0 @ SPECIES_MAGMAR + .byte 0 @ SPECIES_PINSIR + .byte 0 @ SPECIES_TAUROS + .byte 0 @ SPECIES_MAGIKARP + .byte 0 @ SPECIES_GYARADOS + .byte 0 @ SPECIES_LAPRAS + .byte 0 @ SPECIES_DITTO + .byte 0 @ SPECIES_EEVEE + .byte 0 @ SPECIES_VAPOREON + .byte 0 @ SPECIES_JOLTEON + .byte 0 @ SPECIES_FLAREON + .byte 0 @ SPECIES_PORYGON + .byte 0 @ SPECIES_OMANYTE + .byte 0 @ SPECIES_OMASTAR + .byte 0 @ SPECIES_KABUTO + .byte 0 @ SPECIES_KABUTOPS + .byte 7 @ SPECIES_AERODACTYL + .byte 0 @ SPECIES_SNORLAX + .byte 6 @ SPECIES_ARTICUNO + .byte 8 @ SPECIES_ZAPDOS + .byte 5 @ SPECIES_MOLTRES + .byte 0 @ SPECIES_DRATINI + .byte 0 @ SPECIES_DRAGONAIR + .byte 6 @ SPECIES_DRAGONITE + .byte 0 @ SPECIES_MEWTWO + .byte 8 @ SPECIES_MEW + .byte 0 @ SPECIES_CHIKORITA + .byte 0 @ SPECIES_BAYLEEF + .byte 0 @ SPECIES_MEGANIUM + .byte 0 @ SPECIES_CYNDAQUIL + .byte 0 @ SPECIES_QUILAVA + .byte 0 @ SPECIES_TYPHLOSION + .byte 0 @ SPECIES_TOTODILE + .byte 0 @ SPECIES_CROCONAW + .byte 0 @ SPECIES_FERALIGATR + .byte 0 @ SPECIES_SENTRET + .byte 0 @ SPECIES_FURRET + .byte 0 @ SPECIES_HOOTHOOT + .byte 0 @ SPECIES_NOCTOWL + .byte 0 @ SPECIES_LEDYBA + .byte 8 @ SPECIES_LEDIAN + .byte 0 @ SPECIES_SPINARAK + .byte 0 @ SPECIES_ARIADOS + .byte 6 @ SPECIES_CROBAT + .byte 0 @ SPECIES_CHINCHOU + .byte 0 @ SPECIES_LANTURN + .byte 0 @ SPECIES_PICHU + .byte 0 @ SPECIES_CLEFFA + .byte 0 @ SPECIES_IGGLYBUFF + .byte 0 @ SPECIES_TOGEPI + .byte 0 @ SPECIES_TOGETIC + .byte 0 @ SPECIES_NATU + .byte 0 @ SPECIES_XATU + .byte 0 @ SPECIES_MAREEP + .byte 0 @ SPECIES_FLAAFFY + .byte 0 @ SPECIES_AMPHAROS + .byte 0 @ SPECIES_BELLOSSOM + .byte 0 @ SPECIES_MARILL + .byte 0 @ SPECIES_AZUMARILL + .byte 0 @ SPECIES_SUDOWOODO + .byte 0 @ SPECIES_POLITOED + .byte 11 @ SPECIES_HOPPIP + .byte 12 @ SPECIES_SKIPLOOM + .byte 9 @ SPECIES_JUMPLUFF + .byte 0 @ SPECIES_AIPOM + .byte 0 @ SPECIES_SUNKERN + .byte 0 @ SPECIES_SUNFLORA + .byte 8 @ SPECIES_YANMA + .byte 0 @ SPECIES_WOOPER + .byte 0 @ SPECIES_QUAGSIRE + .byte 0 @ SPECIES_ESPEON + .byte 0 @ SPECIES_UMBREON + .byte 0 @ SPECIES_MURKROW + .byte 0 @ SPECIES_SLOWKING + .byte 8 @ SPECIES_MISDREAVUS + .byte 8 @ SPECIES_UNOWN + .byte 0 @ SPECIES_WOBBUFFET + .byte 0 @ SPECIES_GIRAFARIG + .byte 0 @ SPECIES_PINECO + .byte 0 @ SPECIES_FORRETRESS + .byte 0 @ SPECIES_DUNSPARCE + .byte 6 @ SPECIES_GLIGAR + .byte 0 @ SPECIES_STEELIX + .byte 0 @ SPECIES_SNUBBULL + .byte 0 @ SPECIES_GRANBULL + .byte 0 @ SPECIES_QWILFISH + .byte 0 @ SPECIES_SCIZOR + .byte 0 @ SPECIES_SHUCKLE + .byte 0 @ SPECIES_HERACROSS + .byte 0 @ SPECIES_SNEASEL + .byte 0 @ SPECIES_TEDDIURSA + .byte 0 @ SPECIES_URSARING + .byte 0 @ SPECIES_SLUGMA + .byte 0 @ SPECIES_MAGCARGO + .byte 0 @ SPECIES_SWINUB + .byte 0 @ SPECIES_PILOSWINE + .byte 0 @ SPECIES_CORSOLA + .byte 0 @ SPECIES_REMORAID + .byte 0 @ SPECIES_OCTILLERY + .byte 0 @ SPECIES_DELIBIRD + .byte 0 @ SPECIES_MANTINE + .byte 0 @ SPECIES_SKARMORY + .byte 0 @ SPECIES_HOUNDOUR + .byte 0 @ SPECIES_HOUNDOOM + .byte 0 @ SPECIES_KINGDRA + .byte 0 @ SPECIES_PHANPY + .byte 0 @ SPECIES_DONPHAN + .byte 0 @ SPECIES_PORYGON2 + .byte 0 @ SPECIES_STANTLER + .byte 0 @ SPECIES_SMEARGLE + .byte 0 @ SPECIES_TYROGUE + .byte 0 @ SPECIES_HITMONTOP + .byte 0 @ SPECIES_SMOOCHUM + .byte 0 @ SPECIES_ELEKID + .byte 0 @ SPECIES_MAGBY + .byte 0 @ SPECIES_MILTANK + .byte 0 @ SPECIES_BLISSEY + .byte 0 @ SPECIES_RAIKOU + .byte 0 @ SPECIES_ENTEI + .byte 0 @ SPECIES_SUICUNE + .byte 0 @ SPECIES_LARVITAR + .byte 0 @ SPECIES_PUPITAR + .byte 0 @ SPECIES_TYRANITAR + .byte 6 @ SPECIES_LUGIA + .byte 6 @ SPECIES_HO_OH + .byte 15 @ SPECIES_CELEBI + .byte 0 @ 252 + .byte 0 @ 253 + .byte 0 @ 254 + .byte 0 @ 255 + .byte 0 @ 256 + .byte 0 @ 257 + .byte 0 @ 258 + .byte 0 @ 259 + .byte 0 @ 260 + .byte 0 @ 261 + .byte 0 @ 262 + .byte 0 @ 263 + .byte 0 @ 264 + .byte 0 @ 265 + .byte 0 @ 266 + .byte 0 @ 267 + .byte 0 @ 268 + .byte 0 @ 269 + .byte 0 @ 270 + .byte 0 @ 271 + .byte 0 @ 272 + .byte 0 @ 273 + .byte 0 @ 274 + .byte 0 @ 275 + .byte 0 @ 276 + .byte 0 @ SPECIES_TREECKO + .byte 0 @ SPECIES_GROVYLE + .byte 0 @ SPECIES_SCEPTILE + .byte 0 @ SPECIES_TORCHIC + .byte 0 @ SPECIES_COMBUSKEN + .byte 0 @ SPECIES_BLAZIKEN + .byte 0 @ SPECIES_MUDKIP + .byte 0 @ SPECIES_MARSHTOMP + .byte 0 @ SPECIES_SWAMPERT + .byte 0 @ SPECIES_POOCHYENA + .byte 0 @ SPECIES_MIGHTYENA + .byte 0 @ SPECIES_ZIGZAGOON + .byte 0 @ SPECIES_LINOONE + .byte 0 @ SPECIES_WURMPLE + .byte 0 @ SPECIES_SILCOON + .byte 8 @ SPECIES_BEAUTIFLY + .byte 0 @ SPECIES_CASCOON + .byte 10 @ SPECIES_DUSTOX + .byte 0 @ SPECIES_LOTAD + .byte 0 @ SPECIES_LOMBRE + .byte 0 @ SPECIES_LUDICOLO + .byte 0 @ SPECIES_SEEDOT + .byte 0 @ SPECIES_NUZLEAF + .byte 0 @ SPECIES_SHIFTRY + .byte 0 @ SPECIES_NINCADA + .byte 10 @ SPECIES_NINJASK + .byte 8 @ SPECIES_SHEDINJA + .byte 0 @ SPECIES_TAILLOW + .byte 0 @ SPECIES_SWELLOW + .byte 0 @ SPECIES_SHROOMISH + .byte 0 @ SPECIES_BRELOOM + .byte 0 @ SPECIES_SPINDA + .byte 16 @ SPECIES_WINGULL + .byte 8 @ SPECIES_PELIPPER + .byte 0 @ SPECIES_SURSKIT + .byte 10 @ SPECIES_MASQUERAIN + .byte 0 @ SPECIES_WAILMER + .byte 0 @ SPECIES_WAILORD + .byte 0 @ SPECIES_SKITTY + .byte 0 @ SPECIES_DELCATTY + .byte 0 @ SPECIES_KECLEON + .byte 4 @ SPECIES_BALTOY + .byte 10 @ SPECIES_CLAYDOL + .byte 0 @ SPECIES_NOSEPASS + .byte 0 @ SPECIES_TORKOAL + .byte 0 @ SPECIES_SABLEYE + .byte 0 @ SPECIES_BARBOACH + .byte 0 @ SPECIES_WHISCASH + .byte 0 @ SPECIES_LUVDISC + .byte 0 @ SPECIES_CORPHISH + .byte 0 @ SPECIES_CRAWDAUNT + .byte 0 @ SPECIES_FEEBAS + .byte 0 @ SPECIES_MILOTIC + .byte 0 @ SPECIES_CARVANHA + .byte 0 @ SPECIES_SHARPEDO + .byte 0 @ SPECIES_TRAPINCH + .byte 0 @ SPECIES_VIBRAVA + .byte 7 @ SPECIES_FLYGON + .byte 0 @ SPECIES_MAKUHITA + .byte 0 @ SPECIES_HARIYAMA + .byte 0 @ SPECIES_ELECTRIKE + .byte 0 @ SPECIES_MANECTRIC + .byte 0 @ SPECIES_NUMEL + .byte 0 @ SPECIES_CAMERUPT + .byte 0 @ SPECIES_SPHEAL + .byte 0 @ SPECIES_SEALEO + .byte 0 @ SPECIES_WALREIN + .byte 0 @ SPECIES_CACNEA + .byte 0 @ SPECIES_CACTURNE + .byte 0 @ SPECIES_SNORUNT + .byte 12 @ SPECIES_GLALIE + .byte 13 @ SPECIES_LUNATONE + .byte 4 @ SPECIES_SOLROCK + .byte 0 @ SPECIES_AZURILL + .byte 0 @ SPECIES_SPOINK + .byte 0 @ SPECIES_GRUMPIG + .byte 0 @ SPECIES_PLUSLE + .byte 0 @ SPECIES_MINUN + .byte 0 @ SPECIES_MAWILE + .byte 0 @ SPECIES_MEDITITE + .byte 0 @ SPECIES_MEDICHAM + .byte 12 @ SPECIES_SWABLU + .byte 8 @ SPECIES_ALTARIA + .byte 0 @ SPECIES_WYNAUT + .byte 9 @ SPECIES_DUSKULL + .byte 0 @ SPECIES_DUSCLOPS + .byte 0 @ SPECIES_ROSELIA + .byte 0 @ SPECIES_SLAKOTH + .byte 0 @ SPECIES_VIGOROTH + .byte 0 @ SPECIES_SLAKING + .byte 0 @ SPECIES_GULPIN + .byte 0 @ SPECIES_SWALOT + .byte 0 @ SPECIES_TROPIUS + .byte 0 @ SPECIES_WHISMUR + .byte 0 @ SPECIES_LOUDRED + .byte 0 @ SPECIES_EXPLOUD + .byte 0 @ SPECIES_CLAMPERL + .byte 0 @ SPECIES_HUNTAIL + .byte 0 @ SPECIES_GOREBYSS + .byte 0 @ SPECIES_ABSOL + .byte 12 @ SPECIES_SHUPPET + .byte 8 @ SPECIES_BANETTE + .byte 0 @ SPECIES_SEVIPER + .byte 0 @ SPECIES_ZANGOOSE + .byte 0 @ SPECIES_RELICANTH + .byte 0 @ SPECIES_ARON + .byte 0 @ SPECIES_LAIRON + .byte 0 @ SPECIES_AGGRON + .byte 16 @ SPECIES_CASTFORM + .byte 0 @ SPECIES_VOLBEAT + .byte 0 @ SPECIES_ILLUMISE + .byte 0 @ SPECIES_LILEEP + .byte 0 @ SPECIES_CRADILY + .byte 0 @ SPECIES_ANORITH + .byte 0 @ SPECIES_ARMALDO + .byte 0 @ SPECIES_RALTS + .byte 0 @ SPECIES_KIRLIA + .byte 0 @ SPECIES_GARDEVOIR + .byte 0 @ SPECIES_BAGON + .byte 0 @ SPECIES_SHELGON + .byte 0 @ SPECIES_SALAMENCE + .byte 8 @ SPECIES_BELDUM + .byte 0 @ SPECIES_METANG + .byte 0 @ SPECIES_METAGROSS + .byte 0 @ SPECIES_REGIROCK + .byte 0 @ SPECIES_REGICE + .byte 0 @ SPECIES_REGISTEEL + .byte 0 @ SPECIES_KYOGRE + .byte 0 @ SPECIES_GROUDON + .byte 6 @ SPECIES_RAYQUAZA + .byte 6 @ SPECIES_LATIAS + .byte 6 @ SPECIES_LATIOS + .byte 12 @ SPECIES_JIRACHI + .byte 8 @ SPECIES_DEOXYS + .byte 12 @ SPECIES_CHIMECHO diff --git a/data/fanfares.s b/data/fanfares.s index 26d2d82d1f..2a0c2576a7 100644 --- a/data/fanfares.s +++ b/data/fanfares.s @@ -5,4 +5,22 @@ .align 2, 0 sFanfares:: @ 85248BC - .incbin "baserom.gba", 0x5248bc, 0x48 +@ song number, duration + .2byte 0x016f, 0x0050 + .2byte 0x0172, 0x00a0 + .2byte 0x0173, 0x00dc + .2byte 0x0174, 0x00dc + .2byte 0x0170, 0x00a0 + .2byte 0x0171, 0x0154 + .2byte 0x017a, 0x00b4 + .2byte 0x0183, 0x0078 + .2byte 0x0184, 0x02c6 + .2byte 0x0185, 0x00fa + .2byte 0x0186, 0x0096 + .2byte 0x0187, 0x00a0 + .2byte 0x0226, 0x01c2 + .2byte 0x0212, 0x00aa + .2byte 0x0211, 0x00c4 + .2byte 0x01cb, 0x0139 + .2byte 0x01d2, 0x013e + .2byte 0x01cc, 0x0087 diff --git a/data/graphics.s b/data/graphics.s index e5c8ad49f0..c192db3ab2 100644 --- a/data/graphics.s +++ b/data/graphics.s @@ -230,19 +230,82 @@ gUnknown_08D77AE4:: @ 8D77AE4 .incbin "baserom.gba", 0xd77ae4, 0x28 gUnknown_08D77B0C:: @ 8D77B0C - .incbin "baserom.gba", 0xd77b0c, 0x25fc + .incbin "baserom.gba", 0xd77b0c, 0x25c + +gUnknown_08D77D68:: @ 8D77D68 + .incbin "baserom.gba", 0xd77d68, 0x5b0 + +gUnknown_08D78318:: @ 8D78318 + .incbin "baserom.gba", 0xd78318, 0x38 + +gUnknown_08D78350:: @ 8D78350 + .incbin "baserom.gba", 0xd78350, 0x2b0 + +gUnknown_08D78600:: @ 8D78600 + .incbin "baserom.gba", 0xd78600, 0x678 + +gUnknown_08D78C78:: @ 8D78C78 + .incbin "baserom.gba", 0xd78C78, 0x40 + +gUnknown_08D78CB8:: @ 8D78CB8 + .incbin "baserom.gba", 0xd78CB8, 0x2b0 + +gUnknown_08D78F68:: @ 8D78F68 + .incbin "baserom.gba", 0xd78f68, 0x5f8 + +gUnknown_08D79560:: @ 8D79560 + .incbin "baserom.gba", 0xd79560, 0x48 + +gUnknown_08D795A8:: @ 8D795A8 + .incbin "baserom.gba", 0xd795A8, 0x2b0 + +gUnknown_08D79858:: @ 8D79858 + .incbin "baserom.gba", 0xd79858, 0x5b8 + +gUnknown_08D79E10:: @ 8D79E10 + .incbin "baserom.gba", 0xd79E10, 0x48 + +gUnknown_08D79E58:: @ 8D79E58 + .incbin "baserom.gba", 0xd79e58, 0x2b0 gUnknown_08D7A108:: @ 8D7A108 - .incbin "baserom.gba", 0xd7a108, 0x618 + .incbin "baserom.gba", 0xd7a108, 0x5d4 + +gUnknown_08D7A6DC:: @ 8D7A6DC + .incbin "baserom.gba", 0xd7a6DC, 0x44 gUnknown_08D7A720:: @ 8D7A720 - .incbin "baserom.gba", 0xd7a720, 0x13f4 + .incbin "baserom.gba", 0xd7a720, 0x2b0 + +gUnknown_08D7A9D0:: @ 8D7A9D0 + .incbin "baserom.gba", 0xd7a9D0, 0x5a8 + +gUnknown_08D7AF78:: @ 8D7AF78 + .incbin "baserom.gba", 0xd7af78, 0x40 + +gUnknown_08D7AFB8:: @ 8D7AFB8 + .incbin "baserom.gba", 0xd7aFB8, 0x2b0 + +gUnknown_08D7B268:: @ 8D7B268 + .incbin "baserom.gba", 0xd7b268, 0x5c0 + +gUnknown_08D7B828:: @ 8D7B828 + .incbin "baserom.gba", 0xd7b828, 0x3c + +gUnknown_08D7B864:: @ 8D7B864 + .incbin "baserom.gba", 0xd7b864, 0x2b0 gUnknown_08D7BB14:: @ 8D7BB14 - .incbin "baserom.gba", 0xd7bb14, 0x640 + .incbin "baserom.gba", 0xd7bb14, 0x5f8 + +gUnknown_08D7C10C:: @ 8D7C10C + .incbin "baserom.gba", 0xd7c10c, 0x48 gUnknown_08D7C154:: @ 8D7C154 - .incbin "baserom.gba", 0xd7c154, 0x2ec + .incbin "baserom.gba", 0xd7c154, 0x2b0 + +gUnknown_08D7C404:: @ 8D7C404 + .incbin "baserom.gba", 0xd7c404, 0x3c gUnknown_08D7C440:: @ 8D7C440 .incbin "baserom.gba", 0xd7c440, 0x5ac @@ -263,7 +326,10 @@ gUnknown_08D7D590:: @ 8D7D590 .incbin "baserom.gba", 0xd7d590, 0x674 gUnknown_08D7DC04:: @ 8D7DC04 - .incbin "baserom.gba", 0xd7dc04, 0x2f0 + .incbin "baserom.gba", 0xd7dc04, 0x2b0 + +gUnknown_08D7DEB4:: @ 8D7DEB4 + .incbin "baserom.gba", 0xd7deb4, 0x40 gUnknown_08D7DEF4:: @ 8D7DEF4 .incbin "baserom.gba", 0xd7def4, 0x3c @@ -299,13 +365,49 @@ gUnknown_08D7E1F8:: @ 8D7E1F8 .incbin "baserom.gba", 0xd7e1f8, 0x3c gUnknown_08D7E234:: @ 8D7E234 - .incbin "baserom.gba", 0xd7e234, 0x17c4 + .incbin "baserom.gba", 0xd7e234, 0x4c + +gUnknown_08D7E280:: @ 8D7E280 + .incbin "baserom.gba", 0xd7e280, 0x588 + +gUnknown_08D7E808:: @ 8D7E808 + .incbin "baserom.gba", 0xd7e808, 0x1bc + +gUnknown_08D7E9C4:: @ 8D7E9C4 + .incbin "baserom.gba", 0xd7e9C4, 0x710 + +gUnknown_08D7F0D4:: @ 8D7F0D4 + .incbin "baserom.gba", 0xd7F0D4, 0x238 + +gUnknown_08D7F30C:: @ 8D7F30C + .incbin "baserom.gba", 0xd7F30c, 0x544 + +gUnknown_08D7F850:: @ 8D7F850 + .incbin "baserom.gba", 0xd7F850, 0x1a8 gUnknown_08D7F9F8:: @ 8D7F9F8 .incbin "baserom.gba", 0xd7f9f8, 0x4cc gUnknown_08D7FEC4:: @ 8D7FEC4 - .incbin "baserom.gba", 0xd7fec4, 0x174c + .incbin "baserom.gba", 0xd7fec4, 0x190 + +gUnknown_08D80054:: @ 8D80054 + .incbin "baserom.gba", 0xd80054, 0x60c + +gUnknown_08D80660:: @ 8D80660 + .incbin "baserom.gba", 0xd80660, 0x1a4 + +gUnknown_08D80804:: @ 8D80804 + .incbin "baserom.gba", 0xd80804, 0x54c + +gUnknown_08D80D50:: @ 8D80D50 + .incbin "baserom.gba", 0xd80d50, 0x14C + +gUnknown_08D80E9C:: @ 8D80E9C + .incbin "baserom.gba", 0xd80e9c, 0x5e0 + +gUnknown_08D8147C:: @ 8D8147C + .incbin "baserom.gba", 0xd8147C, 0x194 gUnknown_08D81610:: @ 8D81610 .incbin "baserom.gba", 0xd81610, 0x81c diff --git a/data/graphics/trainers/back_pic_coords.inc b/data/graphics/trainers/back_pic_coords.inc new file mode 100644 index 0000000000..57a45c71e8 --- /dev/null +++ b/data/graphics/trainers/back_pic_coords.inc @@ -0,0 +1,10 @@ + .align 2 +gTrainerBackPicCoords:: @ 8305D2C + .byte 0x08, 0x04, 0x00, 0x00 + .byte 0x08, 0x04, 0x00, 0x00 + .byte 0x08, 0x05, 0x00, 0x00 + .byte 0x08, 0x05, 0x00, 0x00 + .byte 0x08, 0x04, 0x00, 0x00 + .byte 0x08, 0x04, 0x00, 0x00 + .byte 0x08, 0x04, 0x00, 0x00 + .byte 0x08, 0x04, 0x00, 0x00 diff --git a/data/graphics/trainers/front_pic_coords.inc b/data/graphics/trainers/front_pic_coords.inc new file mode 100644 index 0000000000..8d20f0a9ee --- /dev/null +++ b/data/graphics/trainers/front_pic_coords.inc @@ -0,0 +1,95 @@ + .align 2 +gTrainerFrontPicCoords:: @ 83054E0 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x02, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 + .byte 0x08, 0x01, 0x00, 0x00 diff --git a/data/main_menu.s b/data/main_menu.s new file mode 100644 index 0000000000..fba0e7ddb0 --- /dev/null +++ b/data/main_menu.s @@ -0,0 +1,141 @@ +@ the second big chunk of data + + .include "asm/macros.inc" + .include "constants/constants.inc" + + .section .rodata + + .align 2 +gUnknown_082FECFC:: @ 82FECFC + .incbin "graphics/birch_speech/bg0.gbapal" + .incbin "graphics/birch_speech/bg1.gbapal" + + .align 2 +gBirchIntroShadowGfx:: @ 82FED3C + .incbin "graphics/birch_speech/shadow.4bpp.lz" + + .align 2 +gUnknown_082FEEF0:: @ 82FEEF0 + .incbin "graphics/birch_speech/map.bin.lz" + + .align 2 +gUnknown_082FF018:: @ 82FF018 + .incbin "graphics/birch_speech/bg2.gbapal" + + .align 2 +gUnknown_082FF028:: @ 82FF028 + .space 16 + + .align 2 +gUnknown_082FF038:: @ 82FF038 + window_template 0x00, 0x02, 0x01, 0x1a, 0x02, 0x0f, 0x0001 + window_template 0x00, 0x02, 0x05, 0x1a, 0x02, 0x0f, 0x0035 + + .align 2 +gUnknown_082FF048:: @ 82FF048 + window_template 0x00, 0x02, 0x01, 0x1a, 0x06, 0x0f, 0x0001 + window_template 0x00, 0x02, 0x09, 0x1a, 0x02, 0x0f, 0x009d + window_template 0x00, 0x02, 0x0d, 0x1a, 0x02, 0x0f, 0x00d1 + window_template 0x00, 0x02, 0x11, 0x1a, 0x02, 0x0f, 0x0105 + window_template 0x00, 0x02, 0x15, 0x1a, 0x02, 0x0f, 0x0139 + + .align 2 +gUnknown_082FF070:: @ 82FF070 + window_template 0x00, 0x02, 0x0f, 0x1a, 0x04, 0x0f, 0x016d + window_template_terminator + + .align 2 +gUnknown_082FF080:: @ 82FF080 + window_template 0x00, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x0001 + + .align 2 +gUnknown_082FF088:: @ 82FF088 + window_template 0x00, 0x03, 0x05, 0x06, 0x04, 0x0f, 0x006d + window_template 0x00, 0x03, 0x02, 0x09, 0x0a, 0x0f, 0x0085 + window_template_terminator + + .align 2 +gMainMenuBgPal:: @ 82FF0A0 + .incbin "graphics/misc/main_menu_bg.gbapal" + + .align 2 +gMainMenuTextPal:: @ 82FF0C0 + .incbin "graphics/misc/main_menu_text.gbapal" + + .align 2 +gUnknown_082FF0E0:: @ 82FF0E0 + .byte 0x0a, 0x0b, 0x0c + +gUnknown_082FF0E3:: @ 82FF0E3 + .byte 0x0a, 0x01, 0x0c + + .align 2 +gUnknown_082FF0E8:: @ 82FF0E8 + .4byte 0x000001e8, 0x00003071 + + .align 2 +gUnknown_082FF0F0:: @ 82FF0F0 + .4byte 0x000001ec + + .align 2 +gUnknown_082FF0F4:: @ 82FF0F4 + .byte 0x02, 0x78, 0x08, 0x03, 0x78, 0x98, 0x03, 0x00, 0x04, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00 + + .align 2 +gUnknown_082FF104:: @ 82FF104 + .2byte 0xfffe, 0xfffe, 0x3000, 0x0000, 0x7fff, 0x0000, 0x0000, 0x0000 + + .align 2 +gUnknown_082FF114:: @ 82FF114 + .4byte gUnknown_082FF104 + + .align 2 +gUnknown_082FF118:: @ 82FF118 + .4byte gText_BirchBoy, 0x00000000 + .4byte gText_BirchGirl, 0x00000000 + + .align 2 +gMalePresetNames:: @ 82FF128 + .4byte gText_DefaultNameStu + .4byte gText_DefaultNameMilton + .4byte gText_DefaultNameTom + .4byte gText_DefaultNameKenny + .4byte gText_DefaultNameReid + .4byte gText_DefaultNameJude + .4byte gText_DefaultNameJaxson + .4byte gText_DefaultNameEaston + .4byte gText_DefaultNameWalker + .4byte gText_DefaultNameTeru + .4byte gText_DefaultNameJohnny + .4byte gText_DefaultNameBrett + .4byte gText_DefaultNameSeth + .4byte gText_DefaultNameTerry + .4byte gText_DefaultNameCasey + .4byte gText_DefaultNameDarren + .4byte gText_DefaultNameLandon + .4byte gText_DefaultNameCollin + .4byte gText_DefaultNameStanley + .4byte gText_DefaultNameQuincy + + .align 2 +gFemalePresetNames:: @ 82FF178 + .4byte gText_DefaultNameKimmy + .4byte gText_DefaultNameTiara + .4byte gText_DefaultNameBella + .4byte gText_DefaultNameJayla + .4byte gText_DefaultNameAllie + .4byte gText_DefaultNameLianna + .4byte gText_DefaultNameSara + .4byte gText_DefaultNameMonica + .4byte gText_DefaultNameCamila + .4byte gText_DefaultNameAubree + .4byte gText_DefaultNameRuthie + .4byte gText_DefaultNameHazel + .4byte gText_DefaultNameNadine + .4byte gText_DefaultNameTanja + .4byte gText_DefaultNameYasmin + .4byte gText_DefaultNameNicola + .4byte gText_DefaultNameLillie + .4byte gText_DefaultNameTerra + .4byte gText_DefaultNameLucy + .4byte gText_DefaultNameHalie diff --git a/data/reset_rtc_screen.s b/data/reset_rtc_screen.s index f08f30e90c..f680a87bc8 100644 --- a/data/reset_rtc_screen.s +++ b/data/reset_rtc_screen.s @@ -11,7 +11,7 @@ gUnknown_08510404:: @ 8510404 struct BgTemplate gUnknown_08510408:: @ 8510408 window_template 0x00, 0x01, 0x01, 0x13, 0x09, 0x0f, 0x0155 window_template 0x00, 0x02, 0x0f, 0x1b, 0x04, 0x0f, 0x00e9 - window_template 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0000 + window_template_terminator .align 2 gUnknown_08510420:: @ 8510420 diff --git a/data/strings.s b/data/strings.s index 78e936b133..90ccad90fd 100644 --- a/data/strings.s +++ b/data/strings.s @@ -165,130 +165,130 @@ gText_PickCancel:: @ 85E8574 gText_UnkCtrlF800Exit:: @ 85E8588 .string "{UNK_CTRL_F800}EXIT$" -gUnknown_085E858F:: @ 85E858F +gText_BirchBoy:: @ 85E858F .string "BOY$" -gUnknown_085E8593:: @ 85E8593 +gText_BirchGirl:: @ 85E8593 .string "GIRL$" -gUnknown_085E8598:: @ 85E8598 +gText_DefaultNameStu:: @ 85E8598 .string "STU$" -gUnknown_085E859C:: @ 85E859C +gText_DefaultNameMilton:: @ 85E859C .string "MILTON$" -gUnknown_085E85A3:: @ 85E85A3 +gText_DefaultNameTom:: @ 85E85A3 .string "TOM$" -gUnknown_085E85A7:: @ 85E85A7 +gText_DefaultNameKenny:: @ 85E85A7 .string "KENNY$" -gUnknown_085E85AD:: @ 85E85AD +gText_DefaultNameReid:: @ 85E85AD .string "REID$" -gUnknown_085E85B2:: @ 85E85B2 +gText_DefaultNameJude:: @ 85E85B2 .string "JUDE$" -gUnknown_085E85B7:: @ 85E85B7 +gText_DefaultNameJaxson:: @ 85E85B7 .string "JAXSON$" -gUnknown_085E85BE:: @ 85E85BE +gText_DefaultNameEaston:: @ 85E85BE .string "EASTON$" -gUnknown_085E85C5:: @ 85E85C5 +gText_DefaultNameWalker:: @ 85E85C5 .string "WALKER$" -gUnknown_085E85CC:: @ 85E85CC +gText_DefaultNameTeru:: @ 85E85CC .string "TERU$" -gUnknown_085E85D1:: @ 85E85D1 +gText_DefaultNameJohnny:: @ 85E85D1 .string "JOHNNY$" -gUnknown_085E85D8:: @ 85E85D8 +gText_DefaultNameBrett:: @ 85E85D8 .string "BRETT$" -gUnknown_085E85DE:: @ 85E85DE +gText_DefaultNameSeth:: @ 85E85DE .string "SETH$" -gUnknown_085E85E3:: @ 85E85E3 +gText_DefaultNameTerry:: @ 85E85E3 .string "TERRY$" -gUnknown_085E85E9:: @ 85E85E9 +gText_DefaultNameCasey:: @ 85E85E9 .string "CASEY$" -gUnknown_085E85EF:: @ 85E85EF +gText_DefaultNameDarren:: @ 85E85EF .string "DARREN$" -gUnknown_085E85F6:: @ 85E85F6 +gText_DefaultNameLandon:: @ 85E85F6 .string "LANDON$" -gUnknown_085E85FD:: @ 85E85FD +gText_DefaultNameCollin:: @ 85E85FD .string "COLLIN$" -gUnknown_085E8604:: @ 85E8604 +gText_DefaultNameStanley:: @ 85E8604 .string "STANLEY$" -gUnknown_085E860C:: @ 85E860C +gText_DefaultNameQuincy:: @ 85E860C .string "QUINCY$" -gUnknown_085E8613:: @ 85E8613 +gText_DefaultNameKimmy:: @ 85E8613 .string "KIMMY$" -gUnknown_085E8619:: @ 85E8619 +gText_DefaultNameTiara:: @ 85E8619 .string "TIARA$" -gUnknown_085E861F:: @ 85E861F +gText_DefaultNameBella:: @ 85E861F .string "BELLA$" -gUnknown_085E8625:: @ 85E8625 +gText_DefaultNameJayla:: @ 85E8625 .string "JAYLA$" -gUnknown_085E862B:: @ 85E862B +gText_DefaultNameAllie:: @ 85E862B .string "ALLIE$" -gUnknown_085E8631:: @ 85E8631 +gText_DefaultNameLianna:: @ 85E8631 .string "LIANNA$" -gUnknown_085E8638:: @ 85E8638 +gText_DefaultNameSara:: @ 85E8638 .string "SARA$" -gUnknown_085E863D:: @ 85E863D +gText_DefaultNameMonica:: @ 85E863D .string "MONICA$" -gUnknown_085E8644:: @ 85E8644 +gText_DefaultNameCamila:: @ 85E8644 .string "CAMILA$" -gUnknown_085E864B:: @ 85E864B +gText_DefaultNameAubree:: @ 85E864B .string "AUBREE$" -gUnknown_085E8652:: @ 85E8652 +gText_DefaultNameRuthie:: @ 85E8652 .string "RUTHIE$" -gUnknown_085E8659:: @ 85E8659 +gText_DefaultNameHazel:: @ 85E8659 .string "HAZEL$" -gUnknown_085E865F:: @ 85E865F +gText_DefaultNameNadine:: @ 85E865F .string "NADINE$" -gUnknown_085E8666:: @ 85E8666 +gText_DefaultNameTanja:: @ 85E8666 .string "TANJA$" -gUnknown_085E866C:: @ 85E866C +gText_DefaultNameYasmin:: @ 85E866C .string "YASMIN$" -gUnknown_085E8673:: @ 85E8673 +gText_DefaultNameNicola:: @ 85E8673 .string "NICOLA$" -gUnknown_085E867A:: @ 85E867A +gText_DefaultNameLillie:: @ 85E867A .string "LILLIE$" -gUnknown_085E8681:: @ 85E8681 +gText_DefaultNameTerra:: @ 85E8681 .string "TERRA$" -gUnknown_085E8687:: @ 85E8687 +gText_DefaultNameLucy:: @ 85E8687 .string "LUCY$" -gUnknown_085E868C:: @ 85E868C +gText_DefaultNameHalie:: @ 85E868C .string "HALIE$" gText_ThisIsAPokemon:: @ 85E8692 diff --git a/data/title_screen.s b/data/title_screen.s index 525790271e..b07464ce97 100644 --- a/data/title_screen.s +++ b/data/title_screen.s @@ -1,9 +1,12 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" + .include "asm/macros.inc" + .include "constants/constants.inc" - .section .rodata - .align 2, 0 + .section .rodata + .align 2, 0 + .incbin "graphics/title_screen/unk_853EF78.gbapal" + + .align 2 gTitleScreenRayquazaGfx:: @ 853F058 .incbin "graphics/title_screen/rayquaza.4bpp.lz" diff --git a/data/trainer_money.inc b/data/trainer_money.inc new file mode 100644 index 0000000000..1e06668bde --- /dev/null +++ b/data/trainer_money.inc @@ -0,0 +1,59 @@ +@ This is a factor in how much money you get for beating a trainer. + .align 2 +gTrainerMoneyTable:: @ 831AEB8 + .byte TRAINER_CLASS_NAME_TEAM_AQUA, 5, 0, 0 + .byte TRAINER_CLASS_NAME_AQUA_ADMIN, 10, 0, 0 + .byte TRAINER_CLASS_NAME_AQUA_LEADER, 20, 0, 0 + .byte TRAINER_CLASS_NAME_AROMA_LADY, 10, 0, 0 + .byte TRAINER_CLASS_NAME_RUIN_MANIAC, 15, 0, 0 + .byte TRAINER_CLASS_NAME_INTERVIEWER, 12, 0, 0 + .byte TRAINER_CLASS_NAME_TUBER_1, 1, 0, 0 + .byte TRAINER_CLASS_NAME_TUBER_2, 1, 0, 0 + .byte TRAINER_CLASS_NAME_SIS_AND_BRO, 3, 0, 0 + .byte TRAINER_CLASS_NAME_COOLTRAINER_1, 12, 0, 0 + .byte TRAINER_CLASS_NAME_HEX_MANIAC, 6, 0, 0 + .byte TRAINER_CLASS_NAME_LADY, 50, 0, 0 + .byte TRAINER_CLASS_NAME_BEAUTY, 20, 0, 0 + .byte TRAINER_CLASS_NAME_RICH_BOY, 50, 0, 0 + .byte TRAINER_CLASS_NAME_POKEMANIAC, 15, 0, 0 + .byte TRAINER_CLASS_NAME_SWIMMER_M, 2, 0, 0 + .byte TRAINER_CLASS_NAME_BLACK_BELT, 8, 0, 0 + .byte TRAINER_CLASS_NAME_GUITARIST, 8, 0, 0 + .byte TRAINER_CLASS_NAME_KINDLER, 8, 0, 0 + .byte TRAINER_CLASS_NAME_CAMPER, 4, 0, 0 + .byte TRAINER_CLASS_NAME_OLD_COUPLE, 10, 0, 0 + .byte TRAINER_CLASS_NAME_BUG_MANIAC, 15, 0, 0 + .byte TRAINER_CLASS_NAME_PSYCHIC, 6, 0, 0 + .byte TRAINER_CLASS_NAME_GENTLEMAN, 20, 0, 0 + .byte TRAINER_CLASS_NAME_ELITE_FOUR, 25, 0, 0 + .byte TRAINER_CLASS_NAME_LEADER, 25, 0, 0 + .byte TRAINER_CLASS_NAME_SCHOOL_KID, 5, 0, 0 + .byte TRAINER_CLASS_NAME_SR_AND_JR, 4, 0, 0 + .byte TRAINER_CLASS_NAME_POKEFAN, 20, 0, 0 + .byte TRAINER_CLASS_NAME_EXPERT, 10, 0, 0 + .byte TRAINER_CLASS_NAME_YOUNGSTER, 4, 0, 0 + .byte TRAINER_CLASS_NAME_CHAMPION, 50, 0, 0 + .byte TRAINER_CLASS_NAME_FISHERMAN, 10, 0, 0 + .byte TRAINER_CLASS_NAME_TRIATHLETE, 10, 0, 0 + .byte TRAINER_CLASS_NAME_DRAGON_TAMER, 12, 0, 0 + .byte TRAINER_CLASS_NAME_BIRD_KEEPER, 8, 0, 0 + .byte TRAINER_CLASS_NAME_NINJA_BOY, 3, 0, 0 + .byte TRAINER_CLASS_NAME_BATTLE_GIRL, 6, 0, 0 + .byte TRAINER_CLASS_NAME_PARASOL_LADY, 10, 0, 0 + .byte TRAINER_CLASS_NAME_SWIMMER_F, 2, 0, 0 + .byte TRAINER_CLASS_NAME_PICNICKER, 4, 0, 0 + .byte TRAINER_CLASS_NAME_TWINS, 3, 0, 0 + .byte TRAINER_CLASS_NAME_SAILOR, 8, 0, 0 + .byte TRAINER_CLASS_NAME_COLLECTOR, 15, 0, 0 + .byte TRAINER_CLASS_NAME_PKMN_TRAINER_3, 15, 0, 0 + .byte TRAINER_CLASS_NAME_PKMN_BREEDER, 10, 0, 0 + .byte TRAINER_CLASS_NAME_PKMN_RANGER, 12, 0, 0 + .byte TRAINER_CLASS_NAME_TEAM_MAGMA, 5, 0, 0 + .byte TRAINER_CLASS_NAME_MAGMA_ADMIN, 10, 0, 0 + .byte TRAINER_CLASS_NAME_MAGMA_LEADER, 20, 0, 0 + .byte TRAINER_CLASS_NAME_LASS, 4, 0, 0 + .byte TRAINER_CLASS_NAME_BUG_CATCHER, 4, 0, 0 + .byte TRAINER_CLASS_NAME_HIKER, 10, 0, 0 + .byte TRAINER_CLASS_NAME_YOUNG_COUPLE, 8, 0, 0 + .byte TRAINER_CLASS_LEADER_1, 10, 0, 0 + .byte -1, 5, 0, 0 diff --git a/data/trainer_see.s b/data/trainer_see.s index 79c1a9f980..bff3004a78 100644 --- a/data/trainer_see.s +++ b/data/trainer_see.s @@ -52,12 +52,12 @@ gOamData_855077C:: @ 855077C .align 2 gSpriteImageTable_8550784:: @ 8550784 - obj_tiles gEmotion_ExclamationMarkGfx, 0x0080, 0x0000 - obj_tiles gEmotion_QuestionMarkGfx, 0x0080, 0x0000 + obj_frame_tiles gEmotion_ExclamationMarkGfx, 0x0080 + obj_frame_tiles gEmotion_QuestionMarkGfx, 0x0080 .align 2 gSpriteImageTable_8550794:: @ 8550794 - obj_tiles gEmotion_HeartGfx, 0x0080, 0x0000 + obj_frame_tiles gEmotion_HeartGfx, 0x0080 .align 2 gSpriteAnim_855079C:: @ 855079C diff --git a/data/type_effectiveness.inc b/data/type_effectiveness.inc new file mode 100644 index 0000000000..a246155921 --- /dev/null +++ b/data/type_effectiveness.inc @@ -0,0 +1,119 @@ +@ format: attacking type, defending type, damage multiplier +@ the multiplier is a (decimal) fixed-point number: +@ 20 is ×2.0 +@ 05 is ×0.5 +@ 00 is ×0 + +gTypeEffectiveness:: @ 831ACE8 + .byte TYPE_NORMAL, TYPE_ROCK, 5 + .byte TYPE_NORMAL, TYPE_STEEL, 5 + .byte TYPE_FIRE, TYPE_FIRE, 5 + .byte TYPE_FIRE, TYPE_WATER, 5 + .byte TYPE_FIRE, TYPE_GRASS, 20 + .byte TYPE_FIRE, TYPE_ICE, 20 + .byte TYPE_FIRE, TYPE_BUG, 20 + .byte TYPE_FIRE, TYPE_ROCK, 5 + .byte TYPE_FIRE, TYPE_DRAGON, 5 + .byte TYPE_FIRE, TYPE_STEEL, 20 + .byte TYPE_WATER, TYPE_FIRE, 20 + .byte TYPE_WATER, TYPE_WATER, 5 + .byte TYPE_WATER, TYPE_GRASS, 5 + .byte TYPE_WATER, TYPE_GROUND, 20 + .byte TYPE_WATER, TYPE_ROCK, 20 + .byte TYPE_WATER, TYPE_DRAGON, 5 + .byte TYPE_ELECTRIC, TYPE_WATER, 20 + .byte TYPE_ELECTRIC, TYPE_ELECTRIC, 5 + .byte TYPE_ELECTRIC, TYPE_GRASS, 5 + .byte TYPE_ELECTRIC, TYPE_GROUND, 0 + .byte TYPE_ELECTRIC, TYPE_FLYING, 20 + .byte TYPE_ELECTRIC, TYPE_DRAGON, 5 + .byte TYPE_GRASS, TYPE_FIRE, 5 + .byte TYPE_GRASS, TYPE_WATER, 20 + .byte TYPE_GRASS, TYPE_GRASS, 5 + .byte TYPE_GRASS, TYPE_POISON, 5 + .byte TYPE_GRASS, TYPE_GROUND, 20 + .byte TYPE_GRASS, TYPE_FLYING, 5 + .byte TYPE_GRASS, TYPE_BUG, 5 + .byte TYPE_GRASS, TYPE_ROCK, 20 + .byte TYPE_GRASS, TYPE_DRAGON, 5 + .byte TYPE_GRASS, TYPE_STEEL, 5 + .byte TYPE_ICE, TYPE_WATER, 5 + .byte TYPE_ICE, TYPE_GRASS, 20 + .byte TYPE_ICE, TYPE_ICE, 5 + .byte TYPE_ICE, TYPE_GROUND, 20 + .byte TYPE_ICE, TYPE_FLYING, 20 + .byte TYPE_ICE, TYPE_DRAGON, 20 + .byte TYPE_ICE, TYPE_STEEL, 5 + .byte TYPE_ICE, TYPE_FIRE, 5 + .byte TYPE_FIGHTING, TYPE_NORMAL, 20 + .byte TYPE_FIGHTING, TYPE_ICE, 20 + .byte TYPE_FIGHTING, TYPE_POISON, 5 + .byte TYPE_FIGHTING, TYPE_FLYING, 5 + .byte TYPE_FIGHTING, TYPE_PSYCHIC, 5 + .byte TYPE_FIGHTING, TYPE_BUG, 5 + .byte TYPE_FIGHTING, TYPE_ROCK, 20 + .byte TYPE_FIGHTING, TYPE_DARK, 20 + .byte TYPE_FIGHTING, TYPE_STEEL, 20 + .byte TYPE_POISON, TYPE_GRASS, 20 + .byte TYPE_POISON, TYPE_POISON, 5 + .byte TYPE_POISON, TYPE_GROUND, 5 + .byte TYPE_POISON, TYPE_ROCK, 5 + .byte TYPE_POISON, TYPE_GHOST, 5 + .byte TYPE_POISON, TYPE_STEEL, 0 + .byte TYPE_GROUND, TYPE_FIRE, 20 + .byte TYPE_GROUND, TYPE_ELECTRIC, 20 + .byte TYPE_GROUND, TYPE_GRASS, 5 + .byte TYPE_GROUND, TYPE_POISON, 20 + .byte TYPE_GROUND, TYPE_FLYING, 0 + .byte TYPE_GROUND, TYPE_BUG, 5 + .byte TYPE_GROUND, TYPE_ROCK, 20 + .byte TYPE_GROUND, TYPE_STEEL, 20 + .byte TYPE_FLYING, TYPE_ELECTRIC, 5 + .byte TYPE_FLYING, TYPE_GRASS, 20 + .byte TYPE_FLYING, TYPE_FIGHTING, 20 + .byte TYPE_FLYING, TYPE_BUG, 20 + .byte TYPE_FLYING, TYPE_ROCK, 5 + .byte TYPE_FLYING, TYPE_STEEL, 5 + .byte TYPE_PSYCHIC, TYPE_FIGHTING, 20 + .byte TYPE_PSYCHIC, TYPE_POISON, 20 + .byte TYPE_PSYCHIC, TYPE_PSYCHIC, 5 + .byte TYPE_PSYCHIC, TYPE_DARK, 0 + .byte TYPE_PSYCHIC, TYPE_STEEL, 5 + .byte TYPE_BUG, TYPE_FIRE, 5 + .byte TYPE_BUG, TYPE_GRASS, 20 + .byte TYPE_BUG, TYPE_FIGHTING, 5 + .byte TYPE_BUG, TYPE_POISON, 5 + .byte TYPE_BUG, TYPE_FLYING, 5 + .byte TYPE_BUG, TYPE_PSYCHIC, 20 + .byte TYPE_BUG, TYPE_GHOST, 5 + .byte TYPE_BUG, TYPE_DARK, 20 + .byte TYPE_BUG, TYPE_STEEL, 5 + .byte TYPE_ROCK, TYPE_FIRE, 20 + .byte TYPE_ROCK, TYPE_ICE, 20 + .byte TYPE_ROCK, TYPE_FIGHTING, 5 + .byte TYPE_ROCK, TYPE_GROUND, 5 + .byte TYPE_ROCK, TYPE_FLYING, 20 + .byte TYPE_ROCK, TYPE_BUG, 20 + .byte TYPE_ROCK, TYPE_STEEL, 5 + .byte TYPE_GHOST, TYPE_NORMAL, 0 + .byte TYPE_GHOST, TYPE_PSYCHIC, 20 + .byte TYPE_GHOST, TYPE_DARK, 5 + .byte TYPE_GHOST, TYPE_STEEL, 5 + .byte TYPE_GHOST, TYPE_GHOST, 20 + .byte TYPE_DRAGON, TYPE_DRAGON, 20 + .byte TYPE_DRAGON, TYPE_STEEL, 5 + .byte TYPE_DARK, TYPE_FIGHTING, 5 + .byte TYPE_DARK, TYPE_PSYCHIC, 20 + .byte TYPE_DARK, TYPE_GHOST, 20 + .byte TYPE_DARK, TYPE_DARK, 5 + .byte TYPE_DARK, TYPE_STEEL, 5 + .byte TYPE_STEEL, TYPE_FIRE, 5 + .byte TYPE_STEEL, TYPE_WATER, 5 + .byte TYPE_STEEL, TYPE_ELECTRIC, 5 + .byte TYPE_STEEL, TYPE_ICE, 20 + .byte TYPE_STEEL, TYPE_ROCK, 20 + .byte TYPE_STEEL, TYPE_STEEL, 5 + .byte 0xFE, 0xFE, 0 + .byte TYPE_NORMAL, TYPE_GHOST, 0 + .byte TYPE_FIGHTING, TYPE_GHOST, 0 + .byte 0xFF, 0xFF, 0 diff --git a/graphics/birch_speech/bg0.pal b/graphics/birch_speech/bg0.pal new file mode 100644 index 0000000000..31b66d4b32 --- /dev/null +++ b/graphics/birch_speech/bg0.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 164 +255 255 106 +222 222 90 +189 189 74 +156 156 57 +123 123 49 +90 90 32 +57 57 16 +197 255 205 +123 255 131 +115 222 106 +106 189 90 +98 156 65 +90 123 49 +0 0 0 diff --git a/graphics/birch_speech/bg1.pal b/graphics/birch_speech/bg1.pal new file mode 100644 index 0000000000..31b66d4b32 --- /dev/null +++ b/graphics/birch_speech/bg1.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +255 255 164 +255 255 106 +222 222 90 +189 189 74 +156 156 57 +123 123 49 +90 90 32 +57 57 16 +197 255 205 +123 255 131 +115 222 106 +106 189 90 +98 156 65 +90 123 49 +0 0 0 diff --git a/graphics/birch_speech/bg2.pal b/graphics/birch_speech/bg2.pal new file mode 100644 index 0000000000..3457f9b455 --- /dev/null +++ b/graphics/birch_speech/bg2.pal @@ -0,0 +1,11 @@ +JASC-PAL +0100 +8 +255 255 164 +255 255 106 +222 222 90 +189 189 74 +156 156 57 +123 123 49 +90 90 32 +57 57 16 diff --git a/graphics/birch_speech/map.bin b/graphics/birch_speech/map.bin new file mode 100644 index 0000000000000000000000000000000000000000..ad5540b7cdd4e5ed57c1523ec35dce495bff7b99 GIT binary patch literal 1280 zcmeH^Hxj}?5CmH=* z;S&%N5fdv?s6f6vxu2nIml|3+dY%l7OiUUz=&4?vS~XTbAtfWHproRvR;5yfa%D=D fSpAuWm5rT)7bmA)I<#xksztNaxBd6ef31NxC8HW) literal 0 HcmV?d00001 diff --git a/graphics/birch_speech/shadow.png b/graphics/birch_speech/shadow.png new file mode 100644 index 0000000000000000000000000000000000000000..4487ea9ea3ca3f0a6ba2b260e6d95fbfc1c71a73 GIT binary patch literal 433 zcmeAS@N?(olHy`uVBq!ia0vp^4L~fx!VDx2sJ^%cq!I#rLR^9L|Nl$=|IfO2FKX{z zuQ_uptE&y8q7*DG1&;ndTm8Se_+D1l-l(KGj#1TyK*gl0k6P$*hJk^R$J50z#G?1< zWbe|$1_G|G3k9;+N+pjZO_1a;V~*x1aue}V6!BUp;-r}Uc8dDxPEqq&#gkI2w}0CG zsV0Tz2h;rrEHWJjY!1r{$Q+9z(|YmQ|%g%v1dQS_l7%bX7m09MFoSWtDnm{r-UW|5}LC* literal 0 HcmV?d00001 diff --git a/graphics/link/minigame_digits.pal b/graphics/link/minigame_digits.pal new file mode 100644 index 0000000000..e276408301 --- /dev/null +++ b/graphics/link/minigame_digits.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 0 +0 0 0 +205 205 205 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 +0 0 0 diff --git a/graphics/link/minigame_digits.png b/graphics/link/minigame_digits.png new file mode 100644 index 0000000000000000000000000000000000000000..1729942494a03060652b6d4d163229623194d665 GIT binary patch literal 264 zcmeAS@N?(olHy`uVBq!ia0vp^96%hw!VDy>*01&lQU(D&A+A6g2+p283t_nt~< z1S*>B>Eak7F|{j4*U?0=1i2Qz7@K)ETX#;dU11f|bb57Im1VIvztGkj-dbCy zR2ka5-+5-=N8j^)a#fej{yupt`M7!0DpQld-wz`4|Kv4>@0HIFxEcRz;qv?WckKQ( Y@E@=i6Ki9hv=8J5Pgg&ebxsLQ0LZviyZ`_I literal 0 HcmV?d00001 diff --git a/graphics/link/minigame_digits2.png b/graphics/link/minigame_digits2.png new file mode 100644 index 0000000000000000000000000000000000000000..285aa4aedc2bc26d0b1d942147cc5903d8d02c13 GIT binary patch literal 296 zcmeAS@N?(olHy`uVBq!ia0vp^96-E*g&9a5*kQB)NErn9gt!7}AUJ#WEQCRj+A-;1Nn|9aJaDh1z0o|{dd+&4&R;TyXEhUB^v#bEMfC2x~?;ES}gg~ z9aq`%iuFQ-ky>0_b70oX{o01-dYSJ%@z2zlz1d&M(8RS|zwhw<;qy=QKJ zzY|{WUCktQDCW3zeSGBAzWd2{U%!$4UHx_6YC%ioZF}XH-x1r|B=7VI Date: Wed, 4 Oct 2017 02:43:45 -0500 Subject: [PATCH 04/13] Rename files for consistency with pokeruby --- data/data2b.s | 18 +++++++++--------- data/graphics.s | 4 ++-- ...n_back_pic_table.inc => back_pic_table.inc} | 0 ...footprint_table.inc => footprint_table.inc} | 0 ...front_pic_table.inc => front_pic_table.inc} | 0 .../pokemon/{mon_graphics.inc => graphics.inc} | 0 ...te_indices.inc => icon_palette_indices.inc} | 0 ...alette_table.inc => icon_palette_table.inc} | 0 .../{mon_icon_table.inc => icon_table.inc} | 0 ...mon_palette_table.inc => palette_table.inc} | 0 ...lette_table.inc => shiny_palette_table.inc} | 0 ...pic_table.inc => still_front_pic_table.inc} | 0 ...te_table.inc => back_pic_palette_table.inc} | 0 ...r_back_pic_table.inc => back_pic_table.inc} | 0 ...e_table.inc => front_pic_palette_table.inc} | 0 ...front_pic_table.inc => front_pic_table.inc} | 0 .../{trainer_graphics.inc => graphics.inc} | 0 data/pokedex.s | 2 +- data/pokemon_icon.s | 6 +++--- 19 files changed, 15 insertions(+), 15 deletions(-) rename data/graphics/pokemon/{mon_back_pic_table.inc => back_pic_table.inc} (100%) rename data/graphics/pokemon/{mon_footprint_table.inc => footprint_table.inc} (100%) rename data/graphics/pokemon/{mon_front_pic_table.inc => front_pic_table.inc} (100%) rename data/graphics/pokemon/{mon_graphics.inc => graphics.inc} (100%) rename data/graphics/pokemon/{mon_icon_palette_indices.inc => icon_palette_indices.inc} (100%) rename data/graphics/pokemon/{mon_icon_palette_table.inc => icon_palette_table.inc} (100%) rename data/graphics/pokemon/{mon_icon_table.inc => icon_table.inc} (100%) rename data/graphics/pokemon/{mon_palette_table.inc => palette_table.inc} (100%) rename data/graphics/pokemon/{mon_shiny_palette_table.inc => shiny_palette_table.inc} (100%) rename data/graphics/pokemon/{mon_still_front_pic_table.inc => still_front_pic_table.inc} (100%) rename data/graphics/trainers/{trainer_back_pic_palette_table.inc => back_pic_palette_table.inc} (100%) rename data/graphics/trainers/{trainer_back_pic_table.inc => back_pic_table.inc} (100%) rename data/graphics/trainers/{trainer_front_pic_palette_table.inc => front_pic_palette_table.inc} (100%) rename data/graphics/trainers/{trainer_front_pic_table.inc => front_pic_table.inc} (100%) rename data/graphics/trainers/{trainer_graphics.inc => graphics.inc} (100%) diff --git a/data/data2b.s b/data/data2b.s index 77bb776cc8..02ef511bf4 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -3451,7 +3451,7 @@ gUnknown_08300D38:: @ 8300D38 .byte 0x35, 0x0d, 0x00, 0x00 @ 8301418 - .include "data/graphics/pokemon/mon_still_front_pic_table.inc" + .include "data/graphics/pokemon/still_front_pic_table.inc" .align 2 gUnknown_083021D8:: @ 83021D8 @@ -3897,13 +3897,13 @@ gUnknown_083021D8:: @ 83021D8 .byte 0x47, 0x06, 0x00, 0x00 @ 83028B8 - .include "data/graphics/pokemon/mon_back_pic_table.inc" + .include "data/graphics/pokemon/back_pic_table.inc" @ 8303678 - .include "data/graphics/pokemon/mon_palette_table.inc" + .include "data/graphics/pokemon/palette_table.inc" @ 8304438 - .include "data/graphics/pokemon/mon_shiny_palette_table.inc" + .include "data/graphics/pokemon/shiny_palette_table.inc" gUnknown_083051F8:: @ 83051F8 .4byte gUnknown_082FF538 @@ -4376,10 +4376,10 @@ gUnknown_0830536C:: @ 830536C .include "data/graphics/trainers/front_pic_coords.inc" @ 8305654 - .include "data/graphics/trainers/trainer_front_pic_table.inc" + .include "data/graphics/trainers/front_pic_table.inc" @ 830593C - .include "data/graphics/trainers/trainer_front_pic_palette_table.inc" + .include "data/graphics/trainers/front_pic_palette_table.inc" gUnknown_08305C24:: @ 8305C24 .2byte 0x0000, 0x0018, 0x0001, 0x0009, 0x0002, 0x0018, 0x0000, 0x0009 @@ -4470,10 +4470,10 @@ gUnknown_08305D0C:: @ 8305D0C .include "data/graphics/trainers/back_pic_coords.inc" @ 8305D4C - .include "data/graphics/trainers/trainer_back_pic_table.inc" + .include "data/graphics/trainers/back_pic_table.inc" @ 8305D8C - .include "data/graphics/trainers/trainer_back_pic_palette_table.inc" + .include "data/graphics/trainers/back_pic_palette_table.inc" @ 8305DCC .include "data/enemy_mon_elevation.inc" @@ -4484,7 +4484,7 @@ gUnknown_08309AAC:: @ 8309AAC .incbin "baserom.gba", 0x309aac, 0x6e0 @ 830A18C - .include "data/graphics/pokemon/mon_front_pic_table.inc" + .include "data/graphics/pokemon/front_pic_table.inc" @ 830AF4C .4byte 0x00000888, 0x00000888, 0x00000888, 0x00000888 diff --git a/data/graphics.s b/data/graphics.s index c192db3ab2..2c29d6ca50 100644 --- a/data/graphics.s +++ b/data/graphics.s @@ -207,10 +207,10 @@ gUnknown_08C2EA9C:: @ 8C2EA9C .incbin "baserom.gba", 0xc2ea9c, 0xf6c @ 8C2FA08 - .include "data/graphics/pokemon/mon_graphics.inc" + .include "data/graphics/pokemon/graphics.inc" @ 8D51DC8 - .include "data/graphics/trainers/trainer_graphics.inc" + .include "data/graphics/trainers/graphics.inc" .align 2 gMonIcon_QuestionMark:: @ 8D774D0 diff --git a/data/graphics/pokemon/mon_back_pic_table.inc b/data/graphics/pokemon/back_pic_table.inc similarity index 100% rename from data/graphics/pokemon/mon_back_pic_table.inc rename to data/graphics/pokemon/back_pic_table.inc diff --git a/data/graphics/pokemon/mon_footprint_table.inc b/data/graphics/pokemon/footprint_table.inc similarity index 100% rename from data/graphics/pokemon/mon_footprint_table.inc rename to data/graphics/pokemon/footprint_table.inc diff --git a/data/graphics/pokemon/mon_front_pic_table.inc b/data/graphics/pokemon/front_pic_table.inc similarity index 100% rename from data/graphics/pokemon/mon_front_pic_table.inc rename to data/graphics/pokemon/front_pic_table.inc diff --git a/data/graphics/pokemon/mon_graphics.inc b/data/graphics/pokemon/graphics.inc similarity index 100% rename from data/graphics/pokemon/mon_graphics.inc rename to data/graphics/pokemon/graphics.inc diff --git a/data/graphics/pokemon/mon_icon_palette_indices.inc b/data/graphics/pokemon/icon_palette_indices.inc similarity index 100% rename from data/graphics/pokemon/mon_icon_palette_indices.inc rename to data/graphics/pokemon/icon_palette_indices.inc diff --git a/data/graphics/pokemon/mon_icon_palette_table.inc b/data/graphics/pokemon/icon_palette_table.inc similarity index 100% rename from data/graphics/pokemon/mon_icon_palette_table.inc rename to data/graphics/pokemon/icon_palette_table.inc diff --git a/data/graphics/pokemon/mon_icon_table.inc b/data/graphics/pokemon/icon_table.inc similarity index 100% rename from data/graphics/pokemon/mon_icon_table.inc rename to data/graphics/pokemon/icon_table.inc diff --git a/data/graphics/pokemon/mon_palette_table.inc b/data/graphics/pokemon/palette_table.inc similarity index 100% rename from data/graphics/pokemon/mon_palette_table.inc rename to data/graphics/pokemon/palette_table.inc diff --git a/data/graphics/pokemon/mon_shiny_palette_table.inc b/data/graphics/pokemon/shiny_palette_table.inc similarity index 100% rename from data/graphics/pokemon/mon_shiny_palette_table.inc rename to data/graphics/pokemon/shiny_palette_table.inc diff --git a/data/graphics/pokemon/mon_still_front_pic_table.inc b/data/graphics/pokemon/still_front_pic_table.inc similarity index 100% rename from data/graphics/pokemon/mon_still_front_pic_table.inc rename to data/graphics/pokemon/still_front_pic_table.inc diff --git a/data/graphics/trainers/trainer_back_pic_palette_table.inc b/data/graphics/trainers/back_pic_palette_table.inc similarity index 100% rename from data/graphics/trainers/trainer_back_pic_palette_table.inc rename to data/graphics/trainers/back_pic_palette_table.inc diff --git a/data/graphics/trainers/trainer_back_pic_table.inc b/data/graphics/trainers/back_pic_table.inc similarity index 100% rename from data/graphics/trainers/trainer_back_pic_table.inc rename to data/graphics/trainers/back_pic_table.inc diff --git a/data/graphics/trainers/trainer_front_pic_palette_table.inc b/data/graphics/trainers/front_pic_palette_table.inc similarity index 100% rename from data/graphics/trainers/trainer_front_pic_palette_table.inc rename to data/graphics/trainers/front_pic_palette_table.inc diff --git a/data/graphics/trainers/trainer_front_pic_table.inc b/data/graphics/trainers/front_pic_table.inc similarity index 100% rename from data/graphics/trainers/trainer_front_pic_table.inc rename to data/graphics/trainers/front_pic_table.inc diff --git a/data/graphics/trainers/trainer_graphics.inc b/data/graphics/trainers/graphics.inc similarity index 100% rename from data/graphics/trainers/trainer_graphics.inc rename to data/graphics/trainers/graphics.inc diff --git a/data/pokedex.s b/data/pokedex.s index e81a3d78aa..3ba94dbc59 100644 --- a/data/pokedex.s +++ b/data/pokedex.s @@ -95,7 +95,7 @@ gUnknown_0856E688:: @ 856E688 .incbin "baserom.gba", 0x56e688, 0xc @ 856E694 - .include "data/graphics/pokemon/mon_footprint_table.inc" + .include "data/graphics/pokemon/footprint_table.inc" gUnknown_0856ED08:: @ 856ED08 .incbin "baserom.gba", 0x56ed08, 0x28 diff --git a/data/pokemon_icon.s b/data/pokemon_icon.s index ab3824f354..831664bb70 100644 --- a/data/pokemon_icon.s +++ b/data/pokemon_icon.s @@ -5,13 +5,13 @@ .align 2, 0 @ 857BCA8 - .include "data/graphics/pokemon/mon_icon_table.inc" + .include "data/graphics/pokemon/icon_table.inc" @ 857C388 - .include "data/graphics/pokemon/mon_icon_palette_indices.inc" + .include "data/graphics/pokemon/icon_palette_indices.inc" @ 857C540 - .include "data/graphics/pokemon/mon_icon_palette_table.inc" + .include "data/graphics/pokemon/icon_palette_table.inc" gUnknown_0857C570:: @ 857C570 .incbin "baserom.gba", 0x57c570, 0x44 From d5e7ddddb7f744a2be6410fdf7a333b4010ed478 Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Fri, 6 Oct 2017 01:57:52 -0500 Subject: [PATCH 05/13] Extract baseroms from data2c --- data/data2b.s | 34 +- data/data2c.s | 131 +++++- .../pokemon/animation_delay_table.inc | 412 ++++++++++++++++++ .../graphics/pokemon/front_anim_ids_table.inc | 412 ++++++++++++++++++ data/pokemon_icon.s | 3 +- 5 files changed, 968 insertions(+), 24 deletions(-) create mode 100644 data/graphics/pokemon/animation_delay_table.inc create mode 100644 data/graphics/pokemon/front_anim_ids_table.inc diff --git a/data/data2b.s b/data/data2b.s index 02ef511bf4..0d964fcf55 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -23,14 +23,23 @@ gUnknown_082FF3A8:: @ 82FF3A8 .byte 0x00, 0x88, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0x90, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0x98, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + + .align 2 +gUnknown_082FF3C8:: @ 82FF3C8 .byte 0x00, 0xa0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xa8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xb0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xb8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + + .align 2 +gUnknown_082FF3E8:: @ 82FF3E8 .byte 0x00, 0xc0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xc8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xd0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xd8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 + + .align 2 +gUnknown_082FF408:: @ 82FF408 .byte 0x00, 0xe0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xe8, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 .byte 0x00, 0xf0, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00 @@ -42,32 +51,53 @@ gUnknown_082FF428:: @ 82FF428 obj_frame_tiles gTrainerBackPic_Brendan + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_Brendan + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_Brendan + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF448:: @ 82FF448 obj_frame_tiles gTrainerBackPic_May, 0x0800 obj_frame_tiles gTrainerBackPic_May + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_May + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_May + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF468:: @ 82FF468 obj_frame_tiles gTrainerBackPic_Red, 0x0800 obj_frame_tiles gTrainerBackPic_Red + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_Red + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_Red + 0x1800, 0x0800 obj_frame_tiles gTrainerBackPic_Red + 0x2000, 0x0800 + + .align 2 +gUnknown_082FF490:: @ 82FF490 obj_frame_tiles gTrainerBackPic_Leaf, 0x0800 obj_frame_tiles gTrainerBackPic_Leaf + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_Leaf + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_Leaf + 0x1800, 0x0800 obj_frame_tiles gTrainerBackPic_Leaf + 0x2000, 0x0800 + + .align 2 +gUnknown_082FF4B8:: @ 82FF4B8 obj_frame_tiles gTrainerBackPic_RubySapphireBrendan, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireBrendan + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF4D8:: @ 82FF4D8 obj_frame_tiles gTrainerBackPic_RubySapphireMay, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_RubySapphireMay + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF4F8:: @ 82FF4F8 obj_frame_tiles gTrainerBackPic_Wally, 0x0800 obj_frame_tiles gTrainerBackPic_Wally + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_Wally + 0x1000, 0x0800 obj_frame_tiles gTrainerBackPic_Wally + 0x1800, 0x0800 + + .align 2 +gUnknown_082FF518:: @ 82FF518 obj_frame_tiles gTrainerBackPic_Steven, 0x0800 obj_frame_tiles gTrainerBackPic_Steven + 0x0800, 0x0800 obj_frame_tiles gTrainerBackPic_Steven + 0x1000, 0x0800 @@ -4478,7 +4508,9 @@ gUnknown_08305D0C:: @ 8305D0C @ 8305DCC .include "data/enemy_mon_elevation.inc" - .incbin "baserom.gba", 0x305f68, 0x3b44 + .incbin "baserom.gba", 0x305f68, 0x2d54 + + .incbin "baserom.gba", 0x308cbc, 0xdf0 gUnknown_08309AAC:: @ 8309AAC .incbin "baserom.gba", 0x309aac, 0x6e0 diff --git a/data/data2c.s b/data/data2c.s index 26f237c1c1..be715493c4 100644 --- a/data/data2c.s +++ b/data/data2c.s @@ -11,8 +11,9 @@ @ 831C898 .include "data/battle_moves.inc" - @ 0x31d93c unreferenced unknown data -.byte 0x34, 0x00, 0x10, 0x00, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00 +@ 0x31d93c +@ unreferenced unknown data + .byte 0x34, 0x00, 0x10, 0x00, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00 @ 831D94C .include "data/pokedex_order.inc" @@ -53,56 +54,142 @@ @ 832937C .include "data/level_up_learnset_pointers.inc" -gMonFrontAnimIdsTable:: @ 83299EC - .incbin "baserom.gba", 0x3299ec, 0x19b +@ 83299EC + .include "data/graphics/pokemon/front_anim_ids_table.inc" -gMonAnimationDelayTable:: @ 8329B87 - .incbin "baserom.gba", 0x329b87, 0x19b +@ 8329B87 + .include "data/graphics/pokemon/animation_delay_table.inc" + .align 1 gUnknown_08329D22:: @ 8329D22 - .incbin "baserom.gba", 0x329d22, 0x4 +@ Masks for getting PP Up count, also PP Max values + .byte 0x03, 0x0c, 0x30, 0xc0 + .align 1 gUnknown_08329D26:: @ 8329D26 - .incbin "baserom.gba", 0x329d26, 0x4 +@ Masks for setting PP Up count + .byte 0xfc, 0xf3, 0xcf, 0x3f + .align 1 gUnknown_08329D2A:: @ 8329D2A - .incbin "baserom.gba", 0x329d2a, 0x4 +@ Values added to PP Up count + .byte 0x01, 0x04, 0x10, 0x40 + .align 1 gStatStageRatios:: @ 8329D2E - .incbin "baserom.gba", 0x329d2e, 0x1a + .byte 0x0a, 0x28 + .byte 0x0a, 0x23 + .byte 0x0a, 0x1e + .byte 0x0a, 0x19 + .byte 0x0a, 0x14 + .byte 0x0a, 0x0f + .byte 0x0a, 0x0a + .byte 0x0f, 0x0a + .byte 0x14, 0x0a + .byte 0x19, 0x0a + .byte 0x1e, 0x0a + .byte 0x23, 0x0a + .byte 0x28, 0x0a + .align 1 gUnknown_08329D48:: @ 8329D48 - .incbin "baserom.gba", 0x329d48, 0xc + .2byte 0x0032, 0x005f, 0x005a, 0x00b4, 0x005f, 0x005a + .align 1 gUnknown_08329D54:: @ 8329D54 - .incbin "baserom.gba", 0x329d54, 0x20 + .2byte 0x0003, 0x000a, 0x001b, 0x002b, 0x001e, 0x0043, 0x0042, 0x0019 + .2byte 0x0012, 0x000c, 0x001c, 0x0047, 0x001f, 0x0036, 0x0002, 0x0014 + .align 1 gHoldEffectToType:: @ 8329D74 - .incbin "baserom.gba", 0x329d74, 0x24 + .byte 0x1f, 0x06 + .byte 0x2a, 0x08 + .byte 0x2e, 0x04 + .byte 0x2f, 0x05 + .byte 0x30, 0x0c + .byte 0x31, 0x11 + .byte 0x32, 0x01 + .byte 0x33, 0x0d + .byte 0x34, 0x0b + .byte 0x35, 0x02 + .byte 0x36, 0x03 + .byte 0x37, 0x0f + .byte 0x38, 0x07 + .byte 0x39, 0x0e + .byte 0x3a, 0x0a + .byte 0x3b, 0x10 + .byte 0x3c, 0x00 + .byte 0x00, 0x00 + .align 2 gUnknown_08329D98:: @ 8329D98 - .incbin "baserom.gba", 0x329d98, 0x60 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF3A8, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACA8, NULL, gUnknown_082FF3C8, gUnknown_082FF694, oac_poke_opponent + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF3E8, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACA8, NULL, gUnknown_082FF408, gUnknown_082FF694, oac_poke_opponent + .align 2 gUnknown_08329DF8:: @ 8329DF8 - .incbin "baserom.gba", 0x329df8, 0xc0 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF428, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF448, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF468, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF490, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF4B8, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF4D8, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF4F8, gUnknown_082FF618, sub_8039BB4 + spr_template 0xffff, 0x0000, gUnknown_0831ACB0, NULL, gUnknown_082FF518, gUnknown_082FF618, sub_8039BB4 gSecretBaseTrainerClasses:: @ 8329EB8 - .incbin "baserom.gba", 0x329eb8, 0xa + .byte TRAINER_CLASS_YOUNGSTER, TRAINER_CLASS_BUG_CATCHER, TRAINER_CLASS_RICH_BOY, TRAINER_CLASS_CAMPER, TRAINER_CLASS_COOLTRAINER_1 + .byte TRAINER_CLASS_LASS, TRAINER_CLASS_SCHOOL_KID_2, TRAINER_CLASS_LADY, TRAINER_CLASS_PICNICKER, TRAINER_CLASS_COOLTRAINER_2 gUnknown_08329EC2:: @ 8329EC2 - .incbin "baserom.gba", 0x329ec2, 0x6 + .byte 0x1a, 0x1b, 0x1c, 0x1d, 0x1f, 0x1e gUnknown_08329EC8:: @ 8329EC8 - .incbin "baserom.gba", 0x329ec8, 0x6 + .byte 1, 1, 3, 2, 4, 6 gUnknown_08329ECE:: @ 8329ECE - .incbin "baserom.gba", 0x329ece, 0x1c +@ Happiness deltas + .byte 0x05, 0x03, 0x02 + .byte 0x05, 0x03, 0x02 + .byte 0x01, 0x01, 0x00 + .byte 0x03, 0x02, 0x01 + .byte 0x01, 0x01, 0x00 + .byte 0x01, 0x01, 0x01 + .byte 0xff, 0xff, 0xff + .byte 0xfb, 0xfb, 0xf6 + .byte 0xfb, 0xfb, 0xf6 + .align 1 gHMMoves:: @ 8329EEA - .incbin "baserom.gba", 0x329eea, 0x12 + .2byte MOVE_CUT + .2byte MOVE_FLY + .2byte MOVE_SURF + .2byte MOVE_STRENGTH + .2byte MOVE_FLASH + .2byte MOVE_ROCK_SMASH + .2byte MOVE_WATERFALL + .2byte MOVE_DIVE + .2byte 0xffff + .align 1 gAlteringCaveWildMonHeldItems:: @ 8329EFC - .incbin "baserom.gba", 0x329efc, 0x2c + .2byte 0, ITEM_NONE + .2byte SPECIES_MAREEP, ITEM_GANLON_BERRY + .2byte SPECIES_PINECO, ITEM_APICOT_BERRY + .2byte SPECIES_HOUNDOUR, ITEM_BIG_MUSHROOM + .2byte SPECIES_TEDDIURSA, ITEM_PETAYA_BERRY + .2byte SPECIES_AIPOM, ITEM_BERRY_JUICE + .2byte SPECIES_SHUCKLE, ITEM_BERRY_JUICE + .2byte SPECIES_STANTLER, ITEM_PETAYA_BERRY + .2byte SPECIES_SMEARGLE, ITEM_SALAC_BERRY + .align 2 +gUnknown_08329F20:: @ 8329F20 + .byte 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00 + + .align 2 gUnknown_08329F28:: @ 8329F28 - .incbin "baserom.gba", 0x329f28, 0x18 + spr_template 0xffff, 0xffff, gUnknown_08329F20, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy + diff --git a/data/graphics/pokemon/animation_delay_table.inc b/data/graphics/pokemon/animation_delay_table.inc new file mode 100644 index 0000000000..55d602bab8 --- /dev/null +++ b/data/graphics/pokemon/animation_delay_table.inc @@ -0,0 +1,412 @@ +gMonAnimationDelayTable:: @ 8329B87 + .byte 0x00 @ SPECIES_BULBASAUR + .byte 0x00 @ SPECIES_IVYSAUR + .byte 0x00 @ SPECIES_VENUSAUR + .byte 0x00 @ SPECIES_CHARMANDER + .byte 0x00 @ SPECIES_CHARMELEON + .byte 0x00 @ SPECIES_CHARIZARD + .byte 0x00 @ SPECIES_SQUIRTLE + .byte 0x00 @ SPECIES_WARTORTLE + .byte 0x32 @ SPECIES_BLASTOISE + .byte 0x00 @ SPECIES_CATERPIE + .byte 0x00 @ SPECIES_METAPOD + .byte 0x00 @ SPECIES_BUTTERFREE + .byte 0x0a @ SPECIES_WEEDLE + .byte 0x14 @ SPECIES_KAKUNA + .byte 0x23 @ SPECIES_BEEDRILL + .byte 0x00 @ SPECIES_PIDGEY + .byte 0x19 @ SPECIES_PIDGEOTTO + .byte 0x00 @ SPECIES_PIDGEOT + .byte 0x00 @ SPECIES_RATTATA + .byte 0x00 @ SPECIES_RATICATE + .byte 0x00 @ SPECIES_SPEAROW + .byte 0x02 @ SPECIES_FEAROW + .byte 0x1e @ SPECIES_EKANS + .byte 0x00 @ SPECIES_ARBOK + .byte 0x00 @ SPECIES_PIKACHU + .byte 0x00 @ SPECIES_RAICHU + .byte 0x00 @ SPECIES_SANDSHREW + .byte 0x00 @ SPECIES_SANDSLASH + .byte 0x1c @ SPECIES_NIDORAN_F + .byte 0x00 @ SPECIES_NIDORINA + .byte 0x00 @ SPECIES_NIDOQUEEN + .byte 0x00 @ SPECIES_NIDORAN_M + .byte 0x00 @ SPECIES_NIDORINO + .byte 0x19 @ SPECIES_NIDOKING + .byte 0x00 @ SPECIES_CLEFAIRY + .byte 0x00 @ SPECIES_CLEFABLE + .byte 0x00 @ SPECIES_VULPIX + .byte 0x00 @ SPECIES_NINETALES + .byte 0x00 @ SPECIES_JIGGLYPUFF + .byte 0x00 @ SPECIES_WIGGLYTUFF + .byte 0x00 @ SPECIES_ZUBAT + .byte 0x00 @ SPECIES_GOLBAT + .byte 0x00 @ SPECIES_ODDISH + .byte 0x00 @ SPECIES_GLOOM + .byte 0x00 @ SPECIES_VILEPLUME + .byte 0x0a @ SPECIES_PARAS + .byte 0x2d @ SPECIES_PARASECT + .byte 0x14 @ SPECIES_VENONAT + .byte 0x00 @ SPECIES_VENOMOTH + .byte 0x19 @ SPECIES_DIGLETT + .byte 0x23 @ SPECIES_DUGTRIO + .byte 0x28 @ SPECIES_MEOWTH + .byte 0x14 @ SPECIES_PERSIAN + .byte 0x00 @ SPECIES_PSYDUCK + .byte 0x00 @ SPECIES_GOLDUCK + .byte 0x14 @ SPECIES_MANKEY + .byte 0x00 @ SPECIES_PRIMEAPE + .byte 0x1e @ SPECIES_GROWLITHE + .byte 0x28 @ SPECIES_ARCANINE + .byte 0x00 @ SPECIES_POLIWAG + .byte 0x05 @ SPECIES_POLIWHIRL + .byte 0x00 @ SPECIES_POLIWRATH + .byte 0x00 @ SPECIES_ABRA + .byte 0x00 @ SPECIES_KADABRA + .byte 0x00 @ SPECIES_ALAKAZAM + .byte 0x00 @ SPECIES_MACHOP + .byte 0x00 @ SPECIES_MACHOKE + .byte 0x00 @ SPECIES_MACHAMP + .byte 0x00 @ SPECIES_BELLSPROUT + .byte 0x03 @ SPECIES_WEEPINBELL + .byte 0x00 @ SPECIES_VICTREEBEL + .byte 0x00 @ SPECIES_TENTACOOL + .byte 0x00 @ SPECIES_TENTACRUEL + .byte 0x00 @ SPECIES_GEODUDE + .byte 0x00 @ SPECIES_GRAVELER + .byte 0x00 @ SPECIES_GOLEM + .byte 0x00 @ SPECIES_PONYTA + .byte 0x00 @ SPECIES_RAPIDASH + .byte 0x00 @ SPECIES_SLOWPOKE + .byte 0x00 @ SPECIES_SLOWBRO + .byte 0x00 @ SPECIES_MAGNEMITE + .byte 0x00 @ SPECIES_MAGNETON + .byte 0x00 @ SPECIES_FARFETCH_D + .byte 0x00 @ SPECIES_DODUO + .byte 0x00 @ SPECIES_DODRIO + .byte 0x00 @ SPECIES_SEEL + .byte 0x00 @ SPECIES_DEWGONG + .byte 0x00 @ SPECIES_GRIMER + .byte 0x2d @ SPECIES_MUK + .byte 0x14 @ SPECIES_SHELLDER + .byte 0x00 @ SPECIES_CLOYSTER + .byte 0x00 @ SPECIES_GASTLY + .byte 0x17 @ SPECIES_HAUNTER + .byte 0x00 @ SPECIES_GENGAR + .byte 0x00 @ SPECIES_ONIX + .byte 0x30 @ SPECIES_DROWZEE + .byte 0x28 @ SPECIES_HYPNO + .byte 0x00 @ SPECIES_KRABBY + .byte 0x00 @ SPECIES_KINGLER + .byte 0x00 @ SPECIES_VOLTORB + .byte 0x00 @ SPECIES_ELECTRODE + .byte 0x00 @ SPECIES_EXEGGCUTE + .byte 0x00 @ SPECIES_EXEGGUTOR + .byte 0x00 @ SPECIES_CUBONE + .byte 0x00 @ SPECIES_MAROWAK + .byte 0x00 @ SPECIES_HITMONLEE + .byte 0x19 @ SPECIES_HITMONCHAN + .byte 0x00 @ SPECIES_LICKITUNG + .byte 0x00 @ SPECIES_KOFFING + .byte 0x00 @ SPECIES_WEEZING + .byte 0x00 @ SPECIES_RHYHORN + .byte 0x00 @ SPECIES_RHYDON + .byte 0x00 @ SPECIES_CHANSEY + .byte 0x00 @ SPECIES_TANGELA + .byte 0x00 @ SPECIES_KANGASKHAN + .byte 0x00 @ SPECIES_HORSEA + .byte 0x00 @ SPECIES_SEADRA + .byte 0x00 @ SPECIES_GOLDEEN + .byte 0x00 @ SPECIES_SEAKING + .byte 0x00 @ SPECIES_STARYU + .byte 0x00 @ SPECIES_STARMIE + .byte 0x00 @ SPECIES_MR_MIME + .byte 0x0a @ SPECIES_SCYTHER + .byte 0x00 @ SPECIES_JYNX + .byte 0x00 @ SPECIES_ELECTABUZZ + .byte 0x00 @ SPECIES_MAGMAR + .byte 0x00 @ SPECIES_PINSIR + .byte 0x0a @ SPECIES_TAUROS + .byte 0x00 @ SPECIES_MAGIKARP + .byte 0x00 @ SPECIES_GYARADOS + .byte 0x00 @ SPECIES_LAPRAS + .byte 0x00 @ SPECIES_DITTO + .byte 0x00 @ SPECIES_EEVEE + .byte 0x00 @ SPECIES_VAPOREON + .byte 0x00 @ SPECIES_JOLTEON + .byte 0x00 @ SPECIES_FLAREON + .byte 0x00 @ SPECIES_PORYGON + .byte 0x00 @ SPECIES_OMANYTE + .byte 0x00 @ SPECIES_OMASTAR + .byte 0x00 @ SPECIES_KABUTO + .byte 0x00 @ SPECIES_KABUTOPS + .byte 0x00 @ SPECIES_AERODACTYL + .byte 0x00 @ SPECIES_SNORLAX + .byte 0x00 @ SPECIES_ARTICUNO + .byte 0x00 @ SPECIES_ZAPDOS + .byte 0x00 @ SPECIES_MOLTRES + .byte 0x00 @ SPECIES_DRATINI + .byte 0x00 @ SPECIES_DRAGONAIR + .byte 0x00 @ SPECIES_DRAGONITE + .byte 0x00 @ SPECIES_MEWTWO + .byte 0x00 @ SPECIES_MEW + .byte 0x00 @ SPECIES_CHIKORITA + .byte 0x00 @ SPECIES_BAYLEEF + .byte 0x00 @ SPECIES_MEGANIUM + .byte 0x00 @ SPECIES_CYNDAQUIL + .byte 0x00 @ SPECIES_QUILAVA + .byte 0x14 @ SPECIES_TYPHLOSION + .byte 0x00 @ SPECIES_TOTODILE + .byte 0x00 @ SPECIES_CROCONAW + .byte 0x05 @ SPECIES_FERALIGATR + .byte 0x00 @ SPECIES_SENTRET + .byte 0x00 @ SPECIES_FURRET + .byte 0x00 @ SPECIES_HOOTHOOT + .byte 0x00 @ SPECIES_NOCTOWL + .byte 0x00 @ SPECIES_LEDYBA + .byte 0x00 @ SPECIES_LEDIAN + .byte 0x00 @ SPECIES_SPINARAK + .byte 0x00 @ SPECIES_ARIADOS + .byte 0x00 @ SPECIES_CROBAT + .byte 0x00 @ SPECIES_CHINCHOU + .byte 0x00 @ SPECIES_LANTURN + .byte 0x00 @ SPECIES_PICHU + .byte 0x00 @ SPECIES_CLEFFA + .byte 0x00 @ SPECIES_IGGLYBUFF + .byte 0x00 @ SPECIES_TOGEPI + .byte 0x00 @ SPECIES_TOGETIC + .byte 0x1e @ SPECIES_NATU + .byte 0x00 @ SPECIES_XATU + .byte 0x32 @ SPECIES_MAREEP + .byte 0x00 @ SPECIES_FLAAFFY + .byte 0x0a @ SPECIES_AMPHAROS + .byte 0x00 @ SPECIES_BELLOSSOM + .byte 0x00 @ SPECIES_MARILL + .byte 0x00 @ SPECIES_AZUMARILL + .byte 0x00 @ SPECIES_SUDOWOODO + .byte 0x28 @ SPECIES_POLITOED + .byte 0x00 @ SPECIES_HOPPIP + .byte 0x00 @ SPECIES_SKIPLOOM + .byte 0x00 @ SPECIES_JUMPLUFF + .byte 0x00 @ SPECIES_AIPOM + .byte 0x00 @ SPECIES_SUNKERN + .byte 0x00 @ SPECIES_SUNFLORA + .byte 0x00 @ SPECIES_YANMA + .byte 0x00 @ SPECIES_WOOPER + .byte 0x00 @ SPECIES_QUAGSIRE + .byte 0x00 @ SPECIES_ESPEON + .byte 0x00 @ SPECIES_UMBREON + .byte 0x00 @ SPECIES_MURKROW + .byte 0x00 @ SPECIES_SLOWKING + .byte 0x00 @ SPECIES_MISDREAVUS + .byte 0x00 @ SPECIES_UNOWN + .byte 0x00 @ SPECIES_WOBBUFFET + .byte 0x00 @ SPECIES_GIRAFARIG + .byte 0x00 @ SPECIES_PINECO + .byte 0x00 @ SPECIES_FORRETRESS + .byte 0x0a @ SPECIES_DUNSPARCE + .byte 0x00 @ SPECIES_GLIGAR + .byte 0x2d @ SPECIES_STEELIX + .byte 0x00 @ SPECIES_SNUBBULL + .byte 0x00 @ SPECIES_GRANBULL + .byte 0x27 @ SPECIES_QWILFISH + .byte 0x13 @ SPECIES_SCIZOR + .byte 0x00 @ SPECIES_SHUCKLE + .byte 0x00 @ SPECIES_HERACROSS + .byte 0x00 @ SPECIES_SNEASEL + .byte 0x00 @ SPECIES_TEDDIURSA + .byte 0x00 @ SPECIES_URSARING + .byte 0x00 @ SPECIES_SLUGMA + .byte 0x00 @ SPECIES_MAGCARGO + .byte 0x00 @ SPECIES_SWINUB + .byte 0x00 @ SPECIES_PILOSWINE + .byte 0x00 @ SPECIES_CORSOLA + .byte 0x00 @ SPECIES_REMORAID + .byte 0x14 @ SPECIES_OCTILLERY + .byte 0x00 @ SPECIES_DELIBIRD + .byte 0x00 @ SPECIES_MANTINE + .byte 0x00 @ SPECIES_SKARMORY + .byte 0x00 @ SPECIES_HOUNDOUR + .byte 0x00 @ SPECIES_HOUNDOOM + .byte 0x00 @ SPECIES_KINGDRA + .byte 0x00 @ SPECIES_PHANPY + .byte 0x00 @ SPECIES_DONPHAN + .byte 0x00 @ SPECIES_PORYGON2 + .byte 0x00 @ SPECIES_STANTLER + .byte 0x00 @ SPECIES_SMEARGLE + .byte 0x00 @ SPECIES_TYROGUE + .byte 0x00 @ SPECIES_HITMONTOP + .byte 0x28 @ SPECIES_SMOOCHUM + .byte 0x00 @ SPECIES_ELEKID + .byte 0x00 @ SPECIES_MAGBY + .byte 0x00 @ SPECIES_MILTANK + .byte 0x00 @ SPECIES_BLISSEY + .byte 0x00 @ SPECIES_RAIKOU + .byte 0x00 @ SPECIES_ENTEI + .byte 0x00 @ SPECIES_SUICUNE + .byte 0x00 @ SPECIES_LARVITAR + .byte 0x00 @ SPECIES_PUPITAR + .byte 0x0a @ SPECIES_TYRANITAR + .byte 0x14 @ SPECIES_LUGIA + .byte 0x00 @ SPECIES_HO_OH + .byte 0x00 @ SPECIES_CELEBI + .byte 0x00 @ 252 + .byte 0x00 @ 253 + .byte 0x00 @ 254 + .byte 0x00 @ 255 + .byte 0x00 @ 256 + .byte 0x00 @ 257 + .byte 0x00 @ 258 + .byte 0x00 @ 259 + .byte 0x00 @ 260 + .byte 0x00 @ 261 + .byte 0x00 @ 262 + .byte 0x00 @ 263 + .byte 0x00 @ 264 + .byte 0x00 @ 265 + .byte 0x00 @ 266 + .byte 0x00 @ 267 + .byte 0x00 @ 268 + .byte 0x00 @ 269 + .byte 0x00 @ 270 + .byte 0x00 @ 271 + .byte 0x00 @ 272 + .byte 0x00 @ 273 + .byte 0x00 @ 274 + .byte 0x00 @ 275 + .byte 0x00 @ 276 + .byte 0x00 @ SPECIES_TREECKO + .byte 0x00 @ SPECIES_GROVYLE + .byte 0x00 @ SPECIES_SCEPTILE + .byte 0x00 @ SPECIES_TORCHIC + .byte 0x00 @ SPECIES_COMBUSKEN + .byte 0x00 @ SPECIES_BLAZIKEN + .byte 0x00 @ SPECIES_MUDKIP + .byte 0x00 @ SPECIES_MARSHTOMP + .byte 0x00 @ SPECIES_SWAMPERT + .byte 0x00 @ SPECIES_POOCHYENA + .byte 0x00 @ SPECIES_MIGHTYENA + .byte 0x00 @ SPECIES_ZIGZAGOON + .byte 0x00 @ SPECIES_LINOONE + .byte 0x00 @ SPECIES_WURMPLE + .byte 0x00 @ SPECIES_SILCOON + .byte 0x00 @ SPECIES_BEAUTIFLY + .byte 0x00 @ SPECIES_CASCOON + .byte 0x00 @ SPECIES_DUSTOX + .byte 0x00 @ SPECIES_LOTAD + .byte 0x00 @ SPECIES_LOMBRE + .byte 0x00 @ SPECIES_LUDICOLO + .byte 0x00 @ SPECIES_SEEDOT + .byte 0x00 @ SPECIES_NUZLEAF + .byte 0x00 @ SPECIES_SHIFTRY + .byte 0x00 @ SPECIES_NINCADA + .byte 0x00 @ SPECIES_NINJASK + .byte 0x00 @ SPECIES_SHEDINJA + .byte 0x00 @ SPECIES_TAILLOW + .byte 0x00 @ SPECIES_SWELLOW + .byte 0x00 @ SPECIES_SHROOMISH + .byte 0x00 @ SPECIES_BRELOOM + .byte 0x00 @ SPECIES_SPINDA + .byte 0x00 @ SPECIES_WINGULL + .byte 0x00 @ SPECIES_PELIPPER + .byte 0x00 @ SPECIES_SURSKIT + .byte 0x00 @ SPECIES_MASQUERAIN + .byte 0x00 @ SPECIES_WAILMER + .byte 0x0a @ SPECIES_WAILORD + .byte 0x00 @ SPECIES_SKITTY + .byte 0x00 @ SPECIES_DELCATTY + .byte 0x1e @ SPECIES_KECLEON + .byte 0x00 @ SPECIES_BALTOY + .byte 0x00 @ SPECIES_CLAYDOL + .byte 0x00 @ SPECIES_NOSEPASS + .byte 0x00 @ SPECIES_TORKOAL + .byte 0x00 @ SPECIES_SABLEYE + .byte 0x00 @ SPECIES_BARBOACH + .byte 0x00 @ SPECIES_WHISCASH + .byte 0x00 @ SPECIES_LUVDISC + .byte 0x00 @ SPECIES_CORPHISH + .byte 0x00 @ SPECIES_CRAWDAUNT + .byte 0x00 @ SPECIES_FEEBAS + .byte 0x2d @ SPECIES_MILOTIC + .byte 0x00 @ SPECIES_CARVANHA + .byte 0x00 @ SPECIES_SHARPEDO + .byte 0x00 @ SPECIES_TRAPINCH + .byte 0x00 @ SPECIES_VIBRAVA + .byte 0x00 @ SPECIES_FLYGON + .byte 0x00 @ SPECIES_MAKUHITA + .byte 0x00 @ SPECIES_HARIYAMA + .byte 0x00 @ SPECIES_ELECTRIKE + .byte 0x00 @ SPECIES_MANECTRIC + .byte 0x00 @ SPECIES_NUMEL + .byte 0x00 @ SPECIES_CAMERUPT + .byte 0x0f @ SPECIES_SPHEAL + .byte 0x00 @ SPECIES_SEALEO + .byte 0x00 @ SPECIES_WALREIN + .byte 0x00 @ SPECIES_CACNEA + .byte 0x00 @ SPECIES_CACTURNE + .byte 0x14 @ SPECIES_SNORUNT + .byte 0x00 @ SPECIES_GLALIE + .byte 0x00 @ SPECIES_LUNATONE + .byte 0x00 @ SPECIES_SOLROCK + .byte 0x00 @ SPECIES_AZURILL + .byte 0x00 @ SPECIES_SPOINK + .byte 0x0f @ SPECIES_GRUMPIG + .byte 0x00 @ SPECIES_PLUSLE + .byte 0x00 @ SPECIES_MINUN + .byte 0x00 @ SPECIES_MAWILE + .byte 0x00 @ SPECIES_MEDITITE + .byte 0x00 @ SPECIES_MEDICHAM + .byte 0x00 @ SPECIES_SWABLU + .byte 0x00 @ SPECIES_ALTARIA + .byte 0x0f @ SPECIES_WYNAUT + .byte 0x00 @ SPECIES_DUSKULL + .byte 0x1e @ SPECIES_DUSCLOPS + .byte 0x00 @ SPECIES_ROSELIA + .byte 0x00 @ SPECIES_SLAKOTH + .byte 0x00 @ SPECIES_VIGOROTH + .byte 0x00 @ SPECIES_SLAKING + .byte 0x00 @ SPECIES_GULPIN + .byte 0x00 @ SPECIES_SWALOT + .byte 0x00 @ SPECIES_TROPIUS + .byte 0x00 @ SPECIES_WHISMUR + .byte 0x00 @ SPECIES_LOUDRED + .byte 0x00 @ SPECIES_EXPLOUD + .byte 0x00 @ SPECIES_CLAMPERL + .byte 0x00 @ SPECIES_HUNTAIL + .byte 0x00 @ SPECIES_GOREBYSS + .byte 0x2d @ SPECIES_ABSOL + .byte 0x00 @ SPECIES_SHUPPET + .byte 0x00 @ SPECIES_BANETTE + .byte 0x00 @ SPECIES_SEVIPER + .byte 0x00 @ SPECIES_ZANGOOSE + .byte 0x00 @ SPECIES_RELICANTH + .byte 0x00 @ SPECIES_ARON + .byte 0x00 @ SPECIES_LAIRON + .byte 0x00 @ SPECIES_AGGRON + .byte 0x00 @ SPECIES_CASTFORM + .byte 0x00 @ SPECIES_VOLBEAT + .byte 0x00 @ SPECIES_ILLUMISE + .byte 0x00 @ SPECIES_LILEEP + .byte 0x00 @ SPECIES_CRADILY + .byte 0x00 @ SPECIES_ANORITH + .byte 0x00 @ SPECIES_ARMALDO + .byte 0x00 @ SPECIES_RALTS + .byte 0x00 @ SPECIES_KIRLIA + .byte 0x00 @ SPECIES_GARDEVOIR + .byte 0x00 @ SPECIES_BAGON + .byte 0x00 @ SPECIES_SHELGON + .byte 0x46 @ SPECIES_SALAMENCE + .byte 0x00 @ SPECIES_BELDUM + .byte 0x00 @ SPECIES_METANG + .byte 0x00 @ SPECIES_METAGROSS + .byte 0x00 @ SPECIES_REGIROCK + .byte 0x00 @ SPECIES_REGICE + .byte 0x00 @ SPECIES_REGISTEEL + .byte 0x3c @ SPECIES_KYOGRE + .byte 0x00 @ SPECIES_GROUDON + .byte 0x3c @ SPECIES_RAYQUAZA + .byte 0x00 @ SPECIES_LATIAS + .byte 0x00 @ SPECIES_LATIOS + .byte 0x00 @ SPECIES_JIRACHI + .byte 0x00 @ SPECIES_DEOXYS + .byte 0x00 @ SPECIES_CHIMECHO diff --git a/data/graphics/pokemon/front_anim_ids_table.inc b/data/graphics/pokemon/front_anim_ids_table.inc new file mode 100644 index 0000000000..6e2d7fe0e6 --- /dev/null +++ b/data/graphics/pokemon/front_anim_ids_table.inc @@ -0,0 +1,412 @@ +gMonFrontAnimIdsTable:: @ 83299EC + .byte 0x06 @ SPECIES_BULBASAUR + .byte 0x17 @ SPECIES_IVYSAUR + .byte 0x2f @ SPECIES_VENUSAUR + .byte 0x52 @ SPECIES_CHARMANDER + .byte 0x25 @ SPECIES_CHARMELEON + .byte 0x10 @ SPECIES_CHARIZARD + .byte 0x0b @ SPECIES_SQUIRTLE + .byte 0x13 @ SPECIES_WARTORTLE + .byte 0x19 @ SPECIES_BLASTOISE + .byte 0x0b @ SPECIES_CATERPIE + .byte 0x0b @ SPECIES_METAPOD + .byte 0x1d @ SPECIES_BUTTERFREE + .byte 0x46 @ SPECIES_WEEDLE + .byte 0x20 @ SPECIES_KAKUNA + .byte 0x02 @ SPECIES_BEEDRILL + .byte 0x47 @ SPECIES_PIDGEY + .byte 0x17 @ SPECIES_PIDGEOTTO + .byte 0x29 @ SPECIES_PIDGEOT + .byte 0x43 @ SPECIES_RATTATA + .byte 0x2b @ SPECIES_RATICATE + .byte 0x18 @ SPECIES_SPEAROW + .byte 0x2b @ SPECIES_FEAROW + .byte 0x16 @ SPECIES_EKANS + .byte 0x17 @ SPECIES_ARBOK + .byte 0x2c @ SPECIES_PIKACHU + .byte 0x17 @ SPECIES_RAICHU + .byte 0x2d @ SPECIES_SANDSHREW + .byte 0x17 @ SPECIES_SANDSLASH + .byte 0x00 @ SPECIES_NIDORAN_F + .byte 0x17 @ SPECIES_NIDORINA + .byte 0x0f @ SPECIES_NIDOQUEEN + .byte 0x09 @ SPECIES_NIDORAN_M + .byte 0x13 @ SPECIES_NIDORINO + .byte 0x0f @ SPECIES_NIDOKING + .byte 0x00 @ SPECIES_CLEFAIRY + .byte 0x4a @ SPECIES_CLEFABLE + .byte 0x17 @ SPECIES_VULPIX + .byte 0x10 @ SPECIES_NINETALES + .byte 0x48 @ SPECIES_JIGGLYPUFF + .byte 0x31 @ SPECIES_WIGGLYTUFF + .byte 0x00 @ SPECIES_ZUBAT + .byte 0x1d @ SPECIES_GOLBAT + .byte 0x00 @ SPECIES_ODDISH + .byte 0x45 @ SPECIES_GLOOM + .byte 0x49 @ SPECIES_VILEPLUME + .byte 0x46 @ SPECIES_PARAS + .byte 0x0f @ SPECIES_PARASECT + .byte 0x06 @ SPECIES_VENONAT + .byte 0x4b @ SPECIES_VENOMOTH + .byte 0x10 @ SPECIES_DIGLETT + .byte 0x4c @ SPECIES_DUGTRIO + .byte 0x52 @ SPECIES_MEOWTH + .byte 0x17 @ SPECIES_PERSIAN + .byte 0x06 @ SPECIES_PSYDUCK + .byte 0x4c @ SPECIES_GOLDUCK + .byte 0x32 @ SPECIES_MANKEY + .byte 0x48 @ SPECIES_PRIMEAPE + .byte 0x25 @ SPECIES_GROWLITHE + .byte 0x02 @ SPECIES_ARCANINE + .byte 0x00 @ SPECIES_POLIWAG + .byte 0x32 @ SPECIES_POLIWHIRL + .byte 0x19 @ SPECIES_POLIWRATH + .byte 0x31 @ SPECIES_ABRA + .byte 0x09 @ SPECIES_KADABRA + .byte 0x17 @ SPECIES_ALAKAZAM + .byte 0x00 @ SPECIES_MACHOP + .byte 0x10 @ SPECIES_MACHOKE + .byte 0x31 @ SPECIES_MACHAMP + .byte 0x17 @ SPECIES_BELLSPROUT + .byte 0x0d @ SPECIES_WEEPINBELL + .byte 0x32 @ SPECIES_VICTREEBEL + .byte 0x00 @ SPECIES_TENTACOOL + .byte 0x00 @ SPECIES_TENTACRUEL + .byte 0x48 @ SPECIES_GEODUDE + .byte 0x48 @ SPECIES_GRAVELER + .byte 0x2f @ SPECIES_GOLEM + .byte 0x20 @ SPECIES_PONYTA + .byte 0x11 @ SPECIES_RAPIDASH + .byte 0x45 @ SPECIES_SLOWPOKE + .byte 0x0b @ SPECIES_SLOWBRO + .byte 0x54 @ SPECIES_MAGNEMITE + .byte 0x2c @ SPECIES_MAGNETON + .byte 0x48 @ SPECIES_FARFETCH_D + .byte 0x4c @ SPECIES_DODUO + .byte 0x41 @ SPECIES_DODRIO + .byte 0x0b @ SPECIES_SEEL + .byte 0x45 @ SPECIES_DEWGONG + .byte 0x46 @ SPECIES_GRIMER + .byte 0x30 @ SPECIES_MUK + .byte 0x12 @ SPECIES_SHELLDER + .byte 0x1d @ SPECIES_CLOYSTER + .byte 0x15 @ SPECIES_GASTLY + .byte 0x35 @ SPECIES_HAUNTER + .byte 0x3a @ SPECIES_GENGAR + .byte 0x43 @ SPECIES_ONIX + .byte 0x4f @ SPECIES_DROWZEE + .byte 0x09 @ SPECIES_HYPNO + .byte 0x03 @ SPECIES_KRABBY + .byte 0x4b @ SPECIES_KINGLER + .byte 0x00 @ SPECIES_VOLTORB + .byte 0x00 @ SPECIES_ELECTRODE + .byte 0x46 @ SPECIES_EXEGGCUTE + .byte 0x32 @ SPECIES_EXEGGUTOR + .byte 0x48 @ SPECIES_CUBONE + .byte 0x05 @ SPECIES_MAROWAK + .byte 0x16 @ SPECIES_HITMONLEE + .byte 0x09 @ SPECIES_HITMONCHAN + .byte 0x45 @ SPECIES_LICKITUNG + .byte 0x13 @ SPECIES_KOFFING + .byte 0x04 @ SPECIES_WEEZING + .byte 0x10 @ SPECIES_RHYHORN + .byte 0x13 @ SPECIES_RHYDON + .byte 0x45 @ SPECIES_CHANSEY + .byte 0x48 @ SPECIES_TANGELA + .byte 0x17 @ SPECIES_KANGASKHAN + .byte 0x12 @ SPECIES_HORSEA + .byte 0x04 @ SPECIES_SEADRA + .byte 0x0d @ SPECIES_GOLDEEN + .byte 0x1c @ SPECIES_SEAKING + .byte 0x4e @ SPECIES_STARYU + .byte 0x12 @ SPECIES_STARMIE + .byte 0x46 @ SPECIES_MR_MIME + .byte 0x02 @ SPECIES_SCYTHER + .byte 0x17 @ SPECIES_JYNX + .byte 0x2c @ SPECIES_ELECTABUZZ + .byte 0x0f @ SPECIES_MAGMAR + .byte 0x09 @ SPECIES_PINSIR + .byte 0x19 @ SPECIES_TAUROS + .byte 0x05 @ SPECIES_MAGIKARP + .byte 0x48 @ SPECIES_GYARADOS + .byte 0x17 @ SPECIES_LAPRAS + .byte 0x01 @ SPECIES_DITTO + .byte 0x17 @ SPECIES_EEVEE + .byte 0x17 @ SPECIES_VAPOREON + .byte 0x00 @ SPECIES_JOLTEON + .byte 0x17 @ SPECIES_FLAREON + .byte 0x52 @ SPECIES_PORYGON + .byte 0x51 @ SPECIES_OMANYTE + .byte 0x09 @ SPECIES_OMASTAR + .byte 0x1d @ SPECIES_KABUTO + .byte 0x0f @ SPECIES_KABUTOPS + .byte 0x47 @ SPECIES_AERODACTYL + .byte 0x0b @ SPECIES_SNORLAX + .byte 0x09 @ SPECIES_ARTICUNO + .byte 0x2c @ SPECIES_ZAPDOS + .byte 0x45 @ SPECIES_MOLTRES + .byte 0x00 @ SPECIES_DRATINI + .byte 0x10 @ SPECIES_DRAGONAIR + .byte 0x47 @ SPECIES_DRAGONITE + .byte 0x09 @ SPECIES_MEWTWO + .byte 0x0d @ SPECIES_MEW + .byte 0x00 @ SPECIES_CHIKORITA + .byte 0x00 @ SPECIES_BAYLEEF + .byte 0x17 @ SPECIES_MEGANIUM + .byte 0x52 @ SPECIES_CYNDAQUIL + .byte 0x17 @ SPECIES_QUILAVA + .byte 0x10 @ SPECIES_TYPHLOSION + .byte 0x31 @ SPECIES_TOTODILE + .byte 0x0f @ SPECIES_CROCONAW + .byte 0x0f @ SPECIES_FERALIGATR + .byte 0x00 @ SPECIES_SENTRET + .byte 0x32 @ SPECIES_FURRET + .byte 0x47 @ SPECIES_HOOTHOOT + .byte 0x17 @ SPECIES_NOCTOWL + .byte 0x52 @ SPECIES_LEDYBA + .byte 0x47 @ SPECIES_LEDIAN + .byte 0x4f @ SPECIES_SPINARAK + .byte 0x0f @ SPECIES_ARIADOS + .byte 0x00 @ SPECIES_CROBAT + .byte 0x45 @ SPECIES_CHINCHOU + .byte 0x51 @ SPECIES_LANTURN + .byte 0x1e @ SPECIES_PICHU + .byte 0x52 @ SPECIES_CLEFFA + .byte 0x0c @ SPECIES_IGGLYBUFF + .byte 0x0b @ SPECIES_TOGEPI + .byte 0x00 @ SPECIES_TOGETIC + .byte 0x31 @ SPECIES_NATU + .byte 0x09 @ SPECIES_XATU + .byte 0x00 @ SPECIES_MAREEP + .byte 0x1e @ SPECIES_FLAAFFY + .byte 0x2c @ SPECIES_AMPHAROS + .byte 0x0b @ SPECIES_BELLOSSOM + .byte 0x00 @ SPECIES_MARILL + .byte 0x4a @ SPECIES_AZUMARILL + .byte 0x46 @ SPECIES_SUDOWOODO + .byte 0x32 @ SPECIES_POLITOED + .byte 0x1c @ SPECIES_HOPPIP + .byte 0x18 @ SPECIES_SKIPLOOM + .byte 0x51 @ SPECIES_JUMPLUFF + .byte 0x32 @ SPECIES_AIPOM + .byte 0x52 @ SPECIES_SUNKERN + .byte 0x00 @ SPECIES_SUNFLORA + .byte 0x2b @ SPECIES_YANMA + .byte 0x00 @ SPECIES_WOOPER + .byte 0x16 @ SPECIES_QUAGSIRE + .byte 0x09 @ SPECIES_ESPEON + .byte 0x10 @ SPECIES_UMBREON + .byte 0x00 @ SPECIES_MURKROW + .byte 0x13 @ SPECIES_SLOWKING + .byte 0x1c @ SPECIES_MISDREAVUS + .byte 0x0a @ SPECIES_UNOWN + .byte 0x30 @ SPECIES_WOBBUFFET + .byte 0x1e @ SPECIES_GIRAFARIG + .byte 0x0b @ SPECIES_PINECO + .byte 0x10 @ SPECIES_FORRETRESS + .byte 0x00 @ SPECIES_DUNSPARCE + .byte 0x13 @ SPECIES_GLIGAR + .byte 0x0f @ SPECIES_STEELIX + .byte 0x17 @ SPECIES_SNUBBULL + .byte 0x10 @ SPECIES_GRANBULL + .byte 0x3a @ SPECIES_QWILFISH + .byte 0x02 @ SPECIES_SCIZOR + .byte 0x0b @ SPECIES_SHUCKLE + .byte 0x41 @ SPECIES_HERACROSS + .byte 0x16 @ SPECIES_SNEASEL + .byte 0x17 @ SPECIES_TEDDIURSA + .byte 0x10 @ SPECIES_URSARING + .byte 0x17 @ SPECIES_SLUGMA + .byte 0x17 @ SPECIES_MAGCARGO + .byte 0x00 @ SPECIES_SWINUB + .byte 0x0f @ SPECIES_PILOSWINE + .byte 0x03 @ SPECIES_CORSOLA + .byte 0x52 @ SPECIES_REMORAID + .byte 0x17 @ SPECIES_OCTILLERY + .byte 0x52 @ SPECIES_DELIBIRD + .byte 0x0d @ SPECIES_MANTINE + .byte 0x17 @ SPECIES_SKARMORY + .byte 0x17 @ SPECIES_HOUNDOUR + .byte 0x10 @ SPECIES_HOUNDOOM + .byte 0x42 @ SPECIES_KINGDRA + .byte 0x32 @ SPECIES_PHANPY + .byte 0x19 @ SPECIES_DONPHAN + .byte 0x00 @ SPECIES_PORYGON2 + .byte 0x00 @ SPECIES_STANTLER + .byte 0x31 @ SPECIES_SMEARGLE + .byte 0x16 @ SPECIES_TYROGUE + .byte 0x02 @ SPECIES_HITMONTOP + .byte 0x09 @ SPECIES_SMOOCHUM + .byte 0x2c @ SPECIES_ELEKID + .byte 0x00 @ SPECIES_MAGBY + .byte 0x45 @ SPECIES_MILTANK + .byte 0x00 @ SPECIES_BLISSEY + .byte 0x2c @ SPECIES_RAIKOU + .byte 0x09 @ SPECIES_ENTEI + .byte 0x10 @ SPECIES_SUICUNE + .byte 0x52 @ SPECIES_LARVITAR + .byte 0x10 @ SPECIES_PUPITAR + .byte 0x0f @ SPECIES_TYRANITAR + .byte 0x3a @ SPECIES_LUGIA + .byte 0x09 @ SPECIES_HO_OH + .byte 0x18 @ SPECIES_CELEBI + .byte 0x00 @ 252 + .byte 0x00 @ 253 + .byte 0x00 @ 254 + .byte 0x00 @ 255 + .byte 0x00 @ 256 + .byte 0x00 @ 257 + .byte 0x00 @ 258 + .byte 0x00 @ 259 + .byte 0x00 @ 260 + .byte 0x00 @ 261 + .byte 0x00 @ 262 + .byte 0x00 @ 263 + .byte 0x00 @ 264 + .byte 0x00 @ 265 + .byte 0x00 @ 266 + .byte 0x00 @ 267 + .byte 0x00 @ 268 + .byte 0x00 @ 269 + .byte 0x00 @ 270 + .byte 0x00 @ 271 + .byte 0x00 @ 272 + .byte 0x00 @ 273 + .byte 0x00 @ 274 + .byte 0x00 @ 275 + .byte 0x00 @ 276 + .byte 0x00 @ SPECIES_TREECKO + .byte 0x17 @ SPECIES_GROVYLE + .byte 0x10 @ SPECIES_SCEPTILE + .byte 0x16 @ SPECIES_TORCHIC + .byte 0x06 @ SPECIES_COMBUSKEN + .byte 0x0f @ SPECIES_BLAZIKEN + .byte 0x01 @ SPECIES_MUDKIP + .byte 0x04 @ SPECIES_MARSHTOMP + .byte 0x1e @ SPECIES_SWAMPERT + .byte 0x10 @ SPECIES_POOCHYENA + .byte 0x10 @ SPECIES_MIGHTYENA + .byte 0x03 @ SPECIES_ZIGZAGOON + .byte 0x09 @ SPECIES_LINOONE + .byte 0x00 @ SPECIES_WURMPLE + .byte 0x00 @ SPECIES_SILCOON + .byte 0x04 @ SPECIES_BEAUTIFLY + .byte 0x04 @ SPECIES_CASCOON + .byte 0x06 @ SPECIES_DUSTOX + .byte 0x00 @ SPECIES_LOTAD + .byte 0x00 @ SPECIES_LOMBRE + .byte 0x49 @ SPECIES_LUDICOLO + .byte 0x05 @ SPECIES_SEEDOT + .byte 0x00 @ SPECIES_NUZLEAF + .byte 0x02 @ SPECIES_SHIFTRY + .byte 0x00 @ SPECIES_NINCADA + .byte 0x46 @ SPECIES_NINJASK + .byte 0x1c @ SPECIES_SHEDINJA + .byte 0x1e @ SPECIES_TAILLOW + .byte 0x01 @ SPECIES_SWELLOW + .byte 0x00 @ SPECIES_SHROOMISH + .byte 0x00 @ SPECIES_BRELOOM + .byte 0x31 @ SPECIES_SPINDA + .byte 0x1b @ SPECIES_WINGULL + .byte 0x1c @ SPECIES_PELIPPER + .byte 0x00 @ SPECIES_SURSKIT + .byte 0x00 @ SPECIES_MASQUERAIN + .byte 0x01 @ SPECIES_WAILMER + .byte 0x1c @ SPECIES_WAILORD + .byte 0x00 @ SPECIES_SKITTY + .byte 0x17 @ SPECIES_DELCATTY + .byte 0x35 @ SPECIES_KECLEON + .byte 0x1d @ SPECIES_BALTOY + .byte 0x51 @ SPECIES_CLAYDOL + .byte 0x49 @ SPECIES_NOSEPASS + .byte 0x17 @ SPECIES_TORKOAL + .byte 0x15 @ SPECIES_SABLEYE + .byte 0x49 @ SPECIES_BARBOACH + .byte 0x49 @ SPECIES_WHISCASH + .byte 0x1d @ SPECIES_LUVDISC + .byte 0x10 @ SPECIES_CORPHISH + .byte 0x09 @ SPECIES_CRAWDAUNT + .byte 0x49 @ SPECIES_FEEBAS + .byte 0x22 @ SPECIES_MILOTIC + .byte 0x49 @ SPECIES_CARVANHA + .byte 0x56 @ SPECIES_SHARPEDO + .byte 0x10 @ SPECIES_TRAPINCH + .byte 0x0f @ SPECIES_VIBRAVA + .byte 0x4b @ SPECIES_FLYGON + .byte 0x0b @ SPECIES_MAKUHITA + .byte 0x34 @ SPECIES_HARIYAMA + .byte 0x00 @ SPECIES_ELECTRIKE + .byte 0x00 @ SPECIES_MANECTRIC + .byte 0x04 @ SPECIES_NUMEL + .byte 0x10 @ SPECIES_CAMERUPT + .byte 0x53 @ SPECIES_SPHEAL + .byte 0x17 @ SPECIES_SEALEO + .byte 0x0f @ SPECIES_WALREIN + .byte 0x49 @ SPECIES_CACNEA + .byte 0x04 @ SPECIES_CACTURNE + .byte 0x45 @ SPECIES_SNORUNT + .byte 0x0a @ SPECIES_GLALIE + .byte 0x0e @ SPECIES_LUNATONE + .byte 0x08 @ SPECIES_SOLROCK + .byte 0x00 @ SPECIES_AZURILL + .byte 0x56 @ SPECIES_SPOINK + .byte 0x32 @ SPECIES_GRUMPIG + .byte 0x00 @ SPECIES_PLUSLE + .byte 0x01 @ SPECIES_MINUN + .byte 0x00 @ SPECIES_MAWILE + .byte 0x05 @ SPECIES_MEDITITE + .byte 0x45 @ SPECIES_MEDICHAM + .byte 0x04 @ SPECIES_SWABLU + .byte 0x16 @ SPECIES_ALTARIA + .byte 0x32 @ SPECIES_WYNAUT + .byte 0x0a @ SPECIES_DUSKULL + .byte 0x02 @ SPECIES_DUSCLOPS + .byte 0x45 @ SPECIES_ROSELIA + .byte 0x45 @ SPECIES_SLAKOTH + .byte 0x31 @ SPECIES_VIGOROTH + .byte 0x45 @ SPECIES_SLAKING + .byte 0x00 @ SPECIES_GULPIN + .byte 0x45 @ SPECIES_SWALOT + .byte 0x10 @ SPECIES_TROPIUS + .byte 0x03 @ SPECIES_WHISMUR + .byte 0x49 @ SPECIES_LOUDRED + .byte 0x19 @ SPECIES_EXPLOUD + .byte 0x12 @ SPECIES_CLAMPERL + .byte 0x09 @ SPECIES_HUNTAIL + .byte 0x1c @ SPECIES_GOREBYSS + .byte 0x11 @ SPECIES_ABSOL + .byte 0x1c @ SPECIES_SHUPPET + .byte 0x0d @ SPECIES_BANETTE + .byte 0x17 @ SPECIES_SEVIPER + .byte 0x09 @ SPECIES_ZANGOOSE + .byte 0x1a @ SPECIES_RELICANTH + .byte 0x45 @ SPECIES_ARON + .byte 0x00 @ SPECIES_LAIRON + .byte 0x19 @ SPECIES_AGGRON + .byte 0x1d @ SPECIES_CASTFORM + .byte 0x00 @ SPECIES_VOLBEAT + .byte 0x05 @ SPECIES_ILLUMISE + .byte 0x17 @ SPECIES_LILEEP + .byte 0x19 @ SPECIES_CRADILY + .byte 0x12 @ SPECIES_ANORITH + .byte 0x10 @ SPECIES_ARMALDO + .byte 0x45 @ SPECIES_RALTS + .byte 0x00 @ SPECIES_KIRLIA + .byte 0x00 @ SPECIES_GARDEVOIR + .byte 0x19 @ SPECIES_BAGON + .byte 0x04 @ SPECIES_SHELGON + .byte 0x0f @ SPECIES_SALAMENCE + .byte 0x0f @ SPECIES_BELDUM + .byte 0x04 @ SPECIES_METANG + .byte 0x10 @ SPECIES_METAGROSS + .byte 0x01 @ SPECIES_REGIROCK + .byte 0x44 @ SPECIES_REGICE + .byte 0x09 @ SPECIES_REGISTEEL + .byte 0x2d @ SPECIES_KYOGRE + .byte 0x10 @ SPECIES_GROUDON + .byte 0x0f @ SPECIES_RAYQUAZA + .byte 0x2d @ SPECIES_LATIAS + .byte 0x10 @ SPECIES_LATIOS + .byte 0x0d @ SPECIES_JIRACHI + .byte 0x1b @ SPECIES_DEOXYS + .byte 0x1d @ SPECIES_CHIMECHO diff --git a/data/pokemon_icon.s b/data/pokemon_icon.s index 831664bb70..9d6c7ac2e0 100644 --- a/data/pokemon_icon.s +++ b/data/pokemon_icon.s @@ -17,7 +17,8 @@ gUnknown_0857C570:: @ 857C570 .incbin "baserom.gba", 0x57c570, 0x44 gUnknown_0857C5B4:: @ 857C5B4 - .incbin "baserom.gba", 0x57c5b4, 0x34 + .incbin "baserom.gba", 0x57c5b4, 0x14 + .incbin "baserom.gba", 0x57c5c8, 0x20 gUnknown_0857C5E8:: @ 857C5E8 .incbin "baserom.gba", 0x57c5e8, 0x8 From db63fc1a093472ebb5b7d5a75781037026bf2fe5 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Sat, 7 Oct 2017 15:15:47 +0200 Subject: [PATCH 06/13] battle message huge take off --- asm/battle_frontier_2.s | 4 +- asm/battle_link_817C95C.s | 14 +- asm/battle_message.s | 694 ----------- data/battle_message.s | 2083 ---------------------------------- include/battle.h | 2 +- include/battle_message.h | 16 +- include/battle_string_ids.h | 385 +++++++ ld_script.txt | 3 +- src/battle_2.c | 9 +- src/battle_message.c | 1428 +++++++++++++++++++++++ src/battle_script_commands.c | 27 +- sym_ewram.txt | 21 +- 12 files changed, 1857 insertions(+), 2829 deletions(-) delete mode 100644 data/battle_message.s create mode 100644 include/battle_string_ids.h create mode 100644 src/battle_message.c diff --git a/asm/battle_frontier_2.s b/asm/battle_frontier_2.s index de56171670..9e01d22d1c 100755 --- a/asm/battle_frontier_2.s +++ b/asm/battle_frontier_2.s @@ -20577,7 +20577,7 @@ _081A5328: movs r0, 0x1 negs r0, r0 strb r0, [r1, 0x1] - ldr r0, =gText_JapaneseHonorific + ldr r0, =gText_PlayerMon1Name bl BattleStringExpandPlaceholdersToDisplayedString ldr r4, =gDisplayedStringBattle adds r0, r4, 0 @@ -20586,7 +20586,7 @@ _081A5328: ldr r0, =gText_Vs movs r1, 0x10 bl sub_814F9EC - ldr r0, =gText_RivalBuffer + ldr r0, =gText_OpponentMon1Name bl BattleStringExpandPlaceholdersToDisplayedString adds r0, r4, 0 movs r1, 0x11 diff --git a/asm/battle_link_817C95C.s b/asm/battle_link_817C95C.s index 39ae59d8b4..ec5baadd97 100644 --- a/asm/battle_link_817C95C.s +++ b/asm/battle_link_817C95C.s @@ -665,7 +665,7 @@ _0817D16C: bl _0817DFAC .pool _0817D1B8: - ldr r1, =gUnknown_02022F5C + ldr r1, =gBattleTextBuff1 + 4 ldrb r0, [r1] cmp r0, 0 beq _0817D1C4 @@ -917,7 +917,7 @@ _0817D3C0: bne _0817D3CC bl _0817E0A6 _0817D3CC: - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD1 bne _0817D3E8 @@ -946,7 +946,7 @@ _0817D3FE: ldrb r1, [r1] cmp r0, r1 bne _0817D436 - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD1 bne _0817D42C @@ -988,7 +988,7 @@ _0817D45C: bne _0817D468 bl _0817E0A6 _0817D468: - ldr r1, =gUnknown_02022F6A + ldr r1, =gBattleTextBuff2 + 2 ldrh r0, [r1] cmp r0, 0xD3 bne _0817D484 @@ -2182,7 +2182,7 @@ _0817DE10: b _0817DFAA .pool _0817DE58: - ldr r1, =gUnknown_02022F5A + ldr r1, =gBattleTextBuff1 + 2 ldrh r0, [r1] cmp r0, 0x73 bne _0817DE82 @@ -2204,7 +2204,7 @@ _0817DE58: ands r0, r2 strb r0, [r1] _0817DE82: - ldr r2, =gUnknown_02022F5A + ldr r2, =gBattleTextBuff1 + 2 ldrh r0, [r2] cmp r0, 0x71 bne _0817DEAA @@ -2225,7 +2225,7 @@ _0817DE82: ands r0, r2 strb r0, [r1] _0817DEAA: - ldr r1, =gUnknown_02022F5A + ldr r1, =gBattleTextBuff1 + 2 ldrh r0, [r1] cmp r0, 0x36 beq _0817DEB4 diff --git a/asm/battle_message.s b/asm/battle_message.s index b114a36f8e..9afa6e3995 100644 --- a/asm/battle_message.s +++ b/asm/battle_message.s @@ -5,700 +5,6 @@ .text - thumb_func_start BufferStringBattle -BufferStringBattle: @ 814E0C4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r6, r0, 16 - movs r7, 0 - ldr r4, =gStringInfo - ldr r0, =gActiveBank - mov r8, r0 - ldrb r1, [r0] - lsls r1, 9 - ldr r0, =gBattleBufferA + 4 - adds r1, r0 - str r1, [r4] - ldr r2, =gLastUsedItem - ldrh r0, [r1, 0x4] - strh r0, [r2] - ldr r2, =gLastUsedAbility - ldrb r0, [r1, 0x6] - strb r0, [r2] - ldr r5, =gBattleScripting - ldrb r0, [r1, 0x7] - strb r0, [r5, 0x17] - ldr r3, =gBattleStruct - ldr r0, [r3] - adds r0, 0x52 - ldrb r1, [r1, 0x8] - strb r1, [r0] - ldr r0, [r3] - adds r0, 0xB1 - ldr r1, [r4] - ldrb r1, [r1, 0x9] - strb r1, [r0] - ldr r1, =gStringBank - ldr r2, [r4] - ldrb r0, [r2, 0xA] - strb r0, [r1] - ldr r0, [r3] - adds r0, 0x8E - ldrb r1, [r2, 0xB] - strb r1, [r0] - movs r2, 0 - mov r12, r8 - mov r9, r5 - ldr r1, =gBattleTextBuff1 - mov r10, r1 - ldr r3, =gAbilitiesPerBank -_0814E126: - adds r0, r2, r3 - ldr r1, [r4] - adds r1, 0xC - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x3 - ble _0814E126 - movs r2, 0 - ldr r0, =gBattleTextBuff1 - mov r8, r0 - ldr r3, =gStringInfo - ldr r5, =gBattleTextBuff2 - ldr r4, =gBattleTextBuff3 -_0814E144: - mov r0, r8 - adds r1, r2, r0 - ldr r0, [r3] - adds r0, 0x10 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r5 - ldr r0, [r3] - adds r0, 0x20 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, r2, r4 - ldr r0, [r3] - adds r0, 0x30 - adds r0, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r2, 0x1 - cmp r2, 0xF - ble _0814E144 - cmp r6, 0x5 - bls _0814E176 - b _0814E6B8 -_0814E176: - lsls r0, r6, 2 - ldr r1, =_0814E1B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814E1B4: - .4byte _0814E1CC - .4byte _0814E2AC - .4byte _0814E394 - .4byte _0814E430 - .4byte _0814E4F8 - .4byte _0814E55C -_0814E1CC: - ldr r0, =gBattleTypeFlags - ldr r2, [r0] - movs r0, 0x8 - ands r0, r2 - cmp r0, 0 - beq _0814E26C - ldr r0, =0x02000002 - ands r0, r2 - cmp r0, 0 - beq _0814E248 - movs r0, 0x80 - lsls r0, 16 - ands r0, r2 - cmp r0, 0 - bne _0814E260 - movs r0, 0x40 - ands r0, r2 - cmp r0, 0 - beq _0814E214 - movs r0, 0x80 - lsls r0, 17 - ands r2, r0 - ldr r7, =gText_TwoTrainersWantToBattle - cmp r2, 0 - bne _0814E200 - b _0814E6D8 -_0814E200: - ldr r7, =gText_TwoTrainersWantToBattle3 - b _0814E6D8 - .pool -_0814E214: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _0814E22C - ldr r7, =gText_TrainerXYWantsToBattle - b _0814E6D8 - .pool -_0814E22C: - movs r0, 0x80 - lsls r0, 17 - ands r2, r0 - ldr r7, =gText_TrainerXWantsToBattle - cmp r2, 0 - bne _0814E23A - b _0814E6D8 -_0814E23A: - ldr r7, =gText_TrainerWantsToBattle - b _0814E6D8 - .pool -_0814E248: - movs r0, 0x80 - lsls r0, 15 - ands r0, r2 - cmp r0, 0 - bne _0814E260 - movs r0, 0x80 - lsls r0, 8 - ands r2, r0 - ldr r7, =gText_TrainerXYWantsToBattle - cmp r2, 0 - bne _0814E260 - b _0814E6D8 -_0814E260: - ldr r7, =gText_TwoTrainersWantToBattle2 - b _0814E6D8 - .pool -_0814E26C: - movs r0, 0x80 - lsls r0, 6 - ands r0, r2 - cmp r0, 0 - beq _0814E280 - ldr r7, =gText_WildPkmnAppeared2 - b _0814E6D8 - .pool -_0814E280: - movs r0, 0x1 - ands r0, r2 - cmp r0, 0 - beq _0814E290 - ldr r7, =gText_TwoWildPkmnAppeared - b _0814E6D8 - .pool -_0814E290: - movs r0, 0x80 - lsls r0, 2 - ands r2, r0 - ldr r7, =gText_WildPkmnAppeared - cmp r2, 0 - bne _0814E29E - b _0814E6D8 -_0814E29E: - ldr r7, =gText_WildPkmnAppearedPause - b _0814E6D8 - .pool -_0814E2AC: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E310 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E308 - movs r0, 0x80 - lsls r0, 15 - ands r0, r1 - cmp r0, 0 - beq _0814E2DC - ldr r7, =gText_TrainerXYSentOutZGoN - b _0814E6D8 - .pool -_0814E2DC: - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _0814E2F0 - ldr r7, =gText_GoTwoPkmn - b _0814E6D8 - .pool -_0814E2F0: - movs r0, 0x40 - ands r1, r0 - ldr r7, =gText_GoTwoPkmn - cmp r1, 0 - bne _0814E2FC - b _0814E6D8 -_0814E2FC: - ldr r7, =gText_EnemySentOutPkmnGoPkmn - b _0814E6D8 - .pool -_0814E308: - ldr r7, =gText_GoPkmn - b _0814E6D8 - .pool -_0814E310: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E368 - movs r0, 0x80 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - bne _0814E330 - movs r0, 0x80 - lsls r0, 16 - ands r0, r1 - cmp r0, 0 - beq _0814E33C -_0814E330: - ldr r7, =gText_TwoTrainersSentPkmn - b _0814E6D8 - .pool -_0814E33C: - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0814E34C - ldr r7, =gText_TwoTrainersSentOutPkmn - b _0814E6D8 - .pool -_0814E34C: - ldr r0, =0x02000002 - ands r1, r0 - ldr r7, =gText_TrainerXYSentOutTwoPkmn - cmp r1, 0 - bne _0814E358 - b _0814E6D8 -_0814E358: - ldr r7, =gText_TrainerXSentOutTwoPkmn - b _0814E6D8 - .pool -_0814E368: - ldr r0, =0x02000002 - ands r1, r0 - cmp r1, 0 - beq _0814E380 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, =gText_TrainerXSentOutPkmn - cmp r1, r0 - beq _0814E380 - b _0814E6D8 -_0814E380: - ldr r7, =gText_TrainerXYSentOutPkmn - b _0814E6D8 - .pool -_0814E394: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E3EC - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - ldrb r2, [r0] - cmp r2, 0 - bne _0814E3BC - ldr r7, =gText_PkmnThatsEnough - b _0814E6D8 - .pool -_0814E3BC: - cmp r2, 0x1 - beq _0814E3CC - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E3D8 -_0814E3CC: - ldr r7, =gText_PkmnComeBack - b _0814E6D8 - .pool -_0814E3D8: - ldr r7, =gText_PkmnGoodComeBack - cmp r2, 0x2 - beq _0814E3E0 - b _0814E6D8 -_0814E3E0: - ldr r7, =gText_PkmnOkComeBack - b _0814E6D8 - .pool -_0814E3EC: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x80 - lsls r0, 4 - ldr r2, =gBattleTypeFlags - cmp r1, r0 - beq _0814E406 - ldr r0, [r2] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0814E428 -_0814E406: - ldr r0, [r2] - movs r1, 0x40 - ands r0, r1 - ldr r7, =gText_TrainerXWithdrewPkmn - cmp r0, 0 - bne _0814E414 - b _0814E6D8 -_0814E414: - ldr r7, =gText_TrainerXWithdrewPkmn2 - b _0814E6D8 - .pool -_0814E428: - ldr r7, =gText_TrainerXYWithdrewPkmn - b _0814E6D8 - .pool -_0814E430: - mov r4, r9 - ldrb r0, [r4, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814E488 - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0xB1 - ldrb r2, [r0] - cmp r2, 0 - beq _0814E456 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814E468 -_0814E456: - ldr r7, =gText_GoPkmn2 - b _0814E6D8 - .pool -_0814E468: - cmp r2, 0x1 - bne _0814E474 - ldr r7, =gText_DoItPkmn - b _0814E6D8 - .pool -_0814E474: - ldr r7, =gText_YourFoesWeakGetEmPkmn - cmp r2, 0x2 - beq _0814E47C - b _0814E6D8 -_0814E47C: - ldr r7, =gText_GoForItPkmn - b _0814E6D8 - .pool -_0814E488: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814E4DC - movs r0, 0x80 - lsls r0, 16 - ands r0, r1 - cmp r0, 0 - beq _0814E4AC - ldrb r0, [r4, 0x17] - b _0814E4EA - .pool -_0814E4AC: - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - beq _0814E4BC - ldr r7, =gText_TrainerXSentOutPkmn3 - b _0814E6D8 - .pool -_0814E4BC: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - ldr r7, =gText_TrainerXSentOutPkmn2 - cmp r1, r0 - beq _0814E4CC - b _0814E6D8 -_0814E4CC: - ldr r7, =gText_TrainerXYSentOutPkmn2 - b _0814E6D8 - .pool -_0814E4DC: - movs r0, 0x80 - lsls r0, 8 - ands r1, r0 - cmp r1, 0 - beq _0814E4CC - mov r1, r9 - ldrb r0, [r1, 0x17] -_0814E4EA: - ldr r7, =gText_TrainerXYSentOutPkmn3 - cmp r0, 0x1 - beq _0814E4F2 - b _0814E6D8 -_0814E4F2: - b _0814E4CC - .pool -_0814E4F8: - mov r0, r10 - bl sub_814F8F8 - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _0814E534 - ldr r0, =gBattleTextBuff2 - ldr r1, =gBattleStruct - ldr r1, [r1] - adds r1, 0x8E - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - ldr r2, =gText_UnknownMoveTypes - adds r1, r2 - bl StringCopy - b _0814E544 - .pool -_0814E534: - ldr r0, =gBattleTextBuff2 - ldrh r2, [r2] - movs r1, 0xD - muls r1, r2 - ldr r2, =gMoveNames - adds r1, r2 - bl StringCopy -_0814E544: - ldr r0, =gBattleTextBuff2 - bl sub_814F950 - ldr r7, =gText_XUsedY2 - b _0814E6D8 - .pool -_0814E55C: - ldr r4, =gBattleTextBuff1 - ldrb r1, [r4] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0814E5C4 - movs r0, 0x7F - ands r0, r1 - strb r0, [r4] - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0814E58A - ldrb r1, [r4] - cmp r1, 0x3 - beq _0814E58A - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_0814E58A: - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - subs r0, 0x2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _0814E5A4 - ldr r7, =gText_GotAwaySafely - b _0814E6D8 - .pool -_0814E5A4: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x40 - ands r0, r1 - ldr r7, =gText_WildFled - cmp r0, 0 - bne _0814E5B4 - b _0814E6D8 -_0814E5B4: - ldr r7, =gText_TwoWildFled - b _0814E6D8 - .pool -_0814E5C4: - mov r1, r12 - ldrb r0, [r1] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0814E5E0 - ldrb r1, [r4] - cmp r1, 0x3 - beq _0814E5E0 - movs r0, 0x3 - eors r0, r1 - strb r0, [r4] -_0814E5E0: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0814E638 - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E628 - cmp r0, 0x2 - bgt _0814E608 - cmp r0, 0x1 - beq _0814E60E - b _0814E6D8 - .pool -_0814E608: - cmp r0, 0x3 - beq _0814E630 - b _0814E6D8 -_0814E60E: - movs r0, 0x80 - lsls r0, 16 - ands r1, r0 - ldr r7, =gText_PlayerBeatTwo - cmp r1, 0 - beq _0814E6D8 - ldr r7, =gText_TwoEnemiesDefeated - b _0814E6D8 - .pool -_0814E628: - ldr r7, =gText_PlayerLostToTwo - b _0814E6D8 - .pool -_0814E630: - ldr r7, =gText_PlayerBattledToDrawVsTwo - b _0814E6D8 - .pool -_0814E638: - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0xC0 - lsls r0, 4 - cmp r1, r0 - bne _0814E680 - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E670 - cmp r0, 0x2 - bgt _0814E660 - cmp r0, 0x1 - beq _0814E666 - b _0814E6D8 - .pool -_0814E660: - cmp r0, 0x3 - beq _0814E678 - b _0814E6D8 -_0814E666: - ldr r7, =gText_PlayerDefeatedXY - b _0814E6D8 - .pool -_0814E670: - ldr r7, =gText_PlayerLostAgainst2 - b _0814E6D8 - .pool -_0814E678: - ldr r7, =gText_PlayerBattledToDraw2 - b _0814E6D8 - .pool -_0814E680: - ldr r0, =gBattleTextBuff1 - ldrb r0, [r0] - cmp r0, 0x2 - beq _0814E6A8 - cmp r0, 0x2 - bgt _0814E698 - cmp r0, 0x1 - beq _0814E69E - b _0814E6D8 - .pool -_0814E698: - cmp r0, 0x3 - beq _0814E6B0 - b _0814E6D8 -_0814E69E: - ldr r7, =gText_PlayerDefeated - b _0814E6D8 - .pool -_0814E6A8: - ldr r7, =gText_PlayerLostAgainst - b _0814E6D8 - .pool -_0814E6B0: - ldr r7, =gText_PlayerBattledToDraw - b _0814E6D8 - .pool -_0814E6B8: - movs r0, 0xBE - lsls r0, 1 - cmp r6, r0 - bls _0814E6CC - ldr r1, =gDisplayedStringBattle - movs r0, 0xFF - strb r0, [r1] - b _0814E6DE - .pool -_0814E6CC: - ldr r1, =gBattleStringsTable - adds r0, r6, 0 - subs r0, 0xC - lsls r0, 2 - adds r0, r1 - ldr r7, [r0] -_0814E6D8: - adds r0, r7, 0 - bl BattleStringExpandPlaceholdersToDisplayedString -_0814E6DE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end BufferStringBattle - thumb_func_start BattleStringExpandPlaceholdersToDisplayedString BattleStringExpandPlaceholdersToDisplayedString: @ 814E6F0 push {lr} diff --git a/data/battle_message.s b/data/battle_message.s deleted file mode 100644 index 4c72557d80..0000000000 --- a/data/battle_message.s +++ /dev/null @@ -1,2083 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - -gText_Buffer36:: @ 85C9B78 - .string "{STRING 36}$" - -gText_PkmnGainedEXP:: @ 85C9B7B - .string "{STRING 0} gained{PLAYER}\n{STRING 52} EXP. Points!\p$" - -gText_EmptyString4:: @ 85C9B98 - .string "$" - -gText_ABoosted:: @ 85C9B99 - .string " a boosted$" - -gText_PkmnGrewToLv:: @ 85C9BA4 - .string "{STRING 0} grew to\nLV. {PLAYER}!{UNKNOWN_A}\p$" - -gText_PkmnLearnedMove:: @ 85C9BBA - .string "{STRING 0} learned\n{PLAYER}!{UNKNOWN_A}\p$" - -gText_TryToLearnMove1:: @ 85C9BCC - .string "{STRING 0} is trying to\nlearn {PLAYER}.\p$" - -gText_TryToLearnMove2:: @ 85C9BE7 - .string "But, {STRING 0} can’t learn\nmore than four moves.\p$" - -gText_TryToLearnMove3:: @ 85C9C12 - .string "Delete a move to make\nroom for {PLAYER}?$" - -gText_PkmnForgotMove:: @ 85C9C35 - .string "{STRING 0} forgot\n{PLAYER}.\p$" - -gText_StopLearningMove:: @ 85C9C44 - .string "{PAUSE 32}Stop learning\n{PLAYER}?$" - -gText_DidNotLearnMove:: @ 85C9C59 - .string "{STRING 0} did not learn\n{PLAYER}.\p$" - -gText_UseNextPkmn:: @ 85C9C6F - .string "Use next POKéMON?$" - -gText_AttackMissed:: @ 85C9C81 - .string "{STRING 15}’s\nattack missed!$" - -gText_PkmnProtectedItself:: @ 85C9C95 - .string "{STRING 16}\nprotected itself!$" - -gText_AvoidedDamage:: @ 85C9CAA - .string "{STRING 16} avoided\ndamage with {STRING 25}!$" - -gText_PkmnMakesGroundMiss:: @ 85C9CC5 - .string "{STRING 16} makes GROUND\nmoves miss with {STRING 25}!$" - -gText_PkmnAvoidedAttack:: @ 85C9CE9 - .string "{STRING 16} avoided\nthe attack!$" - -gText_ItDoesntAffect:: @ 85C9D00 - .string "It doesn’t affect\n{STRING 16}…$" - -gText_PkmnFainted:: @ 85C9D16 - .string "{STRING 15}\nfainted!\p$" - -gText_PkmnFainted2:: @ 85C9D23 - .string "{STRING 16}\nfainted!\p$" - -gText_PlayerGotMoney:: @ 85C9D30 - .string "{STRING 35} got ¥{STRING 0}\nfor winning!\p$" - -gText_PlayerWhiteout:: @ 85C9D49 - .string "{STRING 35} is out of\nusable POKéMON!\p$" - -gText_PlayerWhiteout2:: @ 85C9D67 - .string "{STRING 35} whited out!{PAUSE_UNTIL_PRESS}$" - -gText_PreventsEscape:: @ 85C9D78 - .string "{STRING 19} prevents\nescape with {STRING 26}!\p$" - -gText_CantEscape2:: @ 85C9D95 - .string "Can’t escape!\p$" - -gText_PkmnCantEscape2:: @ 85C9DA4 - .string "{STRING 15} can’t escape!$" - -gText_HitXTimes:: @ 85C9DB5 - .string "Hit {STRING 0} time(s)!$" - -gText_PkmnFellAsleep:: @ 85C9DC5 - .string "{STRING 17}\nfell asleep!$" - -gText_PkmnMadeSleep:: @ 85C9DD5 - .string "{STRING 19}’s {STRING 26}\nmade {STRING 17} sleep!$" - -gText_PkmnAlreadyAsleep:: @ 85C9DEC - .string "{STRING 16} is\nalready asleep!$" - -gText_PkmnAlreadyAsleep2:: @ 85C9E02 - .string "{STRING 15} is\nalready asleep!$" - -gText_PkmnWasntAffected:: @ 85C9E18 - .string "{STRING 16}\nwasn’t affected!$" - -gText_PkmnWasPoisoned:: @ 85C9E2C - .string "{STRING 17}\nwas poisoned!$" - -gText_PkmnPoisonedBy:: @ 85C9E3D - .string "{STRING 19}’s {STRING 26}\npoisoned {STRING 17}!$" - -gText_PkmnHurtByPoison:: @ 85C9E52 - .string "{STRING 15} is hurt\nby poison!$" - -gText_PkmnAlreadyPoisoned:: @ 85C9E68 - .string "{STRING 16} is already\npoisoned.$" - -gText_PkmnBadlyPoisoned:: @ 85C9E80 - .string "{STRING 17} is badly\npoisoned!$" - -gText_PkmnEnergyDrained:: @ 85C9E96 - .string "{STRING 16} had its\nenergy drained!$" - -gText_PkmnWasBurned:: @ 85C9EB1 - .string "{STRING 17} was burned!$" - -gText_PkmnBurnedBy:: @ 85C9EC0 - .string "{STRING 19}’s {STRING 26}\nburned {STRING 17}!$" - -gText_PkmnHurtByBurn:: @ 85C9ED3 - .string "{STRING 15} is hurt\nby its burn!$" - -gText_PkmnAlreadyHasBurn:: @ 85C9EEB - .string "{STRING 16} already\nhas a burn.$" - -gText_PkmnWasFrozen:: @ 85C9F02 - .string "{STRING 17} was\nfrozen solid!$" - -gText_PkmnFrozenBy:: @ 85C9F17 - .string "{STRING 19}’s {STRING 26}\nfroze {STRING 17} solid!$" - -gText_PkmnIsFrozen:: @ 85C9F2F - .string "{STRING 15} is\nfrozen solid!$" - -gText_PkmnWasDefrosted:: @ 85C9F43 - .string "{STRING 16} was\ndefrosted!$" - -gText_PkmnWasDefrosted2:: @ 85C9F55 - .string "{STRING 15} was\ndefrosted!$" - -gText_PkmnWasDefrostedBy:: @ 85C9F67 - .string "{STRING 15} was\ndefrosted by {STRING 20}!$" - -gText_PkmnWasParalyzed:: @ 85C9F7F - .string "{STRING 17} is paralyzed!\nIt may be unable to move!$" - -gText_PkmnWasParalyzedBy:: @ 85C9FAA - .string "{STRING 19}’s {STRING 26}\nparalyzed {STRING 17}!\lIt may be unable to move!$" - -gText_PkmnIsParalyzed:: @ 85C9FDA - .string "{STRING 15} is paralyzed!\nIt can’t move!$" - -gText_PkmnIsAlreadyParalyzed:: @ 85C9FFA - .string "{STRING 16} is\nalready paralyzed!$" - -gText_PkmnHealedParalysis:: @ 85CA013 - .string "{STRING 16} was\nhealed of paralysis!$" - -gText_PkmnDreamEaten:: @ 85CA02F - .string "{STRING 16}’s\ndream was eaten!$" - -gText_StatsWontIncrease:: @ 85CA045 - .string "{STRING 15}’s {STRING 0}\nwon’t go higher!$" - -gText_StatsWontDecrease:: @ 85CA05E - .string "{STRING 16}’s {STRING 0}\nwon’t go lower!$" - -gText_TeamStoppedWorking:: @ 85CA076 - .string "Your team’s {STRING 0}\nstopped working!$" - -gText_FoeStoppedWorking:: @ 85CA096 - .string "The foe’s {STRING 0}\nstopped working!$" - -gText_PkmnIsConfused:: @ 85CA0B4 - .string "{STRING 15} is\nconfused!$" - -gText_PkmnHealedConfusion:: @ 85CA0C4 - .string "{STRING 15} snapped\nout of confusion!$" - -gText_PkmnWasConfused:: @ 85CA0E1 - .string "{STRING 17} became\nconfused!$" - -gText_PkmnAlreadyConfused:: @ 85CA0F5 - .string "{STRING 16} is\nalready confused!$" - -gText_PkmnFellInLove:: @ 85CA10D - .string "{STRING 16}\nfell in love!$" - -gText_PkmnInLove:: @ 85CA11E - .string "{STRING 15} is in love\nwith {STRING 19}!$" - -gText_PkmnImmobilizedByLove:: @ 85CA135 - .string "{STRING 15} is\nimmobilized by love!$" - -gText_PkmnBlownAway:: @ 85CA150 - .string "{STRING 16} was\nblown away!$" - -gText_PkmnChangedType:: @ 85CA163 - .string "{STRING 15} transformed\ninto the {STRING 0} type!$" - -gText_PkmnFlinched:: @ 85CA184 - .string "{STRING 15} flinched!$" - -gText_PkmnRegainedHealth:: @ 85CA191 - .string "{STRING 16} regained\nhealth!$" - -gText_PkmnHPFull:: @ 85CA1A5 - .string "{STRING 16}’s\nHP is full!$" - -gText_PkmnRaisedSpDef:: @ 85CA1B6 - .string "{STRING 42}’s {STRING 20}\nraised SP. DEF!$" - -gText_PkmnRaisedSpDefALittle:: @ 85CA1CE - .string "{STRING 42}’s {STRING 20}\nraised SP. DEF a little!$" - -gText_PkmnRaisedDef:: @ 85CA1EF - .string "{STRING 42}’s {STRING 20}\nraised DEFENSE!$" - -gText_PkmnRaisedDefALittle:: @ 85CA207 - .string "{STRING 42}’s {STRING 20}\nraised DEFENSE a little!$" - -gText_PkmnCoveredByVeil:: @ 85CA228 - .string "{STRING 42}’s party is covered\nby a veil!$" - -gText_PkmnUsedSafeguard:: @ 85CA249 - .string "{STRING 16}’s party is protected\nby SAFEGUARD!$" - -gText_PkmnSafeguardExpired:: @ 85CA26F - .string "{STRING 44}’s party is no longer\nprotected by SAFEGUARD!$" - -gText_PkmnWentToSleep:: @ 85CA29F - .string "{STRING 15} went\nto sleep!$" - -gText_PkmnSleptHealthy:: @ 85CA2B1 - .string "{STRING 15} slept and\nbecame healthy!$" - -gText_PkmnWhippedWhirlwind:: @ 85CA2CE - .string "{STRING 15} whipped\nup a whirlwind!$" - -gText_PkmnTookSunlight:: @ 85CA2E9 - .string "{STRING 15} took\nin sunlight!$" - -gText_PkmnLoweredHead:: @ 85CA2FE - .string "{STRING 15} lowered\nits head!$" - -gText_PkmnIsGlowing:: @ 85CA313 - .string "{STRING 15} is glowing!$" - -gText_PkmnFlewHigh:: @ 85CA322 - .string "{STRING 15} flew\nup high!$" - -gText_PkmnDugHole:: @ 85CA333 - .string "{STRING 15} dug a hole!$" - -gText_PkmnHidUnderwater:: @ 85CA342 - .string "{STRING 15} hid\nunderwater!$" - -gText_PkmnSprangUp:: @ 85CA355 - .string "{STRING 15} sprang up!$" - -gText_PkmnSqueezedByBind:: @ 85CA363 - .string "{STRING 16} was squeezed by\n{STRING 15}’s BIND!$" - -gText_PkmnTrappedInVortex:: @ 85CA381 - .string "{STRING 16} was trapped\nin the vortex!$" - -gText_PkmnTrappedBySandTomb:: @ 85CA39F - .string "{STRING 16} was trapped\nby SAND TOMB!$" - -gText_PkmnWrappedBy:: @ 85CA3BC - .string "{STRING 16} was WRAPPED by\n{STRING 15}!$" - -gText_PkmnClamped:: @ 85CA3D2 - .string "{STRING 15} CLAMPED\n{STRING 16}!$" - -gText_PkmnHurtBy:: @ 85CA3E1 - .string "{STRING 15} is hurt\nby {STRING 0}!$" - -gText_PkmnFreedFrom:: @ 85CA3F3 - .string "{STRING 15} was freed\nfrom {STRING 0}!$" - -gText_PkmnCrashed:: @ 85CA409 - .string "{STRING 15} kept going\nand crashed!$" - -gText_PkmnShroudedInMist:: @ 85CA424 - .string "{STRING 42} became\nshrouded in MIST!$" - -gText_PkmnProtectedByMist:: @ 85CA440 - .string "{STRING 19} is protected\nby MIST!$" - -gText_PkmnGettingPumped:: @ 85CA459 - .string "{STRING 15} is getting\npumped!$" - -gText_PkmnHitWithRecoil:: @ 85CA46F - .string "{STRING 15} is hit\nwith recoil!$" - -gText_PkmnProtectedItself2:: @ 85CA486 - .string "{STRING 15} protected\nitself!$" - -gText_PkmnBuffetedBySandstorm:: @ 85CA49B - .string "{STRING 15} is buffeted\nby the sandstorm!$" - -gText_PkmnPeltedByHail:: @ 85CA4BC - .string "{STRING 15} is pelted\nby HAIL!$" - -gText_PkmnsXWoreOff:: @ 85CA4D2 - .string "{STRING 40}’s {STRING 0}\nwore off!$" - -gText_PkmnSeeded:: @ 85CA4E4 - .string "{STRING 16} was seeded!$" - -gText_PkmnEvadedAttack:: @ 85CA4F3 - .string "{STRING 16} evaded\nthe attack!$" - -gText_PkmnSappedByLeechSeed:: @ 85CA509 - .string "{STRING 15}’s health is\nsapped by LEECH SEED!$" - -gText_PkmnFastAsleep:: @ 85CA52E - .string "{STRING 15} is fast\nasleep.$" - -gText_PkmnWokeUp:: @ 85CA541 - .string "{STRING 15} woke up!$" - -gText_PkmnUproarKeptAwake:: @ 85CA54D - .string "But {STRING 19}’s UPROAR\nkept it awake!$" - -gText_PkmnWokeUpInUproar:: @ 85CA56C - .string "{STRING 15} woke up\nin the UPROAR!$" - -gText_PkmnCausedUproar:: @ 85CA586 - .string "{STRING 15} caused\nan UPROAR!$" - -gText_PkmnMakingUproar:: @ 85CA59B - .string "{STRING 15} is making\nan UPROAR!$" - -gText_PkmnCalmedDown:: @ 85CA5B3 - .string "{STRING 15} calmed down.$" - -gText_PkmnCantSleepInUproar:: @ 85CA5C3 - .string "But {STRING 16} can’t\nsleep in an UPROAR!$" - -gText_PkmnStockpiled:: @ 85CA5E4 - .string "{STRING 15} STOCKPILED\n{STRING 0}!$" - -gText_PkmnCantStockpile:: @ 85CA5F6 - .string "{STRING 15} can’t\nSTOCKPILE any more!$" - -gText_PkmnCantSleepInUproar2:: @ 85CA613 - .string "But {STRING 16} can’t\nsleep in an UPROAR!$" - -gText_UproarKeptPkmnAwake:: @ 85CA634 - .string "But the UPROAR kept\n{STRING 16} awake!$" - -gText_PkmnStayedAwakeUsing:: @ 85CA652 - .string "{STRING 16} stayed awake\nusing its {STRING 25}!$" - -gText_PkmnStoringEnergy:: @ 85CA670 - .string "{STRING 15} is storing\nenergy!$" - -gText_PkmnUnleashedEnergy:: @ 85CA686 - .string "{STRING 15} unleashed\nenergy!$" - -gText_PkmnFatigueConfusion:: @ 85CA69B - .string "{STRING 15} became\nconfused due to fatigue!$" - -gText_PkmnPickedUpItem:: @ 85CA6BE - .string "{STRING 35} picked up\n¥{STRING 0}!\p$" - -gText_PkmnUnaffected:: @ 85CA6D1 - .string "{STRING 16} is\nunaffected!$" - -gText_PkmnTransformedInto:: @ 85CA6E3 - .string "{STRING 15} transformed\ninto {STRING 0}!$" - -gText_PkmnMadeSubstitute:: @ 85CA6FB - .string "{STRING 15} made\na SUBSTITUTE!$" - -gText_PkmnHasSubstitute:: @ 85CA711 - .string "{STRING 15} already\nhas a SUBSTITUTE!$" - -gText_SubstituteDamaged:: @ 85CA72E - .string "The SUBSTITUTE took damage\nfor {STRING 16}!\p$" - -gText_PkmnSubstituteFaded:: @ 85CA752 - .string "{STRING 16}’s\nSUBSTITUTE faded!\p$" - -gText_PkmnMustRecharge:: @ 85CA76A - .string "{STRING 15} must\nrecharge!$" - -gText_PkmnRageBuilding:: @ 85CA76C - .string "{STRING 16}’s RAGE\nis building!$" - -gText_PkmnMoveWasDisabled:: @ 85CA793 - .string "{STRING 16}’s {STRING 0}\nwas disabled!$" - -gText_PkmnMoveDisabledNoMore:: @ 85CA7A9 - .string "{STRING 15} is disabled\nno more!$" - -gText_PkmnGotEncore:: @ 85CA7C1 - .string "{STRING 16} got\nan ENCORE!$" - -gText_PkmnEncoreEnded:: @ 85CA7D3 - .string "{STRING 15}’s ENCORE\nended!$" - -gText_PkmnTookAim:: @ 85CA7E6 - .string "{STRING 15} took aim\nat {STRING 16}!$" - -gText_PkmnSketchedMove:: @ 85CA7F9 - .string "{STRING 15} SKETCHED\n{STRING 0}!$" - -gText_PkmnTryingToTakeFoe:: @ 85CA809 - .string "{STRING 15} is trying\nto take its foe with it!$" - -gText_PkmnTookFoe:: @ 85CA82F - .string "{STRING 16} took\n{STRING 15} with it!$" - -gText_PkmnReducedPP:: @ 85CA843 - .string "Reduced {STRING 16}’s\n{STRING 0} by {PLAYER}!$" - -gText_PkmnStoleItem:: @ 85CA85A - .string "{STRING 15} stole\n{STRING 16}’s {STRING 22}!$" - -gText_PkmnCantEscape:: @ 85CA86C - .string "{STRING 16} can’t\nescape now!$" - -gText_PkmnFellIntoNightmare:: @ 85CA881 - .string "{STRING 16} fell into\na NIGHTMARE!$" - -gText_PkmnLockedInNightmare:: @ 85CA89B - .string "{STRING 15} is locked\nin a NIGHTMARE!$" - -gText_PkmnLaidCurse:: @ 85CA8B8 - .string "{STRING 15} cut its own HP and\nlaid a CURSE on {STRING 16}!$" - -gText_PkmnAfflictedByCurse:: @ 85CA8E2 - .string "{STRING 15} is afflicted\nby the CURSE!$" - -gText_SpikesScattered:: @ 85CA900 - .string "SPIKES were scattered all around\nthe opponent’s side!$" - -gText_PkmnHurtBySpikes:: @ 85CA936 - .string "{STRING 19} is hurt\nby SPIKES!$" - -gText_PkmnIdentified:: @ 85CA94C - .string "{STRING 15} identified\n{STRING 16}!$" - -gText_PkmnPerishCountFell:: @ 85CA95E - .string "{STRING 15}’s PERISH count\nfell to {STRING 0}!$" - -gText_PkmnBracedItself:: @ 85CA97C - .string "{STRING 15} braced\nitself!$" - -gText_PkmnEnduredHit:: @ 85CA98E - .string "{STRING 16} ENDURED\nthe hit!$" - -gText_MagnitudeStrength:: @ 85CA9A2 - .string "MAGNITUDE {STRING 0}!$" - -gText_PkmnCutHPMaxedAttack:: @ 85CA9B0 - .string "{STRING 15} cut its own HP\nand maximized ATTACK!$" - -gText_PkmnCopiedStatChanges:: @ 85CA9D8 - .string "{STRING 15} copied\n{STRING 16}’s stat changes!$" - -gText_PkmnGotFree:: @ 85CA9F5 - .string "{STRING 15} got free of\n{STRING 16}’s {STRING 0}!$" - -gText_PkmnShedLeechSeed:: @ 85CAA0D - .string "{STRING 15} shed\nLEECH SEED!$" - -gText_PkmnBlewAwaySpikes:: @ 85CAA21 - .string "{STRING 15} blew away\nSPIKES!$" - -gText_PkmnFledFromBattle:: @ 85CAA36 - .string "{STRING 15} fled from\nbattle!$" - -gText_PkmnForesawAttack:: @ 85CAA4B - .string "{STRING 15} foresaw\nan attack!$" - -gText_PkmnTookAttack:: @ 85CAA61 - .string "{STRING 16} took the\n{STRING 0} attack!$" - -gText_PkmnChoseXAsDestiny:: @ 85CAA78 - .string "{STRING 15} chose\n{STRING 20} as its destiny!$" - -gText_PkmnAttack:: @ 85CAA94 - .string "{STRING 0}’s attack!$" - -gText_PkmnCenterAttention:: @ 85CAAA1 - .string "{STRING 15} became the\ncenter of attention!$" - -gText_PkmnChargingPower:: @ 85CAAC4 - .string "{STRING 15} began\ncharging power!$" - -gText_NaturePowerTurnedInto:: @ 85CAADD - .string "NATURE POWER turned into\n{STRING 20}!$" - -gText_PkmnStatusNormal:: @ 85CAAFA - .string "{STRING 15}’s status\nreturned to normal!$" - -gText_PkmnSubjectedToTorment:: @ 85CAB1A - .string "{STRING 16} was subjected\nto TORMENT!$" - -gText_PkmnTighteningFocus:: @ 85CAB37 - .string "{STRING 15} is tightening\nits focus!$" - -gText_PkmnFellForTaunt:: @ 85CAB53 - .string "{STRING 16} fell for\nthe TAUNT!$" - -gText_PkmnReadyToHelp:: @ 85CAB6A - .string "{STRING 15} is ready to\nhelp {STRING 16}!$" - -gText_PkmnSwitchedItems:: @ 85CAB82 - .string "{STRING 15} switched\nitems with its opponent!$" - -gText_PkmnObtainedX:: @ 85CABA7 - .string "{STRING 15} obtained\n{STRING 0}.$" - -gText_PkmnObtainedX2:: @ 85CABB7 - .string "{STRING 16} obtained\n{PLAYER}.$" - -gText_PkmnObtainedXYObtainedZ:: @ 85CABC7 - .string "{STRING 15} obtained\n{STRING 0}.\p{STRING 16} obtained\n{PLAYER}.$" - -gText_PkmnCopiedFoe:: @ 85CAB82 - .string "{STRING 15} copied\n{STRING 16}’s {STRING 25}!$" - -gText_PkmnMadeWish:: @ 85CABFA - .string "{STRING 15} made a WISH!$" - -gText_PkmnWishCameTrue:: @ 85CAC0A - .string "{STRING 0}’s WISH\ncame true!$" - -gText_PkmnPlantedRoots:: @ 85CAC1F - .string "{STRING 15} planted its roots!$" - -gText_PkmnAbsorbedNutrients:: @ 85CAC35 - .string "{STRING 15} absorbed\nnutrients with its roots!$" - -gText_PkmnAnchoredItself:: @ 85CAC5B - .string "{STRING 16} anchored\nitself with its roots!$" - -gText_PkmnWasMadeDrowsy:: @ 85CAC7E - .string "{STRING 15} made\n{STRING 16} drowsy!$" - -gText_PkmnKnockedOff:: @ 85CAC91 - .string "{STRING 15} knocked off\n{STRING 16}’s {STRING 22}!$" - -gText_PkmnSwappedAbilities:: @ 85CACA9 - .string "{STRING 15} swapped abilities\nwith its opponent!$" - -gText_PkmnSealedOpponentMove:: @ 85CACD1 - .string "{STRING 15} sealed the\nopponent’s move(s)!$" - -gText_PkmnWantsGrudge:: @ 85CACF3 - .string "{STRING 15} wants the\nopponent to bear a GRUDGE!$" - -gText_PkmnLostPPGrudge:: @ 85CAD1B - .string "{STRING 15}’s {STRING 0} lost\nall its PP due to the GRUDGE!$" - -gText_PkmnShroudedItself:: @ 85CAD46 - .string "{STRING 15} shrouded\nitself in {STRING 20}!$" - -gText_PkmnMoveBounced:: @ 85CAD60 - .string "{STRING 15}’s {STRING 20}\nwas bounced back by MAGIC COAT!$" - -gText_PkmnWaitsForTarget:: @ 85CAD88 - .string "{STRING 15} waits for a target\nto make a move!$" - -gText_PkmnSnatchedMove:: @ 85CADAE - .string "{STRING 16} SNATCHED\n{STRING 19}’s move!$" - -gText_ElectricityWeakened:: @ 85CADC5 - .string "Electricity’s power was\nweakened!$" - -gText_FireWeakened:: @ 85CADE7 - .string "Fire’s power was\nweakened!$" - -gText_XFoundOneY:: @ 85CAE02 - .string "{STRING 15} found\none {STRING 22}!$" - -gText_SoothingAroma:: @ 85CAE13 - .string "A soothing aroma wafted\nthrough the area!$" - -gText_ItemsCantBeUsedNow:: @ 85CAE3D - .string "Items can’t be used now.{PAUSE 64}$" - -gText_ForXCommaYZ:: @ 85CAE59 - .string "For {STRING 19},\n{STRING 22} {STRING 0}$" - -gText_PkmnUsedXToGetPumped:: @ 85CAE67 - .string "{STRING 19} used\n{STRING 22} to get pumped!$" - -gText_PkmnLostFocus:: @ 85CAE81 - .string "{STRING 15} lost its\nfocus and couldn’t move!$" - -gText_PkmnWasDraggedOut:: @ 85CAEA6 - .string "{STRING 16} was\ndragged out!\p$" - -gText_TheWallShattered:: @ 85CAEBB - .string "The wall shattered!$" - -gText_ButNoEffect:: @ 85CAECF - .string "But it had no effect!$" - -gText_PkmnHasNoMovesLeft:: @ 85CAEE5 - .string "{STRING 18} has no\nmoves left!\p$" - -gText_PkmnMoveIsDisabled:: @ 85CAEFC - .string "{STRING 18}’s {STRING 20}\nis disabled!\p$" - -gText_PkmnCantUseMoveTorment:: @ 85CAF12 - .string "{STRING 18} can’t use the same\nmove in a row due to the TORMENT!\p$" - -gText_PkmnCantUseMoveTaunt:: @ 85CAF4B - .string "{STRING 18} can’t use\n{STRING 20} after the TAUNT!\p$" - -gText_PkmnCantUseMoveSealed:: @ 85CAF6D - .string "{STRING 18} can’t use the\nsealed {STRING 20}!\p$" - -gText_PkmnMadeItRain:: @ 85CAF8A - .string "{STRING 19}’s {STRING 26}\nmade it rain!$" - -gText_PkmnRaisedSpeed:: @ 85CAFA0 - .string "{STRING 19}’s {STRING 26}\nraised its SPEED!$" - -gText_PkmnProtectedBy:: @ 85CAFBA - .string "{STRING 16} was protected\nby {STRING 25}!$" - -gText_PkmnPreventsUsage:: @ 85CAFD2 - .string "{STRING 16}’s {STRING 25}\nprevents {STRING 15}\lfrom using {STRING 20}!$" - -gText_PkmnRestoredHPUsing:: @ 85CAFF5 - .string "{STRING 16} restored HP\nusing its {STRING 25}!$" - -gText_PkmnsXMadeYUseless:: @ 85CB012 - .string "{STRING 16}’s {STRING 25}\nmade {STRING 20} useless!$" - -gText_PkmnChangedTypeWith:: @ 85CB02B - .string "{STRING 16}’s {STRING 25}\nmade it the {STRING 0} type!$" - -gText_PkmnPreventsParalysisWith:: @ 85CB048 - .string "{STRING 17}’s {STRING 25}\nprevents paralysis!$" - -gText_PkmnPreventsRomanceWith:: @ 85CB064 - .string "{STRING 16}’s {STRING 25}\nprevents romance!$" - -gText_PkmnPreventsPoisoningWith:: @ 85CB07E - .string "{STRING 17}’s {STRING 25}\nprevents poisoning!$" - -gText_PkmnPreventsConfusionWith:: @ 85CB09A - .string "{STRING 16}’s {STRING 25}\nprevents confusion!$" - -gText_PkmnRaisedFirePowerWith:: @ 85CB0B6 - .string "{STRING 16}’s {STRING 25}\nraised its FIRE power!$" - -gText_PkmnAnchorsItselfWith:: @ 85CB0D5 - .string "{STRING 16} anchors\nitself with {STRING 25}!$" - -gText_PkmnCutsAttackWith:: @ 85CB0F0 - .string "{STRING 19}’s {STRING 26}\ncuts {STRING 16}’s ATTACK!$" - -gText_PkmnPreventsStatLossWith:: @ 85CB10A - .string "{STRING 19}’s {STRING 26}\nprevents stat loss!$" - -gText_PkmnHurtsWith:: @ 85CB126 - .string "{STRING 16}’s {STRING 25}\nhurt {STRING 15}!$" - -gText_PkmnTraced:: @ 85CB137 - .string "{STRING 19} TRACED\n{STRING 0}’s {PLAYER}!$" - -gText_PkmnsXPreventsBurns:: @ 85CB14A - .string "{STRING 17}’s {STRING 27}\nprevents burns!$" - -gText_PkmnsXBlocksY:: @ 85CB162 - .string "{STRING 16}’s {STRING 25}\nblocks {STRING 20}!$" - -gText_PkmnsXBlocksY2:: @ 85CB175 - .string "{STRING 19}’s {STRING 26}\nblocks {STRING 20}!$" - -gText_PkmnsXRestoredHPALittle2:: @ 85CB188 - .string "{STRING 15}’s {STRING 24}\nrestored its HP a little!$" - -gText_PkmnsXWhippedUpSandstorm:: @ 85CB1AA - .string "{STRING 19}’s {STRING 26}\nwhipped up a sandstorm!$" - -gText_PkmnsXIntensifiedSun:: @ 85CB1CA - .string "{STRING 19}’s {STRING 26}\nintensified the sun’s rays!$" - -gText_PkmnsXPreventsYLoss:: @ 85CB1EE - .string "{STRING 19}’s {STRING 26}\nprevents {STRING 0} loss!$" - -gText_PkmnsXInfatuatedY:: @ 85CB208 - .string "{STRING 16}’s {STRING 25}\ninfatuated {STRING 15}!$" - -gText_PkmnsXMadeYIneffective:: @ 85CB21F - .string "{STRING 16}’s {STRING 25}\nmade {STRING 20} ineffective!$" - -gText_PkmnsXCuredYProblem:: @ 85CB23C - .string "{STRING 19}’s {STRING 26}\ncured its {STRING 0} problem!$" - -gText_ItSuckedLiquidOoze:: @ 85CB25A - .string "It sucked up the\nLIQUID OOZE!$" - -gText_PkmnTransformed:: @ 85CB278 - .string "{STRING 19} transformed!$" - -gText_PkmnsXTookAttack:: @ 85CB288 - .string "{STRING 16}’s {STRING 25}\ntook the attack!$" - -gText_PkmnsXPreventsSwitching:: @ 85CB2A1 - .string "{STRING 0}’s {STRING 23}\nprevents switching!\p$" - -gText_PreventedFromWorking:: @ 85CB2BE - .string "{STRING 16}’s {STRING 25}\nprevented {STRING 19}’s\l{STRING 0} from working!$" - -gText_PkmnsXMadeItIneffective:: @ 85CB2E6 - .string "{STRING 19}’s {STRING 26}\nmade it ineffective!$" - -gText_PkmnsXPreventsFlinching:: @ 85CB303 - .string "{STRING 17}’s {STRING 27}\nprevents flinching!$" - -gText_PkmnsXPreventsYsZ:: @ 85CB31F - .string "{STRING 15}’s {STRING 24}\nprevents {STRING 16}’s\l{STRING 25} from working!$" - -gText_PkmnsXCuredItsYProblem:: @ 85CB346 - .string "{STRING 19}’s {STRING 26}\ncured its {STRING 0} problem!$" - -gText_PkmnsXHadNoEffectOnY:: @ 85CB364 - .string "{STRING 19}’s {STRING 26}\nhad no effect on {STRING 17}!$" - -gText_StatSharply:: @ 85CB381 - .string "sharply $" - -gText_StatRose:: @ 85CB38A - .string "rose!$" - -gText_StatHarshly:: @ 85CB390 - .string "harshly $" - -gText_StatFell:: @ 85CB399 - .string "fell!$" - -gText_PkmnsStatChanged:: @ 85CB39F - .string "{STRING 15}’s {STRING 0}\n{PLAYER}$" - -gText_PkmnsStatChanged2:: @ 85CB3AA - .string "{STRING 16}’s {STRING 0}\n{PLAYER}$" - -gText_UsingXTheYOfZN:: @ 85CB3B5 - .string "Using {STRING 22}, the {STRING 0}\nof {STRING 19} {PLAYER}$" - -gText_PkmnsStatChanged3:: @ 85CB3CF - .string "{STRING 15}’s {STRING 0}\n{PLAYER}$" - -gText_PkmnsStatChanged4:: @ 85CB3DA - .string "{STRING 16}’s {STRING 0}\n{PLAYER}$" - -gText_StatsWontIncrease2:: @ 85CB3E5 - .string "{STRING 15}’s stats won’t\ngo any higher!$" - -gText_StatsWontDecrease2:: @ 85CB405 - .string "{STRING 16}’s stats won’t\ngo any lower!$" - -gText_CriticalHit:: @ 85CB424 - .string "A critical hit!$" - -gText_OneHitKO:: @ 85CB434 - .string "It’s a one-hit KO!$" - -gText_123Poof:: @ 85CB447 - .string "{PAUSE 32}1, {PAUSE 15}2, and{PAUSE 15}… {PAUSE 15}… {PAUSE 15}… {PAUSE 15}{PLAY_SE 0x0038}Poof!\p$" - -gText_AndEllipsis:: @ 85CB473 - .string "And…\p$" - -gText_HMMovesCantBeForgotten:: @ 85CB479 - .string "HM moves can’t be\nforgotten now.\p$" - -gText_NotVeryEffective:: @ 85CB49B - .string "It’s not very effective…$" - -gText_SuperEffective:: @ 85CB4B4 - .string "It’s super effective!$" - -gText_GotAwaySafely:: @ 85CB4CA - .string "{PLAY_SE 0x0011}Got away safely!\p$" - -gText_PkmnFledUsingIts:: @ 85CB4E0 - .string "{PLAY_SE 0x0011}{STRING 15} fled\nusing its {STRING 22}!\p$" - -gText_PkmnFledUsing:: @ 85CB4FB - .string "{PLAY_SE 0x0011}{STRING 15} fled\nusing {STRING 24}!\p$" - -gText_WildPkmnFled:: @ 85CB512 - .string "{PLAY_SE 0x0011}Wild {STRING 0} fled!$" - -gText_PlayerDefeated:: @ 85CB524 - .string "Player defeated\n{STRING 32}!$" - -gText_PlayerBeatTwo:: @ 85CB538 - .string "Player beat {STRING 32}\nand {STRING 33}!$" - -gText_PlayerLostAgainst:: @ 85CB54F - .string "Player lost against\n{STRING 32}!$" - -gText_PlayerLostToTwo:: @ 85CB567 - .string "Player lost to {STRING 32}\nand {STRING 33}!$" - -gText_PlayerBattledToDraw:: @ 85CB581 - .string "Player battled to a draw against\n{STRING 32}!$" - -gText_PlayerBattledToDrawVsTwo:: @ 85CB5A6 - .string "Player battled to a draw against\n{STRING 32} and {STRING 33}!$" - -gText_WildFled:: @ 85CB5D2 - .string "{PLAY_SE 0x0011}{STRING 32} fled!$" - -gText_TwoWildFled:: @ 85CB5DF - .string "{PLAY_SE 0x0011}{STRING 32} and\n{STRING 33} fled!$" - -gText_NoRunningFromTrainers:: @ 85CB5F3 - .string "No! There’s no running\nfrom a TRAINER battle!\p$" - -gText_CantEscape:: @ 85CB622 - .string "Can’t escape!\p$" - -gText_DontLeaveBirch:: @ 85CB631 - .string "PROF. BIRCH: Don’t leave me like this!\p$" - -gText_ButNothingHappened:: @ 85CB659 - .string "But nothing happened!$" - -gText_ButItFailed:: @ 85CB66F - .string "But it failed!$" - -gText_ItHurtConfusion:: @ 85CB67E - .string "It hurt itself in its\nconfusion!$" - -gText_MirrorMoveFailed:: @ 85CB69F - .string "The MIRROR MOVE failed!$" - -gText_StartedToRain:: @ 85CB6B7 - .string "It started to rain!$" - -gText_DownpourStarted:: @ 85CB6CB - .string "A downpour started!$" - -gText_RainContinues:: @ 85CB6DF - .string "Rain continues to fall.$" - -gText_DownpourContinues:: @ 85CB6F7 - .string "The downpour continues.$" - -gText_RainStopped:: @ 85CB70F - .string "The rain stopped.$" - -gText_SandstormBrewed:: @ 85CB721 - .string "A sandstorm brewed!$" - -gText_SandstormRages:: @ 85CB735 - .string "The sandstorm rages.$" - -gText_SandstormSubsided:: @ 85CB74A - .string "The sandstorm subsided.$" - -gText_SunlightGotBright:: @ 85CB762 - .string "The sunlight got bright!$" - -gText_SunlightStrong:: @ 85CB77B - .string "The sunlight is strong.$" - -gText_SunlightFaded:: @ 85CB793 - .string "The sunlight faded.$" - -gText_StartedHail:: @ 85CB7A7 - .string "It started to hail!$" - -gText_HailContinues:: @ 85CB7BB - .string "Hail continues to fall.$" - -gText_HailStopped:: @ 85CB7D3 - .string "The hail stopped.$" - -gText_FailedToSpitUp:: @ 85CB7E5 - .string "But it failed to SPIT UP\na thing!$" - -gText_FailedToSwallow:: @ 85CB807 - .string "But it failed to SWALLOW\na thing!$" - -gText_WindBecameHeatWave:: @ 85CB829 - .string "The wind turned into a\nHEAT WAVE!$" - -gText_StatChangesGone:: @ 85CB84B - .string "All stat changes were\neliminated!$" - -gText_CoinsScattered:: @ 85CB86D - .string "Coins scattered everywhere!$" - -gText_TooWeakForSubstitute:: @ 85CB889 - .string "It was too weak to make\na SUBSTITUTE!$" - -gText_SharedPain:: @ 85CB8AF - .string "The battlers shared\ntheir pain!$" - -gText_BellChimed:: @ 85CB8CF - .string "A bell chimed!$" - -gText_FaintInThree:: @ 85CB8DE - .string "All affected POKéMON will\nfaint in three turns!$" - -gText_NoPPLeft:: @ 85CB90E - .string "There’s no PP left for\nthis move!\p$" - -gText_ButNoPPLeft:: @ 85CB931 - .string "But there was no PP left\nfor the move!$" - -gText_PkmnIgnoresAsleep:: @ 85CB958 - .string "{STRING 15} ignored\norders while asleep!$" - -gText_PkmnIgnoredOrders:: @ 85CB978 - .string "{STRING 15} ignored\norders!$" - -gText_PkmnBeganToNap:: @ 85CB98B - .string "{STRING 15} began to nap!$" - -gText_PkmnLoafing:: @ 85CB99C - .string "{STRING 15} is\nloafing around!$" - -gText_PkmnWontObey:: @ 85CB9B2 - .string "{STRING 15} won’t\nobey!$" - -gText_PkmnTurnedAway:: @ 85CB9C1 - .string "{STRING 15} turned away!$" - -gText_PkmnPretendNotNotice:: @ 85CB9D1 - .string "{STRING 15} pretended\nnot to notice!$" - -gText_EnemyAboutToSwitchPkmn:: @ 85CB9ED - .string "{STRING 28} {STRING 29} is\nabout to use {PLAYER}.\pWill {STRING 35} change\nPOKéMON?$" - -gText_PkmnLearnedMove2:: @ 85CBA1F - .string "{STRING 15} learned\n{STRING 0}!$" - -gText_PlayerDefeatedXY:: @ 85CBA2E - .string "Player defeated\n{STRING 28} {STRING 29}!\p$" - -gText_CreptCloser:: @ 85CBA46 - .string "{STRING 35} crept closer to\n{RIVAL}!$" - -gText_CantGetCloser:: @ 85CBA5D - .string "{STRING 35} can’t get any closer!$" - -gText_PkmnWatchingCarefully:: @ 85CBA76 - .string "{RIVAL} is watching\ncarefully!$" - -gText_PkmnCuriousAboutX:: @ 85CBA90 - .string "{RIVAL} is curious about\nthe {STRING 0}!$" - -gText_PkmnEnthralledByX:: @ 85CBAAC - .string "{RIVAL} is enthralled by\nthe {STRING 0}!$" - -gText_PkmnIgnoredX:: @ 85CBAC8 - .string "{RIVAL} completely ignored\nthe {STRING 0}!$" - -gText_ThrewPokeblockAtPkmn:: @ 85CBAE6 - .string "{STRING 35} threw a {POKEBLOCK}\nat the {RIVAL}!$" - -gText_OutOfSafariBalls:: @ 85CBB02 - .string "{PLAY_SE 0x0049}ANNOUNCER: You’re out of\nSAFARI BALLS! Game over!\p$" - - .string "{RIVAL} appeared!\p$" - -gText_WildPkmnAppeared:: @ 85CBB47 - .string "Wild {RIVAL} appeared!\p$" - -gText_WildPkmnAppeared2:: @ 85CBB5A - .string "Wild {RIVAL} appeared!\p$" - -gText_WildPkmnAppearedPause:: @ 85CBB6D - .string "Wild {RIVAL} appeared!{PAUSE 127}$" - -gText_TwoWildPkmnAppeared:: @ 85CBB82 - .string "Wild {RIVAL} and\n{AQUA} appeared!\p$" - -gText_TrainerXYWantsToBattle:: @ 85CBB9C - .string "{STRING 28} {STRING 29}\nwould like to battle!\p$" - -gText_TrainerXWantsToBattle:: @ 85CBBB9 - .string "{STRING 32}\nwants to battle!$" - -gText_TwoTrainersWantToBattle:: @ 85CBBCD - .string "{STRING 32} and {STRING 33}\nwant to battle!$" - -gText_TrainerXYSentOutPkmn:: @ 85CBBE7 - .string "{STRING 28} {STRING 29} sent\nout {RIVAL}!$" - -gText_TrainerXYSentOutTwoPkmn:: @ 85CBBFA - .string "{STRING 28} {STRING 29} sent\nout {RIVAL} and {AQUA}!$" - -gText_TrainerXYSentOutPkmn2:: @ 85CBC14 - .string "{STRING 28} {STRING 29} sent\nout {STRING 0}!$" - -gText_TrainerXSentOutPkmn:: @ 85CBC27 - .string "{STRING 32} sent out\n{RIVAL}!$" - -gText_TrainerXSentOutTwoPkmn:: @ 85CBC37 - .string "{STRING 32} sent out\n{RIVAL} and {AQUA}!$" - -gText_TwoTrainersSentOutPkmn:: @ 85CBC4E - .string "{STRING 32} sent out {STRING 10}!\n{STRING 33} sent out {STRING 12}!$" - -gText_TrainerXSentOutPkmn2:: @ 85CBC6E - .string "{STRING 32} sent out\n{STRING 0}!$" - -gText_TrainerXSentOutPkmn3:: @ 85CBC7E - .string "{STRING 34} sent out\n{STRING 0}!$" - -gText_GoPkmn:: @ 85CBC8E - .string "Go! {STRING 5}!$" - -gText_GoTwoPkmn:: @ 85CBC96 - .string "Go! {STRING 5} and\n{VERSION}!$" - -gText_GoPkmn2:: @ 85CBCA5 - .string "Go! {STRING 0}!$" - -gText_DoItPkmn:: @ 85CBCAD - .string "Do it! {STRING 0}!$" - -gText_GoForItPkmn:: @ 85CBCB8 - .string "Go for it, {STRING 0}!$" - -gText_YourFoesWeakGetEmPkmn:: @ 85CBCC7 - .string "Your foe’s weak!\nGet ’em, {STRING 0}!$" - -gText_EnemySentOutPkmnGoPkmn:: @ 85CBCE5 - .string "{STRING 31} sent out {STRING 11}!\nGo! {STRING 9}!$" - -gText_PkmnThatsEnough:: @ 85CBCFD - .string "{STRING 0}, that’s enough!\nCome back!$" - -gText_PkmnComeBack:: @ 85CBD1B - .string "{STRING 0}, come back!$" - -gText_PkmnOkComeBack:: @ 85CBD2A - .string "{STRING 0}, OK!\nCome back!$" - -gText_PkmnGoodComeBack:: @ 85CBD3D - .string "{STRING 0}, good!\nCome back!$" - -gText_TrainerXYWithdrewPkmn:: @ 85CBD52 - .string "{STRING 28} {STRING 29}\nwithdrew {STRING 0}!$" - -gText_TrainerXWithdrewPkmn:: @ 85CBD65 - .string "{STRING 32} withdrew\n{STRING 0}!$" - -gText_TrainerXWithdrewPkmn2:: @ 85CBD75 - .string "{STRING 34} withdrew\n{STRING 0}!$" - -gText_WildPkmnPrefix:: @ 85CBD85 - .string "Wild $" - -gText_FoePkmnPrefix:: @ 85CBD8B - .string "Foe $" - - .string "$" - -gText_FoePkmnPrefix2:: @ 85CBD91 - .string "Foe$" - -gText_AllyPkmnPrefix:: @ 85CBD95 - .string "Ally$" - -gText_FoePkmnPrefix3:: @ 85CBD9A - .string "Foe$" - -gText_AllyPkmnPrefix2:: @ 85CBD9E - .string "Ally$" - -gText_FoePkmnPrefix4:: @ 85CBDA3 - .string "Foe$" - -gText_AllyPkmnPrefix3:: @ 85CBDA7 - .string "Ally$" - -gText_XUsedY2:: @ 85CBDAC - .string "{STRING 15} used\n{PLAYER}$" - -gText_ExclamationMark:: @ 85CBDB7 - .string "!$" - -gText_ExclamationMark2:: @ 85CBDB9 - .string "!$" - -gText_ExclamationMark3:: @ 85CBDBB - .string "!$" - -gText_ExclamationMark4:: @ 85CBDBD - .string "!$" - -gText_ExclamationMark5:: @ 85CBDBF - .string "!$" - -gText_HP2:: @ 85CBDC1 - .string "HP$" - -gText_Attack2:: @ 85CBDC4 - .string "ATTACK$" - -gText_Defense2:: @ 85CBDCB - .string "DEFENSE$" - -gText_Speed:: @ 85CBDD3 - .string "SPEED$" - -gText_SpAtk2:: @ 85CBDD9 - .string "SP. ATK$" - -gText_SpDef2:: @ 85CBDE1 - .string "SP. DEF$" - -gText_Accuracy:: @ 85CBDE9 - .string "accuracy$" - -gText_Evasiveness:: @ 85CBDF2 - .string "evasiveness$" - - .align 2 -gStatNamesTable:: @ 85CBE00 - .4byte gText_HP2 - .4byte gText_Attack2 - .4byte gText_Defense2 - .4byte gText_Speed - .4byte gText_SpAtk2 - .4byte gText_SpDef2 - .4byte gText_Accuracy - .4byte gText_Evasiveness - -gText_PokeblockWasTooSpicy:: @ 85CBE20 - .string "was too spicy!$" - -gText_PokeblockWasTooDry:: @ 85CBE2F - .string "was too dry!$" - -gText_PokeblockWasTooSweet:: @ 85CBE3C - .string "was too sweet!$" - -gText_PokeblockWasTooBitter:: @ 85CBE4B - .string "was too bitter!$" - -gText_PokeblockWasTooSour:: @ 85CBE5B - .string "was too sour!$" - - .align 2 -gPokeblockWasTooXStringTable:: @ 85CBE6C - .4byte gText_PokeblockWasTooSpicy - .4byte gText_PokeblockWasTooDry - .4byte gText_PokeblockWasTooSweet - .4byte gText_PokeblockWasTooBitter - .4byte gText_PokeblockWasTooSour - -gText_XUsedY:: @ 85CBE80 - .string "{STRING 35} used\n{STRING 22}!$" - -gText_WallyUsedY:: @ 85CBE8C - .string "WALLY used\n{STRING 22}!$" - -gText_XYUsedZ:: @ 85CBE9B - .string "{STRING 28} {STRING 29}\nused {STRING 22}!$" - -gText_TrainerBlockedBall:: @ 85CBEAA - .string "The TRAINER blocked the BALL!$" - -gText_DontBeAThief:: @ 85CBEC8 - .string "Don’t be a thief!$" - -gText_ItDodgedBall:: @ 85CBEDA - .string "It dodged the thrown BALL!\nThis POKéMON can’t be caught!$" - -gText_YouMissedPkmn:: @ 85CBF13 - .string "You missed the POKéMON!$" - -gText_PkmnBrokeFree:: @ 85CBF2B - .string "Oh, no!\nThe POKéMON broke free!$" - -gText_ItAppearedCaught:: @ 85CBF4B - .string "Aww!\nIt appeared to be caught!$" - -gText_AarghAlmostHadIt:: @ 85CBF6A - .string "Aargh!\nAlmost had it!$" - -gText_ShootSoClose:: @ 85CBF80 - .string "Shoot!\nIt was so close, too!$" - -gText_GotchaPkmnCaught:: @ 85CBF9D - .string "Gotcha!\n{RIVAL} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}\p$" - -gText_GotchaPkmnCaught2:: @ 85CBFBB - .string "Gotcha!\n{RIVAL} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}{PAUSE 127}$" - -gText_GiveNicknameCaptured:: @ 85CBFDB - .string "Give a nickname to the\ncaptured {RIVAL}?$" - -gText_PkmnSentToPC:: @ 85CBFFF - .string "{RIVAL} was sent to\n{STRING 39} PC.$" - -gText_Someones:: @ 85CC015 - .string "someone’s$" - -gText_Lanettes:: @ 85CC01F - .string "LANETTE’s$" - -gText_PkmnDataAddedToDex:: @ 85CC029 - .string "{RIVAL}’s data was\nadded to the POKéDEX.\p$" - -gText_ItIsRaining:: @ 85CC04E - .string "It is raining.$" - -gText_SandstormIsRaging:: @ 85CC05D - .string "A sandstorm is raging.$" - -gText_BoxIsFull:: @ 85CC074 - .string "The BOX is full!\nYou can’t catch any more!\p$" - -gText_EnigmaBerry:: @ 85CC0A0 - .string "ENIGMA BERRY$" - -gText_BerrySuffix:: @ 85CC0AD - .string " BERRY$" - -gText_PkmnsXCuredParalysis:: @ 85CC0B4 - .string "{STRING 19}’s {STRING 22}\ncured paralysis!$" - -gText_PkmnsXCuredPoison:: @ 85CC0CD - .string "{STRING 19}’s {STRING 22}\ncured poison!$" - -gText_PkmnsXHealedBurn:: @ 85CC0E3 - .string "{STRING 19}’s {STRING 22}\nhealed its burn!$" - -gText_PkmnsXDefrostedIt:: @ 85CC0FC - .string "{STRING 19}’s {STRING 22}\ndefrosted it!$" - -gText_PkmnsXWokeIt:: @ 85CC112 - .string "{STRING 19}’s {STRING 22}\nwoke it from its sleep!$" - -gText_PkmnsXSnappedOut:: @ 85CC132 - .string "{STRING 19}’s {STRING 22}\nsnapped it out of confusion!$" - -gText_PkmnsXCuredProblem:: @ 85CC157 - .string "{STRING 19}’s {STRING 22}\ncured its {STRING 0} problem!$" - -gText_PkmnsXNormalizedStatus:: @ 85CC175 - .string "{STRING 19}’s {STRING 22}\nnormalized its status!$" - -gText_PkmnsXRestoredHealth:: @ 85CC194 - .string "{STRING 19}’s {STRING 22}\nrestored health!$" - -gText_PkmnsXRestoredPP:: @ 85CC1AD - .string "{STRING 19}’s {STRING 22}\nrestored {STRING 0}’s PP!$" - -gText_PkmnsXRestoredStatus:: @ 85CC1C7 - .string "{STRING 19}’s {STRING 22}\nrestored its status!$" - -gText_PkmnsXRestoredHPALittle:: @ 85CC1E4 - .string "{STRING 19}’s {STRING 22}\nrestored its HP a little!$" - -gText_XAllowsOnlyY:: @ 85CC206 - .string "{STRING 22} allows the\nuse of only {STRING 20}!\p$" - -gText_PkmnHungOnWithX:: @ 85CC225 - .string "{STRING 16} hung on\nusing its {STRING 22}!$" - -gText_EmptyString3:: @ 85CC23E - .string "$" - -gText_YouThrowABallNowRight:: @ 85CC23F - .string "You throw a BALL now, right?\nI… I’ll do my best!$" - - .align 2 -gBattleStringsTable:: @ 85CC270 - .4byte gText_Buffer36 - .4byte gText_PkmnGainedEXP - .4byte gText_PkmnGrewToLv - .4byte gText_PkmnLearnedMove - .4byte gText_TryToLearnMove1 - .4byte gText_TryToLearnMove2 - .4byte gText_TryToLearnMove3 - .4byte gText_PkmnForgotMove - .4byte gText_StopLearningMove - .4byte gText_DidNotLearnMove - .4byte gText_PkmnLearnedMove2 - .4byte gText_AttackMissed - .4byte gText_PkmnProtectedItself - .4byte gText_StatsWontIncrease2 - .4byte gText_AvoidedDamage - .4byte gText_ItDoesntAffect - .4byte gText_PkmnFainted - .4byte gText_PkmnFainted2 - .4byte gText_PlayerGotMoney - .4byte gText_PlayerWhiteout - .4byte gText_PlayerWhiteout2 - .4byte gText_PreventsEscape - .4byte gText_HitXTimes - .4byte gText_PkmnFellAsleep - .4byte gText_PkmnMadeSleep - .4byte gText_PkmnAlreadyAsleep - .4byte gText_PkmnAlreadyAsleep2 - .4byte gText_PkmnWasntAffected - .4byte gText_PkmnWasPoisoned - .4byte gText_PkmnPoisonedBy - .4byte gText_PkmnHurtByPoison - .4byte gText_PkmnAlreadyPoisoned - .4byte gText_PkmnBadlyPoisoned - .4byte gText_PkmnEnergyDrained - .4byte gText_PkmnWasBurned - .4byte gText_PkmnBurnedBy - .4byte gText_PkmnHurtByBurn - .4byte gText_PkmnWasFrozen - .4byte gText_PkmnFrozenBy - .4byte gText_PkmnIsFrozen - .4byte gText_PkmnWasDefrosted - .4byte gText_PkmnWasDefrosted2 - .4byte gText_PkmnWasDefrostedBy - .4byte gText_PkmnWasParalyzed - .4byte gText_PkmnWasParalyzedBy - .4byte gText_PkmnIsParalyzed - .4byte gText_PkmnIsAlreadyParalyzed - .4byte gText_PkmnHealedParalysis - .4byte gText_PkmnDreamEaten - .4byte gText_StatsWontIncrease - .4byte gText_StatsWontDecrease - .4byte gText_TeamStoppedWorking - .4byte gText_FoeStoppedWorking - .4byte gText_PkmnIsConfused - .4byte gText_PkmnHealedConfusion - .4byte gText_PkmnWasConfused - .4byte gText_PkmnAlreadyConfused - .4byte gText_PkmnFellInLove - .4byte gText_PkmnInLove - .4byte gText_PkmnImmobilizedByLove - .4byte gText_PkmnBlownAway - .4byte gText_PkmnChangedType - .4byte gText_PkmnFlinched - .4byte gText_PkmnRegainedHealth - .4byte gText_PkmnHPFull - .4byte gText_PkmnRaisedSpDef - .4byte gText_PkmnRaisedDef - .4byte gText_PkmnCoveredByVeil - .4byte gText_PkmnUsedSafeguard - .4byte gText_PkmnSafeguardExpired - .4byte gText_PkmnWentToSleep - .4byte gText_PkmnSleptHealthy - .4byte gText_PkmnWhippedWhirlwind - .4byte gText_PkmnTookSunlight - .4byte gText_PkmnLoweredHead - .4byte gText_PkmnIsGlowing - .4byte gText_PkmnFlewHigh - .4byte gText_PkmnDugHole - .4byte gText_PkmnSqueezedByBind - .4byte gText_PkmnTrappedInVortex - .4byte gText_PkmnWrappedBy - .4byte gText_PkmnClamped - .4byte gText_PkmnHurtBy - .4byte gText_PkmnFreedFrom - .4byte gText_PkmnCrashed - .4byte gText_PkmnShroudedInMist - .4byte gText_PkmnProtectedByMist - .4byte gText_PkmnGettingPumped - .4byte gText_PkmnHitWithRecoil - .4byte gText_PkmnProtectedItself2 - .4byte gText_PkmnBuffetedBySandstorm - .4byte gText_PkmnPeltedByHail - .4byte gText_PkmnSeeded - .4byte gText_PkmnEvadedAttack - .4byte gText_PkmnSappedByLeechSeed - .4byte gText_PkmnFastAsleep - .4byte gText_PkmnWokeUp - .4byte gText_PkmnUproarKeptAwake - .4byte gText_PkmnWokeUpInUproar - .4byte gText_PkmnCausedUproar - .4byte gText_PkmnMakingUproar - .4byte gText_PkmnCalmedDown - .4byte gText_PkmnCantSleepInUproar - .4byte gText_PkmnStockpiled - .4byte gText_PkmnCantStockpile - .4byte gText_PkmnCantSleepInUproar2 - .4byte gText_UproarKeptPkmnAwake - .4byte gText_PkmnStayedAwakeUsing - .4byte gText_PkmnStoringEnergy - .4byte gText_PkmnUnleashedEnergy - .4byte gText_PkmnFatigueConfusion - .4byte gText_PkmnPickedUpItem - .4byte gText_PkmnUnaffected - .4byte gText_PkmnTransformedInto - .4byte gText_PkmnMadeSubstitute - .4byte gText_PkmnHasSubstitute - .4byte gText_SubstituteDamaged - .4byte gText_PkmnSubstituteFaded - .4byte gText_PkmnMustRecharge - .4byte gText_PkmnRageBuilding - .4byte gText_PkmnMoveWasDisabled - .4byte gText_PkmnMoveIsDisabled - .4byte gText_PkmnMoveDisabledNoMore - .4byte gText_PkmnGotEncore - .4byte gText_PkmnEncoreEnded - .4byte gText_PkmnTookAim - .4byte gText_PkmnSketchedMove - .4byte gText_PkmnTryingToTakeFoe - .4byte gText_PkmnTookFoe - .4byte gText_PkmnReducedPP - .4byte gText_PkmnStoleItem - .4byte gText_PkmnCantEscape - .4byte gText_PkmnFellIntoNightmare - .4byte gText_PkmnLockedInNightmare - .4byte gText_PkmnLaidCurse - .4byte gText_PkmnAfflictedByCurse - .4byte gText_SpikesScattered - .4byte gText_PkmnHurtBySpikes - .4byte gText_PkmnIdentified - .4byte gText_PkmnPerishCountFell - .4byte gText_PkmnBracedItself - .4byte gText_PkmnEnduredHit - .4byte gText_MagnitudeStrength - .4byte gText_PkmnCutHPMaxedAttack - .4byte gText_PkmnCopiedStatChanges - .4byte gText_PkmnGotFree - .4byte gText_PkmnShedLeechSeed - .4byte gText_PkmnBlewAwaySpikes - .4byte gText_PkmnFledFromBattle - .4byte gText_PkmnForesawAttack - .4byte gText_PkmnTookAttack - .4byte gText_PkmnAttack - .4byte gText_PkmnCenterAttention - .4byte gText_PkmnChargingPower - .4byte gText_NaturePowerTurnedInto - .4byte gText_PkmnStatusNormal - .4byte gText_PkmnHasNoMovesLeft - .4byte gText_PkmnSubjectedToTorment - .4byte gText_PkmnCantUseMoveTorment - .4byte gText_PkmnTighteningFocus - .4byte gText_PkmnFellForTaunt - .4byte gText_PkmnCantUseMoveTaunt - .4byte gText_PkmnReadyToHelp - .4byte gText_PkmnSwitchedItems - .4byte gText_PkmnCopiedFoe - .4byte gText_PkmnMadeWish - .4byte gText_PkmnWishCameTrue - .4byte gText_PkmnPlantedRoots - .4byte gText_PkmnAbsorbedNutrients - .4byte gText_PkmnAnchoredItself - .4byte gText_PkmnWasMadeDrowsy - .4byte gText_PkmnKnockedOff - .4byte gText_PkmnSwappedAbilities - .4byte gText_PkmnSealedOpponentMove - .4byte gText_PkmnCantUseMoveSealed - .4byte gText_PkmnWantsGrudge - .4byte gText_PkmnLostPPGrudge - .4byte gText_PkmnShroudedItself - .4byte gText_PkmnMoveBounced - .4byte gText_PkmnWaitsForTarget - .4byte gText_PkmnSnatchedMove - .4byte gText_PkmnMadeItRain - .4byte gText_PkmnRaisedSpeed - .4byte gText_PkmnProtectedBy - .4byte gText_PkmnPreventsUsage - .4byte gText_PkmnRestoredHPUsing - .4byte gText_PkmnChangedTypeWith - .4byte gText_PkmnPreventsParalysisWith - .4byte gText_PkmnPreventsRomanceWith - .4byte gText_PkmnPreventsPoisoningWith - .4byte gText_PkmnPreventsConfusionWith - .4byte gText_PkmnRaisedFirePowerWith - .4byte gText_PkmnAnchorsItselfWith - .4byte gText_PkmnCutsAttackWith - .4byte gText_PkmnPreventsStatLossWith - .4byte gText_PkmnHurtsWith - .4byte gText_PkmnTraced - .4byte gText_StatSharply - .4byte gText_StatRose - .4byte gText_StatHarshly - .4byte gText_StatFell - .4byte gText_PkmnsStatChanged - .4byte gText_PkmnsStatChanged2 - .4byte gText_PkmnsStatChanged3 - .4byte gText_PkmnsStatChanged4 - .4byte gText_CriticalHit - .4byte gText_OneHitKO - .4byte gText_123Poof - .4byte gText_AndEllipsis - .4byte gText_NotVeryEffective - .4byte gText_SuperEffective - .4byte gText_GotAwaySafely - .4byte gText_WildPkmnFled - .4byte gText_NoRunningFromTrainers - .4byte gText_CantEscape - .4byte gText_DontLeaveBirch - .4byte gText_ButNothingHappened - .4byte gText_ButItFailed - .4byte gText_ItHurtConfusion - .4byte gText_MirrorMoveFailed - .4byte gText_StartedToRain - .4byte gText_DownpourStarted - .4byte gText_RainContinues - .4byte gText_DownpourContinues - .4byte gText_RainStopped - .4byte gText_SandstormBrewed - .4byte gText_SandstormRages - .4byte gText_SandstormSubsided - .4byte gText_SunlightGotBright - .4byte gText_SunlightStrong - .4byte gText_SunlightFaded - .4byte gText_StartedHail - .4byte gText_HailContinues - .4byte gText_HailStopped - .4byte gText_FailedToSpitUp - .4byte gText_FailedToSwallow - .4byte gText_WindBecameHeatWave - .4byte gText_StatChangesGone - .4byte gText_CoinsScattered - .4byte gText_TooWeakForSubstitute - .4byte gText_SharedPain - .4byte gText_BellChimed - .4byte gText_FaintInThree - .4byte gText_NoPPLeft - .4byte gText_ButNoPPLeft - .4byte gText_XUsedY - .4byte gText_WallyUsedY - .4byte gText_TrainerBlockedBall - .4byte gText_DontBeAThief - .4byte gText_ItDodgedBall - .4byte gText_YouMissedPkmn - .4byte gText_PkmnBrokeFree - .4byte gText_ItAppearedCaught - .4byte gText_AarghAlmostHadIt - .4byte gText_ShootSoClose - .4byte gText_GotchaPkmnCaught - .4byte gText_GotchaPkmnCaught2 - .4byte gText_GiveNicknameCaptured - .4byte gText_PkmnSentToPC - .4byte gText_PkmnDataAddedToDex - .4byte gText_ItIsRaining - .4byte gText_SandstormIsRaging - .4byte gText_CantEscape2 - .4byte gText_PkmnIgnoresAsleep - .4byte gText_PkmnIgnoredOrders - .4byte gText_PkmnBeganToNap - .4byte gText_PkmnLoafing - .4byte gText_PkmnWontObey - .4byte gText_PkmnTurnedAway - .4byte gText_PkmnPretendNotNotice - .4byte gText_EnemyAboutToSwitchPkmn - .4byte gText_CreptCloser - .4byte gText_CantGetCloser - .4byte gText_PkmnWatchingCarefully - .4byte gText_PkmnCuriousAboutX - .4byte gText_PkmnEnthralledByX - .4byte gText_PkmnIgnoredX - .4byte gText_ThrewPokeblockAtPkmn - .4byte gText_OutOfSafariBalls - .4byte gText_PkmnsXCuredParalysis - .4byte gText_PkmnsXCuredPoison - .4byte gText_PkmnsXHealedBurn - .4byte gText_PkmnsXDefrostedIt - .4byte gText_PkmnsXWokeIt - .4byte gText_PkmnsXSnappedOut - .4byte gText_PkmnsXCuredProblem - .4byte gText_PkmnsXRestoredHealth - .4byte gText_PkmnsXRestoredPP - .4byte gText_PkmnsXRestoredStatus - .4byte gText_PkmnsXRestoredHPALittle - .4byte gText_XAllowsOnlyY - .4byte gText_PkmnHungOnWithX - .4byte gText_EmptyString3 - .4byte gText_PkmnsXPreventsBurns - .4byte gText_PkmnsXBlocksY - .4byte gText_PkmnsXRestoredHPALittle2 - .4byte gText_PkmnsXWhippedUpSandstorm - .4byte gText_PkmnsXPreventsYLoss - .4byte gText_PkmnsXInfatuatedY - .4byte gText_PkmnsXMadeYIneffective - .4byte gText_PkmnsXCuredYProblem - .4byte gText_ItSuckedLiquidOoze - .4byte gText_PkmnTransformed - .4byte gText_ElectricityWeakened - .4byte gText_FireWeakened - .4byte gText_PkmnHidUnderwater - .4byte gText_PkmnSprangUp - .4byte gText_HMMovesCantBeForgotten - .4byte gText_XFoundOneY - .4byte gText_PlayerDefeatedXY - .4byte gText_SoothingAroma - .4byte gText_ItemsCantBeUsedNow - .4byte gText_ForXCommaYZ - .4byte gText_UsingXTheYOfZN - .4byte gText_PkmnUsedXToGetPumped - .4byte gText_PkmnsXMadeYUseless - .4byte gText_PkmnTrappedBySandTomb - .4byte gText_EmptyString4 - .4byte gText_ABoosted - .4byte gText_PkmnsXIntensifiedSun - .4byte gText_PkmnMakesGroundMiss - .4byte gText_YouThrowABallNowRight - .4byte gText_PkmnsXTookAttack - .4byte gText_PkmnChoseXAsDestiny - .4byte gText_PkmnLostFocus - .4byte gText_UseNextPkmn - .4byte gText_PkmnFledUsingIts - .4byte gText_PkmnFledUsing - .4byte gText_PkmnWasDraggedOut - .4byte gText_PreventedFromWorking - .4byte gText_PkmnsXNormalizedStatus - .4byte gText_XYUsedZ - .4byte gText_BoxIsFull - .4byte gText_PkmnAvoidedAttack - .4byte gText_PkmnsXMadeItIneffective - .4byte gText_PkmnsXPreventsFlinching - .4byte gText_PkmnAlreadyHasBurn - .4byte gText_StatsWontDecrease2 - .4byte gText_PkmnsXBlocksY2 - .4byte gText_PkmnsXWoreOff - .4byte gText_PkmnRaisedDefALittle - .4byte gText_PkmnRaisedSpDefALittle - .4byte gText_TheWallShattered - .4byte gText_PkmnsXPreventsYsZ - .4byte gText_PkmnsXCuredItsYProblem - .4byte gText_PkmnCantEscape2 - .4byte gText_PkmnObtainedX - .4byte gText_PkmnObtainedX2 - .4byte gText_PkmnObtainedXYObtainedZ - .4byte gText_ButNoEffect - .4byte gText_PkmnsXHadNoEffectOnY - .4byte gText_TwoEnemiesDefeated - .4byte gText_String48 - .4byte gText_PkmnIncapableOfPower - .4byte gText_GlintAppearsInEye - .4byte gText_PkmnGettingIntoPosition - .4byte gText_PkmnBeganGrowlingDeeply - .4byte gText_PkmnEagerForMore - .4byte gText_DefeatedOpponentByReferee - .4byte gText_LostToOpponentByReferee - .4byte gText_TiedOpponentByReferee - .4byte gText_QuestionForfeitMatch - .4byte gText_ForfeitedMatch - .4byte gText_PkmnTransferredSomeonesPC - .4byte gText_PkmnTransferredLanettesPC - .4byte gText_PkmnBoxSomeonesPCFull - .4byte gText_PkmnBoxLanettesPCFull - .4byte gText_String37 - .4byte gText_String49 - - .align 2 -gMissStringIds:: @ 85CC834 - .2byte 0x0017, 0x0018, 0x0159, 0x001a, 0x014c - -gUnknown_085CC83E:: @ 85CC83E - .2byte 0x00e2, 0x00e3, 0x0021 - .2byte 0x0112, 0x0165, 0x00e8, 0x00e9, 0x00e5, 0x00ed, 0x00f0, 0x00f3 - .2byte 0x00ee, 0x00f4, 0x0066, 0x0067, 0x00ef, 0x00f5, 0x00ea, 0x00eb - .2byte 0x00ec, 0x0065, 0x0098, 0x00e5, 0x00e5, 0x004e, 0x0160, 0x004d - .2byte 0x0161, 0x004f, 0x0068, 0x0069, 0x001b, 0x006a, 0x0139, 0x0052 - .2byte 0x0053, 0x0070, 0x0071, 0x0073, 0x0074, 0x006c, 0x006e, 0x00f7 - .2byte 0x004c, 0x0075, 0x0076, 0x0077, 0x00d5, 0x00d6, 0x003d, 0x0130 - .2byte 0x0145, 0x0146, 0x00d7, 0x00d8, 0x003e, 0x0130, 0x0054, 0x0055 - .2byte 0x0056, 0x0057, 0x0058, 0x0059, 0x013d, 0x013e, 0x005a, 0x005c - .2byte 0x005b, 0x005d, 0x005b, 0x0148, 0x0061, 0x00e5, 0x0063, 0x00e5 - .2byte 0x007d, 0x00e5, 0x007e, 0x00fb, 0x0028, 0x0029, 0x0037, 0x0038 - .2byte 0x0023, 0x0024, 0x002e, 0x002f, 0x0031, 0x0032, 0x0035, 0x0036 - .2byte 0x0017, 0x007c, 0x0045, 0x0136, 0x002d, 0x0139, 0x013b, 0x013c - .2byte 0x00fd, 0x00fd, 0x00fd, 0x00fd, 0x0142, 0x00a1, 0x014f, 0x0107 - .2byte 0x0108, 0x0109, 0x010a, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110 - .2byte 0x0110, 0x0110, 0x0110, 0x0111, 0x0110, 0x0110, 0x0110, 0x00f1 - .2byte 0x0110, 0x0110, 0x0110, 0x0116, 0x0117, 0x0118, 0x0119, 0x016d - .2byte 0x011b, 0x011c, 0x011e, 0x011f, 0x0120, 0x0128, 0x0123, 0x0126 - .2byte 0x0125, 0x0124, 0x0127, 0x0129, 0x0156, 0x0131, 0x0163, 0x016a - .2byte 0x00c7, 0x0163, 0x016a, 0x00c9, 0x0163, 0x016a, 0x0166, 0x0167 - .2byte 0x0168, 0x00cb, 0x0137, 0x0177, 0x0178, 0x0179, 0x017a - -gTrappingMoves:: @ 85CC982 - .2byte MOVE_BIND, MOVE_WRAP, MOVE_FIRE_SPIN, MOVE_CLAMP, MOVE_WHIRLPOOL, MOVE_SAND_TOMB, 0xffff - -gText_PkmnIsEvolving:: @ 85CC990 - .string "What?\n{STR_VAR_1} is evolving!$" - -gText_CongratsPkmnEvolved:: @ 85CC9A6 - .string "Congratulations! Your {STR_VAR_1}\nevolved into {STR_VAR_2}!{UNKNOWN_A}\p$" - -gText_PkmnStoppedEvolving:: @ 85CC9D3 - .string "Huh? {STR_VAR_1}\nstopped evolving!\p$" - -gText_EllipsisQuestionMark:: @ 85CC9EE - .string "……?\p$" - -gText_WhatWillPkmnDo:: @ 85CC9F3 - .string "What will\n{STRING 18} do?$" - -gText_WhatWillPkmnDo2:: @ 85CCA04 - .string "What will\n{STRING 35} do?$" - -gText_WhatWillWallyDo:: @ 85CCA15 - .string "What will\nWALLY do?$" - -gText_LinkStandby:: @ 85CCA29 - .string "{PAUSE 16}Link standby…$" - -gText_BattleMenu:: @ 85CCA3A - .string "FIGHT{CLEAR_TO 56}BAG\nPOKéMON{CLEAR_TO 56}RUN$" - -gText_SafariZoneMenu:: @ 85CCA54 - .string "BALL{CLEAR_TO 56}{POKEBLOCK}\nGO NEAR{CLEAR_TO 56}RUN$" - -gText_MoveInterfacePP:: @ 85CCA6F - .string "PP $" - -gText_MoveInterfaceType:: @ 85CCA73 - .string "TYPE/$" - - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}PP\nTYPE/$" - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}$" - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Which move should\nbe forgotten?$" - -gText_BattleYesNoChoice:: @ 85CCABB - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Yes\nNo$" - -gText_BattleSwitchWhich:: @ 85CCACA - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Switch\nwhich?$" - - .string "{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}$" - .string "{UP_ARROW}$" - .string "{ESCAPE 4}$" - .string "-$" - -gText_HP:: @ 85CCAF1 - .string "HP$" - -gText_Attack:: @ 85CCAF4 - .string "ATTACK$" - -gText_Defense:: @ 85CCAFB - .string "DEFENSE$" - -gText_SpAtk:: @ 85CCB03 - .string "SP. ATK$" - -gText_SpDef:: @ 85CCB0B - .string "SP. DEF$" - - .align 2 - .4byte gText_HP - .4byte gText_SpAtk - .4byte gText_Attack - .4byte gText_SpDef - .4byte gText_Defense - .4byte gText_Speed - -gText_SafariBalls:: @ 85CCB2C - .string "{HIGHLIGHT DARK_GREY}SAFARI BALLS$" - -gText_SafariBallLeft:: @ 85CCB3C - .string "{HIGHLIGHT DARK_GREY}Left: $" - .string "{HIGHLIGHT DARK_GREY}$" -gText_Sleep:: - .string "sleep$" -gText_Poison:: - .string "poison$" -gText_Burn:: - .string "burn$" -gText_Paralysis:: - .string "paralysis$" -gText_Ice:: - .string "ice$" -gText_Confusion:: - .string "confusion$" -gText_Love:: - .string "love$" - -gText_SpaceAndSpace:: @ 85CCB79 - .string " and $" - -gText_CommaSpace:: @ 85CCB7F - .string ", $" - -gText_Space2:: @ 85CCB82 - .string " $" - -gText_ScrollTextUp:: @ 85CCB84 - .string "\l$" - -gText_NewLine:: @ 85CCB86 - .string "\n$" - -gText_Are:: @ 85CCB88 - .string "are$" - -gText_Are2:: @ 85CCB8C - .string "are$" - -gText_BadEgg:: @ 85CCB90 - .string "Bad EGG$" - -gText_BattleWallyName:: @ 85CCB98 - .string "WALLY$" - -gText_Win:: @ 85CCB9E - .string "{HIGHLIGHT TRANSPARENT}Win$" - -gText_Loss:: @ 85CCBA5 - .string "{HIGHLIGHT TRANSPARENT}Loss$" - -gText_Draw:: @ 85CCBAD - .string "{HIGHLIGHT TRANSPARENT}Draw$" - -gText_SpaceIs:: @ 85CCBB5 - .string " is$" - -gText_ApostropheS:: @ 85CCBB9 - .string "’s$" - -gText_UnknownMoveTypes:: @ 85CCBBC - .string "a NORMAL move$ " - .string "a FIGHTING move$ " - .string "a FLYING move$ " - .string "a POISON move$ " - .string "a GROUND move$ " - .string "a ROCK move$ " - .string "a BUG move$ " - .string "a GHOST move$ " - .string "a STEEL move$ " - .string "a ??? move$ " - .string "a FIRE move$ " - .string "a WATER move$ " - .string "a GRASS move$ " - .string "an ELECTRIC move$" - .string "a PSYCHIC move$ " - .string "an ICE move$ " - .string "a DRAGON move$ " - .string "a DARK move$ " - -gText_BattleTourney:: @ 85CCCEE - .string "BATTLE TOURNEY$" - -gText_Round1:: @ 85CCCFD - .string "Round 1$" - -gText_Round2:: @ 85CCD05 - .string "Round 2$" - -gText_Semifinal:: @ 85CCC0D - .string "Semifinal$" - -gText_Final:: @ 85CCD17 - .string "Final$" - - .align 2 -gRoundsStringTable:: @ 85CCD20 - .4byte gText_Round1 - .4byte gText_Round2 - .4byte gText_Semifinal - .4byte gText_Final - - .string "The great new hope!\p$" - .string "Will the championship dream come true?!\p$" - .string "A former CHAMPION!\p$" - .string "The previous CHAMPION!\p$" - .string "The unbeaten CHAMPION!\p$" - -gText_JapaneseHonorific:: @ 85CCDB2 - .string "{KUN}$" - -gText_Vs:: @ 85CCDB5 - .string "VS$" - -gText_RivalBuffer:: @ 85CCDB8 - .string "{RIVAL}$" - -gText_Mind:: @ 85CCDBB - .string "Mind$" - -gText_Skill:: @ 85CCDC0 - .string "Skill$" - -gText_Body:: @ 85CCDC6 - .string "Body$" - -gText_Judgement:: @ 85CCDCB - .string "{STRING 0}{CLEAR 13}Judgment{CLEAR 13}{PLAYER}$" - -gText_TwoTrainersSentPkmn:: @ 85CCDDE - .string "{STRING 28} {STRING 29} sent\nout {RIVAL}!\p{STRING 46} {STRING 47} sent\nout {AQUA}!$" - -gText_TrainerXYSentOutPkmn3:: @ 85CCE04 - .string "{STRING 46} {STRING 47} sent\nout {STRING 0}!$" - -gText_TwoTrainersWantToBattle2:: @ 85CCE17 - .string "{STRING 28} {STRING 29} and\n{STRING 46} {STRING 47}\lwant to battle!\p$" - -gText_TrainerXYSentOutZGoN:: @ 85CCE38 - .string "{STRING 50} {STRING 51} sent\nout {VERSION}!\lGo, {STRING 5}!$" - -gText_TwoEnemiesDefeated:: @ 85CCE53 - .string "{STRING 28} {STRING 29} and\n{STRING 46} {STRING 47}\lwere defeated!\p$" - -gText_String48:: @ 85CCE73 - .string "{STRING 48}$" - -gText_PkmnIncapableOfPower:: @ 85CCE76 - .string "{STRING 15} appears incapable\nof using its power!$" - -gText_GlintAppearsInEye:: @ 85CCE9F - .string "A glint appears in\n{STRING 19}’s eyes!$" - -gText_PkmnGettingIntoPosition:: @ 85CCEBD - .string "{STRING 19} is getting into\nposition!$" - -gText_PkmnBeganGrowlingDeeply:: @ 85CCEDA - .string "{STRING 19} began growling deeply!$" - -gText_PkmnEagerForMore:: @ 85CCEF4 - .string "{STRING 19} is eager for more!$" - -gUnknown_085CCF0A:: @ 85CCF0A - .2byte 0x016E, 0x016F, 0x0170, 0x0171 - -gText_RefIfNothingIsDecided:: @ 85CCF12 - .string "REFEREE: If nothing is decided in\n3 turns, we will go to judging!$" - -gText_RefThatsIt:: @ 85CCF54 - .string "REFEREE: That’s it! We will now go to\njudging to determine the winner!$" - -gText_RefJudgeMind:: @ 85CCF9B - .string "REFEREE: Judging category 1, Mind!\nThe POKéMON showing the most guts!\p$" - -gText_RefJudgeSkill:: @ 85CCFE2 - .string "REFEREE: Judging category 2, Skill!\nThe POKéMON using moves the best!\p$" - -gText_RefJudgeBody:: @ 85CD029 - .string "REFEREE: Judging category 3, Body!\nThe POKéMON with the most vitality!\p$" - -gText_RefJudgement1:: @ 85CD071 - .string "REFEREE: Judgment: {STRING 0} to {PLAYER}!\nThe winner is {STRING 35}’s {STRING 5}!\p$" - -gText_RefJudgement2:: @ 85CD0A6 - .string "REFEREE: Judgment: {STRING 0} to {PLAYER}!\nThe winner is {STRING 29}’s {RIVAL}!\p$" - -gText_RefJudgement3:: @ 85CD0DB - .string "REFEREE: Judgment: 3 to 3!\nWe have a draw!\p$" - -gText_DefeatedOpponentByReferee:: @ 85CD107 - .string "{STRING 5} defeated the opponent\n{RIVAL} in a REFEREE’s decision!$" - -gText_LostToOpponentByReferee:: @ 85CD13C - .string "{STRING 5} lost to the opponent\n{RIVAL} in a REFEREE’s decision!$" - -gText_TiedOpponentByReferee:: @ 85CD170 - .string "{STRING 5} tied the opponent\n{RIVAL} in a REFEREE’s decision!$" - -gText_RefCommenceBattle:: @ 85CD1A1 - .string "REFEREE: {STRING 5} VS {RIVAL}!\nCommence battling!$" - - .align 2 -gRefereeStringsTable:: @ 85CD1C8 - .4byte gText_RefIfNothingIsDecided - .4byte gText_RefThatsIt - .4byte gText_RefJudgeMind - .4byte gText_RefJudgeSkill - .4byte gText_RefJudgeBody - .4byte gText_RefJudgement1 - .4byte gText_RefJudgement2 - .4byte gText_RefJudgement3 - .4byte gText_RefCommenceBattle - -gText_QuestionForfeitMatch:: @ 85CD1EC - .string "Would you like to forfeit the match\nand quit now?$" - -gText_ForfeitedMatch:: @ 85CD21E - .string "{STRING 35} forfeited the match!$" - -gText_String37:: @ 85CD236 - .string "{STRING 37}$" - -gText_String49:: @ 85CD239 - .string "{STRING 49}$" - - .string "{PLAY_SE 0x0011}{STRING 28} {STRING 29} fled!$" - -gText_PlayerLostAgainst2:: @ 85CD24C - .string "Player lost against\n{STRING 28} {STRING 29}!$" - -gText_PlayerBattledToDraw2:: @ 85CD267 - .string "Player battled to a draw against\n{STRING 28} {STRING 29}!$" - -gText_RecordBattleToPass:: @ 85CD28F - .string "Would you like to record your battle\non your FRONTIER PASS?$" - -gText_BattleRecordedOnPass:: @ 85CD2CB - .string "{STRING 35}’s battle result was recorded\non the FRONTIER PASS.$" - -gText_TrainerWantsToBattle:: @ 85CD301 - .string "{STRING 32}\nwants to battle!{PAUSE 49}$" - -gText_TwoTrainersWantToBattle3:: @ 85CD318 - .string "{STRING 32} and {STRING 33}\nwant to battle!{PAUSE 49}$" - - .align 1 -gUnknown_085CD336:: @ 85CD336 - .2byte 0x000e, 0x0046, 0x004a, 0x006a, 0x006b, 0x006c, 0x006e, 0x006f - .2byte 0x0079, 0x007b, 0x007d, 0x0094, 0x0096, 0x0097, 0x009b, 0x009c - .2byte 0x009f, 0x00a4, 0x00aa, 0x00ad, 0x00b6, 0x00bf, 0x00cb, 0x00cd - .2byte 0x00cf, 0x00d6, 0x00ed, 0x00f4, 0x00f5, 0x010a, 0x010f, 0x0112 - .2byte 0x0113, 0x011a, 0x0125, 0x0136, 0x013c, 0x0140, 0x0149, 0x014a - .2byte 0x014e, 0x0154, 0x0000, 0x0064, 0x0069, 0x0075, 0x0085, 0x00af - .2byte 0x010d, 0x0153, 0x0000, 0x0060, 0x0061, 0x0066, 0x0068, 0x008c - .2byte 0x0090, 0x00a5, 0x00b8, 0x010c, 0x0111, 0x0118, 0x0119, 0x0129 - .2byte 0x012a, 0x012c, 0x0139, 0x015a, 0x015b, 0x0000, 0x0001, 0x000a - .2byte 0x000b, 0x0011, 0x0013, 0x0014, 0x0015, 0x001e, 0x0023, 0x0025 - .2byte 0x0027, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0040, 0x0047 - .2byte 0x0051, 0x0059, 0x005a, 0x005b, 0x005c, 0x0067, 0x0076, 0x007a - .2byte 0x0080, 0x0084, 0x008b, 0x0091, 0x00a3, 0x00a9, 0x00ab, 0x00ae - .2byte 0x00c1, 0x00cc, 0x00d5, 0x00f9, 0x00fd, 0x00ff, 0x0100, 0x0103 - .2byte 0x0104, 0x0110, 0x011b, 0x0141, 0x0157, 0x0000 - -gUnknown_085CD422:: @ 85CD422 - .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff - - .align 2 -gUnknown_085CD42C:: @ 85CD42C - .2byte 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101 - .2byte 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100 - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000 - .2byte 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102 - .2byte 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100 - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100 - .2byte 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x01ff - .2byte 0x0000, 0x0100, 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100 - .2byte 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100, 0x0600, 0x0000 - - .align 2 -gUnknown_085CD54C:: @ 85C54C - .2byte 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101 - .2byte 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100 - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000 - .2byte 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102 - .2byte 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100 - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100 - .2byte 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0100, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00 - .2byte 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000 - .2byte 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff - .2byte 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0111, 0x0100, 0x0000, 0x0201 - .2byte 0x0301, 0x0000 - - .align 2 -gUnknown_085CD660:: @ 85CD660 - .4byte gUnknown_085CD42C - .4byte gUnknown_085CD54C - - .align 2 -gUnknown_085CD668:: @ 85CD668 - .byte 0x08, 0x04, 0x01, 0x00 diff --git a/include/battle.h b/include/battle.h index d41702396a..bb61c70433 100644 --- a/include/battle.h +++ b/include/battle.h @@ -604,7 +604,7 @@ struct BattleStruct u8 field_8B; u8 field_8C; u8 field_8D; - u8 field_8E; + u8 stringMoveType; u8 expGetterBank; u8 field_90; u8 field_91; diff --git a/include/battle_message.h b/include/battle_message.h index 3bc7117bb4..1884c9e371 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -206,11 +206,19 @@ u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src); u32 BattleStringExpandPlaceholders(const u8* src, u8* dst); void sub_814F9EC(const u8* text, u8 arg1); -extern u8 gBattleTextBuff1[]; -extern u8 gBattleTextBuff2[]; -extern u8 gBattleTextBuff3[]; -extern u8 gDisplayedStringBattle[]; +#define TEXT_BUFF_ARRAY_COUNT 16 +extern u8 gDisplayedStringBattle[300]; +extern u8 gBattleTextBuff1[TEXT_BUFF_ARRAY_COUNT]; +extern u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT]; +extern u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT]; + +extern const u8* const gStatNamesTable[]; +extern const u8* const gPokeblockWasTooXStringTable[]; extern const u8* const gRefereeStringsTable[]; +extern const u8* const gStatNamesTable2[]; + +extern const u16 gMissStringIds[]; +extern const u16 gTrappingMoves[]; #endif // GUARD_BATTLE_MESSAGE_H diff --git a/include/battle_string_ids.h b/include/battle_string_ids.h new file mode 100644 index 0000000000..546cb2e462 --- /dev/null +++ b/include/battle_string_ids.h @@ -0,0 +1,385 @@ +#ifndef GUARD_BATTLE_STRING_IDS_H +#define GUARD_BATTLE_STRING_IDS_H + +#define BATTLESTRINGS_COUNT 369 + +#define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved + +#define STRINGID_INTROMSG 0 +#define STRINGID_INTROSENDOUT 1 +#define STRINGID_RETURNMON 2 +#define STRINGID_SWITCHINMON 3 +#define STRINGID_USEDMOVE 4 +#define STRINGID_BATTLEEND 5 + +#define STRINGID_TRAINER1LOSETEXT 12 +#define STRINGID_PKMNGAINEDEXP 13 +#define STRINGID_PKMNGREWTOLV 14 +#define STRINGID_PKMNLEARNEDMOVE 15 +#define STRINGID_TRYTOLEARNMOVE1 16 +#define STRINGID_TRYTOLEARNMOVE2 17 +#define STRINGID_TRYTOLEARNMOVE3 18 +#define STRINGID_PKMNFORGOTMOVE 19 +#define STRINGID_STOPLEARNINGMOVE 20 +#define STRINGID_DIDNOTLEARNMOVE 21 +#define STRINGID_PKMNLEARNEDMOVE2 22 +#define STRINGID_ATTACKMISSED 23 +#define STRINGID_PKMNPROTECTEDITSELF 24 +#define STRINGID_STATSWONTINCREASE2 25 +#define STRINGID_AVOIDEDDAMAGE 26 +#define STRINGID_ITDOESNTAFFECT 27 +#define STRINGID_PKMNFAINTED 28 +#define STRINGID_PKMNFAINTED2 29 +#define STRINGID_PLAYERGOTMONEY 30 +#define STRINGID_PLAYERWHITEOUT 31 +#define STRINGID_PLAYERWHITEOUT2 32 +#define STRINGID_PREVENTSESCAPE 33 +#define STRINGID_HITXTIMES 34 +#define STRINGID_PKMNFELLASLEEP 35 +#define STRINGID_PKMNMADESLEEP 36 +#define STRINGID_PKMNALREADYASLEEP 37 +#define STRINGID_PKMNALREADYASLEEP2 38 +#define STRINGID_PKMNWASNTAFFECTED 39 +#define STRINGID_PKMNWASPOISONED 40 +#define STRINGID_PKMNPOISONEDBY 41 +#define STRINGID_PKMNHURTBYPOISON 42 +#define STRINGID_PKMNALREADYPOISONED 43 +#define STRINGID_PKMNBADLYPOISONED 44 +#define STRINGID_PKMNENERGYDRAINED 45 +#define STRINGID_PKMNWASBURNED 46 +#define STRINGID_PKMNBURNEDBY 47 +#define STRINGID_PKMNHURTBYBURN 48 +#define STRINGID_PKMNWASFROZEN 49 +#define STRINGID_PKMNFROZENBY 50 +#define STRINGID_PKMNISFROZEN 51 +#define STRINGID_PKMNWASDEFROSTED 52 +#define STRINGID_PKMNWASDEFROSTED2 53 +#define STRINGID_PKMNWASDEFROSTEDBY 54 +#define STRINGID_PKMNWASPARALYZED 55 +#define STRINGID_PKMNWASPARALYZEDBY 56 +#define STRINGID_PKMNISPARALYZED 57 +#define STRINGID_PKMNISALREADYPARALYZED 58 +#define STRINGID_PKMNHEALEDPARALYSIS 59 +#define STRINGID_PKMNDREAMEATEN 60 +#define STRINGID_STATSWONTINCREASE 61 +#define STRINGID_STATSWONTDECREASE 62 +#define STRINGID_TEAMSTOPPEDWORKING 63 +#define STRINGID_FOESTOPPEDWORKING 64 +#define STRINGID_PKMNISCONFUSED 65 +#define STRINGID_PKMNHEALEDCONFUSION 66 +#define STRINGID_PKMNWASCONFUSED 67 +#define STRINGID_PKMNALREADYCONFUSED 68 +#define STRINGID_PKMNFELLINLOVE 69 +#define STRINGID_PKMNINLOVE 70 +#define STRINGID_PKMNIMMOBILIZEDBYLOVE 71 +#define STRINGID_PKMNBLOWNAWAY 72 +#define STRINGID_PKMNCHANGEDTYPE 73 +#define STRINGID_PKMNFLINCHED 74 +#define STRINGID_PKMNREGAINEDHEALTH 75 +#define STRINGID_PKMNHPFULL 76 +#define STRINGID_PKMNRAISEDSPDEF 77 +#define STRINGID_PKMNRAISEDDEF 78 +#define STRINGID_PKMNCOVEREDBYVEIL 79 +#define STRINGID_PKMNUSEDSAFEGUARD 80 +#define STRINGID_PKMNSAFEGUARDEXPIRED 81 +#define STRINGID_PKMNWENTTOSLEEP 82 +#define STRINGID_PKMNSLEPTHEALTHY 83 +#define STRINGID_PKMNWHIPPEDWHIRLWIND 84 +#define STRINGID_PKMNTOOKSUNLIGHT 85 +#define STRINGID_PKMNLOWEREDHEAD 86 +#define STRINGID_PKMNISGLOWING 87 +#define STRINGID_PKMNFLEWHIGH 88 +#define STRINGID_PKMNDUGHOLE 89 +#define STRINGID_PKMNSQUEEZEDBYBIND 90 +#define STRINGID_PKMNTRAPPEDINVORTEX 91 +#define STRINGID_PKMNWRAPPEDBY 92 +#define STRINGID_PKMNCLAMPED 93 +#define STRINGID_PKMNHURTBY 94 +#define STRINGID_PKMNFREEDFROM 95 +#define STRINGID_PKMNCRASHED 96 +#define STRINGID_PKMNSHROUDEDINMIST 97 +#define STRINGID_PKMNPROTECTEDBYMIST 98 +#define STRINGID_PKMNGETTINGPUMPED 99 +#define STRINGID_PKMNHITWITHRECOIL 100 +#define STRINGID_PKMNPROTECTEDITSELF2 101 +#define STRINGID_PKMNBUFFETEDBYSANDSTORM 102 +#define STRINGID_PKMNPELTEDBYHAIL 103 +#define STRINGID_PKMNSEEDED 104 +#define STRINGID_PKMNEVADEDATTACK 105 +#define STRINGID_PKMNSAPPEDBYLEECHSEED 106 +#define STRINGID_PKMNFASTASLEEP 107 +#define STRINGID_PKMNWOKEUP 108 +#define STRINGID_PKMNUPROARKEPTAWAKE 109 +#define STRINGID_PKMNWOKEUPINUPROAR 110 +#define STRINGID_PKMNCAUSEDUPROAR 111 +#define STRINGID_PKMNMAKINGUPROAR 112 +#define STRINGID_PKMNCALMEDDOWN 113 +#define STRINGID_PKMNCANTSLEEPINUPROAR 114 +#define STRINGID_PKMNSTOCKPILED 115 +#define STRINGID_PKMNCANTSTOCKPILE 116 +#define STRINGID_PKMNCANTSLEEPINUPROAR2 117 +#define STRINGID_UPROARKEPTPKMNAWAKE 118 +#define STRINGID_PKMNSTAYEDAWAKEUSING 119 +#define STRINGID_PKMNSTORINGENERGY 120 +#define STRINGID_PKMNUNLEASHEDENERGY 121 +#define STRINGID_PKMNFATIGUECONFUSION 122 +#define STRINGID_PKMNPICKEDUPITEM 123 +#define STRINGID_PKMNUNAFFECTED 124 +#define STRINGID_PKMNTRANSFORMEDINTO 125 +#define STRINGID_PKMNMADESUBSTITUTE 126 +#define STRINGID_PKMNHASSUBSTITUTE 127 +#define STRINGID_SUBSTITUTEDAMAGED 128 +#define STRINGID_PKMNSUBSTITUTEFADED 129 +#define STRINGID_PKMNMUSTRECHARGE 130 +#define STRINGID_PKMNRAGEBUILDING 131 +#define STRINGID_PKMNMOVEWASDISABLED 132 +#define STRINGID_PKMNMOVEISDISABLED 133 +#define STRINGID_PKMNMOVEDISABLEDNOMORE 134 +#define STRINGID_PKMNGOTENCORE 135 +#define STRINGID_PKMNENCOREENDED 136 +#define STRINGID_PKMNTOOKAIM 137 +#define STRINGID_PKMNSKETCHEDMOVE 138 +#define STRINGID_PKMNTRYINGTOTAKEFOE 139 +#define STRINGID_PKMNTOOKFOE 140 +#define STRINGID_PKMNREDUCEDPP 141 +#define STRINGID_PKMNSTOLEITEM 142 +#define STRINGID_PKMNCANTESCAPE 143 +#define STRINGID_PKMNFELLINTONIGHTMARE 144 +#define STRINGID_PKMNLOCKEDINNIGHTMARE 145 +#define STRINGID_PKMNLAIDCURSE 146 +#define STRINGID_PKMNAFFLICTEDBYCURSE 147 +#define STRINGID_SPIKESSCATTERED 148 +#define STRINGID_PKMNHURTBYSPIKES 149 +#define STRINGID_PKMNIDENTIFIED 150 +#define STRINGID_PKMNPERISHCOUNTFELL 151 +#define STRINGID_PKMNBRACEDITSELF 152 +#define STRINGID_PKMNENDUREDHIT 153 +#define STRINGID_MAGNITUDESTRENGTH 154 +#define STRINGID_PKMNCUTHPMAXEDATTACK 155 +#define STRINGID_PKMNCOPIEDSTATCHANGES 156 +#define STRINGID_PKMNGOTFREE 157 +#define STRINGID_PKMNSHEDLEECHSEED 158 +#define STRINGID_PKMNBLEWAWAYSPIKES 159 +#define STRINGID_PKMNFLEDFROMBATTLE 160 +#define STRINGID_PKMNFORESAWATTACK 161 +#define STRINGID_PKMNTOOKATTACK 162 +#define STRINGID_PKMNATTACK 163 +#define STRINGID_PKMNCENTERATTENTION 164 +#define STRINGID_PKMNCHARGINGPOWER 165 +#define STRINGID_NATUREPOWERTURNEDINTO 166 +#define STRINGID_PKMNSTATUSNORMAL 167 +#define STRINGID_PKMNHASNOMOVESLEFT 168 +#define STRINGID_PKMNSUBJECTEDTOTORMENT 169 +#define STRINGID_PKMNCANTUSEMOVETORMENT 170 +#define STRINGID_PKMNTIGHTENINGFOCUS 171 +#define STRINGID_PKMNFELLFORTAUNT 172 +#define STRINGID_PKMNCANTUSEMOVETAUNT 173 +#define STRINGID_PKMNREADYTOHELP 174 +#define STRINGID_PKMNSWITCHEDITEMS 175 +#define STRINGID_PKMNCOPIEDFOE 176 +#define STRINGID_PKMNMADEWISH 177 +#define STRINGID_PKMNWISHCAMETRUE 178 +#define STRINGID_PKMNPLANTEDROOTS 179 +#define STRINGID_PKMNABSORBEDNUTRIENTS 180 +#define STRINGID_PKMNANCHOREDITSELF 181 +#define STRINGID_PKMNWASMADEDROWSY 182 +#define STRINGID_PKMNKNOCKEDOFF 183 +#define STRINGID_PKMNSWAPPEDABILITIES 184 +#define STRINGID_PKMNSEALEDOPPONENTMOVE 185 +#define STRINGID_PKMNCANTUSEMOVESEALED 186 +#define STRINGID_PKMNWANTSGRUDGE 187 +#define STRINGID_PKMNLOSTPPGRUDGE 188 +#define STRINGID_PKMNSHROUDEDITSELF 189 +#define STRINGID_PKMNMOVEBOUNCED 190 +#define STRINGID_PKMNWAITSFORTARGET 191 +#define STRINGID_PKMNSNATCHEDMOVE 192 +#define STRINGID_PKMNMADEITRAIN 193 +#define STRINGID_PKMNRAISEDSPEED 194 +#define STRINGID_PKMNPROTECTEDBY 195 +#define STRINGID_PKMNPREVENTSUSAGE 196 +#define STRINGID_PKMNRESTOREDHPUSING 197 +#define STRINGID_PKMNCHANGEDTYPEWITH 198 +#define STRINGID_PKMNPREVENTSPARALYSISWITH 199 +#define STRINGID_PKMNPREVENTSROMANCEWITH 200 +#define STRINGID_PKMNPREVENTSPOISONINGWITH 201 +#define STRINGID_PKMNPREVENTSCONFUSIONWITH 202 +#define STRINGID_PKMNRAISEDFIREPOWERWITH 203 +#define STRINGID_PKMNANCHORSITSELFWITH 204 +#define STRINGID_PKMNCUTSATTACKWITH 205 +#define STRINGID_PKMNPREVENTSSTATLOSSWITH 206 +#define STRINGID_PKMNHURTSWITH 207 +#define STRINGID_PKMNTRACED 208 +#define STRINGID_STATSHARPLY 209 +#define STRINGID_STATROSE 210 +#define STRINGID_STATHARSHLY 211 +#define STRINGID_STATFELL 212 +#define STRINGID_PKMNSSTATCHANGED 213 +#define STRINGID_PKMNSSTATCHANGED2 214 +#define STRINGID_PKMNSSTATCHANGED3 215 +#define STRINGID_PKMNSSTATCHANGED4 216 +#define STRINGID_CRITICALHIT 217 +#define STRINGID_ONEHITKO 218 +#define STRINGID_123POOF 219 +#define STRINGID_ANDELLIPSIS 220 +#define STRINGID_NOTVERYEFFECTIVE 221 +#define STRINGID_SUPEREFFECTIVE 222 +#define STRINGID_GOTAWAYSAFELY 223 +#define STRINGID_WILDPKMNFLED 224 +#define STRINGID_NORUNNINGFROMTRAINERS 225 +#define STRINGID_CANTESCAPE 226 +#define STRINGID_DONTLEAVEBIRCH 227 +#define STRINGID_BUTNOTHINGHAPPENED 228 +#define STRINGID_BUTITFAILED 229 +#define STRINGID_ITHURTCONFUSION 230 +#define STRINGID_MIRRORMOVEFAILED 231 +#define STRINGID_STARTEDTORAIN 232 +#define STRINGID_DOWNPOURSTARTED 233 +#define STRINGID_RAINCONTINUES 234 +#define STRINGID_DOWNPOURCONTINUES 235 +#define STRINGID_RAINSTOPPED 236 +#define STRINGID_SANDSTORMBREWED 237 +#define STRINGID_SANDSTORMRAGES 238 +#define STRINGID_SANDSTORMSUBSIDED 239 +#define STRINGID_SUNLIGHTGOTBRIGHT 240 +#define STRINGID_SUNLIGHTSTRONG 241 +#define STRINGID_SUNLIGHTFADED 242 +#define STRINGID_STARTEDHAIL 243 +#define STRINGID_HAILCONTINUES 244 +#define STRINGID_HAILSTOPPED 245 +#define STRINGID_FAILEDTOSPITUP 246 +#define STRINGID_FAILEDTOSWALLOW 247 +#define STRINGID_WINDBECAMEHEATWAVE 248 +#define STRINGID_STATCHANGESGONE 249 +#define STRINGID_COINSSCATTERED 250 +#define STRINGID_TOOWEAKFORSUBSTITUTE 251 +#define STRINGID_SHAREDPAIN 252 +#define STRINGID_BELLCHIMED 253 +#define STRINGID_FAINTINTHREE 254 +#define STRINGID_NOPPLEFT 255 +#define STRINGID_BUTNOPPLEFT 256 +#define STRINGID_PLAYERUSEDITEM 257 +#define STRINGID_WALLYUSEDITEM 258 +#define STRINGID_TRAINERBLOCKEDBALL 259 +#define STRINGID_DONTBEATHIEF 260 +#define STRINGID_ITDODGEDBALL 261 +#define STRINGID_YOUMISSEDPKMN 262 +#define STRINGID_PKMNBROKEFREE 263 +#define STRINGID_ITAPPEAREDCAUGHT 264 +#define STRINGID_AARGHALMOSTHADIT 265 +#define STRINGID_SHOOTSOCLOSE 266 +#define STRINGID_GOTCHAPKMNCAUGHT 267 +#define STRINGID_GOTCHAPKMNCAUGHT2 268 +#define STRINGID_GIVENICKNAMECAPTURED 269 +#define STRINGID_PKMNSENTTOPC 270 +#define STRINGID_PKMNDATAADDEDTODEX 271 +#define STRINGID_ITISRAINING 272 +#define STRINGID_SANDSTORMISRAGING 273 +#define STRINGID_CANTESCAPE2 274 +#define STRINGID_PKMNIGNORESASLEEP 275 +#define STRINGID_PKMNIGNOREDORDERS 276 +#define STRINGID_PKMNBEGANTONAP 277 +#define STRINGID_PKMNLOAFING 278 +#define STRINGID_PKMNWONTOBEY 279 +#define STRINGID_PKMNTURNEDAWAY 280 +#define STRINGID_PKMNPRETENDNOTNOTICE 281 +#define STRINGID_ENEMYABOUTTOSWITCHPKMN 282 +#define STRINGID_CREPTCLOSER 283 +#define STRINGID_CANTGETCLOSER 284 +#define STRINGID_PKMNWATCHINGCAREFULLY 285 +#define STRINGID_PKMNCURIOUSABOUTX 286 +#define STRINGID_PKMNENTHRALLEDBYX 287 +#define STRINGID_PKMNIGNOREDX 288 +#define STRINGID_THREWPOKEBLOCKATPKMN 289 +#define STRINGID_OUTOFSAFARIBALLS 290 +#define STRINGID_PKMNSITEMCUREDPARALYSIS 291 +#define STRINGID_PKMNSITEMCUREDPOISON 292 +#define STRINGID_PKMNSITEMHEALEDBURN 293 +#define STRINGID_PKMNSITEMDEFROSTEDIT 294 +#define STRINGID_PKMNSITEMWOKEIT 295 +#define STRINGID_PKMNSITEMSNAPPEDOUT 296 +#define STRINGID_PKMNSITEMCUREDPROBLEM 297 +#define STRINGID_PKMNSITEMRESTOREDHEALTH 298 +#define STRINGID_PKMNSITEMRESTOREDPP 299 +#define STRINGID_PKMNSITEMRESTOREDSTATUS 300 +#define STRINGID_PKMNSITEMRESTOREDHPALITTLE 301 +#define STRINGID_ITEMALLOWSONLYYMOVE 302 +#define STRINGID_PKMNHUNGONWITHX 303 +#define STRINGID_EMPTYSTRING3 304 +#define STRINGID_PKMNSXPREVENTSBURNS 305 +#define STRINGID_PKMNSXBLOCKSY 306 +#define STRINGID_PKMNSXRESTOREDHPALITTLE2 307 +#define STRINGID_PKMNSXWHIPPEDUPSANDSTORM 308 +#define STRINGID_PKMNSXPREVENTSYLOSS 309 +#define STRINGID_PKMNSXINFATUATEDY 310 +#define STRINGID_PKMNSXMADEYINEFFECTIVE 311 +#define STRINGID_PKMNSXCUREDYPROBLEM 312 +#define STRINGID_ITSUCKEDLIQUIDOOZE 313 +#define STRINGID_PKMNTRANSFORMED 314 +#define STRINGID_ELECTRICITYWEAKENED 315 +#define STRINGID_FIREWEAKENED 316 +#define STRINGID_PKMNHIDUNDERWATER 317 +#define STRINGID_PKMNSPRANGUP 318 +#define STRINGID_HMMOVESCANTBEFORGOTTEN 319 +#define STRINGID_XFOUNDONEY 320 +#define STRINGID_PLAYERDEFEATEDTRAINER1 321 +#define STRINGID_SOOTHINGAROMA 322 +#define STRINGID_ITEMSCANTBEUSEDNOW 323 +#define STRINGID_FORXCOMMAYZ 324 +#define STRINGID_USINGXTHEYOFZN 325 +#define STRINGID_PKMNUSEDXTOGETPUMPED 326 +#define STRINGID_PKMNSXMADEYUSELESS 327 +#define STRINGID_PKMNTRAPPEDBYSANDTOMB 328 +#define STRINGID_EMPTYSTRING4 329 +#define STRINGID_ABOOSTED 330 +#define STRINGID_PKMNSXINTENSIFIEDSUN 331 +#define STRINGID_PKMNMAKESGROUNDMISS 332 +#define STRINGID_YOUTHROWABALLNOWRIGHT 333 +#define STRINGID_PKMNSXTOOKATTACK 334 +#define STRINGID_PKMNCHOSEXASDESTINY 335 +#define STRINGID_PKMNLOSTFOCUS 336 +#define STRINGID_USENEXTPKMN 337 +#define STRINGID_PKMNFLEDUSINGITS 338 +#define STRINGID_PKMNFLEDUSING 339 +#define STRINGID_PKMNWASDRAGGEDOUT 340 +#define STRINGID_PREVENTEDFROMWORKING 341 +#define STRINGID_PKMNSITEMNORMALIZEDSTATUS 342 +#define STRINGID_TRAINER1USEDITEM 343 +#define STRINGID_BOXISFULL 344 +#define STRINGID_PKMNAVOIDEDATTACK 345 +#define STRINGID_PKMNSXMADEITINEFFECTIVE 346 +#define STRINGID_PKMNSXPREVENTSFLINCHING 347 +#define STRINGID_PKMNALREADYHASBURN 348 +#define STRINGID_STATSWONTDECREASE2 349 +#define STRINGID_PKMNSXBLOCKSY2 350 +#define STRINGID_PKMNSXWOREOFF 351 +#define STRINGID_PKMNRAISEDDEFALITTLE 352 +#define STRINGID_PKMNRAISEDSPDEFALITTLE 353 +#define STRINGID_THEWALLSHATTERED 354 +#define STRINGID_PKMNSXPREVENTSYSZ 355 +#define STRINGID_PKMNSXCUREDITSYPROBLEM 356 +#define STRINGID_PKMNCANTESCAPE2 357 +#define STRINGID_PKMNOBTAINEDX 358 +#define STRINGID_PKMNOBTAINEDX2 359 +#define STRINGID_PKMNOBTAINEDXYOBTAINEDZ 360 +#define STRINGID_BUTNOEFFECT 361 +#define STRINGID_PKMNSXHADNOEFFECTONY 362 +#define STRINGID_TWOENEMIESDEFEATED 363 +#define STRINGID_TRAINER2LOSETEXT 364 +#define STRINGID_PKMNINCAPABLEOFPOWER 365 +#define STRINGID_GLINTAPPEARSINEYE 366 +#define STRINGID_PKMNGETTINGINTOPOSITION 367 +#define STRINGID_PKMNBEGANGROWLINGDEEPLY 368 +#define STRINGID_PKMNEAGERFORMORE 369 +#define STRINGID_DEFEATEDOPPONENTBYREFEREE 370 +#define STRINGID_LOSTTOOPPONENTBYREFEREE 371 +#define STRINGID_TIEDOPPONENTBYREFEREE 372 +#define STRINGID_QUESTIONFORFEITMATCH 373 +#define STRINGID_FORFEITEDMATCH 374 +#define STRINGID_PKMNTRANSFERREDSOMEONESPC 375 +#define STRINGID_PKMNTRANSFERREDLANETTESPC 376 +#define STRINGID_PKMNBOXSOMEONESPCFULL 377 +#define STRINGID_PKMNBOXLANETTESPCFULL 378 +#define STRINGID_TRAINER1WINTEXT 379 +#define STRINGID_TRAINER2WINTEXT 380 + +#endif // GUARD_BATTLE_STRING_IDS_H diff --git a/ld_script.txt b/ld_script.txt index de6ba62f15..20ec4d145f 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -190,6 +190,7 @@ SECTIONS { asm/fldeff_strength.o(.text); asm/battle_transition.o(.text); asm/battle_controller_linkpartner.o(.text); + src/battle_message.o(.text); asm/battle_message.o(.text); asm/cable_car.o(.text); asm/math_util.o(.text); @@ -411,7 +412,7 @@ SECTIONS { src/battle_ai_script_commands.o(.rodata); data/data4.o(.rodata); data/battle_controller_link_partner.o(.rodata); - data/battle_message.o(.rodata); + src/battle_message.o(.rodata); data/cable_car.o(.rodata); data/save.o(.rodata); data/field_effect_helpers.o(.rodata); diff --git a/src/battle_2.c b/src/battle_2.c index fd7cf68630..0fc7e8ffd8 100644 --- a/src/battle_2.c +++ b/src/battle_2.c @@ -41,6 +41,7 @@ #include "evolution_scene.h" #include "roamer.h" #include "safari_zone.h" +#include "battle_string_ids.h" struct UnknownStruct6 { @@ -3299,7 +3300,7 @@ static void BattleIntroPrintTrainerWantsToBattle(void) if (gBattleExecBuffer == 0) { gActiveBank = GetBankByIdentity(IDENTITY_OPPONENT_MON1); - PrepareStringBattle(0, gActiveBank); + PrepareStringBattle(STRINGID_INTROMSG, gActiveBank); gBattleMainFunc = BattleIntroPrintOpponentSendsOut; } } @@ -3309,7 +3310,7 @@ static void BattleIntroPrintWildMonAttacked(void) if (gBattleExecBuffer == 0) { gBattleMainFunc = BattleIntroPrintPlayerSendsOut; - PrepareStringBattle(0, 0); + PrepareStringBattle(STRINGID_INTROMSG, 0); } } @@ -3332,7 +3333,7 @@ static void BattleIntroPrintOpponentSendsOut(void) else identity = IDENTITY_OPPONENT_MON1; - PrepareStringBattle(1, GetBankByIdentity(identity)); + PrepareStringBattle(STRINGID_INTROSENDOUT, GetBankByIdentity(identity)); gBattleMainFunc = BattleIntroOpponent1SendsOutMonAnimation; } @@ -3535,7 +3536,7 @@ static void BattleIntroPrintPlayerSendsOut(void) identity = IDENTITY_PLAYER_MON1; if (!(gBattleTypeFlags & BATTLE_TYPE_SAFARI)) - PrepareStringBattle(1, GetBankByIdentity(identity)); + PrepareStringBattle(STRINGID_INTROSENDOUT, GetBankByIdentity(identity)); gBattleMainFunc = BattleIntroPlayer1SendsOutMonAnimation; } diff --git a/src/battle_message.c b/src/battle_message.c new file mode 100644 index 0000000000..aaaf23faed --- /dev/null +++ b/src/battle_message.c @@ -0,0 +1,1428 @@ +#include "global.h" +#include "battle.h" +#include "battle_message.h" +#include "battle_string_ids.h" +#include "moves.h" +#include "text.h" +#include "string_util.h" + +extern u16 gLastUsedItem; +extern u8 gLastUsedAbility; +extern u8 gActiveBank; +extern u8 gBankAttacker; +extern u8 gBankTarget; +extern u8 gStringBank; +extern u8 gEffectBank; +extern u8 gAbilitiesPerBank[BATTLE_BANKS_COUNT]; +extern u32 gBattleTypeFlags; +extern u16 gTrainerBattleOpponent_A; +extern u16 gBattlePartyID[BATTLE_BANKS_COUNT]; +extern struct BattleEnigmaBerry gEnigmaBerries[BATTLE_BANKS_COUNT]; +extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200]; + +extern const u8 gMoveNames[LAST_MOVE_INDEX + 1][13]; + +// strings +extern const u8 gText_PkmnBoxSomeonesPCFull[]; +extern const u8 gText_PkmnBoxLanettesPCFull[]; +extern const u8 gText_PkmnTransferredSomeonesPC[]; +extern const u8 gText_PkmnTransferredLanettesPC[]; + +// this file's functions +void sub_814F8F8(u8 *txtPtr); +void sub_814F950(u8 *txtPtr); + +// ewram variables +EWRAM_DATA u8 gDisplayedStringBattle[300] = {0}; +EWRAM_DATA u8 gBattleTextBuff1[TEXT_BUFF_ARRAY_COUNT] = {0}; +EWRAM_DATA u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT] = {0}; +EWRAM_DATA u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT] = {0}; + +// const rom data + +const u8 gText_Trainer1LoseText[] = _("{B_TRAINER1_LOSE_TEXT}"); +const u8 gText_PkmnGainedEXP[] = _("{B_BUFF1} gained{B_BUFF2}\n{B_BUFF3} EXP. Points!\p"); +const u8 gText_EmptyString4[] = _(""); +const u8 gText_ABoosted[] = _(" a boosted"); +const u8 gText_PkmnGrewToLv[] = _("{B_BUFF1} grew to\nLV. {B_BUFF2}!{UNKNOWN_A}\p"); +const u8 gText_PkmnLearnedMove[] = _("{B_BUFF1} learned\n{B_BUFF2}!{UNKNOWN_A}\p"); +const u8 gText_TryToLearnMove1[] = _("{B_BUFF1} is trying to\nlearn {B_BUFF2}.\p"); +const u8 gText_TryToLearnMove2[] = _("But, {B_BUFF1} can’t learn\nmore than four moves.\p"); +const u8 gText_TryToLearnMove3[] = _("Delete a move to make\nroom for {B_BUFF2}?"); +const u8 gText_PkmnForgotMove[] = _("{B_BUFF1} forgot\n{B_BUFF2}.\p"); +const u8 gText_StopLearningMove[] = _("{PAUSE 32}Stop learning\n{B_BUFF2}?"); +const u8 gText_DidNotLearnMove[] = _("{B_BUFF1} did not learn\n{B_BUFF2}.\p"); +const u8 gText_UseNextPkmn[] = _("Use next POKéMON?"); +const u8 gText_AttackMissed[] = _("{B_ATK_NAME_WITH_PREFIX}’s\nattack missed!"); +const u8 gText_PkmnProtectedItself[] = _("{B_DEF_NAME_WITH_PREFIX}\nprotected itself!"); +const u8 gText_AvoidedDamage[] = _("{B_DEF_NAME_WITH_PREFIX} avoided\ndamage with {B_DEF_ABILITY}!"); +const u8 gText_PkmnMakesGroundMiss[] = _("{B_DEF_NAME_WITH_PREFIX} makes GROUND\nmoves miss with {B_DEF_ABILITY}!"); +const u8 gText_PkmnAvoidedAttack[] = _("{B_DEF_NAME_WITH_PREFIX} avoided\nthe attack!"); +const u8 gText_ItDoesntAffect[] = _("It doesn’t affect\n{B_DEF_NAME_WITH_PREFIX}…"); +const u8 gText_PkmnFainted[] = _("{B_ATK_NAME_WITH_PREFIX}\nfainted!\p"); +const u8 gText_PkmnFainted2[] = _("{B_DEF_NAME_WITH_PREFIX}\nfainted!\p"); +const u8 gText_PlayerGotMoney[] = _("{B_PLAYER_NAME} got ¥{B_BUFF1}\nfor winning!\p"); +const u8 gText_PlayerWhiteout[] = _("{B_PLAYER_NAME} is out of\nusable POKéMON!\p"); +const u8 gText_PlayerWhiteout2[] = _("{B_PLAYER_NAME} whited out!{PAUSE_UNTIL_PRESS}"); +const u8 gText_PreventsEscape[] = _("{B_ACTIVE_NAME_WITH_PREFIX} prevents\nescape with {B_SCR_ACTIVE_ABILITY}!\p"); +const u8 gText_CantEscape2[] = _("Can’t escape!\p"); +const u8 gText_PkmnCantEscape2[] = _("{B_ATK_NAME_WITH_PREFIX} can’t escape!"); +const u8 gText_HitXTimes[] = _("Hit {B_BUFF1} time(s)!"); +const u8 gText_PkmnFellAsleep[] = _("{B_EFF_NAME_WITH_PREFIX}\nfell asleep!"); +const u8 gText_PkmnMadeSleep[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade {B_EFF_NAME_WITH_PREFIX} sleep!"); +const u8 gText_PkmnAlreadyAsleep[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready asleep!"); +const u8 gText_PkmnAlreadyAsleep2[] = _("{B_ATK_NAME_WITH_PREFIX} is\nalready asleep!"); +const u8 gText_PkmnWasntAffected[] = _("{B_DEF_NAME_WITH_PREFIX}\nwasn’t affected!"); +const u8 gText_PkmnWasPoisoned[] = _("{B_EFF_NAME_WITH_PREFIX}\nwas poisoned!"); +const u8 gText_PkmnPoisonedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\npoisoned {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnHurtByPoison[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby poison!"); +const u8 gText_PkmnAlreadyPoisoned[] = _("{B_DEF_NAME_WITH_PREFIX} is already\npoisoned."); +const u8 gText_PkmnBadlyPoisoned[] = _("{B_EFF_NAME_WITH_PREFIX} is badly\npoisoned!"); +const u8 gText_PkmnEnergyDrained[] = _("{B_DEF_NAME_WITH_PREFIX} had its\nenergy drained!"); +const u8 gText_PkmnWasBurned[] = _("{B_EFF_NAME_WITH_PREFIX} was burned!"); +const u8 gText_PkmnBurnedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nburned {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnHurtByBurn[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby its burn!"); +const u8 gText_PkmnAlreadyHasBurn[] = _("{B_DEF_NAME_WITH_PREFIX} already\nhas a burn."); +const u8 gText_PkmnWasFrozen[] = _("{B_EFF_NAME_WITH_PREFIX} was\nfrozen solid!"); +const u8 gText_PkmnFrozenBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nfroze {B_EFF_NAME_WITH_PREFIX} solid!"); +const u8 gText_PkmnIsFrozen[] = _("{B_ATK_NAME_WITH_PREFIX} is\nfrozen solid!"); +const u8 gText_PkmnWasDefrosted[] = _("{B_DEF_NAME_WITH_PREFIX} was\ndefrosted!"); +const u8 gText_PkmnWasDefrosted2[] = _("{B_ATK_NAME_WITH_PREFIX} was\ndefrosted!"); +const u8 gText_PkmnWasDefrostedBy[] = _("{B_ATK_NAME_WITH_PREFIX} was\ndefrosted by {B_CURRENT_MOVE}!"); +const u8 gText_PkmnWasParalyzed[] = _("{B_EFF_NAME_WITH_PREFIX} is paralyzed!\nIt may be unable to move!"); +const u8 gText_PkmnWasParalyzedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nparalyzed {B_EFF_NAME_WITH_PREFIX}!\lIt may be unable to move!"); +const u8 gText_PkmnIsParalyzed[] = _("{B_ATK_NAME_WITH_PREFIX} is paralyzed!\nIt can’t move!"); +const u8 gText_PkmnIsAlreadyParalyzed[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready paralyzed!"); +const u8 gText_PkmnHealedParalysis[] = _("{B_DEF_NAME_WITH_PREFIX} was\nhealed of paralysis!"); +const u8 gText_PkmnDreamEaten[] = _("{B_DEF_NAME_WITH_PREFIX}’s\ndream was eaten!"); +const u8 gText_StatsWontIncrease[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1}\nwon’t go higher!"); +const u8 gText_StatsWontDecrease[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\nwon’t go lower!"); +const u8 gText_TeamStoppedWorking[] = _("Your team’s {B_BUFF1}\nstopped working!"); +const u8 gText_FoeStoppedWorking[] = _("The foe’s {B_BUFF1}\nstopped working!"); +const u8 gText_PkmnIsConfused[] = _("{B_ATK_NAME_WITH_PREFIX} is\nconfused!"); +const u8 gText_PkmnHealedConfusion[] = _("{B_ATK_NAME_WITH_PREFIX} snapped\nout of confusion!"); +const u8 gText_PkmnWasConfused[] = _("{B_EFF_NAME_WITH_PREFIX} became\nconfused!"); +const u8 gText_PkmnAlreadyConfused[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready confused!"); +const u8 gText_PkmnFellInLove[] = _("{B_DEF_NAME_WITH_PREFIX}\nfell in love!"); +const u8 gText_PkmnInLove[] = _("{B_ATK_NAME_WITH_PREFIX} is in love\nwith {B_ACTIVE_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnImmobilizedByLove[] = _("{B_ATK_NAME_WITH_PREFIX} is\nimmobilized by love!"); +const u8 gText_PkmnBlownAway[] = _("{B_DEF_NAME_WITH_PREFIX} was\nblown away!"); +const u8 gText_PkmnChangedType[] = _("{B_ATK_NAME_WITH_PREFIX} transformed\ninto the {B_BUFF1} type!"); +const u8 gText_PkmnFlinched[] = _("{B_ATK_NAME_WITH_PREFIX} flinched!"); +const u8 gText_PkmnRegainedHealth[] = _("{B_DEF_NAME_WITH_PREFIX} regained\nhealth!"); +const u8 gText_PkmnHPFull[] = _("{B_DEF_NAME_WITH_PREFIX}’s\nHP is full!"); +const u8 gText_PkmnRaisedSpDef[] = _("{B_ATK_PREFIX2}’s {B_CURRENT_MOVE}\nraised SP. DEF!"); +const u8 gText_PkmnRaisedSpDefALittle[] = _("{B_ATK_PREFIX2}’s {B_CURRENT_MOVE}\nraised SP. DEF a little!"); +const u8 gText_PkmnRaisedDef[] = _("{B_ATK_PREFIX2}’s {B_CURRENT_MOVE}\nraised DEFENSE!"); +const u8 gText_PkmnRaisedDefALittle[] = _("{B_ATK_PREFIX2}’s {B_CURRENT_MOVE}\nraised DEFENSE a little!"); +const u8 gText_PkmnCoveredByVeil[] = _("{B_ATK_PREFIX2}’s party is covered\nby a veil!"); +const u8 gText_PkmnUsedSafeguard[] = _("{B_DEF_NAME_WITH_PREFIX}’s party is protected\nby SAFEGUARD!"); +const u8 gText_PkmnSafeguardExpired[] = _("{B_ATK_PREFIX3}’s party is no longer\nprotected by SAFEGUARD!"); +const u8 gText_PkmnWentToSleep[] = _("{B_ATK_NAME_WITH_PREFIX} went\nto sleep!"); +const u8 gText_PkmnSleptHealthy[] = _("{B_ATK_NAME_WITH_PREFIX} slept and\nbecame healthy!"); +const u8 gText_PkmnWhippedWhirlwind[] = _("{B_ATK_NAME_WITH_PREFIX} whipped\nup a whirlwind!"); +const u8 gText_PkmnTookSunlight[] = _("{B_ATK_NAME_WITH_PREFIX} took\nin sunlight!"); +const u8 gText_PkmnLoweredHead[] = _("{B_ATK_NAME_WITH_PREFIX} lowered\nits head!"); +const u8 gText_PkmnIsGlowing[] = _("{B_ATK_NAME_WITH_PREFIX} is glowing!"); +const u8 gText_PkmnFlewHigh[] = _("{B_ATK_NAME_WITH_PREFIX} flew\nup high!"); +const u8 gText_PkmnDugHole[] = _("{B_ATK_NAME_WITH_PREFIX} dug a hole!"); +const u8 gText_PkmnHidUnderwater[] = _("{B_ATK_NAME_WITH_PREFIX} hid\nunderwater!"); +const u8 gText_PkmnSprangUp[] = _("{B_ATK_NAME_WITH_PREFIX} sprang up!"); +const u8 gText_PkmnSqueezedByBind[] = _("{B_DEF_NAME_WITH_PREFIX} was squeezed by\n{B_ATK_NAME_WITH_PREFIX}’s BIND!"); +const u8 gText_PkmnTrappedInVortex[] = _("{B_DEF_NAME_WITH_PREFIX} was trapped\nin the vortex!"); +const u8 gText_PkmnTrappedBySandTomb[] = _("{B_DEF_NAME_WITH_PREFIX} was trapped\nby SAND TOMB!"); +const u8 gText_PkmnWrappedBy[] = _("{B_DEF_NAME_WITH_PREFIX} was WRAPPED by\n{B_ATK_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnClamped[] = _("{B_ATK_NAME_WITH_PREFIX} CLAMPED\n{B_DEF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnHurtBy[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby {B_BUFF1}!"); +const u8 gText_PkmnFreedFrom[] = _("{B_ATK_NAME_WITH_PREFIX} was freed\nfrom {B_BUFF1}!"); +const u8 gText_PkmnCrashed[] = _("{B_ATK_NAME_WITH_PREFIX} kept going\nand crashed!"); +const u8 gText_PkmnShroudedInMist[] = _("{B_ATK_PREFIX2} became\nshrouded in MIST!"); +const u8 gText_PkmnProtectedByMist[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is protected\nby MIST!"); +const u8 gText_PkmnGettingPumped[] = _("{B_ATK_NAME_WITH_PREFIX} is getting\npumped!"); +const u8 gText_PkmnHitWithRecoil[] = _("{B_ATK_NAME_WITH_PREFIX} is hit\nwith recoil!"); +const u8 gText_PkmnProtectedItself2[] = _("{B_ATK_NAME_WITH_PREFIX} protected\nitself!"); +const u8 gText_PkmnBuffetedBySandstorm[] = _("{B_ATK_NAME_WITH_PREFIX} is buffeted\nby the sandstorm!"); +const u8 gText_PkmnPeltedByHail[] = _("{B_ATK_NAME_WITH_PREFIX} is pelted\nby HAIL!"); +const u8 gText_PkmnsXWoreOff[] = _("{B_ATK_PREFIX1}’s {B_BUFF1}\nwore off!"); +const u8 gText_PkmnSeeded[] = _("{B_DEF_NAME_WITH_PREFIX} was seeded!"); +const u8 gText_PkmnEvadedAttack[] = _("{B_DEF_NAME_WITH_PREFIX} evaded\nthe attack!"); +const u8 gText_PkmnSappedByLeechSeed[] = _("{B_ATK_NAME_WITH_PREFIX}’s health is\nsapped by LEECH SEED!"); +const u8 gText_PkmnFastAsleep[] = _("{B_ATK_NAME_WITH_PREFIX} is fast\nasleep."); +const u8 gText_PkmnWokeUp[] = _("{B_ATK_NAME_WITH_PREFIX} woke up!"); +const u8 gText_PkmnUproarKeptAwake[] = _("But {B_ACTIVE_NAME_WITH_PREFIX}’s UPROAR\nkept it awake!"); +const u8 gText_PkmnWokeUpInUproar[] = _("{B_ATK_NAME_WITH_PREFIX} woke up\nin the UPROAR!"); +const u8 gText_PkmnCausedUproar[] = _("{B_ATK_NAME_WITH_PREFIX} caused\nan UPROAR!"); +const u8 gText_PkmnMakingUproar[] = _("{B_ATK_NAME_WITH_PREFIX} is making\nan UPROAR!"); +const u8 gText_PkmnCalmedDown[] = _("{B_ATK_NAME_WITH_PREFIX} calmed down."); +const u8 gText_PkmnCantSleepInUproar[] = _("But {B_DEF_NAME_WITH_PREFIX} can’t\nsleep in an UPROAR!"); +const u8 gText_PkmnStockpiled[] = _("{B_ATK_NAME_WITH_PREFIX} STOCKPILED\n{B_BUFF1}!"); +const u8 gText_PkmnCantStockpile[] = _("{B_ATK_NAME_WITH_PREFIX} can’t\nSTOCKPILE any more!"); +const u8 gText_PkmnCantSleepInUproar2[] = _("But {B_DEF_NAME_WITH_PREFIX} can’t\nsleep in an UPROAR!"); +const u8 gText_UproarKeptPkmnAwake[] = _("But the UPROAR kept\n{B_DEF_NAME_WITH_PREFIX} awake!"); +const u8 gText_PkmnStayedAwakeUsing[] = _("{B_DEF_NAME_WITH_PREFIX} stayed awake\nusing its {B_DEF_ABILITY}!"); +const u8 gText_PkmnStoringEnergy[] = _("{B_ATK_NAME_WITH_PREFIX} is storing\nenergy!"); +const u8 gText_PkmnUnleashedEnergy[] = _("{B_ATK_NAME_WITH_PREFIX} unleashed\nenergy!"); +const u8 gText_PkmnFatigueConfusion[] = _("{B_ATK_NAME_WITH_PREFIX} became\nconfused due to fatigue!"); +const u8 gText_PkmnPickedUpItem[] = _("{B_PLAYER_NAME} picked up\n¥{B_BUFF1}!\p"); +const u8 gText_PkmnUnaffected[] = _("{B_DEF_NAME_WITH_PREFIX} is\nunaffected!"); +const u8 gText_PkmnTransformedInto[] = _("{B_ATK_NAME_WITH_PREFIX} transformed\ninto {B_BUFF1}!"); +const u8 gText_PkmnMadeSubstitute[] = _("{B_ATK_NAME_WITH_PREFIX} made\na SUBSTITUTE!"); +const u8 gText_PkmnHasSubstitute[] = _("{B_ATK_NAME_WITH_PREFIX} already\nhas a SUBSTITUTE!"); +const u8 gText_SubstituteDamaged[] = _("The SUBSTITUTE took damage\nfor {B_DEF_NAME_WITH_PREFIX}!\p"); +const u8 gText_PkmnSubstituteFaded[] = _("{B_DEF_NAME_WITH_PREFIX}’s\nSUBSTITUTE faded!\p"); +const u8 gText_PkmnMustRecharge[] = _("{B_ATK_NAME_WITH_PREFIX} must\nrecharge!"); +const u8 gText_PkmnRageBuilding[] = _("{B_DEF_NAME_WITH_PREFIX}’s RAGE\nis building!"); +const u8 gText_PkmnMoveWasDisabled[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\nwas disabled!"); +const u8 gText_PkmnMoveDisabledNoMore[] = _("{B_ATK_NAME_WITH_PREFIX} is disabled\nno more!"); +const u8 gText_PkmnGotEncore[] = _("{B_DEF_NAME_WITH_PREFIX} got\nan ENCORE!"); +const u8 gText_PkmnEncoreEnded[] = _("{B_ATK_NAME_WITH_PREFIX}’s ENCORE\nended!"); +const u8 gText_PkmnTookAim[] = _("{B_ATK_NAME_WITH_PREFIX} took aim\nat {B_DEF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnSketchedMove[] = _("{B_ATK_NAME_WITH_PREFIX} SKETCHED\n{B_BUFF1}!"); +const u8 gText_PkmnTryingToTakeFoe[] = _("{B_ATK_NAME_WITH_PREFIX} is trying\nto take its foe with it!"); +const u8 gText_PkmnTookFoe[] = _("{B_DEF_NAME_WITH_PREFIX} took\n{B_ATK_NAME_WITH_PREFIX} with it!"); +const u8 gText_PkmnReducedPP[] = _("Reduced {B_DEF_NAME_WITH_PREFIX}’s\n{B_BUFF1} by {B_BUFF2}!"); +const u8 gText_PkmnStoleItem[] = _("{B_ATK_NAME_WITH_PREFIX} stole\n{B_DEF_NAME_WITH_PREFIX}’s {B_LAST_ITEM}!"); +const u8 gText_PkmnCantEscape[] = _("{B_DEF_NAME_WITH_PREFIX} can’t\nescape now!"); +const u8 gText_PkmnFellIntoNightmare[] = _("{B_DEF_NAME_WITH_PREFIX} fell into\na NIGHTMARE!"); +const u8 gText_PkmnLockedInNightmare[] = _("{B_ATK_NAME_WITH_PREFIX} is locked\nin a NIGHTMARE!"); +const u8 gText_PkmnLaidCurse[] = _("{B_ATK_NAME_WITH_PREFIX} cut its own HP and\nlaid a CURSE on {B_DEF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnAfflictedByCurse[] = _("{B_ATK_NAME_WITH_PREFIX} is afflicted\nby the CURSE!"); +const u8 gText_SpikesScattered[] = _("SPIKES were scattered all around\nthe opponent’s side!"); +const u8 gText_PkmnHurtBySpikes[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is hurt\nby SPIKES!"); +const u8 gText_PkmnIdentified[] = _("{B_ATK_NAME_WITH_PREFIX} identified\n{B_DEF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnPerishCountFell[] = _("{B_ATK_NAME_WITH_PREFIX}’s PERISH count\nfell to {B_BUFF1}!"); +const u8 gText_PkmnBracedItself[] = _("{B_ATK_NAME_WITH_PREFIX} braced\nitself!"); +const u8 gText_PkmnEnduredHit[] = _("{B_DEF_NAME_WITH_PREFIX} ENDURED\nthe hit!"); +const u8 gText_MagnitudeStrength[] = _("MAGNITUDE {B_BUFF1}!"); +const u8 gText_PkmnCutHPMaxedAttack[] = _("{B_ATK_NAME_WITH_PREFIX} cut its own HP\nand maximized ATTACK!"); +const u8 gText_PkmnCopiedStatChanges[] = _("{B_ATK_NAME_WITH_PREFIX} copied\n{B_DEF_NAME_WITH_PREFIX}’s stat changes!"); +const u8 gText_PkmnGotFree[] = _("{B_ATK_NAME_WITH_PREFIX} got free of\n{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}!"); +const u8 gText_PkmnShedLeechSeed[] = _("{B_ATK_NAME_WITH_PREFIX} shed\nLEECH SEED!"); +const u8 gText_PkmnBlewAwaySpikes[] = _("{B_ATK_NAME_WITH_PREFIX} blew away\nSPIKES!"); +const u8 gText_PkmnFledFromBattle[] = _("{B_ATK_NAME_WITH_PREFIX} fled from\nbattle!"); +const u8 gText_PkmnForesawAttack[] = _("{B_ATK_NAME_WITH_PREFIX} foresaw\nan attack!"); +const u8 gText_PkmnTookAttack[] = _("{B_DEF_NAME_WITH_PREFIX} took the\n{B_BUFF1} attack!"); +const u8 gText_PkmnChoseXAsDestiny[] = _("{B_ATK_NAME_WITH_PREFIX} chose\n{B_CURRENT_MOVE} as its destiny!"); +const u8 gText_PkmnAttack[] = _("{B_BUFF1}’s attack!"); +const u8 gText_PkmnCenterAttention[] = _("{B_ATK_NAME_WITH_PREFIX} became the\ncenter of attention!"); +const u8 gText_PkmnChargingPower[] = _("{B_ATK_NAME_WITH_PREFIX} began\ncharging power!"); +const u8 gText_NaturePowerTurnedInto[] = _("NATURE POWER turned into\n{B_CURRENT_MOVE}!"); +const u8 gText_PkmnStatusNormal[] = _("{B_ATK_NAME_WITH_PREFIX}’s status\nreturned to normal!"); +const u8 gText_PkmnSubjectedToTorment[] = _("{B_DEF_NAME_WITH_PREFIX} was subjected\nto TORMENT!"); +const u8 gText_PkmnTighteningFocus[] = _("{B_ATK_NAME_WITH_PREFIX} is tightening\nits focus!"); +const u8 gText_PkmnFellForTaunt[] = _("{B_DEF_NAME_WITH_PREFIX} fell for\nthe TAUNT!"); +const u8 gText_PkmnReadyToHelp[] = _("{B_ATK_NAME_WITH_PREFIX} is ready to\nhelp {B_DEF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnSwitchedItems[] = _("{B_ATK_NAME_WITH_PREFIX} switched\nitems with its opponent!"); +const u8 gText_PkmnObtainedX[] = _("{B_ATK_NAME_WITH_PREFIX} obtained\n{B_BUFF1}."); +const u8 gText_PkmnObtainedX2[] = _("{B_DEF_NAME_WITH_PREFIX} obtained\n{B_BUFF2}."); +const u8 gText_PkmnObtainedXYObtainedZ[] = _("{B_ATK_NAME_WITH_PREFIX} obtained\n{B_BUFF1}.\p{B_DEF_NAME_WITH_PREFIX} obtained\n{B_BUFF2}."); +const u8 gText_PkmnCopiedFoe[] = _("{B_ATK_NAME_WITH_PREFIX} copied\n{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}!"); +const u8 gText_PkmnMadeWish[] = _("{B_ATK_NAME_WITH_PREFIX} made a WISH!"); +const u8 gText_PkmnWishCameTrue[] = _("{B_BUFF1}’s WISH\ncame true!"); +const u8 gText_PkmnPlantedRoots[] = _("{B_ATK_NAME_WITH_PREFIX} planted its roots!"); +const u8 gText_PkmnAbsorbedNutrients[] = _("{B_ATK_NAME_WITH_PREFIX} absorbed\nnutrients with its roots!"); +const u8 gText_PkmnAnchoredItself[] = _("{B_DEF_NAME_WITH_PREFIX} anchored\nitself with its roots!"); +const u8 gText_PkmnWasMadeDrowsy[] = _("{B_ATK_NAME_WITH_PREFIX} made\n{B_DEF_NAME_WITH_PREFIX} drowsy!"); +const u8 gText_PkmnKnockedOff[] = _("{B_ATK_NAME_WITH_PREFIX} knocked off\n{B_DEF_NAME_WITH_PREFIX}’s {B_LAST_ITEM}!"); +const u8 gText_PkmnSwappedAbilities[] = _("{B_ATK_NAME_WITH_PREFIX} swapped abilities\nwith its opponent!"); +const u8 gText_PkmnSealedOpponentMove[] = _("{B_ATK_NAME_WITH_PREFIX} sealed the\nopponent’s move(s)!"); +const u8 gText_PkmnWantsGrudge[] = _("{B_ATK_NAME_WITH_PREFIX} wants the\nopponent to bear a GRUDGE!"); +const u8 gText_PkmnLostPPGrudge[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1} lost\nall its PP due to the GRUDGE!"); +const u8 gText_PkmnShroudedItself[] = _("{B_ATK_NAME_WITH_PREFIX} shrouded\nitself in {B_CURRENT_MOVE}!"); +const u8 gText_PkmnMoveBounced[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_CURRENT_MOVE}\nwas bounced back by MAGIC COAT!"); +const u8 gText_PkmnWaitsForTarget[] = _("{B_ATK_NAME_WITH_PREFIX} waits for a target\nto make a move!"); +const u8 gText_PkmnSnatchedMove[] = _("{B_DEF_NAME_WITH_PREFIX} SNATCHED\n{B_ACTIVE_NAME_WITH_PREFIX}’s move!"); +const u8 gText_ElectricityWeakened[] = _("Electricity’s power was\nweakened!"); +const u8 gText_FireWeakened[] = _("Fire’s power was\nweakened!"); +const u8 gText_XFoundOneY[] = _("{B_ATK_NAME_WITH_PREFIX} found\none {B_LAST_ITEM}!"); +const u8 gText_SoothingAroma[] = _("A soothing aroma wafted\nthrough the area!"); +const u8 gText_ItemsCantBeUsedNow[] = _("Items can’t be used now.{PAUSE 64}"); +const u8 gText_ForXCommaYZ[] = _("For {B_ACTIVE_NAME_WITH_PREFIX},\n{B_LAST_ITEM} {B_BUFF1}"); +const u8 gText_PkmnUsedXToGetPumped[] = _("{B_ACTIVE_NAME_WITH_PREFIX} used\n{B_LAST_ITEM} to get pumped!"); +const u8 gText_PkmnLostFocus[] = _("{B_ATK_NAME_WITH_PREFIX} lost its\nfocus and couldn’t move!"); +const u8 gText_PkmnWasDraggedOut[] = _("{B_DEF_NAME_WITH_PREFIX} was\ndragged out!\p"); +const u8 gText_TheWallShattered[] = _("The wall shattered!"); +const u8 gText_ButNoEffect[] = _("But it had no effect!"); +const u8 gText_PkmnHasNoMovesLeft[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} has no\nmoves left!\p"); +const u8 gText_PkmnMoveIsDisabled[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_CURRENT_MOVE}\nis disabled!\p"); +const u8 gText_PkmnCantUseMoveTorment[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use the same\nmove in a row due to the TORMENT!\p"); +const u8 gText_PkmnCantUseMoveTaunt[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use\n{B_CURRENT_MOVE} after the TAUNT!\p"); +const u8 gText_PkmnCantUseMoveSealed[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use the\nsealed {B_CURRENT_MOVE}!\p"); +const u8 gText_PkmnMadeItRain[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it rain!"); +const u8 gText_PkmnRaisedSpeed[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nraised its SPEED!"); +const u8 gText_PkmnProtectedBy[] = _("{B_DEF_NAME_WITH_PREFIX} was protected\nby {B_DEF_ABILITY}!"); +const u8 gText_PkmnPreventsUsage[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents {B_ATK_NAME_WITH_PREFIX}\lfrom using {B_CURRENT_MOVE}!"); +const u8 gText_PkmnRestoredHPUsing[] = _("{B_DEF_NAME_WITH_PREFIX} restored HP\nusing its {B_DEF_ABILITY}!"); +const u8 gText_PkmnsXMadeYUseless[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nmade {B_CURRENT_MOVE} useless!"); +const u8 gText_PkmnChangedTypeWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nmade it the {B_BUFF1} type!"); +const u8 gText_PkmnPreventsParalysisWith[] = _("{B_EFF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents paralysis!"); +const u8 gText_PkmnPreventsRomanceWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents romance!"); +const u8 gText_PkmnPreventsPoisoningWith[] = _("{B_EFF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents poisoning!"); +const u8 gText_PkmnPreventsConfusionWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents confusion!"); +const u8 gText_PkmnRaisedFirePowerWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nraised its FIRE power!"); +const u8 gText_PkmnAnchorsItselfWith[] = _("{B_DEF_NAME_WITH_PREFIX} anchors\nitself with {B_DEF_ABILITY}!"); +const u8 gText_PkmnCutsAttackWith[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncuts {B_DEF_NAME_WITH_PREFIX}’s ATTACK!"); +const u8 gText_PkmnPreventsStatLossWith[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents stat loss!"); +const u8 gText_PkmnHurtsWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nhurt {B_ATK_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnTraced[] = _("{B_ACTIVE_NAME_WITH_PREFIX} TRACED\n{B_BUFF1}’s {B_BUFF2}!"); +const u8 gText_PkmnsXPreventsBurns[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents burns!"); +const u8 gText_PkmnsXBlocksY[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nblocks {B_CURRENT_MOVE}!"); +const u8 gText_PkmnsXBlocksY2[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nblocks {B_CURRENT_MOVE}!"); +const u8 gText_PkmnsXRestoredHPALittle2[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nrestored its HP a little!"); +const u8 gText_PkmnsXWhippedUpSandstorm[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nwhipped up a sandstorm!"); +const u8 gText_PkmnsXIntensifiedSun[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nintensified the sun’s rays!"); +const u8 gText_PkmnsXPreventsYLoss[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents {B_BUFF1} loss!"); +const u8 gText_PkmnsXInfatuatedY[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\ninfatuated {B_ATK_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnsXMadeYIneffective[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nmade {B_CURRENT_MOVE} ineffective!"); +const u8 gText_PkmnsXCuredYProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); +const u8 gText_ItSuckedLiquidOoze[] = _("It sucked up the\nLIQUID OOZE!"); +const u8 gText_PkmnTransformed[] = _("{B_ACTIVE_NAME_WITH_PREFIX} transformed!"); +const u8 gText_PkmnsXTookAttack[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\ntook the attack!"); +const u8 gText_PkmnsXPreventsSwitching[] = _("{B_BUFF1}’s {STRING 23}\nprevents switching!\p"); +const u8 gText_PreventedFromWorking[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevented {B_ACTIVE_NAME_WITH_PREFIX}’s\l{B_BUFF1} from working!"); +const u8 gText_PkmnsXMadeItIneffective[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it ineffective!"); +const u8 gText_PkmnsXPreventsFlinching[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents flinching!"); +const u8 gText_PkmnsXPreventsYsZ[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nprevents {B_DEF_NAME_WITH_PREFIX}’s\l{B_DEF_ABILITY} from working!"); +const u8 gText_PkmnsXCuredItsYProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); +const u8 gText_PkmnsXHadNoEffectOnY[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nhad no effect on {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_StatSharply[] = _("sharply "); +const u8 gText_StatRose[] = _("rose!"); +const u8 gText_StatHarshly[] = _("harshly "); +const u8 gText_StatFell[] = _("fell!"); +const u8 gText_PkmnsStatChanged[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); +const u8 gText_PkmnsStatChanged2[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); +const u8 gText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}"); +const u8 gText_PkmnsStatChanged3[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); +const u8 gText_PkmnsStatChanged4[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); +const u8 gText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}’s stats won’t\ngo any higher!"); +const u8 gText_StatsWontDecrease2[] = _("{B_DEF_NAME_WITH_PREFIX}’s stats won’t\ngo any lower!"); +const u8 gText_CriticalHit[] = _("A critical hit!"); +const u8 gText_OneHitKO[] = _("It’s a one-hit KO!"); +const u8 gText_123Poof[] = _("{PAUSE 32}1, {PAUSE 15}2, and{PAUSE 15}… {PAUSE 15}… {PAUSE 15}… {PAUSE 15}{PLAY_SE 0x0038}Poof!\p"); +const u8 gText_AndEllipsis[] = _("And…\p"); +const u8 gText_HMMovesCantBeForgotten[] = _("HM moves can’t be\nforgotten now.\p"); +const u8 gText_NotVeryEffective[] = _("It’s not very effective…"); +const u8 gText_SuperEffective[] = _("It’s super effective!"); +const u8 gText_GotAwaySafely[] = _("{PLAY_SE 0x0011}Got away safely!\p"); +const u8 gText_PkmnFledUsingIts[] = _("{PLAY_SE 0x0011}{B_ATK_NAME_WITH_PREFIX} fled\nusing its {B_LAST_ITEM}!\p"); +const u8 gText_PkmnFledUsing[] = _("{PLAY_SE 0x0011}{B_ATK_NAME_WITH_PREFIX} fled\nusing {STRING 24}!\p"); +const u8 gText_WildPkmnFled[] = _("{PLAY_SE 0x0011}Wild {B_BUFF1} fled!"); +const u8 gText_PlayerDefeatedLinkTrainer[] = _("Player defeated\n{B_20}!"); +const u8 gText_TwoLinkTrainersDefeated[] = _("Player beat {B_20}\nand {B_21}!"); +const u8 gText_PlayerLostAgainstLinkTrainer[] = _("Player lost against\n{B_20}!"); +const u8 gText_PlayerLostToTwo[] = _("Player lost to {B_20}\nand {B_21}!"); +const u8 gText_PlayerBattledToDrawLinkTrainer[] = _("Player battled to a draw against\n{B_20}!"); +const u8 gText_PlayerBattledToDrawVsTwo[] = _("Player battled to a draw against\n{B_20} and {B_21}!"); +const u8 gText_WildFled[] = _("{PLAY_SE 0x0011}{B_20} fled!"); +const u8 gText_TwoWildFled[] = _("{PLAY_SE 0x0011}{B_20} and\n{B_21} fled!"); +const u8 gText_NoRunningFromTrainers[] = _("No! There’s no running\nfrom a TRAINER battle!\p"); +const u8 gText_CantEscape[] = _("Can’t escape!\p"); +const u8 gText_DontLeaveBirch[] = _("PROF. BIRCH: Don’t leave me like this!\p"); +const u8 gText_ButNothingHappened[] = _("But nothing happened!"); +const u8 gText_ButItFailed[] = _("But it failed!"); +const u8 gText_ItHurtConfusion[] = _("It hurt itself in its\nconfusion!"); +const u8 gText_MirrorMoveFailed[] = _("The MIRROR MOVE failed!"); +const u8 gText_StartedToRain[] = _("It started to rain!"); +const u8 gText_DownpourStarted[] = _("A downpour started!"); +const u8 gText_RainContinues[] = _("Rain continues to fall."); +const u8 gText_DownpourContinues[] = _("The downpour continues."); +const u8 gText_RainStopped[] = _("The rain stopped."); +const u8 gText_SandstormBrewed[] = _("A sandstorm brewed!"); +const u8 gText_SandstormRages[] = _("The sandstorm rages."); +const u8 gText_SandstormSubsided[] = _("The sandstorm subsided."); +const u8 gText_SunlightGotBright[] = _("The sunlight got bright!"); +const u8 gText_SunlightStrong[] = _("The sunlight is strong."); +const u8 gText_SunlightFaded[] = _("The sunlight faded."); +const u8 gText_StartedHail[] = _("It started to hail!"); +const u8 gText_HailContinues[] = _("Hail continues to fall."); +const u8 gText_HailStopped[] = _("The hail stopped."); +const u8 gText_FailedToSpitUp[] = _("But it failed to SPIT UP\na thing!"); +const u8 gText_FailedToSwallow[] = _("But it failed to SWALLOW\na thing!"); +const u8 gText_WindBecameHeatWave[] = _("The wind turned into a\nHEAT WAVE!"); +const u8 gText_StatChangesGone[] = _("All stat changes were\neliminated!"); +const u8 gText_CoinsScattered[] = _("Coins scattered everywhere!"); +const u8 gText_TooWeakForSubstitute[] = _("It was too weak to make\na SUBSTITUTE!"); +const u8 gText_SharedPain[] = _("The battlers shared\ntheir pain!"); +const u8 gText_BellChimed[] = _("A bell chimed!"); +const u8 gText_FaintInThree[] = _("All affected POKéMON will\nfaint in three turns!"); +const u8 gText_NoPPLeft[] = _("There’s no PP left for\nthis move!\p"); +const u8 gText_ButNoPPLeft[] = _("But there was no PP left\nfor the move!"); +const u8 gText_PkmnIgnoresAsleep[] = _("{B_ATK_NAME_WITH_PREFIX} ignored\norders while asleep!"); +const u8 gText_PkmnIgnoredOrders[] = _("{B_ATK_NAME_WITH_PREFIX} ignored\norders!"); +const u8 gText_PkmnBeganToNap[] = _("{B_ATK_NAME_WITH_PREFIX} began to nap!"); +const u8 gText_PkmnLoafing[] = _("{B_ATK_NAME_WITH_PREFIX} is\nloafing around!"); +const u8 gText_PkmnWontObey[] = _("{B_ATK_NAME_WITH_PREFIX} won’t\nobey!"); +const u8 gText_PkmnTurnedAway[] = _("{B_ATK_NAME_WITH_PREFIX} turned away!"); +const u8 gText_PkmnPretendNotNotice[] = _("{B_ATK_NAME_WITH_PREFIX} pretended\nnot to notice!"); +const u8 gText_EnemyAboutToSwitchPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} is\nabout to use {B_BUFF2}.\pWill {B_PLAYER_NAME} change\nPOKéMON?"); +const u8 gText_PkmnLearnedMove2[] = _("{B_ATK_NAME_WITH_PREFIX} learned\n{B_BUFF1}!"); +const u8 gText_PlayerDefeatedLinkTrainerTrainer1[] = _("Player defeated\n{B_TRAINER1_CLASS} {B_TRAINER1_NAME}!\p"); +const u8 gText_CreptCloser[] = _("{B_PLAYER_NAME} crept closer to\n{B_OPPONENT_MON1_NAME}!"); +const u8 gText_CantGetCloser[] = _("{B_PLAYER_NAME} can’t get any closer!"); +const u8 gText_PkmnWatchingCarefully[] = _("{B_OPPONENT_MON1_NAME} is watching\ncarefully!"); +const u8 gText_PkmnCuriousAboutX[] = _("{B_OPPONENT_MON1_NAME} is curious about\nthe {B_BUFF1}!"); +const u8 gText_PkmnEnthralledByX[] = _("{B_OPPONENT_MON1_NAME} is enthralled by\nthe {B_BUFF1}!"); +const u8 gText_PkmnIgnoredX[] = _("{B_OPPONENT_MON1_NAME} completely ignored\nthe {B_BUFF1}!"); +const u8 gText_ThrewPokeblockAtPkmn[] = _("{B_PLAYER_NAME} threw a {POKEBLOCK}\nat the {B_OPPONENT_MON1_NAME}!"); +const u8 gText_OutOfSafariBalls[] = _("{PLAY_SE 0x0049}ANNOUNCER: You’re out of\nSAFARI BALLS! Game over!\p"); +const u8 gText_OpponentMon1Appeared[] = _("{B_OPPONENT_MON1_NAME} appeared!\p"); +const u8 gText_WildPkmnAppeared[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!\p"); +const u8 gText_WildPkmnAppeared2[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!\p"); +const u8 gText_WildPkmnAppearedPause[] = _("Wild {B_OPPONENT_MON1_NAME} appeared!{PAUSE 127}"); +const u8 gText_TwoWildPkmnAppeared[] = _("Wild {B_OPPONENT_MON1_NAME} and\n{B_OPPONENT_MON2_NAME} appeared!\p"); +const u8 gText_Trainer1WantsToBattle[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME}\nwould like to battle!\p"); +const u8 gText_LinkTrainerWantsToBattle[] = _("{B_20}\nwants to battle!"); +const u8 gText_TwoLinkTrainersWantToBattle[] = _("{B_20} and {B_21}\nwant to battle!"); +const u8 gText_Trainer1SentOutPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} sent\nout {B_OPPONENT_MON1_NAME}!"); +const u8 gText_Trainer1SentOutTwoPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} sent\nout {B_OPPONENT_MON1_NAME} and {B_OPPONENT_MON2_NAME}!"); +const u8 gText_Trainer1SentOutPkmn2[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} sent\nout {B_BUFF1}!"); +const u8 gText_LinkTrainerSentOutPkmn[] = _("{B_20} sent out\n{B_OPPONENT_MON1_NAME}!"); +const u8 gText_LinkTrainerSentOutTwoPkmn[] = _("{B_20} sent out\n{B_OPPONENT_MON1_NAME} and {B_OPPONENT_MON2_NAME}!"); +const u8 gText_TwoLinkTrainersSentOutPkmn[] = _("{B_20} sent out {B_LINK_OPPONENT_MON1_NAME}!\n{B_21} sent out {B_LINK_OPPONENT_MON2_NAME}!"); +const u8 gText_LinkTrainerSentOutPkmn2[] = _("{B_20} sent out\n{B_BUFF1}!"); +const u8 gText_LinkTrainerMultiSentOutPkmn[] = _("{B_22} sent out\n{B_BUFF1}!"); +const u8 gText_GoPkmn[] = _("Go! {B_PLAYER_MON1_NAME}!"); +const u8 gText_GoTwoPkmn[] = _("Go! {B_PLAYER_MON1_NAME} and\n{B_PLAYER_MON2_NAME}!"); +const u8 gText_GoPkmn2[] = _("Go! {B_BUFF1}!"); +const u8 gText_DoItPkmn[] = _("Do it! {B_BUFF1}!"); +const u8 gText_GoForItPkmn[] = _("Go for it, {B_BUFF1}!"); +const u8 gText_YourFoesWeakGetEmPkmn[] = _("Your foe’s weak!\nGet ’em, {B_BUFF1}!"); +const u8 gText_LinkPartnerSentOutPkmnGoPkmn[] = _("{B_1F} sent out {B_LINK_PLAYER_MON2_NAME}!\nGo! {B_LINK_PLAYER_MON1_NAME}!"); +const u8 gText_PkmnThatsEnough[] = _("{B_BUFF1}, that’s enough!\nCome back!"); +const u8 gText_PkmnComeBack[] = _("{B_BUFF1}, come back!"); +const u8 gText_PkmnOkComeBack[] = _("{B_BUFF1}, OK!\nCome back!"); +const u8 gText_PkmnGoodComeBack[] = _("{B_BUFF1}, good!\nCome back!"); +const u8 gText_Trainer1WithdrewPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME}\nwithdrew {B_BUFF1}!"); +const u8 gText_LinkTrainer1WithdrewPkmn[] = _("{B_20} withdrew\n{B_BUFF1}!"); +const u8 gText_LinkTrainer2WithdrewPkmn[] = _("{B_22} withdrew\n{B_BUFF1}!"); +const u8 gText_WildPkmnPrefix[] = _("Wild "); +const u8 gText_FoePkmnPrefix[] = _("Foe "); +const u8 gText_EmptyString8[] = _( ""); +const u8 gText_FoePkmnPrefix2[] = _("Foe"); +const u8 gText_AllyPkmnPrefix[] = _("Ally"); +const u8 gText_FoePkmnPrefix3[] = _("Foe"); +const u8 gText_AllyPkmnPrefix2[] = _("Ally"); +const u8 gText_FoePkmnPrefix4[] = _("Foe"); +const u8 gText_AllyPkmnPrefix3[] = _("Ally"); +const u8 gText_AttackerUsedX[] = _("{B_ATK_NAME_WITH_PREFIX} used\n{B_BUFF2}"); +const u8 gText_ExclamationMark[] = _("!"); +const u8 gText_ExclamationMark2[] = _("!"); +const u8 gText_ExclamationMark3[] = _("!"); +const u8 gText_ExclamationMark4[] = _("!"); +const u8 gText_ExclamationMark5[] = _("!"); +const u8 gText_HP2[] = _("HP"); +const u8 gText_Attack2[] = _("ATTACK"); +const u8 gText_Defense2[] = _("DEFENSE"); +const u8 gText_Speed[] = _("SPEED"); +const u8 gText_SpAtk2[] = _("SP. ATK"); +const u8 gText_SpDef2[] = _("SP. DEF"); +const u8 gText_Accuracy[] = _("accuracy"); +const u8 gText_Evasiveness[] = _("evasiveness"); + +const u8 * const gStatNamesTable[] = +{ + gText_HP2, gText_Attack2, gText_Defense2, + gText_Speed, gText_SpAtk2, gText_SpDef2, + gText_Accuracy, gText_Evasiveness +}; + +const u8 gText_PokeblockWasTooSpicy[] = _("was too spicy!"); +const u8 gText_PokeblockWasTooDry[] = _("was too dry!"); +const u8 gText_PokeblockWasTooSweet[] = _("was too sweet!"); +const u8 gText_PokeblockWasTooBitter[] = _("was too bitter!"); +const u8 gText_PokeblockWasTooSour[] = _("was too sour!"); + +const u8 * const gPokeblockWasTooXStringTable[] = +{ + gText_PokeblockWasTooSpicy, gText_PokeblockWasTooDry, + gText_PokeblockWasTooSweet, gText_PokeblockWasTooBitter, + gText_PokeblockWasTooSour +}; + +const u8 gText_PlayerUsedItem[] = _("{B_PLAYER_NAME} used\n{B_LAST_ITEM}!"); +const u8 gText_WallyUsedItem[] = _("WALLY used\n{B_LAST_ITEM}!"); +const u8 gText_Trainer1UsedItem[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME}\nused {B_LAST_ITEM}!"); +const u8 gText_TrainerBlockedBall[] = _("The TRAINER blocked the BALL!"); +const u8 gText_DontBeAThief[] = _("Don’t be a thief!"); +const u8 gText_ItDodgedBall[] = _("It dodged the thrown BALL!\nThis POKéMON can’t be caught!"); +const u8 gText_YouMissedPkmn[] = _("You missed the POKéMON!"); +const u8 gText_PkmnBrokeFree[] = _("Oh, no!\nThe POKéMON broke free!"); +const u8 gText_ItAppearedCaught[] = _("Aww!\nIt appeared to be caught!"); +const u8 gText_AarghAlmostHadIt[] = _("Aargh!\nAlmost had it!"); +const u8 gText_ShootSoClose[] = _("Shoot!\nIt was so close, too!"); +const u8 gText_GotchaPkmnCaught[] = _("Gotcha!\n{B_OPPONENT_MON1_NAME} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}\p"); +const u8 gText_GotchaPkmnCaught2[] = _("Gotcha!\n{B_OPPONENT_MON1_NAME} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}{PAUSE 127}"); +const u8 gText_GiveNicknameCaptured[] = _("Give a nickname to the\ncaptured {B_OPPONENT_MON1_NAME}?"); +const u8 gText_PkmnSentToPC[] = _("{B_OPPONENT_MON1_NAME} was sent to\n{B_PC_CREATOR_NAME} PC."); +const u8 gText_Someones[] = _("someone’s"); +const u8 gText_Lanettes[] = _("LANETTE’s"); +const u8 gText_PkmnDataAddedToDex[] = _("{B_OPPONENT_MON1_NAME}’s data was\nadded to the POKéDEX.\p"); +const u8 gText_ItIsRaining[] = _("It is raining."); +const u8 gText_SandstormIsRaging[] = _("A sandstorm is raging."); +const u8 gText_BoxIsFull[] = _("The BOX is full!\nYou can’t catch any more!\p"); +const u8 gText_EnigmaBerry[] = _("ENIGMA BERRY"); +const u8 gText_BerrySuffix[] = _(" BERRY"); +const u8 gText_PkmnsItemCuredParalysis[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured paralysis!"); +const u8 gText_PkmnsItemCuredPoison[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured poison!"); +const u8 gText_PkmnsItemHealedBurn[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nhealed its burn!"); +const u8 gText_PkmnsItemDefrostedIt[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ndefrosted it!"); +const u8 gText_PkmnsItemWokeIt[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nwoke it from its sleep!"); +const u8 gText_PkmnsItemSnappedOut[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nsnapped it out of confusion!"); +const u8 gText_PkmnsItemCuredProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured its {B_BUFF1} problem!"); +const u8 gText_PkmnsItemNormalizedStatus[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nnormalized its status!"); +const u8 gText_PkmnsItemRestoredHealth[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored health!"); +const u8 gText_PkmnsItemRestoredPP[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored {B_BUFF1}’s PP!"); +const u8 gText_PkmnsItemRestoredStatus[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its status!"); +const u8 gText_PkmnsItemRestoredHPALittle[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its HP a little!"); +const u8 gText_ItemAllowsOnlyYMove[] = _("{B_LAST_ITEM} allows the\nuse of only {B_CURRENT_MOVE}!\p"); +const u8 gText_PkmnHungOnWithX[] = _("{B_DEF_NAME_WITH_PREFIX} hung on\nusing its {B_LAST_ITEM}!"); +const u8 gText_EmptyString3[] = _(""); +const u8 gText_YouThrowABallNowRight[] = _("You throw a BALL now, right?\nI… I’ll do my best!"); + +// early declaration of strings +const u8 gText_PkmnIncapableOfPower[]; +const u8 gText_GlintAppearsInEye[]; +const u8 gText_PkmnGettingIntoPosition[]; +const u8 gText_PkmnBeganGrowlingDeeply[]; +const u8 gText_PkmnEagerForMore[]; +const u8 gText_DefeatedOpponentByReferee[]; +const u8 gText_LostToOpponentByReferee[]; +const u8 gText_TiedOpponentByReferee[]; +const u8 gText_QuestionForfeitMatch[]; +const u8 gText_ForfeitedMatch[]; +const u8 gText_Trainer1WinText[]; +const u8 gText_Trainer2WinText[]; +const u8 gText_TwoInGameTrainersDefeated[]; +const u8 gText_Trainer2LoseText[]; + +const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = +{ + gText_Trainer1LoseText, + gText_PkmnGainedEXP, + gText_PkmnGrewToLv, + gText_PkmnLearnedMove, + gText_TryToLearnMove1, + gText_TryToLearnMove2, + gText_TryToLearnMove3, + gText_PkmnForgotMove, + gText_StopLearningMove, + gText_DidNotLearnMove, + gText_PkmnLearnedMove2, + gText_AttackMissed, + gText_PkmnProtectedItself, + gText_StatsWontIncrease2, + gText_AvoidedDamage, + gText_ItDoesntAffect, + gText_PkmnFainted, + gText_PkmnFainted2, + gText_PlayerGotMoney, + gText_PlayerWhiteout, + gText_PlayerWhiteout2, + gText_PreventsEscape, + gText_HitXTimes, + gText_PkmnFellAsleep, + gText_PkmnMadeSleep, + gText_PkmnAlreadyAsleep, + gText_PkmnAlreadyAsleep2, + gText_PkmnWasntAffected, + gText_PkmnWasPoisoned, + gText_PkmnPoisonedBy, + gText_PkmnHurtByPoison, + gText_PkmnAlreadyPoisoned, + gText_PkmnBadlyPoisoned, + gText_PkmnEnergyDrained, + gText_PkmnWasBurned, + gText_PkmnBurnedBy, + gText_PkmnHurtByBurn, + gText_PkmnWasFrozen, + gText_PkmnFrozenBy, + gText_PkmnIsFrozen, + gText_PkmnWasDefrosted, + gText_PkmnWasDefrosted2, + gText_PkmnWasDefrostedBy, + gText_PkmnWasParalyzed, + gText_PkmnWasParalyzedBy, + gText_PkmnIsParalyzed, + gText_PkmnIsAlreadyParalyzed, + gText_PkmnHealedParalysis, + gText_PkmnDreamEaten, + gText_StatsWontIncrease, + gText_StatsWontDecrease, + gText_TeamStoppedWorking, + gText_FoeStoppedWorking, + gText_PkmnIsConfused, + gText_PkmnHealedConfusion, + gText_PkmnWasConfused, + gText_PkmnAlreadyConfused, + gText_PkmnFellInLove, + gText_PkmnInLove, + gText_PkmnImmobilizedByLove, + gText_PkmnBlownAway, + gText_PkmnChangedType, + gText_PkmnFlinched, + gText_PkmnRegainedHealth, + gText_PkmnHPFull, + gText_PkmnRaisedSpDef, + gText_PkmnRaisedDef, + gText_PkmnCoveredByVeil, + gText_PkmnUsedSafeguard, + gText_PkmnSafeguardExpired, + gText_PkmnWentToSleep, + gText_PkmnSleptHealthy, + gText_PkmnWhippedWhirlwind, + gText_PkmnTookSunlight, + gText_PkmnLoweredHead, + gText_PkmnIsGlowing, + gText_PkmnFlewHigh, + gText_PkmnDugHole, + gText_PkmnSqueezedByBind, + gText_PkmnTrappedInVortex, + gText_PkmnWrappedBy, + gText_PkmnClamped, + gText_PkmnHurtBy, + gText_PkmnFreedFrom, + gText_PkmnCrashed, + gText_PkmnShroudedInMist, + gText_PkmnProtectedByMist, + gText_PkmnGettingPumped, + gText_PkmnHitWithRecoil, + gText_PkmnProtectedItself2, + gText_PkmnBuffetedBySandstorm, + gText_PkmnPeltedByHail, + gText_PkmnSeeded, + gText_PkmnEvadedAttack, + gText_PkmnSappedByLeechSeed, + gText_PkmnFastAsleep, + gText_PkmnWokeUp, + gText_PkmnUproarKeptAwake, + gText_PkmnWokeUpInUproar, + gText_PkmnCausedUproar, + gText_PkmnMakingUproar, + gText_PkmnCalmedDown, + gText_PkmnCantSleepInUproar, + gText_PkmnStockpiled, + gText_PkmnCantStockpile, + gText_PkmnCantSleepInUproar2, + gText_UproarKeptPkmnAwake, + gText_PkmnStayedAwakeUsing, + gText_PkmnStoringEnergy, + gText_PkmnUnleashedEnergy, + gText_PkmnFatigueConfusion, + gText_PkmnPickedUpItem, + gText_PkmnUnaffected, + gText_PkmnTransformedInto, + gText_PkmnMadeSubstitute, + gText_PkmnHasSubstitute, + gText_SubstituteDamaged, + gText_PkmnSubstituteFaded, + gText_PkmnMustRecharge, + gText_PkmnRageBuilding, + gText_PkmnMoveWasDisabled, + gText_PkmnMoveIsDisabled, + gText_PkmnMoveDisabledNoMore, + gText_PkmnGotEncore, + gText_PkmnEncoreEnded, + gText_PkmnTookAim, + gText_PkmnSketchedMove, + gText_PkmnTryingToTakeFoe, + gText_PkmnTookFoe, + gText_PkmnReducedPP, + gText_PkmnStoleItem, + gText_PkmnCantEscape, + gText_PkmnFellIntoNightmare, + gText_PkmnLockedInNightmare, + gText_PkmnLaidCurse, + gText_PkmnAfflictedByCurse, + gText_SpikesScattered, + gText_PkmnHurtBySpikes, + gText_PkmnIdentified, + gText_PkmnPerishCountFell, + gText_PkmnBracedItself, + gText_PkmnEnduredHit, + gText_MagnitudeStrength, + gText_PkmnCutHPMaxedAttack, + gText_PkmnCopiedStatChanges, + gText_PkmnGotFree, + gText_PkmnShedLeechSeed, + gText_PkmnBlewAwaySpikes, + gText_PkmnFledFromBattle, + gText_PkmnForesawAttack, + gText_PkmnTookAttack, + gText_PkmnAttack, + gText_PkmnCenterAttention, + gText_PkmnChargingPower, + gText_NaturePowerTurnedInto, + gText_PkmnStatusNormal, + gText_PkmnHasNoMovesLeft, + gText_PkmnSubjectedToTorment, + gText_PkmnCantUseMoveTorment, + gText_PkmnTighteningFocus, + gText_PkmnFellForTaunt, + gText_PkmnCantUseMoveTaunt, + gText_PkmnReadyToHelp, + gText_PkmnSwitchedItems, + gText_PkmnCopiedFoe, + gText_PkmnMadeWish, + gText_PkmnWishCameTrue, + gText_PkmnPlantedRoots, + gText_PkmnAbsorbedNutrients, + gText_PkmnAnchoredItself, + gText_PkmnWasMadeDrowsy, + gText_PkmnKnockedOff, + gText_PkmnSwappedAbilities, + gText_PkmnSealedOpponentMove, + gText_PkmnCantUseMoveSealed, + gText_PkmnWantsGrudge, + gText_PkmnLostPPGrudge, + gText_PkmnShroudedItself, + gText_PkmnMoveBounced, + gText_PkmnWaitsForTarget, + gText_PkmnSnatchedMove, + gText_PkmnMadeItRain, + gText_PkmnRaisedSpeed, + gText_PkmnProtectedBy, + gText_PkmnPreventsUsage, + gText_PkmnRestoredHPUsing, + gText_PkmnChangedTypeWith, + gText_PkmnPreventsParalysisWith, + gText_PkmnPreventsRomanceWith, + gText_PkmnPreventsPoisoningWith, + gText_PkmnPreventsConfusionWith, + gText_PkmnRaisedFirePowerWith, + gText_PkmnAnchorsItselfWith, + gText_PkmnCutsAttackWith, + gText_PkmnPreventsStatLossWith, + gText_PkmnHurtsWith, + gText_PkmnTraced, + gText_StatSharply, + gText_StatRose, + gText_StatHarshly, + gText_StatFell, + gText_PkmnsStatChanged, + gText_PkmnsStatChanged2, + gText_PkmnsStatChanged3, + gText_PkmnsStatChanged4, + gText_CriticalHit, + gText_OneHitKO, + gText_123Poof, + gText_AndEllipsis, + gText_NotVeryEffective, + gText_SuperEffective, + gText_GotAwaySafely, + gText_WildPkmnFled, + gText_NoRunningFromTrainers, + gText_CantEscape, + gText_DontLeaveBirch, + gText_ButNothingHappened, + gText_ButItFailed, + gText_ItHurtConfusion, + gText_MirrorMoveFailed, + gText_StartedToRain, + gText_DownpourStarted, + gText_RainContinues, + gText_DownpourContinues, + gText_RainStopped, + gText_SandstormBrewed, + gText_SandstormRages, + gText_SandstormSubsided, + gText_SunlightGotBright, + gText_SunlightStrong, + gText_SunlightFaded, + gText_StartedHail, + gText_HailContinues, + gText_HailStopped, + gText_FailedToSpitUp, + gText_FailedToSwallow, + gText_WindBecameHeatWave, + gText_StatChangesGone, + gText_CoinsScattered, + gText_TooWeakForSubstitute, + gText_SharedPain, + gText_BellChimed, + gText_FaintInThree, + gText_NoPPLeft, + gText_ButNoPPLeft, + gText_PlayerUsedItem, + gText_WallyUsedItem, + gText_TrainerBlockedBall, + gText_DontBeAThief, + gText_ItDodgedBall, + gText_YouMissedPkmn, + gText_PkmnBrokeFree, + gText_ItAppearedCaught, + gText_AarghAlmostHadIt, + gText_ShootSoClose, + gText_GotchaPkmnCaught, + gText_GotchaPkmnCaught2, + gText_GiveNicknameCaptured, + gText_PkmnSentToPC, + gText_PkmnDataAddedToDex, + gText_ItIsRaining, + gText_SandstormIsRaging, + gText_CantEscape2, + gText_PkmnIgnoresAsleep, + gText_PkmnIgnoredOrders, + gText_PkmnBeganToNap, + gText_PkmnLoafing, + gText_PkmnWontObey, + gText_PkmnTurnedAway, + gText_PkmnPretendNotNotice, + gText_EnemyAboutToSwitchPkmn, + gText_CreptCloser, + gText_CantGetCloser, + gText_PkmnWatchingCarefully, + gText_PkmnCuriousAboutX, + gText_PkmnEnthralledByX, + gText_PkmnIgnoredX, + gText_ThrewPokeblockAtPkmn, + gText_OutOfSafariBalls, + gText_PkmnsItemCuredParalysis, + gText_PkmnsItemCuredPoison, + gText_PkmnsItemHealedBurn, + gText_PkmnsItemDefrostedIt, + gText_PkmnsItemWokeIt, + gText_PkmnsItemSnappedOut, + gText_PkmnsItemCuredProblem, + gText_PkmnsItemRestoredHealth, + gText_PkmnsItemRestoredPP, + gText_PkmnsItemRestoredStatus, + gText_PkmnsItemRestoredHPALittle, + gText_ItemAllowsOnlyYMove, + gText_PkmnHungOnWithX, + gText_EmptyString3, + gText_PkmnsXPreventsBurns, + gText_PkmnsXBlocksY, + gText_PkmnsXRestoredHPALittle2, + gText_PkmnsXWhippedUpSandstorm, + gText_PkmnsXPreventsYLoss, + gText_PkmnsXInfatuatedY, + gText_PkmnsXMadeYIneffective, + gText_PkmnsXCuredYProblem, + gText_ItSuckedLiquidOoze, + gText_PkmnTransformed, + gText_ElectricityWeakened, + gText_FireWeakened, + gText_PkmnHidUnderwater, + gText_PkmnSprangUp, + gText_HMMovesCantBeForgotten, + gText_XFoundOneY, + gText_PlayerDefeatedLinkTrainerTrainer1, + gText_SoothingAroma, + gText_ItemsCantBeUsedNow, + gText_ForXCommaYZ, + gText_UsingXTheYOfZN, + gText_PkmnUsedXToGetPumped, + gText_PkmnsXMadeYUseless, + gText_PkmnTrappedBySandTomb, + gText_EmptyString4, + gText_ABoosted, + gText_PkmnsXIntensifiedSun, + gText_PkmnMakesGroundMiss, + gText_YouThrowABallNowRight, + gText_PkmnsXTookAttack, + gText_PkmnChoseXAsDestiny, + gText_PkmnLostFocus, + gText_UseNextPkmn, + gText_PkmnFledUsingIts, + gText_PkmnFledUsing, + gText_PkmnWasDraggedOut, + gText_PreventedFromWorking, + gText_PkmnsItemNormalizedStatus, + gText_Trainer1UsedItem, + gText_BoxIsFull, + gText_PkmnAvoidedAttack, + gText_PkmnsXMadeItIneffective, + gText_PkmnsXPreventsFlinching, + gText_PkmnAlreadyHasBurn, + gText_StatsWontDecrease2, + gText_PkmnsXBlocksY2, + gText_PkmnsXWoreOff, + gText_PkmnRaisedDefALittle, + gText_PkmnRaisedSpDefALittle, + gText_TheWallShattered, + gText_PkmnsXPreventsYsZ, + gText_PkmnsXCuredItsYProblem, + gText_PkmnCantEscape2, + gText_PkmnObtainedX, + gText_PkmnObtainedX2, + gText_PkmnObtainedXYObtainedZ, + gText_ButNoEffect, + gText_PkmnsXHadNoEffectOnY, + gText_TwoInGameTrainersDefeated, + gText_Trainer2LoseText, + gText_PkmnIncapableOfPower, + gText_GlintAppearsInEye, + gText_PkmnGettingIntoPosition, + gText_PkmnBeganGrowlingDeeply, + gText_PkmnEagerForMore, + gText_DefeatedOpponentByReferee, + gText_LostToOpponentByReferee, + gText_TiedOpponentByReferee, + gText_QuestionForfeitMatch, + gText_ForfeitedMatch, + gText_PkmnTransferredSomeonesPC, + gText_PkmnTransferredLanettesPC, + gText_PkmnBoxSomeonesPCFull, + gText_PkmnBoxLanettesPCFull, + gText_Trainer1WinText, + gText_Trainer2WinText, +}; + +const u16 gMissStringIds[] = +{ + STRINGID_ATTACKMISSED, STRINGID_PKMNPROTECTEDITSELF, + STRINGID_PKMNAVOIDEDATTACK, STRINGID_AVOIDEDDAMAGE, + STRINGID_PKMNMAKESGROUNDMISS +}; + +// todo: change values to string Ids +const u16 gUnknown_085CC83E[] = +{ + 0x00e2, 0x00e3, 0x0021, + 0x0112, 0x0165, 0x00e8, 0x00e9, 0x00e5, 0x00ed, 0x00f0, 0x00f3, + 0x00ee, 0x00f4, 0x0066, 0x0067, 0x00ef, 0x00f5, 0x00ea, 0x00eb, + 0x00ec, 0x0065, 0x0098, 0x00e5, 0x00e5, 0x004e, 0x0160, 0x004d, + 0x0161, 0x004f, 0x0068, 0x0069, 0x001b, 0x006a, 0x0139, 0x0052, + 0x0053, 0x0070, 0x0071, 0x0073, 0x0074, 0x006c, 0x006e, 0x00f7, + 0x004c, 0x0075, 0x0076, 0x0077, 0x00d5, 0x00d6, 0x003d, 0x0130, + 0x0145, 0x0146, 0x00d7, 0x00d8, 0x003e, 0x0130, 0x0054, 0x0055, + 0x0056, 0x0057, 0x0058, 0x0059, 0x013d, 0x013e, 0x005a, 0x005c, + 0x005b, 0x005d, 0x005b, 0x0148, 0x0061, 0x00e5, 0x0063, 0x00e5, + 0x007d, 0x00e5, 0x007e, 0x00fb, 0x0028, 0x0029, 0x0037, 0x0038, + 0x0023, 0x0024, 0x002e, 0x002f, 0x0031, 0x0032, 0x0035, 0x0036, + 0x0017, 0x007c, 0x0045, 0x0136, 0x002d, 0x0139, 0x013b, 0x013c, + 0x00fd, 0x00fd, 0x00fd, 0x00fd, 0x0142, 0x00a1, 0x014f, 0x0107, + 0x0108, 0x0109, 0x010a, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, + 0x0110, 0x0110, 0x0110, 0x0111, 0x0110, 0x0110, 0x0110, 0x00f1, + 0x0110, 0x0110, 0x0110, 0x0116, 0x0117, 0x0118, 0x0119, 0x016d, + 0x011b, 0x011c, 0x011e, 0x011f, 0x0120, 0x0128, 0x0123, 0x0126, + 0x0125, 0x0124, 0x0127, 0x0129, 0x0156, 0x0131, 0x0163, 0x016a, + 0x00c7, 0x0163, 0x016a, 0x00c9, 0x0163, 0x016a, 0x0166, 0x0167, + 0x0168, 0x00cb, 0x0137, 0x0177, 0x0178, 0x0179, 0x017a, +}; + +const u16 gTrappingMoves[] = +{ + MOVE_BIND, MOVE_WRAP, MOVE_FIRE_SPIN, MOVE_CLAMP, MOVE_WHIRLPOOL, MOVE_SAND_TOMB, 0xFFFF +}; + +const u8 gText_PkmnIsEvolving[] = _("What?\n{STR_VAR_1} is evolving!"); +const u8 gText_CongratsPkmnEvolved[] = _("Congratulations! Your {STR_VAR_1}\nevolved into {STR_VAR_2}!{UNKNOWN_A}\p"); +const u8 gText_PkmnStoppedEvolving[] = _("Huh? {STR_VAR_1}\nstopped evolving!\p"); +const u8 gText_EllipsisQuestionMark[] = _("……?\p"); +const u8 gText_WhatWillPkmnDo[] = _("What will\n{B_SCR_ACTIVE_NAME_WITH_PREFIX} do?"); +const u8 gText_WhatWillPkmnDo2[] = _("What will\n{B_PLAYER_NAME} do?"); +const u8 gText_WhatWillWallyDo[] = _("What will\nWALLY do?"); +const u8 gText_LinkStandby[] = _("{PAUSE 16}Link standby…"); +const u8 gText_BattleMenu[] = _("FIGHT{CLEAR_TO 56}BAG\nPOKéMON{CLEAR_TO 56}RUN"); +const u8 gText_SafariZoneMenu[] = _("BALL{CLEAR_TO 56}{POKEBLOCK}\nGO NEAR{CLEAR_TO 56}RUN"); +const u8 gText_MoveInterfacePP[] = _("PP "); +const u8 gText_MoveInterfaceType[] = _("TYPE/"); +const u8 gText_MoveInterfacePpType[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}PP\nTYPE/"); +const u8 gText_MoveInterfaceDynamicColors[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}"); +const u8 gText_WhichMoveToForget4[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Which move should\nbe forgotten?"); +const u8 gText_BattleYesNoChoice[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Yes\nNo"); +const u8 gText_BattleSwitchWhich[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}Switch\nwhich?"); +const u8 gText_BattleSwitchWhich2[] = _("{PALETTE 5}{COLOR_HIGHLIGHT_SHADOW DYNAMIC_COLOR4 DYNAMIC_COLOR5 DYNAMIC_COLOR6}"); +const u8 gText_BattleSwitchWhich3[] = _("{UP_ARROW}"); +const u8 gText_BattleSwitchWhich4[] = _("{ESCAPE 4}"); +const u8 gText_BattleSwitchWhich5[] = _("-"); + +const u8 gText_HP[] = _("HP"); +const u8 gText_Attack[] = _("ATTACK"); +const u8 gText_Defense[] = _("DEFENSE"); +const u8 gText_SpAtk[] = _("SP. ATK"); +const u8 gText_SpDef[] = _("SP. DEF"); + +const u8 * const gStatNamesTable2[] = +{ + gText_HP, gText_SpAtk, gText_Attack, + gText_SpDef, gText_Defense, gText_Speed +}; + +const u8 gText_SafariBalls[] = _("{HIGHLIGHT DARK_GREY}SAFARI BALLS"); +const u8 gText_SafariBallLeft[] = _("{HIGHLIGHT DARK_GREY}Left: $" "{HIGHLIGHT DARK_GREY}");const u8 gText_Sleep[] = _( "sleep");const u8 gText_Poison[] = _( "poison");const u8 gText_Burn[] = _( "burn");const u8 gText_Paralysis[] = _( "paralysis");const u8 gText_Ice[] = _( "ice");const u8 gText_Confusion[] = _( "confusion");const u8 gText_Love[] = _( "love"); +const u8 gText_SpaceAndSpace[] = _(" and "); +const u8 gText_CommaSpace[] = _(", "); +const u8 gText_Space2[] = _(" "); +const u8 gText_ScrollTextUp[] = _("\l"); +const u8 gText_NewLine[] = _("\n"); +const u8 gText_Are[] = _("are"); +const u8 gText_Are2[] = _("are"); +const u8 gText_BadEgg[] = _("Bad EGG"); +const u8 gText_BattleWallyName[] = _("WALLY"); +const u8 gText_Win[] = _("{HIGHLIGHT TRANSPARENT}Win"); +const u8 gText_Loss[] = _("{HIGHLIGHT TRANSPARENT}Loss"); +const u8 gText_Draw[] = _("{HIGHLIGHT TRANSPARENT}Draw"); +const u8 gText_SpaceIs[] = _(" is"); +const u8 gText_ApostropheS[] = _("’s"); + +const u8 gText_UnknownMoveTypes[][17] = +{ + _("a NORMAL move"), + _("a FIGHTING move"), + _("a FLYING move"), + _("a POISON move"), + _("a GROUND move"), + _("a ROCK move"), + _("a BUG move"), + _("a GHOST move"), + _("a STEEL move"), + _("a ??? move"), + _("a FIRE move"), + _("a WATER move"), + _("a GRASS move"), + _("an ELECTRIC move"), + _("a PSYCHIC move"), + _("an ICE move"), + _("a DRAGON move"), + _("a DARK move") +}; + +const u8 gText_BattleTourney[] = _("BATTLE TOURNEY"); +const u8 gText_Round1[] = _("Round 1"); +const u8 gText_Round2[] = _("Round 2"); +const u8 gText_Semifinal[] = _("Semifinal"); +const u8 gText_Final[] = _("Final"); + +const u8 * const gRoundsStringTable[] = +{ + gText_Round1, + gText_Round2, + gText_Semifinal, + gText_Final +}; + +const u8 gText_TheGreatNewHope[] = _("The great new hope!\p"); +const u8 gText_WillChampinshipDreamComeTrue[] = _("Will the championship dream come true?!\p"); +const u8 gText_AFormerChampion[] = _("A former CHAMPION!\p"); +const u8 gText_ThePreviousChampion[] = _("The previous CHAMPION!\p"); +const u8 gText_TheUnbeatenChampion[] = _("The unbeaten CHAMPION!\p"); + +const u8 gText_PlayerMon1Name[] = _("{B_PLAYER_MON1_NAME}"); +const u8 gText_Vs[] = _("VS"); +const u8 gText_OpponentMon1Name[] = _("{B_OPPONENT_MON1_NAME}"); +const u8 gText_Mind[] = _("Mind"); +const u8 gText_Skill[] = _("Skill"); +const u8 gText_Body[] = _("Body"); +const u8 gText_Judgement[] = _("{B_BUFF1}{CLEAR 13}Judgment{CLEAR 13}{B_BUFF2}"); +const u8 gText_TwoTrainersSentPkmn[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} sent\nout {B_OPPONENT_MON1_NAME}!\p{B_TRAINER2_CLASS} {B_TRAINER2_NAME} sent\nout {B_OPPONENT_MON2_NAME}!"); +const u8 gText_Trainer2SentOutPkmn[] = _("{B_TRAINER2_CLASS} {B_TRAINER2_NAME} sent\nout {B_BUFF1}!"); +const u8 gText_TwoTrainersWantToBattle[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} and\n{B_TRAINER2_CLASS} {B_TRAINER2_NAME}\lwant to battle!\p"); +const u8 gText_InGamePartnerSentOutZGoN[] = _("{B_PARTNER_CLASS} {B_PARTNER_NAME} sent\nout {B_PLAYER_MON2_NAME}!\lGo, {B_PLAYER_MON1_NAME}!"); +const u8 gText_TwoInGameTrainersDefeated[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} and\n{B_TRAINER2_CLASS} {B_TRAINER2_NAME}\lwere defeated!\p"); +const u8 gText_Trainer2LoseText[] = _("{B_TRAINER2_LOSE_TEXT}"); +const u8 gText_PkmnIncapableOfPower[] = _("{B_ATK_NAME_WITH_PREFIX} appears incapable\nof using its power!"); +const u8 gText_GlintAppearsInEye[] = _("A glint appears in\n{B_ACTIVE_NAME_WITH_PREFIX}’s eyes!"); +const u8 gText_PkmnGettingIntoPosition[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is getting into\nposition!"); +const u8 gText_PkmnBeganGrowlingDeeply[] = _("{B_ACTIVE_NAME_WITH_PREFIX} began growling deeply!"); +const u8 gText_PkmnEagerForMore[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is eager for more!"); + +const u16 gUnknown_085CCF0A[] = +{ + 0x016E, 0x016F, 0x0170, 0x0171 +}; + +const u8 gText_RefIfNothingIsDecided[] = _("REFEREE: If nothing is decided in\n3 turns, we will go to judging!"); +const u8 gText_RefThatsIt[] = _("REFEREE: That’s it! We will now go to\njudging to determine the winner!"); +const u8 gText_RefJudgeMind[] = _("REFEREE: Judging category 1, Mind!\nThe POKéMON showing the most guts!\p"); +const u8 gText_RefJudgeSkill[] = _("REFEREE: Judging category 2, Skill!\nThe POKéMON using moves the best!\p"); +const u8 gText_RefJudgeBody[] = _("REFEREE: Judging category 3, Body!\nThe POKéMON with the most vitality!\p"); +const u8 gText_RefJudgement1[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_PLAYER_NAME}’s {B_PLAYER_MON1_NAME}!\p"); +const u8 gText_RefJudgement2[] = _("REFEREE: Judgment: {B_BUFF1} to {B_BUFF2}!\nThe winner is {B_TRAINER1_NAME}’s {B_OPPONENT_MON1_NAME}!\p"); +const u8 gText_RefJudgement3[] = _("REFEREE: Judgment: 3 to 3!\nWe have a draw!\p"); +const u8 gText_DefeatedOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} defeated the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE’s decision!"); +const u8 gText_LostToOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} lost to the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE’s decision!"); +const u8 gText_TiedOpponentByReferee[] = _("{B_PLAYER_MON1_NAME} tied the opponent\n{B_OPPONENT_MON1_NAME} in a REFEREE’s decision!"); +const u8 gText_RefCommenceBattle[] = _("REFEREE: {B_PLAYER_MON1_NAME} VS {B_OPPONENT_MON1_NAME}!\nCommence battling!"); + +const u8 * const gRefereeStringsTable[] = +{ + gText_RefIfNothingIsDecided, + gText_RefThatsIt, + gText_RefJudgeMind, + gText_RefJudgeSkill, + gText_RefJudgeBody, + gText_RefJudgement1, + gText_RefJudgement2, + gText_RefJudgement3, + gText_RefCommenceBattle, +}; + +const u8 gText_QuestionForfeitMatch[] = _("Would you like to forfeit the match\nand quit now?"); +const u8 gText_ForfeitedMatch[] = _("{B_PLAYER_NAME} forfeited the match!"); +const u8 gText_Trainer1WinText[] = _("{B_TRAINER1_WIN_TEXT}"); +const u8 gText_Trainer2WinText[] = _("{B_TRAINER2_WIN_TEXT}"); +const u8 gText_Trainer1Fled[] = _( "{PLAY_SE 0x0011}{B_TRAINER1_CLASS} {B_TRAINER1_NAME} fled!"); +const u8 gText_PlayerLostAgainstTrainer1[] = _("Player lost against\n{B_TRAINER1_CLASS} {B_TRAINER1_NAME}!"); +const u8 gText_PlayerBattledToDrawTrainer1[] = _("Player battled to a draw against\n{B_TRAINER1_CLASS} {B_TRAINER1_NAME}!"); +const u8 gText_RecordBattleToPass[] = _("Would you like to record your battle\non your FRONTIER PASS?"); +const u8 gText_BattleRecordedOnPass[] = _("{B_PLAYER_NAME}’s battle result was recorded\non the FRONTIER PASS."); +const u8 gText_LinkTrainerWantsToBattlePause[] = _("{B_20}\nwants to battle!{PAUSE 49}"); +const u8 gText_TwoLinkTrainersWantToBattlePause[] = _("{B_20} and {B_21}\nwant to battle!{PAUSE 49}"); + +const u16 gUnknown_085CD336[] = +{ + 0x000e, 0x0046, 0x004a, 0x006a, 0x006b, 0x006c, 0x006e, 0x006f, + 0x0079, 0x007b, 0x007d, 0x0094, 0x0096, 0x0097, 0x009b, 0x009c, + 0x009f, 0x00a4, 0x00aa, 0x00ad, 0x00b6, 0x00bf, 0x00cb, 0x00cd, + 0x00cf, 0x00d6, 0x00ed, 0x00f4, 0x00f5, 0x010a, 0x010f, 0x0112, + 0x0113, 0x011a, 0x0125, 0x0136, 0x013c, 0x0140, 0x0149, 0x014a, + 0x014e, 0x0154, 0x0000, 0x0064, 0x0069, 0x0075, 0x0085, 0x00af, + 0x010d, 0x0153, 0x0000, 0x0060, 0x0061, 0x0066, 0x0068, 0x008c, + 0x0090, 0x00a5, 0x00b8, 0x010c, 0x0111, 0x0118, 0x0119, 0x0129, + 0x012a, 0x012c, 0x0139, 0x015a, 0x015b, 0x0000, 0x0001, 0x000a, + 0x000b, 0x0011, 0x0013, 0x0014, 0x0015, 0x001e, 0x0023, 0x0025, + 0x0027, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0040, 0x0047, + 0x0051, 0x0059, 0x005a, 0x005b, 0x005c, 0x0067, 0x0076, 0x007a, + 0x0080, 0x0084, 0x008b, 0x0091, 0x00a3, 0x00a9, 0x00ab, 0x00ae, + 0x00c1, 0x00cc, 0x00d5, 0x00f9, 0x00fd, 0x00ff, 0x0100, 0x0103, + 0x0104, 0x0110, 0x011b, 0x0141, 0x0157, 0x0000, +}; + +const u8 gUnknown_085CD422[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0}; + +const u16 gUnknown_085CD42C[] = +{ + 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101, + 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000, + 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102, + 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100, + 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x01ff, + 0x0000, 0x0100, 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100, + 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100, 0x0600, 0x0000, +}; + +const u16 gUnknown_085CD54C[] = +{ + 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101, + 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000, + 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102, + 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100, + 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0100, 0x0f0e, 0x0000, + 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, + 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, + 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, + 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0111, 0x0100, 0x0000, 0x0201, + 0x0301, 0x0000 +}; + +const u16 * const gUnknown_085CD660[] = +{ + gUnknown_085CD42C, gUnknown_085CD54C +}; + +const u8 gUnknown_085CD668[] = {8, 4, 1, 0}; + +extern struct StringInfoBattle *gStringInfo; + +void BufferStringBattle(u16 stringID) +{ + s32 i; + const u8* stringPtr = NULL; + + gStringInfo = (struct StringInfoBattle*)(&gBattleBufferA[gActiveBank][4]); + gLastUsedItem = gStringInfo->lastItem; + gLastUsedAbility = gStringInfo->lastAbility; + gBattleScripting.bank = gStringInfo->scrActive; + *(&gBattleStruct->field_52) = gStringInfo->unk1605E; + *(&gBattleStruct->hpScale) = gStringInfo->hpScale; + gStringBank = gStringInfo->StringBank; + *(&gBattleStruct->stringMoveType) = gStringInfo->moveType; + + for (i = 0; i < BATTLE_BANKS_COUNT; i++) + { + gAbilitiesPerBank[i] = gStringInfo->abilities[i]; + } + for (i = 0; i < TEXT_BUFF_ARRAY_COUNT; i++) + { + gBattleTextBuff1[i] = gStringInfo->textBuffs[0][i]; + gBattleTextBuff2[i] = gStringInfo->textBuffs[1][i]; + gBattleTextBuff3[i] = gStringInfo->textBuffs[2][i]; + } + + switch (stringID) + { + case STRINGID_INTROMSG: // first battle msg + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + { + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + { + if (gBattleTypeFlags & BATTLE_TYPE_x800000) + { + stringPtr = gText_TwoTrainersWantToBattle; + } + else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + { + if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) + stringPtr = gText_TwoLinkTrainersWantToBattlePause; + else + stringPtr = gText_TwoLinkTrainersWantToBattle; + } + else + { + if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + stringPtr = gText_Trainer1WantsToBattle; + else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) + stringPtr = gText_LinkTrainerWantsToBattlePause; + else + stringPtr = gText_LinkTrainerWantsToBattle; + } + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) + stringPtr = gText_TwoTrainersWantToBattle; + else if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) + stringPtr = gText_TwoTrainersWantToBattle; + else + stringPtr = gText_Trainer1WantsToBattle; + } + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_LEGENDARY) + stringPtr = gText_WildPkmnAppeared2; + else if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) // interesting, looks like they had something planned for wild double battles + stringPtr = gText_TwoWildPkmnAppeared; + else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL) + stringPtr = gText_WildPkmnAppearedPause; + else + stringPtr = gText_WildPkmnAppeared; + } + break; + case STRINGID_INTROSENDOUT: // poke first send-out + if (GetBankSide(gActiveBank) == SIDE_PLAYER) + { + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + { + if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER) + stringPtr = gText_InGamePartnerSentOutZGoN; + else if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) + stringPtr = gText_GoTwoPkmn; + else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + stringPtr = gText_LinkPartnerSentOutPkmnGoPkmn; + else + stringPtr = gText_GoTwoPkmn; + } + else + { + stringPtr = gText_GoPkmn; + } + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + { + if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) + stringPtr = gText_TwoTrainersSentPkmn; + else if (gBattleTypeFlags & BATTLE_TYPE_x800000) + stringPtr = gText_TwoTrainersSentPkmn; + else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + stringPtr = gText_TwoLinkTrainersSentOutPkmn; + else if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + stringPtr = gText_LinkTrainerSentOutTwoPkmn; + else + stringPtr = gText_Trainer1SentOutTwoPkmn; + } + else + { + if (!(gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000))) + stringPtr = gText_Trainer1SentOutPkmn; + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + stringPtr = gText_Trainer1SentOutPkmn; + else + stringPtr = gText_LinkTrainerSentOutPkmn; + } + } + break; + case STRINGID_RETURNMON: // sending poke to ball msg + if (GetBankSide(gActiveBank) == SIDE_PLAYER) + { + if (*(&gBattleStruct->hpScale) == 0) + stringPtr = gText_PkmnThatsEnough; + else if (*(&gBattleStruct->hpScale) == 1 || gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + stringPtr = gText_PkmnComeBack; + else if (*(&gBattleStruct->hpScale) == 2) + stringPtr = gText_PkmnOkComeBack; + else + stringPtr = gText_PkmnGoodComeBack; + } + else + { + if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_800 || gBattleTypeFlags & BATTLE_TYPE_x2000000) + { + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + stringPtr = gText_LinkTrainer2WithdrewPkmn; + else + stringPtr = gText_LinkTrainer1WithdrewPkmn; + } + else + { + stringPtr = gText_Trainer1WithdrewPkmn; + } + } + break; + case STRINGID_SWITCHINMON: // switch-in msg + if (GetBankSide(gBattleScripting.bank) == SIDE_PLAYER) + { + if (*(&gBattleStruct->hpScale) == 0 || gBattleTypeFlags & BATTLE_TYPE_DOUBLE) + stringPtr = gText_GoPkmn2; + else if (*(&gBattleStruct->hpScale) == 1) + stringPtr = gText_DoItPkmn; + else if (*(&gBattleStruct->hpScale) == 2) + stringPtr = gText_GoForItPkmn; + else + stringPtr = gText_YourFoesWeakGetEmPkmn; + } + else + { + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + { + if (gBattleTypeFlags & BATTLE_TYPE_x800000) + { + if (gBattleScripting.bank == 1) + stringPtr = gText_Trainer1SentOutPkmn2; + else + stringPtr = gText_Trainer2SentOutPkmn; + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + stringPtr = gText_LinkTrainerMultiSentOutPkmn; + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + stringPtr = gText_Trainer1SentOutPkmn2; + else + stringPtr = gText_LinkTrainerSentOutPkmn2; + } + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) + { + if (gBattleScripting.bank == 1) + stringPtr = gText_Trainer1SentOutPkmn2; + else + stringPtr = gText_Trainer2SentOutPkmn; + } + else + { + stringPtr = gText_Trainer1SentOutPkmn2; + } + } + } + break; + case STRINGID_USEDMOVE: // pokemon used a move msg + sub_814F8F8(gBattleTextBuff1); + + if (gStringInfo->currentMove > LAST_MOVE_INDEX) + StringCopy(gBattleTextBuff2, gText_UnknownMoveTypes[*(&gBattleStruct->stringMoveType)]); + else + StringCopy(gBattleTextBuff2, gMoveNames[gStringInfo->currentMove]); + + sub_814F950(gBattleTextBuff2); + stringPtr = gText_AttackerUsedX; + break; + case STRINGID_BATTLEEND: // battle end + if (gBattleTextBuff1[0] & BATTLE_OUTCOME_BIT_x80) + { + gBattleTextBuff1[0] &= ~(BATTLE_OUTCOME_BIT_x80); + if (GetBankSide(gActiveBank) == SIDE_OPPONENT && gBattleTextBuff1[0] != BATTLE_DREW) + gBattleTextBuff1[0] ^= (BATTLE_LOST | BATTLE_WON); + + if (gBattleTextBuff1[0] == BATTLE_LOST || gBattleTextBuff1[0] == BATTLE_DREW) + stringPtr = gText_GotAwaySafely; + else if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + stringPtr = gText_TwoWildFled; + else + stringPtr = gText_WildFled; + } + else + { + if (GetBankSide(gActiveBank) == SIDE_OPPONENT && gBattleTextBuff1[0] != BATTLE_DREW) + gBattleTextBuff1[0] ^= (BATTLE_LOST | BATTLE_WON); + + if (gBattleTypeFlags & BATTLE_TYPE_MULTI) + { + switch (gBattleTextBuff1[0]) + { + case BATTLE_WON: + if (gBattleTypeFlags & BATTLE_TYPE_x800000) + stringPtr = gText_TwoInGameTrainersDefeated; + else + stringPtr = gText_TwoLinkTrainersDefeated; + break; + case BATTLE_LOST: + stringPtr = gText_PlayerLostToTwo; + break; + case BATTLE_DREW: + stringPtr = gText_PlayerBattledToDrawVsTwo; + break; + } + } + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + { + switch (gBattleTextBuff1[0]) + { + case BATTLE_WON: + stringPtr = gText_PlayerDefeatedLinkTrainerTrainer1; + break; + case BATTLE_LOST: + stringPtr = gText_PlayerLostAgainstTrainer1; + break; + case BATTLE_DREW: + stringPtr = gText_PlayerBattledToDrawTrainer1; + break; + } + } + else + { + switch (gBattleTextBuff1[0]) + { + case BATTLE_WON: + stringPtr = gText_PlayerDefeatedLinkTrainer; + break; + case BATTLE_LOST: + stringPtr = gText_PlayerLostAgainstLinkTrainer; + break; + case BATTLE_DREW: + stringPtr = gText_PlayerBattledToDrawLinkTrainer; + break; + } + } + } + break; + default: // load a string from the table + if (stringID >= BATTLESTRINGS_COUNT + BATTLESTRINGS_ID_ADDER) + { + gDisplayedStringBattle[0] = EOS; + return; + } + else + { + stringPtr = gBattleStringsTable[stringID - BATTLESTRINGS_ID_ADDER]; + } + break; + } + + BattleStringExpandPlaceholdersToDisplayedString(stringPtr); +} diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index e53292442b..17b0e2ff97 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -34,6 +34,7 @@ #include "pokemon_storage_system.h" #include "task.h" #include "naming_screen.h" +#include "battle_string_ids.h" // variables @@ -1375,7 +1376,7 @@ static void atk02_attackstring(void) return; if (!(gHitMarker & (HITMARKER_NO_ATTACKSTRING | HITMARKER_ATTACKSTRING_PRINTED))) { - PrepareStringBattle(4, gBankAttacker); + PrepareStringBattle(STRINGID_USEDMOVE, gBankAttacker); gHitMarker |= HITMARKER_ATTACKSTRING_PRINTED; } gBattlescriptCurrInstr++; @@ -2000,7 +2001,7 @@ static void atk0B_healthbarupdate(void) if (gBattleMons[gActiveBank].status2 & STATUS2_SUBSTITUTE && gDisableStructs[gActiveBank].substituteHP && !(gHitMarker & HITMARKER_IGNORE_SUBSTITUTE)) { - PrepareStringBattle(0x80, gActiveBank); + PrepareStringBattle(STRINGID_SUBSTITUTEDAMAGED, gActiveBank); } else { @@ -2157,7 +2158,7 @@ static void atk0D_critmessage(void) { if (gCritMultiplier == 2 && !(gBattleMoveFlags & MOVESTATUS_NOEFFECT)) { - PrepareStringBattle(0xD9, gBankAttacker); + PrepareStringBattle(STRINGID_CRITICALHIT, gBankAttacker); gBattleCommunication[MSG_DISPLAY] = 1; } gBattlescriptCurrInstr++; @@ -2229,22 +2230,22 @@ static void atk0F_resultmessage(void) switch (gBattleMoveFlags & (u8)(~(MOVESTATUS_MISSED))) { case MOVESTATUS_SUPEREFFECTIVE: - stringId = 0xDE; + stringId = STRINGID_SUPEREFFECTIVE; break; case MOVESTATUS_NOTVERYEFFECTIVE: - stringId = 0xDD; + stringId = STRINGID_NOTVERYEFFECTIVE; break; case MOVESTATUS_ONEHITKO: - stringId = 0xDA; + stringId = STRINGID_ONEHITKO; break; case MOVESTATUS_ENDURED: - stringId = 0x99; + stringId = STRINGID_PKMNENDUREDHIT; break; case MOVESTATUS_FAILED: - stringId = 0xE5; + stringId = STRINGID_BUTITFAILED; break; case MOVESTATUS_NOTAFFECTED: - stringId = 0x1B; + stringId = STRINGID_ITDOESNTAFFECT; break; case MOVESTATUS_HUNGON: gLastUsedItem = gBattleMons[gBankTarget].item; @@ -2256,7 +2257,7 @@ static void atk0F_resultmessage(void) default: if (gBattleMoveFlags & MOVESTATUS_NOTAFFECTED) { - stringId = 0x1B; + stringId = STRINGID_ITDOESNTAFFECT; } else if (gBattleMoveFlags & MOVESTATUS_ONEHITKO) { @@ -2285,7 +2286,7 @@ static void atk0F_resultmessage(void) } else if (gBattleMoveFlags & MOVESTATUS_FAILED) { - stringId = 0xE5; + stringId = STRINGID_BUTITFAILED; } else { @@ -3592,7 +3593,7 @@ static void atk23_getexp(void) PREPARE_WORD_NUMBER_BUFFER(gBattleTextBuff3, 5, gBattleMoveDamage) - PrepareStringBattle(0xD, gBattleStruct->expGetterBank); + PrepareStringBattle(STRINGID_PKMNGAINEDEXP, gBattleStruct->expGetterBank); MonGainEVs(&gPlayerParty[gBattleStruct->expGetterId], gBattleMons[gBank1].species); } gBattleStruct->sentInPokes >>= 1; @@ -6181,7 +6182,7 @@ static void atk5A_yesnoboxlearnmove(void) u16 moveId = GetMonData(&gPlayerParty[gBattleStruct->expGetterId], MON_DATA_MOVE1 + movePosition); if (IsHMMove2(moveId)) { - PrepareStringBattle(0x13F, gActiveBank); + PrepareStringBattle(STRINGID_HMMOVESCANTBEFORGOTTEN, gActiveBank); gBattleScripting.learnMoveState = 6; } else diff --git a/sym_ewram.txt b/sym_ewram.txt index b1572bf25a..0299dad2e6 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -238,26 +238,7 @@ gBattle_WIN1H: @ 2022E28 gBattle_WIN1V: @ 2022E2A .space 0x2 -gDisplayedStringBattle: @ 2022E2C - .space 0x12C - -gBattleTextBuff1: @ 2022F58 - .space 0x2 - -gUnknown_02022F5A: @ 2022F5A - .space 0x2 - -gUnknown_02022F5C: @ 2022F5C - .space 0xC - -gBattleTextBuff2: @ 2022F68 - .space 0x2 - -gUnknown_02022F6A: @ 2022F6A - .space 0xE - -gBattleTextBuff3: @ 2022F78 - .space 0x10 + .include "src/battle_message.o" gUnknown_02022F88: @ 2022F88 .space 0x64 From 7552caaadc3b5ec64bc4ea8c6927d6d452238730 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Sat, 7 Oct 2017 19:59:41 +0200 Subject: [PATCH 07/13] placeholders for battle strings are done --- asm/battle_message.s | 1954 -------------------------------------- asm/battle_setup.s | 12 +- asm/battle_tower.s | 12 +- asm/rom6.s | 2 +- charmap.txt | 6 +- include/battle_2.h | 2 +- include/battle_message.h | 106 +-- include/global.h | 37 +- src/battle_2.c | 2 +- src/battle_message.c | 745 ++++++++++++++- 10 files changed, 783 insertions(+), 2095 deletions(-) diff --git a/asm/battle_message.s b/asm/battle_message.s index 9afa6e3995..d78167a261 100644 --- a/asm/battle_message.s +++ b/asm/battle_message.s @@ -5,1960 +5,6 @@ .text - thumb_func_start BattleStringExpandPlaceholdersToDisplayedString -BattleStringExpandPlaceholdersToDisplayedString: @ 814E6F0 - push {lr} - ldr r1, =gDisplayedStringBattle - bl BattleStringExpandPlaceholders - pop {r1} - bx r1 - .pool - thumb_func_end BattleStringExpandPlaceholdersToDisplayedString - - thumb_func_start AppendStatusString -AppendStatusString: @ 814E700 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - ldr r1, =gUnknown_085CD422 - mov r0, sp - movs r2, 0x8 - bl memcpy - mov r2, sp - movs r3, 0 - b _0814E728 - .pool -_0814E71C: - strb r1, [r2] - adds r4, 0x1 - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x7 - bhi _0814E730 -_0814E728: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814E71C -_0814E730: - ldr r5, [sp] - ldr r4, [sp, 0x4] - movs r3, 0 - ldr r2, =gStatusConditionStringsTable -_0814E738: - ldr r1, [r2] - ldr r0, [r1] - cmp r5, r0 - bne _0814E750 - ldr r0, [r1, 0x4] - cmp r4, r0 - bne _0814E750 - ldr r0, [r2, 0x4] - b _0814E75A - .pool -_0814E750: - adds r2, 0x8 - adds r3, 0x1 - cmp r3, 0x6 - bls _0814E738 - movs r0, 0 -_0814E75A: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end AppendStatusString - - thumb_func_start BattleStringExpandPlaceholders - BattleStringExpandPlaceholders: @ 814E764 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x20 - mov r9, r0 - mov r8, r1 - movs r6, 0 - movs r4, 0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 18 - ands r0, r1 - cmp r0, 0 - beq _0814E794 - ldr r0, =gUnknown_0203C7B4 - ldrb r7, [r0] - b _0814E79C - .pool -_0814E794: - bl GetMultiplayerId - lsls r0, 24 - lsrs r7, r0, 24 -_0814E79C: - mov r0, r9 - ldrb r1, [r0] - bl _0814F620 -_0814E7A4: - cmp r1, 0xFD - beq _0814E7AC - bl _0814F610 -_0814E7AC: - movs r1, 0x1 - add r9, r1 - mov r2, r9 - ldrb r0, [r2] - cmp r0, 0x34 - bls _0814E7BC - bl _0814F5C0 -_0814E7BC: - lsls r0, 2 - ldr r1, =_0814E7CC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814E7CC: - .4byte _0814E8A0 - .4byte _0814E8CE - .4byte _0814E90A - .4byte _0814E914 - .4byte _0814E920 - .4byte _0814E92C - .4byte _0814E960 - .4byte _0814E994 - .4byte _0814E9C8 - .4byte _0814E9FC - .4byte _0814EA38 - .4byte _0814EA78 - .4byte _0814EAB8 - .4byte _0814EAF8 - .4byte _0814EBB0 - .4byte _0814EC38 - .4byte _0814ECD4 - .4byte _0814ED70 - .4byte _0814EE0C - .4byte _0814EEA8 - .4byte _0814EF44 - .4byte _0814EF5C - .4byte _0814EF98 - .4byte _0814F080 - .4byte _0814F088 - .4byte _0814F098 - .4byte _0814F0A8 - .4byte _0814F0B8 - .4byte _0814F0D8 - .4byte _0814F164 - .4byte _0814F220 - .4byte _0814F230 - .4byte _0814F244 - .4byte _0814F258 - .4byte _0814F27C - .4byte _0814F298 - .4byte _0814F2C0 - .4byte _0814F300 - .4byte _0814F330 - .4byte _0814F3C4 - .4byte _0814F410 - .4byte _0814F418 - .4byte _0814F3E4 - .4byte _0814F3EC - .4byte _0814F43C - .4byte _0814F444 - .4byte _0814F468 - .4byte _0814F4B8 - .4byte _0814F508 - .4byte _0814F548 - .4byte _0814F594 - .4byte _0814F5B4 - .4byte _0814E8E4 -_0814E8A0: - ldr r5, =gBattleTextBuff1 - ldrb r0, [r5] - cmp r0, 0xFD - bne _0814E8B8 - ldr r4, =gStringVar1 - adds r0, r5, 0 - b _0814E8F0 - .pool -_0814E8B8: - adds r0, r5, 0 - bl AppendStatusString - adds r4, r0, 0 - cmp r4, 0 - beq _0814E8C8 - bl _0814F5C0 -_0814E8C8: - adds r4, r5, 0 - bl _0814F5C0 -_0814E8CE: - ldr r1, =gBattleTextBuff2 - ldrb r0, [r1] - cmp r0, 0xFD - bne _0814E904 - ldr r4, =gStringVar2 - b _0814E8EE - .pool -_0814E8E4: - ldr r1, =gBattleTextBuff3 - ldrb r0, [r1] - cmp r0, 0xFD - bne _0814E904 - ldr r4, =gStringVar3 -_0814E8EE: - adds r0, r1, 0 -_0814E8F0: - adds r1, r4, 0 - bl ExpandBattleTextBuffPlaceholders - bl _0814F5C0 - .pool -_0814E904: - adds r4, r1, 0 - bl _0814F5C0 -_0814E90A: - ldr r4, =gStringVar1 - bl _0814F5C0 - .pool -_0814E914: - ldr r4, =gStringVar2 - bl _0814F5C0 - .pool -_0814E920: - ldr r4, =gStringVar3 - bl _0814F5C0 - .pool -_0814E92C: - movs r0, 0 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E960: - movs r0, 0x1 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E994: - movs r0, 0x2 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E9C8: - movs r0, 0x3 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814E9FC: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x18] - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EA38: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x1 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EA78: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x2 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EAB8: - ldr r2, =gBattlePartyID - ldr r1, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r0, 0x18] - movs r0, 0x3 - eors r0, r1 - lsls r0, 1 - adds r0, r2 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EAF8: - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - adds r2, r4, 0 - cmp r0, 0 - beq _0814EB74 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EB36 - ldr r4, =gText_FoePkmnPrefix - b _0814EB36 - .pool -_0814EB2C: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 -_0814EB36: - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EB2C - ldrb r0, [r2] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EB9E - .pool -_0814EB74: - ldrb r0, [r2] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EB9E: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EBB0: - ldr r4, =gBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814EBF8 - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EC24 - .pool -_0814EBF8: - ldrb r0, [r4] - bl GetBankIdentity - adds r1, r0, 0 - movs r0, 0x1 - ands r0, r1 - bl GetBankByIdentity - ldr r1, =gBattlePartyID - lsls r0, 24 - lsrs r0, 23 - adds r0, 0x4 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EC24: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EC38: - ldr r5, =gBankAttacker - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814ECA8 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EC56 - ldr r4, =gText_FoePkmnPrefix -_0814EC56: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EC78 -_0814EC66: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EC66 -_0814EC78: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814ECC2 - .pool -_0814ECA8: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814ECC2: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814ECD4: - ldr r5, =gBankTarget - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814ED44 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814ECF2 - ldr r4, =gText_FoePkmnPrefix -_0814ECF2: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814ED14 -_0814ED02: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814ED02 -_0814ED14: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814ED5E - .pool -_0814ED44: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814ED5E: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814ED70: - ldr r5, =gEffectBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EDE0 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814ED8E - ldr r4, =gText_FoePkmnPrefix -_0814ED8E: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EDB0 -_0814ED9E: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814ED9E -_0814EDB0: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EDFA - .pool -_0814EDE0: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EDFA: - mov r0, sp - bl StringGetEnd10 - bl _0814F5BE - .pool -_0814EE0C: - ldr r5, =gActiveBank - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EE7C - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EE2A - ldr r4, =gText_FoePkmnPrefix -_0814EE2A: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EE4C -_0814EE3A: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EE3A -_0814EE4C: - ldrb r0, [r2] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EE96 - .pool -_0814EE7C: - ldr r1, =gBattlePartyID - ldrb r0, [r5] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EE96: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814EEA8: - ldr r5, =gBattleScripting - ldrb r0, [r5, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814EF18 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814EEC6 - ldr r4, =gText_FoePkmnPrefix -_0814EEC6: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r3, =gBattlePartyID - ldr r2, =gEnemyParty - mov r12, r2 - adds r2, r5, 0 - cmp r0, 0xFF - beq _0814EEE8 -_0814EED6: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814EED6 -_0814EEE8: - ldrb r0, [r2, 0x17] - lsls r0, 1 - adds r0, r3 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814EF32 - .pool -_0814EF18: - ldr r1, =gBattlePartyID - ldrb r0, [r5, 0x17] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814EF32: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814EF44: - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bhi _0814EF6A - ldrh r1, [r2] - b _0814EF8A - .pool -_0814EF5C: - ldr r0, =gStringInfo - ldr r2, [r0] - ldrh r1, [r2, 0x2] - movs r0, 0xB1 - lsls r0, 1 - cmp r1, r0 - bls _0814EF88 -_0814EF6A: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x8E - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - ldr r1, =gText_UnknownMoveTypes - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814EF88: - ldrh r1, [r2, 0x2] -_0814EF8A: - movs r0, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814EF98: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814F06E - ldr r2, =gLastUsedItem - ldrh r0, [r2] - cmp r0, 0xAF - bne _0814F064 - movs r0, 0x40 - ands r1, r0 - cmp r1, 0 - bne _0814F014 - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r0, [r0] - cmp r0, 0 - beq _0814EFE0 - ldr r2, =gStringBank - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0814EFEC - b _0814F05C - .pool -_0814EFE0: - ldr r2, =gStringBank - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0814F05C -_0814EFEC: - ldrb r0, [r2] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - mov r0, sp - bl StringCopy - ldr r1, =gText_BerrySuffix - mov r0, sp - bl StringAppend - b _0814F5BE - .pool -_0814F014: - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gStringBank - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _0814F05C - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - mov r0, sp - bl StringCopy - ldr r1, =gText_BerrySuffix - mov r0, sp - bl StringAppend - b _0814F5BE - .pool -_0814F05C: - ldr r4, =gText_EnigmaBerry - b _0814F5C0 - .pool -_0814F064: - ldrh r0, [r2] - mov r1, sp - bl CopyItemName - b _0814F5BE -_0814F06E: - ldr r0, =gLastUsedItem - ldrh r0, [r0] - mov r1, sp - bl CopyItemName - b _0814F5BE - .pool -_0814F080: - ldr r0, =gLastUsedAbility - b _0814F0C0 - .pool -_0814F088: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBankAttacker - b _0814F0BC - .pool -_0814F098: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBankTarget - b _0814F0BC - .pool -_0814F0A8: - ldr r1, =gAbilitiesPerBank - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - b _0814F0BE - .pool -_0814F0B8: - ldr r1, =gAbilitiesPerBank - ldr r0, =gEffectBank -_0814F0BC: - ldrb r0, [r0] -_0814F0BE: - adds r0, r1 -_0814F0C0: - ldrb r1, [r0] - movs r0, 0xD - muls r1, r0 - ldr r0, =gAbilityNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F0D8: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 20 - ands r0, r1 - cmp r0, 0 - beq _0814F0F0 - bl GetSecretBaseTrainerNameIndex - b _0814F59C - .pool -_0814F0F0: - ldr r3, =gTrainerBattleOpponent_A - ldrh r2, [r3] - movs r0, 0xC0 - lsls r0, 4 - cmp r2, r0 - bne _0814F10C - bl sub_8068BB0 - lsls r0, 16 - lsrs r0, 16 - b _0814F5A0 - .pool -_0814F10C: - ldr r0, =0x000003fe - cmp r2, r0 - bne _0814F11C - bl sub_81A4D00 - b _0814F59C - .pool -_0814F11C: - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F12C - ldrh r0, [r3] - b _0814F598 - .pool -_0814F12C: - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0814F13E - ldrh r0, [r3] - bl sub_81D5530 - b _0814F59C -_0814F13E: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _0814F14E - bl sub_8165264 - b _0814F59C -_0814F14E: - ldr r2, =gTrainers - ldrh r1, [r3] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0xD - b _0814F5A2 - .pool -_0814F164: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 20 - ands r0, r1 - cmp r0, 0 - beq _0814F1AC - movs r2, 0 - ldr r4, =gBattleResources - ldr r3, [r4] -_0814F178: - mov r1, sp - adds r0, r1, r2 - ldr r1, [r3] - adds r1, 0x2 - adds r1, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x6 - ble _0814F178 - mov r3, sp - adds r1, r3, r2 - movs r0, 0xFF - strb r0, [r1] - ldr r0, [r4] - ldr r0, [r0] - ldrb r1, [r0, 0xD] - mov r0, sp - bl ConvertInternationalString - b _0814F5BE - .pool -_0814F1AC: - ldr r3, =gTrainerBattleOpponent_A - ldrh r2, [r3] - movs r0, 0xC0 - lsls r0, 4 - cmp r2, r0 - bne _0814F1C4 - movs r1, 0x1 - adds r0, r7, 0 - eors r0, r1 - b _0814F284 - .pool -_0814F1C4: - ldr r0, =0x000003fe - cmp r2, r0 - bne _0814F1D8 - mov r0, sp - bl sub_81A4D50 - b _0814F5BE - .pool -_0814F1D8: - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F1E8 - ldrh r1, [r3] - b _0814F5B8 - .pool -_0814F1E8: - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _0814F1FC - ldrh r1, [r3] - mov r0, sp - bl sub_81D5554 - b _0814F5BE -_0814F1FC: - movs r0, 0x80 - lsls r0, 4 - ands r1, r0 - cmp r1, 0 - beq _0814F20E - mov r0, sp - bl sub_8165284 - b _0814F5BE -_0814F20E: - ldrh r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, =gTrainers + 0x4 @ name offset - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F220: - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - ldr r1, =gLinkPlayers + 8 - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814F230: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x2 - b _0814F266 - .pool -_0814F244: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x1 - b _0814F266 - .pool -_0814F258: - ldr r4, =gLinkPlayers - lsls r0, r7, 3 - subs r0, r7 - lsls r0, 2 - adds r0, r4 - ldrh r1, [r0, 0x18] - movs r0, 0x3 -_0814F266: - eors r0, r1 - bl sub_806D864 - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r4, 0x8 - adds r4, r1, r4 - b _0814F5C0 - .pool -_0814F27C: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - bl sub_806D864 -_0814F284: - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - ldr r0, =gLinkPlayers + 8 - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F298: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 17 - ands r0, r1 - cmp r0, 0 - beq _0814F2B4 - ldr r4, =gLinkPlayers + 8 - b _0814F5C0 - .pool -_0814F2B4: - ldr r0, =gSaveBlock2Ptr - ldr r4, [r0] - b _0814F5C0 - .pool -_0814F2C0: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F2E0 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x2 - b _0814F55A - .pool -_0814F2E0: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F2F8 - ldr r0, =gTrainerBattleOpponent_A - ldrh r1, [r0] - movs r0, 0x4 - b _0814F584 - .pool -_0814F2F8: - bl sub_80B1CA4 - adds r4, r0, 0 - b _0814F5C0 -_0814F300: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F31C - ldr r0, =gTrainerBattleOpponent_A - b _0814F556 - .pool -_0814F31C: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - bne _0814F328 - b _0814F5C0 -_0814F328: - ldr r0, =gTrainerBattleOpponent_A - b _0814F580 - .pool -_0814F330: - ldr r0, =gBattleScripting - ldrb r0, [r0, 0x17] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _0814F39C - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - movs r0, 0x8 - ands r1, r0 - ldr r4, =gText_WildPkmnPrefix - cmp r1, 0 - beq _0814F34E - ldr r4, =gText_FoePkmnPrefix -_0814F34E: - ldrb r1, [r4] - adds r0, r1, 0 - ldr r5, =gEnemyParty - mov r12, r5 - ldr r2, =gBattleStruct - cmp r0, 0xFF - beq _0814F36E -_0814F35C: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814F35C -_0814F36E: - ldr r0, [r2] - adds r0, 0x52 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - add r0, r12 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814F3B4 - .pool -_0814F39C: - ldr r0, =gBattleStruct - ldr r0, [r0] - adds r0, 0x52 - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814F3B4: - mov r0, sp - bl StringGetEnd10 - b _0814F5BE - .pool -_0814F3C4: - ldr r0, =0x000008ab - bl FlagGet - lsls r0, 24 - ldr r4, =gText_Someones - cmp r0, 0 - bne _0814F3D4 - b _0814F5C0 -_0814F3D4: - ldr r4, =gText_Lanettes - b _0814F5C0 - .pool -_0814F3E4: - ldr r0, =gBankAttacker - b _0814F3EE - .pool -_0814F3EC: - ldr r0, =gBankTarget -_0814F3EE: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix3 - cmp r0, 0 - beq _0814F3FE - b _0814F5C0 -_0814F3FE: - ldr r4, =gText_AllyPkmnPrefix2 - b _0814F5C0 - .pool -_0814F410: - ldr r0, =gBankAttacker - b _0814F41A - .pool -_0814F418: - ldr r0, =gBankTarget -_0814F41A: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix2 - cmp r0, 0 - beq _0814F42A - b _0814F5C0 -_0814F42A: - ldr r4, =gText_AllyPkmnPrefix - b _0814F5C0 - .pool -_0814F43C: - ldr r0, =gBankAttacker - b _0814F446 - .pool -_0814F444: - ldr r0, =gBankTarget -_0814F446: - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - ldr r4, =gText_FoePkmnPrefix4 - cmp r0, 0 - beq _0814F456 - b _0814F5C0 -_0814F456: - ldr r4, =gText_AllyPkmnPrefix3 - b _0814F5C0 - .pool -_0814F468: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F484 - ldr r0, =gTrainerBattleOpponent_B - b _0814F596 - .pool -_0814F484: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F49C - ldr r0, =gTrainerBattleOpponent_B - ldrh r0, [r0] - bl sub_81D5530 - b _0814F59C - .pool -_0814F49C: - ldr r2, =gTrainers - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0x1] - movs r0, 0xD - b _0814F5A2 - .pool -_0814F4B8: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F4D4 - ldr r0, =gTrainerBattleOpponent_B - b _0814F5B6 - .pool -_0814F4D4: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F4F0 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - mov r0, sp - bl sub_81D5554 - b _0814F5BE - .pool -_0814F4F0: - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - ldr r1, =gTrainers + 0x4 @ name offset - adds r4, r0, r1 - b _0814F5C0 - .pool -_0814F508: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F528 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - movs r0, 0x2 - b _0814F55A - .pool -_0814F528: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F540 - ldr r0, =gTrainerBattleOpponent_B - ldrh r1, [r0] - movs r0, 0x4 - b _0814F584 - .pool -_0814F540: - bl sub_80B1CE0 - adds r4, r0, 0 - b _0814F5C0 -_0814F548: - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r0, =0x003f0100 - ands r0, r1 - cmp r0, 0 - beq _0814F574 - ldr r0, =gTrainerBattleOpponent_B -_0814F556: - ldrh r1, [r0] - movs r0, 0x1 -_0814F55A: - bl sub_81A36D0 - ldr r4, =gStringVar4 - b _0814F5C0 - .pool -_0814F574: - movs r0, 0x80 - lsls r0, 19 - ands r1, r0 - cmp r1, 0 - beq _0814F5C0 - ldr r0, =gTrainerBattleOpponent_B -_0814F580: - ldrh r1, [r0] - movs r0, 0x3 -_0814F584: - bl sub_81D572C - ldr r4, =gStringVar4 - b _0814F5C0 - .pool -_0814F594: - ldr r0, =gPartnerTrainerId -_0814F596: - ldrh r0, [r0] -_0814F598: - bl GetFrontierOpponentClass -_0814F59C: - lsls r0, 24 - lsrs r0, 24 -_0814F5A0: - movs r1, 0xD -_0814F5A2: - muls r1, r0 - ldr r0, =gTrainerClassNames - adds r4, r1, r0 - b _0814F5C0 - .pool -_0814F5B4: - ldr r0, =gPartnerTrainerId -_0814F5B6: - ldrh r1, [r0] -_0814F5B8: - mov r0, sp - bl GetFrontierTrainerName -_0814F5BE: - mov r4, sp -_0814F5C0: - ldrb r1, [r4] - adds r0, r1, 0 - mov r5, r9 - ldrb r2, [r5] - mov r3, r9 - adds r3, 0x1 - cmp r0, 0xFF - beq _0814F5E2 -_0814F5D0: - mov r5, r8 - adds r0, r5, r6 - strb r1, [r0] - adds r6, 0x1 - adds r4, 0x1 - ldrb r1, [r4] - adds r0, r1, 0 - cmp r0, 0xFF - bne _0814F5D0 -_0814F5E2: - lsls r0, r2, 24 - lsrs r0, 24 - cmp r0, 0x24 - beq _0814F5F6 - cmp r0, 0x30 - beq _0814F5F6 - cmp r0, 0x25 - beq _0814F5F6 - cmp r0, 0x31 - bne _0814F61C -_0814F5F6: - mov r0, r8 - adds r1, r0, r6 - movs r0, 0xFC - strb r0, [r1] - adds r6, 0x1 - mov r2, r8 - adds r1, r2, r6 - movs r0, 0x9 - strb r0, [r1] - adds r6, 0x1 - b _0814F61C - .pool -_0814F610: - mov r3, r8 - adds r0, r3, r6 - strb r1, [r0] - adds r6, 0x1 - mov r3, r9 - adds r3, 0x1 -_0814F61C: - mov r9, r3 - ldrb r1, [r3] -_0814F620: - adds r0, r1, 0 - cmp r0, 0xFF - beq _0814F62A - bl _0814E7A4 -_0814F62A: - mov r5, r8 - adds r1, r5, r6 - mov r2, r9 - ldrb r0, [r2] - strb r0, [r1] - adds r6, 0x1 - adds r0, r6, 0 - add sp, 0x20 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end BattleStringExpandPlaceholders - - thumb_func_start ExpandBattleTextBuffPlaceholders -ExpandBattleTextBuffPlaceholders: @ 814F648 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0xC - adds r7, r0, 0 - adds r6, r1, 0 - movs r5, 0x1 - movs r0, 0 - mov r8, r0 - movs r0, 0xFF - strb r0, [r6] - ldrb r0, [r7, 0x1] - cmp r0, 0xFF - bne _0814F666 - b _0814F8EA -_0814F666: - adds r0, r7, r5 - ldrb r1, [r0] - adds r4, r0, 0 - cmp r1, 0xA - bls _0814F672 - b _0814F8E0 -_0814F672: - lsls r0, r1, 2 - ldr r1, =_0814F680 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814F680: - .4byte _0814F6AC - .4byte _0814F6C8 - .4byte _0814F71C - .4byte _0814F734 - .4byte _0814F744 - .4byte _0814F7BC - .4byte _0814F7D0 - .4byte _0814F7E2 - .4byte _0814F828 - .4byte _0814F83C - .4byte _0814F858 -_0814F6AC: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - ldr r0, =gBattleStringsTable - subs r1, 0xC - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - b _0814F8BE - .pool -_0814F6C8: - ldrb r0, [r4, 0x1] - cmp r0, 0x2 - beq _0814F6E4 - cmp r0, 0x2 - bgt _0814F6D8 - cmp r0, 0x1 - beq _0814F6DE - b _0814F706 -_0814F6D8: - cmp r0, 0x4 - beq _0814F6EC - b _0814F706 -_0814F6DE: - ldrb r4, [r4, 0x3] - mov r8, r4 - b _0814F706 -_0814F6E4: - ldrb r1, [r4, 0x3] - ldrb r0, [r4, 0x4] - lsls r0, 8 - b _0814F702 -_0814F6EC: - ldrb r0, [r4, 0x3] - mov r8, r0 - ldrb r0, [r4, 0x4] - lsls r0, 8 - mov r1, r8 - orrs r1, r0 - ldrb r0, [r4, 0x5] - lsls r0, 16 - orrs r1, r0 - ldrb r0, [r4, 0x6] - lsls r0, 24 -_0814F702: - orrs r1, r0 - mov r8, r1 -_0814F706: - adds r4, r5, r7 - ldrb r3, [r4, 0x2] - adds r0, r6, 0 - mov r1, r8 - movs r2, 0 - bl ConvertIntToDecimalStringN - adds r0, r5, 0x3 - ldrb r4, [r4, 0x1] - adds r5, r0, r4 - b _0814F8E0 -_0814F71C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - movs r0, 0xD - muls r1, r0 - ldr r0, =gMoveNames - adds r1, r0 - b _0814F8BE - .pool -_0814F734: - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r1, r0, 3 - subs r1, r0 - ldr r0, =gTypeNames - b _0814F846 - .pool -_0814F744: - ldrb r0, [r4, 0x1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814F768 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData - b _0814F7A4 - .pool -_0814F768: - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0814F788 - ldr r1, =gText_FoePkmnPrefix - adds r0, r6, 0 - bl StringAppend - b _0814F790 - .pool -_0814F788: - ldr r1, =gText_WildPkmnPrefix - adds r0, r6, 0 - bl StringAppend -_0814F790: - adds r0, r5, r7 - ldrb r1, [r0, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - mov r2, sp - bl GetMonData -_0814F7A4: - mov r0, sp - bl StringGetEnd10 - adds r0, r6, 0 - mov r1, sp - bl StringAppend - b _0814F8DE - .pool -_0814F7BC: - ldr r1, =gStatNamesTable - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _0814F848 - .pool -_0814F7D0: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r1, r0 - adds r0, r6, 0 - bl GetSpeciesName - b _0814F8DE -_0814F7E2: - adds r4, r5, r7 - ldrb r0, [r4, 0x1] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _0814F808 - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData - b _0814F81A - .pool -_0814F808: - ldrb r1, [r4, 0x2] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - adds r0, r1 - movs r1, 0x2 - adds r2, r6, 0 - bl GetMonData -_0814F81A: - adds r0, r6, 0 - bl StringGetEnd10 - b _0814F8DE - .pool -_0814F828: - ldr r1, =gPokeblockWasTooXStringTable - adds r0, r5, r7 - ldrb r0, [r0, 0x1] - lsls r0, 2 - adds r0, r1 - ldr r1, [r0] - b _0814F848 - .pool -_0814F83C: - adds r0, r5, r7 - ldrb r1, [r0, 0x1] - movs r0, 0xD - muls r1, r0 - ldr r0, =gAbilityNames -_0814F846: - adds r1, r0 -_0814F848: - adds r0, r6, 0 - bl StringAppend - adds r5, 0x2 - b _0814F8E0 - .pool -_0814F858: - adds r0, r5, r7 - ldrb r2, [r0, 0x1] - ldrb r0, [r0, 0x2] - lsls r0, 8 - orrs r2, r0 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - ldr r1, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814F8D6 - cmp r2, 0xAF - bne _0814F8CC - ldr r2, =gLinkPlayers - ldr r0, =gBattleScripting - adds r0, 0x25 - ldrb r1, [r0] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, =gStringBank - ldrb r2, [r1] - ldrh r0, [r0, 0x18] - cmp r0, r2 - bne _0814F8BC - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, =gEnigmaBerries - adds r1, r0 - adds r0, r6, 0 - bl StringCopy - ldr r1, =gText_BerrySuffix - b _0814F8BE - .pool -_0814F8BC: - ldr r1, =gText_EnigmaBerry -_0814F8BE: - adds r0, r6, 0 - bl StringAppend - b _0814F8DE - .pool -_0814F8CC: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName - b _0814F8DE -_0814F8D6: - adds r0, r2, 0 - adds r1, r6, 0 - bl CopyItemName -_0814F8DE: - adds r5, 0x3 -_0814F8E0: - adds r0, r7, r5 - ldrb r0, [r0] - cmp r0, 0xFF - beq _0814F8EA - b _0814F666 -_0814F8EA: - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end ExpandBattleTextBuffPlaceholders thumb_func_start sub_814F8F8 sub_814F8F8: @ 814F8F8 diff --git a/asm/battle_setup.s b/asm/battle_setup.s index fcc0de95bd..fbedfff2fe 100644 --- a/asm/battle_setup.s +++ b/asm/battle_setup.s @@ -2617,8 +2617,8 @@ _080B1C96: .pool thumb_func_end sub_80B1C7C - thumb_func_start sub_80B1CA4 -sub_80B1CA4: @ 80B1CA4 + thumb_func_start GetTrainer1LoseText +GetTrainer1LoseText: @ 80B1CA4 push {r4,lr} ldr r0, =gTrainerBattleOpponent_A ldrh r1, [r0] @@ -2643,10 +2643,10 @@ _080B1CC0: pop {r1} bx r1 .pool - thumb_func_end sub_80B1CA4 + thumb_func_end GetTrainer1LoseText - thumb_func_start sub_80B1CE0 -sub_80B1CE0: @ 80B1CE0 + thumb_func_start GetTrainer2LoseText +GetTrainer2LoseText: @ 80B1CE0 push {r4,lr} ldr r4, =gStringVar4 ldr r0, =gUnknown_02038BE0 @@ -2660,7 +2660,7 @@ sub_80B1CE0: @ 80B1CE0 pop {r1} bx r1 .pool - thumb_func_end sub_80B1CE0 + thumb_func_end GetTrainer2LoseText thumb_func_start sub_80B1D04 sub_80B1D04: @ 80B1D04 diff --git a/asm/battle_tower.s b/asm/battle_tower.s index eb91121aea..59971c5d23 100755 --- a/asm/battle_tower.s +++ b/asm/battle_tower.s @@ -5857,8 +5857,8 @@ sub_8165244: @ 8165244 .pool thumb_func_end sub_8165244 - thumb_func_start sub_8165264 -sub_8165264: @ 8165264 + thumb_func_start GetEreaderTrainerClassId +GetEreaderTrainerClassId: @ 8165264 ldr r1, =gTrainerClassToNameIndex ldr r0, =gSaveBlock2Ptr ldr r0, [r0] @@ -5869,10 +5869,10 @@ sub_8165264: @ 8165264 ldrb r0, [r0] bx lr .pool - thumb_func_end sub_8165264 + thumb_func_end GetEreaderTrainerClassId - thumb_func_start sub_8165284 -sub_8165284: @ 8165284 + thumb_func_start GetEreaderTrainerName +GetEreaderTrainerName: @ 8165284 push {r4,lr} adds r3, r0, 0 movs r2, 0 @@ -5896,7 +5896,7 @@ _08165294: pop {r0} bx r0 .pool - thumb_func_end sub_8165284 + thumb_func_end GetEreaderTrainerName thumb_func_start sub_81652B4 sub_81652B4: @ 81652B4 diff --git a/asm/rom6.s b/asm/rom6.s index c53e6fe6e0..0b35ab0e8d 100644 --- a/asm/rom6.s +++ b/asm/rom6.s @@ -7347,7 +7347,7 @@ sub_8139228: @ 8139228 sub_8139238: @ 8139238 push {lr} ldr r0, =gStringVar1 - bl sub_8165284 + bl GetEreaderTrainerName pop {r0} bx r0 .pool diff --git a/charmap.txt b/charmap.txt index 8fe4147cc3..05eff30128 100644 --- a/charmap.txt +++ b/charmap.txt @@ -355,12 +355,12 @@ B_LINK_OPPONENT_MON1_NAME = FD 0A B_LINK_PLAYER_MON2_NAME = FD 0B B_LINK_OPPONENT_MON2_NAME = FD 0C B_ATK_NAME_WITH_PREFIX_MON1 = FD 0D -B_ATK_NAME = FD 0E +B_ATK_PARTNER_NAME = FD 0E B_ATK_NAME_WITH_PREFIX = FD 0F B_DEF_NAME_WITH_PREFIX = FD 10 B_EFF_NAME_WITH_PREFIX = FD 11 @ EFF = short for gEffectBank -B_SCR_ACTIVE_NAME_WITH_PREFIX = FD 12 -B_ACTIVE_NAME_WITH_PREFIX = FD 13 +B_ACTIVE_NAME_WITH_PREFIX = FD 12 +B_SCR_ACTIVE_NAME_WITH_PREFIX = FD 13 B_CURRENT_MOVE = FD 14 B_LAST_MOVE = FD 15 B_LAST_ITEM = FD 16 diff --git a/include/battle_2.h b/include/battle_2.h index edd6b6ef31..ab5068446b 100644 --- a/include/battle_2.h +++ b/include/battle_2.h @@ -25,6 +25,6 @@ extern const u8 gStatusConditionString_IceJpn[8]; extern const u8 gStatusConditionString_ConfusionJpn[8]; extern const u8 gStatusConditionString_LoveJpn[8]; -extern const u8 * const gStatusConditionStringsTable[][2]; +extern const u8 * const gStatusConditionStringsTable[7][2]; #endif // GUARD_BATTLE_2_H diff --git a/include/battle_message.h b/include/battle_message.h index 1884c9e371..be2aca9b25 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -3,59 +3,59 @@ // for 0xFD -#define B_TXT_BUFF1 00 -#define B_TXT_BUFF2 01 -#define B_TXT_COPY_VAR_1 02 -#define B_TXT_COPY_VAR_2 03 -#define B_TXT_COPY_VAR_3 04 -#define B_TXT_PLAYER_MON1_NAME 05 -#define B_TXT_OPPONENT_MON1_NAME 06 -#define B_TXT_PLAYER_MON2_NAME 07 -#define B_TXT_OPPONENT_MON2_NAME 08 -#define B_TXT_LINK_PLAYER_MON1_NAME 09 -#define B_TXT_LINK_OPPONENT_MON1_NAME 0A -#define B_TXT_LINK_PLAYER_MON2_NAME 0B -#define B_TXT_LINK_OPPONENT_MON2_NAME 0C -#define B_TXT_ATK_NAME_WITH_PREFIX_MON1 0D -#define B_TXT_ATK_NAME 0E -#define B_TXT_ATK_NAME_WITH_PREFIX 0F -#define B_TXT_DEF_NAME_WITH_PREFIX 10 -#define B_TXT_EFF_NAME_WITH_PREFIX 11 // EFF = short for gEffectBank -#define B_TXT_SCR_ACTIVE_NAME_WITH_PREFIX 12 -#define B_TXT_ACTIVE_NAME_WITH_PREFIX 13 -#define B_TXT_CURRENT_MOVE 14 -#define B_TXT_LAST_MOVE 15 -#define B_TXT_LAST_ITEM 16 -#define B_TXT_LAST_ABILITY 17 -#define B_TXT_ATK_ABILITY 18 -#define B_TXT_DEF_ABILITY 19 -#define B_TXT_SCR_ACTIVE_ABILITY 1A -#define B_TXT_EFF_ABILITY 1B -#define B_TXT_TRAINER1_CLASS 1C -#define B_TXT_TRAINER1_NAME 1D -#define B_TXT_1E 1E // trainer name for a link player -#define B_TXT_1F 1F // trainer name for a link player -#define B_TXT_20 20 // trainer name for a link player -#define B_TXT_21 21 // trainer name for a link player -#define B_TXT_22 22 // trainer name for a link player -#define B_TXT_PLAYER_NAME 23 -#define B_TXT_TRAINER1_LOSE_TEXT 24 -#define B_TXT_TRAINER1_WIN_TEXT 25 -#define B_TXT_26 26 -#define B_TXT_PC_CREATOR_NAME 27 -#define B_TXT_ATK_PREFIX1 28 -#define B_TXT_DEF_PREFIX1 29 -#define B_TXT_ATK_PREFIX2 2A -#define B_TXT_DEF_PREFIX2 2B -#define B_TXT_ATK_PREFIX3 2C -#define B_TXT_DEF_PREFIX3 2D -#define B_TXT_TRAINER2_CLASS 2E -#define B_TXT_TRAINER2_NAME 2F -#define B_TXT_TRAINER2_LOSE_TEXT 30 -#define B_TXT_TRAINER2_WIN_TEXT 31 -#define B_TXT_PARTNER_CLASS 32 -#define B_TXT_PARTNER_NAME 33 -#define B_TXT_BUFF3 34 +#define B_TXT_BUFF1 0x0 +#define B_TXT_BUFF2 0x1 +#define B_TXT_COPY_VAR_1 0x2 +#define B_TXT_COPY_VAR_2 0x3 +#define B_TXT_COPY_VAR_3 0x4 +#define B_TXT_PLAYER_MON1_NAME 0x5 +#define B_TXT_OPPONENT_MON1_NAME 0x6 +#define B_TXT_PLAYER_MON2_NAME 0x7 +#define B_TXT_OPPONENT_MON2_NAME 0x8 +#define B_TXT_LINK_PLAYER_MON1_NAME 0x9 +#define B_TXT_LINK_OPPONENT_MON1_NAME 0xA +#define B_TXT_LINK_PLAYER_MON2_NAME 0xB +#define B_TXT_LINK_OPPONENT_MON2_NAME 0xC +#define B_TXT_ATK_NAME_WITH_PREFIX_MON1 0xD +#define B_TXT_ATK_PARTNER_NAME 0xE +#define B_TXT_ATK_NAME_WITH_PREFIX 0xF +#define B_TXT_DEF_NAME_WITH_PREFIX 0x10 +#define B_TXT_EFF_NAME_WITH_PREFIX 0x11 // EFF = short for gEffectBank +#define B_TXT_ACTIVE_NAME_WITH_PREFIX 0x12 +#define B_TXT_SCR_ACTIVE_NAME_WITH_PREFIX 0x13 +#define B_TXT_CURRENT_MOVE 0x14 +#define B_TXT_LAST_MOVE 0x15 +#define B_TXT_LAST_ITEM 0x16 +#define B_TXT_LAST_ABILITY 0x17 +#define B_TXT_ATK_ABILITY 0x18 +#define B_TXT_DEF_ABILITY 0x19 +#define B_TXT_SCR_ACTIVE_ABILITY 0x1A +#define B_TXT_EFF_ABILITY 0x1B +#define B_TXT_TRAINER1_CLASS 0x1C +#define B_TXT_TRAINER1_NAME 0x1D +#define B_TXT_1E 0x1E // trainer name for a link player +#define B_TXT_1F 0x1F // trainer name for a link player +#define B_TXT_20 0x20 // trainer name for a link player +#define B_TXT_21 0x21 // trainer name for a link player +#define B_TXT_22 0x22 // trainer name for a link player +#define B_TXT_PLAYER_NAME 0x23 +#define B_TXT_TRAINER1_LOSE_TEXT 0x24 +#define B_TXT_TRAINER1_WIN_TEXT 0x25 +#define B_TXT_26 0x26 +#define B_TXT_PC_CREATOR_NAME 0x27 +#define B_TXT_ATK_PREFIX1 0x28 +#define B_TXT_DEF_PREFIX1 0x29 +#define B_TXT_ATK_PREFIX2 0x2A +#define B_TXT_DEF_PREFIX2 0x2B +#define B_TXT_ATK_PREFIX3 0x2C +#define B_TXT_DEF_PREFIX3 0x2D +#define B_TXT_TRAINER2_CLASS 0x2E +#define B_TXT_TRAINER2_NAME 0x2F +#define B_TXT_TRAINER2_LOSE_TEXT 0x30 +#define B_TXT_TRAINER2_WIN_TEXT 0x31 +#define B_TXT_PARTNER_CLASS 0x32 +#define B_TXT_PARTNER_NAME 0x33 +#define B_TXT_BUFF3 0x34 // for B_TXT_BUFF1, B_TXT_BUFF2 and B_TXT_BUFF3 diff --git a/include/global.h b/include/global.h index e0c09d29aa..e98b01ee20 100644 --- a/include/global.h +++ b/include/global.h @@ -225,24 +225,25 @@ extern struct SaveBlock2 *gSaveBlock2Ptr; struct SecretBaseRecord { - /*ID?*/ /*0x1A08*/ u8 sbr_field_0; - /*0x1A09*/ u8 sbr_field_1_0:4; - /*0x1A09*/ u8 gender:1; - /*0x1A09*/ u8 sbr_field_1_5:1; - /*0x1A09*/ u8 sbr_field_1_6:2; - /*0x1A0A*/ u8 sbr_field_2[7]; // 0xFF bytes? - /*0x1A12*/ u8 trainerId[4]; // byte 0 is used for determining trainer class - /*0x1A16*/ u16 sbr_field_e; - /*0x1A18*/ u8 sbr_field_10; - /*0x1A19*/ u8 sbr_field_11; - /*0x1A1A*/ u8 decorations[16]; - /*0x1A2A*/ u8 decorationPos[16]; - /*0x1A3A*/ u32 partyPersonality[6]; - /*0x1A54*/ u16 partyMoves[6 * 4]; - /*0x1A84*/ u16 partySpecies[6]; - /*0x1A90*/ u16 partyHeldItems[6]; - /*0x1A9C*/ u8 partyLevels[6]; - /*0x1AA2*/ u8 partyEVs[6]; + u8 sbr_field_0; + u8 sbr_field_1_0:4; + u8 gender:1; + u8 sbr_field_1_5:1; + u8 sbr_field_1_6:2; + u8 trainerName[7]; + u8 trainerId[4]; // byte 0 is used for determining trainer class + u8 language; + u16 sbr_field_e; + u8 sbr_field_10; + u8 sbr_field_11; + u8 decorations[16]; + u8 decorationPos[16]; + u32 partyPersonality[6]; + u16 partyMoves[6 * 4]; + u16 partySpecies[6]; + u16 partyHeldItems[6]; + u8 partyLevels[6]; + u8 partyEVs[6]; }; #include "game_stat.h" diff --git a/src/battle_2.c b/src/battle_2.c index 0fc7e8ffd8..8e48f3ed64 100644 --- a/src/battle_2.c +++ b/src/battle_2.c @@ -344,7 +344,7 @@ const u8 gStatusConditionString_IceJpn[8] = _("こおり$$$$"); const u8 gStatusConditionString_ConfusionJpn[8] = _("こんらん$$$"); const u8 gStatusConditionString_LoveJpn[8] = _("メロメロ$$$"); -const u8 * const gStatusConditionStringsTable[][2] = +const u8 * const gStatusConditionStringsTable[7][2] = { {gStatusConditionString_PoisonJpn, gText_Poison}, {gStatusConditionString_SleepJpn, gText_Sleep}, diff --git a/src/battle_message.c b/src/battle_message.c index aaaf23faed..510b8a5812 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -5,6 +5,10 @@ #include "moves.h" #include "text.h" #include "string_util.h" +#include "items.h" +#include "event_data.h" +#include "link.h" +#include "item.h" extern u16 gLastUsedItem; extern u8 gLastUsedAbility; @@ -16,11 +20,16 @@ extern u8 gEffectBank; extern u8 gAbilitiesPerBank[BATTLE_BANKS_COUNT]; extern u32 gBattleTypeFlags; extern u16 gTrainerBattleOpponent_A; +extern u16 gTrainerBattleOpponent_B; +extern u16 gPartnerTrainerId; extern u16 gBattlePartyID[BATTLE_BANKS_COUNT]; extern struct BattleEnigmaBerry gEnigmaBerries[BATTLE_BANKS_COUNT]; extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200]; extern const u8 gMoveNames[LAST_MOVE_INDEX + 1][13]; +extern const u8 gAbilityNames[][13]; +extern const u8 gTrainerClassNames[][13]; +extern const u8 gTypeNames[][7]; // strings extern const u8 gText_PkmnBoxSomeonesPCFull[]; @@ -28,9 +37,24 @@ extern const u8 gText_PkmnBoxLanettesPCFull[]; extern const u8 gText_PkmnTransferredSomeonesPC[]; extern const u8 gText_PkmnTransferredLanettesPC[]; +extern u16 sub_8068BB0(void); // pokemon_1 +extern u8 sub_81A4D00(void); // battle_frontier_2 +extern u8 GetFrontierOpponentClass(u16 trainerId); // battle_tower +extern u8 sub_81D5530(u16 trainerId); // pokenav +extern u8 GetEreaderTrainerClassId(void); // battle_tower +extern void sub_81A4D50(u8 *txtPtr); // battle_frontier_2 +extern void sub_81D5554(u8 *txtPtr, u16 trainerId); // pokenav +extern void GetEreaderTrainerName(u8 *txtPtr); +extern void sub_81A36D0(u8 arg0, u16 trainerId); // battle_frontier_2 +extern void sub_81D572C(u8 arg0, u16 trainerId); // pokenav +extern const u8* GetTrainer1LoseText(void); // battle_setup +extern const u8* GetTrainer2LoseText(void); // battle_setup +extern void GetFrontierTrainerName(u8 *dst, u16 trainerId); + // this file's functions void sub_814F8F8(u8 *txtPtr); void sub_814F950(u8 *txtPtr); +static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst); // ewram variables EWRAM_DATA u8 gDisplayedStringBattle[300] = {0}; @@ -64,33 +88,33 @@ const u8 gText_PkmnFainted2[] = _("{B_DEF_NAME_WITH_PREFIX}\nfainted!\p"); const u8 gText_PlayerGotMoney[] = _("{B_PLAYER_NAME} got ¥{B_BUFF1}\nfor winning!\p"); const u8 gText_PlayerWhiteout[] = _("{B_PLAYER_NAME} is out of\nusable POKéMON!\p"); const u8 gText_PlayerWhiteout2[] = _("{B_PLAYER_NAME} whited out!{PAUSE_UNTIL_PRESS}"); -const u8 gText_PreventsEscape[] = _("{B_ACTIVE_NAME_WITH_PREFIX} prevents\nescape with {B_SCR_ACTIVE_ABILITY}!\p"); +const u8 gText_PreventsEscape[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} prevents\nescape with {B_SCR_ACTIVE_ABILITY}!\p"); const u8 gText_CantEscape2[] = _("Can’t escape!\p"); const u8 gText_PkmnCantEscape2[] = _("{B_ATK_NAME_WITH_PREFIX} can’t escape!"); const u8 gText_HitXTimes[] = _("Hit {B_BUFF1} time(s)!"); const u8 gText_PkmnFellAsleep[] = _("{B_EFF_NAME_WITH_PREFIX}\nfell asleep!"); -const u8 gText_PkmnMadeSleep[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade {B_EFF_NAME_WITH_PREFIX} sleep!"); +const u8 gText_PkmnMadeSleep[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade {B_EFF_NAME_WITH_PREFIX} sleep!"); const u8 gText_PkmnAlreadyAsleep[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready asleep!"); const u8 gText_PkmnAlreadyAsleep2[] = _("{B_ATK_NAME_WITH_PREFIX} is\nalready asleep!"); const u8 gText_PkmnWasntAffected[] = _("{B_DEF_NAME_WITH_PREFIX}\nwasn’t affected!"); const u8 gText_PkmnWasPoisoned[] = _("{B_EFF_NAME_WITH_PREFIX}\nwas poisoned!"); -const u8 gText_PkmnPoisonedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\npoisoned {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnPoisonedBy[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\npoisoned {B_EFF_NAME_WITH_PREFIX}!"); const u8 gText_PkmnHurtByPoison[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby poison!"); const u8 gText_PkmnAlreadyPoisoned[] = _("{B_DEF_NAME_WITH_PREFIX} is already\npoisoned."); const u8 gText_PkmnBadlyPoisoned[] = _("{B_EFF_NAME_WITH_PREFIX} is badly\npoisoned!"); const u8 gText_PkmnEnergyDrained[] = _("{B_DEF_NAME_WITH_PREFIX} had its\nenergy drained!"); const u8 gText_PkmnWasBurned[] = _("{B_EFF_NAME_WITH_PREFIX} was burned!"); -const u8 gText_PkmnBurnedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nburned {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnBurnedBy[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nburned {B_EFF_NAME_WITH_PREFIX}!"); const u8 gText_PkmnHurtByBurn[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby its burn!"); const u8 gText_PkmnAlreadyHasBurn[] = _("{B_DEF_NAME_WITH_PREFIX} already\nhas a burn."); const u8 gText_PkmnWasFrozen[] = _("{B_EFF_NAME_WITH_PREFIX} was\nfrozen solid!"); -const u8 gText_PkmnFrozenBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nfroze {B_EFF_NAME_WITH_PREFIX} solid!"); +const u8 gText_PkmnFrozenBy[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nfroze {B_EFF_NAME_WITH_PREFIX} solid!"); const u8 gText_PkmnIsFrozen[] = _("{B_ATK_NAME_WITH_PREFIX} is\nfrozen solid!"); const u8 gText_PkmnWasDefrosted[] = _("{B_DEF_NAME_WITH_PREFIX} was\ndefrosted!"); const u8 gText_PkmnWasDefrosted2[] = _("{B_ATK_NAME_WITH_PREFIX} was\ndefrosted!"); const u8 gText_PkmnWasDefrostedBy[] = _("{B_ATK_NAME_WITH_PREFIX} was\ndefrosted by {B_CURRENT_MOVE}!"); const u8 gText_PkmnWasParalyzed[] = _("{B_EFF_NAME_WITH_PREFIX} is paralyzed!\nIt may be unable to move!"); -const u8 gText_PkmnWasParalyzedBy[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nparalyzed {B_EFF_NAME_WITH_PREFIX}!\lIt may be unable to move!"); +const u8 gText_PkmnWasParalyzedBy[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nparalyzed {B_EFF_NAME_WITH_PREFIX}!\lIt may be unable to move!"); const u8 gText_PkmnIsParalyzed[] = _("{B_ATK_NAME_WITH_PREFIX} is paralyzed!\nIt can’t move!"); const u8 gText_PkmnIsAlreadyParalyzed[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready paralyzed!"); const u8 gText_PkmnHealedParalysis[] = _("{B_DEF_NAME_WITH_PREFIX} was\nhealed of paralysis!"); @@ -104,7 +128,7 @@ const u8 gText_PkmnHealedConfusion[] = _("{B_ATK_NAME_WITH_PREFIX} snapped\nout const u8 gText_PkmnWasConfused[] = _("{B_EFF_NAME_WITH_PREFIX} became\nconfused!"); const u8 gText_PkmnAlreadyConfused[] = _("{B_DEF_NAME_WITH_PREFIX} is\nalready confused!"); const u8 gText_PkmnFellInLove[] = _("{B_DEF_NAME_WITH_PREFIX}\nfell in love!"); -const u8 gText_PkmnInLove[] = _("{B_ATK_NAME_WITH_PREFIX} is in love\nwith {B_ACTIVE_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnInLove[] = _("{B_ATK_NAME_WITH_PREFIX} is in love\nwith {B_SCR_ACTIVE_NAME_WITH_PREFIX}!"); const u8 gText_PkmnImmobilizedByLove[] = _("{B_ATK_NAME_WITH_PREFIX} is\nimmobilized by love!"); const u8 gText_PkmnBlownAway[] = _("{B_DEF_NAME_WITH_PREFIX} was\nblown away!"); const u8 gText_PkmnChangedType[] = _("{B_ATK_NAME_WITH_PREFIX} transformed\ninto the {B_BUFF1} type!"); @@ -137,7 +161,7 @@ const u8 gText_PkmnHurtBy[] = _("{B_ATK_NAME_WITH_PREFIX} is hurt\nby {B_BUFF1}! const u8 gText_PkmnFreedFrom[] = _("{B_ATK_NAME_WITH_PREFIX} was freed\nfrom {B_BUFF1}!"); const u8 gText_PkmnCrashed[] = _("{B_ATK_NAME_WITH_PREFIX} kept going\nand crashed!"); const u8 gText_PkmnShroudedInMist[] = _("{B_ATK_PREFIX2} became\nshrouded in MIST!"); -const u8 gText_PkmnProtectedByMist[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is protected\nby MIST!"); +const u8 gText_PkmnProtectedByMist[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is protected\nby MIST!"); const u8 gText_PkmnGettingPumped[] = _("{B_ATK_NAME_WITH_PREFIX} is getting\npumped!"); const u8 gText_PkmnHitWithRecoil[] = _("{B_ATK_NAME_WITH_PREFIX} is hit\nwith recoil!"); const u8 gText_PkmnProtectedItself2[] = _("{B_ATK_NAME_WITH_PREFIX} protected\nitself!"); @@ -149,7 +173,7 @@ const u8 gText_PkmnEvadedAttack[] = _("{B_DEF_NAME_WITH_PREFIX} evaded\nthe atta const u8 gText_PkmnSappedByLeechSeed[] = _("{B_ATK_NAME_WITH_PREFIX}’s health is\nsapped by LEECH SEED!"); const u8 gText_PkmnFastAsleep[] = _("{B_ATK_NAME_WITH_PREFIX} is fast\nasleep."); const u8 gText_PkmnWokeUp[] = _("{B_ATK_NAME_WITH_PREFIX} woke up!"); -const u8 gText_PkmnUproarKeptAwake[] = _("But {B_ACTIVE_NAME_WITH_PREFIX}’s UPROAR\nkept it awake!"); +const u8 gText_PkmnUproarKeptAwake[] = _("But {B_SCR_ACTIVE_NAME_WITH_PREFIX}’s UPROAR\nkept it awake!"); const u8 gText_PkmnWokeUpInUproar[] = _("{B_ATK_NAME_WITH_PREFIX} woke up\nin the UPROAR!"); const u8 gText_PkmnCausedUproar[] = _("{B_ATK_NAME_WITH_PREFIX} caused\nan UPROAR!"); const u8 gText_PkmnMakingUproar[] = _("{B_ATK_NAME_WITH_PREFIX} is making\nan UPROAR!"); @@ -188,7 +212,7 @@ const u8 gText_PkmnLockedInNightmare[] = _("{B_ATK_NAME_WITH_PREFIX} is locked\n const u8 gText_PkmnLaidCurse[] = _("{B_ATK_NAME_WITH_PREFIX} cut its own HP and\nlaid a CURSE on {B_DEF_NAME_WITH_PREFIX}!"); const u8 gText_PkmnAfflictedByCurse[] = _("{B_ATK_NAME_WITH_PREFIX} is afflicted\nby the CURSE!"); const u8 gText_SpikesScattered[] = _("SPIKES were scattered all around\nthe opponent’s side!"); -const u8 gText_PkmnHurtBySpikes[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is hurt\nby SPIKES!"); +const u8 gText_PkmnHurtBySpikes[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is hurt\nby SPIKES!"); const u8 gText_PkmnIdentified[] = _("{B_ATK_NAME_WITH_PREFIX} identified\n{B_DEF_NAME_WITH_PREFIX}!"); const u8 gText_PkmnPerishCountFell[] = _("{B_ATK_NAME_WITH_PREFIX}’s PERISH count\nfell to {B_BUFF1}!"); const u8 gText_PkmnBracedItself[] = _("{B_ATK_NAME_WITH_PREFIX} braced\nitself!"); @@ -231,25 +255,25 @@ const u8 gText_PkmnLostPPGrudge[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1} lo const u8 gText_PkmnShroudedItself[] = _("{B_ATK_NAME_WITH_PREFIX} shrouded\nitself in {B_CURRENT_MOVE}!"); const u8 gText_PkmnMoveBounced[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_CURRENT_MOVE}\nwas bounced back by MAGIC COAT!"); const u8 gText_PkmnWaitsForTarget[] = _("{B_ATK_NAME_WITH_PREFIX} waits for a target\nto make a move!"); -const u8 gText_PkmnSnatchedMove[] = _("{B_DEF_NAME_WITH_PREFIX} SNATCHED\n{B_ACTIVE_NAME_WITH_PREFIX}’s move!"); +const u8 gText_PkmnSnatchedMove[] = _("{B_DEF_NAME_WITH_PREFIX} SNATCHED\n{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s move!"); const u8 gText_ElectricityWeakened[] = _("Electricity’s power was\nweakened!"); const u8 gText_FireWeakened[] = _("Fire’s power was\nweakened!"); const u8 gText_XFoundOneY[] = _("{B_ATK_NAME_WITH_PREFIX} found\none {B_LAST_ITEM}!"); const u8 gText_SoothingAroma[] = _("A soothing aroma wafted\nthrough the area!"); const u8 gText_ItemsCantBeUsedNow[] = _("Items can’t be used now.{PAUSE 64}"); -const u8 gText_ForXCommaYZ[] = _("For {B_ACTIVE_NAME_WITH_PREFIX},\n{B_LAST_ITEM} {B_BUFF1}"); -const u8 gText_PkmnUsedXToGetPumped[] = _("{B_ACTIVE_NAME_WITH_PREFIX} used\n{B_LAST_ITEM} to get pumped!"); +const u8 gText_ForXCommaYZ[] = _("For {B_SCR_ACTIVE_NAME_WITH_PREFIX},\n{B_LAST_ITEM} {B_BUFF1}"); +const u8 gText_PkmnUsedXToGetPumped[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} used\n{B_LAST_ITEM} to get pumped!"); const u8 gText_PkmnLostFocus[] = _("{B_ATK_NAME_WITH_PREFIX} lost its\nfocus and couldn’t move!"); const u8 gText_PkmnWasDraggedOut[] = _("{B_DEF_NAME_WITH_PREFIX} was\ndragged out!\p"); const u8 gText_TheWallShattered[] = _("The wall shattered!"); const u8 gText_ButNoEffect[] = _("But it had no effect!"); -const u8 gText_PkmnHasNoMovesLeft[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} has no\nmoves left!\p"); -const u8 gText_PkmnMoveIsDisabled[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_CURRENT_MOVE}\nis disabled!\p"); -const u8 gText_PkmnCantUseMoveTorment[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use the same\nmove in a row due to the TORMENT!\p"); -const u8 gText_PkmnCantUseMoveTaunt[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use\n{B_CURRENT_MOVE} after the TAUNT!\p"); -const u8 gText_PkmnCantUseMoveSealed[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} can’t use the\nsealed {B_CURRENT_MOVE}!\p"); -const u8 gText_PkmnMadeItRain[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it rain!"); -const u8 gText_PkmnRaisedSpeed[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nraised its SPEED!"); +const u8 gText_PkmnHasNoMovesLeft[] = _("{B_ACTIVE_NAME_WITH_PREFIX} has no\nmoves left!\p"); +const u8 gText_PkmnMoveIsDisabled[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_CURRENT_MOVE}\nis disabled!\p"); +const u8 gText_PkmnCantUseMoveTorment[] = _("{B_ACTIVE_NAME_WITH_PREFIX} can’t use the same\nmove in a row due to the TORMENT!\p"); +const u8 gText_PkmnCantUseMoveTaunt[] = _("{B_ACTIVE_NAME_WITH_PREFIX} can’t use\n{B_CURRENT_MOVE} after the TAUNT!\p"); +const u8 gText_PkmnCantUseMoveSealed[] = _("{B_ACTIVE_NAME_WITH_PREFIX} can’t use the\nsealed {B_CURRENT_MOVE}!\p"); +const u8 gText_PkmnMadeItRain[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it rain!"); +const u8 gText_PkmnRaisedSpeed[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nraised its SPEED!"); const u8 gText_PkmnProtectedBy[] = _("{B_DEF_NAME_WITH_PREFIX} was protected\nby {B_DEF_ABILITY}!"); const u8 gText_PkmnPreventsUsage[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents {B_ATK_NAME_WITH_PREFIX}\lfrom using {B_CURRENT_MOVE}!"); const u8 gText_PkmnRestoredHPUsing[] = _("{B_DEF_NAME_WITH_PREFIX} restored HP\nusing its {B_DEF_ABILITY}!"); @@ -261,37 +285,37 @@ const u8 gText_PkmnPreventsPoisoningWith[] = _("{B_EFF_NAME_WITH_PREFIX}’s {B_ const u8 gText_PkmnPreventsConfusionWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevents confusion!"); const u8 gText_PkmnRaisedFirePowerWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nraised its FIRE power!"); const u8 gText_PkmnAnchorsItselfWith[] = _("{B_DEF_NAME_WITH_PREFIX} anchors\nitself with {B_DEF_ABILITY}!"); -const u8 gText_PkmnCutsAttackWith[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncuts {B_DEF_NAME_WITH_PREFIX}’s ATTACK!"); -const u8 gText_PkmnPreventsStatLossWith[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents stat loss!"); +const u8 gText_PkmnCutsAttackWith[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncuts {B_DEF_NAME_WITH_PREFIX}’s ATTACK!"); +const u8 gText_PkmnPreventsStatLossWith[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents stat loss!"); const u8 gText_PkmnHurtsWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nhurt {B_ATK_NAME_WITH_PREFIX}!"); -const u8 gText_PkmnTraced[] = _("{B_ACTIVE_NAME_WITH_PREFIX} TRACED\n{B_BUFF1}’s {B_BUFF2}!"); +const u8 gText_PkmnTraced[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} TRACED\n{B_BUFF1}’s {B_BUFF2}!"); const u8 gText_PkmnsXPreventsBurns[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents burns!"); const u8 gText_PkmnsXBlocksY[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nblocks {B_CURRENT_MOVE}!"); -const u8 gText_PkmnsXBlocksY2[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nblocks {B_CURRENT_MOVE}!"); +const u8 gText_PkmnsXBlocksY2[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nblocks {B_CURRENT_MOVE}!"); const u8 gText_PkmnsXRestoredHPALittle2[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nrestored its HP a little!"); -const u8 gText_PkmnsXWhippedUpSandstorm[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nwhipped up a sandstorm!"); -const u8 gText_PkmnsXIntensifiedSun[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nintensified the sun’s rays!"); -const u8 gText_PkmnsXPreventsYLoss[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents {B_BUFF1} loss!"); +const u8 gText_PkmnsXWhippedUpSandstorm[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nwhipped up a sandstorm!"); +const u8 gText_PkmnsXIntensifiedSun[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nintensified the sun’s rays!"); +const u8 gText_PkmnsXPreventsYLoss[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents {B_BUFF1} loss!"); const u8 gText_PkmnsXInfatuatedY[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\ninfatuated {B_ATK_NAME_WITH_PREFIX}!"); const u8 gText_PkmnsXMadeYIneffective[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nmade {B_CURRENT_MOVE} ineffective!"); -const u8 gText_PkmnsXCuredYProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); +const u8 gText_PkmnsXCuredYProblem[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); const u8 gText_ItSuckedLiquidOoze[] = _("It sucked up the\nLIQUID OOZE!"); -const u8 gText_PkmnTransformed[] = _("{B_ACTIVE_NAME_WITH_PREFIX} transformed!"); +const u8 gText_PkmnTransformed[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} transformed!"); const u8 gText_PkmnsXTookAttack[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\ntook the attack!"); const u8 gText_PkmnsXPreventsSwitching[] = _("{B_BUFF1}’s {STRING 23}\nprevents switching!\p"); -const u8 gText_PreventedFromWorking[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevented {B_ACTIVE_NAME_WITH_PREFIX}’s\l{B_BUFF1} from working!"); -const u8 gText_PkmnsXMadeItIneffective[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it ineffective!"); +const u8 gText_PreventedFromWorking[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevented {B_SCR_ACTIVE_NAME_WITH_PREFIX}’s\l{B_BUFF1} from working!"); +const u8 gText_PkmnsXMadeItIneffective[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it ineffective!"); const u8 gText_PkmnsXPreventsFlinching[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents flinching!"); const u8 gText_PkmnsXPreventsYsZ[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nprevents {B_DEF_NAME_WITH_PREFIX}’s\l{B_DEF_ABILITY} from working!"); -const u8 gText_PkmnsXCuredItsYProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); -const u8 gText_PkmnsXHadNoEffectOnY[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nhad no effect on {B_EFF_NAME_WITH_PREFIX}!"); +const u8 gText_PkmnsXCuredItsYProblem[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); +const u8 gText_PkmnsXHadNoEffectOnY[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nhad no effect on {B_EFF_NAME_WITH_PREFIX}!"); const u8 gText_StatSharply[] = _("sharply "); const u8 gText_StatRose[] = _("rose!"); const u8 gText_StatHarshly[] = _("harshly "); const u8 gText_StatFell[] = _("fell!"); const u8 gText_PkmnsStatChanged[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); const u8 gText_PkmnsStatChanged2[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); -const u8 gText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}"); +const u8 gText_UsingXTheYOfZN[] = _("Using {B_LAST_ITEM}, the {B_BUFF1}\nof {B_SCR_ACTIVE_NAME_WITH_PREFIX} {B_BUFF2}"); const u8 gText_PkmnsStatChanged3[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); const u8 gText_PkmnsStatChanged4[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_BUFF1}\n{B_BUFF2}"); const u8 gText_StatsWontIncrease2[] = _("{B_ATK_NAME_WITH_PREFIX}’s stats won’t\ngo any higher!"); @@ -462,18 +486,18 @@ const u8 gText_SandstormIsRaging[] = _("A sandstorm is raging."); const u8 gText_BoxIsFull[] = _("The BOX is full!\nYou can’t catch any more!\p"); const u8 gText_EnigmaBerry[] = _("ENIGMA BERRY"); const u8 gText_BerrySuffix[] = _(" BERRY"); -const u8 gText_PkmnsItemCuredParalysis[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured paralysis!"); -const u8 gText_PkmnsItemCuredPoison[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured poison!"); -const u8 gText_PkmnsItemHealedBurn[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nhealed its burn!"); -const u8 gText_PkmnsItemDefrostedIt[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ndefrosted it!"); -const u8 gText_PkmnsItemWokeIt[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nwoke it from its sleep!"); -const u8 gText_PkmnsItemSnappedOut[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nsnapped it out of confusion!"); -const u8 gText_PkmnsItemCuredProblem[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured its {B_BUFF1} problem!"); -const u8 gText_PkmnsItemNormalizedStatus[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nnormalized its status!"); -const u8 gText_PkmnsItemRestoredHealth[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored health!"); -const u8 gText_PkmnsItemRestoredPP[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored {B_BUFF1}’s PP!"); -const u8 gText_PkmnsItemRestoredStatus[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its status!"); -const u8 gText_PkmnsItemRestoredHPALittle[] = _("{B_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its HP a little!"); +const u8 gText_PkmnsItemCuredParalysis[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured paralysis!"); +const u8 gText_PkmnsItemCuredPoison[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured poison!"); +const u8 gText_PkmnsItemHealedBurn[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nhealed its burn!"); +const u8 gText_PkmnsItemDefrostedIt[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ndefrosted it!"); +const u8 gText_PkmnsItemWokeIt[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nwoke it from its sleep!"); +const u8 gText_PkmnsItemSnappedOut[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nsnapped it out of confusion!"); +const u8 gText_PkmnsItemCuredProblem[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\ncured its {B_BUFF1} problem!"); +const u8 gText_PkmnsItemNormalizedStatus[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nnormalized its status!"); +const u8 gText_PkmnsItemRestoredHealth[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored health!"); +const u8 gText_PkmnsItemRestoredPP[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored {B_BUFF1}’s PP!"); +const u8 gText_PkmnsItemRestoredStatus[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its status!"); +const u8 gText_PkmnsItemRestoredHPALittle[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_LAST_ITEM}\nrestored its HP a little!"); const u8 gText_ItemAllowsOnlyYMove[] = _("{B_LAST_ITEM} allows the\nuse of only {B_CURRENT_MOVE}!\p"); const u8 gText_PkmnHungOnWithX[] = _("{B_DEF_NAME_WITH_PREFIX} hung on\nusing its {B_LAST_ITEM}!"); const u8 gText_EmptyString3[] = _(""); @@ -910,7 +934,7 @@ const u8 gText_PkmnIsEvolving[] = _("What?\n{STR_VAR_1} is evolving!"); const u8 gText_CongratsPkmnEvolved[] = _("Congratulations! Your {STR_VAR_1}\nevolved into {STR_VAR_2}!{UNKNOWN_A}\p"); const u8 gText_PkmnStoppedEvolving[] = _("Huh? {STR_VAR_1}\nstopped evolving!\p"); const u8 gText_EllipsisQuestionMark[] = _("……?\p"); -const u8 gText_WhatWillPkmnDo[] = _("What will\n{B_SCR_ACTIVE_NAME_WITH_PREFIX} do?"); +const u8 gText_WhatWillPkmnDo[] = _("What will\n{B_ACTIVE_NAME_WITH_PREFIX} do?"); const u8 gText_WhatWillPkmnDo2[] = _("What will\n{B_PLAYER_NAME} do?"); const u8 gText_WhatWillWallyDo[] = _("What will\nWALLY do?"); const u8 gText_LinkStandby[] = _("{PAUSE 16}Link standby…"); @@ -1013,10 +1037,10 @@ const u8 gText_InGamePartnerSentOutZGoN[] = _("{B_PARTNER_CLASS} {B_PARTNER_NAME const u8 gText_TwoInGameTrainersDefeated[] = _("{B_TRAINER1_CLASS} {B_TRAINER1_NAME} and\n{B_TRAINER2_CLASS} {B_TRAINER2_NAME}\lwere defeated!\p"); const u8 gText_Trainer2LoseText[] = _("{B_TRAINER2_LOSE_TEXT}"); const u8 gText_PkmnIncapableOfPower[] = _("{B_ATK_NAME_WITH_PREFIX} appears incapable\nof using its power!"); -const u8 gText_GlintAppearsInEye[] = _("A glint appears in\n{B_ACTIVE_NAME_WITH_PREFIX}’s eyes!"); -const u8 gText_PkmnGettingIntoPosition[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is getting into\nposition!"); -const u8 gText_PkmnBeganGrowlingDeeply[] = _("{B_ACTIVE_NAME_WITH_PREFIX} began growling deeply!"); -const u8 gText_PkmnEagerForMore[] = _("{B_ACTIVE_NAME_WITH_PREFIX} is eager for more!"); +const u8 gText_GlintAppearsInEye[] = _("A glint appears in\n{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s eyes!"); +const u8 gText_PkmnGettingIntoPosition[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is getting into\nposition!"); +const u8 gText_PkmnBeganGrowlingDeeply[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} began growling deeply!"); +const u8 gText_PkmnEagerForMore[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} is eager for more!"); const u16 gUnknown_085CCF0A[] = { @@ -1080,7 +1104,7 @@ const u16 gUnknown_085CD336[] = 0x0104, 0x0110, 0x011b, 0x0141, 0x0157, 0x0000, }; -const u8 gUnknown_085CD422[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0}; +static const u8 sDummyWeirdStatusString[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0}; const u16 gUnknown_085CD42C[] = { @@ -1426,3 +1450,620 @@ void BufferStringBattle(u16 stringID) BattleStringExpandPlaceholdersToDisplayedString(stringPtr); } + +u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src) +{ + BattleStringExpandPlaceholders(src, gDisplayedStringBattle); +} + +static const u8* TryGetStatusString(u8* src) +{ + u32 i; + u8 status[8]; + u32 chars1, chars2; + u8* statusPtr; + + memcpy(status, sDummyWeirdStatusString, 8); + + statusPtr = status; + for (i = 0; i < 8; i++) + { + if (*src == EOS) + break; + *statusPtr = *src; + src++; + statusPtr++; + } + + chars1 = *(u32*)(&status[0]); + chars2 = *(u32*)(&status[4]); + + for (i = 0; i < ARRAY_COUNT(gStatusConditionStringsTable); i++) + { + if (chars1 == *(u32*)(&gStatusConditionStringsTable[i][0][0]) + && chars2 == *(u32*)(&gStatusConditionStringsTable[i][0][4])) + return gStatusConditionStringsTable[i][1]; + } + return NULL; +} + +#define HANDLE_NICKNAME_STRING_CASE(bank, monIndex) \ + if (GetBankSide(bank) != SIDE_PLAYER) \ + { \ + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) \ + toCpy = gText_FoePkmnPrefix; \ + else \ + toCpy = gText_WildPkmnPrefix; \ + while (*toCpy != EOS) \ + { \ + dst[dstID] = *toCpy; \ + dstID++; \ + toCpy++; \ + } \ + GetMonData(&gEnemyParty[monIndex], MON_DATA_NICKNAME, text); \ + } \ + else \ + { \ + GetMonData(&gPlayerParty[monIndex], MON_DATA_NICKNAME, text); \ + } \ + StringGetEnd10(text); \ + toCpy = text; + +extern u8 gUnknown_0203C7B4; + +u32 BattleStringExpandPlaceholders(const u8* src, u8* dst) +{ + u32 dstID = 0; // if they used dstID, why not use srcID as well? + const u8* toCpy = NULL; + u8 text[30]; + u8 multiplayerID; + s32 i; + + if (gBattleTypeFlags & BATTLE_TYPE_x2000000) + multiplayerID = gUnknown_0203C7B4; + else + multiplayerID = GetMultiplayerId(); + + while (*src != EOS) + { + if (*src == PLACEHOLDER_BEGIN) + { + src++; + switch (*src) + { + case B_TXT_BUFF1: + if (gBattleTextBuff1[0] == B_BUFF_PLACEHOLDER_BEGIN) + { + ExpandBattleTextBuffPlaceholders(gBattleTextBuff1, gStringVar1); + toCpy = gStringVar1; + } + else + { + toCpy = TryGetStatusString(gBattleTextBuff1); + if (toCpy == NULL) + toCpy = gBattleTextBuff1; + } + break; + case B_TXT_BUFF2: + if (gBattleTextBuff2[0] == B_BUFF_PLACEHOLDER_BEGIN) + { + ExpandBattleTextBuffPlaceholders(gBattleTextBuff2, gStringVar2); + toCpy = gStringVar2; + } + else + toCpy = gBattleTextBuff2; + break; + case B_TXT_BUFF3: + if (gBattleTextBuff3[0] == B_BUFF_PLACEHOLDER_BEGIN) + { + ExpandBattleTextBuffPlaceholders(gBattleTextBuff3, gStringVar3); + toCpy = gStringVar3; + } + else + toCpy = gBattleTextBuff3; + break; + case B_TXT_COPY_VAR_1: + toCpy = gStringVar1; + break; + case B_TXT_COPY_VAR_2: + toCpy = gStringVar2; + break; + case B_TXT_COPY_VAR_3: + toCpy = gStringVar3; + break; + case B_TXT_PLAYER_MON1_NAME: // first player poke name + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(IDENTITY_PLAYER_MON1)]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_OPPONENT_MON1_NAME: // first enemy poke name + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(IDENTITY_OPPONENT_MON1)]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_PLAYER_MON2_NAME: // second player poke name + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(IDENTITY_PLAYER_MON2)]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_OPPONENT_MON2_NAME: // second enemy poke name + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(IDENTITY_OPPONENT_MON2)]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_LINK_PLAYER_MON1_NAME: // link first player poke name + GetMonData(&gPlayerParty[gBattlePartyID[gLinkPlayers[multiplayerID].lp_field_18]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_LINK_OPPONENT_MON1_NAME: // link first opponent poke name + GetMonData(&gEnemyParty[gBattlePartyID[gLinkPlayers[multiplayerID].lp_field_18 ^ 1]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_LINK_PLAYER_MON2_NAME: // link second player poke name + GetMonData(&gPlayerParty[gBattlePartyID[gLinkPlayers[multiplayerID].lp_field_18 ^ 2]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_LINK_OPPONENT_MON2_NAME: // link second opponent poke name + GetMonData(&gEnemyParty[gBattlePartyID[gLinkPlayers[multiplayerID].lp_field_18 ^ 3]], + MON_DATA_NICKNAME, text); + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_ATK_NAME_WITH_PREFIX_MON1: // attacker name with prefix, only bank 0/1 + HANDLE_NICKNAME_STRING_CASE(gBankAttacker, + gBattlePartyID[GetBankByIdentity(GET_BANK_SIDE(gBankAttacker))]) + break; + case B_TXT_ATK_PARTNER_NAME: // attacker partner name + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + GetMonData(&gPlayerParty[gBattlePartyID[GetBankByIdentity(GET_BANK_SIDE(gBankAttacker)) + 2]], MON_DATA_NICKNAME, text); + else + GetMonData(&gEnemyParty[gBattlePartyID[GetBankByIdentity(GET_BANK_SIDE(gBankAttacker)) + 2]], MON_DATA_NICKNAME, text); + + StringGetEnd10(text); + toCpy = text; + break; + case B_TXT_ATK_NAME_WITH_PREFIX: // attacker name with prefix + HANDLE_NICKNAME_STRING_CASE(gBankAttacker, gBattlePartyID[gBankAttacker]) + break; + case B_TXT_DEF_NAME_WITH_PREFIX: // target name with prefix + HANDLE_NICKNAME_STRING_CASE(gBankTarget, gBattlePartyID[gBankTarget]) + break; + case B_TXT_EFF_NAME_WITH_PREFIX: // effect bank name with prefix + HANDLE_NICKNAME_STRING_CASE(gEffectBank, gBattlePartyID[gEffectBank]) + break; + case B_TXT_ACTIVE_NAME_WITH_PREFIX: // active bank name with prefix + HANDLE_NICKNAME_STRING_CASE(gActiveBank, gBattlePartyID[gActiveBank]) + break; + case B_TXT_SCR_ACTIVE_NAME_WITH_PREFIX: // scripting active bank name with prefix + HANDLE_NICKNAME_STRING_CASE(gBattleScripting.bank, gBattlePartyID[gBattleScripting.bank]) + break; + case B_TXT_CURRENT_MOVE: // current move name + if (gStringInfo->currentMove > LAST_MOVE_INDEX) + toCpy = gText_UnknownMoveTypes[gBattleStruct->stringMoveType]; + else + toCpy = gMoveNames[gStringInfo->currentMove]; + break; + case B_TXT_LAST_MOVE: // last used move name + if (gStringInfo->lastMove > LAST_MOVE_INDEX) + toCpy = gText_UnknownMoveTypes[gBattleStruct->stringMoveType]; + else + toCpy = gMoveNames[gStringInfo->lastMove]; + break; + case B_TXT_LAST_ITEM: // last used item + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + { + if (gLastUsedItem == ITEM_ENIGMA_BERRY) + { + if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI)) + { + if ((gBattleScripting.multiplayerId != 0 && (gStringBank & BIT_SIDE)) + || (gBattleScripting.multiplayerId == 0 && !(gStringBank & BIT_SIDE))) + { + StringCopy(text, gEnigmaBerries[gStringBank].name); + StringAppend(text, gText_BerrySuffix); + toCpy = text; + } + else + { + toCpy = gText_EnigmaBerry; + } + } + else + { + if (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18 == gStringBank) + { + StringCopy(text, gEnigmaBerries[gStringBank].name); + StringAppend(text, gText_BerrySuffix); + toCpy = text; + } + else + toCpy = gText_EnigmaBerry; + } + } + else + { + CopyItemName(gLastUsedItem, text); + toCpy = text; + } + } + else + { + CopyItemName(gLastUsedItem, text); + toCpy = text; + } + break; + case B_TXT_LAST_ABILITY: // last used ability + toCpy = gAbilityNames[gLastUsedAbility]; + break; + case B_TXT_ATK_ABILITY: // attacker ability + toCpy = gAbilityNames[gAbilitiesPerBank[gBankAttacker]]; + break; + case B_TXT_DEF_ABILITY: // target ability + toCpy = gAbilityNames[gAbilitiesPerBank[gBankTarget]]; + break; + case B_TXT_SCR_ACTIVE_ABILITY: // scripting active ability + toCpy = gAbilityNames[gAbilitiesPerBank[gBattleScripting.bank]]; + break; + case B_TXT_EFF_ABILITY: // effect bank ability + toCpy = gAbilityNames[gAbilitiesPerBank[gEffectBank]]; + break; + case B_TXT_TRAINER1_CLASS: // trainer class name + if (gBattleTypeFlags & BATTLE_TYPE_SECRET_BASE) + toCpy = gTrainerClassNames[GetSecretBaseTrainerNameIndex()]; + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + toCpy = gTrainerClassNames[sub_8068BB0()]; + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_3FE) + toCpy = gTrainerClassNames[sub_81A4D00()]; + else if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + toCpy = gTrainerClassNames[GetFrontierOpponentClass(gTrainerBattleOpponent_A)]; + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + toCpy = gTrainerClassNames[sub_81D5530(gTrainerBattleOpponent_A)]; + else if (gBattleTypeFlags & BATTLE_TYPE_EREADER_TRAINER) + toCpy = gTrainerClassNames[GetEreaderTrainerClassId()]; + else + toCpy = gTrainerClassNames[gTrainers[gTrainerBattleOpponent_A].trainerClass]; + break; + case B_TXT_TRAINER1_NAME: // trainer1 name + if (gBattleTypeFlags & BATTLE_TYPE_SECRET_BASE) + { + for (i = 0; i < (s32) ARRAY_COUNT(gBattleResources->secretBase->trainerName); i++) + text[i] = gBattleResources->secretBase->trainerName[i]; + text[i] = EOS; + ConvertInternationalString(text, gBattleResources->secretBase->language); + toCpy = text; + } + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_C00) + { + toCpy = gLinkPlayers[multiplayerID ^ BIT_SIDE].name; + } + else if (gTrainerBattleOpponent_A == TRAINER_OPPONENT_3FE) + { + sub_81A4D50(text); + toCpy = text; + } + else if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + GetFrontierTrainerName(text, gTrainerBattleOpponent_A); + toCpy = text; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D5554(text, gTrainerBattleOpponent_A); + toCpy = text; + } + else if (gBattleTypeFlags & BATTLE_TYPE_EREADER_TRAINER) + { + GetEreaderTrainerName(text); + toCpy = text; + } + else + { + toCpy = gTrainers[gTrainerBattleOpponent_A].trainerName; + } + break; + case B_TXT_1E: // link player name? + toCpy = gLinkPlayers[multiplayerID].name; + break; + case B_TXT_1F: // link partner name? + toCpy = gLinkPlayers[sub_806D864(2 ^ gLinkPlayers[multiplayerID].lp_field_18)].name; + break; + case B_TXT_20: // link opponent 1 name? + toCpy = gLinkPlayers[sub_806D864(1 ^ gLinkPlayers[multiplayerID].lp_field_18)].name; + break; + case B_TXT_21: // link opponent 2 name? + toCpy = gLinkPlayers[sub_806D864(3 ^ gLinkPlayers[multiplayerID].lp_field_18)].name; + break; + case B_TXT_22: // link scripting active name + toCpy = gLinkPlayers[sub_806D864(gBattleScripting.bank)].name; + break; + case B_TXT_PLAYER_NAME: // player name + if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) + toCpy = gLinkPlayers[0].name; + else + toCpy = gSaveBlock2Ptr->playerName; + break; + case B_TXT_TRAINER1_LOSE_TEXT: // trainerA lose text + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + sub_81A36D0(2, gTrainerBattleOpponent_A); + toCpy = gStringVar4; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D572C(4, gTrainerBattleOpponent_A); + toCpy = gStringVar4; + } + else + { + toCpy = GetTrainer1LoseText(); + } + break; + case B_TXT_TRAINER1_WIN_TEXT: // trainerA win text + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + sub_81A36D0(1, gTrainerBattleOpponent_A); + toCpy = gStringVar4; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D572C(3, gTrainerBattleOpponent_A); + toCpy = gStringVar4; + } + break; + case B_TXT_26: // ? + HANDLE_NICKNAME_STRING_CASE(gBattleScripting.bank, *(&gBattleStruct->field_52)) + break; + case B_TXT_PC_CREATOR_NAME: // lanette pc + if (FlagGet(SYS_PC_LANETTE)) + toCpy = gText_Lanettes; + else + toCpy = gText_Someones; + break; + case B_TXT_ATK_PREFIX2: + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix2; + else + toCpy = gText_FoePkmnPrefix3; + break; + case B_TXT_DEF_PREFIX2: + if (GetBankSide(gBankTarget) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix2; + else + toCpy = gText_FoePkmnPrefix3; + break; + case B_TXT_ATK_PREFIX1: + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix; + else + toCpy = gText_FoePkmnPrefix2; + break; + case B_TXT_DEF_PREFIX1: + if (GetBankSide(gBankTarget) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix; + else + toCpy = gText_FoePkmnPrefix2; + break; + case B_TXT_ATK_PREFIX3: + if (GetBankSide(gBankAttacker) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix3; + else + toCpy = gText_FoePkmnPrefix4; + break; + case B_TXT_DEF_PREFIX3: + if (GetBankSide(gBankTarget) == SIDE_PLAYER) + toCpy = gText_AllyPkmnPrefix3; + else + toCpy = gText_FoePkmnPrefix4; + break; + case B_TXT_TRAINER2_CLASS: + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + toCpy = gTrainerClassNames[GetFrontierOpponentClass(gTrainerBattleOpponent_B)]; + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + toCpy = gTrainerClassNames[sub_81D5530(gTrainerBattleOpponent_B)]; + else + toCpy = gTrainerClassNames[gTrainers[gTrainerBattleOpponent_B].trainerClass]; + break; + case B_TXT_TRAINER2_NAME: + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + GetFrontierTrainerName(text, gTrainerBattleOpponent_B); + toCpy = text; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D5554(text, gTrainerBattleOpponent_B); + toCpy = text; + } + else + { + toCpy = gTrainers[gTrainerBattleOpponent_B].trainerName; + } + break; + case B_TXT_TRAINER2_LOSE_TEXT: + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + sub_81A36D0(2, gTrainerBattleOpponent_B); + toCpy = gStringVar4; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D572C(4, gTrainerBattleOpponent_B); + toCpy = gStringVar4; + } + else + { + toCpy = GetTrainer2LoseText(); + } + break; + case B_TXT_TRAINER2_WIN_TEXT: + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + { + sub_81A36D0(1, gTrainerBattleOpponent_B); + toCpy = gStringVar4; + } + else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) + { + sub_81D572C(3, gTrainerBattleOpponent_B); + toCpy = gStringVar4; + } + break; + case B_TXT_PARTNER_CLASS: + toCpy = gTrainerClassNames[GetFrontierOpponentClass(gPartnerTrainerId)]; + break; + case B_TXT_PARTNER_NAME: + GetFrontierTrainerName(text, gPartnerTrainerId); + toCpy = text; + break; + } + + // missing if (toCpy != NULL) check + while (*toCpy != EOS) + { + dst[dstID] = *toCpy; + dstID++; + toCpy++; + } + if (*src == B_TXT_TRAINER1_LOSE_TEXT || *src == B_TXT_TRAINER2_LOSE_TEXT + || *src == B_TXT_TRAINER1_WIN_TEXT || *src == B_TXT_TRAINER2_WIN_TEXT) + { + dst[dstID] = EXT_CTRL_CODE_BEGIN; + dstID++; + dst[dstID] = 9; + dstID++; + } + } + else + { + dst[dstID] = *src; + dstID++; + } + src++; + } + + dst[dstID] = *src; + dstID++; + + return dstID; +} + +// TODO: move these to a general header like util.h +#define ByteRead16(ptr) ((ptr)[0] | ((ptr)[1] << 8)) +#define ByteRead32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24) + +static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) +{ + u32 srcID = 1; + u32 value = 0; + u8 text[12]; + u16 hword; + + *dst = EOS; + while (src[srcID] != B_BUFF_EOS) + { + switch (src[srcID]) + { + case B_BUFF_STRING: // battle string + hword = ByteRead16(&src[srcID + 1]); + StringAppend(dst, gBattleStringsTable[hword - BATTLESTRINGS_ID_ADDER]); + srcID += 3; + break; + case B_BUFF_NUMBER: // int to string + switch (src[srcID + 1]) + { + case 1: + value = src[srcID + 3]; + break; + case 2: + value = ByteRead16(&src[srcID + 3]); + break; + case 4: + value = ByteRead32(&src[srcID + 3]); + break; + } + ConvertIntToDecimalStringN(dst, value, 0, src[srcID + 2]); + srcID += src[srcID + 1] + 3; + break; + case B_BUFF_MOVE: // move name + StringAppend(dst, gMoveNames[ByteRead16(&src[srcID + 1])]); + srcID += 3; + break; + case B_BUFF_TYPE: // type name + StringAppend(dst, gTypeNames[src[srcID + 1]]); + srcID += 2; + break; + case B_BUFF_MON_NICK_WITH_PREFIX: // poke nick with prefix + if (GetBankSide(src[srcID + 1]) == SIDE_PLAYER) + { + GetMonData(&gPlayerParty[src[srcID + 2]], MON_DATA_NICKNAME, text); + } + else + { + if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) + StringAppend(dst, gText_FoePkmnPrefix); + else + StringAppend(dst, gText_WildPkmnPrefix); + + GetMonData(&gEnemyParty[src[srcID + 2]], MON_DATA_NICKNAME, text); + } + StringGetEnd10(text); + StringAppend(dst, text); + srcID += 3; + break; + case B_BUFF_STAT: // stats + StringAppend(dst, gStatNamesTable[src[srcID + 1]]); + srcID += 2; + break; + case B_BUFF_SPECIES: // species name + GetSpeciesName(dst, ByteRead16(&src[srcID + 1])); + srcID += 3; + break; + case B_BUFF_MON_NICK: // poke nick without prefix + if (GetBankSide(src[srcID + 1]) == SIDE_PLAYER) + GetMonData(&gPlayerParty[src[srcID + 2]], MON_DATA_NICKNAME, dst); + else + GetMonData(&gEnemyParty[src[srcID + 2]], MON_DATA_NICKNAME, dst); + StringGetEnd10(dst); + srcID += 3; + break; + case B_BUFF_NEGATIVE_FLAVOUR: // flavour table + StringAppend(dst, gPokeblockWasTooXStringTable[src[srcID + 1]]); + srcID += 2; + break; + case B_BUFF_ABILITY: // ability names + StringAppend(dst, gAbilityNames[src[srcID + 1]]); + srcID += 2; + break; + case B_BUFF_ITEM: // item name + hword = ByteRead16(&src[srcID + 1]); + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + { + if (hword == ITEM_ENIGMA_BERRY) + { + if (gLinkPlayers[gBattleScripting.multiplayerId].lp_field_18 == gStringBank) + { + StringCopy(dst, gEnigmaBerries[gStringBank].name); + StringAppend(dst, gText_BerrySuffix); + } + else + StringAppend(dst, gText_EnigmaBerry); + } + else + CopyItemName(hword, dst); + } + else + CopyItemName(hword, dst); + srcID += 3; + break; + } + } +} From 95e4ae06ceacc583ecd7678adda2f19675be507d Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Sun, 8 Oct 2017 14:54:51 +0200 Subject: [PATCH 08/13] battle message decompiled and dumped --- asm/battle_controller_player.s | 2 +- asm/battle_message.s | 441 ------------------------------- asm/pokemon_summary_screen.s | 2 +- include/battle_2.h | 1 + include/battle_controllers.h | 4 +- include/battle_message.h | 2 + include/battle_string_ids.h | 10 +- include/text.h | 2 +- ld_script.txt | 1 - src/battle_2.c | 4 +- src/battle_message.c | 468 ++++++++++++++++++++++++++------- 11 files changed, 382 insertions(+), 555 deletions(-) delete mode 100644 asm/battle_message.s diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s index 1ea1bb5f23..73601e84c9 100644 --- a/asm/battle_controller_player.s +++ b/asm/battle_controller_player.s @@ -4401,7 +4401,7 @@ sub_8059B3C: @ 8059B3C ldrb r0, [r0] cmp r0, 0x1 beq _08059B98 - bl sub_814FBAC + bl SetPpNumbersPaletteInMoveSelection ldrb r1, [r7] lsls r4, r1, 9 adds r0, r5, 0x4 diff --git a/asm/battle_message.s b/asm/battle_message.s deleted file mode 100644 index d78167a261..0000000000 --- a/asm/battle_message.s +++ /dev/null @@ -1,441 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - - thumb_func_start sub_814F8F8 -sub_814F8F8: @ 814F8F8 - push {r4,r5,lr} - adds r4, r0, 0 - movs r2, 0 - ldr r5, =gStringInfo - ldr r3, =gUnknown_085CD336 -_0814F902: - cmp r2, 0x4 - beq _0814F918 - ldrh r1, [r3] - cmp r1, 0 - bne _0814F90E - adds r2, 0x1 -_0814F90E: - ldr r0, [r5] - adds r3, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _0814F902 -_0814F918: - cmp r2, 0 - blt _0814F944 - cmp r2, 0x2 - bgt _0814F938 - ldr r1, =gText_SpaceIs - adds r0, r4, 0 - bl StringCopy - b _0814F944 - .pool -_0814F938: - cmp r2, 0x4 - bgt _0814F944 - ldr r1, =gText_ApostropheS - adds r0, r4, 0 - bl StringCopy -_0814F944: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814F8F8 - - thumb_func_start sub_814F950 -sub_814F950: @ 814F950 - push {r4,r5,lr} - adds r3, r0, 0 - movs r4, 0 - b _0814F95A -_0814F958: - adds r3, 0x1 -_0814F95A: - ldrb r0, [r3] - cmp r0, 0xFF - bne _0814F958 - ldr r1, =gUnknown_085CD336 - ldr r5, =gStringInfo - movs r0, 0 - lsls r0, 1 - adds r2, r0, r1 -_0814F96A: - cmp r4, 0x4 - beq _0814F984 - ldrh r1, [r2] - cmp r1, 0 - bne _0814F976 - adds r4, 0x1 -_0814F976: - ldr r0, [r5] - adds r2, 0x2 - ldrh r0, [r0] - cmp r1, r0 - bne _0814F96A - cmp r4, 0x4 - bhi _0814F9E0 -_0814F984: - lsls r0, r4, 2 - ldr r1, =_0814F99C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0814F99C: - .4byte _0814F9B0 - .4byte _0814F9B8 - .4byte _0814F9C0 - .4byte _0814F9C8 - .4byte _0814F9D8 -_0814F9B0: - ldr r1, =gText_ExclamationMark - b _0814F9CA - .pool -_0814F9B8: - ldr r1, =gText_ExclamationMark2 - b _0814F9CA - .pool -_0814F9C0: - ldr r1, =gText_ExclamationMark3 - b _0814F9CA - .pool -_0814F9C8: - ldr r1, =gText_ExclamationMark4 -_0814F9CA: - adds r0, r3, 0 - bl StringCopy - b _0814F9E0 - .pool -_0814F9D8: - ldr r1, =gText_ExclamationMark5 - adds r0, r3, 0 - bl StringCopy -_0814F9E0: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814F950 - - thumb_func_start sub_814F9EC -sub_814F9EC: @ 814F9EC - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - adds r4, r0, 0 - lsls r1, 24 - lsrs r7, r1, 24 - ldr r1, =gUnknown_085CD660 - ldr r0, =gBattleScripting - adds r0, 0x24 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - mov r8, r0 - movs r0, 0x80 - ands r0, r7 - cmp r0, 0 - beq _0814FA24 - movs r0, 0x7F - ands r7, r0 - movs r0, 0 - b _0814FA36 - .pool -_0814FA24: - lsls r0, r7, 1 - adds r0, r7 - lsls r0, 2 - add r0, r8 - ldrb r1, [r0] - adds r0, r7, 0 - bl FillWindowPixelBuffer - movs r0, 0x1 -_0814FA36: - mov r9, r0 - str r4, [sp] - mov r0, sp - strb r7, [r0, 0x4] - mov r1, sp - lsls r6, r7, 1 - adds r3, r6, r7 - lsls r3, 2 - add r3, r8 - ldrb r0, [r3, 0x1] - strb r0, [r1, 0x5] - ldrb r0, [r3, 0x2] - strb r0, [r1, 0x6] - ldrb r0, [r3, 0x3] - strb r0, [r1, 0x7] - mov r0, sp - ldrb r0, [r0, 0x6] - strb r0, [r1, 0x8] - mov r0, sp - ldrb r0, [r0, 0x7] - strb r0, [r1, 0x9] - ldrb r0, [r3, 0x4] - strb r0, [r1, 0xA] - ldrb r0, [r3, 0x5] - strb r0, [r1, 0xB] - mov r4, sp - ldrb r2, [r4, 0xC] - movs r1, 0x10 - negs r1, r1 - adds r0, r1, 0 - ands r0, r2 - strb r0, [r4, 0xC] - mov r2, sp - ldrb r0, [r3, 0x7] - lsls r0, 4 - movs r5, 0xF - strb r0, [r2, 0xC] - ldrb r2, [r3, 0x8] - adds r0, r5, 0 - ands r0, r2 - ldrb r2, [r4, 0xD] - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0xD] - mov r2, sp - ldrb r0, [r3, 0x9] - lsls r0, 4 - ands r1, r5 - orrs r1, r0 - strb r1, [r2, 0xD] - mov r0, sp - ldrb r0, [r0, 0x6] - cmp r0, 0xFF - bne _0814FAC6 - ldr r0, =gBattleScripting - adds r0, 0x24 - ldrb r0, [r0] - adds r1, r7, 0 - bl sub_80397C4 - adds r2, r0, 0 - mov r0, sp - ldrb r0, [r0, 0x5] - ldr r1, [sp] - mov r3, sp - ldrb r3, [r3, 0xA] - bl GetStringCenterAlignXOffsetWithLetterSpacing - mov r2, sp - mov r1, sp - strb r0, [r1, 0x8] - strb r0, [r2, 0x6] -_0814FAC6: - cmp r7, 0x16 - bne _0814FAE0 - ldr r0, =gTextFlags - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - b _0814FAE8 - .pool -_0814FAE0: - ldr r0, =gTextFlags - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 -_0814FAE8: - strb r1, [r0] - adds r3, r0, 0 - ldr r0, =gBattleTypeFlags - ldr r1, [r0] - ldr r2, =0x01000002 - ands r1, r2 - adds r2, r0, 0 - cmp r1, 0 - beq _0814FB10 - ldrb r0, [r3] - movs r1, 0x4 - orrs r0, r1 - b _0814FB18 - .pool -_0814FB10: - ldrb r1, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 -_0814FB18: - strb r0, [r3] - cmp r7, 0 - beq _0814FB22 - cmp r7, 0x16 - bne _0814FB6C -_0814FB22: - ldr r1, [r2] - ldr r0, =0x02000002 - ands r0, r1 - cmp r0, 0 - beq _0814FB34 - movs r6, 0x1 - b _0814FB5C - .pool -_0814FB34: - movs r0, 0x80 - lsls r0, 17 - ands r1, r0 - cmp r1, 0 - beq _0814FB54 - ldr r4, =gUnknown_085CD668 - bl sub_8185FC4 - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r6, [r0] - b _0814FB5C - .pool -_0814FB54: - bl sav2_get_text_speed - lsls r0, 24 - lsrs r6, r0, 24 -_0814FB5C: - ldr r0, =gTextFlags - ldrb r1, [r0] - movs r2, 0x1 - orrs r1, r2 - strb r1, [r0] - b _0814FB7E - .pool -_0814FB6C: - adds r0, r6, r7 - lsls r0, 2 - add r0, r8 - ldrb r6, [r0, 0x6] - ldrb r1, [r3] - movs r0, 0x2 - negs r0, r0 - ands r0, r1 - strb r0, [r3] -_0814FB7E: - mov r0, sp - adds r1, r6, 0 - movs r2, 0 - bl AddTextPrinter - mov r0, r9 - cmp r0, 0 - beq _0814FB9C - adds r0, r7, 0 - bl PutWindowTilemap - adds r0, r7, 0 - movs r1, 0x3 - bl CopyWindowToVram -_0814FB9C: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_814F9EC - - thumb_func_start sub_814FBAC -sub_814FBAC: @ 814FBAC - push {r4,r5,lr} - ldr r0, =gActiveBank - ldrb r2, [r0] - lsls r1, r2, 9 - ldr r0, =gBattleBufferA + 4 - adds r1, r0 - ldr r4, =gUnknown_08D85620 - ldr r0, =gMoveSelectionCursor - adds r2, r0 - ldrb r2, [r2] - adds r0, r1, 0 - adds r0, 0x8 - adds r0, r2 - ldrb r0, [r0] - adds r1, 0xC - adds r1, r2 - ldrb r1, [r1] - bl sub_814FC20 - lsls r0, 24 - ldr r5, =gPlttBufferUnfaded - lsrs r0, 22 - adds r0, r4 - ldrh r1, [r0] - adds r2, r5, 0 - adds r2, 0xB8 - strh r1, [r2] - ldrh r0, [r0, 0x2] - adds r5, 0xB6 - strh r0, [r5] - ldr r4, =gPlttBufferFaded + 0xB8 - adds r0, r2, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - subs r4, 0x2 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_814FBAC - - thumb_func_start sub_814FC20 -sub_814FC20: @ 814FC20 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, r2 - beq _0814FC68 - cmp r0, 0x2 - bhi _0814FC3A - cmp r2, 0x1 - bhi _0814FC68 - b _0814FC42 -_0814FC3A: - cmp r0, 0x7 - bhi _0814FC4C - cmp r2, 0x2 - bhi _0814FC68 -_0814FC42: - movs r0, 0x2 - subs r0, r2 - lsls r0, 24 - lsrs r0, 24 - b _0814FC6A -_0814FC4C: - cmp r2, 0 - bne _0814FC54 - movs r0, 0x2 - b _0814FC6A -_0814FC54: - lsrs r0, r1, 26 - cmp r2, r0 - bhi _0814FC5E - movs r0, 0x1 - b _0814FC6A -_0814FC5E: - lsrs r0, r1, 25 - cmp r3, r0 - bhi _0814FC68 - movs r0, 0 - b _0814FC6A -_0814FC68: - movs r0, 0x3 -_0814FC6A: - pop {r1} - bx r1 - thumb_func_end sub_814FC20 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index bcc52c1720..e1a5e4e4c3 100755 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -7571,7 +7571,7 @@ sub_81C3B08: @ 81C3B08 adds r7, r4, 0 ldrb r0, [r5] adds r1, r6, 0 - bl sub_814FC20 + bl GetCurrentPpToMaxPpState lsls r0, 24 lsrs r0, 24 adds r5, r0, 0 diff --git a/include/battle_2.h b/include/battle_2.h index ab5068446b..677bf0505a 100644 --- a/include/battle_2.h +++ b/include/battle_2.h @@ -15,6 +15,7 @@ void SwapTurnOrder(u8 id1, u8 id2); void BattleTurnPassed(void); void RunBattleScriptCommands_PopCallbacksStack(void); void RunBattleScriptCommands(void); +u32 sub_80397C4(u32 setId, u32 tableId); void sub_8039E9C(struct Sprite *sprite); extern const u8 gStatusConditionString_PoisonJpn[8]; diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 2281fdaffb..eea544b556 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -39,8 +39,8 @@ struct MovePpInfo struct ChooseMoveStruct { u16 moves[4]; - u8 ppNumbers[4]; - u8 ppWithBonusNumbers[4]; + u8 currentPp[4]; + u8 maxPp[4]; u16 species; u8 monType1; u8 monType2; diff --git a/include/battle_message.h b/include/battle_message.h index be2aca9b25..3b154c5a64 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -205,6 +205,8 @@ void BufferStringBattle(u16 stringID); u32 BattleStringExpandPlaceholdersToDisplayedString(const u8* src); u32 BattleStringExpandPlaceholders(const u8* src, u8* dst); void sub_814F9EC(const u8* text, u8 arg1); +void SetPpNumbersPaletteInMoveSelection(void); +u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp); #define TEXT_BUFF_ARRAY_COUNT 16 diff --git a/include/battle_string_ids.h b/include/battle_string_ids.h index 546cb2e462..f242284b04 100644 --- a/include/battle_string_ids.h +++ b/include/battle_string_ids.h @@ -12,6 +12,8 @@ #define STRINGID_USEDMOVE 4 #define STRINGID_BATTLEEND 5 + +// todo: make some of those names less vague: attacker/target vs pkmn, etc. #define STRINGID_TRAINER1LOSETEXT 12 #define STRINGID_PKMNGAINEDEXP 13 #define STRINGID_PKMNGREWTOLV 14 @@ -28,8 +30,8 @@ #define STRINGID_STATSWONTINCREASE2 25 #define STRINGID_AVOIDEDDAMAGE 26 #define STRINGID_ITDOESNTAFFECT 27 -#define STRINGID_PKMNFAINTED 28 -#define STRINGID_PKMNFAINTED2 29 +#define STRINGID_ATTACKERFAINTED 28 +#define STRINGID_TARGETFAINTED 29 #define STRINGID_PLAYERGOTMONEY 30 #define STRINGID_PLAYERWHITEOUT 31 #define STRINGID_PLAYERWHITEOUT2 32 @@ -143,7 +145,7 @@ #define STRINGID_PKMNTOOKFOE 140 #define STRINGID_PKMNREDUCEDPP 141 #define STRINGID_PKMNSTOLEITEM 142 -#define STRINGID_PKMNCANTESCAPE 143 +#define STRINGID_TARGETCANTESCAPENOW 143 #define STRINGID_PKMNFELLINTONIGHTMARE 144 #define STRINGID_PKMNLOCKEDINNIGHTMARE 145 #define STRINGID_PKMNLAIDCURSE 146 @@ -357,7 +359,7 @@ #define STRINGID_THEWALLSHATTERED 354 #define STRINGID_PKMNSXPREVENTSYSZ 355 #define STRINGID_PKMNSXCUREDITSYPROBLEM 356 -#define STRINGID_PKMNCANTESCAPE2 357 +#define STRINGID_ATTACKERCANTESCAPE 357 #define STRINGID_PKMNOBTAINEDX 358 #define STRINGID_PKMNOBTAINEDX2 359 #define STRINGID_PKMNOBTAINEDXYOBTAINEDZ 360 diff --git a/include/text.h b/include/text.h index 217de0687a..c09b41ad3f 100644 --- a/include/text.h +++ b/include/text.h @@ -103,7 +103,7 @@ struct TextPrinterSubStruct struct TextSubPrinter // TODO: Better name { - u8* current_text_offset; + const u8* current_text_offset; u8 windowId; u8 fontId; u8 x; diff --git a/ld_script.txt b/ld_script.txt index 20ec4d145f..12815bcd5b 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -191,7 +191,6 @@ SECTIONS { asm/battle_transition.o(.text); asm/battle_controller_linkpartner.o(.text); src/battle_message.o(.text); - asm/battle_message.o(.text); asm/cable_car.o(.text); asm/math_util.o(.text); asm/roulette_util.o(.text); diff --git a/src/battle_2.c b/src/battle_2.c index 8e48f3ed64..be0d0be72e 100644 --- a/src/battle_2.c +++ b/src/battle_2.c @@ -4007,8 +4007,8 @@ static void HandleTurnActionSelectionState(void) for (i = 0; i < 4; i++) { moveInfo.moves[i] = gBattleMons[gActiveBank].moves[i]; - moveInfo.ppNumbers[i] = gBattleMons[gActiveBank].pp[i]; - moveInfo.ppWithBonusNumbers[i] = CalculatePPWithBonus( + moveInfo.currentPp[i] = gBattleMons[gActiveBank].pp[i]; + moveInfo.maxPp[i] = CalculatePPWithBonus( gBattleMons[gActiveBank].moves[i], gBattleMons[gActiveBank].ppBonuses, i); diff --git a/src/battle_message.c b/src/battle_message.c index 510b8a5812..77a461544c 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -9,6 +9,9 @@ #include "event_data.h" #include "link.h" #include "item.h" +#include "window.h" +#include "palette.h" +#include "battle_controllers.h" extern u16 gLastUsedItem; extern u8 gLastUsedAbility; @@ -25,11 +28,15 @@ extern u16 gPartnerTrainerId; extern u16 gBattlePartyID[BATTLE_BANKS_COUNT]; extern struct BattleEnigmaBerry gEnigmaBerries[BATTLE_BANKS_COUNT]; extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200]; +extern u8 gMoveSelectionCursor[BATTLE_BANKS_COUNT]; +extern u8 gUnknown_0203C7B4; +extern struct StringInfoBattle *gStringInfo; extern const u8 gMoveNames[LAST_MOVE_INDEX + 1][13]; extern const u8 gAbilityNames[][13]; extern const u8 gTrainerClassNames[][13]; extern const u8 gTypeNames[][7]; +extern const u16 gUnknown_08D85620[]; // strings extern const u8 gText_PkmnBoxSomeonesPCFull[]; @@ -50,10 +57,13 @@ extern void sub_81D572C(u8 arg0, u16 trainerId); // pokenav extern const u8* GetTrainer1LoseText(void); // battle_setup extern const u8* GetTrainer2LoseText(void); // battle_setup extern void GetFrontierTrainerName(u8 *dst, u16 trainerId); +extern s32 GetStringCenterAlignXOffsetWithLetterSpacing(u8 fontId, const u8 *str, s32 totalWidth, s16 letterSpacing); +extern u8 sub_8185FC4(void); +extern u8 sav2_get_text_speed(void); // this file's functions -void sub_814F8F8(u8 *txtPtr); -void sub_814F950(u8 *txtPtr); +static void sub_814F8F8(u8 *textPtr); +static void sub_814F950(u8 *dst); static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst); // ewram variables @@ -63,6 +73,7 @@ EWRAM_DATA u8 gBattleTextBuff2[TEXT_BUFF_ARRAY_COUNT] = {0}; EWRAM_DATA u8 gBattleTextBuff3[TEXT_BUFF_ARRAY_COUNT] = {0}; // const rom data +// todo: make some of those names less vague: attacker/target vs pkmn, etc. const u8 gText_Trainer1LoseText[] = _("{B_TRAINER1_LOSE_TEXT}"); const u8 gText_PkmnGainedEXP[] = _("{B_BUFF1} gained{B_BUFF2}\n{B_BUFF3} EXP. Points!\p"); @@ -83,14 +94,14 @@ const u8 gText_AvoidedDamage[] = _("{B_DEF_NAME_WITH_PREFIX} avoided\ndamage wit const u8 gText_PkmnMakesGroundMiss[] = _("{B_DEF_NAME_WITH_PREFIX} makes GROUND\nmoves miss with {B_DEF_ABILITY}!"); const u8 gText_PkmnAvoidedAttack[] = _("{B_DEF_NAME_WITH_PREFIX} avoided\nthe attack!"); const u8 gText_ItDoesntAffect[] = _("It doesn’t affect\n{B_DEF_NAME_WITH_PREFIX}…"); -const u8 gText_PkmnFainted[] = _("{B_ATK_NAME_WITH_PREFIX}\nfainted!\p"); -const u8 gText_PkmnFainted2[] = _("{B_DEF_NAME_WITH_PREFIX}\nfainted!\p"); +const u8 gText_AttackerFainted[] = _("{B_ATK_NAME_WITH_PREFIX}\nfainted!\p"); +const u8 gText_TargetFainted[] = _("{B_DEF_NAME_WITH_PREFIX}\nfainted!\p"); const u8 gText_PlayerGotMoney[] = _("{B_PLAYER_NAME} got ¥{B_BUFF1}\nfor winning!\p"); const u8 gText_PlayerWhiteout[] = _("{B_PLAYER_NAME} is out of\nusable POKéMON!\p"); const u8 gText_PlayerWhiteout2[] = _("{B_PLAYER_NAME} whited out!{PAUSE_UNTIL_PRESS}"); const u8 gText_PreventsEscape[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} prevents\nescape with {B_SCR_ACTIVE_ABILITY}!\p"); const u8 gText_CantEscape2[] = _("Can’t escape!\p"); -const u8 gText_PkmnCantEscape2[] = _("{B_ATK_NAME_WITH_PREFIX} can’t escape!"); +const u8 gText_AttackerCantEscape[] = _("{B_ATK_NAME_WITH_PREFIX} can’t escape!"); const u8 gText_HitXTimes[] = _("Hit {B_BUFF1} time(s)!"); const u8 gText_PkmnFellAsleep[] = _("{B_EFF_NAME_WITH_PREFIX}\nfell asleep!"); const u8 gText_PkmnMadeSleep[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade {B_EFF_NAME_WITH_PREFIX} sleep!"); @@ -206,7 +217,7 @@ const u8 gText_PkmnTryingToTakeFoe[] = _("{B_ATK_NAME_WITH_PREFIX} is trying\nto const u8 gText_PkmnTookFoe[] = _("{B_DEF_NAME_WITH_PREFIX} took\n{B_ATK_NAME_WITH_PREFIX} with it!"); const u8 gText_PkmnReducedPP[] = _("Reduced {B_DEF_NAME_WITH_PREFIX}’s\n{B_BUFF1} by {B_BUFF2}!"); const u8 gText_PkmnStoleItem[] = _("{B_ATK_NAME_WITH_PREFIX} stole\n{B_DEF_NAME_WITH_PREFIX}’s {B_LAST_ITEM}!"); -const u8 gText_PkmnCantEscape[] = _("{B_DEF_NAME_WITH_PREFIX} can’t\nescape now!"); +const u8 gText_TargetCantEscapeNow[] = _("{B_DEF_NAME_WITH_PREFIX} can’t\nescape now!"); const u8 gText_PkmnFellIntoNightmare[] = _("{B_DEF_NAME_WITH_PREFIX} fell into\na NIGHTMARE!"); const u8 gText_PkmnLockedInNightmare[] = _("{B_ATK_NAME_WITH_PREFIX} is locked\nin a NIGHTMARE!"); const u8 gText_PkmnLaidCurse[] = _("{B_ATK_NAME_WITH_PREFIX} cut its own HP and\nlaid a CURSE on {B_DEF_NAME_WITH_PREFIX}!"); @@ -289,10 +300,10 @@ const u8 gText_PkmnCutsAttackWith[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_ const u8 gText_PkmnPreventsStatLossWith[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents stat loss!"); const u8 gText_PkmnHurtsWith[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nhurt {B_ATK_NAME_WITH_PREFIX}!"); const u8 gText_PkmnTraced[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} TRACED\n{B_BUFF1}’s {B_BUFF2}!"); -const u8 gText_PkmnsXPreventsBurns[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents burns!"); +const u8 gText_PkmnsXPreventsBurns[] = _("{B_EFF_NAME_WITH_PREFIX}’s {B_EFF_ABILITY}\nprevents burns!"); const u8 gText_PkmnsXBlocksY[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nblocks {B_CURRENT_MOVE}!"); const u8 gText_PkmnsXBlocksY2[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nblocks {B_CURRENT_MOVE}!"); -const u8 gText_PkmnsXRestoredHPALittle2[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nrestored its HP a little!"); +const u8 gText_PkmnsXRestoredHPALittle2[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_ATK_ABILITY}\nrestored its HP a little!"); const u8 gText_PkmnsXWhippedUpSandstorm[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nwhipped up a sandstorm!"); const u8 gText_PkmnsXIntensifiedSun[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nintensified the sun’s rays!"); const u8 gText_PkmnsXPreventsYLoss[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nprevents {B_BUFF1} loss!"); @@ -302,11 +313,11 @@ const u8 gText_PkmnsXCuredYProblem[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B const u8 gText_ItSuckedLiquidOoze[] = _("It sucked up the\nLIQUID OOZE!"); const u8 gText_PkmnTransformed[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX} transformed!"); const u8 gText_PkmnsXTookAttack[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\ntook the attack!"); -const u8 gText_PkmnsXPreventsSwitching[] = _("{B_BUFF1}’s {STRING 23}\nprevents switching!\p"); +const u8 gText_PkmnsXPreventsSwitching[] = _("{B_BUFF1}’s {B_LAST_ABILITY}\nprevents switching!\p"); const u8 gText_PreventedFromWorking[] = _("{B_DEF_NAME_WITH_PREFIX}’s {B_DEF_ABILITY}\nprevented {B_SCR_ACTIVE_NAME_WITH_PREFIX}’s\l{B_BUFF1} from working!"); const u8 gText_PkmnsXMadeItIneffective[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nmade it ineffective!"); -const u8 gText_PkmnsXPreventsFlinching[] = _("{B_EFF_NAME_WITH_PREFIX}’s {STRING 27}\nprevents flinching!"); -const u8 gText_PkmnsXPreventsYsZ[] = _("{B_ATK_NAME_WITH_PREFIX}’s {STRING 24}\nprevents {B_DEF_NAME_WITH_PREFIX}’s\l{B_DEF_ABILITY} from working!"); +const u8 gText_PkmnsXPreventsFlinching[] = _("{B_EFF_NAME_WITH_PREFIX}’s {B_EFF_ABILITY}\nprevents flinching!"); +const u8 gText_PkmnsXPreventsYsZ[] = _("{B_ATK_NAME_WITH_PREFIX}’s {B_ATK_ABILITY}\nprevents {B_DEF_NAME_WITH_PREFIX}’s\l{B_DEF_ABILITY} from working!"); const u8 gText_PkmnsXCuredItsYProblem[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\ncured its {B_BUFF1} problem!"); const u8 gText_PkmnsXHadNoEffectOnY[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}’s {B_SCR_ACTIVE_ABILITY}\nhad no effect on {B_EFF_NAME_WITH_PREFIX}!"); const u8 gText_StatSharply[] = _("sharply "); @@ -329,7 +340,7 @@ const u8 gText_NotVeryEffective[] = _("It’s not very effective…"); const u8 gText_SuperEffective[] = _("It’s super effective!"); const u8 gText_GotAwaySafely[] = _("{PLAY_SE 0x0011}Got away safely!\p"); const u8 gText_PkmnFledUsingIts[] = _("{PLAY_SE 0x0011}{B_ATK_NAME_WITH_PREFIX} fled\nusing its {B_LAST_ITEM}!\p"); -const u8 gText_PkmnFledUsing[] = _("{PLAY_SE 0x0011}{B_ATK_NAME_WITH_PREFIX} fled\nusing {STRING 24}!\p"); +const u8 gText_PkmnFledUsing[] = _("{PLAY_SE 0x0011}{B_ATK_NAME_WITH_PREFIX} fled\nusing {B_ATK_ABILITY}!\p"); const u8 gText_WildPkmnFled[] = _("{PLAY_SE 0x0011}Wild {B_BUFF1} fled!"); const u8 gText_PlayerDefeatedLinkTrainer[] = _("Player defeated\n{B_20}!"); const u8 gText_TwoLinkTrainersDefeated[] = _("Player beat {B_20}\nand {B_21}!"); @@ -537,8 +548,8 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = gText_StatsWontIncrease2, gText_AvoidedDamage, gText_ItDoesntAffect, - gText_PkmnFainted, - gText_PkmnFainted2, + gText_AttackerFainted, + gText_TargetFainted, gText_PlayerGotMoney, gText_PlayerWhiteout, gText_PlayerWhiteout2, @@ -652,7 +663,7 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = gText_PkmnTookFoe, gText_PkmnReducedPP, gText_PkmnStoleItem, - gText_PkmnCantEscape, + gText_TargetCantEscapeNow, gText_PkmnFellIntoNightmare, gText_PkmnLockedInNightmare, gText_PkmnLaidCurse, @@ -866,7 +877,7 @@ const u8 * const gBattleStringsTable[BATTLESTRINGS_COUNT] = gText_TheWallShattered, gText_PkmnsXPreventsYsZ, gText_PkmnsXCuredItsYProblem, - gText_PkmnCantEscape2, + gText_AttackerCantEscape, gText_PkmnObtainedX, gText_PkmnObtainedX2, gText_PkmnObtainedXYObtainedZ, @@ -899,30 +910,80 @@ const u16 gMissStringIds[] = STRINGID_PKMNMAKESGROUNDMISS }; -// todo: change values to string Ids -const u16 gUnknown_085CC83E[] = +const u16 gNoEscapeStringIds[] = { - 0x00e2, 0x00e3, 0x0021, - 0x0112, 0x0165, 0x00e8, 0x00e9, 0x00e5, 0x00ed, 0x00f0, 0x00f3, - 0x00ee, 0x00f4, 0x0066, 0x0067, 0x00ef, 0x00f5, 0x00ea, 0x00eb, - 0x00ec, 0x0065, 0x0098, 0x00e5, 0x00e5, 0x004e, 0x0160, 0x004d, - 0x0161, 0x004f, 0x0068, 0x0069, 0x001b, 0x006a, 0x0139, 0x0052, - 0x0053, 0x0070, 0x0071, 0x0073, 0x0074, 0x006c, 0x006e, 0x00f7, - 0x004c, 0x0075, 0x0076, 0x0077, 0x00d5, 0x00d6, 0x003d, 0x0130, - 0x0145, 0x0146, 0x00d7, 0x00d8, 0x003e, 0x0130, 0x0054, 0x0055, - 0x0056, 0x0057, 0x0058, 0x0059, 0x013d, 0x013e, 0x005a, 0x005c, - 0x005b, 0x005d, 0x005b, 0x0148, 0x0061, 0x00e5, 0x0063, 0x00e5, - 0x007d, 0x00e5, 0x007e, 0x00fb, 0x0028, 0x0029, 0x0037, 0x0038, - 0x0023, 0x0024, 0x002e, 0x002f, 0x0031, 0x0032, 0x0035, 0x0036, - 0x0017, 0x007c, 0x0045, 0x0136, 0x002d, 0x0139, 0x013b, 0x013c, - 0x00fd, 0x00fd, 0x00fd, 0x00fd, 0x0142, 0x00a1, 0x014f, 0x0107, - 0x0108, 0x0109, 0x010a, 0x0110, 0x0110, 0x0110, 0x0110, 0x0110, - 0x0110, 0x0110, 0x0110, 0x0111, 0x0110, 0x0110, 0x0110, 0x00f1, - 0x0110, 0x0110, 0x0110, 0x0116, 0x0117, 0x0118, 0x0119, 0x016d, - 0x011b, 0x011c, 0x011e, 0x011f, 0x0120, 0x0128, 0x0123, 0x0126, - 0x0125, 0x0124, 0x0127, 0x0129, 0x0156, 0x0131, 0x0163, 0x016a, - 0x00c7, 0x0163, 0x016a, 0x00c9, 0x0163, 0x016a, 0x0166, 0x0167, - 0x0168, 0x00cb, 0x0137, 0x0177, 0x0178, 0x0179, 0x017a, + STRINGID_CANTESCAPE, STRINGID_DONTLEAVEBIRCH, STRINGID_PREVENTSESCAPE, + STRINGID_CANTESCAPE2, STRINGID_ATTACKERCANTESCAPE +}; + +const u16 gMoveWeatherChangeStringIds[] = +{ + STRINGID_STARTEDTORAIN, STRINGID_DOWNPOURSTARTED, STRINGID_BUTITFAILED, + STRINGID_SANDSTORMBREWED, STRINGID_SUNLIGHTGOTBRIGHT, STRINGID_STARTEDHAIL +}; + +const u16 gSandStormHailContinuesStringIds[] = +{ + STRINGID_SANDSTORMRAGES, STRINGID_HAILCONTINUES +}; + +const u16 gSandStormHailDmgStringIds[] = +{ + STRINGID_PKMNBUFFETEDBYSANDSTORM, STRINGID_PKMNPELTEDBYHAIL +}; + +// todo once battlescripts are dumped +const u16 gTooLazyToSplitThemStringIds[] = +{ + STRINGID_SANDSTORMSUBSIDED, STRINGID_HAILSTOPPED, STRINGID_RAINCONTINUES, STRINGID_DOWNPOURCONTINUES, + STRINGID_RAINSTOPPED, STRINGID_PKMNPROTECTEDITSELF2, STRINGID_PKMNBRACEDITSELF, + STRINGID_BUTITFAILED, STRINGID_BUTITFAILED, STRINGID_PKMNRAISEDDEF, + STRINGID_PKMNRAISEDDEFALITTLE, STRINGID_PKMNRAISEDSPDEF, STRINGID_PKMNRAISEDSPDEFALITTLE, + STRINGID_PKMNCOVEREDBYVEIL, STRINGID_PKMNSEEDED, STRINGID_PKMNEVADEDATTACK, + STRINGID_ITDOESNTAFFECT, STRINGID_PKMNSAPPEDBYLEECHSEED, STRINGID_ITSUCKEDLIQUIDOOZE, + STRINGID_PKMNWENTTOSLEEP, STRINGID_PKMNSLEPTHEALTHY, STRINGID_PKMNMAKINGUPROAR, + STRINGID_PKMNCALMEDDOWN, STRINGID_PKMNSTOCKPILED, STRINGID_PKMNCANTSTOCKPILE, + STRINGID_PKMNWOKEUP, STRINGID_PKMNWOKEUPINUPROAR, STRINGID_FAILEDTOSWALLOW, + STRINGID_PKMNHPFULL, STRINGID_PKMNCANTSLEEPINUPROAR2, STRINGID_UPROARKEPTPKMNAWAKE, + STRINGID_PKMNSTAYEDAWAKEUSING, STRINGID_PKMNSSTATCHANGED, STRINGID_PKMNSSTATCHANGED2, + STRINGID_STATSWONTINCREASE, STRINGID_EMPTYSTRING3, STRINGID_USINGXTHEYOFZN, + STRINGID_PKMNUSEDXTOGETPUMPED, STRINGID_PKMNSSTATCHANGED3, STRINGID_PKMNSSTATCHANGED4, + STRINGID_STATSWONTDECREASE, STRINGID_EMPTYSTRING3, STRINGID_PKMNWHIPPEDWHIRLWIND, + STRINGID_PKMNTOOKSUNLIGHT, STRINGID_PKMNLOWEREDHEAD, STRINGID_PKMNISGLOWING, + STRINGID_PKMNFLEWHIGH, STRINGID_PKMNDUGHOLE, STRINGID_PKMNHIDUNDERWATER, + STRINGID_PKMNSPRANGUP, STRINGID_PKMNSQUEEZEDBYBIND, STRINGID_PKMNWRAPPEDBY, + STRINGID_PKMNTRAPPEDINVORTEX, STRINGID_PKMNCLAMPED, STRINGID_PKMNTRAPPEDINVORTEX, + STRINGID_PKMNTRAPPEDBYSANDTOMB, STRINGID_PKMNSHROUDEDINMIST, STRINGID_BUTITFAILED, + STRINGID_PKMNGETTINGPUMPED, STRINGID_BUTITFAILED, STRINGID_PKMNTRANSFORMEDINTO, + STRINGID_BUTITFAILED, STRINGID_PKMNMADESUBSTITUTE, STRINGID_TOOWEAKFORSUBSTITUTE, + STRINGID_PKMNWASPOISONED, STRINGID_PKMNPOISONEDBY, STRINGID_PKMNWASPARALYZED, + STRINGID_PKMNWASPARALYZEDBY, STRINGID_PKMNFELLASLEEP, STRINGID_PKMNMADESLEEP, + STRINGID_PKMNWASBURNED, STRINGID_PKMNBURNEDBY, STRINGID_PKMNWASFROZEN, + STRINGID_PKMNFROZENBY, STRINGID_PKMNWASDEFROSTED2, STRINGID_PKMNWASDEFROSTEDBY, + STRINGID_ATTACKMISSED, STRINGID_PKMNUNAFFECTED, STRINGID_PKMNFELLINLOVE, + STRINGID_PKMNSXINFATUATEDY, STRINGID_PKMNENERGYDRAINED, STRINGID_ITSUCKEDLIQUIDOOZE, + STRINGID_ELECTRICITYWEAKENED, STRINGID_FIREWEAKENED, STRINGID_BELLCHIMED, + STRINGID_BELLCHIMED, STRINGID_BELLCHIMED, STRINGID_BELLCHIMED, + STRINGID_SOOTHINGAROMA, STRINGID_PKMNFORESAWATTACK, STRINGID_PKMNCHOSEXASDESTINY, + STRINGID_PKMNBROKEFREE, STRINGID_ITAPPEAREDCAUGHT, STRINGID_AARGHALMOSTHADIT, + STRINGID_SHOOTSOCLOSE, STRINGID_ITISRAINING, STRINGID_ITISRAINING, + STRINGID_ITISRAINING, STRINGID_ITISRAINING, STRINGID_ITISRAINING, + STRINGID_ITISRAINING, STRINGID_ITISRAINING, STRINGID_ITISRAINING, + STRINGID_SANDSTORMISRAGING, STRINGID_ITISRAINING, STRINGID_ITISRAINING, + STRINGID_ITISRAINING, STRINGID_SUNLIGHTSTRONG, STRINGID_ITISRAINING, + STRINGID_ITISRAINING, STRINGID_ITISRAINING, STRINGID_PKMNLOAFING, + STRINGID_PKMNWONTOBEY, STRINGID_PKMNTURNEDAWAY, STRINGID_PKMNPRETENDNOTNOTICE, + STRINGID_PKMNINCAPABLEOFPOWER, STRINGID_CREPTCLOSER, STRINGID_CANTGETCLOSER, + STRINGID_PKMNCURIOUSABOUTX, STRINGID_PKMNENTHRALLEDBYX, STRINGID_PKMNIGNOREDX, + STRINGID_PKMNSITEMSNAPPEDOUT, STRINGID_PKMNSITEMCUREDPARALYSIS, STRINGID_PKMNSITEMDEFROSTEDIT, + STRINGID_PKMNSITEMHEALEDBURN, STRINGID_PKMNSITEMCUREDPOISON, STRINGID_PKMNSITEMWOKEIT, + STRINGID_PKMNSITEMCUREDPROBLEM, STRINGID_PKMNSITEMNORMALIZEDSTATUS, STRINGID_PKMNSXPREVENTSBURNS, + STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY, STRINGID_PKMNPREVENTSPARALYSISWITH, + STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY, STRINGID_PKMNPREVENTSPOISONINGWITH, + STRINGID_PKMNSXPREVENTSYSZ, STRINGID_PKMNSXHADNOEFFECTONY, STRINGID_PKMNOBTAINEDX, + STRINGID_PKMNOBTAINEDX2, STRINGID_PKMNOBTAINEDXYOBTAINEDZ, STRINGID_PKMNRAISEDFIREPOWERWITH, + STRINGID_PKMNSXMADEYINEFFECTIVE, STRINGID_PKMNTRANSFERREDSOMEONESPC, STRINGID_PKMNTRANSFERREDLANETTESPC, + STRINGID_PKMNBOXSOMEONESPCFULL, STRINGID_PKMNBOXLANETTESPCFULL, }; const u16 gTrappingMoves[] = @@ -1022,7 +1083,6 @@ const u8 gText_WillChampinshipDreamComeTrue[] = _("Will the championship dream c const u8 gText_AFormerChampion[] = _("A former CHAMPION!\p"); const u8 gText_ThePreviousChampion[] = _("The previous CHAMPION!\p"); const u8 gText_TheUnbeatenChampion[] = _("The unbeaten CHAMPION!\p"); - const u8 gText_PlayerMon1Name[] = _("{B_PLAYER_MON1_NAME}"); const u8 gText_Vs[] = _("VS"); const u8 gText_OpponentMon1Name[] = _("{B_OPPONENT_MON1_NAME}"); @@ -1085,79 +1145,104 @@ const u8 gText_BattleRecordedOnPass[] = _("{B_PLAYER_NAME}’s battle result was const u8 gText_LinkTrainerWantsToBattlePause[] = _("{B_20}\nwants to battle!{PAUSE 49}"); const u8 gText_TwoLinkTrainersWantToBattlePause[] = _("{B_20} and {B_21}\nwant to battle!{PAUSE 49}"); -const u16 gUnknown_085CD336[] = +static const u16 sUnknownMoveTable[] = { - 0x000e, 0x0046, 0x004a, 0x006a, 0x006b, 0x006c, 0x006e, 0x006f, - 0x0079, 0x007b, 0x007d, 0x0094, 0x0096, 0x0097, 0x009b, 0x009c, - 0x009f, 0x00a4, 0x00aa, 0x00ad, 0x00b6, 0x00bf, 0x00cb, 0x00cd, - 0x00cf, 0x00d6, 0x00ed, 0x00f4, 0x00f5, 0x010a, 0x010f, 0x0112, - 0x0113, 0x011a, 0x0125, 0x0136, 0x013c, 0x0140, 0x0149, 0x014a, - 0x014e, 0x0154, 0x0000, 0x0064, 0x0069, 0x0075, 0x0085, 0x00af, - 0x010d, 0x0153, 0x0000, 0x0060, 0x0061, 0x0066, 0x0068, 0x008c, - 0x0090, 0x00a5, 0x00b8, 0x010c, 0x0111, 0x0118, 0x0119, 0x0129, - 0x012a, 0x012c, 0x0139, 0x015a, 0x015b, 0x0000, 0x0001, 0x000a, - 0x000b, 0x0011, 0x0013, 0x0014, 0x0015, 0x001e, 0x0023, 0x0025, - 0x0027, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0040, 0x0047, - 0x0051, 0x0059, 0x005a, 0x005b, 0x005c, 0x0067, 0x0076, 0x007a, - 0x0080, 0x0084, 0x008b, 0x0091, 0x00a3, 0x00a9, 0x00ab, 0x00ae, - 0x00c1, 0x00cc, 0x00d5, 0x00f9, 0x00fd, 0x00ff, 0x0100, 0x0103, - 0x0104, 0x0110, 0x011b, 0x0141, 0x0157, 0x0000, + MOVE_SWORDS_DANCE, MOVE_STRENGTH, MOVE_GROWTH, + MOVE_HARDEN, MOVE_MINIMIZE, MOVE_SMOKESCREEN, + MOVE_WITHDRAW, MOVE_DEFENSE_CURL, MOVE_EGG_BOMB, + MOVE_SMOG, MOVE_BONE_CLUB, MOVE_FLASH, MOVE_SPLASH, + MOVE_ACID_ARMOR, MOVE_BONEMERANG, MOVE_REST, MOVE_SHARPEN, + MOVE_SUBSTITUTE, MOVE_MIND_READER, MOVE_SNORE, + MOVE_PROTECT, MOVE_SPIKES, MOVE_ENDURE, MOVE_ROLLOUT, + MOVE_SWAGGER, MOVE_SLEEP_TALK, MOVE_HIDDEN_POWER, + MOVE_PSYCH_UP, MOVE_EXTREME_SPEED, MOVE_FOLLOW_ME, + MOVE_TRICK, MOVE_ASSIST, MOVE_INGRAIN, MOVE_KNOCK_OFF, + MOVE_CAMOUFLAGE, MOVE_ASTONISH, MOVE_ODOR_SLEUTH, + MOVE_GRASS_WHISTLE, MOVE_SHEER_COLD, MOVE_MUDDY_WATER, + MOVE_IRON_DEFENSE, MOVE_BOUNCE, MOVE_NONE, + + MOVE_TELEPORT, MOVE_RECOVER, MOVE_BIDE, MOVE_AMNESIA, + MOVE_FLAIL, MOVE_TAUNT, MOVE_BULK_UP, MOVE_NONE, + + MOVE_MEDITATE, MOVE_AGILITY, MOVE_MIMIC, MOVE_DOUBLE_TEAM, + MOVE_BARRAGE, MOVE_TRANSFORM, MOVE_STRUGGLE, MOVE_SCARY_FACE, + MOVE_CHARGE, MOVE_WISH, MOVE_BRICK_BREAK, MOVE_YAWN, + MOVE_FEATHER_DANCE, MOVE_TEETER_DANCE, MOVE_MUD_SPORT, + MOVE_FAKE_TEARS, MOVE_WATER_SPORT, MOVE_CALM_MIND, MOVE_NONE, + + MOVE_POUND, MOVE_SCRATCH, MOVE_VICE_GRIP, + MOVE_WING_ATTACK, MOVE_FLY, MOVE_BIND, MOVE_SLAM, + MOVE_HORN_ATTACK, MOVE_WRAP, MOVE_THRASH, MOVE_TAIL_WHIP, + MOVE_LEER, MOVE_BITE, MOVE_GROWL, MOVE_ROAR, + MOVE_SING, MOVE_PECK, MOVE_ABSORB, MOVE_STRING_SHOT, + MOVE_EARTHQUAKE, MOVE_FISSURE, MOVE_DIG, MOVE_TOXIC, + MOVE_SCREECH, MOVE_METRONOME, MOVE_LICK, MOVE_CLAMP, + MOVE_CONSTRICT, MOVE_POISON_GAS, MOVE_BUBBLE, + MOVE_SLASH, MOVE_SPIDER_WEB, MOVE_NIGHTMARE, MOVE_CURSE, + MOVE_FORESIGHT, MOVE_CHARM, MOVE_ATTRACT, MOVE_ROCK_SMASH, + MOVE_UPROAR, MOVE_SPIT_UP, MOVE_SWALLOW, MOVE_TORMENT, + MOVE_FLATTER, MOVE_ROLE_PLAY, MOVE_ENDEAVOR, MOVE_TICKLE, + MOVE_COVET, MOVE_NONE }; -static const u8 sDummyWeirdStatusString[] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0}; +static const u8 sDummyWeirdStatusString[] = {EOS, EOS, EOS, EOS, EOS, EOS, EOS, EOS, 0, 0}; -const u16 gUnknown_085CD42C[] = +static const u8 gUnknown_085CD42C[] = { - 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101, - 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000, - 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102, - 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100, - 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x01ff, - 0x0000, 0x0100, 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100, - 0x0600, 0x0000, 0x0100, 0x01ff, 0x0000, 0x0100, 0x0600, 0x0000, + 0xFF, 1, 0, 1, 0, 0, 1, 1, 0xF, 6, 0, 0, 0xFF, 1, + 1, 1, 0, 0, 0, 1, 0xF, 6, 0, 0, 0xEE, 1, 0, 1, 0, + 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, + 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, + 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, + 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, + 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, + 0xEE, 1, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, + 1, 2, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, 0xEE, 7, 0, + 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, + 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, + 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, 0xD, + 0xE, 0xF, 0, 0, 0, 1, 0x20, 1, 0, 0, 0, 1, 0, 2, + 0, 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, + 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, + 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, + 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, + 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, + 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0, 1, 0xFF, 1, 0, + 0, 0, 1, 0, 6, 0, 0, 0, 1, 0xFF, 1, 0, 0, 0, 1, 0, + 6, 0, 0, 0, 1, 0xFF, 1, 0, 0, 0, 1, 0, 6, 0, 0 }; -const u16 gUnknown_085CD54C[] = +static const u8 gUnknown_085CD54C[] = { - 0x01ff, 0x0100, 0x0000, 0x0101, 0x060f, 0x0000, 0x01ff, 0x0101, - 0x0000, 0x0100, 0x060f, 0x0000, 0x01ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0c00, 0x0b0e, 0x0000, - 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0102, - 0x0000, 0x0c00, 0x0b0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x07ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x01ee, 0x0100, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x0100, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0100, 0x0120, 0x0000, 0x0100, - 0x0200, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0100, 0x0f0e, 0x0000, - 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, - 0x0f0e, 0x0000, 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, - 0x01ee, 0x01ff, 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x01ee, 0x01ff, - 0x0000, 0x0d00, 0x0f0e, 0x0000, 0x0111, 0x0100, 0x0000, 0x0201, - 0x0301, 0x0000 + 0xFF, 1, 0, 1, 0, 0, 1, 1, 0xF, 6, 0, 0, 0xFF, 1, + 1, 1, 0, 0, 0, 1, 0xF, 6, 0, 0, 0xEE, 1, 0, 1, 0, + 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, + 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, + 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, + 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, + 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, + 0xEE, 1, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, + 1, 2, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, 0xEE, 7, 0, + 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, + 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, + 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, 0xD, + 0xE, 0xF, 0, 0, 0, 1, 0x20, 1, 0, 0, 0, 1, 0, 2, + 0, 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 1, 0xE, 0xF, 0, + 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, + 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, + 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, + 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, + 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, 1, + 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0x11, 1, 0, 1, 0, 0, + 1, 2, 1, 3, 0, 0 }; -const u16 * const gUnknown_085CD660[] = +static const u8 * const gUnknown_085CD660[] = { gUnknown_085CD42C, gUnknown_085CD54C }; -const u8 gUnknown_085CD668[] = {8, 4, 1, 0}; - -extern struct StringInfoBattle *gStringInfo; +static const u8 sRecordedBattleTextSpeeds[] = {8, 4, 1, 0}; void BufferStringBattle(u16 stringID) { @@ -1356,7 +1441,7 @@ void BufferStringBattle(u16 stringID) } break; case STRINGID_USEDMOVE: // pokemon used a move msg - sub_814F8F8(gBattleTextBuff1); + sub_814F8F8(gBattleTextBuff1); // buff1 doesn't appear in the string, leftover from japanese move names? if (gStringInfo->currentMove > LAST_MOVE_INDEX) StringCopy(gBattleTextBuff2, gText_UnknownMoveTypes[*(&gBattleStruct->stringMoveType)]); @@ -1509,8 +1594,6 @@ static const u8* TryGetStatusString(u8* src) StringGetEnd10(text); \ toCpy = text; -extern u8 gUnknown_0203C7B4; - u32 BattleStringExpandPlaceholders(const u8* src, u8* dst) { u32 dstID = 0; // if they used dstID, why not use srcID as well? @@ -2067,3 +2150,184 @@ static void ExpandBattleTextBuffPlaceholders(const u8 *src, u8 *dst) } } } + +static void sub_814F8F8(u8* textBuff) +{ + s32 counter = 0; + u32 i = 0; + + while (counter != 4) + { + if (sUnknownMoveTable[i] == MOVE_NONE) + counter++; + if (sUnknownMoveTable[i++] == gStringInfo->currentMove) + break; + } + + if (counter >= 0) + { + if (counter <= 2) + StringCopy(textBuff, gText_SpaceIs); // is + else if (counter <= 4) + StringCopy(textBuff, gText_ApostropheS); // 's + } +} + +static void sub_814F950(u8* dst) +{ + s32 counter = 0; + s32 i = 0; + + while (*dst != EOS) + dst++; + + while (counter != 4) + { + if (sUnknownMoveTable[i] == MOVE_NONE) + counter++; + if (sUnknownMoveTable[i++] == gStringInfo->currentMove) + break; + } + + switch (counter) + { + case 0: + StringCopy(dst, gText_ExclamationMark); + break; + case 1: + StringCopy(dst, gText_ExclamationMark2); + break; + case 2: + StringCopy(dst, gText_ExclamationMark3); + break; + case 3: + StringCopy(dst, gText_ExclamationMark4); + break; + case 4: + StringCopy(dst, gText_ExclamationMark5); + break; + } +} + +void sub_814F9EC(const u8 *text, u8 arg1) +{ + const u8 *r8 = gUnknown_085CD660[gBattleScripting.field_24]; + bool32 r9; + struct TextSubPrinter textSubPrinter; + u8 speed; + + if (arg1 & 0x80) + { + arg1 &= ~(0x80); + r9 = FALSE; + } + else + { + FillWindowPixelBuffer(arg1, r8[12 * arg1]); + r9 = TRUE; + } + + textSubPrinter.current_text_offset = text; + textSubPrinter.windowId = arg1; + textSubPrinter.fontId = r8[(12 * arg1) + 1]; + textSubPrinter.x = r8[(12 * arg1) + 2]; + textSubPrinter.y = r8[(12 * arg1) + 3]; + textSubPrinter.currentX = textSubPrinter.x; + textSubPrinter.currentY = textSubPrinter.y; + textSubPrinter.letterSpacing = r8[(12 * arg1) + 4]; + textSubPrinter.lineSpacing = r8[(12 * arg1) + 5]; + textSubPrinter.fontColor_l = 0; + textSubPrinter.fontColor_h = r8[(12 * arg1) + 7]; + textSubPrinter.bgColor = r8[(12 * arg1) + 8]; + textSubPrinter.shadowColor = r8[(12 * arg1) + 9]; + + if (textSubPrinter.x == 0xFF) + { + s32 var2; + u32 var = sub_80397C4(gBattleScripting.field_24, arg1); + var2 = GetStringCenterAlignXOffsetWithLetterSpacing(textSubPrinter.fontId, textSubPrinter.current_text_offset, var, textSubPrinter.letterSpacing); + textSubPrinter.x = textSubPrinter.currentX = var2; + } + + if (arg1 == 0x16) + gTextFlags.flag_1 = 0; + else + gTextFlags.flag_1 = 1; + + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED)) + gTextFlags.flag_2 = 1; + else + gTextFlags.flag_2 = 0; + + if (arg1 == 0 || arg1 == 0x16) + { + if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_x2000000)) + speed = 1; + else if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) + speed = sRecordedBattleTextSpeeds[sub_8185FC4()]; + else + speed = sav2_get_text_speed(); + + gTextFlags.flag_0 = 1; + } + else + { + speed = r8[(12 * arg1) + 6]; + gTextFlags.flag_0 = 0; + } + + AddTextPrinter(&textSubPrinter, speed, NULL); + + if (r9) + { + PutWindowTilemap(arg1); + CopyWindowToVram(arg1, 3); + } +} + +void SetPpNumbersPaletteInMoveSelection(void) +{ + struct ChooseMoveStruct *chooseMoveStruct = (struct ChooseMoveStruct*)(&gBattleBufferA[gActiveBank][4]); + const u16 *palPtr = gUnknown_08D85620; + u8 var = GetCurrentPpToMaxPpState(chooseMoveStruct->currentPp[gMoveSelectionCursor[gActiveBank]], + chooseMoveStruct->maxPp[gMoveSelectionCursor[gActiveBank]]); + + gPlttBufferUnfaded[92] = palPtr[(var * 2) + 0]; + gPlttBufferUnfaded[91] = palPtr[(var * 2) + 1]; + + CpuCopy16(&gPlttBufferUnfaded[92], &gPlttBufferFaded[92], sizeof(u16)); + CpuCopy16(&gPlttBufferUnfaded[91], &gPlttBufferFaded[91], sizeof(u16)); +} + +u8 GetCurrentPpToMaxPpState(u8 currentPp, u8 maxPp) +{ + if (maxPp == currentPp) + { + return 3; + } + else if (maxPp <= 2) + { + if (currentPp > 1) + return 3; + else + return 2 - currentPp; + } + else if (maxPp <= 7) + { + if (currentPp > 2) + return 3; + else + return 2 - currentPp; + } + else + { + if (currentPp == 0) + return 2; + if (currentPp <= maxPp / 4) + return 1; + if (currentPp > maxPp / 2) + return 3; + } + + return 0; +} From 6941be8e338ed842352d3984b69a9051517df7b0 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Mon, 9 Oct 2017 13:41:07 +0200 Subject: [PATCH 09/13] match and clean up ai script commands --- src/battle_ai_script_commands.c | 840 +++++--------------------------- 1 file changed, 115 insertions(+), 725 deletions(-) diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 92126e40c7..bba66983b1 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -7,11 +7,13 @@ #include "rng.h" #include "item.h" #include "battle_move_effects.h" +#include "moves.h" +#include "util.h" #define AIScriptRead32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24) #define AIScriptRead16(ptr) ((ptr)[0] | (ptr)[1] << 8) #define AIScriptRead8(ptr) ((ptr)[0]) -#define AIScriptReadPtr(ptr) (u8*) AIScriptRead32(ptr) +#define AIScriptReadPtr(ptr) (const u8*) AIScriptRead32(ptr) #define AI_ACTION_DONE 0x0001 #define AI_ACTION_FLEE 0x0002 @@ -52,16 +54,16 @@ AI scripts. extern u32 gBattleTypeFlags; extern u8 gActiveBank; -extern struct BattlePokemon gBattleMons[4]; +extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT]; extern u16 gCurrentMove; extern u8 gBankTarget; extern u8 gAbsentBankFlags; -extern u16 gLastUsedMovesByBanks[4]; +extern u16 gLastUsedMovesByBanks[BATTLE_BANKS_COUNT]; extern u16 gTrainerBattleOpponent_A; extern u16 gTrainerBattleOpponent_B; -extern u32 gStatuses3[4]; +extern u32 gStatuses3[BATTLE_BANKS_COUNT]; extern u16 gSideAffecting[2]; -extern u16 gBattlePartyID[4]; +extern u16 gBattlePartyID[BATTLE_BANKS_COUNT]; extern u16 gDynamicBasePower; extern u8 gBattleMoveFlags; extern s32 gBattleMoveDamage; @@ -70,13 +72,8 @@ extern u16 gBattleWeather; extern const struct BattleMove gBattleMoves[]; extern const struct BaseStats gBaseStats[]; -extern const u32 gBitTable[]; -extern u8 * const gBattleAI_ScriptsTable[]; +extern const u8 * const gBattleAI_ScriptsTable[]; -extern u8 GetWhoStrikesFirst(u8, u8, u8); -extern void AI_CalcDmg(u8, u8); - -extern u8 CheckMoveLimitations(); extern u32 GetAiScriptsInRecordedBattle(); extern u32 GetAiScriptsInBattleFactory(); @@ -116,8 +113,8 @@ static void BattleAICmd_if_move(void); static void BattleAICmd_if_not_move(void); static void BattleAICmd_if_in_bytes(void); static void BattleAICmd_if_not_in_bytes(void); -static void BattleAICmd_if_in_words(void); -static void BattleAICmd_if_not_in_words(void); +static void BattleAICmd_if_in_hwords(void); +static void BattleAICmd_if_not_in_hwords(void); static void BattleAICmd_if_user_can_damage(void); static void BattleAICmd_if_user_cant_damage(void); static void BattleAICmd_get_turn_count(void); @@ -227,8 +224,8 @@ static const BattleAICmdFunc sBattleAICmdTable[] = BattleAICmd_if_not_move, // 0x1A BattleAICmd_if_in_bytes, // 0x1B BattleAICmd_if_not_in_bytes, // 0x1C - BattleAICmd_if_in_words, // 0x1D - BattleAICmd_if_not_in_words, // 0x1E + BattleAICmd_if_in_hwords, // 0x1D + BattleAICmd_if_not_in_hwords, // 0x1E BattleAICmd_if_user_can_damage, // 0x1F BattleAICmd_if_user_cant_damage, // 0x20 BattleAICmd_get_turn_count, // 0x21 @@ -472,13 +469,11 @@ static u8 BattleAI_ChooseMoveOrAction_Singles(void) return consideredMoveArray[Random() % numOfBestMoves]; } -#ifdef NONMATCHING static u8 BattleAI_ChooseMoveOrAction_Doubles(void) { s32 i; s32 j; s32 scriptsToRun; - s16 mostMovePoints; s16 bestMovePointsForTarget[4]; s8 mostViableTargetsArray[4]; u8 actionOrMoveIndex[4]; @@ -486,27 +481,27 @@ static u8 BattleAI_ChooseMoveOrAction_Doubles(void) u8 mostViableMovesIndices[4]; s32 mostViableTargetsNo; s32 mostViableMovesNo; + s16 mostMovePoints; - for (i = 0; i < 4; i++) //08130D14 + for (i = 0; i < 4; i++) { if (i == sBank_AI || gBattleMons[i].hp == 0) { - //_08130D2E actionOrMoveIndex[i] = -1; bestMovePointsForTarget[i] = -1; } - //_08130D48 else { if (gBattleTypeFlags & BATTLE_TYPE_PALACE) BattleAI_SetupAIData(gBattleStruct->field_92 >> 4); else BattleAI_SetupAIData(0xF); - //_08130D76 + gBankTarget = i; - if ((i & 1) != (sBank_AI & 1)) + + if ((i & BIT_SIDE) != (sBank_AI & BIT_SIDE)) RecordLastUsedMoveByTarget(); - //_08130D90 + AI_THINKING_STRUCT->aiLogicId = 0; AI_THINKING_STRUCT->movesetIndex = 0; scriptsToRun = AI_THINKING_STRUCT->aiFlags; @@ -521,14 +516,12 @@ static u8 BattleAI_ChooseMoveOrAction_Doubles(void) AI_THINKING_STRUCT->aiLogicId++; AI_THINKING_STRUCT->movesetIndex = 0; } - //_08130DD8 if (AI_THINKING_STRUCT->aiAction & AI_ACTION_FLEE) actionOrMoveIndex[i] = 4; else if (AI_THINKING_STRUCT->aiAction & AI_ACTION_WATCH) actionOrMoveIndex[i] = 5; else { - //_08130E10 mostViableMovesScores[0] = AI_THINKING_STRUCT->score[0]; mostViableMovesIndices[0] = 0; mostViableMovesNo = 1; @@ -555,17 +548,20 @@ static u8 BattleAI_ChooseMoveOrAction_Doubles(void) bestMovePointsForTarget[i] = mostViableMovesScores[0]; // don't use a move against ally if it has less than 100 pts - if (i == (sBank_AI ^ 2) && bestMovePointsForTarget[i] < 100) + if (i == (sBank_AI ^ BIT_MON) && bestMovePointsForTarget[i] < 100) + { bestMovePointsForTarget[i] = -1; + mostViableMovesScores[0] = mostViableMovesScores[0]; // needed to match + } + } } - //_08130EAE } - //08130EC4 mostMovePoints = bestMovePointsForTarget[0]; mostViableTargetsArray[0] = 0; mostViableTargetsNo = 1; + for (i = 1; i < 4; i++) { //_08130EDA @@ -582,305 +578,10 @@ static u8 BattleAI_ChooseMoveOrAction_Doubles(void) mostViableTargetsNo = 1; } } + gBankTarget = mostViableTargetsArray[Random() % mostViableTargetsNo]; return actionOrMoveIndex[gBankTarget]; } -#else -__attribute__((naked)) -static u8 BattleAI_ChooseMoveOrAction_Doubles(void) -{ - asm(".syntax unified\n\ - push {r4-r7,lr}\n\ - mov r7, r10\n\ - mov r6, r9\n\ - mov r5, r8\n\ - push {r5-r7}\n\ - sub sp, 0x24\n\ - movs r0, 0\n\ - mov r8, r0\n\ - mov r1, sp\n\ - adds r1, 0xC\n\ - str r1, [sp, 0x1C]\n\ - mov r2, sp\n\ - adds r2, 0x8\n\ - str r2, [sp, 0x18]\n\ - str r1, [sp, 0x20]\n\ - mov r10, sp\n\ -_08130D14:\n\ - ldr r0, =sBank_AI\n\ - ldrb r0, [r0]\n\ - cmp r8, r0\n\ - beq _08130D2E\n\ - movs r0, 0x58\n\ - mov r7, r8\n\ - muls r7, r0\n\ - adds r0, r7, 0\n\ - ldr r1, =gBattleMons\n\ - adds r0, r1\n\ - ldrh r0, [r0, 0x28]\n\ - cmp r0, 0\n\ - bne _08130D48\n\ -_08130D2E:\n\ - movs r0, 0xFF\n\ - ldr r2, [sp, 0x20]\n\ - strb r0, [r2]\n\ - ldr r0, =0x0000ffff\n\ - mov r7, r10\n\ - strh r0, [r7]\n\ - b _08130EAE\n\ - .pool\n\ -_08130D48:\n\ - ldr r0, =gBattleTypeFlags\n\ - ldr r0, [r0]\n\ - movs r1, 0x80\n\ - lsls r1, 10\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _08130D70\n\ - ldr r0, =gBattleStruct\n\ - ldr r0, [r0]\n\ - adds r0, 0x92\n\ - ldrb r0, [r0]\n\ - lsrs r0, 4\n\ - bl BattleAI_SetupAIData\n\ - b _08130D76\n\ - .pool\n\ -_08130D70:\n\ - movs r0, 0xF\n\ - bl BattleAI_SetupAIData\n\ -_08130D76:\n\ - ldr r0, =gBankTarget\n\ - mov r1, r8\n\ - strb r1, [r0]\n\ - movs r1, 0x1\n\ - mov r2, r8\n\ - ands r2, r1\n\ - ldr r0, =sBank_AI\n\ - ldrb r0, [r0]\n\ - ands r1, r0\n\ - cmp r2, r1\n\ - beq _08130D90\n\ - bl RecordLastUsedMoveByTarget\n\ -_08130D90:\n\ - ldr r2, =gBattleResources\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - movs r1, 0\n\ - strb r1, [r0, 0x11]\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - strb r1, [r0, 0x1]\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - ldr r4, [r0, 0xC]\n\ - mov r9, r2\n\ - cmp r4, 0\n\ - beq _08130DD8\n\ - mov r5, r9\n\ - movs r6, 0\n\ -_08130DB0:\n\ - movs r0, 0x1\n\ - ands r0, r4\n\ - cmp r0, 0\n\ - beq _08130DC2\n\ - ldr r0, [r5]\n\ - ldr r0, [r0, 0x14]\n\ - strb r6, [r0]\n\ - bl BattleAI_DoAIProcessing\n\ -_08130DC2:\n\ - asrs r4, 1\n\ - ldr r0, [r5]\n\ - ldr r1, [r0, 0x14]\n\ - ldrb r0, [r1, 0x11]\n\ - adds r0, 0x1\n\ - strb r0, [r1, 0x11]\n\ - ldr r0, [r5]\n\ - ldr r0, [r0, 0x14]\n\ - strb r6, [r0, 0x1]\n\ - cmp r4, 0\n\ - bne _08130DB0\n\ -_08130DD8:\n\ - mov r2, r9\n\ - ldr r0, [r2]\n\ - ldr r3, [r0, 0x14]\n\ - ldrb r1, [r3, 0x10]\n\ - movs r0, 0x2\n\ - ands r0, r1\n\ - cmp r0, 0\n\ - beq _08130DFC\n\ - movs r0, 0x4\n\ - ldr r7, [sp, 0x20]\n\ - strb r0, [r7]\n\ - b _08130EAE\n\ - .pool\n\ -_08130DFC:\n\ - movs r0, 0x4\n\ - ands r0, r1\n\ - lsls r0, 24\n\ - lsrs r2, r0, 24\n\ - cmp r2, 0\n\ - beq _08130E10\n\ - movs r0, 0x5\n\ - ldr r1, [sp, 0x20]\n\ - strb r0, [r1]\n\ - b _08130EAE\n\ -_08130E10:\n\ - add r1, sp, 0x10\n\ - ldrb r0, [r3, 0x4]\n\ - strb r0, [r1]\n\ - add r0, sp, 0x14\n\ - strb r2, [r0]\n\ - movs r5, 0x1\n\ - movs r3, 0x1\n\ - adds r6, r1, 0\n\ - ldr r0, =sBank_AI\n\ - ldrb r1, [r0]\n\ - movs r0, 0x58\n\ - muls r0, r1\n\ - ldr r2, =gBattleMons + 0xC\n\ - adds r0, r2\n\ - adds r4, r0, 0x2\n\ - add r7, sp, 0x14\n\ -_08130E30:\n\ - ldrh r0, [r4]\n\ - cmp r0, 0\n\ - beq _08130E72\n\ - ldrb r1, [r6]\n\ - mov r2, r9\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - adds r0, 0x4\n\ - adds r2, r0, r3\n\ - movs r0, 0\n\ - ldrsb r0, [r2, r0]\n\ - cmp r1, r0\n\ - bne _08130E56\n\ - adds r0, r6, r5\n\ - ldrb r1, [r2]\n\ - strb r1, [r0]\n\ - adds r0, r7, r5\n\ - strb r3, [r0]\n\ - adds r5, 0x1\n\ -_08130E56:\n\ - ldrb r1, [r6]\n\ - mov r2, r9\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - adds r0, 0x4\n\ - adds r2, r0, r3\n\ - movs r0, 0\n\ - ldrsb r0, [r2, r0]\n\ - cmp r1, r0\n\ - bge _08130E72\n\ - ldrb r0, [r2]\n\ - strb r0, [r6]\n\ - strb r3, [r7]\n\ - movs r5, 0x1\n\ -_08130E72:\n\ - adds r4, 0x2\n\ - adds r3, 0x1\n\ - cmp r3, 0x3\n\ - ble _08130E30\n\ - bl Random\n\ - lsls r0, 16\n\ - lsrs r0, 16\n\ - adds r1, r5, 0\n\ - bl __modsi3\n\ - add r0, sp\n\ - adds r0, 0x14\n\ - ldrb r0, [r0]\n\ - ldr r7, [sp, 0x20]\n\ - strb r0, [r7]\n\ - ldrb r2, [r6]\n\ - mov r0, r10\n\ - strh r2, [r0]\n\ - ldr r0, =sBank_AI\n\ - ldrb r1, [r0]\n\ - movs r0, 0x2\n\ - eors r0, r1\n\ - cmp r8, r0\n\ - bne _08130EAE\n\ - cmp r2, 0x63\n\ - bgt _08130EAE\n\ - ldr r0, =0x0000ffff\n\ - mov r1, r10\n\ - strh r0, [r1]\n\ -_08130EAE:\n\ - ldr r2, [sp, 0x20]\n\ - adds r2, 0x1\n\ - str r2, [sp, 0x20]\n\ - movs r7, 0x2\n\ - add r10, r7\n\ - movs r0, 0x1\n\ - add r8, r0\n\ - mov r1, r8\n\ - cmp r1, 0x3\n\ - bgt _08130EC4\n\ - b _08130D14\n\ -_08130EC4:\n\ - mov r0, sp\n\ - ldrh r5, [r0]\n\ - movs r0, 0\n\ - ldr r2, [sp, 0x18]\n\ - strb r0, [r2]\n\ - movs r4, 0x1\n\ - mov r8, r4\n\ - ldr r6, =gBankTarget\n\ - ldr r3, [sp, 0x18]\n\ - mov r1, sp\n\ - adds r1, 0x2\n\ -_08130EDA:\n\ - lsls r0, r5, 16\n\ - asrs r2, r0, 16\n\ - movs r7, 0\n\ - ldrsh r0, [r1, r7]\n\ - cmp r2, r0\n\ - bne _08130EEE\n\ - adds r0, r3, r4\n\ - mov r7, r8\n\ - strb r7, [r0]\n\ - adds r4, 0x1\n\ -_08130EEE:\n\ - movs r7, 0\n\ - ldrsh r0, [r1, r7]\n\ - cmp r2, r0\n\ - bge _08130EFE\n\ - ldrh r5, [r1]\n\ - mov r0, r8\n\ - strb r0, [r3]\n\ - movs r4, 0x1\n\ -_08130EFE:\n\ - adds r1, 0x2\n\ - movs r2, 0x1\n\ - add r8, r2\n\ - mov r7, r8\n\ - cmp r7, 0x3\n\ - ble _08130EDA\n\ - bl Random\n\ - lsls r0, 16\n\ - lsrs r0, 16\n\ - adds r1, r4, 0\n\ - bl __modsi3\n\ - ldr r1, [sp, 0x18]\n\ - adds r0, r1, r0\n\ - ldrb r0, [r0]\n\ - strb r0, [r6]\n\ - ldrb r0, [r6]\n\ - ldr r2, [sp, 0x1C]\n\ - adds r0, r2, r0\n\ - ldrb r0, [r0]\n\ - add sp, 0x24\n\ - pop {r3-r5}\n\ - mov r8, r3\n\ - mov r9, r4\n\ - mov r10, r5\n\ - pop {r4-r7}\n\ - pop {r1}\n\ - bx r1\n\ - .pool\n\ - .syntax divided\n"); -} -#endif static void BattleAI_DoAIProcessing(void) { @@ -888,7 +589,7 @@ static void BattleAI_DoAIProcessing(void) { switch (AI_THINKING_STRUCT->aiState) { - case AIState_DoNotProcess: //Needed to match. + case AIState_DoNotProcess: // Needed to match. break; case AIState_SettingUp: gAIScriptPtr = gBattleAI_ScriptsTable[AI_THINKING_STRUCT->aiLogicId]; // set AI ptr to logic ID. @@ -904,7 +605,7 @@ static void BattleAI_DoAIProcessing(void) break; case AIState_Processing: if (AI_THINKING_STRUCT->moveConsidered != 0) - sBattleAICmdTable[*gAIScriptPtr](); // run AI command. + sBattleAICmdTable[*gAIScriptPtr](); // Run AI command. else { AI_THINKING_STRUCT->score[AI_THINKING_STRUCT->movesetIndex] = 0; @@ -934,7 +635,7 @@ static void RecordLastUsedMoveByTarget(void) { if (gBattleResources->battleHistory->usedMoves[gBankTarget].moves[i] == gLastUsedMovesByBanks[gBankTarget]) break; - if (gBattleResources->battleHistory->usedMoves[gBankTarget].moves[i] != gLastUsedMovesByBanks[gBankTarget] //HACK: This redundant condition is a hack to make the asm match. + if (gBattleResources->battleHistory->usedMoves[gBankTarget].moves[i] != gLastUsedMovesByBanks[gBankTarget] // HACK: This redundant condition is a hack to make the asm match. && gBattleResources->battleHistory->usedMoves[gBankTarget].moves[i] == 0) { gBattleResources->battleHistory->usedMoves[gBankTarget].moves[i] = gLastUsedMovesByBanks[gBankTarget]; @@ -1261,7 +962,7 @@ static void BattleAICmd_if_not_equal(void) static void BattleAICmd_if_less_than_32(void) { - u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); if (AI_THINKING_STRUCT->funcResult < *temp) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5); @@ -1271,7 +972,7 @@ static void BattleAICmd_if_less_than_32(void) static void BattleAICmd_if_more_than_32(void) { - u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); if (AI_THINKING_STRUCT->funcResult > *temp) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5); @@ -1281,7 +982,7 @@ static void BattleAICmd_if_more_than_32(void) static void BattleAICmd_if_equal_32(void) { - u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); if (AI_THINKING_STRUCT->funcResult == *temp) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5); @@ -1291,7 +992,7 @@ static void BattleAICmd_if_equal_32(void) static void BattleAICmd_if_not_equal_32(void) { - u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *temp = AIScriptReadPtr(gAIScriptPtr + 1); if (AI_THINKING_STRUCT->funcResult != *temp) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5); @@ -1321,7 +1022,7 @@ static void BattleAICmd_if_not_move(void) static void BattleAICmd_if_in_bytes(void) { - u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1); while (*ptr != 0xFF) { @@ -1337,7 +1038,7 @@ static void BattleAICmd_if_in_bytes(void) static void BattleAICmd_if_not_in_bytes(void) { - u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1); + const u8 *ptr = AIScriptReadPtr(gAIScriptPtr + 1); while (*ptr != 0xFF) { @@ -1351,9 +1052,9 @@ static void BattleAICmd_if_not_in_bytes(void) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 5); } -static void BattleAICmd_if_in_words(void) +static void BattleAICmd_if_in_hwords(void) { - u16 *ptr = (u16 *)AIScriptReadPtr(gAIScriptPtr + 1); + const u16 *ptr = (const u16 *)AIScriptReadPtr(gAIScriptPtr + 1); while (*ptr != 0xFFFF) { @@ -1367,9 +1068,9 @@ static void BattleAICmd_if_in_words(void) gAIScriptPtr += 9; } -static void BattleAICmd_if_not_in_words(void) +static void BattleAICmd_if_not_in_hwords(void) { - u16 *ptr = (u16 *)AIScriptReadPtr(gAIScriptPtr + 1); + const u16 *ptr = (u16 *)AIScriptReadPtr(gAIScriptPtr + 1); while (*ptr != 0xFFFF) { @@ -1456,9 +1157,9 @@ static u8 BattleAI_GetWantedBank(u8 index) default: return gBankTarget; case AI_USER_PARTNER: - return sBank_AI ^ 2; + return sBank_AI ^ BIT_MON; case AI_TARGET_PARTNER: - return gBankTarget ^ 2; + return gBankTarget ^ BIT_MON; } } @@ -1484,248 +1185,68 @@ static void BattleAICmd_get_last_used_bank_move_power(void) gAIScriptPtr += 1; } -__attribute__((naked)) // not even going to try. if it doesnt match in ruby, it wont match in emerald (yet). static void BattleAICmd_is_most_powerful_move(void) { - asm(".syntax unified\n\ - push {r4-r7,lr}\n\ - mov r7, r10\n\ - mov r6, r9\n\ - mov r5, r8\n\ - push {r5-r7}\n\ - sub sp, 0x14\n\ - movs r3, 0\n\ - ldr r0, =sDiscouragedPowerfulMoveEffects\n\ - ldrh r1, [r0]\n\ - ldr r5, =0x0000ffff\n\ - ldr r6, =gBattleMoves\n\ - ldr r2, =gBattleResources\n\ - cmp r1, r5\n\ - beq _08131F86\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - ldrh r1, [r0, 0x2]\n\ - lsls r0, r1, 1\n\ - adds r0, r1\n\ - lsls r0, 2\n\ - adds r0, r6\n\ - ldrb r4, [r0]\n\ - ldr r1, =sDiscouragedPowerfulMoveEffects\n\ -_08131F76:\n\ - ldrh r0, [r1]\n\ - cmp r4, r0\n\ - beq _08131F86\n\ - adds r1, 0x2\n\ - adds r3, 0x1\n\ - ldrh r0, [r1]\n\ - cmp r0, r5\n\ - bne _08131F76\n\ -_08131F86:\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - ldrh r1, [r0, 0x2]\n\ - lsls r0, r1, 1\n\ - adds r0, r1\n\ - lsls r0, 2\n\ - adds r0, r6\n\ - ldrb r0, [r0, 0x1]\n\ - cmp r0, 0x1\n\ - bhi _08131F9C\n\ - b _08132126\n\ -_08131F9C:\n\ - lsls r0, r3, 1\n\ - ldr r1, =sDiscouragedPowerfulMoveEffects\n\ - adds r0, r1\n\ - ldrh r3, [r0]\n\ - ldr r0, =0x0000ffff\n\ - cmp r3, r0\n\ - beq _08131FAC\n\ - b _08132126\n\ -_08131FAC:\n\ - ldr r0, =gDynamicBasePower\n\ - movs r1, 0\n\ - strh r1, [r0]\n\ - ldr r0, =gBattleStruct\n\ - ldr r0, [r0]\n\ - strb r1, [r0, 0x13]\n\ - ldr r0, =gBattleScripting\n\ - movs r2, 0x1\n\ - strb r2, [r0, 0xE]\n\ - ldr r0, =gBattleMoveFlags\n\ - strb r1, [r0]\n\ - ldr r0, =gCritMultiplier\n\ - strb r2, [r0]\n\ - movs r6, 0\n\ - mov r9, r3\n\ - ldr r2, =sDiscouragedPowerfulMoveEffects\n\ - ldrh r2, [r2]\n\ - str r2, [sp, 0x10]\n\ -_08131FD0:\n\ - movs r3, 0\n\ - ldr r5, =gBattleMons\n\ - lsls r4, r6, 1\n\ - ldr r7, =sBank_AI\n\ - lsls r0, r6, 2\n\ - mov r8, r0\n\ - adds r1, r6, 0x1\n\ - mov r10, r1\n\ - ldr r2, [sp, 0x10]\n\ - cmp r2, r9\n\ - beq _08132014\n\ - ldr r2, =gBattleMoves\n\ - ldrb r1, [r7]\n\ - movs r0, 0x58\n\ - muls r0, r1\n\ - adds r0, r4, r0\n\ - adds r1, r5, 0\n\ - adds r1, 0xC\n\ - adds r0, r1\n\ - ldrh r1, [r0]\n\ - lsls r0, r1, 1\n\ - adds r0, r1\n\ - lsls r0, 2\n\ - adds r0, r2\n\ - ldrb r2, [r0]\n\ - ldr r1, =sDiscouragedPowerfulMoveEffects\n\ -_08132004:\n\ - ldrh r0, [r1]\n\ - cmp r2, r0\n\ - beq _08132014\n\ - adds r1, 0x2\n\ - adds r3, 0x1\n\ - ldrh r0, [r1]\n\ - cmp r0, r9\n\ - bne _08132004\n\ -_08132014:\n\ - ldrb r1, [r7]\n\ - movs r0, 0x58\n\ - muls r0, r1\n\ - adds r0, r4, r0\n\ - adds r1, r5, 0\n\ - adds r1, 0xC\n\ - adds r1, r0, r1\n\ - ldrh r0, [r1]\n\ - cmp r0, 0\n\ - beq _081320C0\n\ - lsls r0, r3, 1\n\ - ldr r2, =sDiscouragedPowerfulMoveEffects\n\ - adds r0, r2\n\ - ldrh r0, [r0]\n\ - cmp r0, r9\n\ - bne _081320C0\n\ - ldr r0, =gBattleMoves\n\ - ldrh r2, [r1]\n\ - lsls r1, r2, 1\n\ - adds r1, r2\n\ - lsls r1, 2\n\ - adds r1, r0\n\ - ldrb r0, [r1, 0x1]\n\ - cmp r0, 0x1\n\ - bls _081320C0\n\ - ldr r5, =gCurrentMove\n\ - strh r2, [r5]\n\ - ldrb r0, [r7]\n\ - ldr r4, =gBankTarget\n\ - ldrb r1, [r4]\n\ - bl AI_CalcDmg\n\ - ldrh r0, [r5]\n\ - ldrb r1, [r7]\n\ - ldrb r2, [r4]\n\ - bl TypeCalc\n\ - mov r4, sp\n\ - add r4, r8\n\ - ldr r2, =gBattleMoveDamage\n\ - ldr r0, =gBattleResources\n\ - ldr r0, [r0]\n\ - ldr r0, [r0, 0x14]\n\ - adds r0, 0x18\n\ - adds r0, r6\n\ - ldrb r1, [r0]\n\ - ldr r0, [r2]\n\ - muls r0, r1\n\ - movs r1, 0x64\n\ - bl __divsi3\n\ - str r0, [r4]\n\ - cmp r0, 0\n\ - bne _081320C8\n\ - movs r0, 0x1\n\ - str r0, [r4]\n\ - b _081320C8\n\ - .pool\n\ -_081320C0:\n\ - mov r1, sp\n\ - add r1, r8\n\ - movs r0, 0\n\ - str r0, [r1]\n\ -_081320C8:\n\ - mov r6, r10\n\ - cmp r6, 0x3\n\ - bgt _081320D0\n\ - b _08131FD0\n\ -_081320D0:\n\ - movs r6, 0\n\ - ldr r2, =gBattleResources\n\ - ldr r0, [r2]\n\ - ldr r0, [r0, 0x14]\n\ - ldrb r0, [r0, 0x1]\n\ - lsls r0, 2\n\ - add r0, sp\n\ - ldr r1, [sp]\n\ - ldr r0, [r0]\n\ - ldr r5, =gAIScriptPtr\n\ - cmp r1, r0\n\ - bgt _08132106\n\ - adds r4, r2, 0\n\ - mov r3, sp\n\ -_081320EC:\n\ - adds r3, 0x4\n\ - adds r6, 0x1\n\ - cmp r6, 0x3\n\ - bgt _08132106\n\ - ldr r0, [r4]\n\ - ldr r0, [r0, 0x14]\n\ - ldrb r0, [r0, 0x1]\n\ - lsls r0, 2\n\ - add r0, sp\n\ - ldr r1, [r3]\n\ - ldr r0, [r0]\n\ - cmp r1, r0\n\ - ble _081320EC\n\ -_08132106:\n\ - cmp r6, 0x4\n\ - bne _0813211C\n\ - ldr r0, [r2]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0x2\n\ - str r0, [r1, 0x8]\n\ - b _08132130\n\ - .pool\n\ -_0813211C:\n\ - ldr r0, [r2]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0x1\n\ - str r0, [r1, 0x8]\n\ - b _08132130\n\ -_08132126:\n\ - ldr r0, [r2]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0\n\ - str r0, [r1, 0x8]\n\ - ldr r5, =gAIScriptPtr\n\ -_08132130:\n\ - ldr r0, [r5]\n\ - adds r0, 0x1\n\ - str r0, [r5]\n\ - add sp, 0x14\n\ - pop {r3-r5}\n\ - mov r8, r3\n\ - mov r9, r4\n\ - mov r10, r5\n\ - pop {r4-r7}\n\ - pop {r0}\n\ - bx r0\n\ - .pool\n\ - .syntax divided"); + s32 i, checkedMove; + s32 moveDmgs[4]; + + for (i = 0; sDiscouragedPowerfulMoveEffects[i] != 0xFFFF; i++) + { + if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].effect == sDiscouragedPowerfulMoveEffects[i]) + break; + } + + if (gBattleMoves[AI_THINKING_STRUCT->moveConsidered].power > 1 + && sDiscouragedPowerfulMoveEffects[i] == 0xFFFF) + { + gDynamicBasePower = 0; + *(&gBattleStruct->dynamicMoveType) = 0; + gBattleScripting.dmgMultiplier = 1; + gBattleMoveFlags = 0; + gCritMultiplier = 1; + + for (checkedMove = 0; checkedMove < 4; checkedMove++) + { + for (i = 0; sDiscouragedPowerfulMoveEffects[i] != 0xFFFF; i++) + { + if (gBattleMoves[gBattleMons[sBank_AI].moves[checkedMove]].effect == sDiscouragedPowerfulMoveEffects[i]) + break; + } + + if (gBattleMons[sBank_AI].moves[checkedMove] != MOVE_NONE + && sDiscouragedPowerfulMoveEffects[i] == 0xFFFF + && gBattleMoves[gBattleMons[sBank_AI].moves[checkedMove]].power > 1) + { + gCurrentMove = gBattleMons[sBank_AI].moves[checkedMove]; + AI_CalcDmg(sBank_AI, gBankTarget); + TypeCalc(gCurrentMove, sBank_AI, gBankTarget); + moveDmgs[checkedMove] = gBattleMoveDamage * AI_THINKING_STRUCT->simulatedRNG[checkedMove] / 100; + if (moveDmgs[checkedMove] == 0) + moveDmgs[checkedMove] = 1; + } + else + { + moveDmgs[checkedMove] = 0; + } + } + + for (checkedMove = 0; checkedMove < 4; checkedMove++) + { + if (moveDmgs[checkedMove] > moveDmgs[AI_THINKING_STRUCT->movesetIndex]) + break; + } + + if (checkedMove == 4) + AI_THINKING_STRUCT->funcResult = 2; // is the most powerful + else + AI_THINKING_STRUCT->funcResult = 1; // not most powerful + } + else + { + AI_THINKING_STRUCT->funcResult = 0; // highly discouraged in terms of power + } + + gAIScriptPtr++; } static void BattleAICmd_get_last_used_bank_move(void) @@ -1756,7 +1277,7 @@ static void BattleAICmd_if_arg_not_equal(void) static void BattleAICmd_if_would_go_first(void) { - if (GetWhoStrikesFirst(sBank_AI, gBankTarget, 1) == gAIScriptPtr[1]) + if (GetWhoStrikesFirst(sBank_AI, gBankTarget, TRUE) == gAIScriptPtr[1]) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2); else gAIScriptPtr += 6; @@ -1764,7 +1285,7 @@ static void BattleAICmd_if_would_go_first(void) static void BattleAICmd_if_would_not_go_first(void) { - if (GetWhoStrikesFirst(sBank_AI, gBankTarget, 1) != gAIScriptPtr[1]) + if (GetWhoStrikesFirst(sBank_AI, gBankTarget, TRUE) != gAIScriptPtr[1]) gAIScriptPtr = AIScriptReadPtr(gAIScriptPtr + 2); else gAIScriptPtr += 6; @@ -1792,7 +1313,7 @@ static void BattleAICmd_count_alive_pokemon(void) else index = gBankTarget; - if (GetBankSide(index) == 0) + if (GetBankSide(index) == SIDE_PLAYER) party = gPlayerParty; else party = gEnemyParty; @@ -1896,11 +1417,10 @@ static void BattleAICmd_get_ability(void) gAIScriptPtr += 2; } -#ifdef NONMATCHING static void BattleAICmd_check_ability(void) { - u8 bank = BattleAI_GetWantedBank(gAIScriptPtr[1]); - u8 ability = gAIScriptPtr[2]; + u32 bank = BattleAI_GetWantedBank(gAIScriptPtr[1]); + u32 ability = gAIScriptPtr[2]; if (gAIScriptPtr[1] == AI_TARGET || gAIScriptPtr[1] == AI_TARGET_PARTNER) { @@ -1920,8 +1440,9 @@ static void BattleAICmd_check_ability(void) { if (gBaseStats[gBattleMons[bank].species].ability2 != ABILITY_NONE) { - if (gBaseStats[gBattleMons[bank].species].ability1 != ability - && gBaseStats[gBattleMons[bank].species].ability2 != ability) + u8 abilityDummyVariable = ability; // needed to match + if (gBaseStats[gBattleMons[bank].species].ability1 != abilityDummyVariable + && gBaseStats[gBattleMons[bank].species].ability2 != abilityDummyVariable) { ability = gBaseStats[gBattleMons[bank].species].ability1; } @@ -1957,137 +1478,6 @@ static void BattleAICmd_check_ability(void) } gAIScriptPtr += 3; } -#else -__attribute__((naked)) -static void BattleAICmd_check_ability(void) -{ - asm(".syntax unified\n\ - push {r4-r6,lr}\n\ - ldr r4, =gAIScriptPtr\n\ - ldr r0, [r4]\n\ - ldrb r0, [r0, 0x1]\n\ - bl BattleAI_GetWantedBank\n\ - lsls r0, 24\n\ - lsrs r5, r0, 24\n\ - ldr r0, [r4]\n\ - ldrb r3, [r0, 0x2]\n\ - ldrb r0, [r0, 0x1]\n\ - cmp r0, 0\n\ - beq _0813253A\n\ - cmp r0, 0x2\n\ - bne _081325BC\n\ -_0813253A:\n\ - ldr r0, =gBattleResources\n\ - ldr r4, [r0]\n\ - ldr r1, [r4, 0x18]\n\ - adds r1, 0x40\n\ - adds r2, r1, r5\n\ - ldrb r1, [r2]\n\ - adds r6, r0, 0\n\ - cmp r1, 0\n\ - beq _0813255C\n\ - adds r3, r1, 0\n\ - ldr r0, [r4, 0x14]\n\ - str r3, [r0, 0x8]\n\ - b _081325CA\n\ - .pool\n\ -_0813255C:\n\ - ldr r1, =gBattleMons\n\ - movs r0, 0x58\n\ - muls r0, r5\n\ - adds r4, r0, r1\n\ - adds r0, r4, 0\n\ - adds r0, 0x20\n\ - ldrb r0, [r0]\n\ - cmp r0, 0x17\n\ - beq _08132576\n\ - cmp r0, 0x2A\n\ - beq _08132576\n\ - cmp r0, 0x47\n\ - bne _08132588\n\ -_08132576:\n\ - movs r0, 0x58\n\ - muls r0, r5\n\ - adds r0, r1\n\ - adds r0, 0x20\n\ - ldrb r3, [r0]\n\ - b _081325CA\n\ - .pool\n\ -_08132588:\n\ - ldr r2, =gBaseStats\n\ - ldrh r1, [r4]\n\ - lsls r0, r1, 3\n\ - subs r0, r1\n\ - lsls r0, 2\n\ - adds r1, r0, r2\n\ - ldrb r4, [r1, 0x16]\n\ - cmp r4, 0\n\ - beq _081325B8\n\ - ldrb r2, [r1, 0x17]\n\ - cmp r2, 0\n\ - beq _081325B4\n\ - adds r0, r3, 0\n\ - cmp r4, r0\n\ - beq _081325CE\n\ - cmp r2, r0\n\ - beq _081325CE\n\ - adds r3, r4, 0\n\ - b _081325CA\n\ - .pool\n\ -_081325B4:\n\ - ldrb r3, [r1, 0x16]\n\ - b _081325CA\n\ -_081325B8:\n\ - ldrb r3, [r1, 0x17]\n\ - b _081325CA\n\ -_081325BC:\n\ - ldr r1, =gBattleMons\n\ - movs r0, 0x58\n\ - muls r0, r5\n\ - adds r0, r1\n\ - adds r0, 0x20\n\ - ldrb r3, [r0]\n\ - ldr r6, =gBattleResources\n\ -_081325CA:\n\ - cmp r3, 0\n\ - bne _081325E8\n\ -_081325CE:\n\ - ldr r0, [r6]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0x2\n\ - str r0, [r1, 0x8]\n\ - ldr r2, =gAIScriptPtr\n\ - b _08132608\n\ - .pool\n\ -_081325E8:\n\ - ldr r0, =gAIScriptPtr\n\ - ldr r1, [r0]\n\ - adds r2, r0, 0\n\ - ldrb r1, [r1, 0x2]\n\ - cmp r3, r1\n\ - bne _08132600\n\ - ldr r0, [r6]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0x1\n\ - b _08132606\n\ - .pool\n\ -_08132600:\n\ - ldr r0, [r6]\n\ - ldr r1, [r0, 0x14]\n\ - movs r0, 0\n\ -_08132606:\n\ - str r0, [r1, 0x8]\n\ -_08132608:\n\ - ldr r0, [r2]\n\ - adds r0, 0x3\n\ - str r0, [r2]\n\ - pop {r4-r6}\n\ - pop {r0}\n\ - bx r0\n\ - .pool\n\ - .syntax divided"); -} -#endif static void BattleAICmd_get_highest_type_effectiveness(void) { @@ -2184,7 +1574,7 @@ static void BattleAICmd_if_status_in_party(void) switch(gAIScriptPtr[1]) { - case 1: + case AI_USER: index = sBank_AI; break; default: @@ -2397,7 +1787,7 @@ static void BattleAICmd_if_cant_faint(void) static void BattleAICmd_if_has_move(void) { int i; - u16 *temp_ptr = (u16 *)(gAIScriptPtr + 2); + const u16 *temp_ptr = (u16 *)(gAIScriptPtr + 2); switch(gAIScriptPtr[1]) { @@ -2464,7 +1854,7 @@ static void BattleAICmd_if_has_move(void) static void BattleAICmd_if_dont_have_move(void) { int i; - u16 *temp_ptr = (u16 *)(gAIScriptPtr + 2); + const u16 *temp_ptr = (u16 *)(gAIScriptPtr + 2); switch(gAIScriptPtr[1]) { @@ -2631,7 +2021,7 @@ static void BattleAICmd_if_curr_move_disabled_or_encored(void) static void BattleAICmd_flee(void) { - AI_THINKING_STRUCT->aiAction |= (AI_ACTION_DONE | AI_ACTION_FLEE | AI_ACTION_DO_NOT_ATTACK); // what matters is UNK2 being enabled. + AI_THINKING_STRUCT->aiAction |= (AI_ACTION_DONE | AI_ACTION_FLEE | AI_ACTION_DO_NOT_ATTACK); } static void BattleAICmd_if_random_100(void) @@ -2646,7 +2036,7 @@ static void BattleAICmd_if_random_100(void) static void BattleAICmd_watch(void) { - AI_THINKING_STRUCT->aiAction |= (AI_ACTION_DONE | AI_ACTION_WATCH | AI_ACTION_DO_NOT_ATTACK); // what matters is UNK3 being enabled. + AI_THINKING_STRUCT->aiAction |= (AI_ACTION_DONE | AI_ACTION_WATCH | AI_ACTION_DO_NOT_ATTACK); } static void BattleAICmd_get_hold_effect(void) @@ -2675,7 +2065,7 @@ static void BattleAICmd_if_holds_item(void) u16 item; u8 var1, var2; - if ((bank & 1) == (sBank_AI & 1)) + if ((bank & BIT_SIDE) == (sBank_AI & BIT_SIDE)) item = gBattleMons[bank].item; else item = BATTLE_HISTORY->itemEffects[bank]; @@ -2752,7 +2142,7 @@ static void BattleAICmd_get_used_held_item(void) #ifdef NONMATCHING AI_THINKING_STRUCT->funcResult = gBattleStruct->usedHeldItems[bank]; #else - AI_THINKING_STRUCT->funcResult = *(u8*)((u8*)(gBattleStruct) + 0xB8 + (bank * 2)); + AI_THINKING_STRUCT->funcResult = *(u8*)((u8*)(gBattleStruct) + offsetof(struct BattleStruct, usedHeldItems) + (bank * 2)); #endif // NONMATCHING gAIScriptPtr += 2; From 7b690dbe3a71f800b7e112a75559e9db6ac1e8bc Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Mon, 9 Oct 2017 13:48:41 +0200 Subject: [PATCH 10/13] add save location header, change static names --- include/save_location.h | 9 +++++++++ src/save_location.c | 13 +++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 include/save_location.h diff --git a/include/save_location.h b/include/save_location.h new file mode 100644 index 0000000000..95b3a7d7db --- /dev/null +++ b/include/save_location.h @@ -0,0 +1,9 @@ +#ifndef GUARD_SAVE_LOCATION_H +#define GUARD_SAVE_LOCATION_H + +bool32 sub_81AFCEC(void); +void TrySetMapSaveWarpStatus(void); +void sub_81AFDA0(void); +void sub_81AFDD0(void); + +#endif // GUARD_SAVE_LOCATION_H diff --git a/src/save_location.c b/src/save_location.c index 87067e14db..61a5fd30d9 100755 --- a/src/save_location.c +++ b/src/save_location.c @@ -1,4 +1,5 @@ #include "global.h" +#include "save_location.h" #include "map_constants.h" // used to make the list defines a little less ugly. @@ -26,7 +27,7 @@ static bool32 IsCurMapInLocationList(const u16 *list) } // TODO: Not require a packed u16 array for these lists -static const u16 gSaveLocationPokeCenterList[] = +static const u16 sSaveLocationPokeCenterList[] = { MAP(OLDALE_TOWN_POKEMON_CENTER_1F), MAP(OLDALE_TOWN_POKEMON_CENTER_2F), @@ -71,10 +72,10 @@ static const u16 gSaveLocationPokeCenterList[] = static bool32 IsCurMapPokeCenter(void) { - return IsCurMapInLocationList(gSaveLocationPokeCenterList); + return IsCurMapInLocationList(sSaveLocationPokeCenterList); } -static const u16 gSaveLocationReloadLocList[] = // there's only 1 location, and it's presumed its for the save reload feature for battle tower +static const u16 sSaveLocationReloadLocList[] = // there's only 1 location, and it's presumed its for the save reload feature for battle tower { MAP(BATTLE_TOWER_LOBBY), 0xFFFF, @@ -82,18 +83,18 @@ static const u16 gSaveLocationReloadLocList[] = // there's only 1 location, and static bool32 IsCurMapReloadLocation(void) { - return IsCurMapInLocationList(gSaveLocationReloadLocList); + return IsCurMapInLocationList(sSaveLocationReloadLocList); } // nulled out list. unknown what this would have been -static const u16 gUnknown_0861440E[] = +static const u16 sUnknown_0861440E[] = { 0xFFFF, }; bool32 sub_81AFCEC(void) { - return IsCurMapInLocationList(gUnknown_0861440E); + return IsCurMapInLocationList(sUnknown_0861440E); } static void TrySetPokeCenterWarpStatus(void) From ae06c13e99162cebd3617f5aafb135bdd8b3f237 Mon Sep 17 00:00:00 2001 From: Diegoisawesome Date: Mon, 9 Oct 2017 13:10:02 -0500 Subject: [PATCH 11/13] Add front pic anims with help from marijnvdwerf --- asm/battle_7.s | 2 +- asm/reshow_battle_screen.s | 2 +- data/data2b.s | 1047 ++-- data/graphics/pokemon/front_anims.inc | 6915 +++++++++++++++++++++++++ src/battle_dome_cards.c | 4 +- src/pokemon_2.c | 6 +- 6 files changed, 7444 insertions(+), 532 deletions(-) create mode 100644 data/graphics/pokemon/front_anims.inc diff --git a/asm/battle_7.s b/asm/battle_7.s index 0b5ca514f3..bfb5f82dcb 100644 --- a/asm/battle_7.s +++ b/asm/battle_7.s @@ -2541,7 +2541,7 @@ _0805E662: ldr r1, =gSprites adds r1, 0x8 adds r0, r1 - ldr r1, =gUnknown_08309AAC + ldr r1, =gMonAnimationsSpriteAnimsPtrTable mov r3, r8 lsls r2, r3, 2 adds r1, r2 diff --git a/asm/reshow_battle_screen.s b/asm/reshow_battle_screen.s index 2066c37ed0..96d9c3658d 100644 --- a/asm/reshow_battle_screen.s +++ b/asm/reshow_battle_screen.s @@ -825,7 +825,7 @@ _080A9A50: adds r0, r5, 0 adds r0, 0x8 adds r1, r0 - ldr r0, =gUnknown_08309AAC + ldr r0, =gMonAnimationsSpriteAnimsPtrTable ldr r2, =0x00000604 adds r0, r2 ldr r0, [r0] diff --git a/data/data2b.s b/data/data2b.s index 0d964fcf55..4719930277 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -104,11 +104,12 @@ gUnknown_082FF518:: @ 82FF518 obj_frame_tiles gTrainerBackPic_Steven + 0x1800, 0x0800 .align 2 -gUnknown_082FF538:: @ 82FF538 - .2byte 0x0000, 0x0000, 0xffff, 0x0000 +gAnimCmd_General_Frame0:: @ 82FF538 + obj_image_anim_frame 0, 0 + obj_image_anim_end .align 2 -gUnknown_082FF540:: @ 82FF540 +AnimCmd_82FF540:: @ 82FF540 .2byte 0x0003, 0x0000, 0xffff, 0x0000 .align 2 @@ -806,1039 +807,1039 @@ gUnknown_082FFDC4:: @ 82FFDC4 .align 2 gUnknown_082FFDCC:: @ 82FFDCC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDD0:: @ 82FFDD0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDD4:: @ 82FFDD4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDD8:: @ 82FFDD8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDDC:: @ 82FFDDC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDE0:: @ 82FFDE0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDE4:: @ 82FFDE4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDE8:: @ 82FFDE8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDEC:: @ 82FFDEC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDF0:: @ 82FFDF0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDF4:: @ 82FFDF4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDF8:: @ 82FFDF8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFDFC:: @ 82FFDFC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE00:: @ 82FFE00 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE04:: @ 82FFE04 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE08:: @ 82FFE08 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE0C:: @ 82FFE0C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE10:: @ 82FFE10 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE14:: @ 82FFE14 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE18:: @ 82FFE18 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE1C:: @ 82FFE1C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE20:: @ 82FFE20 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE24:: @ 82FFE24 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE28:: @ 82FFE28 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE2C:: @ 82FFE2C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE30:: @ 82FFE30 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE34:: @ 82FFE34 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE38:: @ 82FFE38 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE3C:: @ 82FFE3C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE40:: @ 82FFE40 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE44:: @ 82FFE44 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE48:: @ 82FFE48 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE4C:: @ 82FFE4C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE50:: @ 82FFE50 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE54:: @ 82FFE54 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE58:: @ 82FFE58 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE5C:: @ 82FFE5C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE60:: @ 82FFE60 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE64:: @ 82FFE64 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE68:: @ 82FFE68 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE6C:: @ 82FFE6C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE70:: @ 82FFE70 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE74:: @ 82FFE74 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE78:: @ 82FFE78 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE7C:: @ 82FFE7C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE80:: @ 82FFE80 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE84:: @ 82FFE84 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE88:: @ 82FFE88 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE8C:: @ 82FFE8C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE90:: @ 82FFE90 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE94:: @ 82FFE94 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE98:: @ 82FFE98 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFE9C:: @ 82FFE9C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEA0:: @ 82FFEA0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEA4:: @ 82FFEA4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEA8:: @ 82FFEA8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEAC:: @ 82FFEAC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEB0:: @ 82FFEB0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEB4:: @ 82FFEB4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEB8:: @ 82FFEB8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEBC:: @ 82FFEBC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEC0:: @ 82FFEC0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEC4:: @ 82FFEC4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEC8:: @ 82FFEC8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFECC:: @ 82FFECC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFED0:: @ 82FFED0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFED4:: @ 82FFED4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFED8:: @ 82FFED8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEDC:: @ 82FFEDC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEE0:: @ 82FFEE0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEE4:: @ 82FFEE4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEE8:: @ 82FFEE8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEEC:: @ 82FFEEC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEF0:: @ 82FFEF0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEF4:: @ 82FFEF4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEF8:: @ 82FFEF8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFEFC:: @ 82FFEFC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF00:: @ 82FFF00 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF04:: @ 82FFF04 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF08:: @ 82FFF08 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF0C:: @ 82FFF0C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF10:: @ 82FFF10 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF14:: @ 82FFF14 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF18:: @ 82FFF18 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF1C:: @ 82FFF1C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF20:: @ 82FFF20 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF24:: @ 82FFF24 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF28:: @ 82FFF28 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF2C:: @ 82FFF2C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF30:: @ 82FFF30 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF34:: @ 82FFF34 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF38:: @ 82FFF38 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF3C:: @ 82FFF3C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF40:: @ 82FFF40 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF44:: @ 82FFF44 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF48:: @ 82FFF48 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF4C:: @ 82FFF4C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF50:: @ 82FFF50 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF54:: @ 82FFF54 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF58:: @ 82FFF58 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF5C:: @ 82FFF5C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF60:: @ 82FFF60 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF64:: @ 82FFF64 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF68:: @ 82FFF68 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF6C:: @ 82FFF6C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF70:: @ 82FFF70 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF74:: @ 82FFF74 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF78:: @ 82FFF78 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF7C:: @ 82FFF7C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF80:: @ 82FFF80 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF84:: @ 82FFF84 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF88:: @ 82FFF88 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF8C:: @ 82FFF8C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF90:: @ 82FFF90 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF94:: @ 82FFF94 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF98:: @ 82FFF98 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFF9C:: @ 82FFF9C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFA0:: @ 82FFFA0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFA4:: @ 82FFFA4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFA8:: @ 82FFFA8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFAC:: @ 82FFFAC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFB0:: @ 82FFFB0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFB4:: @ 82FFFB4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFB8:: @ 82FFFB8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFBC:: @ 82FFFBC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFC0:: @ 82FFFC0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFC4:: @ 82FFFC4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFC8:: @ 82FFFC8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFCC:: @ 82FFFCC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFD0:: @ 82FFFD0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFD4:: @ 82FFFD4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFD8:: @ 82FFFD8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFDC:: @ 82FFFDC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFE0:: @ 82FFFE0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFE4:: @ 82FFFE4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFE8:: @ 82FFFE8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFEC:: @ 82FFFEC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFF0:: @ 82FFFF0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFF4:: @ 82FFFF4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFF8:: @ 82FFFF8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_082FFFFC:: @ 82FFFFC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300000:: @ 8300000 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300004:: @ 8300004 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300008:: @ 8300008 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830000C:: @ 830000C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300010:: @ 8300010 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300014:: @ 8300014 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300018:: @ 8300018 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830001C:: @ 830001C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300020:: @ 8300020 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300024:: @ 8300024 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300028:: @ 8300028 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830002C:: @ 830002C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300030:: @ 8300030 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300034:: @ 8300034 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300038:: @ 8300038 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830003C:: @ 830003C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300040:: @ 8300040 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300044:: @ 8300044 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300048:: @ 8300048 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830004C:: @ 830004C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300050:: @ 8300050 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300054:: @ 8300054 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300058:: @ 8300058 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830005C:: @ 830005C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300060:: @ 8300060 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300064:: @ 8300064 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300068:: @ 8300068 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830006C:: @ 830006C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300070:: @ 8300070 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300074:: @ 8300074 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300078:: @ 8300078 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830007C:: @ 830007C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300080:: @ 8300080 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300084:: @ 8300084 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300088:: @ 8300088 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830008C:: @ 830008C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300090:: @ 8300090 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300094:: @ 8300094 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300098:: @ 8300098 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830009C:: @ 830009C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000A0:: @ 83000A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000A4:: @ 83000A4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000A8:: @ 83000A8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000AC:: @ 83000AC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000B0:: @ 83000B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000B4:: @ 83000B4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000B8:: @ 83000B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000BC:: @ 83000BC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000C0:: @ 83000C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000C4:: @ 83000C4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000C8:: @ 83000C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000CC:: @ 83000CC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000D0:: @ 83000D0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000D4:: @ 83000D4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000D8:: @ 83000D8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000DC:: @ 83000DC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000E0:: @ 83000E0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000E4:: @ 83000E4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000E8:: @ 83000E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000EC:: @ 83000EC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000F0:: @ 83000F0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000F4:: @ 83000F4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000F8:: @ 83000F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083000FC:: @ 83000FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300100:: @ 8300100 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300104:: @ 8300104 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300108:: @ 8300108 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830010C:: @ 830010C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300110:: @ 8300110 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300114:: @ 8300114 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300118:: @ 8300118 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830011C:: @ 830011C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300120:: @ 8300120 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300124:: @ 8300124 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300128:: @ 8300128 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830012C:: @ 830012C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300130:: @ 8300130 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300134:: @ 8300134 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300138:: @ 8300138 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830013C:: @ 830013C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300140:: @ 8300140 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300144:: @ 8300144 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300148:: @ 8300148 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830014C:: @ 830014C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300150:: @ 8300150 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300154:: @ 8300154 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300158:: @ 8300158 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830015C:: @ 830015C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300160:: @ 8300160 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300164:: @ 8300164 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300168:: @ 8300168 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830016C:: @ 830016C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300170:: @ 8300170 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300174:: @ 8300174 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300178:: @ 8300178 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830017C:: @ 830017C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300180:: @ 8300180 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300184:: @ 8300184 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300188:: @ 8300188 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830018C:: @ 830018C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300190:: @ 8300190 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300194:: @ 8300194 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300198:: @ 8300198 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830019C:: @ 830019C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001A0:: @ 83001A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001A4:: @ 83001A4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001A8:: @ 83001A8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001AC:: @ 83001AC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001B0:: @ 83001B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001B4:: @ 83001B4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001B8:: @ 83001B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001BC:: @ 83001BC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001C0:: @ 83001C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001C4:: @ 83001C4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001C8:: @ 83001C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001CC:: @ 83001CC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001D0: @ 83001D0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001D4:: @ 83001D4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF71C .4byte gUnknown_082FF734 .4byte gUnknown_082FF744 @@ -1846,163 +1847,163 @@ gUnknown_083001D4:: @ 83001D4 .align 2 gUnknown_083001E8:: @ 83001E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083001EC:: @ 83001EC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF758 .4byte gUnknown_082FF774 .4byte gUnknown_082FF790 .align 2 gUnknown_083001FC:: @ 83001FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300200:: @ 8300200 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF79C .4byte gUnknown_082FF7B0 .align 2 gUnknown_0830020C:: @ 830020C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7C4 .align 2 gUnknown_08300214:: @ 8300214 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7CC .align 2 gUnknown_0830021C:: @ 830021C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7D4 .align 2 gUnknown_08300224:: @ 8300224 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7DC .4byte gUnknown_082FF7E4 .align 2 gUnknown_08300230:: @ 8300230 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7EC .4byte gUnknown_082FF7F4 .align 2 gUnknown_0830023C:: @ 830023C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF7FC .4byte gUnknown_082FF804 .align 2 gUnknown_08300248:: @ 8300248 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF80C .4byte gUnknown_082FF814 .align 2 gUnknown_08300254:: @ 8300254 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF81C .4byte gUnknown_082FF824 .align 2 gUnknown_08300260:: @ 8300260 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300264:: @ 8300264 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF82C .align 2 gUnknown_0830026C:: @ 830026C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF834 .4byte gUnknown_082FF83C .align 2 gUnknown_08300278:: @ 8300278 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF844 .align 2 gUnknown_08300280:: @ 8300280 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF84C .align 2 gUnknown_08300288:: @ 8300288 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF854 .4byte gUnknown_082FF85C .align 2 gUnknown_08300294:: @ 8300294 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300298:: @ 8300298 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830029C:: @ 830029C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083002A0:: @ 83002A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF864 .align 2 gUnknown_083002A8:: @ 83002A8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF86C .align 2 gUnknown_083002B0:: @ 83002B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF874 .align 2 gUnknown_083002B8:: @ 83002B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF87C .align 2 gUnknown_083002C0:: @ 83002C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083002C4:: @ 83002C4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF884 .align 2 gUnknown_083002CC:: @ 83002CC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF88C .4byte gUnknown_082FF894 .align 2 gUnknown_083002D8:: @ 83002D8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF89C .4byte gUnknown_082FF8A4 .align 2 gUnknown_083002E4:: @ 83002E4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF8AC .4byte gUnknown_082FF8B4 .align 2 gUnknown_083002F0:: @ 83002F0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF8BC .4byte gUnknown_082FF8FC .4byte gUnknown_082FF91C @@ -2010,21 +2011,21 @@ gUnknown_083002F0:: @ 83002F0 .align 2 gUnknown_08300304:: @ 8300304 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300308:: @ 8300308 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF93C .align 2 gUnknown_08300310:: @ 8300310 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF944 .align 2 gUnknown_08300318:: @ 8300318 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FF94C .4byte gUnknown_082FF9A8 .4byte gUnknown_082FFA00 @@ -2032,165 +2033,165 @@ gUnknown_08300318:: @ 8300318 .align 2 gUnknown_0830032C:: @ 830032C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA64 .align 2 gUnknown_08300334:: @ 8300334 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA6C .align 2 gUnknown_0830033C:: @ 830033C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA74 .align 2 gUnknown_08300344:: @ 8300344 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300348:: @ 8300348 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA7C .4byte gUnknown_082FFA84 .align 2 gUnknown_08300354:: @ 8300354 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300358:: @ 8300358 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830035C:: @ 830035C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA8C .4byte gUnknown_082FFA94 .align 2 gUnknown_08300368:: @ 8300368 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830036C:: @ 830036C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300370:: @ 8300370 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFA9C .4byte gUnknown_082FFAA4 .align 2 gUnknown_0830037C:: @ 830037C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFAAC .4byte gUnknown_082FFAB4 .align 2 gUnknown_08300388:: @ 8300388 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFABC .4byte gUnknown_082FFAC4 .align 2 gUnknown_08300394:: @ 8300394 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFACC .4byte gUnknown_082FFAD4 .align 2 gUnknown_083003A0:: @ 83003A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFADC .align 2 gUnknown_083003A8:: @ 83003A8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFAE4 .align 2 gUnknown_083003B0:: @ 83003B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFAEC .align 2 gUnknown_083003B8:: @ 83003B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFAF4 .align 2 gUnknown_083003C0:: @ 83003C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFAFC .align 2 gUnknown_083003C8:: @ 83003C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB04 .4byte gUnknown_082FFB0C .align 2 gUnknown_083003D4:: @ 83003D4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB14 .align 2 gUnknown_083003DC:: @ 83003DC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB1C .4byte gUnknown_082FFB24 .align 2 gUnknown_083003E8:: @ 83003E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB2C .align 2 gUnknown_083003F0:: @ 83003F0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB34 .align 2 gUnknown_083003F8:: @ 83003F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB3C .align 2 gUnknown_08300400:: @ 8300400 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB44 .4byte gUnknown_082FFB60 .align 2 gUnknown_0830040C:: @ 830040C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300410:: @ 8300410 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300414:: @ 8300414 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300418:: @ 8300418 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830041C:: @ 830041C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300420:: @ 8300420 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300424:: @ 8300424 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFB7C .4byte gUnknown_082FFBBC .4byte gUnknown_082FFBE0 @@ -2198,174 +2199,174 @@ gUnknown_08300424:: @ 8300424 .align 2 gUnknown_08300438:: @ 8300438 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFBFC .4byte gUnknown_082FFC04 .align 2 gUnknown_08300444:: @ 8300444 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC0C .align 2 gUnknown_0830044C:: @ 830044C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC14 .align 2 gUnknown_08300454:: @ 8300454 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC1C .align 2 gUnknown_0830045C:: @ 830045C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC24 .align 2 gUnknown_08300464:: @ 8300464 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC2C .align 2 gUnknown_0830046C:: @ 830046C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC34 .align 2 gUnknown_08300474:: @ 8300474 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC3C .4byte gUnknown_082FFC58 .align 2 gUnknown_08300480:: @ 8300480 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC74 .align 2 gUnknown_08300488:: @ 8300488 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC7C .4byte gUnknown_082FFC84 .align 2 gUnknown_08300494:: @ 8300494 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC8C .4byte gUnknown_082FFC94 .align 2 gUnknown_083004A0:: @ 83004A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFC9C .4byte gUnknown_082FFCA4 .align 2 gUnknown_083004AC:: @ 83004AC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004B0:: @ 83004B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCAC .align 2 gUnknown_083004B8:: @ 83004B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCB4 .align 2 gUnknown_083004C0:: @ 83004C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCBC .align 2 gUnknown_083004C8:: @ 83004C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCC4 .align 2 gUnknown_083004D0:: @ 83004D0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCCC .align 2 gUnknown_083004D8:: @ 83004D8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCD4 .align 2 gUnknown_083004E0:: @ 83004E0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004E4:: @ 83004E4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004E8:: @ 83004E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004EC:: @ 83004EC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCDC .align 2 gUnknown_083004F4:: @ 83004F4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004F8:: @ 83004F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083004FC:: @ 83004FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCE4 .align 2 gUnknown_08300504:: @ 8300504 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCEC .4byte gUnknown_082FFCF4 .align 2 gUnknown_08300510:: @ 8300510 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFCFC .align 2 gUnknown_08300518:: @ 8300518 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830051C:: @ 830051C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300520:: @ 8300520 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300524:: @ 8300524 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD04 .align 2 gUnknown_0830052C:: @ 830052C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD0C .align 2 gUnknown_08300534:: @ 8300534 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD14 .align 2 gUnknown_0830053C:: @ 830053C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD1C .4byte gUnknown_082FFD24 .4byte gUnknown_082FFD2C @@ -2373,228 +2374,228 @@ gUnknown_0830053C:: @ 830053C .align 2 gUnknown_08300550:: @ 8300550 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD3C .align 2 gUnknown_08300558:: @ 8300558 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD44 .align 2 gUnknown_08300560:: @ 8300560 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300564:: @ 8300564 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300568:: @ 8300568 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830056C:: @ 830056C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300570:: @ 8300570 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300574:: @ 8300574 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300578:: @ 8300578 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830057C:: @ 830057C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD4C .4byte gUnknown_082FFD54 .align 2 gUnknown_08300588:: @ 8300588 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830058C:: @ 830058C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD5C .4byte gUnknown_082FFD64 .align 2 gUnknown_08300598:: @ 8300598 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830059C:: @ 830059C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005A0:: @ 83005A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005A4:: @ 83005A4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD6C .align 2 gUnknown_083005AC:: @ 83005AC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD74 .align 2 gUnknown_083005B4:: @ 83005B4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD7C .4byte gUnknown_082FFD84 .align 2 gUnknown_083005C0:: @ 83005C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005C4:: @ 83005C4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005C8:: @ 83005C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFD8C .4byte gUnknown_082FFDA0 .align 2 gUnknown_083005D4:: @ 83005D4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005D8:: @ 83005D8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005DC:: @ 83005DC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFDC4 .align 2 gUnknown_083005E4:: @ 83005E4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005E8:: @ 83005E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005EC:: @ 83005EC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005F0:: @ 83005F0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005F4:: @ 83005F4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005F8:: @ 83005F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083005FC:: @ 83005FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300600:: @ 8300600 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300604:: @ 8300604 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300608:: @ 8300608 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830060C:: @ 830060C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300610:: @ 8300610 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300614:: @ 8300614 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300618:: @ 8300618 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830061C:: @ 830061C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300620:: @ 8300620 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300624:: @ 8300624 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300628:: @ 8300628 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830062C:: @ 830062C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300630:: @ 8300630 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300634:: @ 8300634 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300638:: @ 8300638 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830063C:: @ 830063C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300640:: @ 8300640 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300644:: @ 8300644 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300648:: @ 8300648 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830064C:: @ 830064C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300650:: @ 8300650 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08300654:: @ 8300654 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_082FFDCC .4byte gUnknown_082FFDD0 @@ -3936,375 +3937,375 @@ gUnknown_083021D8:: @ 83021D8 .include "data/graphics/pokemon/shiny_palette_table.inc" gUnknown_083051F8:: @ 83051F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083051FC:: @ 83051FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305200:: @ 8305200 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305204:: @ 8305204 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305208:: @ 8305208 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830520C:: @ 830520C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305210:: @ 8305210 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305214:: @ 8305214 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305218:: @ 8305218 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830521C:: @ 830521C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305220:: @ 8305220 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305224:: @ 8305224 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305228:: @ 8305228 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830522C:: @ 830522C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305230:: @ 8305230 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305234:: @ 8305234 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305238:: @ 8305238 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830523C:: @ 830523C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305240:: @ 8305240 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305244:: @ 8305244 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305248:: @ 8305248 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830524C:: @ 830524C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305250:: @ 8305250 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305254:: @ 8305254 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305258:: @ 8305258 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830525C:: @ 830525C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305260:: @ 8305260 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305264:: @ 8305264 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305268:: @ 8305268 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830526C:: @ 830526C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305270:: @ 8305270 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305274:: @ 8305274 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305278:: @ 8305278 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830527C:: @ 830527C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305280:: @ 8305280 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305284:: @ 8305284 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305288:: @ 8305288 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830528C:: @ 830528C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305290:: @ 8305290 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305294:: @ 8305294 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305298:: @ 8305298 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830529C:: @ 830529C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052A0:: @ 83052A0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052A4:: @ 83052A4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052A8:: @ 83052A8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052AC:: @ 83052AC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052B0:: @ 83052B0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052B4:: @ 83052B4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052B8:: @ 83052B8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052BC:: @ 83052BC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052C0:: @ 83052C0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052C4:: @ 83052C4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052C8:: @ 83052C8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052CC:: @ 83052CC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052D0:: @ 83052D0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052D4:: @ 83052D4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052D8:: @ 83052D8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052DC:: @ 83052DC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052E0:: @ 83052E0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052E4:: @ 83052E4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052E8:: @ 83052E8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052EC:: @ 83052EC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052F0:: @ 83052F0 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052F4:: @ 83052F4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052F8:: @ 83052F8 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_083052FC:: @ 83052FC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305300:: @ 8305300 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305304:: @ 8305304 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305308:: @ 8305308 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830530C:: @ 830530C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305310:: @ 8305310 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305314:: @ 8305314 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305318:: @ 8305318 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830531C:: @ 830531C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305320:: @ 8305320 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305324:: @ 8305324 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305328:: @ 8305328 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830532C:: @ 830532C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305330:: @ 8305330 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305334:: @ 8305334 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305338:: @ 8305338 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830533C:: @ 830533C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305340:: @ 8305340 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305344:: @ 8305344 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305348:: @ 8305348 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830534C:: @ 830534C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305350:: @ 8305350 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305354:: @ 8305354 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305358:: @ 8305358 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830535C:: @ 830535C - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305360:: @ 8305360 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305364:: @ 8305364 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_08305368:: @ 8305368 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .align 2 gUnknown_0830536C:: @ 830536C @@ -4447,42 +4448,42 @@ gUnknown_08305CB4:: @ 8305CB4 .align 2 gUnknown_08305CCC:: @ 8305CCC - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305C24 .align 2 gUnknown_08305CD4:: @ 8305CD4 - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305C3C .align 2 gUnknown_08305CDC:: @ 8305CDC - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_08305C6C .align 2 gUnknown_08305CE4:: @ 8305CE4 - .4byte gUnknown_082FF538 + .4byte gAnimCmd_General_Frame0 .4byte gUnknown_08305C84 .align 2 gUnknown_08305CEC:: @ 8305CEC - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305C9C .align 2 gUnknown_08305CF4:: @ 8305CF4 - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305CB4 .align 2 gUnknown_08305CFC:: @ 8305CFC - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305C54 .align 2 gUnknown_08305D04:: @ 8305D04 - .4byte gUnknown_082FF540 + .4byte AnimCmd_82FF540 .4byte gUnknown_08305C3C .align 2 @@ -4508,12 +4509,8 @@ gUnknown_08305D0C:: @ 8305D0C @ 8305DCC .include "data/enemy_mon_elevation.inc" - .incbin "baserom.gba", 0x305f68, 0x2d54 - - .incbin "baserom.gba", 0x308cbc, 0xdf0 - -gUnknown_08309AAC:: @ 8309AAC - .incbin "baserom.gba", 0x309aac, 0x6e0 +@ 8305F68 + .include "data/graphics/pokemon/front_anims.inc" @ 830A18C .include "data/graphics/pokemon/front_pic_table.inc" diff --git a/data/graphics/pokemon/front_anims.inc b/data/graphics/pokemon/front_anims.inc new file mode 100644 index 0000000000..69341c88d7 --- /dev/null +++ b/data/graphics/pokemon/front_anims.inc @@ -0,0 +1,6915 @@ + + .align 2 +gAnimCmd_NONE_1:: @ 8305F68 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_BULBASAUR_1:: @ 8305F78 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_IVYSAUR_1:: @ 8305F88 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 36 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_VENUSAUR_1:: @ 8305F98 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CHARMANDER_1:: @ 8305FA8 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 46 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CHARMELEON_1:: @ 8305FB8 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_CHARIZARD_1:: @ 8305FC8 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_SQUIRTLE_1:: @ 8305FD4 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_WARTORTLE_1:: @ 8305FE4 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_BLASTOISE_1:: @ 8305FF4 + obj_image_anim_frame 0, 50 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_CATERPIE_1:: @ 830600C + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_METAPOD_1:: @ 8306030 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_BUTTERFREE_1:: @ 830603C + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_WEEDLE_1:: @ 8306074 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_KAKUNA_1:: @ 8306094 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_BEEDRILL_1:: @ 83060C4 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 28 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PIDGEY_1:: @ 83060DC + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PIDGEOTTO_1:: @ 8306110 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_PIDGEOT_1:: @ 8306128 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_RATTATA_1:: @ 830613C + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 28 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_RATICATE_1:: @ 8306150 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_SPEAROW_1:: @ 8306184 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_FEAROW_1:: @ 83061C8 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_EKANS_1:: @ 83061EC + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_ARBOK_1:: @ 8306208 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PIKACHU_1:: @ 8306218 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_PIKACHU_2:: @ 8306230 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_RAICHU_1:: @ 8306244 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_RAICHU_2:: @ 830625C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SANDSHREW_1:: @ 8306270 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SANDSHREW_2:: @ 8306288 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SANDSLASH_1:: @ 830629C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SANDSLASH_2:: @ 83062B4 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDORAN_F_1:: @ 83062C8 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 50 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDORINA_1:: @ 83062F0 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDOQUEEN_1:: @ 83062FC + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDORAN_M_1:: @ 8306308 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDORINO_1:: @ 8306318 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_NIDOKING_1:: @ 8306328 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CLEFAIRY_1:: @ 830633C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CLEFABLE_1:: @ 830634C + obj_image_anim_frame 1, 27 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 24 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 27 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_VULPIX_1:: @ 8306368 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_VULPIX_2:: @ 8306380 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_NINETALES_1:: @ 8306394 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_NINETALES_2:: @ 83063AC + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_JIGGLYPUFF_1:: @ 83063C0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_JIGGLYPUFF_2:: @ 83063D8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_WIGGLYTUFF_1:: @ 83063EC + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_WIGGLYTUFF_2:: @ 8306404 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_ZUBAT_1:: @ 8306418 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_GOLBAT_1:: @ 8306450 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_ODDISH_1:: @ 83064A0 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_GLOOM_1:: @ 83064C0 + obj_image_anim_frame 0, 21 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_VILEPLUME_1:: @ 83064D4 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 21 + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 21 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PARAS_1:: @ 83064EC + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_PARASECT_1:: @ 8306530 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_VENONAT_1:: @ 830654C + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 35 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_VENOMOTH_1:: @ 8306568 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2 +gAnimCmd_DIGLETT_1:: @ 83065C4 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_DUGTRIO_1:: @ 83065D4 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MEOWTH_1:: @ 8306600 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 17 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PERSIAN_1:: @ 830661C + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_PSYDUCK_1:: @ 8306628 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_PSYDUCK_2:: @ 8306640 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_GOLDUCK_1:: @ 8306654 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_GOLDUCK_2:: @ 830666C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MANKEY_1:: @ 8306680 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 28 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_PRIMEAPE_1:: @ 830669C + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_GROWLITHE_1:: @ 83066B8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ARCANINE_1:: @ 83066D4 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_POLIWAG_1:: @ 83066F0 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_POLIWHIRL_1:: @ 8306700 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_POLIWRATH_1:: @ 8306718 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ABRA_1:: @ 8306724 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 21 + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 21 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KADABRA_1:: @ 830673C + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ALAKAZAM_1:: @ 830674C + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 54 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_MACHOP_1:: @ 830675C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MACHOKE_1:: @ 830677C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MACHAMP_1:: @ 830678C + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_BELLSPROUT_1:: @ 83067AC + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_WEEPINBELL_1:: @ 83067BC + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_VICTREEBEL_1:: @ 83067DC + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TENTACOOL_1:: @ 83067FC + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_TENTACRUEL_1:: @ 8306814 + obj_image_anim_frame 0, 19 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 19 + obj_image_anim_frame 1, 19 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_GEODUDE_1:: @ 830682C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 36 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GRAVELER_1:: @ 830683C + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_end + + .align 2 +gAnimCmd_GOLEM_1:: @ 8306854 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 31 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_PONYTA_1:: @ 830686C + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_RAPIDASH_1:: @ 8306878 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SLOWPOKE_1:: @ 8306888 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SLOWBRO_1:: @ 8306898 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGNEMITE_1:: @ 83068A8 + obj_image_anim_frame 0, 28 + obj_image_anim_frame 1, 28 + obj_image_anim_frame 0, 28 + obj_image_anim_frame 1, 28 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGNETON_1:: @ 83068C0 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_end + + .align 2 +gAnimCmd_FARFETCHD_1:: @ 83068E0 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_DODUO_1:: @ 8306914 + obj_image_anim_frame 0, 18 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 18 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_DODRIO_1:: @ 830692C + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_SEEL_1:: @ 8306954 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_DEWGONG_1:: @ 8306978 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_GRIMER_1:: @ 8306988 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GRIMER_2:: @ 83069A0 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MUK_1:: @ 83069B4 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MUK_2:: @ 83069CC + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SHELLDER_1:: @ 83069E0 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_CLOYSTER_1:: @ 83069F4 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_GASTLY_1:: @ 8306A38 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HAUNTER_1:: @ 8306A48 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GENGAR_1:: @ 8306A60 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ONIX_1:: @ 8306A70 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_DROWZEE_1:: @ 8306A80 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HYPNO_1:: @ 8306A9C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_KRABBY_1:: @ 8306ABC + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_KINGLER_1:: @ 8306AD8 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_VOLTORB_1:: @ 8306B00 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2 +gAnimCmd_ELECTRODE_1:: @ 8306B18 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_EXEGGCUTE_1:: @ 8306B30 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_EXEGGUTOR_1:: @ 8306B58 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CUBONE_1:: @ 8306B64 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_end + + .align 2 +gAnimCmd_MAROWAK_1:: @ 8306B80 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_end + + .align 2 +gAnimCmd_HITMONLEE_1:: @ 8306B9C + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_HITMONCHAN_1:: @ 8306BA8 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LICKITUNG_1:: @ 8306BCC + obj_image_anim_frame 0, 28 + obj_image_anim_frame 1, 32 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_KOFFING_1:: @ 8306BDC + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KOFFING_2:: @ 8306BF4 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_WEEZING_1:: @ 8306C08 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_WEEZING_2:: @ 8306C20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_RHYHORN_1:: @ 8306C34 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_RHYHORN_2:: @ 8306C4C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_RHYDON_1:: @ 8306C60 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 48 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_RHYDON_2:: @ 8306C78 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CHANSEY_1:: @ 8306C8C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_TANGELA_1:: @ 8306C9C + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_end + + .align 2 +gAnimCmd_KANGASKHAN_1:: @ 8306CC8 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HORSEA_1:: @ 8306CDC + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HORSEA_2:: @ 8306CF4 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SEADRA_1:: @ 8306D08 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SEADRA_2:: @ 8306D20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_GOLDEEN_1:: @ 8306D34 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SEAKING_1:: @ 8306D5C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_STARYU_1:: @ 8306D74 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_STARYU_2:: @ 8306D8C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_STARMIE_1:: @ 8306DA0 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_STARMIE_2:: @ 8306DB8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MR_MIME_1:: @ 8306DCC + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SCYTHER_1:: @ 8306DE8 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_JYNX_1:: @ 8306E0C + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ELECTABUZZ_1:: @ 8306E24 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGMAR_1:: @ 8306E38 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PINSIR_1:: @ 8306E44 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PINSIR_2:: @ 8306E5C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_TAUROS_1:: @ 8306E70 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGIKARP_1:: @ 8306E84 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_GYARADOS_1:: @ 8306EAC + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 32 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LAPRAS_1:: @ 8306EBC + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_DITTO_1:: @ 8306EC8 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_EEVEE_1:: @ 8306EDC + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_VAPOREON_1:: @ 8306EE8 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_JOLTEON_1:: @ 8306EF4 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_FLAREON_1:: @ 8306F00 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_PORYGON_1:: @ 8306F0C + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_OMANYTE_1:: @ 8306F20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_OMASTAR_1:: @ 8306F44 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KABUTO_1:: @ 8306F58 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_KABUTOPS_1:: @ 8306F7C + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_AERODACTYL_1:: @ 8306F90 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 25 + obj_image_anim_end + + .align 2 +gAnimCmd_SNORLAX_1:: @ 8306FA4 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ARTICUNO_1:: @ 8306FB4 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ZAPDOS_1:: @ 8306FC8 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MOLTRES_1:: @ 8306FDC + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_DRATINI_1:: @ 8307060 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_DRAGONAIR_1:: @ 8307070 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_DRAGONITE_1:: @ 8307084 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MEWTWO_1:: @ 8307094 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MEW_1:: @ 83070A0 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CHIKORITA_1:: @ 83070B0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_BAYLEEF_1:: @ 83070C0 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_MEGANIUM_1:: @ 83070CC + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CYNDAQUIL_1:: @ 83070D8 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_QUILAVA_1:: @ 83070EC + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_TYPHLOSION_1:: @ 83070F8 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TOTODILE_1:: @ 8307104 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_CROCONAW_1:: @ 8307120 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_FERALIGATR_1:: @ 830712C + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 40 + obj_image_anim_end + + .align 2 +gAnimCmd_SENTRET_1:: @ 8307140 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_FURRET_1:: @ 8307154 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_HOOTHOOT_1:: @ 8307160 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_NOCTOWL_1:: @ 8307194 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_LEDYBA_1:: @ 83071A0 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LEDIAN_1:: @ 83071B4 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_SPINARAK_1:: @ 8307220 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_ARIADOS_1:: @ 8307244 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CROBAT_1:: @ 8307258 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_end + + .align 2 +gAnimCmd_CHINCHOU_1:: @ 83072A0 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CHINCHOU_2:: @ 83072B8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_LANTURN_1:: @ 83072CC + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LANTURN_2:: @ 83072E4 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_PICHU_1:: @ 83072F8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_PICHU_2:: @ 8307310 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CLEFFA_1:: @ 8307324 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_IGGLYBUFF_1:: @ 8307338 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_IGGLYBUFF_2:: @ 8307350 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_TOGEPI_1:: @ 8307364 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TOGETIC_1:: @ 8307374 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_NATU_1:: @ 8307384 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_NATU_2:: @ 830739C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_XATU_1:: @ 83073B0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 45 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_XATU_2:: @ 83073D0 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MAREEP_1:: @ 83073E4 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_FLAAFFY_1:: @ 8307400 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_AMPHAROS_1:: @ 8307414 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_BELLOSSOM_1:: @ 8307424 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_MARILL_1:: @ 8307444 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_AZUMARILL_1:: @ 830745C + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_SUDOWOODO_1:: @ 8307474 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_POLITOED_1:: @ 8307490 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_HOPPIP_1:: @ 83074AC + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 25 + obj_image_anim_end + + .align 2 +gAnimCmd_SKIPLOOM_1:: @ 83074C0 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_JUMPLUFF_1:: @ 83074E4 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 25 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_AIPOM_1:: @ 8307500 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_SUNKERN_1:: @ 830750C + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SUNFLORA_1:: @ 8307520 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_YANMA_1:: @ 8307530 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_end + + .align 2 +gAnimCmd_WOOPER_1:: @ 830758C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_QUAGSIRE_1:: @ 830759C + obj_image_anim_frame 1, 32 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_ESPEON_1:: @ 83075A8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_UMBREON_1:: @ 83075B8 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MURKROW_1:: @ 83075C4 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SLOWKING_1:: @ 83075D0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_MISDREAVUS_1:: @ 83075E0 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_1:: @ 830760C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_WOBBUFFET_1:: @ 830761C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_WOBBUFFET_2:: @ 8307634 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_GIRAFARIG_1:: @ 8307648 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_GIRAFARIG_2:: @ 8307668 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_PINECO_1:: @ 830767C + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_FORRETRESS_1:: @ 83076A0 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_DUNSPARCE_1:: @ 83076B4 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GLIGAR_1:: @ 83076C8 + obj_image_anim_frame 1, 17 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_STEELIX_1:: @ 83076D4 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_SNUBBULL_1:: @ 83076F0 + obj_image_anim_frame 1, 32 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_GRANBULL_1:: @ 83076FC + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_QWILFISH_1:: @ 8307708 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_SCIZOR_1:: @ 8307728 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SHUCKLE_1:: @ 8307734 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_HERACROSS_1:: @ 8307744 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HERACROSS_2:: @ 830775C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SNEASEL_1:: @ 8307770 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_TEDDIURSA_1:: @ 830777C + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_URSARING_1:: @ 8307788 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SLUGMA_1:: @ 8307794 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SLUGMA_2:: @ 83077AC + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGCARGO_1:: @ 83077C0 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGCARGO_2:: @ 83077D8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SWINUB_1:: @ 83077EC + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PILOSWINE_1:: @ 8307800 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CORSOLA_1:: @ 8307814 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_CORSOLA_2:: @ 830782C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_REMORAID_1:: @ 8307840 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_OCTILLERY_1:: @ 8307854 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_DELIBIRD_1:: @ 8307868 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MANTINE_1:: @ 830787C + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 40 + obj_image_anim_end + + .align 2 +gAnimCmd_SKARMORY_1:: @ 8307890 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SKARMORY_2:: @ 83078A8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_HOUNDOUR_1:: @ 83078BC + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HOUNDOOM_1:: @ 83078D0 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_KINGDRA_1:: @ 83078DC + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KINGDRA_2:: @ 83078F4 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_PHANPY_1:: @ 8307908 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_PHANPY_2:: @ 8307928 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_DONPHAN_1:: @ 830793C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_DONPHAN_2:: @ 830795C + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_PORYGON2_1:: @ 8307970 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_STANTLER_1:: @ 8307988 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SMEARGLE_1:: @ 8307994 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TYROGUE_1:: @ 83079A8 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_HITMONTOP_1:: @ 83079B4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2 +gAnimCmd_SMOOCHUM_1:: @ 83079E4 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ELEKID_1:: @ 8307A00 + obj_image_anim_frame 1, 50 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_MAGBY_1:: @ 8307A10 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MILTANK_1:: @ 8307A30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_BLISSEY_1:: @ 8307A3C + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_RAIKOU_1:: @ 8307A48 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_ENTEI_1:: @ 8307A5C + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SUICUNE_1:: @ 8307A68 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_LARVITAR_1:: @ 8307A74 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_PUPITAR_1:: @ 8307A88 + obj_image_anim_frame 1, 40 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TYRANITAR_1:: @ 8307A94 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LUGIA_1:: @ 8307AA8 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_HO_OH_1:: @ 8307AB4 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CELEBI_1:: @ 8307AC0 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_OLD_UNOWN_B_1:: @ 8307AD4 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_TREECKO_1:: @ 8307AE4 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_GROVYLE_1:: @ 8307AFC + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_SCEPTILE_1:: @ 8307B14 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 26 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_TORCHIC_1:: @ 8307B24 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_COMBUSKEN_1:: @ 8307B44 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 12 + obj_image_anim_end + + .align 2 +gAnimCmd_BLAZIKEN_1:: @ 8307B54 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_BLAZIKEN_2:: @ 8307B6C + obj_image_anim_frame 0, 1 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_BLAZIKEN_3:: @ 8307B7C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 2, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_BLAZIKEN_4:: @ 8307B88 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MUDKIP_1:: @ 8307B90 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 13 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_MARSHTOMP_1:: @ 8307BA8 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_SWAMPERT_1:: @ 8307BD0 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 18 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_POOCHYENA_1:: @ 8307BE8 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MIGHTYENA_1:: @ 8307BF8 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_ZIGZAGOON_1:: @ 8307C10 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_LINOONE_1:: @ 8307C28 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_end + + .align 2 +gAnimCmd_WURMPLE_1:: @ 8307C40 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SILCOON_1:: @ 8307C50 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SILCOON_2:: @ 8307C60 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_BEAUTIFLY_1:: @ 8307C68 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_end + + .align 2 +gAnimCmd_BEAUTIFLY_2:: @ 8307C90 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_CASCOON_1:: @ 8307C98 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CASCOON_2:: @ 8307CB0 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_DUSTOX_1:: @ 8307CB8 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 4 + obj_image_anim_frame 1, 4 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_DUSTOX_2:: @ 8307CF8 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_LOTAD_1:: @ 8307D00 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 55 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_LOMBRE_1:: @ 8307D10 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_LUDICOLO_1:: @ 8307D28 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_SEEDOT_1:: @ 8307D48 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_NUZLEAF_1:: @ 8307D70 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_SHIFTRY_1:: @ 8307D98 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_NINCADA_1:: @ 8307DA8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_NINJASK_1:: @ 8307DC0 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 33 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 1 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_SHEDINJA_1:: @ 8307E0C + obj_image_anim_frame 0, 33 + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 33 + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_TAILLOW_1:: @ 8307E24 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_SWELLOW_1:: @ 8307E4C + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_SHROOMISH_1:: @ 8307E5C + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_BRELOOM_1:: @ 8307E8C + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 7 + obj_image_anim_end + + .align 2 +gAnimCmd_WINGULL_1:: @ 8307EA4 + obj_image_anim_frame 0, 17 + obj_image_anim_frame 1, 23 + obj_image_anim_frame 0, 13 + obj_image_anim_end + + .align 2 +gAnimCmd_PELIPPER_1:: @ 8307EB4 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 5 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_SURSKIT_1:: @ 8307EDC + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_SURSKIT_2:: @ 8307EF4 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_MASQUERAIN_1:: @ 8307EFC + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_MASQUERAIN_2:: @ 8307F24 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_WAILMER_1:: @ 8307F2C + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_WAILORD_1:: @ 8307F4C + obj_image_anim_frame 0, 26 + obj_image_anim_frame 1, 48 + obj_image_anim_frame 0, 33 + obj_image_anim_end + + .align 2 +gAnimCmd_SKITTY_1:: @ 8307F5C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 35 + obj_image_anim_frame 0, 9 + obj_image_anim_end + + .align 2 +gAnimCmd_DELCATTY_1:: @ 8307F6C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 46 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KECLEON_1:: @ 8307F7C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_BALTOY_1:: @ 8307F94 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_CLAYDOL_1:: @ 8307FB4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_NOSEPASS_1:: @ 8307FD4 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 27 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 27 + obj_image_anim_frame 0, 27 + obj_image_anim_frame 1, 27 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_TORKOAL_1:: @ 8307FF4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SABLEYE_1:: @ 830800C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_BARBOACH_1:: @ 8308024 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_WHISCASH_1:: @ 830805C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_LUVDISC_1:: @ 8308094 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_CORPHISH_1:: @ 83080AC + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_CRAWDAUNT_1:: @ 83080CC + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_FEEBAS_1:: @ 83080E4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_MILOTIC_1:: @ 8308104 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_CARVANHA_1:: @ 8308124 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_SHARPEDO_1:: @ 830814C + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_TRAPINCH_1:: @ 8308174 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_VIBRAVA_1:: @ 830818C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_FLYGON_1:: @ 83081AC + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_MAKUHITA_1:: @ 83081CC + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 7 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_HARIYAMA_1:: @ 83081F4 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_ELECTRIKE_1:: @ 8308208 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 17 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_MANECTRIC_1:: @ 8308220 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 3 + obj_image_anim_end + + .align 2 +gAnimCmd_NUMEL_1:: @ 8308238 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 40 + obj_image_anim_end + + .align 2 +gAnimCmd_CAMERUPT_1:: @ 8308250 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SPHEAL_1:: @ 8308270 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 43 + obj_image_anim_frame 1, 60 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SEALEO_1:: @ 8308294 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_WALREIN_1:: @ 83082AC + obj_image_anim_frame 0, 2 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_CACNEA_1:: @ 83082C4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_CACTURNE_1:: @ 83082F4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SNORUNT_1:: @ 830830C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_GLALIE_1:: @ 8308324 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_LUNATONE_1:: @ 830833C + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_LUNATONE_2:: @ 8308354 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_SOLROCK_1:: @ 8308368 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SOLROCK_2:: @ 8308380 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_AZURILL_1:: @ 8308394 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 12 + obj_image_anim_frame 0, 12 + obj_image_anim_end + + .align 2 +gAnimCmd_SPOINK_1:: @ 83083B4 + obj_image_anim_frame 0, 5 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GRUMPIG_1:: @ 83083E4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_PLUSLE_1:: @ 83083FC + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MINUN_1:: @ 8308414 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MAWILE_1:: @ 830842C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_MEDITITE_1:: @ 830844C + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 2 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_MEDICHAM_1:: @ 830845C + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_SWABLU_1:: @ 830847C + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_SWABLU_2:: @ 830849C + obj_image_anim_frame 0, 1 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 2, 8 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 2, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_ALTARIA_1:: @ 83084B8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ALTARIA_2:: @ 83084D0 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_WYNAUT_1:: @ 83084E4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_DUSKULL_1:: @ 83084FC + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_DUSCLOPS_1:: @ 8308514 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ROSELIA_1:: @ 830852C + obj_image_anim_frame 0, 18 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_SLAKOTH_1:: @ 830853C + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_VIGOROTH_1:: @ 8308558 + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 13 + obj_image_anim_frame 1, 7 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_SLAKING_1:: @ 8308578 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_end + + .align 2 +gAnimCmd_GULPIN_1:: @ 8308598 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 14 + obj_image_anim_frame 1, 14 + obj_image_anim_frame 0, 4 + obj_image_anim_end + + .align 2 +gAnimCmd_SWALOT_1:: @ 83085B0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 30 + obj_image_anim_end + + .align 2 +gAnimCmd_TROPIUS_1:: @ 83085C4 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_WHISMUR_1:: @ 83085DC + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 33 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_end + + .align 2 +gAnimCmd_LOUDRED_1:: @ 8308608 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 9 + obj_image_anim_frame 0, 33 + obj_image_anim_end + + .align 2 +gAnimCmd_EXPLOUD_1:: @ 8308620 + obj_image_anim_frame 0, 9 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 9 + obj_image_anim_end + + .align 2 +gAnimCmd_CLAMPERL_1:: @ 8308630 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_HUNTAIL_1:: @ 8308648 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_GOREBYSS_1:: @ 8308660 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ABSOL_1:: @ 8308678 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SHUPPET_1:: @ 8308690 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_BANETTE_1:: @ 83086B0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SEVIPER_1:: @ 83086D0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_ZANGOOSE_1:: @ 83086F0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 50 + obj_image_anim_end + + .align 2 +gAnimCmd_RELICANTH_1:: @ 8308710 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ARON_1:: @ 8308728 + obj_image_anim_frame 0, 33 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 33 + obj_image_anim_frame 1, 33 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_LAIRON_1:: @ 8308740 + obj_image_anim_frame 0, 12 + obj_image_anim_frame 1, 29 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 29 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_AGGRON_1:: @ 8308758 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 44 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_CASTFORM_0:: @ 8308768 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_CASTFORM_1:: @ 8308770 + obj_image_anim_frame 1, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_CASTFORM_2:: @ 8308778 + obj_image_anim_frame 2, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_CASTFORM_3:: @ 8308780 + obj_image_anim_frame 3, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_VOLBEAT_1:: @ 8308788 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 11 + obj_image_anim_frame 0, 5 + obj_image_anim_end + + .align 2 +gAnimCmd_ILLUMISE_1:: @ 83087A8 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 22 + obj_image_anim_frame 0, 11 + obj_image_anim_end + + .align 2 +gAnimCmd_LILEEP_1:: @ 83087C0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_CRADILY_1:: @ 83087D8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ANORITH_1:: @ 83087F8 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_ARMALDO_1:: @ 8308818 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_RALTS_1:: @ 8308830 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 25 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_KIRLIA_1:: @ 8308840 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 39 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GARDEVOIR_1:: @ 8308850 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 3 + obj_image_anim_frame 1, 3 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_BAGON_1:: @ 8308888 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SHELGON_1:: @ 83088A0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_SALAMENCE_1:: @ 83088B8 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_BELDUM_1:: @ 83088D0 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_METANG_1:: @ 83088E8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 8 + obj_image_anim_end + + .align 2 +gAnimCmd_METAGROSS_1:: @ 8308900 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_end + + .align 2 +gAnimCmd_REGIROCK_1:: @ 8308918 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_REGIROCK_2:: @ 8308930 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_REGICE_1:: @ 8308944 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 18 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_REGISTEEL_1:: @ 830895C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_REGISTEEL_2:: @ 8308974 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_KYOGRE_1:: @ 8308988 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_KYOGRE_2:: @ 83089A0 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_GROUDON_1:: @ 83089B4 + obj_image_anim_frame 0, 11 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 20 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_GROUDON_2:: @ 83089CC + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_RAYQUAZA_1:: @ 83089E0 + obj_image_anim_frame 0, 1 + obj_image_anim_frame 1, 8 + obj_image_anim_frame 0, 22 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 0, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_RAYQUAZA_2:: @ 83089F8 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_LATIAS_1:: @ 8308A0C + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LATIAS_2:: @ 8308A24 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_LATIOS_1:: @ 8308A38 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_LATIOS_2:: @ 8308A50 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_JIRACHI_1:: @ 8308A64 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_frame 1, 10 + obj_image_anim_frame 0, 10 + obj_image_anim_end + + .align 2 +gAnimCmd_JIRACHI_2:: @ 8308A90 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_DEOXYS_1:: @ 8308AA4 + obj_image_anim_frame 0, 16 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 26 + obj_image_anim_frame 1, 16 + obj_image_anim_frame 0, 16 + obj_image_anim_end + + .align 2 +gAnimCmd_DEOXYS_2:: @ 8308ABC + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_frame 0, 20 + obj_image_anim_frame 2, 20 + obj_image_anim_end + + .align 2 +gAnimCmd_CHIMECHO_1:: @ 8308AD0 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_frame 1, 15 + obj_image_anim_frame 0, 15 + obj_image_anim_end + + .align 2 +gAnimCmd_EGG_1:: @ 8308AF8 + obj_image_anim_frame 0, 6 + obj_image_anim_frame 1, 6 + obj_image_anim_frame 2, 6 + obj_image_anim_frame 3, 6 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_B_1:: @ 8308B0C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_C_1:: @ 8308B1C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_D_1:: @ 8308B2C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_E_1:: @ 8308B3C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_F_1:: @ 8308B4C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_G_1:: @ 8308B5C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_H_1:: @ 8308B6C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_I_1:: @ 8308B7C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_J_1:: @ 8308B8C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_K_1:: @ 8308B9C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_L_1:: @ 8308BAC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_M_1:: @ 8308BBC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_N_1:: @ 8308BCC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_O_1:: @ 8308BDC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_P_1:: @ 8308BEC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_Q_1:: @ 8308BFC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_R_1:: @ 8308C0C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_S_1:: @ 8308C1C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_T_1:: @ 8308C2C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_U_1:: @ 8308C3C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_V_1:: @ 8308C4C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_W_1:: @ 8308C5C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_X_1:: @ 8308C6C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_Y_1:: @ 8308C7C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_Z_1:: @ 8308C8C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_EMARK_1:: @ 8308C9C + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnimCmd_UNOWN_QMARK_1:: @ 8308CAC + obj_image_anim_frame 0, 30 + obj_image_anim_frame 1, 30 + obj_image_anim_frame 0, 1 + obj_image_anim_end + + .align 2 +gAnims_NONE:: @ 8308CBC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NONE_1 + + .align 2 +gAnims_BULBASAUR:: @ 8308CC4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BULBASAUR_1 + + .align 2 +gAnims_IVYSAUR:: @ 8308CCC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_IVYSAUR_1 + + .align 2 +gAnims_VENUSAUR:: @ 8308CD4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VENUSAUR_1 + + .align 2 +gAnims_CHARMANDER:: @ 8308CDC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHARMANDER_1 + + .align 2 +gAnims_CHARMELEON:: @ 8308CE4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHARMELEON_1 + + .align 2 +gAnims_CHARIZARD:: @ 8308CEC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHARIZARD_1 + + .align 2 +gAnims_SQUIRTLE:: @ 8308CF4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SQUIRTLE_1 + + .align 2 +gAnims_WARTORTLE:: @ 8308CFC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WARTORTLE_1 + + .align 2 +gAnims_BLASTOISE:: @ 8308D04 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BLASTOISE_1 + + .align 2 +gAnims_CATERPIE:: @ 8308D0C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CATERPIE_1 + + .align 2 +gAnims_METAPOD:: @ 8308D14 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_METAPOD_1 + + .align 2 +gAnims_BUTTERFREE:: @ 8308D1C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BUTTERFREE_1 + + .align 2 +gAnims_WEEDLE:: @ 8308D24 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WEEDLE_1 + + .align 2 +gAnims_KAKUNA:: @ 8308D2C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KAKUNA_1 + + .align 2 +gAnims_BEEDRILL:: @ 8308D34 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BEEDRILL_1 + + .align 2 +gAnims_PIDGEY:: @ 8308D3C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PIDGEY_1 + + .align 2 +gAnims_PIDGEOTTO:: @ 8308D44 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PIDGEOTTO_1 + + .align 2 +gAnims_PIDGEOT:: @ 8308D4C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PIDGEOT_1 + + .align 2 +gAnims_RATTATA:: @ 8308D54 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RATTATA_1 + + .align 2 +gAnims_RATICATE:: @ 8308D5C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RATICATE_1 + + .align 2 +gAnims_SPEAROW:: @ 8308D64 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SPEAROW_1 + + .align 2 +gAnims_FEAROW:: @ 8308D6C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FEAROW_1 + + .align 2 +gAnims_EKANS:: @ 8308D74 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EKANS_1 + + .align 2 +gAnims_ARBOK:: @ 8308D7C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARBOK_1 + + .align 2 +gAnims_PIKACHU:: @ 8308D84 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PIKACHU_1 + .4byte gAnimCmd_PIKACHU_2 + + .align 2 +gAnims_RAICHU:: @ 8308D90 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RAICHU_1 + .4byte gAnimCmd_RAICHU_2 + + .align 2 +gAnims_SANDSHREW:: @ 8308D9C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SANDSHREW_1 + .4byte gAnimCmd_SANDSHREW_2 + + .align 2 +gAnims_SANDSLASH:: @ 8308DA8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SANDSLASH_1 + .4byte gAnimCmd_SANDSLASH_2 + + .align 2 +gAnims_NIDORAN_F:: @ 8308DB4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDORAN_F_1 + + .align 2 +gAnims_NIDORINA:: @ 8308DBC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDORINA_1 + + .align 2 +gAnims_NIDOQUEEN:: @ 8308DC4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDOQUEEN_1 + + .align 2 +gAnims_NIDORAN_M:: @ 8308DCC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDORAN_M_1 + + .align 2 +gAnims_NIDORINO:: @ 8308DD4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDORINO_1 + + .align 2 +gAnims_NIDOKING:: @ 8308DDC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NIDOKING_1 + + .align 2 +gAnims_CLEFAIRY:: @ 8308DE4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLEFAIRY_1 + + .align 2 +gAnims_CLEFABLE:: @ 8308DEC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLEFABLE_1 + + .align 2 +gAnims_VULPIX:: @ 8308DF4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VULPIX_1 + .4byte gAnimCmd_VULPIX_2 + + .align 2 +gAnims_NINETALES:: @ 8308E00 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NINETALES_1 + .4byte gAnimCmd_NINETALES_2 + + .align 2 +gAnims_JIGGLYPUFF:: @ 8308E0C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_JIGGLYPUFF_1 + .4byte gAnimCmd_JIGGLYPUFF_2 + + .align 2 +gAnims_WIGGLYTUFF:: @ 8308E18 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WIGGLYTUFF_1 + .4byte gAnimCmd_WIGGLYTUFF_2 + + .align 2 +gAnims_ZUBAT:: @ 8308E24 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ZUBAT_1 + + .align 2 +gAnims_GOLBAT:: @ 8308E2C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GOLBAT_1 + + .align 2 +gAnims_ODDISH:: @ 8308E34 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ODDISH_1 + + .align 2 +gAnims_GLOOM:: @ 8308E3C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GLOOM_1 + + .align 2 +gAnims_VILEPLUME:: @ 8308E44 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VILEPLUME_1 + + .align 2 +gAnims_PARAS:: @ 8308E4C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PARAS_1 + + .align 2 +gAnims_PARASECT:: @ 8308E54 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PARASECT_1 + + .align 2 +gAnims_VENONAT:: @ 8308E5C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VENONAT_1 + + .align 2 +gAnims_VENOMOTH:: @ 8308E64 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VENOMOTH_1 + + .align 2 +gAnims_DIGLETT:: @ 8308E6C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DIGLETT_1 + + .align 2 +gAnims_DUGTRIO:: @ 8308E74 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DUGTRIO_1 + + .align 2 +gAnims_MEOWTH:: @ 8308E7C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEOWTH_1 + + .align 2 +gAnims_PERSIAN:: @ 8308E84 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PERSIAN_1 + + .align 2 +gAnims_PSYDUCK:: @ 8308E8C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PSYDUCK_1 + .4byte gAnimCmd_PSYDUCK_2 + + .align 2 +gAnims_GOLDUCK:: @ 8308E98 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GOLDUCK_1 + .4byte gAnimCmd_GOLDUCK_2 + + .align 2 +gAnims_MANKEY:: @ 8308EA4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MANKEY_1 + + .align 2 +gAnims_PRIMEAPE:: @ 8308EAC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PRIMEAPE_1 + + .align 2 +gAnims_GROWLITHE:: @ 8308EB4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GROWLITHE_1 + + .align 2 +gAnims_ARCANINE:: @ 8308EBC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARCANINE_1 + + .align 2 +gAnims_POLIWAG:: @ 8308EC4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_POLIWAG_1 + + .align 2 +gAnims_POLIWHIRL:: @ 8308ECC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_POLIWHIRL_1 + + .align 2 +gAnims_POLIWRATH:: @ 8308ED4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_POLIWRATH_1 + + .align 2 +gAnims_ABRA:: @ 8308EDC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ABRA_1 + + .align 2 +gAnims_KADABRA:: @ 8308EE4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KADABRA_1 + + .align 2 +gAnims_ALAKAZAM:: @ 8308EEC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ALAKAZAM_1 + + .align 2 +gAnims_MACHOP:: @ 8308EF4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MACHOP_1 + + .align 2 +gAnims_MACHOKE:: @ 8308EFC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MACHOKE_1 + + .align 2 +gAnims_MACHAMP:: @ 8308F04 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MACHAMP_1 + + .align 2 +gAnims_BELLSPROUT:: @ 8308F0C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BELLSPROUT_1 + + .align 2 +gAnims_WEEPINBELL:: @ 8308F14 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WEEPINBELL_1 + + .align 2 +gAnims_VICTREEBEL:: @ 8308F1C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VICTREEBEL_1 + + .align 2 +gAnims_TENTACOOL:: @ 8308F24 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TENTACOOL_1 + + .align 2 +gAnims_TENTACRUEL:: @ 8308F2C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TENTACRUEL_1 + + .align 2 +gAnims_GEODUDE:: @ 8308F34 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GEODUDE_1 + + .align 2 +gAnims_GRAVELER:: @ 8308F3C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GRAVELER_1 + + .align 2 +gAnims_GOLEM:: @ 8308F44 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GOLEM_1 + + .align 2 +gAnims_PONYTA:: @ 8308F4C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PONYTA_1 + + .align 2 +gAnims_RAPIDASH:: @ 8308F54 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RAPIDASH_1 + + .align 2 +gAnims_SLOWPOKE:: @ 8308F5C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLOWPOKE_1 + + .align 2 +gAnims_SLOWBRO:: @ 8308F64 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLOWBRO_1 + + .align 2 +gAnims_MAGNEMITE:: @ 8308F6C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGNEMITE_1 + + .align 2 +gAnims_MAGNETON:: @ 8308F74 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGNETON_1 + + .align 2 +gAnims_FARFETCHD:: @ 8308F7C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FARFETCHD_1 + + .align 2 +gAnims_DODUO:: @ 8308F84 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DODUO_1 + + .align 2 +gAnims_DODRIO:: @ 8308F8C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DODRIO_1 + + .align 2 +gAnims_SEEL:: @ 8308F94 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEEL_1 + + .align 2 +gAnims_DEWGONG:: @ 8308F9C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DEWGONG_1 + + .align 2 +gAnims_GRIMER:: @ 8308FA4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GRIMER_1 + .4byte gAnimCmd_GRIMER_2 + + .align 2 +gAnims_MUK:: @ 8308FB0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MUK_1 + .4byte gAnimCmd_MUK_2 + + .align 2 +gAnims_SHELLDER:: @ 8308FBC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHELLDER_1 + + .align 2 +gAnims_CLOYSTER:: @ 8308FC4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLOYSTER_1 + + .align 2 +gAnims_GASTLY:: @ 8308FCC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GASTLY_1 + + .align 2 +gAnims_HAUNTER:: @ 8308FD4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HAUNTER_1 + + .align 2 +gAnims_GENGAR:: @ 8308FDC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GENGAR_1 + + .align 2 +gAnims_ONIX:: @ 8308FE4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ONIX_1 + + .align 2 +gAnims_DROWZEE:: @ 8308FEC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DROWZEE_1 + + .align 2 +gAnims_HYPNO:: @ 8308FF4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HYPNO_1 + + .align 2 +gAnims_KRABBY:: @ 8308FFC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KRABBY_1 + + .align 2 +gAnims_KINGLER:: @ 8309004 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KINGLER_1 + + .align 2 +gAnims_VOLTORB:: @ 830900C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VOLTORB_1 + + .align 2 +gAnims_ELECTRODE:: @ 8309014 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ELECTRODE_1 + + .align 2 +gAnims_EXEGGCUTE:: @ 830901C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EXEGGCUTE_1 + + .align 2 +gAnims_EXEGGUTOR:: @ 8309024 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EXEGGUTOR_1 + + .align 2 +gAnims_CUBONE:: @ 830902C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CUBONE_1 + + .align 2 +gAnims_MAROWAK:: @ 8309034 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAROWAK_1 + + .align 2 +gAnims_HITMONLEE:: @ 830903C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HITMONLEE_1 + + .align 2 +gAnims_HITMONCHAN:: @ 8309044 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HITMONCHAN_1 + + .align 2 +gAnims_LICKITUNG:: @ 830904C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LICKITUNG_1 + + .align 2 +gAnims_KOFFING:: @ 8309054 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KOFFING_1 + .4byte gAnimCmd_KOFFING_2 + + .align 2 +gAnims_WEEZING:: @ 8309060 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WEEZING_1 + .4byte gAnimCmd_WEEZING_2 + + .align 2 +gAnims_RHYHORN:: @ 830906C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RHYHORN_1 + .4byte gAnimCmd_RHYHORN_2 + + .align 2 +gAnims_RHYDON:: @ 8309078 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RHYDON_1 + .4byte gAnimCmd_RHYDON_2 + + .align 2 +gAnims_CHANSEY:: @ 8309084 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHANSEY_1 + + .align 2 +gAnims_TANGELA:: @ 830908C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TANGELA_1 + + .align 2 +gAnims_KANGASKHAN:: @ 8309094 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KANGASKHAN_1 + + .align 2 +gAnims_HORSEA:: @ 830909C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HORSEA_1 + .4byte gAnimCmd_HORSEA_2 + + .align 2 +gAnims_SEADRA:: @ 83090A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEADRA_1 + .4byte gAnimCmd_SEADRA_2 + + .align 2 +gAnims_GOLDEEN:: @ 83090B4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GOLDEEN_1 + + .align 2 +gAnims_SEAKING:: @ 83090BC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEAKING_1 + + .align 2 +gAnims_STARYU:: @ 83090C4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_STARYU_1 + .4byte gAnimCmd_STARYU_2 + + .align 2 +gAnims_STARMIE:: @ 83090D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_STARMIE_1 + .4byte gAnimCmd_STARMIE_2 + + .align 2 +gAnims_MR_MIME:: @ 83090DC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MR_MIME_1 + + .align 2 +gAnims_SCYTHER:: @ 83090E4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SCYTHER_1 + + .align 2 +gAnims_JYNX:: @ 83090EC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_JYNX_1 + + .align 2 +gAnims_ELECTABUZZ:: @ 83090F4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ELECTABUZZ_1 + + .align 2 +gAnims_MAGMAR:: @ 83090FC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGMAR_1 + + .align 2 +gAnims_PINSIR:: @ 8309104 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PINSIR_1 + .4byte gAnimCmd_PINSIR_2 + + .align 2 +gAnims_TAUROS:: @ 8309110 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TAUROS_1 + + .align 2 +gAnims_MAGIKARP:: @ 8309118 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGIKARP_1 + + .align 2 +gAnims_GYARADOS:: @ 8309120 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GYARADOS_1 + + .align 2 +gAnims_LAPRAS:: @ 8309128 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LAPRAS_1 + + .align 2 +gAnims_DITTO:: @ 8309130 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DITTO_1 + + .align 2 +gAnims_EEVEE:: @ 8309138 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EEVEE_1 + + .align 2 +gAnims_VAPOREON:: @ 8309140 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VAPOREON_1 + + .align 2 +gAnims_JOLTEON:: @ 8309148 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_JOLTEON_1 + + .align 2 +gAnims_FLAREON:: @ 8309150 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FLAREON_1 + + .align 2 +gAnims_PORYGON:: @ 8309158 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PORYGON_1 + + .align 2 +gAnims_OMANYTE:: @ 8309160 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_OMANYTE_1 + + .align 2 +gAnims_OMASTAR:: @ 8309168 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_OMASTAR_1 + + .align 2 +gAnims_KABUTO:: @ 8309170 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KABUTO_1 + + .align 2 +gAnims_KABUTOPS:: @ 8309178 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KABUTOPS_1 + + .align 2 +gAnims_AERODACTYL:: @ 8309180 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AERODACTYL_1 + + .align 2 +gAnims_SNORLAX:: @ 8309188 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SNORLAX_1 + + .align 2 +gAnims_ARTICUNO:: @ 8309190 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARTICUNO_1 + + .align 2 +gAnims_ZAPDOS:: @ 8309198 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ZAPDOS_1 + + .align 2 +gAnims_MOLTRES:: @ 83091A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MOLTRES_1 + + .align 2 +gAnims_DRATINI:: @ 83091A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DRATINI_1 + + .align 2 +gAnims_DRAGONAIR:: @ 83091B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DRAGONAIR_1 + + .align 2 +gAnims_DRAGONITE:: @ 83091B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DRAGONITE_1 + + .align 2 +gAnims_MEWTWO:: @ 83091C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEWTWO_1 + + .align 2 +gAnims_MEW:: @ 83091C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEW_1 + + .align 2 +gAnims_CHIKORITA:: @ 83091D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHIKORITA_1 + + .align 2 +gAnims_BAYLEEF:: @ 83091D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BAYLEEF_1 + + .align 2 +gAnims_MEGANIUM:: @ 83091E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEGANIUM_1 + + .align 2 +gAnims_CYNDAQUIL:: @ 83091E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CYNDAQUIL_1 + + .align 2 +gAnims_QUILAVA:: @ 83091F0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_QUILAVA_1 + + .align 2 +gAnims_TYPHLOSION:: @ 83091F8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TYPHLOSION_1 + + .align 2 +gAnims_TOTODILE:: @ 8309200 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TOTODILE_1 + + .align 2 +gAnims_CROCONAW:: @ 8309208 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CROCONAW_1 + + .align 2 +gAnims_FERALIGATR:: @ 8309210 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FERALIGATR_1 + + .align 2 +gAnims_SENTRET:: @ 8309218 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SENTRET_1 + + .align 2 +gAnims_FURRET:: @ 8309220 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FURRET_1 + + .align 2 +gAnims_HOOTHOOT:: @ 8309228 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HOOTHOOT_1 + + .align 2 +gAnims_NOCTOWL:: @ 8309230 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NOCTOWL_1 + + .align 2 +gAnims_LEDYBA:: @ 8309238 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LEDYBA_1 + + .align 2 +gAnims_LEDIAN:: @ 8309240 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LEDIAN_1 + + .align 2 +gAnims_SPINARAK:: @ 8309248 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SPINARAK_1 + + .align 2 +gAnims_ARIADOS:: @ 8309250 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARIADOS_1 + + .align 2 +gAnims_CROBAT:: @ 8309258 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CROBAT_1 + + .align 2 +gAnims_CHINCHOU:: @ 8309260 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHINCHOU_1 + .4byte gAnimCmd_CHINCHOU_2 + + .align 2 +gAnims_LANTURN:: @ 830926C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LANTURN_1 + .4byte gAnimCmd_LANTURN_2 + + .align 2 +gAnims_PICHU:: @ 8309278 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PICHU_1 + .4byte gAnimCmd_PICHU_2 + + .align 2 +gAnims_CLEFFA:: @ 8309284 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLEFFA_1 + + .align 2 +gAnims_IGGLYBUFF:: @ 830928C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_IGGLYBUFF_1 + .4byte gAnimCmd_IGGLYBUFF_2 + + .align 2 +gAnims_TOGEPI:: @ 8309298 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TOGEPI_1 + + .align 2 +gAnims_TOGETIC:: @ 83092A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TOGETIC_1 + + .align 2 +gAnims_NATU:: @ 83092A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NATU_1 + .4byte gAnimCmd_NATU_2 + + .align 2 +gAnims_XATU:: @ 83092B4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_XATU_1 + .4byte gAnimCmd_XATU_2 + + .align 2 +gAnims_MAREEP:: @ 83092C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAREEP_1 + + .align 2 +gAnims_FLAAFFY:: @ 83092C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FLAAFFY_1 + + .align 2 +gAnims_AMPHAROS:: @ 83092D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AMPHAROS_1 + + .align 2 +gAnims_BELLOSSOM:: @ 83092D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BELLOSSOM_1 + + .align 2 +gAnims_MARILL:: @ 83092E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MARILL_1 + + .align 2 +gAnims_AZUMARILL:: @ 83092E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AZUMARILL_1 + + .align 2 +gAnims_SUDOWOODO:: @ 83092F0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SUDOWOODO_1 + + .align 2 +gAnims_POLITOED:: @ 83092F8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_POLITOED_1 + + .align 2 +gAnims_HOPPIP:: @ 8309300 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HOPPIP_1 + + .align 2 +gAnims_SKIPLOOM:: @ 8309308 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SKIPLOOM_1 + + .align 2 +gAnims_JUMPLUFF:: @ 8309310 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_JUMPLUFF_1 + + .align 2 +gAnims_AIPOM:: @ 8309318 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AIPOM_1 + + .align 2 +gAnims_SUNKERN:: @ 8309320 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SUNKERN_1 + + .align 2 +gAnims_SUNFLORA:: @ 8309328 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SUNFLORA_1 + + .align 2 +gAnims_YANMA:: @ 8309330 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_YANMA_1 + + .align 2 +gAnims_WOOPER:: @ 8309338 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WOOPER_1 + + .align 2 +gAnims_QUAGSIRE:: @ 8309340 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_QUAGSIRE_1 + + .align 2 +gAnims_ESPEON:: @ 8309348 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ESPEON_1 + + .align 2 +gAnims_UMBREON:: @ 8309350 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UMBREON_1 + + .align 2 +gAnims_MURKROW:: @ 8309358 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MURKROW_1 + + .align 2 +gAnims_SLOWKING:: @ 8309360 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLOWKING_1 + + .align 2 +gAnims_MISDREAVUS:: @ 8309368 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MISDREAVUS_1 + + .align 2 +gAnims_UNOWN:: @ 8309370 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_1 + + .align 2 +gAnims_WOBBUFFET:: @ 8309378 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WOBBUFFET_1 + .4byte gAnimCmd_WOBBUFFET_2 + + .align 2 +gAnims_GIRAFARIG:: @ 8309384 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GIRAFARIG_1 + .4byte gAnimCmd_GIRAFARIG_2 + + .align 2 +gAnims_PINECO:: @ 8309390 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PINECO_1 + + .align 2 +gAnims_FORRETRESS:: @ 8309398 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FORRETRESS_1 + + .align 2 +gAnims_DUNSPARCE:: @ 83093A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DUNSPARCE_1 + + .align 2 +gAnims_GLIGAR:: @ 83093A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GLIGAR_1 + + .align 2 +gAnims_STEELIX:: @ 83093B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_STEELIX_1 + + .align 2 +gAnims_SNUBBULL:: @ 83093B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SNUBBULL_1 + + .align 2 +gAnims_GRANBULL:: @ 83093C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GRANBULL_1 + + .align 2 +gAnims_QWILFISH:: @ 83093C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_QWILFISH_1 + + .align 2 +gAnims_SCIZOR:: @ 83093D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SCIZOR_1 + + .align 2 +gAnims_SHUCKLE:: @ 83093D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHUCKLE_1 + + .align 2 +gAnims_HERACROSS:: @ 83093E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HERACROSS_1 + .4byte gAnimCmd_HERACROSS_2 + + .align 2 +gAnims_SNEASEL:: @ 83093EC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SNEASEL_1 + + .align 2 +gAnims_TEDDIURSA:: @ 83093F4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TEDDIURSA_1 + + .align 2 +gAnims_URSARING:: @ 83093FC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_URSARING_1 + + .align 2 +gAnims_SLUGMA:: @ 8309404 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLUGMA_1 + .4byte gAnimCmd_SLUGMA_2 + + .align 2 +gAnims_MAGCARGO:: @ 8309410 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGCARGO_1 + .4byte gAnimCmd_MAGCARGO_2 + + .align 2 +gAnims_SWINUB:: @ 830941C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SWINUB_1 + + .align 2 +gAnims_PILOSWINE:: @ 8309424 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PILOSWINE_1 + + .align 2 +gAnims_CORSOLA:: @ 830942C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CORSOLA_1 + .4byte gAnimCmd_CORSOLA_2 + + .align 2 +gAnims_REMORAID:: @ 8309438 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_REMORAID_1 + + .align 2 +gAnims_OCTILLERY:: @ 8309440 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_OCTILLERY_1 + + .align 2 +gAnims_DELIBIRD:: @ 8309448 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DELIBIRD_1 + + .align 2 +gAnims_MANTINE:: @ 8309450 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MANTINE_1 + + .align 2 +gAnims_SKARMORY:: @ 8309458 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SKARMORY_1 + .4byte gAnimCmd_SKARMORY_2 + + .align 2 +gAnims_HOUNDOUR:: @ 8309464 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HOUNDOUR_1 + + .align 2 +gAnims_HOUNDOOM:: @ 830946C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HOUNDOOM_1 + + .align 2 +gAnims_KINGDRA:: @ 8309474 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KINGDRA_1 + .4byte gAnimCmd_KINGDRA_2 + + .align 2 +gAnims_PHANPY:: @ 8309480 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PHANPY_1 + .4byte gAnimCmd_PHANPY_2 + + .align 2 +gAnims_DONPHAN:: @ 830948C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DONPHAN_1 + .4byte gAnimCmd_DONPHAN_2 + + .align 2 +gAnims_PORYGON2:: @ 8309498 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PORYGON2_1 + + .align 2 +gAnims_STANTLER:: @ 83094A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_STANTLER_1 + + .align 2 +gAnims_SMEARGLE:: @ 83094A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SMEARGLE_1 + + .align 2 +gAnims_TYROGUE:: @ 83094B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TYROGUE_1 + + .align 2 +gAnims_HITMONTOP:: @ 83094B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HITMONTOP_1 + + .align 2 +gAnims_SMOOCHUM:: @ 83094C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SMOOCHUM_1 + + .align 2 +gAnims_ELEKID:: @ 83094C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ELEKID_1 + + .align 2 +gAnims_MAGBY:: @ 83094D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAGBY_1 + + .align 2 +gAnims_MILTANK:: @ 83094D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MILTANK_1 + + .align 2 +gAnims_BLISSEY:: @ 83094E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BLISSEY_1 + + .align 2 +gAnims_RAIKOU:: @ 83094E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RAIKOU_1 + + .align 2 +gAnims_ENTEI:: @ 83094F0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ENTEI_1 + + .align 2 +gAnims_SUICUNE:: @ 83094F8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SUICUNE_1 + + .align 2 +gAnims_LARVITAR:: @ 8309500 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LARVITAR_1 + + .align 2 +gAnims_PUPITAR:: @ 8309508 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PUPITAR_1 + + .align 2 +gAnims_TYRANITAR:: @ 8309510 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TYRANITAR_1 + + .align 2 +gAnims_LUGIA:: @ 8309518 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LUGIA_1 + + .align 2 +gAnims_HO_OH:: @ 8309520 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HO_OH_1 + + .align 2 +gAnims_CELEBI:: @ 8309528 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CELEBI_1 + + .align 2 +gAnims_OLD_UNOWN_B:: @ 8309530 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_OLD_UNOWN_B_1 + + .align 2 +gAnims_TREECKO:: @ 8309538 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TREECKO_1 + + .align 2 +gAnims_GROVYLE:: @ 8309540 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GROVYLE_1 + + .align 2 +gAnims_SCEPTILE:: @ 8309548 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SCEPTILE_1 + + .align 2 +gAnims_TORCHIC:: @ 8309550 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TORCHIC_1 + + .align 2 +gAnims_COMBUSKEN:: @ 8309558 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_COMBUSKEN_1 + + .align 2 +gAnims_BLAZIKEN:: @ 8309560 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BLAZIKEN_1 + .4byte gAnimCmd_BLAZIKEN_2 + .4byte gAnimCmd_BLAZIKEN_3 + .4byte gAnimCmd_BLAZIKEN_4 + + .align 2 +gAnims_MUDKIP:: @ 8309574 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MUDKIP_1 + + .align 2 +gAnims_MARSHTOMP:: @ 830957C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MARSHTOMP_1 + + .align 2 +gAnims_SWAMPERT:: @ 8309584 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SWAMPERT_1 + + .align 2 +gAnims_POOCHYENA:: @ 830958C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_POOCHYENA_1 + + .align 2 +gAnims_MIGHTYENA:: @ 8309594 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MIGHTYENA_1 + + .align 2 +gAnims_ZIGZAGOON:: @ 830959C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ZIGZAGOON_1 + + .align 2 +gAnims_LINOONE:: @ 83095A4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LINOONE_1 + + .align 2 +gAnims_WURMPLE:: @ 83095AC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WURMPLE_1 + + .align 2 +gAnims_SILCOON:: @ 83095B4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SILCOON_1 + .4byte gAnimCmd_SILCOON_2 + + .align 2 +gAnims_BEAUTIFLY:: @ 83095C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BEAUTIFLY_1 + .4byte gAnimCmd_BEAUTIFLY_2 + + .align 2 +gAnims_CASCOON:: @ 83095CC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CASCOON_1 + .4byte gAnimCmd_CASCOON_2 + + .align 2 +gAnims_DUSTOX:: @ 83095D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DUSTOX_1 + .4byte gAnimCmd_DUSTOX_2 + + .align 2 +gAnims_LOTAD:: @ 83095E4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LOTAD_1 + + .align 2 +gAnims_LOMBRE:: @ 83095EC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LOMBRE_1 + + .align 2 +gAnims_LUDICOLO:: @ 83095F4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LUDICOLO_1 + + .align 2 +gAnims_SEEDOT:: @ 83095FC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEEDOT_1 + + .align 2 +gAnims_NUZLEAF:: @ 8309604 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NUZLEAF_1 + + .align 2 +gAnims_SHIFTRY:: @ 830960C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHIFTRY_1 + + .align 2 +gAnims_NINCADA:: @ 8309614 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NINCADA_1 + + .align 2 +gAnims_NINJASK:: @ 830961C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NINJASK_1 + + .align 2 +gAnims_SHEDINJA:: @ 8309624 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHEDINJA_1 + + .align 2 +gAnims_TAILLOW:: @ 830962C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TAILLOW_1 + + .align 2 +gAnims_SWELLOW:: @ 8309634 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SWELLOW_1 + + .align 2 +gAnims_SHROOMISH:: @ 830963C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHROOMISH_1 + + .align 2 +gAnims_BRELOOM:: @ 8309644 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BRELOOM_1 + + .align 2 +gAnims_SPINDA:: @ 830964C + .4byte gAnimCmd_General_Frame0 + + .align 2 +gAnims_WINGULL:: @ 8309650 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WINGULL_1 + + .align 2 +gAnims_PELIPPER:: @ 8309658 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PELIPPER_1 + + .align 2 +gAnims_SURSKIT:: @ 8309660 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SURSKIT_1 + .4byte gAnimCmd_SURSKIT_2 + + .align 2 +gAnims_MASQUERAIN:: @ 830966C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MASQUERAIN_1 + .4byte gAnimCmd_MASQUERAIN_2 + + .align 2 +gAnims_WAILMER:: @ 8309678 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WAILMER_1 + + .align 2 +gAnims_WAILORD:: @ 8309680 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WAILORD_1 + + .align 2 +gAnims_SKITTY:: @ 8309688 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SKITTY_1 + + .align 2 +gAnims_DELCATTY:: @ 8309690 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DELCATTY_1 + + .align 2 +gAnims_KECLEON:: @ 8309698 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KECLEON_1 + + .align 2 +gAnims_BALTOY:: @ 83096A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BALTOY_1 + + .align 2 +gAnims_CLAYDOL:: @ 83096A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLAYDOL_1 + + .align 2 +gAnims_NOSEPASS:: @ 83096B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NOSEPASS_1 + + .align 2 +gAnims_TORKOAL:: @ 83096B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TORKOAL_1 + + .align 2 +gAnims_SABLEYE:: @ 83096C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SABLEYE_1 + + .align 2 +gAnims_BARBOACH:: @ 83096C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BARBOACH_1 + + .align 2 +gAnims_WHISCASH:: @ 83096D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WHISCASH_1 + + .align 2 +gAnims_LUVDISC:: @ 83096D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LUVDISC_1 + + .align 2 +gAnims_CORPHISH:: @ 83096E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CORPHISH_1 + + .align 2 +gAnims_CRAWDAUNT:: @ 83096E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CRAWDAUNT_1 + + .align 2 +gAnims_FEEBAS:: @ 83096F0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FEEBAS_1 + + .align 2 +gAnims_MILOTIC:: @ 83096F8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MILOTIC_1 + + .align 2 +gAnims_CARVANHA:: @ 8309700 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CARVANHA_1 + + .align 2 +gAnims_SHARPEDO:: @ 8309708 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHARPEDO_1 + + .align 2 +gAnims_TRAPINCH:: @ 8309710 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TRAPINCH_1 + + .align 2 +gAnims_VIBRAVA:: @ 8309718 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VIBRAVA_1 + + .align 2 +gAnims_FLYGON:: @ 8309720 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_FLYGON_1 + + .align 2 +gAnims_MAKUHITA:: @ 8309728 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAKUHITA_1 + + .align 2 +gAnims_HARIYAMA:: @ 8309730 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HARIYAMA_1 + + .align 2 +gAnims_ELECTRIKE:: @ 8309738 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ELECTRIKE_1 + + .align 2 +gAnims_MANECTRIC:: @ 8309740 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MANECTRIC_1 + + .align 2 +gAnims_NUMEL:: @ 8309748 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_NUMEL_1 + + .align 2 +gAnims_CAMERUPT:: @ 8309750 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CAMERUPT_1 + + .align 2 +gAnims_SPHEAL:: @ 8309758 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SPHEAL_1 + + .align 2 +gAnims_SEALEO:: @ 8309760 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEALEO_1 + + .align 2 +gAnims_WALREIN:: @ 8309768 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WALREIN_1 + + .align 2 +gAnims_CACNEA:: @ 8309770 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CACNEA_1 + + .align 2 +gAnims_CACTURNE:: @ 8309778 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CACTURNE_1 + + .align 2 +gAnims_SNORUNT:: @ 8309780 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SNORUNT_1 + + .align 2 +gAnims_GLALIE:: @ 8309788 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GLALIE_1 + + .align 2 +gAnims_LUNATONE:: @ 8309790 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LUNATONE_1 + .4byte gAnimCmd_LUNATONE_2 + + .align 2 +gAnims_SOLROCK:: @ 830979C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SOLROCK_1 + .4byte gAnimCmd_SOLROCK_2 + + .align 2 +gAnims_AZURILL:: @ 83097A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AZURILL_1 + + .align 2 +gAnims_SPOINK:: @ 83097B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SPOINK_1 + + .align 2 +gAnims_GRUMPIG:: @ 83097B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GRUMPIG_1 + + .align 2 +gAnims_PLUSLE:: @ 83097C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_PLUSLE_1 + + .align 2 +gAnims_MINUN:: @ 83097C8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MINUN_1 + + .align 2 +gAnims_MAWILE:: @ 83097D0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MAWILE_1 + + .align 2 +gAnims_MEDITITE:: @ 83097D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEDITITE_1 + + .align 2 +gAnims_MEDICHAM:: @ 83097E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_MEDICHAM_1 + + .align 2 +gAnims_SWABLU:: @ 83097E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SWABLU_1 + .4byte gAnimCmd_SWABLU_2 + + .align 2 +gAnims_ALTARIA:: @ 83097F4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ALTARIA_1 + .4byte gAnimCmd_ALTARIA_2 + + .align 2 +gAnims_WYNAUT:: @ 8309800 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WYNAUT_1 + + .align 2 +gAnims_DUSKULL:: @ 8309808 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DUSKULL_1 + + .align 2 +gAnims_DUSCLOPS:: @ 8309810 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DUSCLOPS_1 + + .align 2 +gAnims_ROSELIA:: @ 8309818 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ROSELIA_1 + + .align 2 +gAnims_SLAKOTH:: @ 8309820 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLAKOTH_1 + + .align 2 +gAnims_VIGOROTH:: @ 8309828 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VIGOROTH_1 + + .align 2 +gAnims_SLAKING:: @ 8309830 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SLAKING_1 + + .align 2 +gAnims_GULPIN:: @ 8309838 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GULPIN_1 + + .align 2 +gAnims_SWALOT:: @ 8309840 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SWALOT_1 + + .align 2 +gAnims_TROPIUS:: @ 8309848 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_TROPIUS_1 + + .align 2 +gAnims_WHISMUR:: @ 8309850 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_WHISMUR_1 + + .align 2 +gAnims_LOUDRED:: @ 8309858 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LOUDRED_1 + + .align 2 +gAnims_EXPLOUD:: @ 8309860 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EXPLOUD_1 + + .align 2 +gAnims_CLAMPERL:: @ 8309868 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CLAMPERL_1 + + .align 2 +gAnims_HUNTAIL:: @ 8309870 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_HUNTAIL_1 + + .align 2 +gAnims_GOREBYSS:: @ 8309878 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GOREBYSS_1 + + .align 2 +gAnims_ABSOL:: @ 8309880 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ABSOL_1 + + .align 2 +gAnims_SHUPPET:: @ 8309888 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHUPPET_1 + + .align 2 +gAnims_BANETTE:: @ 8309890 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BANETTE_1 + + .align 2 +gAnims_SEVIPER:: @ 8309898 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SEVIPER_1 + + .align 2 +gAnims_ZANGOOSE:: @ 83098A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ZANGOOSE_1 + + .align 2 +gAnims_RELICANTH:: @ 83098A8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RELICANTH_1 + + .align 2 +gAnims_ARON:: @ 83098B0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARON_1 + + .align 2 +gAnims_LAIRON:: @ 83098B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LAIRON_1 + + .align 2 +gAnims_AGGRON:: @ 83098C0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_AGGRON_1 + + .align 2 +gAnims_CASTFORM:: @ 83098C8 + .4byte gAnimCmd_CASTFORM_0 + .4byte gAnimCmd_CASTFORM_1 + .4byte gAnimCmd_CASTFORM_2 + .4byte gAnimCmd_CASTFORM_3 + + .align 2 +gAnims_VOLBEAT:: @ 83098D8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_VOLBEAT_1 + + .align 2 +gAnims_ILLUMISE:: @ 83098E0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ILLUMISE_1 + + .align 2 +gAnims_LILEEP:: @ 83098E8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LILEEP_1 + + .align 2 +gAnims_CRADILY:: @ 83098F0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CRADILY_1 + + .align 2 +gAnims_ANORITH:: @ 83098F8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ANORITH_1 + + .align 2 +gAnims_ARMALDO:: @ 8309900 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_ARMALDO_1 + + .align 2 +gAnims_RALTS:: @ 8309908 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RALTS_1 + + .align 2 +gAnims_KIRLIA:: @ 8309910 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KIRLIA_1 + + .align 2 +gAnims_GARDEVOIR:: @ 8309918 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GARDEVOIR_1 + + .align 2 +gAnims_BAGON:: @ 8309920 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BAGON_1 + + .align 2 +gAnims_SHELGON:: @ 8309928 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SHELGON_1 + + .align 2 +gAnims_SALAMENCE:: @ 8309930 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_SALAMENCE_1 + + .align 2 +gAnims_BELDUM:: @ 8309938 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_BELDUM_1 + + .align 2 +gAnims_METANG:: @ 8309940 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_METANG_1 + + .align 2 +gAnims_METAGROSS:: @ 8309948 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_METAGROSS_1 + + .align 2 +gAnims_REGIROCK:: @ 8309950 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_REGIROCK_1 + .4byte gAnimCmd_REGIROCK_2 + + .align 2 +gAnims_REGICE:: @ 830995C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_REGICE_1 + + .align 2 +gAnims_REGISTEEL:: @ 8309964 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_REGISTEEL_1 + .4byte gAnimCmd_REGISTEEL_2 + + .align 2 +gAnims_KYOGRE:: @ 8309970 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_KYOGRE_1 + .4byte gAnimCmd_KYOGRE_2 + + .align 2 +gAnims_GROUDON:: @ 830997C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_GROUDON_1 + .4byte gAnimCmd_GROUDON_2 + + .align 2 +gAnims_RAYQUAZA:: @ 8309988 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_RAYQUAZA_1 + .4byte gAnimCmd_RAYQUAZA_2 + + .align 2 +gAnims_LATIAS:: @ 8309994 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LATIAS_1 + .4byte gAnimCmd_LATIAS_2 + + .align 2 +gAnims_LATIOS:: @ 83099A0 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_LATIOS_1 + .4byte gAnimCmd_LATIOS_2 + + .align 2 +gAnims_JIRACHI:: @ 83099AC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_JIRACHI_1 + .4byte gAnimCmd_JIRACHI_2 + + .align 2 +gAnims_DEOXYS:: @ 83099B8 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_DEOXYS_1 + .4byte gAnimCmd_DEOXYS_2 + + .align 2 +gAnims_CHIMECHO:: @ 83099C4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_CHIMECHO_1 + + .align 2 +gAnims_EGG:: @ 83099CC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_EGG_1 + + .align 2 +gAnims_UNOWN_B:: @ 83099D4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_B_1 + + .align 2 +gAnims_UNOWN_C:: @ 83099DC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_C_1 + + .align 2 +gAnims_UNOWN_D:: @ 83099E4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_D_1 + + .align 2 +gAnims_UNOWN_E:: @ 83099EC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_E_1 + + .align 2 +gAnims_UNOWN_F:: @ 83099F4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_F_1 + + .align 2 +gAnims_UNOWN_G:: @ 83099FC + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_G_1 + + .align 2 +gAnims_UNOWN_H:: @ 8309A04 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_H_1 + + .align 2 +gAnims_UNOWN_I:: @ 8309A0C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_I_1 + + .align 2 +gAnims_UNOWN_J:: @ 8309A14 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_J_1 + + .align 2 +gAnims_UNOWN_K:: @ 8309A1C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_K_1 + + .align 2 +gAnims_UNOWN_L:: @ 8309A24 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_L_1 + + .align 2 +gAnims_UNOWN_M:: @ 8309A2C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_M_1 + + .align 2 +gAnims_UNOWN_N:: @ 8309A34 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_N_1 + + .align 2 +gAnims_UNOWN_O:: @ 8309A3C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_O_1 + + .align 2 +gAnims_UNOWN_P:: @ 8309A44 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_P_1 + + .align 2 +gAnims_UNOWN_Q:: @ 8309A4C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_Q_1 + + .align 2 +gAnims_UNOWN_R:: @ 8309A54 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_R_1 + + .align 2 +gAnims_UNOWN_S:: @ 8309A5C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_S_1 + + .align 2 +gAnims_UNOWN_T:: @ 8309A64 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_T_1 + + .align 2 +gAnims_UNOWN_U:: @ 8309A6C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_U_1 + + .align 2 +gAnims_UNOWN_V:: @ 8309A74 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_V_1 + + .align 2 +gAnims_UNOWN_W:: @ 8309A7C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_W_1 + + .align 2 +gAnims_UNOWN_X:: @ 8309A84 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_X_1 + + .align 2 +gAnims_UNOWN_Y:: @ 8309A8C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_Y_1 + + .align 2 +gAnims_UNOWN_Z:: @ 8309A94 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_Z_1 + + .align 2 +gAnims_UNOWN_EMARK:: @ 8309A9C + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_EMARK_1 + + .align 2 +gAnims_UNOWN_QMARK:: @ 8309AA4 + .4byte gAnimCmd_General_Frame0 + .4byte gAnimCmd_UNOWN_QMARK_1 + + .align 2 +gMonAnimationsSpriteAnimsPtrTable:: @ 8309AAC + .4byte gAnims_NONE + .4byte gAnims_BULBASAUR + .4byte gAnims_IVYSAUR + .4byte gAnims_VENUSAUR + .4byte gAnims_CHARMANDER + .4byte gAnims_CHARMELEON + .4byte gAnims_CHARIZARD + .4byte gAnims_SQUIRTLE + .4byte gAnims_WARTORTLE + .4byte gAnims_BLASTOISE + .4byte gAnims_CATERPIE + .4byte gAnims_METAPOD + .4byte gAnims_BUTTERFREE + .4byte gAnims_WEEDLE + .4byte gAnims_KAKUNA + .4byte gAnims_BEEDRILL + .4byte gAnims_PIDGEY + .4byte gAnims_PIDGEOTTO + .4byte gAnims_PIDGEOT + .4byte gAnims_RATTATA + .4byte gAnims_RATICATE + .4byte gAnims_SPEAROW + .4byte gAnims_FEAROW + .4byte gAnims_EKANS + .4byte gAnims_ARBOK + .4byte gAnims_PIKACHU + .4byte gAnims_RAICHU + .4byte gAnims_SANDSHREW + .4byte gAnims_SANDSLASH + .4byte gAnims_NIDORAN_F + .4byte gAnims_NIDORINA + .4byte gAnims_NIDOQUEEN + .4byte gAnims_NIDORAN_M + .4byte gAnims_NIDORINO + .4byte gAnims_NIDOKING + .4byte gAnims_CLEFAIRY + .4byte gAnims_CLEFABLE + .4byte gAnims_VULPIX + .4byte gAnims_NINETALES + .4byte gAnims_JIGGLYPUFF + .4byte gAnims_WIGGLYTUFF + .4byte gAnims_ZUBAT + .4byte gAnims_GOLBAT + .4byte gAnims_ODDISH + .4byte gAnims_GLOOM + .4byte gAnims_VILEPLUME + .4byte gAnims_PARAS + .4byte gAnims_PARASECT + .4byte gAnims_VENONAT + .4byte gAnims_VENOMOTH + .4byte gAnims_DIGLETT + .4byte gAnims_DUGTRIO + .4byte gAnims_MEOWTH + .4byte gAnims_PERSIAN + .4byte gAnims_PSYDUCK + .4byte gAnims_GOLDUCK + .4byte gAnims_MANKEY + .4byte gAnims_PRIMEAPE + .4byte gAnims_GROWLITHE + .4byte gAnims_ARCANINE + .4byte gAnims_POLIWAG + .4byte gAnims_POLIWHIRL + .4byte gAnims_POLIWRATH + .4byte gAnims_ABRA + .4byte gAnims_KADABRA + .4byte gAnims_ALAKAZAM + .4byte gAnims_MACHOP + .4byte gAnims_MACHOKE + .4byte gAnims_MACHAMP + .4byte gAnims_BELLSPROUT + .4byte gAnims_WEEPINBELL + .4byte gAnims_VICTREEBEL + .4byte gAnims_TENTACOOL + .4byte gAnims_TENTACRUEL + .4byte gAnims_GEODUDE + .4byte gAnims_GRAVELER + .4byte gAnims_GOLEM + .4byte gAnims_PONYTA + .4byte gAnims_RAPIDASH + .4byte gAnims_SLOWPOKE + .4byte gAnims_SLOWBRO + .4byte gAnims_MAGNEMITE + .4byte gAnims_MAGNETON + .4byte gAnims_FARFETCHD + .4byte gAnims_DODUO + .4byte gAnims_DODRIO + .4byte gAnims_SEEL + .4byte gAnims_DEWGONG + .4byte gAnims_GRIMER + .4byte gAnims_MUK + .4byte gAnims_SHELLDER + .4byte gAnims_CLOYSTER + .4byte gAnims_GASTLY + .4byte gAnims_HAUNTER + .4byte gAnims_GENGAR + .4byte gAnims_ONIX + .4byte gAnims_DROWZEE + .4byte gAnims_HYPNO + .4byte gAnims_KRABBY + .4byte gAnims_KINGLER + .4byte gAnims_VOLTORB + .4byte gAnims_ELECTRODE + .4byte gAnims_EXEGGCUTE + .4byte gAnims_EXEGGUTOR + .4byte gAnims_CUBONE + .4byte gAnims_MAROWAK + .4byte gAnims_HITMONLEE + .4byte gAnims_HITMONCHAN + .4byte gAnims_LICKITUNG + .4byte gAnims_KOFFING + .4byte gAnims_WEEZING + .4byte gAnims_RHYHORN + .4byte gAnims_RHYDON + .4byte gAnims_CHANSEY + .4byte gAnims_TANGELA + .4byte gAnims_KANGASKHAN + .4byte gAnims_HORSEA + .4byte gAnims_SEADRA + .4byte gAnims_GOLDEEN + .4byte gAnims_SEAKING + .4byte gAnims_STARYU + .4byte gAnims_STARMIE + .4byte gAnims_MR_MIME + .4byte gAnims_SCYTHER + .4byte gAnims_JYNX + .4byte gAnims_ELECTABUZZ + .4byte gAnims_MAGMAR + .4byte gAnims_PINSIR + .4byte gAnims_TAUROS + .4byte gAnims_MAGIKARP + .4byte gAnims_GYARADOS + .4byte gAnims_LAPRAS + .4byte gAnims_DITTO + .4byte gAnims_EEVEE + .4byte gAnims_VAPOREON + .4byte gAnims_JOLTEON + .4byte gAnims_FLAREON + .4byte gAnims_PORYGON + .4byte gAnims_OMANYTE + .4byte gAnims_OMASTAR + .4byte gAnims_KABUTO + .4byte gAnims_KABUTOPS + .4byte gAnims_AERODACTYL + .4byte gAnims_SNORLAX + .4byte gAnims_ARTICUNO + .4byte gAnims_ZAPDOS + .4byte gAnims_MOLTRES + .4byte gAnims_DRATINI + .4byte gAnims_DRAGONAIR + .4byte gAnims_DRAGONITE + .4byte gAnims_MEWTWO + .4byte gAnims_MEW + .4byte gAnims_CHIKORITA + .4byte gAnims_BAYLEEF + .4byte gAnims_MEGANIUM + .4byte gAnims_CYNDAQUIL + .4byte gAnims_QUILAVA + .4byte gAnims_TYPHLOSION + .4byte gAnims_TOTODILE + .4byte gAnims_CROCONAW + .4byte gAnims_FERALIGATR + .4byte gAnims_SENTRET + .4byte gAnims_FURRET + .4byte gAnims_HOOTHOOT + .4byte gAnims_NOCTOWL + .4byte gAnims_LEDYBA + .4byte gAnims_LEDIAN + .4byte gAnims_SPINARAK + .4byte gAnims_ARIADOS + .4byte gAnims_CROBAT + .4byte gAnims_CHINCHOU + .4byte gAnims_LANTURN + .4byte gAnims_PICHU + .4byte gAnims_CLEFFA + .4byte gAnims_IGGLYBUFF + .4byte gAnims_TOGEPI + .4byte gAnims_TOGETIC + .4byte gAnims_NATU + .4byte gAnims_XATU + .4byte gAnims_MAREEP + .4byte gAnims_FLAAFFY + .4byte gAnims_AMPHAROS + .4byte gAnims_BELLOSSOM + .4byte gAnims_MARILL + .4byte gAnims_AZUMARILL + .4byte gAnims_SUDOWOODO + .4byte gAnims_POLITOED + .4byte gAnims_HOPPIP + .4byte gAnims_SKIPLOOM + .4byte gAnims_JUMPLUFF + .4byte gAnims_AIPOM + .4byte gAnims_SUNKERN + .4byte gAnims_SUNFLORA + .4byte gAnims_YANMA + .4byte gAnims_WOOPER + .4byte gAnims_QUAGSIRE + .4byte gAnims_ESPEON + .4byte gAnims_UMBREON + .4byte gAnims_MURKROW + .4byte gAnims_SLOWKING + .4byte gAnims_MISDREAVUS + .4byte gAnims_UNOWN + .4byte gAnims_WOBBUFFET + .4byte gAnims_GIRAFARIG + .4byte gAnims_PINECO + .4byte gAnims_FORRETRESS + .4byte gAnims_DUNSPARCE + .4byte gAnims_GLIGAR + .4byte gAnims_STEELIX + .4byte gAnims_SNUBBULL + .4byte gAnims_GRANBULL + .4byte gAnims_QWILFISH + .4byte gAnims_SCIZOR + .4byte gAnims_SHUCKLE + .4byte gAnims_HERACROSS + .4byte gAnims_SNEASEL + .4byte gAnims_TEDDIURSA + .4byte gAnims_URSARING + .4byte gAnims_SLUGMA + .4byte gAnims_MAGCARGO + .4byte gAnims_SWINUB + .4byte gAnims_PILOSWINE + .4byte gAnims_CORSOLA + .4byte gAnims_REMORAID + .4byte gAnims_OCTILLERY + .4byte gAnims_DELIBIRD + .4byte gAnims_MANTINE + .4byte gAnims_SKARMORY + .4byte gAnims_HOUNDOUR + .4byte gAnims_HOUNDOOM + .4byte gAnims_KINGDRA + .4byte gAnims_PHANPY + .4byte gAnims_DONPHAN + .4byte gAnims_PORYGON2 + .4byte gAnims_STANTLER + .4byte gAnims_SMEARGLE + .4byte gAnims_TYROGUE + .4byte gAnims_HITMONTOP + .4byte gAnims_SMOOCHUM + .4byte gAnims_ELEKID + .4byte gAnims_MAGBY + .4byte gAnims_MILTANK + .4byte gAnims_BLISSEY + .4byte gAnims_RAIKOU + .4byte gAnims_ENTEI + .4byte gAnims_SUICUNE + .4byte gAnims_LARVITAR + .4byte gAnims_PUPITAR + .4byte gAnims_TYRANITAR + .4byte gAnims_LUGIA + .4byte gAnims_HO_OH + .4byte gAnims_CELEBI + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_OLD_UNOWN_B + .4byte gAnims_TREECKO + .4byte gAnims_GROVYLE + .4byte gAnims_SCEPTILE + .4byte gAnims_TORCHIC + .4byte gAnims_COMBUSKEN + .4byte gAnims_BLAZIKEN + .4byte gAnims_MUDKIP + .4byte gAnims_MARSHTOMP + .4byte gAnims_SWAMPERT + .4byte gAnims_POOCHYENA + .4byte gAnims_MIGHTYENA + .4byte gAnims_ZIGZAGOON + .4byte gAnims_LINOONE + .4byte gAnims_WURMPLE + .4byte gAnims_SILCOON + .4byte gAnims_BEAUTIFLY + .4byte gAnims_CASCOON + .4byte gAnims_DUSTOX + .4byte gAnims_LOTAD + .4byte gAnims_LOMBRE + .4byte gAnims_LUDICOLO + .4byte gAnims_SEEDOT + .4byte gAnims_NUZLEAF + .4byte gAnims_SHIFTRY + .4byte gAnims_NINCADA + .4byte gAnims_NINJASK + .4byte gAnims_SHEDINJA + .4byte gAnims_TAILLOW + .4byte gAnims_SWELLOW + .4byte gAnims_SHROOMISH + .4byte gAnims_BRELOOM + .4byte gAnims_SPINDA + .4byte gAnims_WINGULL + .4byte gAnims_PELIPPER + .4byte gAnims_SURSKIT + .4byte gAnims_MASQUERAIN + .4byte gAnims_WAILMER + .4byte gAnims_WAILORD + .4byte gAnims_SKITTY + .4byte gAnims_DELCATTY + .4byte gAnims_KECLEON + .4byte gAnims_BALTOY + .4byte gAnims_CLAYDOL + .4byte gAnims_NOSEPASS + .4byte gAnims_TORKOAL + .4byte gAnims_SABLEYE + .4byte gAnims_BARBOACH + .4byte gAnims_WHISCASH + .4byte gAnims_LUVDISC + .4byte gAnims_CORPHISH + .4byte gAnims_CRAWDAUNT + .4byte gAnims_FEEBAS + .4byte gAnims_MILOTIC + .4byte gAnims_CARVANHA + .4byte gAnims_SHARPEDO + .4byte gAnims_TRAPINCH + .4byte gAnims_VIBRAVA + .4byte gAnims_FLYGON + .4byte gAnims_MAKUHITA + .4byte gAnims_HARIYAMA + .4byte gAnims_ELECTRIKE + .4byte gAnims_MANECTRIC + .4byte gAnims_NUMEL + .4byte gAnims_CAMERUPT + .4byte gAnims_SPHEAL + .4byte gAnims_SEALEO + .4byte gAnims_WALREIN + .4byte gAnims_CACNEA + .4byte gAnims_CACTURNE + .4byte gAnims_SNORUNT + .4byte gAnims_GLALIE + .4byte gAnims_LUNATONE + .4byte gAnims_SOLROCK + .4byte gAnims_AZURILL + .4byte gAnims_SPOINK + .4byte gAnims_GRUMPIG + .4byte gAnims_PLUSLE + .4byte gAnims_MINUN + .4byte gAnims_MAWILE + .4byte gAnims_MEDITITE + .4byte gAnims_MEDICHAM + .4byte gAnims_SWABLU + .4byte gAnims_ALTARIA + .4byte gAnims_WYNAUT + .4byte gAnims_DUSKULL + .4byte gAnims_DUSCLOPS + .4byte gAnims_ROSELIA + .4byte gAnims_SLAKOTH + .4byte gAnims_VIGOROTH + .4byte gAnims_SLAKING + .4byte gAnims_GULPIN + .4byte gAnims_SWALOT + .4byte gAnims_TROPIUS + .4byte gAnims_WHISMUR + .4byte gAnims_LOUDRED + .4byte gAnims_EXPLOUD + .4byte gAnims_CLAMPERL + .4byte gAnims_HUNTAIL + .4byte gAnims_GOREBYSS + .4byte gAnims_ABSOL + .4byte gAnims_SHUPPET + .4byte gAnims_BANETTE + .4byte gAnims_SEVIPER + .4byte gAnims_ZANGOOSE + .4byte gAnims_RELICANTH + .4byte gAnims_ARON + .4byte gAnims_LAIRON + .4byte gAnims_AGGRON + .4byte gAnims_CASTFORM + .4byte gAnims_VOLBEAT + .4byte gAnims_ILLUMISE + .4byte gAnims_LILEEP + .4byte gAnims_CRADILY + .4byte gAnims_ANORITH + .4byte gAnims_ARMALDO + .4byte gAnims_RALTS + .4byte gAnims_KIRLIA + .4byte gAnims_GARDEVOIR + .4byte gAnims_BAGON + .4byte gAnims_SHELGON + .4byte gAnims_SALAMENCE + .4byte gAnims_BELDUM + .4byte gAnims_METANG + .4byte gAnims_METAGROSS + .4byte gAnims_REGIROCK + .4byte gAnims_REGICE + .4byte gAnims_REGISTEEL + .4byte gAnims_KYOGRE + .4byte gAnims_GROUDON + .4byte gAnims_RAYQUAZA + .4byte gAnims_LATIAS + .4byte gAnims_LATIOS + .4byte gAnims_JIRACHI + .4byte gAnims_DEOXYS + .4byte gAnims_CHIMECHO + .4byte gAnims_EGG + .4byte gAnims_UNOWN_B + .4byte gAnims_UNOWN_C + .4byte gAnims_UNOWN_D + .4byte gAnims_UNOWN_E + .4byte gAnims_UNOWN_F + .4byte gAnims_UNOWN_G + .4byte gAnims_UNOWN_H + .4byte gAnims_UNOWN_I + .4byte gAnims_UNOWN_J + .4byte gAnims_UNOWN_K + .4byte gAnims_UNOWN_L + .4byte gAnims_UNOWN_M + .4byte gAnims_UNOWN_N + .4byte gAnims_UNOWN_O + .4byte gAnims_UNOWN_P + .4byte gAnims_UNOWN_Q + .4byte gAnims_UNOWN_R + .4byte gAnims_UNOWN_S + .4byte gAnims_UNOWN_T + .4byte gAnims_UNOWN_U + .4byte gAnims_UNOWN_V + .4byte gAnims_UNOWN_W + .4byte gAnims_UNOWN_X + .4byte gAnims_UNOWN_Y + .4byte gAnims_UNOWN_Z + .4byte gAnims_UNOWN_EMARK + .4byte gAnims_UNOWN_QMARK diff --git a/src/battle_dome_cards.c b/src/battle_dome_cards.c index c0557ac702..5251ee06a0 100644 --- a/src/battle_dome_cards.c +++ b/src/battle_dome_cards.c @@ -17,7 +17,7 @@ extern const struct CompressedSpritePalette gTrainerFrontPicPaletteTable[]; extern const union AffineAnimCmd *const gUnknown_082FF618[]; extern const union AffineAnimCmd *const gUnknown_082FF694[]; extern const union AnimCmd *const gUnknown_082FF70C[]; -extern const union AnimCmd *const *const gUnknown_08309AAC[NUM_SPECIES]; +extern const union AnimCmd *const *const gMonAnimationsSpriteAnimsPtrTable[NUM_SPECIES]; extern const union AnimCmd *const *const gUnknown_0830536C[]; extern const u8 gUnknown_0831F578[]; @@ -282,7 +282,7 @@ u16 sub_818D3E4(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, images[j].size = 0x800; } gUnknown_0203CCEC.tileTag = 0xFFFF; - gUnknown_0203CCEC.anims = gUnknown_08309AAC[species]; + gUnknown_0203CCEC.anims = gMonAnimationsSpriteAnimsPtrTable[species]; gUnknown_0203CCEC.images = images; if (flags2 == 0x01) { diff --git a/src/pokemon_2.c b/src/pokemon_2.c index c5c36c793d..c3d3bf8cfe 100644 --- a/src/pokemon_2.c +++ b/src/pokemon_2.c @@ -28,7 +28,7 @@ extern const u32 gBitTable[]; extern const struct SpriteTemplate gUnknown_08329D98[]; extern const struct SpriteTemplate gUnknown_08329DF8[]; extern const union AnimCmd* gUnknown_082FF70C[]; -extern const union AnimCmd* const * const gUnknown_08309AAC[]; +extern const union AnimCmd* const * const gMonAnimationsSpriteAnimsPtrTable[]; extern const union AnimCmd* const * const gUnknown_08305D0C[]; extern const union AnimCmd* const * const gUnknown_0830536C[]; extern const u8 gText_BadEgg[]; @@ -165,9 +165,9 @@ void sub_806A068(u16 species, u8 bankIdentity) if (bankIdentity == 0 || bankIdentity == 2) gUnknown_0202499C.anims = gUnknown_082FF70C; else if (species > 500) - gUnknown_0202499C.anims = gUnknown_08309AAC[species - 500]; + gUnknown_0202499C.anims = gMonAnimationsSpriteAnimsPtrTable[species - 500]; else - gUnknown_0202499C.anims = gUnknown_08309AAC[species]; + gUnknown_0202499C.anims = gMonAnimationsSpriteAnimsPtrTable[species]; } void sub_806A12C(u16 trainerSpriteId, u8 bankIdentity) From beab7a10d2dbb5f1385b8cac2e630f82cebb3387 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Mon, 9 Oct 2017 23:33:41 +0200 Subject: [PATCH 12/13] table to hex --- src/battle_message.c | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/battle_message.c b/src/battle_message.c index 77a461544c..2c622f06d1 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1189,27 +1189,27 @@ static const u8 sDummyWeirdStatusString[] = {EOS, EOS, EOS, EOS, EOS, EOS, EOS, static const u8 gUnknown_085CD42C[] = { - 0xFF, 1, 0, 1, 0, 0, 1, 1, 0xF, 6, 0, 0, 0xFF, 1, - 1, 1, 0, 0, 0, 1, 0xF, 6, 0, 0, 0xEE, 1, 0, 1, 0, - 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, - 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, - 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, - 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, - 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, - 0xEE, 1, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, - 1, 2, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, 0xEE, 7, 0, - 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, - 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, - 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, 0xD, - 0xE, 0xF, 0, 0, 0, 1, 0x20, 1, 0, 0, 0, 1, 0, 2, - 0, 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, - 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, - 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, - 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, - 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, - 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0, 1, 0xFF, 1, 0, - 0, 0, 1, 0, 6, 0, 0, 0, 1, 0xFF, 1, 0, 0, 0, 1, 0, - 6, 0, 0, 0, 1, 0xFF, 1, 0, 0, 0, 1, 0, 6, 0, 0 + 0xFF, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0xF, 0x6, 0x0, 0x0, 0xFF, 0x1, + 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0xF, 0x6, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, + 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, + 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, + 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, + 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, + 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xC, 0xE, 0xB, 0x0, 0x0, + 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, + 0x1, 0x2, 0x1, 0x0, 0x0, 0x0, 0xC, 0xE, 0xB, 0x0, 0x0, 0xEE, 0x7, 0x0, + 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, + 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, + 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, + 0xE, 0xF, 0x0, 0x0, 0x0, 0x1, 0x20, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, + 0x0, 0x0, 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, + 0x0, 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, + 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, + 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, + 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0xFF, + 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0x0, 0x1, 0xFF, 0x1, 0x0, + 0x0, 0x0, 0x1, 0x0, 0x6, 0x0, 0x0, 0x0, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, + 0x6, 0x0, 0x0, 0x0, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x6, 0x0, 0x0 }; static const u8 gUnknown_085CD54C[] = From b6ec90db6192c8405c9fe952aae7f356bcd1b0c3 Mon Sep 17 00:00:00 2001 From: DizzyEggg Date: Mon, 9 Oct 2017 23:38:40 +0200 Subject: [PATCH 13/13] secod table to hex --- src/battle_message.c | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/battle_message.c b/src/battle_message.c index 2c622f06d1..aeff721d65 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1214,27 +1214,27 @@ static const u8 gUnknown_085CD42C[] = static const u8 gUnknown_085CD54C[] = { - 0xFF, 1, 0, 1, 0, 0, 1, 1, 0xF, 6, 0, 0, 0xFF, 1, - 1, 1, 0, 0, 0, 1, 0xF, 6, 0, 0, 0xEE, 1, 0, 1, 0, - 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, - 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, - 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, - 0xF, 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, - 0, 0, 0xEE, 7, 0, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, - 0xEE, 1, 0, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, - 1, 2, 1, 0, 0, 0, 0xC, 0xE, 0xB, 0, 0, 0xEE, 7, 0, - 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 7, 0, 1, 0, - 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, - 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0, 1, 0, 0, 0, 0xD, - 0xE, 0xF, 0, 0, 0, 1, 0x20, 1, 0, 0, 0, 1, 0, 2, - 0, 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 1, 0xE, 0xF, 0, - 0, 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, - 0xEE, 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, - 1, 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, - 0xFF, 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, - 1, 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0xEE, 1, 0xFF, 1, - 0, 0, 0, 0xD, 0xE, 0xF, 0, 0, 0x11, 1, 0, 1, 0, 0, - 1, 2, 1, 3, 0, 0 + 0xFF, 0x1, 0x0, 0x1, 0x0, 0x0, 0x1, 0x1, 0xF, 0x6, 0x0, 0x0, 0xFF, 0x1, + 0x1, 0x1, 0x0, 0x0, 0x0, 0x1, 0xF, 0x6, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, + 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, + 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, + 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, + 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, + 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, 0x0, 0x0, 0xC, 0xE, 0xB, 0x0, 0x0, + 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, + 0x1, 0x2, 0x1, 0x0, 0x0, 0x0, 0xC, 0xE, 0xB, 0x0, 0x0, 0xEE, 0x7, 0x0, + 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x7, 0x0, 0x1, 0x0, + 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, + 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0x0, 0x1, 0x0, 0x0, 0x0, 0xD, + 0xE, 0xF, 0x0, 0x0, 0x0, 0x1, 0x20, 0x1, 0x0, 0x0, 0x0, 0x1, 0x0, 0x2, + 0x0, 0x0, 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0x1, 0xE, 0xF, 0x0, + 0x0, 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, + 0xEE, 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, + 0x1, 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, + 0xFF, 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0xFF, + 0x1, 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0xEE, 0x1, 0xFF, 0x1, + 0x0, 0x0, 0x0, 0xD, 0xE, 0xF, 0x0, 0x0, 0x11, 0x1, 0x0, 0x1, 0x0, 0x0, + 0x1, 0x2, 0x1, 0x3, 0x0, 0x0 }; static const u8 * const gUnknown_085CD660[] =