diff options
author | Diegoisawesome <diego@domoreaweso.me> | 2017-12-15 00:08:48 -0600 |
---|---|---|
committer | Diegoisawesome <diego@domoreaweso.me> | 2017-12-15 00:08:48 -0600 |
commit | e3c366df6489c92a6ac5778b458b815cc8eab75d (patch) | |
tree | 89c80f554da617d89641af8a707ccf9c96d5707c | |
parent | 8e9428c482d33ac59b5c29d89db0bd5a2e6fdef3 (diff) | |
parent | c9f196cdfea08eefffd39ebc77a150f197e1250e (diff) |
Merge remote-tracking branch 'pret/master'
188 files changed, 21282 insertions, 25307 deletions
@@ -130,7 +130,7 @@ $(DATA_ASM_BUILDDIR)/%.o: data_dep := endif $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep) - $(PREPROC) $< charmap.txt | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) $< charmap.txt | $(CPP) -I include | $(AS) $(ASFLAGS) -o $@ $(OBJ_DIR)/sym_bss.ld: sym_bss.txt $(RAMSCRGEN) .bss $< ENGLISH > $@ diff --git a/asm/battle_anim_80A5C6C.s b/asm/battle_anim_80A5C6C.s index 158da2a02..08baa4595 100644 --- a/asm/battle_anim_80A5C6C.s +++ b/asm/battle_anim_80A5C6C.s @@ -5,8 +5,8 @@ .text - thumb_func_start sub_80A5C6C -sub_80A5C6C: @ 80A5C6C + thumb_func_start GetBankPosition +GetBankPosition: @ 80A5C6C push {r4,r5,lr} lsls r0, 24 lsrs r5, r0, 24 @@ -154,7 +154,7 @@ _080A5DB0: pop {r4,r5} pop {r1} bx r1 - thumb_func_end sub_80A5C6C + thumb_func_end GetBankPosition thumb_func_start sub_80A5DB8 sub_80A5DB8: @ 80A5DB8 @@ -577,7 +577,7 @@ _080A611C: _080A6126: adds r0, r4, 0 adds r1, r5, 0 - bl sub_80A5C6C + bl GetBankPosition _080A612E: lsls r0, 24 lsrs r0, 24 @@ -592,7 +592,7 @@ GetBankSpriteDefault_Y: @ 80A6138 lsls r0, 24 lsrs r0, 24 movs r1, 0x4 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 pop {r1} @@ -611,7 +611,7 @@ GetSubstituteSpriteDefault_Y: @ 80A614C beq _080A6170 adds r0, r4, 0 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r1, 0x80 @@ -620,7 +620,7 @@ GetSubstituteSpriteDefault_Y: @ 80A614C _080A6170: adds r0, r4, 0 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r1, 0x88 @@ -642,7 +642,7 @@ sub_80A6190: @ 80A6190 lsrs r5, r0, 24 adds r0, r5, 0 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 bl IsContest @@ -1245,13 +1245,13 @@ sub_80A65EC: @ 80A65EC ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -1442,13 +1442,13 @@ sub_80A6760: @ 80A6760 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -1550,13 +1550,13 @@ sub_80A6838: @ 80A6838 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -1578,13 +1578,13 @@ sub_80A6864: @ 80A6864 ldr r7, =gAnimBankAttacker ldrb r0, [r7] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 cmp r6, r0 @@ -1646,8 +1646,8 @@ sub_80A68D4: @ 80A68D4 bx r0 thumb_func_end sub_80A68D4 - thumb_func_start sub_80A6900 -sub_80A6900: @ 80A6900 + thumb_func_start AnimateBallThrow +AnimateBallThrow: @ 80A6900 push {r4,lr} adds r4, r0, 0 bl sub_80A6F3C @@ -1674,7 +1674,7 @@ _080A692E: pop {r4} pop {r1} bx r1 - thumb_func_end sub_80A6900 + thumb_func_end AnimateBallThrow thumb_func_start sub_80A6934 sub_80A6934: @ 80A6934 @@ -3685,7 +3685,7 @@ _080A785C: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x4] @@ -3693,7 +3693,7 @@ _080A785C: strh r0, [r5, 0x32] ldrb r0, [r4] adds r1, r7, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x6] @@ -3733,7 +3733,7 @@ _080A78CC: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -3741,7 +3741,7 @@ _080A78CC: strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x6] @@ -3763,7 +3763,7 @@ _080A78CC: sub_80A791C: @ 80A791C push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _080A7930 @@ -3828,7 +3828,7 @@ _080A798E: strh r0, [r5, 0x2E] adds r0, r6, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r2, [r4, 0x4] @@ -3836,7 +3836,7 @@ _080A798E: strh r0, [r5, 0x32] adds r0, r6, 0 adds r1, r7, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x6] @@ -5713,7 +5713,7 @@ _080A88A6: _080A88AE: mov r0, r8 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrb r1, [r4] @@ -5722,7 +5722,7 @@ _080A88AE: _080A88C0: mov r0, r8 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrb r1, [r4] @@ -5731,7 +5731,7 @@ _080A88C0: _080A88D2: mov r0, r8 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrb r2, [r4] @@ -5744,7 +5744,7 @@ _080A88E4: _080A88EA: mov r0, r8 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrb r2, [r4] @@ -5757,7 +5757,7 @@ _080A88FC: _080A8902: mov r0, r8 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x1F @@ -5798,13 +5798,13 @@ _080A8942: _080A8946: adds r0, r4, 0 adds r1, r5, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r8, r0 adds r0, r4, 0 adds r1, r6, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r7, r0, 24 bl IsDoubleBattle @@ -5819,12 +5819,12 @@ _080A8946: eors r4, r0 adds r0, r4, 0 adds r1, r5, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r5, r0, 24 adds r0, r4, 0 adds r1, r6, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r3, r0, 24 mov r0, r8 @@ -6392,13 +6392,13 @@ sub_80A8E30: @ 80A8E30 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] diff --git a/asm/battle_anim_80A9C70.s b/asm/battle_anim_80A9C70.s index d27852961..bdb1a51ec 100644 --- a/asm/battle_anim_80A9C70.s +++ b/asm/battle_anim_80A9C70.s @@ -334,7 +334,7 @@ sub_80A9EF4: @ 80A9EF4 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 ldr r1, =0xffe00000 @@ -342,7 +342,7 @@ sub_80A9EF4: @ 80A9EF4 lsrs r5, r0, 16 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 ldr r1, =0xffdc0000 diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s index 315f884cf..75879519e 100644 --- a/asm/battle_anim_80FE840.s +++ b/asm/battle_anim_80FE840.s @@ -99,13 +99,13 @@ sub_80FE8E0: @ 80FE8E0 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -135,13 +135,13 @@ sub_80FE930: @ 80FE930 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -170,7 +170,7 @@ sub_80FE988: @ 80FE988 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -178,7 +178,7 @@ sub_80FE988: @ 80FE988 strh r0, [r4, 0x34] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -324,13 +324,13 @@ sub_80FEAD8: @ 80FEAD8 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -350,7 +350,7 @@ sub_80FEAD8: @ 80FEAD8 sub_80FEB28: @ 80FEB28 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _080FEB3C @@ -377,13 +377,13 @@ sub_80FEB44: @ 80FEB44 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -413,7 +413,7 @@ _080FEB94: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -421,7 +421,7 @@ _080FEB94: strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -511,7 +511,7 @@ _080FEC68: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -519,7 +519,7 @@ _080FEC68: strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x6] @@ -541,7 +541,7 @@ _080FEC68: sub_80FECB8: @ 80FECB8 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _080FECE2 @@ -774,7 +774,7 @@ sub_80FEE78: @ 80FEE78 ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5, 0x4] @@ -871,7 +871,7 @@ sub_80FEF44: @ 80FEF44 ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5, 0x4] @@ -953,13 +953,13 @@ sub_80FEFFC: @ 80FEFFC ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -1101,7 +1101,7 @@ _080FF114: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x4] @@ -1109,7 +1109,7 @@ _080FF114: strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x6] @@ -1175,7 +1175,7 @@ sub_80FF1C0: @ 80FF1C0 movs r0, 0x1 strh r0, [r6, 0x2E] adds r0, r6, 0 - bl sub_80A6900 + bl AnimateBallThrow ldrh r0, [r6, 0x3C] strh r5, [r6, 0x2E] lsls r4, 16 @@ -1799,7 +1799,7 @@ _080FF6AA: _080FF6C2: ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -1808,7 +1808,7 @@ _080FF6C2: strh r0, [r5, 0x20] ldrb r0, [r6] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x2] @@ -1848,13 +1848,13 @@ _080FF704: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -1881,13 +1881,13 @@ sub_80FF768: @ 80FF768 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -1944,13 +1944,13 @@ sub_80FF7EC: @ 80FF7EC ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition mov r8, r0 mov r0, r8 lsls r0, 24 @@ -1959,13 +1959,13 @@ sub_80FF7EC: @ 80FF7EC ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r2, r0, 0 lsls r2, 24 subs r4, r5 @@ -2098,7 +2098,7 @@ sub_80FF934: @ 80FF934 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -2107,7 +2107,7 @@ sub_80FF934: @ 80FF934 strh r0, [r6, 0x20] ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x2] @@ -2352,12 +2352,12 @@ sub_80FFB18: @ 80FFB18 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r2, r0, 24 ldr r0, =gAnimBankAttacker @@ -2456,7 +2456,7 @@ sub_80FFBF4: @ 80FFBF4 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] @@ -2554,12 +2554,12 @@ sub_80FFCB4: @ 80FFCB4 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r2, r0, 24 ldr r0, =gAnimBankTarget @@ -2963,13 +2963,13 @@ sub_80FFFC0: @ 80FFFC0 strh r0, [r5, 0x10] ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x14] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x16] @@ -3161,7 +3161,7 @@ _08100180: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _08100196 @@ -3190,7 +3190,7 @@ _081001B4: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _081001CA @@ -3219,7 +3219,7 @@ _081001E6: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _081001FC @@ -3272,7 +3272,7 @@ _08100254: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _0810026A @@ -3403,7 +3403,7 @@ _08100362: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _08100378 @@ -3514,7 +3514,7 @@ _08100448: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _081004FC @@ -3566,7 +3566,7 @@ _081004B6: adds r1, r2, 0 bl sub_8100524 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _081004FC @@ -3837,7 +3837,7 @@ _081006CE: _081006D4: adds r0, r6, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5] @@ -3860,7 +3860,7 @@ _08100700: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r7, [r7] @@ -4082,12 +4082,12 @@ _081008C4: _081008C6: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r5, r0, 24 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r2, r0, 24 ldr r0, =gBattleAnimArgs @@ -4346,13 +4346,13 @@ sub_8100AE0: @ 8100AE0 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -4444,7 +4444,7 @@ _08100BA8: movs r4, 0x2 eors r0, r4 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r7, r0, 24 ldrb r0, [r5] @@ -4456,12 +4456,12 @@ _08100BC8: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r7, r0, 24 ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r4, r0, 24 ldrb r0, [r5] @@ -4477,7 +4477,7 @@ _08100BC8: mov r2, r8 eors r0, r2 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r7 @@ -4486,7 +4486,7 @@ _08100BC8: mov r1, r8 eors r0, r1 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r4 @@ -4497,13 +4497,13 @@ _08100C24: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r7, r0, 24 ldrb r0, [r4] _08100C34: movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r4, r0, 24 _08100C3E: @@ -5093,14 +5093,14 @@ sub_81010CC: @ 81010CC ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r5, 0 strh r0, [r4, 0x20] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r1, =0x0000ffe8 @@ -5470,7 +5470,7 @@ _081013C4: bne _081013E8 adds r0, r6, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] @@ -5481,14 +5481,14 @@ _081013C4: _081013E8: adds r0, r6, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] adds r0, r6, 0 movs r1, 0x3 _081013FA: - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x2] @@ -5888,14 +5888,14 @@ _08101718: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r7 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 @@ -6930,7 +6930,7 @@ _08101F5C: _08101F5E: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x2] @@ -6938,7 +6938,7 @@ _08101F5E: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x4] @@ -6965,7 +6965,7 @@ sub_8101FA8: @ 8101FA8 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r1, =0x0000ffd0 @@ -6973,7 +6973,7 @@ sub_8101FA8: @ 8101FA8 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -6995,7 +6995,7 @@ sub_8101FF0: @ 8101FF0 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r1, =gBattleAnimArgs @@ -7007,7 +7007,7 @@ sub_8101FF0: @ 8101FF0 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -7123,7 +7123,7 @@ _081020F4: _081020F6: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x2] @@ -7131,7 +7131,7 @@ _081020F6: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x4] @@ -7194,14 +7194,14 @@ sub_810217C: @ 810217C ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r5, 0 strh r0, [r4, 0x20] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r0, 0xC @@ -7319,7 +7319,7 @@ sub_8102268: @ 8102268 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r5, =gBattleAnimArgs lsrs r0, 24 @@ -7328,7 +7328,7 @@ sub_8102268: @ 8102268 strh r0, [r6, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5, 0x2] @@ -7468,13 +7468,13 @@ _08102390: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -7676,7 +7676,7 @@ sub_8102540: @ 8102540 ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r2, =gBattleAnimArgs lsrs r0, 24 @@ -8071,7 +8071,7 @@ _08102862: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6] @@ -8079,7 +8079,7 @@ _08102862: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x2] @@ -8660,12 +8660,12 @@ _08102D34: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r3, r0, 24 _08102D4E: @@ -8870,7 +8870,7 @@ sub_8102EB0: @ 8102EB0 _08102ECE: ldrb r0, [r7] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -8880,7 +8880,7 @@ _08102ECE: strh r0, [r6, 0x20] ldrb r0, [r7] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r2, [r4, 0x4] @@ -9005,14 +9005,14 @@ _08102FDE: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x8 @@ -9167,7 +9167,7 @@ _08103136: strh r0, [r6, 0x20] adds r0, r5, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 adds r0, r5, 0 movs r1, 0 @@ -9334,7 +9334,7 @@ _081032A2: ldrb r5, [r0] adds r0, r5, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r6, 0 @@ -9719,13 +9719,13 @@ sub_810358C: @ 810358C ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -10140,7 +10140,7 @@ _0810390E: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r6, =gBattleAnimArgs lsrs r0, 24 @@ -10151,7 +10151,7 @@ _0810390E: mov r8, r0 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r2, [r6, 0x6] @@ -10719,7 +10719,7 @@ _08103DB6: ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition ldr r1, =gTasks mov r3, r8 adds r4, r3, r7 @@ -10731,7 +10731,7 @@ _08103DB6: adds r6, r0, 0 ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1C] @@ -10762,13 +10762,13 @@ _08103E20: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r1, r10 @@ -11053,12 +11053,12 @@ sub_8104088: @ 8104088 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -11203,13 +11203,13 @@ sub_81041C4: @ 81041C4 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -11426,14 +11426,14 @@ _08104390: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 add r0, r8 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 @@ -11513,7 +11513,7 @@ _08104448: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 add r0, r9 @@ -11522,7 +11522,7 @@ _08104448: strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 @@ -12356,7 +12356,7 @@ sub_8104B1C: @ 8104B1C bl StartSpriteAnim ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x20 @@ -12370,7 +12370,7 @@ _08104B50: bl StartSpriteAnim ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r0, 0x20 @@ -12381,7 +12381,7 @@ _08104B6A: ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r1, 0 @@ -12432,7 +12432,7 @@ _08104BCA: _08104BE4: adds r0, r5, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -12441,7 +12441,7 @@ _08104BE4: strh r0, [r6, 0x20] adds r0, r5, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x4] @@ -12962,7 +12962,7 @@ sub_810501C: @ 810501C ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r0, 0x10 @@ -13231,7 +13231,7 @@ _08105230: adds r0, r5, 0 movs r1, 0x2 _08105234: - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r4, r0, 24 adds r0, r5, 0 @@ -13341,7 +13341,7 @@ _08105310: beq _0810536C adds r0, r7, 0 mov r1, r10 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r1, =gBattleAnimArgs lsrs r0, 24 @@ -13372,7 +13372,7 @@ _0810535C: _0810536C: adds r0, r7, 0 mov r1, r10 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r1, =gBattleAnimArgs @@ -13442,7 +13442,7 @@ _081053FA: strb r0, [r1] adds r0, r7, 0 ldr r1, [sp, 0x4] - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -13473,13 +13473,13 @@ _0810544C: mov r4, sp mov r0, r8 mov r1, r10 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4] mov r0, r8 ldr r1, [sp, 0x4] - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r2, sp @@ -14295,13 +14295,13 @@ sub_8105AAC: @ 8105AAC ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x24] ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x26] @@ -14700,7 +14700,7 @@ _08105E08: strh r0, [r5, 0x2E] ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -14708,7 +14708,7 @@ _08105E08: strh r0, [r5, 0x32] ldrb r0, [r6] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x6] @@ -15075,7 +15075,7 @@ sub_8106140: @ 8106140 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -15083,7 +15083,7 @@ sub_8106140: @ 8106140 strh r0, [r4, 0x34] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -15776,13 +15776,13 @@ sub_810673C: @ 810673C ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -15927,13 +15927,13 @@ sub_8106878: @ 8106878 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -16032,13 +16032,13 @@ sub_8106944: @ 8106944 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -16513,13 +16513,13 @@ _08106CFC: _08106CFE: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -16666,7 +16666,7 @@ _08106E1E: _08106E38: adds r0, r6, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r7, =gBattleAnimArgs lsrs r0, 24 @@ -16676,7 +16676,7 @@ _08106E38: strh r0, [r5, 0x20] adds r0, r6, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r7, 0x4] @@ -17019,13 +17019,13 @@ _081070F8: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x28 @@ -17204,7 +17204,7 @@ sub_8107260: @ 8107260 beq _08107290 ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r4, =gBattleAnimArgs @@ -17215,7 +17215,7 @@ sub_8107260: @ 8107260 _08107290: ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -17225,7 +17225,7 @@ _081072A2: strh r0, [r6, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x2] @@ -17256,7 +17256,7 @@ _081072D8: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x32] @@ -17264,7 +17264,7 @@ _081072D8: strh r0, [r6, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x36] @@ -17448,7 +17448,7 @@ _08107482: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 @@ -17457,7 +17457,7 @@ _08107482: strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r7, [r7, 0x6] @@ -17624,7 +17624,7 @@ sub_81075EC: @ 81075EC ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -17632,7 +17632,7 @@ sub_81075EC: @ 81075EC strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -17776,13 +17776,13 @@ sub_8107730: @ 8107730 ldr r7, =gAnimBankAttacker ldrb r0, [r7] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r7] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -17913,7 +17913,7 @@ _08107842: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r5, 0x4] @@ -17921,7 +17921,7 @@ _08107842: strh r0, [r6, 0x32] ldrb r0, [r4] adds r1, r7, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5, 0x6] @@ -19353,13 +19353,13 @@ sub_8108408: @ 8108408 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r8, r0 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 movs r5, 0xAC @@ -19959,14 +19959,14 @@ sub_81088E4: @ 81088E4 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r6, 0 strh r0, [r5, 0xE] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x10] @@ -20234,7 +20234,7 @@ _08108B1A: sub_8108B2C: @ 8108B2C push {r4-r6,lr} adds r6, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08108B86 @@ -20283,7 +20283,7 @@ _08108B86: sub_8108B94: @ 8108B94 push {r4-r6,lr} adds r5, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08108BD0 @@ -20421,13 +20421,13 @@ sub_8108C94: @ 8108C94 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x30] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -21131,7 +21131,7 @@ sub_8109244: @ 8109244 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -21139,7 +21139,7 @@ sub_8109244: @ 8109244 strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -21167,13 +21167,13 @@ sub_810929C: @ 810929C ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x22] @@ -22359,7 +22359,7 @@ _08109BCE: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -22367,7 +22367,7 @@ _08109BCE: strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -23181,13 +23181,13 @@ sub_810A274: @ 810A274 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -23307,7 +23307,7 @@ _0810A384: bne _0810A3AC adds r0, r4, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] @@ -23318,14 +23318,14 @@ _0810A384: _0810A3AC: adds r0, r4, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] adds r0, r4, 0 movs r1, 0x3 _0810A3BE: - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -23420,7 +23420,7 @@ sub_810A46C: @ 810A46C ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -23428,7 +23428,7 @@ sub_810A46C: @ 810A46C strh r0, [r4, 0x34] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -23591,7 +23591,7 @@ _0810A5E0: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -23600,7 +23600,7 @@ _0810A5E0: strh r0, [r6, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -23657,7 +23657,7 @@ _0810A666: _0810A66E: adds r0, r6, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -23666,7 +23666,7 @@ _0810A66E: strh r0, [r5, 0x20] adds r0, r6, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x2] @@ -23830,7 +23830,7 @@ sub_810A7DC: @ 810A7DC ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition ldr r1, =gTasks lsls r4, r5, 2 adds r4, r5 @@ -23844,7 +23844,7 @@ sub_810A7DC: @ 810A7DC strh r0, [r4, 0x8] ldrb r0, [r6] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r5, 0x2] @@ -24228,13 +24228,13 @@ _0810AB28: _0810AB2A: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x24] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x26] @@ -24448,13 +24448,13 @@ _0810ACF4: _0810ACF6: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -24486,13 +24486,13 @@ _0810AD4C: _0810AD4E: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -24521,13 +24521,13 @@ sub_810AD98: @ 810AD98 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -24649,7 +24649,7 @@ _0810AE90: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x24] @@ -24855,13 +24855,13 @@ _0810B012: _0810B048: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0xE] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x12] @@ -24881,13 +24881,13 @@ _0810B070: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x12] ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r2, 0xA @@ -25127,13 +25127,13 @@ _0810B24E: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -25194,13 +25194,13 @@ _0810B2DC: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x14] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x16] @@ -25209,7 +25209,7 @@ _0810B2DC: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x1C] @@ -25542,7 +25542,7 @@ _0810B58A: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x20 @@ -25564,7 +25564,7 @@ _0810B5B4: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -25724,26 +25724,26 @@ sub_810B6C4: @ 810B6C4 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r9, r0 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r8, r0 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r3, r0, 24 ldrb r0, [r4] movs r1, 0x3 str r3, [sp] - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldr r1, =gBattleAnimArgs @@ -25979,7 +25979,7 @@ sub_810B8EC: @ 810B8EC ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -26006,7 +26006,7 @@ _0810B936: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r1, =gBattleAnimArgs lsrs r0, 24 @@ -26133,13 +26133,13 @@ sub_810BA24: @ 810BA24 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x6] @@ -26434,13 +26434,13 @@ sub_810BC94: @ 810BC94 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -27182,13 +27182,13 @@ sub_810C2F0: @ 810C2F0 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -27460,12 +27460,12 @@ sub_810C560: @ 810C560 mov r8, r0 ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 ldr r7, =gAnimBankTarget ldrb r0, [r7] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r4, 24 lsls r0, 24 cmp r4, r0 @@ -27526,13 +27526,13 @@ _0810C5F4: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -27548,7 +27548,7 @@ _0810C5F4: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x6] @@ -27570,7 +27570,7 @@ _0810C65C: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x6] @@ -27583,7 +27583,7 @@ _0810C65C: ldrb r0, [r4] movs r1, 0x1 _0810C684: - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x8] @@ -27679,7 +27679,7 @@ _0810C736: ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] @@ -28062,12 +28062,12 @@ sub_810C9E4: @ 810C9E4 str r0, [sp, 0x4] adds r0, r5, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r7, r0, 24 adds r0, r5, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 mov r1, r8 @@ -28384,7 +28384,7 @@ _0810CCCE: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x4] @@ -28392,7 +28392,7 @@ _0810CCCE: strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x6] @@ -28414,7 +28414,7 @@ _0810CCCE: sub_810CD1C: @ 810CD1C push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0810CD3E @@ -28705,13 +28705,13 @@ _0810CF74: bl StartSpriteAnim mov r0, r8 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] mov r0, r8 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -29149,13 +29149,13 @@ sub_810D308: @ 810D308 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -29275,13 +29275,13 @@ _0810D428: _0810D42A: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -29389,7 +29389,7 @@ sub_810D4F4: @ 810D4F4 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r2, [r6, 0x4] @@ -29400,7 +29400,7 @@ _0810D520: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x4] @@ -29409,7 +29409,7 @@ _0810D532: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x6] @@ -29523,13 +29523,13 @@ sub_810D608: @ 810D608 ldr r4, =gBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -29601,7 +29601,7 @@ sub_810D6A8: @ 810D6A8 lsls r0, 24 lsrs r0, 24 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -29611,7 +29611,7 @@ sub_810D6A8: @ 810D6A8 lsls r0, 24 lsrs r0, 24 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -29715,13 +29715,13 @@ _0810D7C2: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r6, r0, 0 lsls r6, 24 lsrs r6, 24 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r5, r0, 0 lsls r5, 24 lsrs r5, 24 @@ -29729,14 +29729,14 @@ _0810D7C2: mov r8, r2 ldrb r0, [r2] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 mov r1, r8 ldrb r0, [r1] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 subs r4, r6 strh r4, [r7, 0x2E] @@ -29811,13 +29811,13 @@ sub_810D874: @ 810D874 ldr r4, =gBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -29879,7 +29879,7 @@ _0810D918: strh r0, [r5, 0x30] adds r0, r4, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -29887,7 +29887,7 @@ _0810D918: strh r0, [r5, 0x34] adds r0, r4, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -29932,13 +29932,13 @@ sub_810D984: @ 810D984 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -30208,13 +30208,13 @@ _0810DBC2: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -30234,7 +30234,7 @@ _0810DBC2: sub_810DC10: @ 810DC10 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0810DC24 @@ -30309,7 +30309,7 @@ _0810DC72: sub_810DCB4: @ 810DCB4 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0810DCC8 @@ -30699,7 +30699,7 @@ _0810DFC8: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -30709,7 +30709,7 @@ _0810DFC8: strh r0, [r6, 0x34] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x6] @@ -30782,13 +30782,13 @@ _0810E070: _0810E088: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r2, =gBattleAnimArgs ldrh r1, [r2] @@ -30808,13 +30808,13 @@ _0810E088: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -30958,7 +30958,7 @@ _0810E1FE: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -30966,7 +30966,7 @@ _0810E1FE: strh r0, [r5, 0x34] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -31118,7 +31118,7 @@ _0810E33E: _0810E354: adds r0, r6, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -31127,7 +31127,7 @@ _0810E354: strh r0, [r7, 0x20] adds r0, r6, 0 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldrh r1, [r4, 0x2] lsrs r0, 24 @@ -32064,13 +32064,13 @@ sub_810EA4C: @ 810EA4C ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -32240,13 +32240,13 @@ sub_810EB88: @ 810EB88 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r2, r0, 0 lsls r2, 24 lsrs r2, 24 @@ -32344,7 +32344,7 @@ _0810ECB0: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -32553,13 +32553,13 @@ _0810EE40: _0810EE42: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -32708,13 +32708,13 @@ _0810EF74: _0810EF76: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x20 @@ -32864,14 +32864,14 @@ sub_810F084: @ 810F084 ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r1, r8 strh r0, [r1, 0x20] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r6, r0, 0 lsls r6, 24 lsrs r6, 24 @@ -33139,7 +33139,7 @@ _0810F2B8: _0810F2CE: ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -33148,7 +33148,7 @@ _0810F2CE: strh r0, [r5, 0x20] ldrb r0, [r6] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x2] @@ -33571,13 +33571,13 @@ sub_810F634: @ 810F634 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -33656,14 +33656,14 @@ sub_810F6B0: @ 810F6B0 _0810F6F6: ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r4 strh r0, [r5, 0x20] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r7 @@ -33955,13 +33955,13 @@ sub_810F940: @ 810F940 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x24] @@ -34263,13 +34263,13 @@ sub_810FBA8: @ 810FBA8 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -34508,7 +34508,7 @@ _0810FDE8: sub_810FDF0: @ 810FDF0 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0810FE0E @@ -35065,13 +35065,13 @@ _08110260: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -35254,7 +35254,7 @@ _081103C4: strh r0, [r6, 0x2E] ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -35262,7 +35262,7 @@ _081103C4: strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x6] @@ -35333,13 +35333,13 @@ _08110478: strh r0, [r6, 0x2E] ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x36] @@ -35387,13 +35387,13 @@ _08110500: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -35715,7 +35715,7 @@ _081107B2: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 ldr r6, =gBattleAnimArgs @@ -35726,7 +35726,7 @@ _081107B2: lsrs r4, 16 ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 @@ -35797,7 +35797,7 @@ _08110870: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -35805,7 +35805,7 @@ _08110870: strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x6] @@ -35844,7 +35844,7 @@ sub_81108CC: @ 81108CC ands r1, r0 strb r1, [r2] adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _081108F8 @@ -35879,7 +35879,7 @@ _0811090E: lsls r0, 16 lsrs r6, r0, 16 adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 bne _08110988 @@ -35949,13 +35949,13 @@ _081109B0: _081109B2: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x12 @@ -36623,13 +36623,13 @@ sub_8110F74: @ 8110F74 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r9, r0 ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r1, 0xC0 @@ -36639,13 +36639,13 @@ sub_8110F74: @ 8110F74 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r10, r0 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r2, 0xC0 @@ -37059,7 +37059,7 @@ _08111304: sub_811131C: @ 811131C push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0811134E @@ -37219,13 +37219,13 @@ sub_8111444: @ 8111444 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r2, =gBattleAnimArgs @@ -37446,7 +37446,7 @@ sub_811160C: @ 811160C ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -37454,7 +37454,7 @@ sub_811160C: @ 811160C strh r0, [r4, 0x34] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -37929,7 +37929,7 @@ sub_81119E0: @ 81119E0 mov r8, r0 ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r1, 0 @@ -37938,7 +37938,7 @@ sub_81119E0: @ 81119E0 mov r1, r8 ldrb r0, [r1] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -38045,13 +38045,13 @@ _08111AD2: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x30] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] @@ -38107,13 +38107,13 @@ _08111B3C: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -38982,12 +38982,12 @@ sub_8112264: @ 8112264 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r2, 0xE0 @@ -39001,12 +39001,12 @@ _081122AC: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r6, r0, 24 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r2, 0xE0 @@ -39017,13 +39017,13 @@ _081122AC: _081122D0: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r10, r0 ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 8 movs r1, 0xE0 @@ -39169,7 +39169,7 @@ sub_81123C4: @ 81123C4 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 str r0, [sp, 0x4] @@ -39221,7 +39221,7 @@ _08112436: beq _08112502 adds r0, r4, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 mov r10, r0 @@ -40198,7 +40198,7 @@ sub_8112C6C: @ 8112C6C ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x1A] @@ -40682,13 +40682,13 @@ sub_8113064: @ 8113064 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -40755,13 +40755,13 @@ sub_8113100: @ 8113100 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -40842,13 +40842,13 @@ _081131D0: _081131D2: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -40901,14 +40901,14 @@ sub_8113250: @ 8113250 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r5, 0 strh r0, [r6, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x22] @@ -41358,14 +41358,14 @@ sub_81135EC: @ 81135EC mov r8, r1 ldrb r0, [r1] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] mov r2, r8 ldrb r0, [r2] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r3, [r5, 0x8] @@ -41693,26 +41693,26 @@ sub_81138D4: @ 81138D4 ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x30] ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x34] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -42031,7 +42031,7 @@ _08113B60: sub_8113B90: @ 8113B90 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08113BA4 @@ -42057,7 +42057,7 @@ sub_8113BAC: @ 8113BAC ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x1F @@ -42076,7 +42076,7 @@ sub_8113BAC: @ 8113BAC strh r1, [r5, 0x22] ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r1, r0, 0 @@ -42475,7 +42475,7 @@ _08113F84: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x1F @@ -42492,7 +42492,7 @@ _08113F84: strh r1, [r5, 0x22] ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r1, r0, 0x4 @@ -43658,13 +43658,13 @@ sub_8114994: @ 8114994 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -43673,13 +43673,13 @@ sub_8114994: @ 8114994 ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x36] @@ -43699,7 +43699,7 @@ sub_8114994: @ 8114994 sub_81149FC: @ 81149FC push {r4,r5,lr} adds r5, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08114A50 @@ -43719,13 +43719,13 @@ sub_81149FC: @ 81149FC ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -43746,7 +43746,7 @@ _08114A50: sub_8114A60: @ 8114A60 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08114A74 @@ -43781,7 +43781,7 @@ _08114A9C: ldr r5, =gAnimBankTarget ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x4] @@ -43789,7 +43789,7 @@ _08114A9C: strh r0, [r6, 0x32] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r4, [r4, 0x6] @@ -43893,7 +43893,7 @@ sub_8114B80: @ 8114B80 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r2, [r6, 0x2] @@ -43901,7 +43901,7 @@ sub_8114B80: @ 8114B80 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r3, [r6, 0x4] @@ -44657,7 +44657,7 @@ _081151BE: _081151DA: adds r0, r4, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r6 @@ -44693,7 +44693,7 @@ _081151DA: sub_8115228: @ 8115228 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0811523C @@ -44723,7 +44723,7 @@ _08115262: ldrb r5, [r0] adds r0, r5, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldr r2, =0x0000fff0 @@ -45244,7 +45244,7 @@ _0811565A: adds r4, r0 adds r0, r5, 0 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r1, 0x20 @@ -45255,7 +45255,7 @@ _0811565A: strh r1, [r4, 0xA] adds r0, r5, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 movs r1, 0x40 diff --git a/asm/battle_anim_815A0D4.s b/asm/battle_anim_815A0D4.s index d2a401f59..611e4b067 100755 --- a/asm/battle_anim_815A0D4.s +++ b/asm/battle_anim_815A0D4.s @@ -90,7 +90,7 @@ sub_815A160: @ 815A160 ldr r6, =gAnimBankTarget ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 8 @@ -100,7 +100,7 @@ sub_815A160: @ 815A160 asrs r4, 16 ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r1, r0, 0 lsls r1, 24 lsrs r1, 8 @@ -210,13 +210,13 @@ sub_815A254: @ 815A254 ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r7, r0, 0 ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r6, r0, 0 @@ -816,7 +816,7 @@ _0815A6F8: sub_815A73C: @ 815A73C push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0815A75E @@ -1254,13 +1254,13 @@ sub_815AAA4: @ 815AAA4 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -1510,7 +1510,7 @@ _0815ACEC: _0815ACEE: ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x2] @@ -1518,7 +1518,7 @@ _0815ACEE: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -1906,13 +1906,13 @@ sub_815AFF0: @ 815AFF0 ldr r6, =gAnimBankAttacker ldrb r0, [r6] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0xC] ldrb r0, [r6] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0xE] @@ -2281,13 +2281,13 @@ _0815B2D8: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x32] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x36] @@ -2373,13 +2373,13 @@ _0815B3BE: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -2817,7 +2817,7 @@ _0815B71E: ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x32] @@ -3624,14 +3624,14 @@ _0815BE2E: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, r5 strh r0, [r7, 0x20] ldrb r0, [r4] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x20 @@ -4994,13 +4994,13 @@ sub_815C95C: @ 815C95C ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -5531,13 +5531,13 @@ sub_815CDB4: @ 815CDB4 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -5842,13 +5842,13 @@ _0815D05A: ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 mov r2, r10 lsls r1, r2, 16 @@ -6840,7 +6840,7 @@ _0815D896: ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r6, 0x2] @@ -6848,7 +6848,7 @@ _0815D896: strh r0, [r5, 0x20] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r6, [r6, 0x4] @@ -7382,13 +7382,13 @@ _0815DCEA: ldrb r4, [r0] adds r0, r4, 0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x10] adds r0, r4, 0 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x12] @@ -7789,7 +7789,7 @@ sub_815E01C: @ 815E01C _0815E038: ldrb r0, [r6] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r4, =gBattleAnimArgs lsrs r0, 24 @@ -7798,7 +7798,7 @@ _0815E038: strh r0, [r5, 0x20] ldrb r0, [r6] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r1, [r4, 0x2] @@ -7931,7 +7931,7 @@ _0815E14E: bne _0815E188 ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 ldrb r0, [r5] movs r1, 0 @@ -7951,7 +7951,7 @@ _0815E17C: _0815E188: ldrb r0, [r5] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 ldrb r0, [r5] movs r1, 0 @@ -7971,7 +7971,7 @@ _0815E1AC: ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 ldrb r0, [r5] movs r1, 0 @@ -7990,13 +7990,13 @@ _0815E1D0: ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x22] ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x24] @@ -8349,14 +8349,14 @@ sub_815E47C: @ 815E47C mov r10, r0 ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x1E] mov r1, r10 ldrb r0, [r1] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x20] @@ -8364,14 +8364,14 @@ sub_815E47C: @ 815E47C mov r8, r0 ldrb r0, [r0] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r7, 0x22] mov r1, r8 ldrb r0, [r1] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 mov r1, r8 ldrb r0, [r1] @@ -8524,7 +8524,7 @@ _0815E5FE: lsls r0, 2 ldr r1, =gSprites adds r0, r1 - bl sub_80A6900 + bl AnimateBallThrow ldrh r0, [r4, 0xC] adds r0, 0x1 strh r0, [r4, 0xC] @@ -8542,7 +8542,7 @@ _0815E634: lsls r0, 2 ldr r1, =gSprites adds r0, r1 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _0815E6D2 @@ -8659,7 +8659,7 @@ _0815E724: strh r1, [r4, 0x3C] adds r0, r5, 0 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] @@ -8950,7 +8950,7 @@ _0815E970: _0815E972: ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] @@ -9342,7 +9342,7 @@ sub_815EC48: @ 815EC48 ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 @@ -9350,7 +9350,7 @@ sub_815EC48: @ 815EC48 movs r0, 0x2 eors r0, r1 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -9771,14 +9771,14 @@ _0815EFEC: lsls r0, 24 lsrs r0, 24 movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r5, r0, 24 ldrh r0, [r4, 0x3C] lsls r0, 24 lsrs r0, 24 movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r1, r0, 24 _0815F00C: @@ -9994,10 +9994,10 @@ sub_815F18C: @ 815F18C ldr r4, =gAnimBankTarget ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition ldrb r0, [r4] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition ldrb r0, [r4] bl GetBankSide lsls r0, 24 @@ -10387,7 +10387,7 @@ _0815F4C8: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x3 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x22] @@ -11180,7 +11180,7 @@ _0815FB50: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 lsls r3, r5, 16 @@ -11318,7 +11318,7 @@ _0815FC56: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -11331,7 +11331,7 @@ _0815FCB4: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 cmp r4, r0 @@ -11469,7 +11469,7 @@ _0815FD8C: mov r1, r10 ldrb r0, [r1] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r3, r5, 0 @@ -11499,7 +11499,7 @@ _0815FE0C: mov r2, r10 ldrb r0, [r2] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r3, r5, 0 @@ -11566,7 +11566,7 @@ _0815FE92: ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r0, 0x10 @@ -11724,14 +11724,14 @@ _08160008: ldr r0, =gAnimBankAttacker ldrb r0, [r0] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r5, r0, 0 ldr r0, =gAnimBankTarget ldrb r0, [r0] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 adds r2, r0, 0 @@ -12169,7 +12169,7 @@ sub_81603A8: @ 81603A8 ldr r4, =gAnimBankAttacker ldrb r0, [r4] movs r1, 0x2 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r5, 0x20] diff --git a/asm/battle_anim_8170478.s b/asm/battle_anim_8170478.s index a5e3b5f88..635c02e03 100644 --- a/asm/battle_anim_8170478.s +++ b/asm/battle_anim_8170478.s @@ -886,7 +886,7 @@ _08170C08: bl GetMonData lsls r0, 16 lsrs r0, 16 - bl ball_number_to_ball_processing_index + bl ItemIdToBallId lsls r0, 24 lsrs r0, 24 mov r8, r0 @@ -907,13 +907,13 @@ _08170C44: ldr r5, =gAnimBankAttacker ldrb r0, [r5] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 ldrb r0, [r5] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition adds r1, r0, 0 lsls r1, 24 ldr r2, =gSprites @@ -934,7 +934,7 @@ _08170C44: mov r0, r8 str r0, [sp] adds r0, r4, 0 - bl sub_8171D98 + bl LaunchBallStarsTask lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x1C] @@ -950,7 +950,7 @@ _08170C44: ldrb r1, [r5] movs r0, 0 mov r3, r8 - bl sub_81729E8 + bl LaunchBallFadeMonTask lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x1E] @@ -998,10 +998,10 @@ sub_8170CFC: @ 8170CFC lsrs r4, 24 ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId lsls r0, 24 lsrs r0, 24 - bl sub_8076A78 + bl LoadBallGfx adds r0, r4, 0 bl DestroyAnimVisualTask pop {r4} @@ -1018,10 +1018,10 @@ sub_8170D24: @ 8170D24 lsrs r4, 24 ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId lsls r0, 24 lsrs r0, 24 - bl sub_8076AE8 + bl FreeBallGfx adds r0, r4, 0 bl DestroyAnimVisualTask pop {r4} @@ -1057,8 +1057,8 @@ _08170D74: .pool thumb_func_end sub_8170D4C - thumb_func_start ball_number_to_ball_processing_index -ball_number_to_ball_processing_index: @ 8170D84 + thumb_func_start ItemIdToBallId +ItemIdToBallId: @ 8170D84 push {lr} lsls r0, 16 lsrs r0, 16 @@ -1123,7 +1123,7 @@ _08170DFC: _08170DFE: pop {r1} bx r1 - thumb_func_end ball_number_to_ball_processing_index + thumb_func_end ItemIdToBallId thumb_func_start sub_8170E04 sub_8170E04: @ 8170E04 @@ -1138,14 +1138,14 @@ sub_8170E04: @ 8170E04 mov r10, r0 ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 lsls r0, r1, 1 adds r0, r1 lsls r0, 3 - ldr r1, =gUnknown_0832C588 + ldr r1, =gBallSpriteTemplates adds r0, r1 movs r1, 0x20 movs r2, 0x50 @@ -1166,14 +1166,14 @@ sub_8170E04: @ 8170E04 mov r8, r2 ldrb r0, [r2] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x30] mov r1, r8 ldrb r0, [r1] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r0, 0x10 @@ -1278,7 +1278,7 @@ _08170F50: _08170F54: ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 @@ -1294,7 +1294,7 @@ _08170F54: lsls r0, r4, 1 adds r0, r4 lsls r0, 3 - ldr r1, =gUnknown_0832C588 + ldr r1, =gBallSpriteTemplates adds r0, r1 adds r1, r6, 0 adds r1, 0x20 @@ -1317,14 +1317,14 @@ _08170F54: mov r8, r1 ldrb r0, [r1] movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r6, 0x30] mov r1, r8 ldrb r0, [r1] movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 subs r0, 0x10 @@ -1487,7 +1487,7 @@ sub_8171134: @ 8171134 push {r4,r5,lr} sub sp, 0x4 adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _081711D2 @@ -1532,7 +1532,7 @@ _08171188: str r0, [r4, 0x1C] ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0xB @@ -1549,13 +1549,13 @@ _08171188: str r5, [sp] movs r2, 0x1 movs r3, 0x1C - bl sub_8171D98 + bl LaunchBallStarsTask ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0 movs r2, 0xE adds r3, r5, 0 - bl sub_81729E8 + bl LaunchBallFadeMonTask _081711D2: add sp, 0x4 pop {r4,r5} @@ -2671,7 +2671,7 @@ sub_8171AAC: @ 8171AAC orrs r0, r1 strb r0, [r3] adds r0, r4, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _08171ADC @@ -2697,7 +2697,7 @@ sub_8171AE4: @ 8171AE4 str r0, [r4, 0x1C] ldr r0, =gLastUsedItem ldrh r0, [r0] - bl ball_number_to_ball_processing_index + bl ItemIdToBallId lsls r0, 24 lsrs r5, r0, 24 cmp r5, 0xB @@ -2714,13 +2714,13 @@ sub_8171AE4: @ 8171AE4 str r5, [sp] movs r2, 0x1 movs r3, 0x1C - bl sub_8171D98 + bl LaunchBallStarsTask ldr r0, =gAnimBankTarget ldrb r1, [r0] movs r0, 0x1 movs r2, 0xE adds r3, r5, 0 - bl sub_81729E8 + bl LaunchBallFadeMonTask _08171B36: ldr r6, =gSprites ldr r5, =gBankSpriteIds @@ -3007,8 +3007,8 @@ _08171D86: .pool thumb_func_end sub_8171D60 - thumb_func_start sub_8171D98 -sub_8171D98: @ 8171D98 + thumb_func_start LaunchBallStarsTask +LaunchBallStarsTask: @ 8171D98 push {r4-r6,lr} mov r6, r10 mov r5, r9 @@ -3070,7 +3070,7 @@ sub_8171D98: @ 8171D98 pop {r1} bx r1 .pool - thumb_func_end sub_8171D98 + thumb_func_end LaunchBallStarsTask thumb_func_start sub_8171E20 sub_8171E20: @ 8171E20 @@ -4476,8 +4476,8 @@ _081729E2: bx r0 thumb_func_end sub_8172944 - thumb_func_start sub_81729E8 -sub_81729E8: @ 81729E8 + thumb_func_start LaunchBallFadeMonTask +LaunchBallFadeMonTask: @ 81729E8 push {r4-r7,lr} mov r7, r9 mov r6, r8 @@ -4563,7 +4563,7 @@ _08172A7E: pop {r1} bx r1 .pool - thumb_func_end sub_81729E8 + thumb_func_end LaunchBallFadeMonTask thumb_func_start sub_8172AB0 sub_8172AB0: @ 8172AB0 @@ -5234,12 +5234,12 @@ _0817303A: ldrb r0, [r4, 0x8] mov r8, r0 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r5, r0, 24 mov r0, r8 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r2, r0, 24 movs r1, 0x1E @@ -5579,7 +5579,7 @@ sub_817330C: @ 817330C lsls r0, 24 lsrs r0, 24 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 ldr r5, =gBattleAnimArgs lsrs r0, 24 @@ -5591,7 +5591,7 @@ sub_817330C: @ 817330C lsls r0, 24 lsrs r0, 24 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 ldrh r5, [r5, 0x6] @@ -5652,7 +5652,7 @@ _081733C0: sub_81733D4: @ 81733D4 push {r4,lr} adds r4, r0, 0 - bl sub_80A6900 + bl AnimateBallThrow lsls r0, 24 cmp r0, 0 beq _081733F6 diff --git a/asm/contest.s b/asm/contest.s index dba7ae17e..e3e4ccf86 100644 --- a/asm/contest.s +++ b/asm/contest.s @@ -13829,13 +13829,13 @@ sub_80DEA5C: @ 80DEA5C strh r0, [r4, 0x26] movs r0, 0x3 movs r1, 0 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x20] movs r0, 0x3 movs r1, 0x1 - bl sub_80A5C6C + bl GetBankPosition lsls r0, 24 lsrs r0, 24 strh r0, [r4, 0x22] diff --git a/asm/crt0.s b/asm/crt0.s index 0b14a1469..9ed678968 100644 --- a/asm/crt0.s +++ b/asm/crt0.s @@ -68,8 +68,8 @@ GPIOPortReadEnable: @ 80000C8 .4byte gAbilityDescriptionPointers .4byte gItems .4byte gBattleMoves - .4byte gUnknown_0832C400 - .4byte gUnknown_0832C460 + .4byte gBallSpriteSheets + .4byte gBallSpritePalettes .4byte 0x000000a8, 0x00000864, 0x0000089b diff --git a/asm/field_poison.s b/asm/field_poison.s deleted file mode 100644 index 83262a1a5..000000000 --- a/asm/field_poison.s +++ /dev/null @@ -1,323 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80F9568 -sub_80F9568: @ 80F9568 - push {lr} - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080F9580 - movs r0, 0xCE - lsls r0, 1 - cmp r1, r0 - bne _080F9584 -_080F9580: - movs r0, 0 - b _080F9586 -_080F9584: - movs r0, 0x1 -_080F9586: - pop {r1} - bx r1 - thumb_func_end sub_80F9568 - - thumb_func_start sub_80F958C -sub_80F958C: @ 80F958C - push {r4,r5,lr} - ldr r4, =gPlayerParty - movs r5, 0 -_080F9592: - adds r0, r4, 0 - bl sub_80F9568 - cmp r0, 0 - beq _080F95B0 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - beq _080F95B0 - movs r0, 0 - b _080F95BA - .pool -_080F95B0: - adds r5, 0x1 - adds r4, 0x64 - cmp r5, 0x5 - ble _080F9592 - movs r0, 0x1 -_080F95BA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80F958C - - thumb_func_start sub_80F95C0 -sub_80F95C0: @ 80F95C0 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - adds r4, r0, 0 - muls r4, r1 - ldr r0, =gPlayerParty - adds r4, r0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r1, 0x7 - bl AdjustFriendship - adds r0, r4, 0 - movs r1, 0x37 - mov r2, sp - bl SetMonData - ldr r5, =gStringVar1 - adds r0, r4, 0 - movs r1, 0x2 - adds r2, r5, 0 - bl GetMonData - adds r0, r5, 0 - bl StringGetEnd10 - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F95C0 - - thumb_func_start sub_80F960C -sub_80F960C: @ 80F960C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - bl sub_80F9568 - cmp r0, 0 - beq _080F964C - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - cmp r0, 0 - bne _080F964C - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - bl pokemon_ailments_get_primary - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080F964C - movs r0, 0x1 - b _080F964E - .pool -_080F964C: - movs r0, 0 -_080F964E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80F960C - - thumb_func_start sub_80F9654 -sub_80F9654: @ 80F9654 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, =gTasks + 0x8 - adds r4, r0, r1 - movs r0, 0 - ldrsh r5, [r4, r0] - cmp r5, 0x1 - beq _080F96AE - cmp r5, 0x1 - bgt _080F967C - cmp r5, 0 - beq _080F9682 - b _080F9722 - .pool -_080F967C: - cmp r5, 0x2 - beq _080F96C0 - b _080F9722 -_080F9682: - ldrh r1, [r4, 0x2] - movs r2, 0x2 - ldrsh r0, [r4, r2] - cmp r0, 0x5 - bgt _080F96A8 -_080F968C: - lsls r0, r1, 24 - lsrs r0, 24 - bl sub_80F960C - cmp r0, 0 - bne _080F96FC - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - adds r1, r0, 0 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - ble _080F968C -_080F96A8: - movs r0, 0x2 - strh r0, [r4] - b _080F9722 -_080F96AE: - bl IsFieldMessageBoxHidden - lsls r0, 24 - cmp r0, 0 - beq _080F9722 - ldrh r0, [r4] - subs r0, 0x1 - strh r0, [r4] - b _080F9722 -_080F96C0: - bl sub_80F958C - adds r1, r0, 0 - cmp r1, 0 - beq _080F9714 - bl InBattlePyramid - adds r4, r0, 0 - bl InBattlePike - orrs r4, r0 - lsls r4, 24 - cmp r4, 0 - bne _080F96E6 - bl sub_81D5C18 - lsls r0, 24 - cmp r0, 0 - beq _080F96F0 -_080F96E6: - ldr r0, =gSpecialVar_Result - strh r5, [r0] - b _080F9718 - .pool -_080F96F0: - ldr r1, =gSpecialVar_Result - movs r0, 0x1 - strh r0, [r1] - b _080F9718 - .pool -_080F96FC: - ldrb r0, [r4, 0x2] - bl sub_80F95C0 - ldr r0, =gText_PkmnFainted3 - bl ShowFieldMessage - ldrh r0, [r4] - adds r0, 0x1 - strh r0, [r4] - b _080F9722 - .pool -_080F9714: - ldr r0, =gSpecialVar_Result - strh r1, [r0] -_080F9718: - bl EnableBothScriptContexts - adds r0, r6, 0 - bl DestroyTask -_080F9722: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F9654 - - thumb_func_start sub_80F972C -sub_80F972C: @ 80F972C - push {lr} - ldr r0, =sub_80F9654 - movs r1, 0x50 - bl CreateTask - bl ScriptContext1_Stop - pop {r0} - bx r0 - .pool - thumb_func_end sub_80F972C - - thumb_func_start overworld_poison -overworld_poison: @ 80F9744 - push {r4-r7,lr} - sub sp, 0x4 - ldr r4, =gPlayerParty - movs r7, 0 - movs r6, 0 - movs r5, 0x5 -_080F9750: - adds r0, r4, 0 - movs r1, 0x5 - bl GetMonData - cmp r0, 0 - beq _080F9794 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - bl pokemon_ailments_get_primary - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080F9794 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - str r0, [sp] - cmp r0, 0 - beq _080F9786 - subs r0, 0x1 - str r0, [sp] - cmp r0, 0 - bne _080F9788 -_080F9786: - adds r6, 0x1 -_080F9788: - adds r0, r4, 0 - movs r1, 0x39 - mov r2, sp - bl SetMonData - adds r7, 0x1 -_080F9794: - adds r4, 0x64 - subs r5, 0x1 - cmp r5, 0 - bge _080F9750 - cmp r6, 0 - bne _080F97A4 - cmp r7, 0 - beq _080F97A8 -_080F97A4: - bl overworld_posion_effect -_080F97A8: - cmp r6, 0 - beq _080F97B4 - movs r0, 0x2 - b _080F97BE - .pool -_080F97B4: - cmp r7, 0 - bne _080F97BC - movs r0, 0 - b _080F97BE -_080F97BC: - movs r0, 0x1 -_080F97BE: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end overworld_poison - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/fldeff_80F9BCC.s b/asm/fldeff_80F9BCC.s index efdc114a2..369bef809 100644 --- a/asm/fldeff_80F9BCC.s +++ b/asm/fldeff_80F9BCC.s @@ -2200,8 +2200,8 @@ _080FAE2A: .pool thumb_func_end sub_80FADE4 - thumb_func_start task50_overworld_posion_effect -task50_overworld_posion_effect: @ 80FAE38 + thumb_func_start task50_overworld_poison_effect +task50_overworld_poison_effect: @ 80FAE38 push {lr} lsls r0, 24 lsrs r2, r0, 24 @@ -2260,25 +2260,25 @@ _080FAE92: _080FAEA2: pop {r0} bx r0 - thumb_func_end task50_overworld_posion_effect + thumb_func_end task50_overworld_poison_effect - thumb_func_start overworld_posion_effect -overworld_posion_effect: @ 80FAEA8 + thumb_func_start overworld_poison_effect +overworld_poison_effect: @ 80FAEA8 push {lr} movs r0, 0x4F bl PlaySE - ldr r0, =task50_overworld_posion_effect + ldr r0, =task50_overworld_poison_effect movs r1, 0x50 bl CreateTask pop {r0} bx r0 .pool - thumb_func_end overworld_posion_effect + thumb_func_end overworld_poison_effect thumb_func_start c3_80A0DD8_is_running c3_80A0DD8_is_running: @ 80FAEC0 push {lr} - ldr r0, =task50_overworld_posion_effect + ldr r0, =task50_overworld_poison_effect bl FuncIsActiveTask lsls r0, 24 lsrs r0, 24 diff --git a/asm/macros/battle_script.inc b/asm/macros/battle_script.inc index 47e124a86..a16b59366 100644 --- a/asm/macros/battle_script.inc +++ b/asm/macros/battle_script.inc @@ -422,10 +422,10 @@ .byte \bank .endm - .macro switchinanim bank, param1 + .macro switchinanim bank, dontclearsubstitutebit .byte 0x4e .byte \bank - .byte \param1 + .byte \dontclearsubstitutebit .endm .macro jumpifcantswitch bank, param1 @@ -1387,3 +1387,15 @@ .macro jumpifnostatus3 bank, status, jumpptr jumpifstatus3condition \bank, \status, 0x1, \jumpptr .endm + + .macro jumpifmovehadnoeffect jumpptr + jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, \jumpptr + .endm + + .macro jumpifbattletype flags, jumpptr + jumpifword COMMON_BITS, gBattleTypeFlags, \flags, \jumpptr + .endm + + .macro jumpifnotbattletype flags, jumpptr + jumpifword NO_COMMON_BITS, gBattleTypeFlags, \flags, \jumpptr + .endm diff --git a/asm/macros/pokemon_data.inc b/asm/macros/pokemon_data.inc index 31c015334..ce8ef98ac 100644 --- a/asm/macros/pokemon_data.inc +++ b/asm/macros/pokemon_data.inc @@ -52,5 +52,5 @@ .byte \max_level .endif - .2byte SPECIES_\species + .2byte \species .endm diff --git a/asm/main_menu.s b/asm/main_menu.s index 6194f0487..7b7ce49f7 100644 --- a/asm/main_menu.s +++ b/asm/main_menu.s @@ -2215,7 +2215,7 @@ sub_8030A70: @ 8030A70 str r2, [sp, 0x10] movs r2, 0x70 movs r3, 0x3A - bl sub_8076438 + bl CreatePokeballSpriteToReleaseMon lsls r0, r4, 2 adds r0, r4 lsls r0, 3 diff --git a/asm/rom4.s b/asm/overworld.s index ea03b8a8d..ea03b8a8d 100644 --- a/asm/rom4.s +++ b/asm/overworld.s diff --git a/asm/pokeball.s b/asm/pokeball.s deleted file mode 100755 index b4fc36d97..000000000 --- a/asm/pokeball.s +++ /dev/null @@ -1,2861 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_80753E8 -sub_80753E8: @ 80753E8 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - ldr r1, =gDoingBattleAnim - movs r0, 0x1 - strb r0, [r1] - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r6, =gActiveBank - ldrb r1, [r6] - ldr r2, [r0, 0x4] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0] - movs r2, 0x8 - orrs r1, r2 - strb r1, [r0] - ldr r0, =sub_8075450 - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - strh r4, [r1, 0xA] - strh r5, [r1, 0xC] - ldrb r0, [r6] - strh r0, [r1, 0xE] - movs r0, 0 - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_80753E8 - - thumb_func_start sub_8075450 -sub_8075450: @ 8075450 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - movs r0, 0 - str r0, [sp] - ldr r1, =gTasks - mov r2, r10 - lsls r0, r2, 2 - add r0, r10 - lsls r0, 3 - adds r1, r0, r1 - ldrh r2, [r1, 0x8] - movs r3, 0x8 - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _08075488 - adds r0, r2, 0x1 - strh r0, [r1, 0x8] - b _08075602 - .pool -_08075488: - ldrh r0, [r1, 0xC] - mov r8, r0 - ldrb r5, [r1, 0xE] - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080754B4 - ldr r1, =gBattlePartyID - lsls r0, r5, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - b _080754C2 - .pool -_080754B4: - ldr r1, =gBattlePartyID - lsls r0, r5, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty -_080754C2: - adds r0, r1 - movs r1, 0x26 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - bl ball_number_to_ball_processing_index - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_8076A78 - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 3 - ldr r1, =gUnknown_0832C588 - adds r0, r1 - movs r1, 0x20 - movs r2, 0x50 - movs r3, 0x1D - bl CreateSprite - lsls r0, 24 - lsrs r7, r0, 24 - ldr r2, =gSprites - mov r9, r2 - lsls r0, r7, 4 - adds r0, r7 - lsls r6, r0, 2 - adds r4, r6, r2 - movs r0, 0x80 - strh r0, [r4, 0x2E] - movs r3, 0 - strh r3, [r4, 0x30] - mov r0, r8 - strh r0, [r4, 0x3C] - mov r2, r8 - cmp r2, 0xFE - beq _08075548 - cmp r2, 0xFF - bne _08075584 - ldr r0, =gBankTarget - strb r5, [r0] - movs r0, 0x18 - strh r0, [r4, 0x20] - movs r0, 0x44 - strh r0, [r4, 0x22] - mov r0, r9 - adds r0, 0x1C - adds r0, r6, r0 - ldr r1, =sub_80761B4 - str r1, [r0] - b _08075592 - .pool -_08075548: - adds r0, r5, 0 - movs r1, 0 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x18 - strh r0, [r4, 0x22] - ldr r0, =gBankTarget - strb r5, [r0] - movs r3, 0 - strh r3, [r4, 0x2E] - mov r0, r9 - adds r0, 0x1C - adds r0, r6, r0 - ldr r1, =sub_8076398 - str r1, [r0] - b _08075592 - .pool -_08075584: - movs r0, 0x1 - bl GetBankByIdentity - ldr r1, =gBankTarget - strb r0, [r1] - movs r0, 0x1 - str r0, [sp] -_08075592: - ldr r0, =gSprites - lsls r1, r7, 4 - adds r1, r7 - lsls r1, 2 - adds r4, r1, r0 - ldr r5, =gBankTarget - ldrb r0, [r5] - strh r0, [r4, 0x3A] - ldr r2, [sp] - cmp r2, 0 - bne _080755B8 - mov r0, r10 - bl DestroyTask - b _08075602 - .pool -_080755B8: - movs r0, 0x22 - strh r0, [r4, 0x2E] - ldrb r0, [r5] - movs r1, 0 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x32] - ldrb r0, [r5] - movs r1, 0x1 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x10 - strh r0, [r4, 0x36] - ldr r0, =0x0000ffd8 - strh r0, [r4, 0x38] - adds r0, r4, 0 - bl sub_80A68D4 - mov r3, r10 - strh r3, [r4, 0x6] - ldr r1, =gTasks - mov r2, r10 - lsls r0, r2, 2 - add r0, r10 - lsls r0, 3 - adds r0, r1 - ldrb r1, [r5] - strh r1, [r0, 0x10] - ldr r1, =TaskDummy - str r1, [r0] - movs r0, 0x3D - bl PlaySE -_08075602: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075450 - - thumb_func_start objc_0804ABD4 -objc_0804ABD4: @ 8075620 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - adds r7, r0, 0 - bl sub_80A6900 - lsls r0, 24 - cmp r0, 0 - beq _080756C0 - ldrb r6, [r7, 0x6] - ldr r1, =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldrb r5, [r0, 0x10] - ldrb r0, [r0, 0xC] - mov r8, r0 - adds r0, r7, 0 - movs r1, 0x1 - bl StartSpriteAnim - adds r2, r7, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldrh r0, [r7, 0x24] - ldrh r1, [r7, 0x20] - adds r0, r1 - movs r1, 0 - strh r0, [r7, 0x20] - ldrh r0, [r7, 0x26] - ldrh r2, [r7, 0x22] - adds r0, r2 - strh r0, [r7, 0x22] - strh r1, [r7, 0x24] - strh r1, [r7, 0x26] - strh r1, [r7, 0x38] - adds r0, r5, 0 - bl sub_8076B14 - lsls r0, 16 - lsrs r0, 16 - bl ball_number_to_ball_processing_index - adds r4, r0, 0 - ldrh r0, [r7, 0x20] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r7, 0x22] - subs r1, 0x5 - lsls r1, 24 - lsrs r1, 24 - lsls r4, 24 - lsrs r4, 24 - str r4, [sp] - movs r2, 0x1 - movs r3, 0x1C - bl sub_8171D98 - movs r0, 0 - adds r1, r5, 0 - movs r2, 0xE - adds r3, r4, 0 - bl sub_81729E8 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r7, 0x2E] - strh r5, [r7, 0x3A] - mov r0, r8 - strh r0, [r7, 0x3C] - adds r0, r6, 0 - bl DestroyTask - ldr r0, =sub_80756D4 - str r0, [r7, 0x1C] -_080756C0: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end objc_0804ABD4 - - thumb_func_start sub_80756D4 -sub_80756D4: @ 80756D4 - ldr r1, =sub_80756E0 - str r1, [r0, 0x1C] - bx lr - .pool - thumb_func_end sub_80756D4 - - thumb_func_start sub_80756E0 -sub_80756E0: @ 80756E0 - push {r4-r7,lr} - adds r6, r0, 0 - ldrh r0, [r6, 0x38] - adds r0, 0x1 - movs r7, 0 - strh r0, [r6, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xA - bne _0807573A - strh r7, [r6, 0x38] - ldr r0, =sub_807574C - str r0, [r6, 0x1C] - ldr r5, =gBankSpriteIds - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - movs r1, 0x2 - bl StartSpriteAffineAnim - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl AnimateSprite - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r7, [r0, 0x30] -_0807573A: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80756E0 - - thumb_func_start sub_807574C -sub_807574C: @ 807574C - push {r4-r6,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - bne _08075764 - movs r0, 0x3C - bl PlaySE -_08075764: - ldr r6, =gSprites - ldr r5, =gBankSpriteIds - movs r1, 0x3A - ldrsh r0, [r4, r1] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r6 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _080757BC - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAnim - movs r2, 0x3A - ldrsh r0, [r4, r2] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - movs r0, 0 - strh r0, [r4, 0x38] - ldr r0, =sub_80757E4 - str r0, [r4, 0x1C] - b _080757DC - .pool -_080757BC: - ldrh r0, [r1, 0x30] - adds r0, 0x60 - strh r0, [r1, 0x30] - movs r1, 0x3A - ldrsh r0, [r4, r1] - adds r0, r5 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - movs r2, 0x30 - ldrsh r0, [r1, r2] - negs r0, r0 - asrs r0, 8 - strh r0, [r1, 0x26] -_080757DC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_807574C - - thumb_func_start sub_80757E4 -sub_80757E4: @ 80757E4 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0807582C - ldrh r0, [r4, 0x38] - adds r0, 0x1 - movs r1, 0 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bne _0807582C - strh r1, [r4, 0x34] - movs r0, 0x20 - strh r0, [r4, 0x36] - strh r1, [r4, 0x38] - movs r0, 0 - movs r1, 0x20 - bl Cos - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - movs r0, 0x36 - ldrsh r1, [r4, r0] - movs r0, 0 - bl Cos - negs r0, r0 - strh r0, [r4, 0x26] - ldr r0, =sub_8075838 - str r0, [r4, 0x1C] -_0807582C: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80757E4 - - thumb_func_start sub_8075838 -sub_8075838: @ 8075838 - push {r4,r5,lr} - adds r4, r0, 0 - movs r5, 0 - ldrh r0, [r4, 0x34] - movs r1, 0xFF - ands r1, r0 - cmp r1, 0 - beq _0807584E - cmp r1, 0x1 - beq _080758C2 - b _080758EE -_0807584E: - movs r1, 0x38 - ldrsh r0, [r4, r1] - movs r2, 0x36 - ldrsh r1, [r4, r2] - bl Cos - negs r0, r0 - strh r0, [r4, 0x26] - ldrh r1, [r4, 0x38] - adds r1, 0x4 - ldrh r2, [r4, 0x34] - lsls r0, r2, 16 - asrs r0, 24 - adds r1, r0 - strh r1, [r4, 0x38] - lsls r1, 16 - asrs r1, 16 - cmp r1, 0x3F - ble _080758EE - ldrh r0, [r4, 0x36] - subs r0, 0xA - strh r0, [r4, 0x36] - ldr r1, =0x00000101 - adds r0, r2, r1 - strh r0, [r4, 0x34] - lsls r0, 16 - asrs r0, 24 - cmp r0, 0x4 - bne _0807588A - movs r5, 0x1 -_0807588A: - cmp r0, 0x2 - beq _080758AA - cmp r0, 0x2 - bgt _0807589C - cmp r0, 0x1 - beq _080758A2 - b _080758BA - .pool -_0807589C: - cmp r0, 0x3 - beq _080758B2 - b _080758BA -_080758A2: - movs r0, 0x38 - bl PlaySE - b _080758EE -_080758AA: - movs r0, 0x39 - bl PlaySE - b _080758EE -_080758B2: - movs r0, 0x3A - bl PlaySE - b _080758EE -_080758BA: - movs r0, 0x3B - bl PlaySE - b _080758EE -_080758C2: - movs r2, 0x38 - ldrsh r0, [r4, r2] - movs r2, 0x36 - ldrsh r1, [r4, r2] - bl Cos - negs r0, r0 - strh r0, [r4, 0x26] - ldrh r1, [r4, 0x38] - subs r1, 0x4 - ldrh r2, [r4, 0x34] - lsls r0, r2, 16 - asrs r0, 24 - subs r1, r0 - strh r1, [r4, 0x38] - lsls r1, 16 - cmp r1, 0 - bgt _080758EE - strh r5, [r4, 0x38] - ldr r0, =0xffffff00 - ands r0, r2 - strh r0, [r4, 0x34] -_080758EE: - cmp r5, 0 - beq _08075926 - movs r5, 0 - strh r5, [r4, 0x34] - movs r0, 0x40 - movs r1, 0x20 - bl Cos - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - strh r5, [r4, 0x26] - movs r2, 0x3C - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0807591C - ldr r0, =sub_8075D14 - str r0, [r4, 0x1C] - b _08075926 - .pool -_0807591C: - ldr r0, =sub_8075930 - str r0, [r4, 0x1C] - movs r0, 0x1 - strh r0, [r4, 0x36] - strh r5, [r4, 0x38] -_08075926: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075838 - - thumb_func_start sub_8075930 -sub_8075930: @ 8075930 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - bne _08075964 - movs r0, 0 - strh r0, [r4, 0x34] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldr r0, =sub_8075970 - str r0, [r4, 0x1C] - movs r0, 0x17 - bl PlaySE -_08075964: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075930 - - thumb_func_start sub_8075970 -sub_8075970: @ 8075970 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x34] - movs r1, 0xFF - ands r1, r0 - cmp r1, 0x4 - bhi _08075A70 - lsls r0, r1, 2 - ldr r1, =_0807598C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0807598C: - .4byte _080759A0 - .4byte _080759D2 - .4byte _080759A0 - .4byte _08075A26 - .4byte _08075A70 -_080759A0: - ldrh r0, [r4, 0x36] - ldrh r2, [r4, 0x24] - adds r1, r0, r2 - strh r1, [r4, 0x24] - ldrh r1, [r4, 0x38] - adds r0, r1 - strh r0, [r4, 0x38] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - ldrh r0, [r4, 0x38] - adds r0, 0x3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x6 - bls _08075AB6 - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] - movs r0, 0 - strh r0, [r4, 0x38] - b _08075AB6 -_080759D2: - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - bne _08075A18 - movs r0, 0 - strh r0, [r4, 0x38] - ldrh r0, [r4, 0x36] - negs r0, r0 - strh r0, [r4, 0x36] - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - movs r2, 0x36 - ldrsh r0, [r4, r2] - cmp r0, 0 - bge _08075A0E - adds r0, r4, 0 - movs r1, 0x2 - bl ChangeSpriteAffineAnim - b _08075AB6 -_08075A0E: - adds r0, r4, 0 - movs r1, 0x1 - bl ChangeSpriteAffineAnim - b _08075AB6 -_08075A18: - adds r0, r4, 0 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0] - b _08075AB6 -_08075A26: - movs r1, 0x80 - lsls r1, 1 - adds r0, r1, 0 - ldrh r2, [r4, 0x34] - adds r0, r2 - strh r0, [r4, 0x34] - lsls r0, 16 - asrs r0, 24 - movs r2, 0x3C - ldrsh r1, [r4, r2] - cmp r0, r1 - bne _08075A48 - ldr r0, =sub_8075D14 - str r0, [r4, 0x1C] - b _08075AB6 - .pool -_08075A48: - cmp r1, 0x4 - bne _08075A5C - cmp r0, 0x3 - bne _08075A5C - ldr r0, =sub_8075FB4 - str r0, [r4, 0x1C] - b _08075A62 - .pool -_08075A5C: - ldrh r0, [r4, 0x34] - adds r0, 0x1 - strh r0, [r4, 0x34] -_08075A62: - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - b _08075AB6 -_08075A70: - ldrh r0, [r4, 0x38] - adds r0, 0x1 - strh r0, [r4, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1F - bne _08075AB6 - movs r0, 0 - strh r0, [r4, 0x38] - ldrh r1, [r4, 0x34] - ldr r0, =0xffffff00 - ands r0, r1 - strh r0, [r4, 0x34] - adds r0, r4, 0 - movs r1, 0x3 - bl StartSpriteAffineAnim - movs r1, 0x36 - ldrsh r0, [r4, r1] - cmp r0, 0 - bge _08075AA8 - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAffineAnim - b _08075AB0 - .pool -_08075AA8: - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim -_08075AB0: - movs r0, 0x17 - bl PlaySE -_08075AB6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8075970 - - thumb_func_start c3_0804B070 -c3_0804B070: @ 8075ABC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r2, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r2 - ldrb r1, [r0, 0xC] - mov r12, r1 - ldrb r5, [r0, 0xA] - ldrh r6, [r0, 0x8] - ldrb r3, [r0, 0xE] - mov r8, r3 - ldrb r7, [r0, 0x10] - movs r3, 0x12 - ldrsh r1, [r0, r3] - lsls r3, r1, 16 - ldrh r1, [r0, 0x14] - orrs r3, r1 - movs r1, 0x26 - ldrsh r0, [r0, r1] - cmp r0, 0x20 - bhi _08075B88 - lsls r0, 2 - ldr r1, =_08075B04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_08075B04: - .4byte _08075B88 - .4byte _08075BB4 - .4byte _08075BDA - .4byte _08075C54 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075BF8 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075B88 - .4byte _08075C66 - .4byte _08075C7E - .4byte _08075CA8 -_08075B88: - ldr r0, =gSprites - lsls r1, r7, 4 - adds r1, r7 - lsls r1, 2 - adds r1, r0 - adds r1, 0x3F - ldrb r0, [r1] - lsls r0, 26 - cmp r0, 0 - blt _08075B9E - b _08075D04 -_08075B9E: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r2 - mov r1, r12 - adds r1, 0x1 - strh r1, [r0, 0x26] - b _08075D04 - .pool -_08075BB4: - adds r0, r3, 0 - bl ShouldPlayNormalPokeCry - cmp r0, 0x1 - bne _08075BCC - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0 - bl PlayCry3 - b _08075C2E -_08075BCC: - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0xB - bl PlayCry3 - b _08075C2E -_08075BDA: - bl StopCryAndClearCrySongs - ldr r1, =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - movs r1, 0x3 - strh r1, [r0, 0x1C] - movs r1, 0x14 - strh r1, [r0, 0x26] - b _08075D04 - .pool -_08075BF8: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r2 - ldrh r2, [r1, 0x1C] - movs r7, 0x1C - ldrsh r0, [r1, r7] - cmp r0, 0 - bne _08075CBA - adds r0, r3, 0 - bl ShouldPlayNormalPokeCry - cmp r0, 0x1 - bne _08075C22 - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0x1 - bl PlayCry4 - b _08075C2E -_08075C22: - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0xC - bl PlayCry4 -_08075C2E: - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x4] - mov r2, r8 - lsls r1, r2, 1 - add r1, r8 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r0, 0x41 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - adds r0, r4, 0 - bl DestroyTask - b _08075D04 - .pool -_08075C54: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r2 - movs r1, 0x6 - strh r1, [r0, 0x1C] - movs r1, 0x1E - strh r1, [r0, 0x26] - b _08075D04 -_08075C66: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r2 - ldrh r2, [r1, 0x1C] - movs r3, 0x1C - ldrsh r0, [r1, r3] - cmp r0, 0 - bne _08075CBA - ldrh r0, [r1, 0x26] - adds r0, 0x1 - strh r0, [r1, 0x26] -_08075C7E: - bl IsCryPlayingOrClearCrySongs - lsls r0, 24 - cmp r0, 0 - bne _08075D04 - bl StopCryAndClearCrySongs - ldr r0, =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - movs r0, 0x3 - strh r0, [r1, 0x1C] - ldrh r0, [r1, 0x26] - adds r0, 0x1 - strh r0, [r1, 0x26] - b _08075D04 - .pool -_08075CA8: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r1, r0, r2 - ldrh r2, [r1, 0x1C] - movs r7, 0x1C - ldrsh r0, [r1, r7] - cmp r0, 0 - beq _08075CC0 -_08075CBA: - subs r0, r2, 0x1 - strh r0, [r1, 0x1C] - b _08075D04 -_08075CC0: - adds r0, r3, 0 - bl ShouldPlayNormalPokeCry - cmp r0, 0x1 - bne _08075CD8 - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0 - bl PlayCry4 - b _08075CE4 -_08075CD8: - lsls r1, r5, 24 - asrs r1, 24 - adds r0, r6, 0 - movs r2, 0xB - bl PlayCry4 -_08075CE4: - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x4] - mov r2, r8 - lsls r1, r2, 1 - add r1, r8 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1, 0x1] - movs r0, 0x41 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - adds r0, r4, 0 - bl DestroyTask -_08075D04: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end c3_0804B070 - - thumb_func_start sub_8075D14 -sub_8075D14: @ 8075D14 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - ldrh r0, [r6, 0x3A] - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r6, 0 - movs r1, 0x1 - bl StartSpriteAnim - adds r0, r5, 0 - bl sub_8076B14 - lsls r0, 16 - lsrs r0, 16 - bl ball_number_to_ball_processing_index - adds r4, r0, 0 - ldrh r0, [r6, 0x20] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r6, 0x22] - subs r1, 0x5 - lsls r1, 24 - lsrs r1, 24 - lsls r4, 24 - lsrs r4, 24 - str r4, [sp] - movs r2, 0x1 - movs r3, 0x1C - bl sub_8171D98 - ldrh r1, [r6, 0x3A] - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - movs r2, 0xE - adds r3, r4, 0 - bl sub_81729E8 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r6, 0x2E] - ldr r0, =sub_8075FD4 - str r0, [r6, 0x1C] - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _08075D88 - b _08075EF4 -_08075D88: - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _08075DC0 - ldr r0, =gBattlePartyID - lsls r2, r5, 1 - adds r0, r2, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gEnemyParty - adds r7, r1, r0 - movs r4, 0x19 - mov r10, r4 - b _08075DD4 - .pool -_08075DC0: - ldr r0, =gBattlePartyID - lsls r2, r5, 1 - adds r0, r2, r0 - ldrh r1, [r0] - movs r0, 0x64 - muls r1, r0 - ldr r0, =gPlayerParty - adds r7, r1, r0 - movs r0, 0xE7 - mov r10, r0 -_08075DD4: - mov r8, r2 - adds r0, r7, 0 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r0, 0 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r5, r0 - beq _08075E00 - movs r0, 0x1 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r5, r0 - bne _08075E56 -_08075E00: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08075E56 - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x8] - ldrb r1, [r0, 0x9] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08075E56 - ldr r0, =gBattleTypeFlags - ldr r0, [r0] - movs r1, 0x42 - ands r0, r1 - cmp r0, 0x42 - bne _08075E4C - bl IsBGMPlaying - lsls r0, 24 - cmp r0, 0 - beq _08075E56 - ldr r0, =gMPlay_BGM - bl m4aMPlayStop - b _08075E56 - .pool -_08075E4C: - ldr r0, =gMPlay_BGM - ldr r1, =0x0000ffff - movs r2, 0x80 - bl m4aMPlayVolumeControl -_08075E56: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08075E70 - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x8] - ldrb r1, [r0, 0x9] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _08075E80 -_08075E70: - movs r4, 0 - b _08075EA2 - .pool -_08075E80: - movs r0, 0 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r5, r0 - beq _08075E9C - movs r0, 0x1 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r5, r0 - bne _08075EA0 -_08075E9C: - movs r4, 0x1 - b _08075EA2 -_08075EA0: - movs r4, 0x2 -_08075EA2: - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x4] - mov r2, r8 - adds r1, r2, r5 - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - movs r2, 0x40 - orrs r0, r2 - strb r0, [r1, 0x1] - ldr r0, =c3_0804B070 - movs r1, 0x3 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r3, 0 - mov r0, r9 - strh r0, [r1, 0x8] - mov r2, r10 - lsls r0, r2, 24 - asrs r0, 24 - strh r0, [r1, 0xA] - strh r4, [r1, 0xC] - strh r5, [r1, 0xE] - ldr r2, =gBankSpriteIds - movs r4, 0x3A - ldrsh r0, [r6, r4] - adds r0, r2 - ldrb r0, [r0] - strh r0, [r1, 0x10] - lsrs r0, r7, 16 - strh r0, [r1, 0x12] - strh r7, [r1, 0x14] - strh r3, [r1, 0x26] -_08075EF4: - ldr r4, =gBankSpriteIds - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, =gSprites - adds r0, r5 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldrh r0, [r6, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08075F50 - movs r2, 0x3A - ldrsh r0, [r6, r2] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_8039B58 - b _08075F66 - .pool -_08075F50: - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r5, 0 - adds r1, 0x1C - adds r0, r1 - ldr r1, =sub_8039E44 -_08075F66: - str r1, [r0] - ldr r5, =gBankSpriteIds - movs r2, 0x3A - ldrsh r0, [r6, r2] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, =gSprites - adds r0, r4 - bl AnimateSprite - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r5 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - movs r1, 0x80 - lsls r1, 5 - strh r1, [r0, 0x30] - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075D14 - - thumb_func_start sub_8075FB4 -sub_8075FB4: @ 8075FB4 - adds r3, r0, 0 - adds r3, 0x2C - ldrb r1, [r3] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r3] - ldr r1, =sub_80760F8 - str r1, [r0, 0x1C] - movs r1, 0 - strh r1, [r0, 0x34] - strh r1, [r0, 0x36] - strh r1, [r0, 0x38] - bx lr - .pool - thumb_func_end sub_8075FB4 - - thumb_func_start sub_8075FD4 -sub_8075FD4: @ 8075FD4 - push {r4-r7,lr} - adds r5, r0, 0 - movs r7, 0 - ldrh r0, [r5, 0x3A] - lsls r0, 24 - lsrs r6, r0, 24 - ldr r4, =gSprites - ldr r0, =gBankSpriteIds - adds r3, r6, r0 - ldrb r1, [r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08076016 - adds r2, r5, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_08076016: - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - adds r0, r1, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _08076040 - adds r0, r1, 0 - movs r1, 0 - bl StartSpriteAffineAnim - movs r7, 0x1 - b _0807605C - .pool -_08076040: - ldr r2, =0xfffffee0 - adds r0, r2, 0 - ldrh r2, [r1, 0x30] - adds r0, r2 - strh r0, [r1, 0x30] - ldrb r0, [r3] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - ldrh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 24 - strh r0, [r1, 0x26] -_0807605C: - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080760DE - cmp r7, 0 - beq _080760DE - ldr r2, =gSprites - ldr r0, =gBankSpriteIds - adds r0, r6, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r2, 0 - movs r1, 0 - strh r1, [r0, 0x26] - ldr r0, =gDoingBattleAnim - strb r2, [r0] - ldr r4, =gBattleSpritesDataPtr - ldr r0, [r4] - ldr r0, [r0, 0x4] - lsls r1, r6, 1 - adds r1, r6 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - adds r0, r5, 0 - bl FreeSpriteOamMatrix - adds r0, r5, 0 - bl DestroySprite - movs r3, 0 - ldr r0, [r4] - ldr r2, [r0, 0x4] - movs r5, 0x8 - movs r4, 0x3 -_080760B6: - ldrb r1, [r2] - adds r0, r5, 0 - ands r0, r1 - cmp r0, 0 - bne _080760C2 - adds r3, 0x1 -_080760C2: - adds r2, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _080760B6 - cmp r3, 0x4 - bne _080760DE - movs r4, 0 -_080760D0: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_8076AE8 - adds r4, 0x1 - cmp r4, 0xB - ble _080760D0 -_080760DE: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8075FD4 - - thumb_func_start sub_80760F8 -sub_80760F8: @ 80760F8 - push {r4-r7,lr} - adds r6, r0, 0 - ldrh r0, [r6, 0x3A] - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r6, 0x36] - adds r0, 0x1 - strh r0, [r6, 0x36] - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0x28 - beq _08076196 - cmp r1, 0x5F - bne _08076130 - ldr r0, =gDoingBattleAnim - movs r1, 0 - strb r1, [r0] - bl m4aMPlayAllStop - ldr r0, =0x00000173 - bl PlaySE - b _08076196 - .pool -_08076130: - ldr r0, =0x0000013b - cmp r1, r0 - bne _08076196 - ldr r5, =gSprites - ldr r4, =gBankSpriteIds - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - movs r1, 0x3A - ldrsh r0, [r6, r1] - adds r0, r4 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - bl DestroySprite - adds r0, r6, 0 - bl DestroySpriteAndFreeResources - ldr r0, =gMain - ldr r1, =0x00000439 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08076196 - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x4] - lsls r1, r7, 1 - adds r1, r7 - lsls r1, 2 - adds r1, r0 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - ands r0, r2 - strb r0, [r1] -_08076196: - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80760F8 - - thumb_func_start sub_80761B4 -sub_80761B4: @ 80761B4 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x19 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x3A] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x2 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x3A] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x3 - bl sub_80A5C6C - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x18 - strh r0, [r4, 0x36] - ldr r0, =0x0000ffe2 - strh r0, [r4, 0x38] - ldrh r0, [r4, 0x3A] - strh r0, [r4, 0x6] - adds r0, r4, 0 - bl sub_80A68D4 - ldr r0, =sub_8076204 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_80761B4 - - thumb_func_start sub_8076204 -sub_8076204: @ 8076204 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r5, r0, 0 - ldrh r0, [r5, 0x3C] - movs r1, 0xFF - mov r8, r1 - lsrs r0, 8 - subs r0, 0x23 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2C - bhi _080762F8 - ldrh r1, [r5, 0x6] - movs r0, 0xFF - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - bne _08076266 - ldrh r0, [r5, 0x30] - movs r1, 0x1 - adds r6, r1, 0 - ands r6, r0 - ldrh r0, [r5, 0x32] - adds r7, r1, 0 - ands r7, r0 - movs r2, 0x30 - ldrsh r0, [r5, r2] - movs r1, 0x3 - bl __divsi3 - movs r1, 0x2 - negs r1, r1 - adds r4, r1, 0 - ands r0, r4 - orrs r6, r0 - strh r6, [r5, 0x30] - movs r2, 0x32 - ldrsh r0, [r5, r2] - movs r1, 0x3 - bl __divsi3 - ands r0, r4 - orrs r7, r0 - strh r7, [r5, 0x32] - adds r0, r5, 0 - movs r1, 0x4 - bl StartSpriteAffineAnim -_08076266: - ldrh r4, [r5, 0x2E] - adds r0, r5, 0 - bl sub_80A6F3C - movs r1, 0x3A - ldrsh r0, [r5, r1] - movs r1, 0x3 - bl __divsi3 - adds r1, r0, 0 - ldrh r0, [r5, 0x3C] - adds r0, r1 - strh r0, [r5, 0x3C] - lsls r0, 16 - asrs r0, 24 - mov r2, r8 - ands r0, r2 - movs r2, 0x38 - ldrsh r1, [r5, r2] - bl Sin - ldrh r1, [r5, 0x26] - adds r0, r1 - strh r0, [r5, 0x26] - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - ldrh r1, [r5, 0x6] - adds r0, r1 - strh r0, [r5, 0x6] - lsls r0, 16 - lsrs r0, 24 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - beq _080762B6 - strh r4, [r5, 0x2E] - b _080762BE -_080762B6: - lsls r0, r4, 16 - asrs r0, 16 - subs r0, 0x1 - strh r0, [r5, 0x2E] -_080762BE: - ldrh r0, [r5, 0x3C] - lsrs r0, 8 - cmp r0, 0x4F - ble _08076364 - ldrh r0, [r5, 0x30] - movs r1, 0x1 - adds r6, r1, 0 - ands r6, r0 - ldrh r0, [r5, 0x32] - adds r7, r1, 0 - ands r7, r0 - movs r2, 0x30 - ldrsh r1, [r5, r2] - lsls r0, r1, 1 - adds r0, r1 - movs r1, 0x2 - negs r1, r1 - adds r2, r1, 0 - ands r0, r2 - orrs r0, r6 - strh r0, [r5, 0x30] - movs r0, 0x32 - ldrsh r1, [r5, r0] - lsls r0, r1, 1 - adds r0, r1 - ands r0, r2 - orrs r0, r7 - strh r0, [r5, 0x32] - b _08076364 -_080762F8: - adds r0, r5, 0 - bl sub_80A6900 - lsls r0, 24 - cmp r0, 0 - beq _08076364 - ldrh r0, [r5, 0x24] - ldrh r1, [r5, 0x20] - adds r0, r1 - movs r1, 0 - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x26] - ldrh r2, [r5, 0x22] - adds r0, r2 - strh r0, [r5, 0x22] - strh r1, [r5, 0x26] - strh r1, [r5, 0x24] - ldrb r0, [r5, 0x6] - strh r0, [r5, 0x3A] - strh r1, [r5, 0x2E] - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _08076358 - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x8] - ldrb r1, [r0, 0x9] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08076358 - movs r0, 0x3A - ldrsh r4, [r5, r0] - movs r0, 0x2 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _08076358 - ldr r0, =sub_8076374 - b _0807635A - .pool -_08076358: - ldr r0, =sub_8075D14 -_0807635A: - str r0, [r5, 0x1C] - adds r0, r5, 0 - movs r1, 0 - bl StartSpriteAffineAnim -_08076364: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076204 - - thumb_func_start sub_8076374 -sub_8076374: @ 8076374 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - adds r1, r0, 0x1 - strh r1, [r2, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x18 - ble _0807638E - movs r0, 0 - strh r0, [r2, 0x2E] - ldr r0, =sub_8075D14 - str r0, [r2, 0x1C] -_0807638E: - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076374 - - thumb_func_start sub_8076398 -sub_8076398: @ 8076398 - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xF - ble _080763EC - movs r0, 0 - strh r0, [r5, 0x2E] - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080763E8 - ldr r0, =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0x8] - ldrb r1, [r0, 0x9] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080763E8 - movs r0, 0x3A - ldrsh r4, [r5, r0] - movs r0, 0x3 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r4, r0 - bne _080763E8 - ldr r0, =sub_8076374 - b _080763EA - .pool -_080763E8: - ldr r0, =sub_8075D14 -_080763EA: - str r0, [r5, 0x1C] -_080763EC: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076398 - - thumb_func_start sub_80763F8 -sub_80763F8: @ 80763F8 - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - movs r4, 0 - str r4, [sp] - bl sub_8171D98 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80763F8 - - thumb_func_start sub_8076420 -sub_8076420: @ 8076420 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - movs r3, 0 - bl sub_81729E8 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_8076420 - - thumb_func_start sub_8076438 -sub_8076438: @ 8076438 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r5, r0, 0 - mov r9, r2 - mov r10, r3 - ldr r6, [sp, 0x28] - ldr r4, [sp, 0x2C] - ldr r0, [sp, 0x30] - ldr r2, [sp, 0x38] - lsls r5, 24 - lsrs r5, 24 - lsls r1, 24 - lsrs r1, 24 - str r1, [sp] - mov r1, r9 - lsls r1, 24 - lsrs r1, 24 - mov r9, r1 - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r4, 24 - lsrs r4, 24 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - lsls r0, r2, 16 - lsrs r7, r0, 16 - ldr r0, =gUnknown_0832C400 - bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0832C460 - bl LoadCompressedObjectPaletteUsingHeap - ldr r0, =gUnknown_0832C588 - mov r1, r9 - mov r2, r10 - adds r3, r4, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gSprites - mov r8, r1 - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r2, r4, r1 - strh r5, [r2, 0x2E] - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - add r1, r8 - ldrh r0, [r1, 0x20] - strh r0, [r2, 0x38] - ldrh r0, [r1, 0x22] - strh r0, [r2, 0x3A] - mov r3, r9 - strh r3, [r1, 0x20] - mov r0, r10 - strh r0, [r1, 0x22] - strh r7, [r1, 0x3C] - mov r3, sp - ldrh r3, [r3, 0x4] - strh r3, [r2, 0x30] - mov r0, sp - ldrh r0, [r0] - strh r0, [r2, 0x32] - mov r3, sp - ldrh r3, [r3, 0x34] - strh r3, [r2, 0x34] - ldr r3, [sp, 0x34] - lsrs r0, r3, 16 - strh r0, [r2, 0x36] - movs r0, 0x3 - ands r6, r0 - lsls r6, 2 - ldrb r3, [r2, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r6 - strb r0, [r2, 0x5] - movs r0, 0x1C - add r8, r0 - add r4, r8 - ldr r0, =sub_8076524 - str r0, [r4] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076438 - - thumb_func_start sub_8076524 -sub_8076524: @ 8076524 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldrh r1, [r6, 0x30] - movs r2, 0x30 - ldrsh r0, [r6, r2] - cmp r0, 0 - bne _080765D0 - ldrh r0, [r6, 0x2E] - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r6, 0x32] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrh r4, [r6, 0x34] - ldrh r0, [r6, 0x36] - lsls r0, 16 - orrs r4, r0 - adds r0, r6, 0 - adds r0, 0x43 - ldrb r0, [r0] - cmp r0, 0 - beq _0807655E - subs r0, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - b _08076560 -_0807655E: - movs r5, 0 -_08076560: - adds r0, r6, 0 - movs r1, 0x1 - bl StartSpriteAnim - ldrh r0, [r6, 0x20] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r6, 0x22] - subs r1, 0x5 - lsls r1, 24 - lsrs r1, 24 - ldrb r2, [r6, 0x5] - lsls r2, 28 - lsrs r2, 30 - adds r3, r5, 0 - bl sub_80763F8 - movs r0, 0x1 - mov r1, r8 - adds r2, r4, 0 - bl sub_8076420 - lsls r0, 24 - lsrs r0, 24 - movs r5, 0 - strh r0, [r6, 0x30] - ldr r0, =sub_80765E0 - str r0, [r6, 0x1C] - ldr r0, =gSprites - lsls r4, r7, 4 - adds r4, r7 - lsls r4, 2 - adds r4, r0 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - adds r0, r4, 0 - bl AnimateSprite - movs r0, 0x80 - lsls r0, 5 - strh r0, [r4, 0x30] - strh r5, [r6, 0x3C] - b _080765D4 - .pool -_080765D0: - subs r0, r1, 0x1 - strh r0, [r6, 0x30] -_080765D4: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8076524 - - thumb_func_start sub_80765E0 -sub_80765E0: @ 80765E0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r4, r0, 0 - movs r0, 0 - mov r12, r0 - movs r7, 0 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r6, r0, 24 - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08076610 - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_08076610: - ldr r1, =gSprites - lsls r2, r6, 4 - adds r0, r2, r6 - lsls r0, 2 - adds r5, r0, r1 - adds r0, r5, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - mov r8, r2 - cmp r0, 0 - bge _08076634 - adds r0, r5, 0 - movs r1, 0 - bl StartSpriteAffineAnim - movs r1, 0x1 - mov r12, r1 -_08076634: - movs r2, 0x38 - ldrsh r0, [r4, r2] - movs r3, 0x20 - ldrsh r1, [r4, r3] - subs r0, r1 - movs r1, 0x3C - ldrsh r2, [r4, r1] - muls r0, r2 - cmp r0, 0 - bge _0807664A - adds r0, 0x7F -_0807664A: - asrs r0, 7 - ldrh r3, [r4, 0x20] - adds r0, r3 - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - movs r1, 0x3A - ldrsh r0, [r4, r1] - movs r3, 0x22 - ldrsh r1, [r4, r3] - subs r0, r1 - muls r0, r2 - cmp r0, 0 - bge _08076668 - adds r0, 0x7F -_08076668: - asrs r0, 7 - ldrh r1, [r4, 0x22] - adds r0, r1 - mov r2, r9 - strh r2, [r5, 0x20] - strh r0, [r5, 0x22] - ldrh r2, [r4, 0x3C] - movs r3, 0x3C - ldrsh r0, [r4, r3] - cmp r0, 0x7F - bgt _080766AC - ldr r1, =gSineTable - lsls r0, r2, 24 - lsrs r0, 23 - adds r0, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _08076690 - adds r0, 0x7 -_08076690: - asrs r0, 3 - negs r0, r0 - lsls r0, 16 - lsrs r0, 16 - adds r1, r2, 0x4 - strh r1, [r4, 0x3C] - strh r0, [r5, 0x24] - strh r0, [r5, 0x26] - b _080766BA - .pool -_080766AC: - ldrh r0, [r4, 0x38] - strh r0, [r5, 0x20] - ldrh r0, [r4, 0x3A] - strh r0, [r5, 0x22] - strh r7, [r5, 0x24] - strh r7, [r5, 0x26] - movs r7, 0x1 -_080766BA: - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0807670E - mov r2, r12 - cmp r2, 0 - beq _0807670E - cmp r7, 0 - beq _0807670E - ldr r1, =gSprites - mov r3, r8 - adds r0, r3, r6 - lsls r0, 2 - adds r2, r0, r1 - movs r0, 0x3C - ldrsh r1, [r2, r0] - movs r0, 0xCE - lsls r0, 1 - cmp r1, r0 - bne _080766FC - ldrh r1, [r2, 0x3C] - adds r0, r2, 0 - movs r2, 0x1 - movs r3, 0 - bl DoMonFrontSpriteAnimation - b _08076708 - .pool -_080766FC: - ldrh r1, [r2, 0x3C] - adds r0, r2, 0 - movs r2, 0 - movs r3, 0 - bl DoMonFrontSpriteAnimation -_08076708: - adds r0, r4, 0 - bl DestroySpriteAndFreeResources -_0807670E: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80765E0 - - thumb_func_start sub_807671C -sub_807671C: @ 807671C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - adds r6, r2, 0 - mov r8, r3 - ldr r5, [sp, 0x20] - ldr r4, [sp, 0x24] - ldr r0, [sp, 0x28] - mov r9, r0 - mov r0, r10 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - lsls r1, 24 - lsrs r7, r1, 24 - lsls r6, 24 - lsrs r6, 24 - mov r1, r8 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r5, 24 - lsrs r5, 24 - lsls r4, 24 - lsrs r4, 24 - mov r0, r9 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, =gUnknown_0832C400 - bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0832C460 - bl LoadCompressedObjectPaletteUsingHeap - ldr r0, =gUnknown_0832C588 - adds r1, r6, 0 - mov r2, r8 - adds r3, r4, 0 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r6, =gSprites - lsls r3, r0, 4 - adds r3, r0 - lsls r3, 2 - adds r2, r3, r6 - mov r1, r10 - strh r1, [r2, 0x2E] - mov r4, r9 - strh r4, [r2, 0x30] - strh r7, [r2, 0x32] - mov r1, sp - ldrh r1, [r1, 0x2C] - strh r1, [r2, 0x34] - ldr r4, [sp, 0x2C] - lsrs r1, r4, 16 - strh r1, [r2, 0x36] - movs r1, 0x3 - ands r5, r1 - lsls r5, 2 - ldrb r4, [r2, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r4 - orrs r1, r5 - strb r1, [r2, 0x5] - adds r6, 0x1C - adds r3, r6 - ldr r1, =sub_80767D4 - str r1, [r3] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_807671C - - thumb_func_start sub_80767D4 -sub_80767D4: @ 80767D4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - ldrh r1, [r4, 0x30] - movs r2, 0x30 - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _0807686C - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r4, 0x32] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldrh r5, [r4, 0x34] - ldrh r0, [r4, 0x36] - lsls r0, 16 - orrs r5, r0 - adds r0, r4, 0 - adds r0, 0x43 - ldrb r0, [r0] - cmp r0, 0 - beq _0807680E - subs r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - b _08076810 -_0807680E: - movs r6, 0 -_08076810: - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAnim - ldrh r0, [r4, 0x20] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x22] - subs r1, 0x5 - lsls r1, 24 - lsrs r1, 24 - ldrb r2, [r4, 0x5] - lsls r2, 28 - lsrs r2, 30 - adds r3, r6, 0 - bl sub_80763F8 - movs r0, 0x1 - mov r1, r8 - adds r2, r5, 0 - bl sub_8076420 - lsls r0, 24 - lsrs r0, 24 - movs r5, 0 - strh r0, [r4, 0x30] - ldr r0, =sub_807687C - str r0, [r4, 0x1C] - lsls r4, r7, 4 - adds r4, r7 - lsls r4, 2 - ldr r0, =gSprites - adds r4, r0 - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAffineAnim - adds r0, r4, 0 - bl AnimateSprite - strh r5, [r4, 0x30] - b _08076870 - .pool -_0807686C: - subs r0, r1, 0x1 - strh r0, [r4, 0x30] -_08076870: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80767D4 - - thumb_func_start sub_807687C -sub_807687C: @ 807687C - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r0, [r5, 0x38] - adds r0, 0x1 - strh r0, [r5, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - bne _08076894 - movs r0, 0x3C - bl PlaySE -_08076894: - ldrh r1, [r5, 0x2E] - lsls r1, 24 - lsrs r1, 24 - ldr r2, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, r0, r2 - adds r0, r4, 0 - adds r0, 0x3F - ldrb r0, [r0] - lsls r0, 26 - cmp r0, 0 - bge _080768D8 - adds r0, r5, 0 - movs r1, 0x2 - bl StartSpriteAnim - adds r2, r4, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - movs r0, 0 - strh r0, [r5, 0x38] - ldr r0, =sub_80768F0 - str r0, [r5, 0x1C] - b _080768E8 - .pool -_080768D8: - ldrh r0, [r4, 0x30] - adds r0, 0x60 - strh r0, [r4, 0x30] - movs r1, 0x30 - ldrsh r0, [r4, r1] - negs r0, r0 - asrs r0, 8 - strh r0, [r4, 0x26] -_080768E8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_807687C - - thumb_func_start sub_80768F0 -sub_80768F0: @ 80768F0 - push {lr} - adds r2, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08076904 - ldr r0, =SpriteCallbackDummy - str r0, [r2, 0x1C] -_08076904: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80768F0 - - thumb_func_start obj_delete_and_free_associated_resources_ -obj_delete_and_free_associated_resources_: @ 807690C - push {lr} - bl DestroySpriteAndFreeResources - pop {r0} - bx r0 - thumb_func_end obj_delete_and_free_associated_resources_ - - thumb_func_start sub_8076918 -sub_8076918: @ 8076918 - push {r4-r6,lr} - lsls r0, 24 - lsrs r0, 24 - adds r5, r0, 0 - ldr r0, =gHealthBoxesIds - adds r0, r5, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r6, =gSprites - adds r4, r0, r6 - movs r1, 0 - movs r0, 0x5 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x30] - movs r0, 0x73 - strh r0, [r4, 0x24] - strh r1, [r4, 0x26] - ldr r0, =sub_80769CC - str r0, [r4, 0x1C] - adds r0, r5, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _08076966 - ldrh r0, [r4, 0x2E] - negs r0, r0 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x30] - negs r0, r0 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x24] - negs r0, r0 - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x26] - negs r0, r0 - strh r0, [r4, 0x26] -_08076966: - movs r0, 0x38 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r6, 0 - adds r1, 0x1C - adds r1, r0, r1 - adds r0, r6 - ldr r1, [r1] - bl _call_via_r1 - adds r0, r5, 0 - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08076990 - ldr r0, =sub_80769A8 - str r0, [r4, 0x1C] -_08076990: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076918 - - thumb_func_start sub_80769A8 -sub_80769A8: @ 80769A8 - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x30] - adds r0, 0x1 - strh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x14 - bne _080769C2 - movs r0, 0 - strh r0, [r1, 0x30] - ldr r0, =sub_80769CC - str r0, [r1, 0x1C] -_080769C2: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80769A8 - - thumb_func_start sub_80769CC -sub_80769CC: @ 80769CC - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x24] - ldrh r1, [r2, 0x2E] - subs r0, r1 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x26] - ldrh r1, [r2, 0x30] - subs r0, r1 - strh r0, [r2, 0x26] - ldr r0, [r2, 0x24] - cmp r0, 0 - bne _080769EA - ldr r0, =SpriteCallbackDummy - str r0, [r2, 0x1C] -_080769EA: - pop {r0} - bx r0 - .pool - thumb_func_end sub_80769CC - - thumb_func_start DoHitAnimHealthboxEffect -DoHitAnimHealthboxEffect: @ 80769F4 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, =oamc_804BEB4 - adds r0, r5, 0 - bl CreateInvisibleSpriteWithCallback - lsls r0, 24 - lsrs r0, 24 - ldr r2, =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r3, r1, r2 - movs r0, 0x1 - strh r0, [r3, 0x2E] - ldr r0, =gHealthBoxesIds - adds r4, r0 - ldrb r0, [r4] - strh r0, [r3, 0x30] - adds r2, 0x1C - adds r1, r2 - str r5, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end DoHitAnimHealthboxEffect - - thumb_func_start oamc_804BEB4 -oamc_804BEB4: @ 8076A38 - push {lr} - adds r3, r0, 0 - ldrh r1, [r3, 0x30] - lsls r1, 24 - lsrs r1, 24 - ldr r2, =gSprites - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - ldrh r0, [r3, 0x2E] - movs r2, 0 - strh r0, [r1, 0x26] - ldrh r0, [r3, 0x2E] - negs r0, r0 - strh r0, [r3, 0x2E] - ldrh r0, [r3, 0x32] - adds r0, 0x1 - strh r0, [r3, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x15 - bne _08076A70 - strh r2, [r1, 0x24] - strh r2, [r1, 0x26] - adds r0, r3, 0 - bl DestroySprite -_08076A70: - pop {r0} - bx r0 - .pool - thumb_func_end oamc_804BEB4 - - thumb_func_start sub_8076A78 -sub_8076A78: @ 8076A78 - push {r4-r6,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, =gUnknown_0832C400 - lsls r6, r4, 3 - adds r5, r6, r0 - ldrh r0, [r5, 0x6] - bl GetSpriteTileStartByTag - lsls r0, 16 - ldr r1, =0xffff0000 - cmp r0, r1 - bne _08076AA0 - adds r0, r5, 0 - bl LoadCompressedObjectPicUsingHeap - ldr r0, =gUnknown_0832C460 - adds r0, r6, r0 - bl LoadCompressedObjectPaletteUsingHeap -_08076AA0: - cmp r4, 0x6 - beq _08076ACC - cmp r4, 0x6 - blt _08076AB0 - cmp r4, 0xB - bgt _08076AB0 - cmp r4, 0xA - bge _08076ACC -_08076AB0: - ldr r1, =gUnknown_0832C400 - lsls r0, r4, 3 - adds r0, r1 - ldrh r0, [r0, 0x6] - bl GetSpriteTileStartByTag - adds r1, r0, 0 - lsls r1, 16 - ldr r0, =gUnknown_08C02300 - lsrs r1, 11 - ldr r2, =0x06010100 - adds r1, r2 - bl LZDecompressVram -_08076ACC: - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076A78 - - thumb_func_start sub_8076AE8 -sub_8076AE8: @ 8076AE8 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - ldr r0, =gUnknown_0832C400 - lsrs r4, 21 - adds r0, r4, r0 - ldrh r0, [r0, 0x6] - bl FreeSpriteTilesByTag - ldr r0, =gUnknown_0832C460 - adds r4, r0 - ldrh r0, [r4, 0x4] - bl FreeSpritePaletteByTag - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_8076AE8 - - thumb_func_start sub_8076B14 -sub_8076B14: @ 8076B14 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _08076B40 - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gEnemyParty - b _08076B4E - .pool -_08076B40: - ldr r1, =gBattlePartyID - lsls r0, r4, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, =gPlayerParty -_08076B4E: - adds r0, r1 - movs r1, 0x26 - bl GetMonData - lsls r0, 16 - lsrs r0, 16 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_8076B14 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s index 4441767db..f0628ebee 100755 --- a/asm/pokemon_summary_screen.s +++ b/asm/pokemon_summary_screen.s @@ -1424,16 +1424,16 @@ sub_81C4A08: @ 81C4A08 bl GetMonData lsls r0, 16 lsrs r0, 16 - bl ball_number_to_ball_processing_index + bl ItemIdToBallId adds r4, r0, 0 lsls r4, 24 lsrs r4, 24 adds r0, r4, 0 - bl sub_8076A78 + bl LoadBallGfx lsls r0, r4, 1 adds r0, r4 lsls r0, 3 - ldr r1, =gUnknown_0832C588 + ldr r1, =gBallSpriteTemplates adds r0, r1 movs r1, 0x10 movs r2, 0x88 diff --git a/asm/trade.s b/asm/trade.s index 74e907aee..d36ae3c67 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -1,5 +1,7 @@ .include "asm/macros.inc" - .include "constants/constants.inc" + .include "constants/gba_constants.inc" + .include "constants/misc_constants.inc" + .include "constants/species_constants.inc" .syntax unified @@ -10445,7 +10447,7 @@ _0807CD1C: str r2, [sp, 0x10] movs r2, 0x78 movs r3, 0x54 - bl sub_8076438 + bl CreatePokeballSpriteToReleaseMon ldr r0, [r7] adds r0, 0xD3 ldrb r1, [r0] @@ -12550,7 +12552,7 @@ _0807E168: str r2, [sp, 0x10] movs r2, 0x78 movs r3, 0x54 - bl sub_8076438 + bl CreatePokeballSpriteToReleaseMon ldr r0, [r7] adds r0, 0xD3 ldrb r1, [r0] diff --git a/asmdiff.sh b/asmdiff.sh index 1d2141c32..1d2141c32 100644..100755 --- a/asmdiff.sh +++ b/asmdiff.sh diff --git a/constants/ability_constants.inc b/constants/ability_constants.inc deleted file mode 100644 index 8ccc872f7..000000000 --- a/constants/ability_constants.inc +++ /dev/null @@ -1,78 +0,0 @@ - .set ABILITY_NONE, 0x00 - .set ABILITY_STENCH, 0x01 - .set ABILITY_DRIZZLE, 0x02 - .set ABILITY_SPEED_BOOST, 0x03 - .set ABILITY_BATTLE_ARMOR, 0x04 - .set ABILITY_STURDY, 0x05 - .set ABILITY_DAMP, 0x06 - .set ABILITY_LIMBER, 0x07 - .set ABILITY_SAND_VEIL, 0x08 - .set ABILITY_STATIC, 0x09 - .set ABILITY_VOLT_ABSORB, 0x0a - .set ABILITY_WATER_ABSORB, 0x0b - .set ABILITY_OBLIVIOUS, 0x0c - .set ABILITY_CLOUD_NINE, 0x0d - .set ABILITY_COMPOUND_EYES, 0x0e - .set ABILITY_INSOMNIA, 0x0f - .set ABILITY_COLOR_CHANGE, 0x10 - .set ABILITY_IMMUNITY, 0x11 - .set ABILITY_FLASH_FIRE, 0x12 - .set ABILITY_SHIELD_DUST, 0x13 - .set ABILITY_OWN_TEMPO, 0x14 - .set ABILITY_SUCTION_CUPS, 0x15 - .set ABILITY_INTIMIDATE, 0x16 - .set ABILITY_SHADOW_TAG, 0x17 - .set ABILITY_ROUGH_SKIN, 0x18 - .set ABILITY_WONDER_GUARD, 0x19 - .set ABILITY_LEVITATE, 0x1a - .set ABILITY_EFFECT_SPORE, 0x1b - .set ABILITY_SYNCHRONIZE, 0x1c - .set ABILITY_CLEAR_BODY, 0x1d - .set ABILITY_NATURAL_CURE, 0x1e - .set ABILITY_LIGHTNING_ROD, 0x1f - .set ABILITY_SERENE_GRACE, 0x20 - .set ABILITY_SWIFT_SWIM, 0x21 - .set ABILITY_CHLOROPHYLL, 0x22 - .set ABILITY_ILLUMINATE, 0x23 - .set ABILITY_TRACE, 0x24 - .set ABILITY_HUGE_POWER, 0x25 - .set ABILITY_POISON_POINT, 0x26 - .set ABILITY_INNER_FOCUS, 0x27 - .set ABILITY_MAGMA_ARMOR, 0x28 - .set ABILITY_WATER_VEIL, 0x29 - .set ABILITY_MAGNET_PULL, 0x2a - .set ABILITY_SOUNDPROOF, 0x2b - .set ABILITY_RAIN_DISH, 0x2c - .set ABILITY_SAND_STREAM, 0x2d - .set ABILITY_PRESSURE, 0x2e - .set ABILITY_THICK_FAT, 0x2f - .set ABILITY_EARLY_BIRD, 0x30 - .set ABILITY_FLAME_BODY, 0x31 - .set ABILITY_RUN_AWAY, 0x32 - .set ABILITY_KEEN_EYE, 0x33 - .set ABILITY_HYPER_CUTTER, 0x34 - .set ABILITY_PICKUP, 0x35 - .set ABILITY_TRUANT, 0x36 - .set ABILITY_HUSTLE, 0x37 - .set ABILITY_CUTE_CHARM, 0x38 - .set ABILITY_PLUS, 0x39 - .set ABILITY_MINUS, 0x3a - .set ABILITY_FORECAST, 0x3b - .set ABILITY_STICKY_HOLD, 0x3c - .set ABILITY_SHED_SKIN, 0x3d - .set ABILITY_GUTS, 0x3e - .set ABILITY_MARVEL_SCALE, 0x3f - .set ABILITY_LIQUID_OOZE, 0x40 - .set ABILITY_OVERGROW, 0x41 - .set ABILITY_BLAZE, 0x42 - .set ABILITY_TORRENT, 0x43 - .set ABILITY_SWARM, 0x44 - .set ABILITY_ROCK_HEAD, 0x45 - .set ABILITY_DROUGHT, 0x46 - .set ABILITY_ARENA_TRAP, 0x47 - .set ABILITY_VITAL_SPIRIT, 0x48 - .set ABILITY_WHITE_SMOKE, 0x49 - .set ABILITY_PURE_POWER, 0x4a - .set ABILITY_SHELL_ARMOR, 0x4b - .set ABILITY_CACOPHONY, 0x4c - .set ABILITY_AIR_LOCK, 0x4d diff --git a/constants/battle_script_constants.inc b/constants/battle_script_constants.inc index fb0c39ab9..fe0e7dddc 100644 --- a/constants/battle_script_constants.inc +++ b/constants/battle_script_constants.inc @@ -18,7 +18,7 @@ .set ANIM_ITEM_STEAL, 0x10 .set ANIM_SNATCH_MOVE, 0x11 .set ANIM_FUTURE_SIGHT_HIT, 0x12 - .set ANIM_x13, 0x13 + .set ANIM_DOOM_DESIRE_HIT, 0x13 .set ANIM_x14, 0x14 .set ANIM_INGRAIN_HEAL, 0x15 .set ANIM_WISH_HEAL, 0x16 @@ -146,8 +146,8 @@ .equiv sANIM_ARG2, gBattleScripting + 0x11 .equiv sTRIPLE_KICK_POWER, gBattleScripting + 0x12 .equiv sMOVEEND_STATE, gBattleScripting + 0x14 - .equiv sFIELD_15, gBattleScripting + 0x15 - .equiv sFIELD_16, gBattleScripting + 0x16 + .equiv sBANK_WITH_ABILITY, gBattleScripting + 0x15 + .equiv sMULTIHIT_EFFECT, gBattleScripting + 0x16 .equiv sBANK, gBattleScripting + 0x17 .equiv sANIM_TURN, gBattleScripting + 0x18 .equiv sANIM_TARGETS_HIT, gBattleScripting + 0x19 diff --git a/constants/constants.inc b/constants/constants.inc index fbd4e8af0..99c3d3c73 100644 --- a/constants/constants.inc +++ b/constants/constants.inc @@ -1,20 +1,12 @@ .include "constants/gba_constants.inc" .include "constants/misc_constants.inc" - .include "constants/species_constants.inc" - .include "constants/ability_constants.inc" - .include "constants/move_constants.inc" - .include "constants/item_constants.inc" .include "constants/type_constants.inc" .include "constants/contest_constants.inc" .include "constants/pokemon_data_constants.inc" .include "constants/item_data_constants.inc" .include "constants/battle_move_constants.inc" - .include "constants/easy_chat_constants.inc" .include "constants/trainer_constants.inc" .include "constants/battle_frontier_constants.inc" .include "constants/map_constants.inc" - .include "constants/map_object_constants.inc" .include "constants/berry_constants.inc" - .include "constants/field_object_constants.inc" .include "constants/contest_move_effects.inc" - .include "constants/songs.inc" diff --git a/constants/easy_chat_constants.inc b/constants/easy_chat_constants.inc deleted file mode 100644 index 4d9aecec5..000000000 --- a/constants/easy_chat_constants.inc +++ /dev/null @@ -1,1067 +0,0 @@ - .set EC_GROUP_POKEMON, 0x0 - .set EC_GROUP_TRAINER, 0x1 - .set EC_GROUP_STATUS, 0x2 - .set EC_GROUP_BATTLE, 0x3 - .set EC_GROUP_GREETINGS, 0x4 - .set EC_GROUP_PEOPLE, 0x5 - .set EC_GROUP_VOICES, 0x6 - .set EC_GROUP_SPEECH, 0x7 - .set EC_GROUP_ENDINGS, 0x8 - .set EC_GROUP_FEELINGS, 0x9 - .set EC_GROUP_CONDITIONS, 0xa - .set EC_GROUP_ACTIONS, 0xb - .set EC_GROUP_LIFESTYLE, 0xc - .set EC_GROUP_HOBBIES, 0xd - .set EC_GROUP_TIME, 0xe - .set EC_GROUP_MISC, 0xf - .set EC_GROUP_ADJECTIVES, 0x10 - .set EC_GROUP_EVENTS, 0x11 - .set EC_GROUP_MOVE_1, 0x12 - .set EC_GROUP_MOVE_2, 0x13 - .set EC_GROUP_TRENDY_SAYING, 0x14 - .set EC_GROUP_POKEMON2, 0x15 - -@ Trainer - .set EC_WORD_I_CHOOSE_YOU, (EC_GROUP_TRAINER << 9) | 0x0 - .set EC_WORD_GOTCHA, (EC_GROUP_TRAINER << 9) | 0x1 - .set EC_WORD_TRADE, (EC_GROUP_TRAINER << 9) | 0x2 - .set EC_WORD_SAPPHIRE, (EC_GROUP_TRAINER << 9) | 0x3 - .set EC_WORD_EVOLVE, (EC_GROUP_TRAINER << 9) | 0x4 - .set EC_WORD_ENCYCLOPEDIA, (EC_GROUP_TRAINER << 9) | 0x5 - .set EC_WORD_NATURE, (EC_GROUP_TRAINER << 9) | 0x6 - .set EC_WORD_CENTER, (EC_GROUP_TRAINER << 9) | 0x7 - .set EC_WORD_EGG, (EC_GROUP_TRAINER << 9) | 0x8 - .set EC_WORD_LINK, (EC_GROUP_TRAINER << 9) | 0x9 - .set EC_WORD_SP_ABILITY, (EC_GROUP_TRAINER << 9) | 0xa - .set EC_WORD_TRAINER, (EC_GROUP_TRAINER << 9) | 0xb - .set EC_WORD_VERSION, (EC_GROUP_TRAINER << 9) | 0xc - .set EC_WORD_POKENAV, (EC_GROUP_TRAINER << 9) | 0xd - .set EC_WORD_POKEMON, (EC_GROUP_TRAINER << 9) | 0xe - .set EC_WORD_GET, (EC_GROUP_TRAINER << 9) | 0xf - .set EC_WORD_POKEDEX, (EC_GROUP_TRAINER << 9) | 0x10 - .set EC_WORD_RUBY, (EC_GROUP_TRAINER << 9) | 0x11 - .set EC_WORD_LEVEL, (EC_GROUP_TRAINER << 9) | 0x12 - .set EC_WORD_RED, (EC_GROUP_TRAINER << 9) | 0x13 - .set EC_WORD_GREEN, (EC_GROUP_TRAINER << 9) | 0x14 - .set EC_WORD_BAG, (EC_GROUP_TRAINER << 9) | 0x15 - .set EC_WORD_FLAME, (EC_GROUP_TRAINER << 9) | 0x16 - .set EC_WORD_GOLD, (EC_GROUP_TRAINER << 9) | 0x17 - .set EC_WORD_LEAF, (EC_GROUP_TRAINER << 9) | 0x18 - .set EC_WORD_SILVER, (EC_GROUP_TRAINER << 9) | 0x19 - .set EC_WORD_EMERALD, (EC_GROUP_TRAINER << 9) | 0x1a - -@ Status - .set EC_WORD_DARK, (EC_GROUP_STATUS << 9) | 0x0 - .set EC_WORD_STENCH, (EC_GROUP_STATUS << 9) | 0x1 - .set EC_WORD_THICK_FAT, (EC_GROUP_STATUS << 9) | 0x2 - .set EC_WORD_RAIN_DISH, (EC_GROUP_STATUS << 9) | 0x3 - .set EC_WORD_DRIZZLE, (EC_GROUP_STATUS << 9) | 0x4 - .set EC_WORD_ARENA_TRAP, (EC_GROUP_STATUS << 9) | 0x5 - .set EC_WORD_INTIMIDATE, (EC_GROUP_STATUS << 9) | 0x6 - .set EC_WORD_ROCK_HEAD, (EC_GROUP_STATUS << 9) | 0x7 - .set EC_WORD_COLOR, (EC_GROUP_STATUS << 9) | 0x8 - .set EC_WORD_ALT_COLOR, (EC_GROUP_STATUS << 9) | 0x9 - .set EC_WORD_ROCK, (EC_GROUP_STATUS << 9) | 0xa - .set EC_WORD_BEAUTIFUL, (EC_GROUP_STATUS << 9) | 0xb - .set EC_WORD_BEAUTY, (EC_GROUP_STATUS << 9) | 0xc - .set EC_WORD_AIR_LOCK, (EC_GROUP_STATUS << 9) | 0xd - .set EC_WORD_PSYCHIC, (EC_GROUP_STATUS << 9) | 0xe - .set EC_WORD_HYPER_CUTTER, (EC_GROUP_STATUS << 9) | 0xf - .set EC_WORD_FIGHTING, (EC_GROUP_STATUS << 9) | 0x10 - .set EC_WORD_SHADOW_TAG, (EC_GROUP_STATUS << 9) | 0x11 - .set EC_WORD_SMART, (EC_GROUP_STATUS << 9) | 0x12 - .set EC_WORD_SMARTNESS, (EC_GROUP_STATUS << 9) | 0x13 - .set EC_WORD_SPEED_BOOST, (EC_GROUP_STATUS << 9) | 0x14 - .set EC_WORD_COOL, (EC_GROUP_STATUS << 9) | 0x15 - .set EC_WORD_COOLNESS, (EC_GROUP_STATUS << 9) | 0x16 - .set EC_WORD_BATTLE_ARMOR, (EC_GROUP_STATUS << 9) | 0x17 - .set EC_WORD_CUTE, (EC_GROUP_STATUS << 9) | 0x18 - .set EC_WORD_CUTENESS, (EC_GROUP_STATUS << 9) | 0x19 - .set EC_WORD_STURDY, (EC_GROUP_STATUS << 9) | 0x1a - .set EC_WORD_SUCTION_CUPS, (EC_GROUP_STATUS << 9) | 0x1b - .set EC_WORD_GRASS, (EC_GROUP_STATUS << 9) | 0x1c - .set EC_WORD_CLEAR_BODY, (EC_GROUP_STATUS << 9) | 0x1d - .set EC_WORD_TORRENT, (EC_GROUP_STATUS << 9) | 0x1e - .set EC_WORD_GHOST, (EC_GROUP_STATUS << 9) | 0x1f - .set EC_WORD_ICE, (EC_GROUP_STATUS << 9) | 0x20 - .set EC_WORD_GUTS, (EC_GROUP_STATUS << 9) | 0x21 - .set EC_WORD_ROUGH_SKIN, (EC_GROUP_STATUS << 9) | 0x22 - .set EC_WORD_SHELL_ARMOR, (EC_GROUP_STATUS << 9) | 0x23 - .set EC_WORD_NATURAL_CURE, (EC_GROUP_STATUS << 9) | 0x24 - .set EC_WORD_DAMP, (EC_GROUP_STATUS << 9) | 0x25 - .set EC_WORD_GROUND, (EC_GROUP_STATUS << 9) | 0x26 - .set EC_WORD_LIMBER, (EC_GROUP_STATUS << 9) | 0x27 - .set EC_WORD_MAGNET_PULL, (EC_GROUP_STATUS << 9) | 0x28 - .set EC_WORD_WHITE_SMOKE, (EC_GROUP_STATUS << 9) | 0x29 - .set EC_WORD_SYNCHRONIZE, (EC_GROUP_STATUS << 9) | 0x2a - .set EC_WORD_OVERGROW, (EC_GROUP_STATUS << 9) | 0x2b - .set EC_WORD_SWIFT_SWIM, (EC_GROUP_STATUS << 9) | 0x2c - .set EC_WORD_SAND_STREAM, (EC_GROUP_STATUS << 9) | 0x2d - .set EC_WORD_SAND_VEIL, (EC_GROUP_STATUS << 9) | 0x2e - .set EC_WORD_KEEN_EYE, (EC_GROUP_STATUS << 9) | 0x2f - .set EC_WORD_INNER_FOCUS, (EC_GROUP_STATUS << 9) | 0x30 - .set EC_WORD_STATIC, (EC_GROUP_STATUS << 9) | 0x31 - .set EC_WORD_TYPE, (EC_GROUP_STATUS << 9) | 0x32 - .set EC_WORD_TOUGH, (EC_GROUP_STATUS << 9) | 0x33 - .set EC_WORD_TOUGHNESS, (EC_GROUP_STATUS << 9) | 0x34 - .set EC_WORD_SHED_SKIN, (EC_GROUP_STATUS << 9) | 0x35 - .set EC_WORD_HUGE_POWER, (EC_GROUP_STATUS << 9) | 0x36 - .set EC_WORD_VOLT_ABSORB, (EC_GROUP_STATUS << 9) | 0x37 - .set EC_WORD_WATER_ABSORB, (EC_GROUP_STATUS << 9) | 0x38 - .set EC_WORD_ELECTRIC, (EC_GROUP_STATUS << 9) | 0x39 - .set EC_WORD_FORECAST, (EC_GROUP_STATUS << 9) | 0x3a - .set EC_WORD_SERENE_GRACE, (EC_GROUP_STATUS << 9) | 0x3b - .set EC_WORD_POISON, (EC_GROUP_STATUS << 9) | 0x3c - .set EC_WORD_POISON_POINT, (EC_GROUP_STATUS << 9) | 0x3d - .set EC_WORD_DRAGON, (EC_GROUP_STATUS << 9) | 0x3e - .set EC_WORD_TRACE, (EC_GROUP_STATUS << 9) | 0x3f - .set EC_WORD_OBLIVIOUS, (EC_GROUP_STATUS << 9) | 0x40 - .set EC_WORD_TRUANT, (EC_GROUP_STATUS << 9) | 0x41 - .set EC_WORD_RUN_AWAY, (EC_GROUP_STATUS << 9) | 0x42 - .set EC_WORD_STICKY_HOLD, (EC_GROUP_STATUS << 9) | 0x43 - .set EC_WORD_CLOUD_NINE, (EC_GROUP_STATUS << 9) | 0x44 - .set EC_WORD_NORMAL, (EC_GROUP_STATUS << 9) | 0x45 - .set EC_WORD_STEEL, (EC_GROUP_STATUS << 9) | 0x46 - .set EC_WORD_ILLUMINATE, (EC_GROUP_STATUS << 9) | 0x47 - .set EC_WORD_EARLY_BIRD, (EC_GROUP_STATUS << 9) | 0x48 - .set EC_WORD_HUSTLE, (EC_GROUP_STATUS << 9) | 0x49 - .set EC_WORD_SHINE, (EC_GROUP_STATUS << 9) | 0x4a - .set EC_WORD_FLYING, (EC_GROUP_STATUS << 9) | 0x4b - .set EC_WORD_DROUGHT, (EC_GROUP_STATUS << 9) | 0x4c - .set EC_WORD_LIGHTNINGROD, (EC_GROUP_STATUS << 9) | 0x4d - .set EC_WORD_COMPOUNDEYES, (EC_GROUP_STATUS << 9) | 0x4e - .set EC_WORD_MARVEL_SCALE, (EC_GROUP_STATUS << 9) | 0x4f - .set EC_WORD_WONDER_GUARD, (EC_GROUP_STATUS << 9) | 0x50 - .set EC_WORD_INSOMNIA, (EC_GROUP_STATUS << 9) | 0x51 - .set EC_WORD_LEVITATE, (EC_GROUP_STATUS << 9) | 0x52 - .set EC_WORD_PLUS, (EC_GROUP_STATUS << 9) | 0x53 - .set EC_WORD_PRESSURE, (EC_GROUP_STATUS << 9) | 0x54 - .set EC_WORD_LIQUID_OOZE, (EC_GROUP_STATUS << 9) | 0x55 - .set EC_WORD_COLOR_CHANGE, (EC_GROUP_STATUS << 9) | 0x56 - .set EC_WORD_SOUNDPROOF, (EC_GROUP_STATUS << 9) | 0x57 - .set EC_WORD_EFFECT_SPORE, (EC_GROUP_STATUS << 9) | 0x58 - .set EC_WORD_PKRS, (EC_GROUP_STATUS << 9) | 0x59 - .set EC_WORD_FIRE, (EC_GROUP_STATUS << 9) | 0x5a - .set EC_WORD_FLAME_BODY, (EC_GROUP_STATUS << 9) | 0x5b - .set EC_WORD_MINUS, (EC_GROUP_STATUS << 9) | 0x5c - .set EC_WORD_OWN_TEMPO, (EC_GROUP_STATUS << 9) | 0x5d - .set EC_WORD_MAGMA_ARMOR, (EC_GROUP_STATUS << 9) | 0x5e - .set EC_WORD_WATER, (EC_GROUP_STATUS << 9) | 0x5f - .set EC_WORD_WATER_VEIL, (EC_GROUP_STATUS << 9) | 0x60 - .set EC_WORD_BUG, (EC_GROUP_STATUS << 9) | 0x61 - .set EC_WORD_SWARM, (EC_GROUP_STATUS << 9) | 0x62 - .set EC_WORD_CUTE_CHARM, (EC_GROUP_STATUS << 9) | 0x63 - .set EC_WORD_IMMUNITY, (EC_GROUP_STATUS << 9) | 0x64 - .set EC_WORD_BLAZE, (EC_GROUP_STATUS << 9) | 0x65 - .set EC_WORD_PICKUP, (EC_GROUP_STATUS << 9) | 0x66 - .set EC_WORD_PATTERN, (EC_GROUP_STATUS << 9) | 0x67 - .set EC_WORD_FLASH_FIRE, (EC_GROUP_STATUS << 9) | 0x68 - .set EC_WORD_VITAL_SPIRIT, (EC_GROUP_STATUS << 9) | 0x69 - .set EC_WORD_CHLOROPHYLL, (EC_GROUP_STATUS << 9) | 0x6a - .set EC_WORD_PURE_POWER, (EC_GROUP_STATUS << 9) | 0x6b - .set EC_WORD_SHIELD_DUST, (EC_GROUP_STATUS << 9) | 0x6c - -@ Battle - .set EC_WORD_MATCH_UP, (EC_GROUP_BATTLE << 9) | 0x0 - .set EC_WORD_GO, (EC_GROUP_BATTLE << 9) | 0x1 - .set EC_WORD_NO_1, (EC_GROUP_BATTLE << 9) | 0x2 - .set EC_WORD_DECIDE, (EC_GROUP_BATTLE << 9) | 0x3 - .set EC_WORD_LET_ME_WIN, (EC_GROUP_BATTLE << 9) | 0x4 - .set EC_WORD_WINS, (EC_GROUP_BATTLE << 9) | 0x5 - .set EC_WORD_WIN, (EC_GROUP_BATTLE << 9) | 0x6 - .set EC_WORD_WON, (EC_GROUP_BATTLE << 9) | 0x7 - .set EC_WORD_IF_I_WIN, (EC_GROUP_BATTLE << 9) | 0x8 - .set EC_WORD_WHEN_I_WIN, (EC_GROUP_BATTLE << 9) | 0x9 - .set EC_WORD_CAN_T_WIN, (EC_GROUP_BATTLE << 9) | 0xa - .set EC_WORD_CAN_WIN, (EC_GROUP_BATTLE << 9) | 0xb - .set EC_WORD_NO_MATCH, (EC_GROUP_BATTLE << 9) | 0xc - .set EC_WORD_SPIRIT, (EC_GROUP_BATTLE << 9) | 0xd - .set EC_WORD_DECIDED, (EC_GROUP_BATTLE << 9) | 0xe - .set EC_WORD_TRUMP_CARD, (EC_GROUP_BATTLE << 9) | 0xf - .set EC_WORD_TAKE_THAT, (EC_GROUP_BATTLE << 9) | 0x10 - .set EC_WORD_COME_ON, (EC_GROUP_BATTLE << 9) | 0x11 - .set EC_WORD_ATTACK, (EC_GROUP_BATTLE << 9) | 0x12 - .set EC_WORD_SURRENDER, (EC_GROUP_BATTLE << 9) | 0x13 - .set EC_WORD_GUTSY, (EC_GROUP_BATTLE << 9) | 0x14 - .set EC_WORD_TALENT, (EC_GROUP_BATTLE << 9) | 0x15 - .set EC_WORD_STRATEGY, (EC_GROUP_BATTLE << 9) | 0x16 - .set EC_WORD_SMITE, (EC_GROUP_BATTLE << 9) | 0x17 - .set EC_WORD_MATCH, (EC_GROUP_BATTLE << 9) | 0x18 - .set EC_WORD_VICTORY, (EC_GROUP_BATTLE << 9) | 0x19 - .set EC_WORD_OFFENSIVE, (EC_GROUP_BATTLE << 9) | 0x1a - .set EC_WORD_SENSE, (EC_GROUP_BATTLE << 9) | 0x1b - .set EC_WORD_VERSUS, (EC_GROUP_BATTLE << 9) | 0x1c - .set EC_WORD_FIGHTS, (EC_GROUP_BATTLE << 9) | 0x1d - .set EC_WORD_POWER, (EC_GROUP_BATTLE << 9) | 0x1e - .set EC_WORD_CHALLENGE, (EC_GROUP_BATTLE << 9) | 0x1f - .set EC_WORD_STRONG, (EC_GROUP_BATTLE << 9) | 0x20 - .set EC_WORD_TOO_STRONG, (EC_GROUP_BATTLE << 9) | 0x21 - .set EC_WORD_GO_EASY, (EC_GROUP_BATTLE << 9) | 0x22 - .set EC_WORD_FOE, (EC_GROUP_BATTLE << 9) | 0x23 - .set EC_WORD_GENIUS, (EC_GROUP_BATTLE << 9) | 0x24 - .set EC_WORD_LEGEND, (EC_GROUP_BATTLE << 9) | 0x25 - .set EC_WORD_ESCAPE, (EC_GROUP_BATTLE << 9) | 0x26 - .set EC_WORD_AIM, (EC_GROUP_BATTLE << 9) | 0x27 - .set EC_WORD_BATTLE, (EC_GROUP_BATTLE << 9) | 0x28 - .set EC_WORD_FIGHT, (EC_GROUP_BATTLE << 9) | 0x29 - .set EC_WORD_RESUSCITATE, (EC_GROUP_BATTLE << 9) | 0x2a - .set EC_WORD_POINTS, (EC_GROUP_BATTLE << 9) | 0x2b - .set EC_WORD_SERIOUS, (EC_GROUP_BATTLE << 9) | 0x2c - .set EC_WORD_GIVE_UP, (EC_GROUP_BATTLE << 9) | 0x2d - .set EC_WORD_LOSS, (EC_GROUP_BATTLE << 9) | 0x2e - .set EC_WORD_IF_I_LOSE, (EC_GROUP_BATTLE << 9) | 0x2f - .set EC_WORD_LOST, (EC_GROUP_BATTLE << 9) | 0x30 - .set EC_WORD_LOSE, (EC_GROUP_BATTLE << 9) | 0x31 - .set EC_WORD_GUARD, (EC_GROUP_BATTLE << 9) | 0x32 - .set EC_WORD_PARTNER, (EC_GROUP_BATTLE << 9) | 0x33 - .set EC_WORD_REJECT, (EC_GROUP_BATTLE << 9) | 0x34 - .set EC_WORD_ACCEPT, (EC_GROUP_BATTLE << 9) | 0x35 - .set EC_WORD_INVINCIBLE, (EC_GROUP_BATTLE << 9) | 0x36 - .set EC_WORD_RECEIVED, (EC_GROUP_BATTLE << 9) | 0x37 - .set EC_WORD_EASY, (EC_GROUP_BATTLE << 9) | 0x38 - .set EC_WORD_WEAK, (EC_GROUP_BATTLE << 9) | 0x39 - .set EC_WORD_TOO_WEAK, (EC_GROUP_BATTLE << 9) | 0x3a - .set EC_WORD_PUSHOVER, (EC_GROUP_BATTLE << 9) | 0x3b - .set EC_WORD_LEADER, (EC_GROUP_BATTLE << 9) | 0x3c - .set EC_WORD_RULE, (EC_GROUP_BATTLE << 9) | 0x3d - .set EC_WORD_MOVE, (EC_GROUP_BATTLE << 9) | 0x3e - -@ Greetings - .set EC_WORD_THANKS, (EC_GROUP_GREETINGS << 9) | 0x0 - .set EC_WORD_YES, (EC_GROUP_GREETINGS << 9) | 0x1 - .set EC_WORD_HERE_GOES, (EC_GROUP_GREETINGS << 9) | 0x2 - .set EC_WORD_HERE_I_COME, (EC_GROUP_GREETINGS << 9) | 0x3 - .set EC_WORD_HERE_IT_IS, (EC_GROUP_GREETINGS << 9) | 0x4 - .set EC_WORD_YEAH, (EC_GROUP_GREETINGS << 9) | 0x5 - .set EC_WORD_WELCOME, (EC_GROUP_GREETINGS << 9) | 0x6 - .set EC_WORD_OI, (EC_GROUP_GREETINGS << 9) | 0x7 - .set EC_WORD_HOW_DO, (EC_GROUP_GREETINGS << 9) | 0x8 - .set EC_WORD_CONGRATS, (EC_GROUP_GREETINGS << 9) | 0x9 - .set EC_WORD_GIVE_ME, (EC_GROUP_GREETINGS << 9) | 0xa - .set EC_WORD_SORRY, (EC_GROUP_GREETINGS << 9) | 0xb - .set EC_WORD_APOLOGIZE, (EC_GROUP_GREETINGS << 9) | 0xc - .set EC_WORD_FORGIVE, (EC_GROUP_GREETINGS << 9) | 0xd - .set EC_WORD_HEY_THERE, (EC_GROUP_GREETINGS << 9) | 0xe - .set EC_WORD_HELLO, (EC_GROUP_GREETINGS << 9) | 0xf - .set EC_WORD_GOOD_BYE, (EC_GROUP_GREETINGS << 9) | 0x10 - .set EC_WORD_THANK_YOU, (EC_GROUP_GREETINGS << 9) | 0x11 - .set EC_WORD_I_VE_ARRIVED, (EC_GROUP_GREETINGS << 9) | 0x12 - .set EC_WORD_PARDON, (EC_GROUP_GREETINGS << 9) | 0x13 - .set EC_WORD_EXCUSE, (EC_GROUP_GREETINGS << 9) | 0x14 - .set EC_WORD_SEE_YA, (EC_GROUP_GREETINGS << 9) | 0x15 - .set EC_WORD_EXCUSE_ME, (EC_GROUP_GREETINGS << 9) | 0x16 - .set EC_WORD_WELL_THEN, (EC_GROUP_GREETINGS << 9) | 0x17 - .set EC_WORD_GO_AHEAD, (EC_GROUP_GREETINGS << 9) | 0x18 - .set EC_WORD_APPRECIATE, (EC_GROUP_GREETINGS << 9) | 0x19 - .set EC_WORD_HEY_QUES, (EC_GROUP_GREETINGS << 9) | 0x1a - .set EC_WORD_WHAT_S_UP_QUES, (EC_GROUP_GREETINGS << 9) | 0x1b - .set EC_WORD_HUH_QUES, (EC_GROUP_GREETINGS << 9) | 0x1c - .set EC_WORD_NO, (EC_GROUP_GREETINGS << 9) | 0x1d - .set EC_WORD_HI, (EC_GROUP_GREETINGS << 9) | 0x1e - .set EC_WORD_YEAH_YEAH, (EC_GROUP_GREETINGS << 9) | 0x1f - .set EC_WORD_BYE_BYE, (EC_GROUP_GREETINGS << 9) | 0x20 - .set EC_WORD_MEET_YOU, (EC_GROUP_GREETINGS << 9) | 0x21 - .set EC_WORD_HEY, (EC_GROUP_GREETINGS << 9) | 0x22 - .set EC_WORD_SMELL, (EC_GROUP_GREETINGS << 9) | 0x23 - .set EC_WORD_LISTENING, (EC_GROUP_GREETINGS << 9) | 0x24 - .set EC_WORD_HOO_HAH, (EC_GROUP_GREETINGS << 9) | 0x25 - .set EC_WORD_YAHOO, (EC_GROUP_GREETINGS << 9) | 0x26 - .set EC_WORD_YO, (EC_GROUP_GREETINGS << 9) | 0x27 - .set EC_WORD_COME_OVER, (EC_GROUP_GREETINGS << 9) | 0x28 - .set EC_WORD_COUNT_ON, (EC_GROUP_GREETINGS << 9) | 0x29 - -@ People - .set EC_WORD_OPPONENT, (EC_GROUP_PEOPLE << 9) | 0x0 - .set EC_WORD_I, (EC_GROUP_PEOPLE << 9) | 0x1 - .set EC_WORD_YOU, (EC_GROUP_PEOPLE << 9) | 0x2 - .set EC_WORD_YOURS, (EC_GROUP_PEOPLE << 9) | 0x3 - .set EC_WORD_SON, (EC_GROUP_PEOPLE << 9) | 0x4 - .set EC_WORD_YOUR, (EC_GROUP_PEOPLE << 9) | 0x5 - .set EC_WORD_YOU_RE, (EC_GROUP_PEOPLE << 9) | 0x6 - .set EC_WORD_YOU_VE, (EC_GROUP_PEOPLE << 9) | 0x7 - .set EC_WORD_MOTHER, (EC_GROUP_PEOPLE << 9) | 0x8 - .set EC_WORD_GRANDFATHER, (EC_GROUP_PEOPLE << 9) | 0x9 - .set EC_WORD_UNCLE, (EC_GROUP_PEOPLE << 9) | 0xa - .set EC_WORD_FATHER, (EC_GROUP_PEOPLE << 9) | 0xb - .set EC_WORD_BOY, (EC_GROUP_PEOPLE << 9) | 0xc - .set EC_WORD_ADULT, (EC_GROUP_PEOPLE << 9) | 0xd - .set EC_WORD_BROTHER, (EC_GROUP_PEOPLE << 9) | 0xe - .set EC_WORD_SISTER, (EC_GROUP_PEOPLE << 9) | 0xf - .set EC_WORD_GRANDMOTHER, (EC_GROUP_PEOPLE << 9) | 0x10 - .set EC_WORD_AUNT, (EC_GROUP_PEOPLE << 9) | 0x11 - .set EC_WORD_PARENT, (EC_GROUP_PEOPLE << 9) | 0x12 - .set EC_WORD_MAN, (EC_GROUP_PEOPLE << 9) | 0x13 - .set EC_WORD_ME, (EC_GROUP_PEOPLE << 9) | 0x14 - .set EC_WORD_GIRL, (EC_GROUP_PEOPLE << 9) | 0x15 - .set EC_WORD_BABE, (EC_GROUP_PEOPLE << 9) | 0x16 - .set EC_WORD_FAMILY, (EC_GROUP_PEOPLE << 9) | 0x17 - .set EC_WORD_HER, (EC_GROUP_PEOPLE << 9) | 0x18 - .set EC_WORD_HIM, (EC_GROUP_PEOPLE << 9) | 0x19 - .set EC_WORD_HE, (EC_GROUP_PEOPLE << 9) | 0x1a - .set EC_WORD_PLACE, (EC_GROUP_PEOPLE << 9) | 0x1b - .set EC_WORD_DAUGHTER, (EC_GROUP_PEOPLE << 9) | 0x1c - .set EC_WORD_HIS, (EC_GROUP_PEOPLE << 9) | 0x1d - .set EC_WORD_HE_S, (EC_GROUP_PEOPLE << 9) | 0x1e - .set EC_WORD_AREN_T, (EC_GROUP_PEOPLE << 9) | 0x1f - .set EC_WORD_SIBLINGS, (EC_GROUP_PEOPLE << 9) | 0x20 - .set EC_WORD_KID, (EC_GROUP_PEOPLE << 9) | 0x21 - .set EC_WORD_CHILDREN, (EC_GROUP_PEOPLE << 9) | 0x22 - .set EC_WORD_MR, (EC_GROUP_PEOPLE << 9) | 0x23 - .set EC_WORD_MRS, (EC_GROUP_PEOPLE << 9) | 0x24 - .set EC_WORD_MYSELF, (EC_GROUP_PEOPLE << 9) | 0x25 - .set EC_WORD_I_WAS, (EC_GROUP_PEOPLE << 9) | 0x26 - .set EC_WORD_TO_ME, (EC_GROUP_PEOPLE << 9) | 0x27 - .set EC_WORD_MY, (EC_GROUP_PEOPLE << 9) | 0x28 - .set EC_WORD_I_AM, (EC_GROUP_PEOPLE << 9) | 0x29 - .set EC_WORD_I_VE, (EC_GROUP_PEOPLE << 9) | 0x2a - .set EC_WORD_WHO, (EC_GROUP_PEOPLE << 9) | 0x2b - .set EC_WORD_SOMEONE, (EC_GROUP_PEOPLE << 9) | 0x2c - .set EC_WORD_WHO_WAS, (EC_GROUP_PEOPLE << 9) | 0x2d - .set EC_WORD_TO_WHOM, (EC_GROUP_PEOPLE << 9) | 0x2e - .set EC_WORD_WHOSE, (EC_GROUP_PEOPLE << 9) | 0x2f - .set EC_WORD_WHO_IS, (EC_GROUP_PEOPLE << 9) | 0x30 - .set EC_WORD_IT_S, (EC_GROUP_PEOPLE << 9) | 0x31 - .set EC_WORD_LADY, (EC_GROUP_PEOPLE << 9) | 0x32 - .set EC_WORD_FRIEND, (EC_GROUP_PEOPLE << 9) | 0x33 - .set EC_WORD_ALLY, (EC_GROUP_PEOPLE << 9) | 0x34 - .set EC_WORD_PERSON, (EC_GROUP_PEOPLE << 9) | 0x35 - .set EC_WORD_DUDE, (EC_GROUP_PEOPLE << 9) | 0x36 - .set EC_WORD_THEY, (EC_GROUP_PEOPLE << 9) | 0x37 - .set EC_WORD_THEY_WERE, (EC_GROUP_PEOPLE << 9) | 0x38 - .set EC_WORD_TO_THEM, (EC_GROUP_PEOPLE << 9) | 0x39 - .set EC_WORD_THEIR, (EC_GROUP_PEOPLE << 9) | 0x3a - .set EC_WORD_THEY_RE, (EC_GROUP_PEOPLE << 9) | 0x3b - .set EC_WORD_THEY_VE, (EC_GROUP_PEOPLE << 9) | 0x3c - .set EC_WORD_WE, (EC_GROUP_PEOPLE << 9) | 0x3d - .set EC_WORD_BEEN, (EC_GROUP_PEOPLE << 9) | 0x3e - .set EC_WORD_TO_US, (EC_GROUP_PEOPLE << 9) | 0x3f - .set EC_WORD_OUR, (EC_GROUP_PEOPLE << 9) | 0x40 - .set EC_WORD_WE_RE, (EC_GROUP_PEOPLE << 9) | 0x41 - .set EC_WORD_RIVAL, (EC_GROUP_PEOPLE << 9) | 0x42 - .set EC_WORD_WE_VE, (EC_GROUP_PEOPLE << 9) | 0x43 - .set EC_WORD_WOMAN, (EC_GROUP_PEOPLE << 9) | 0x44 - .set EC_WORD_SHE, (EC_GROUP_PEOPLE << 9) | 0x45 - .set EC_WORD_SHE_WAS, (EC_GROUP_PEOPLE << 9) | 0x46 - .set EC_WORD_TO_HER, (EC_GROUP_PEOPLE << 9) | 0x47 - .set EC_WORD_HERS, (EC_GROUP_PEOPLE << 9) | 0x48 - .set EC_WORD_SHE_IS, (EC_GROUP_PEOPLE << 9) | 0x49 - .set EC_WORD_SOME, (EC_GROUP_PEOPLE << 9) | 0x4a - -@ Voices - .set EC_WORD_EXCL, (EC_GROUP_VOICES << 9) | 0x0 - .set EC_WORD_EXCL_EXCL, (EC_GROUP_VOICES << 9) | 0x1 - .set EC_WORD_QUES_EXCL, (EC_GROUP_VOICES << 9) | 0x2 - .set EC_WORD_QUES, (EC_GROUP_VOICES << 9) | 0x3 - .set EC_WORD_ELLIPSIS, (EC_GROUP_VOICES << 9) | 0x4 - .set EC_WORD_ELLIPSIS_EXCL, (EC_GROUP_VOICES << 9) | 0x5 - .set EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS, (EC_GROUP_VOICES << 9) | 0x6 - .set EC_WORD_DASH, (EC_GROUP_VOICES << 9) | 0x7 - .set EC_WORD_DASH_DASH_DASH, (EC_GROUP_VOICES << 9) | 0x8 - .set EC_WORD_UH_OH, (EC_GROUP_VOICES << 9) | 0x9 - .set EC_WORD_WAAAH, (EC_GROUP_VOICES << 9) | 0xa - .set EC_WORD_AHAHA, (EC_GROUP_VOICES << 9) | 0xb - .set EC_WORD_OH_QUES, (EC_GROUP_VOICES << 9) | 0xc - .set EC_WORD_NOPE, (EC_GROUP_VOICES << 9) | 0xd - .set EC_WORD_URGH, (EC_GROUP_VOICES << 9) | 0xe - .set EC_WORD_HMM, (EC_GROUP_VOICES << 9) | 0xf - .set EC_WORD_WHOAH, (EC_GROUP_VOICES << 9) | 0x10 - .set EC_WORD_WROOOAAR_EXCL, (EC_GROUP_VOICES << 9) | 0x11 - .set EC_WORD_WOW, (EC_GROUP_VOICES << 9) | 0x12 - .set EC_WORD_GIGGLE, (EC_GROUP_VOICES << 9) | 0x13 - .set EC_WORD_SIGH, (EC_GROUP_VOICES << 9) | 0x14 - .set EC_WORD_UNBELIEVABLE, (EC_GROUP_VOICES << 9) | 0x15 - .set EC_WORD_CRIES, (EC_GROUP_VOICES << 9) | 0x16 - .set EC_WORD_AGREE, (EC_GROUP_VOICES << 9) | 0x17 - .set EC_WORD_EH_QUES, (EC_GROUP_VOICES << 9) | 0x18 - .set EC_WORD_CRY, (EC_GROUP_VOICES << 9) | 0x19 - .set EC_WORD_EHEHE, (EC_GROUP_VOICES << 9) | 0x1a - .set EC_WORD_OI_OI_OI, (EC_GROUP_VOICES << 9) | 0x1b - .set EC_WORD_OH_YEAH, (EC_GROUP_VOICES << 9) | 0x1c - .set EC_WORD_OH, (EC_GROUP_VOICES << 9) | 0x1d - .set EC_WORD_OOPS, (EC_GROUP_VOICES << 9) | 0x1e - .set EC_WORD_SHOCKED, (EC_GROUP_VOICES << 9) | 0x1f - .set EC_WORD_EEK, (EC_GROUP_VOICES << 9) | 0x20 - .set EC_WORD_GRAAAH, (EC_GROUP_VOICES << 9) | 0x21 - .set EC_WORD_GWAHAHAHA, (EC_GROUP_VOICES << 9) | 0x22 - .set EC_WORD_WAY, (EC_GROUP_VOICES << 9) | 0x23 - .set EC_WORD_TCH, (EC_GROUP_VOICES << 9) | 0x24 - .set EC_WORD_HEHE, (EC_GROUP_VOICES << 9) | 0x25 - .set EC_WORD_HAH, (EC_GROUP_VOICES << 9) | 0x26 - .set EC_WORD_YUP, (EC_GROUP_VOICES << 9) | 0x27 - .set EC_WORD_HAHAHA, (EC_GROUP_VOICES << 9) | 0x28 - .set EC_WORD_AIYEEH, (EC_GROUP_VOICES << 9) | 0x29 - .set EC_WORD_HIYAH, (EC_GROUP_VOICES << 9) | 0x2a - .set EC_WORD_FUFUFU, (EC_GROUP_VOICES << 9) | 0x2b - .set EC_WORD_LOL, (EC_GROUP_VOICES << 9) | 0x2c - .set EC_WORD_SNORT, (EC_GROUP_VOICES << 9) | 0x2d - .set EC_WORD_HUMPH, (EC_GROUP_VOICES << 9) | 0x2e - .set EC_WORD_HEHEHE, (EC_GROUP_VOICES << 9) | 0x2f - .set EC_WORD_HEH, (EC_GROUP_VOICES << 9) | 0x30 - .set EC_WORD_HOHOHO, (EC_GROUP_VOICES << 9) | 0x31 - .set EC_WORD_UH_HUH, (EC_GROUP_VOICES << 9) | 0x32 - .set EC_WORD_OH_DEAR, (EC_GROUP_VOICES << 9) | 0x33 - .set EC_WORD_ARRGH, (EC_GROUP_VOICES << 9) | 0x34 - .set EC_WORD_MUFUFU, (EC_GROUP_VOICES << 9) | 0x35 - .set EC_WORD_MMM, (EC_GROUP_VOICES << 9) | 0x36 - .set EC_WORD_OH_KAY, (EC_GROUP_VOICES << 9) | 0x37 - .set EC_WORD_OKAY, (EC_GROUP_VOICES << 9) | 0x38 - .set EC_WORD_LALALA, (EC_GROUP_VOICES << 9) | 0x39 - .set EC_WORD_YAY, (EC_GROUP_VOICES << 9) | 0x3a - .set EC_WORD_AWW, (EC_GROUP_VOICES << 9) | 0x3b - .set EC_WORD_WOWEE, (EC_GROUP_VOICES << 9) | 0x3c - .set EC_WORD_GWAH, (EC_GROUP_VOICES << 9) | 0x3d - .set EC_WORD_WAHAHAHA, (EC_GROUP_VOICES << 9) | 0x3e - -@ Speech - .set EC_WORD_LISTEN, (EC_GROUP_SPEECH << 9) | 0x0 - .set EC_WORD_NOT_VERY, (EC_GROUP_SPEECH << 9) | 0x1 - .set EC_WORD_MEAN, (EC_GROUP_SPEECH << 9) | 0x2 - .set EC_WORD_LIE, (EC_GROUP_SPEECH << 9) | 0x3 - .set EC_WORD_LAY, (EC_GROUP_SPEECH << 9) | 0x4 - .set EC_WORD_RECOMMEND, (EC_GROUP_SPEECH << 9) | 0x5 - .set EC_WORD_NITWIT, (EC_GROUP_SPEECH << 9) | 0x6 - .set EC_WORD_QUITE, (EC_GROUP_SPEECH << 9) | 0x7 - .set EC_WORD_FROM, (EC_GROUP_SPEECH << 9) | 0x8 - .set EC_WORD_FEELING, (EC_GROUP_SPEECH << 9) | 0x9 - .set EC_WORD_BUT, (EC_GROUP_SPEECH << 9) | 0xa - .set EC_WORD_HOWEVER, (EC_GROUP_SPEECH << 9) | 0xb - .set EC_WORD_CASE, (EC_GROUP_SPEECH << 9) | 0xc - .set EC_WORD_THE, (EC_GROUP_SPEECH << 9) | 0xd - .set EC_WORD_MISS, (EC_GROUP_SPEECH << 9) | 0xe - .set EC_WORD_HOW, (EC_GROUP_SPEECH << 9) | 0xf - .set EC_WORD_HIT, (EC_GROUP_SPEECH << 9) | 0x10 - .set EC_WORD_ENOUGH, (EC_GROUP_SPEECH << 9) | 0x11 - .set EC_WORD_A_LOT, (EC_GROUP_SPEECH << 9) | 0x12 - .set EC_WORD_A_LITTLE, (EC_GROUP_SPEECH << 9) | 0x13 - .set EC_WORD_ABSOLUTELY, (EC_GROUP_SPEECH << 9) | 0x14 - .set EC_WORD_AND, (EC_GROUP_SPEECH << 9) | 0x15 - .set EC_WORD_ONLY, (EC_GROUP_SPEECH << 9) | 0x16 - .set EC_WORD_AROUND, (EC_GROUP_SPEECH << 9) | 0x17 - .set EC_WORD_PROBABLY, (EC_GROUP_SPEECH << 9) | 0x18 - .set EC_WORD_IF, (EC_GROUP_SPEECH << 9) | 0x19 - .set EC_WORD_VERY, (EC_GROUP_SPEECH << 9) | 0x1a - .set EC_WORD_A_TINY_BIT, (EC_GROUP_SPEECH << 9) | 0x1b - .set EC_WORD_WILD, (EC_GROUP_SPEECH << 9) | 0x1c - .set EC_WORD_THAT_S, (EC_GROUP_SPEECH << 9) | 0x1d - .set EC_WORD_JUST, (EC_GROUP_SPEECH << 9) | 0x1e - .set EC_WORD_EVEN_SO, (EC_GROUP_SPEECH << 9) | 0x1f - .set EC_WORD_MUST_BE, (EC_GROUP_SPEECH << 9) | 0x20 - .set EC_WORD_NATURALLY, (EC_GROUP_SPEECH << 9) | 0x21 - .set EC_WORD_FOR_NOW, (EC_GROUP_SPEECH << 9) | 0x22 - .set EC_WORD_UNDERSTOOD, (EC_GROUP_SPEECH << 9) | 0x23 - .set EC_WORD_JOKING, (EC_GROUP_SPEECH << 9) | 0x24 - .set EC_WORD_READY, (EC_GROUP_SPEECH << 9) | 0x25 - .set EC_WORD_SOMETHING, (EC_GROUP_SPEECH << 9) | 0x26 - .set EC_WORD_SOMEHOW, (EC_GROUP_SPEECH << 9) | 0x27 - .set EC_WORD_ALTHOUGH, (EC_GROUP_SPEECH << 9) | 0x28 - .set EC_WORD_ALSO, (EC_GROUP_SPEECH << 9) | 0x29 - .set EC_WORD_PERFECT, (EC_GROUP_SPEECH << 9) | 0x2a - .set EC_WORD_AS_MUCH_AS, (EC_GROUP_SPEECH << 9) | 0x2b - .set EC_WORD_REALLY, (EC_GROUP_SPEECH << 9) | 0x2c - .set EC_WORD_TRULY, (EC_GROUP_SPEECH << 9) | 0x2d - .set EC_WORD_SERIOUSLY, (EC_GROUP_SPEECH << 9) | 0x2e - .set EC_WORD_TOTALLY, (EC_GROUP_SPEECH << 9) | 0x2f - .set EC_WORD_UNTIL, (EC_GROUP_SPEECH << 9) | 0x30 - .set EC_WORD_AS_IF, (EC_GROUP_SPEECH << 9) | 0x31 - .set EC_WORD_MOOD, (EC_GROUP_SPEECH << 9) | 0x32 - .set EC_WORD_RATHER, (EC_GROUP_SPEECH << 9) | 0x33 - .set EC_WORD_AWFULLY, (EC_GROUP_SPEECH << 9) | 0x34 - .set EC_WORD_MODE, (EC_GROUP_SPEECH << 9) | 0x35 - .set EC_WORD_MORE, (EC_GROUP_SPEECH << 9) | 0x36 - .set EC_WORD_TOO_LATE, (EC_GROUP_SPEECH << 9) | 0x37 - .set EC_WORD_FINALLY, (EC_GROUP_SPEECH << 9) | 0x38 - .set EC_WORD_ANY, (EC_GROUP_SPEECH << 9) | 0x39 - .set EC_WORD_INSTEAD, (EC_GROUP_SPEECH << 9) | 0x3a - .set EC_WORD_FANTASTIC, (EC_GROUP_SPEECH << 9) | 0x3b - -@ Endings - .set EC_WORD_WILL, (EC_GROUP_ENDINGS << 9) | 0x0 - .set EC_WORD_WILL_BE_HERE, (EC_GROUP_ENDINGS << 9) | 0x1 - .set EC_WORD_OR, (EC_GROUP_ENDINGS << 9) | 0x2 - .set EC_WORD_TIMES, (EC_GROUP_ENDINGS << 9) | 0x3 - .set EC_WORD_WONDER, (EC_GROUP_ENDINGS << 9) | 0x4 - .set EC_WORD_IS_IT_QUES, (EC_GROUP_ENDINGS << 9) | 0x5 - .set EC_WORD_BE, (EC_GROUP_ENDINGS << 9) | 0x6 - .set EC_WORD_GIMME, (EC_GROUP_ENDINGS << 9) | 0x7 - .set EC_WORD_COULD, (EC_GROUP_ENDINGS << 9) | 0x8 - .set EC_WORD_LIKELY_TO, (EC_GROUP_ENDINGS << 9) | 0x9 - .set EC_WORD_WOULD, (EC_GROUP_ENDINGS << 9) | 0xa - .set EC_WORD_IS, (EC_GROUP_ENDINGS << 9) | 0xb - .set EC_WORD_ISN_T_IT_QUES, (EC_GROUP_ENDINGS << 9) | 0xc - .set EC_WORD_LET_S, (EC_GROUP_ENDINGS << 9) | 0xd - .set EC_WORD_OTHER, (EC_GROUP_ENDINGS << 9) | 0xe - .set EC_WORD_ARE, (EC_GROUP_ENDINGS << 9) | 0xf - .set EC_WORD_WAS, (EC_GROUP_ENDINGS << 9) | 0x10 - .set EC_WORD_WERE, (EC_GROUP_ENDINGS << 9) | 0x11 - .set EC_WORD_THOSE, (EC_GROUP_ENDINGS << 9) | 0x12 - .set EC_WORD_ISN_T, (EC_GROUP_ENDINGS << 9) | 0x13 - .set EC_WORD_WON_T, (EC_GROUP_ENDINGS << 9) | 0x14 - .set EC_WORD_CAN_T, (EC_GROUP_ENDINGS << 9) | 0x15 - .set EC_WORD_CAN, (EC_GROUP_ENDINGS << 9) | 0x16 - .set EC_WORD_DON_T, (EC_GROUP_ENDINGS << 9) | 0x17 - .set EC_WORD_DO, (EC_GROUP_ENDINGS << 9) | 0x18 - .set EC_WORD_DOES, (EC_GROUP_ENDINGS << 9) | 0x19 - .set EC_WORD_WHOM, (EC_GROUP_ENDINGS << 9) | 0x1a - .set EC_WORD_WHICH, (EC_GROUP_ENDINGS << 9) | 0x1b - .set EC_WORD_WASN_T, (EC_GROUP_ENDINGS << 9) | 0x1c - .set EC_WORD_WEREN_T, (EC_GROUP_ENDINGS << 9) | 0x1d - .set EC_WORD_HAVE, (EC_GROUP_ENDINGS << 9) | 0x1e - .set EC_WORD_HAVEN_T, (EC_GROUP_ENDINGS << 9) | 0x1f - .set EC_WORD_A, (EC_GROUP_ENDINGS << 9) | 0x20 - .set EC_WORD_AN, (EC_GROUP_ENDINGS << 9) | 0x21 - .set EC_WORD_NOT, (EC_GROUP_ENDINGS << 9) | 0x22 - .set EC_WORD_THERE, (EC_GROUP_ENDINGS << 9) | 0x23 - .set EC_WORD_OK_QUES, (EC_GROUP_ENDINGS << 9) | 0x24 - .set EC_WORD_SO, (EC_GROUP_ENDINGS << 9) | 0x25 - .set EC_WORD_MAYBE, (EC_GROUP_ENDINGS << 9) | 0x26 - .set EC_WORD_ABOUT, (EC_GROUP_ENDINGS << 9) | 0x27 - .set EC_WORD_OVER, (EC_GROUP_ENDINGS << 9) | 0x28 - .set EC_WORD_IT, (EC_GROUP_ENDINGS << 9) | 0x29 - .set EC_WORD_ALL, (EC_GROUP_ENDINGS << 9) | 0x2a - .set EC_WORD_FOR, (EC_GROUP_ENDINGS << 9) | 0x2b - .set EC_WORD_ON, (EC_GROUP_ENDINGS << 9) | 0x2c - .set EC_WORD_OFF, (EC_GROUP_ENDINGS << 9) | 0x2d - .set EC_WORD_AS, (EC_GROUP_ENDINGS << 9) | 0x2e - .set EC_WORD_TO, (EC_GROUP_ENDINGS << 9) | 0x2f - .set EC_WORD_WITH, (EC_GROUP_ENDINGS << 9) | 0x30 - .set EC_WORD_BETTER, (EC_GROUP_ENDINGS << 9) | 0x31 - .set EC_WORD_EVER, (EC_GROUP_ENDINGS << 9) | 0x32 - .set EC_WORD_SINCE, (EC_GROUP_ENDINGS << 9) | 0x33 - .set EC_WORD_OF, (EC_GROUP_ENDINGS << 9) | 0x34 - .set EC_WORD_BELONGS_TO, (EC_GROUP_ENDINGS << 9) | 0x35 - .set EC_WORD_AT, (EC_GROUP_ENDINGS << 9) | 0x36 - .set EC_WORD_IN, (EC_GROUP_ENDINGS << 9) | 0x37 - .set EC_WORD_OUT, (EC_GROUP_ENDINGS << 9) | 0x38 - .set EC_WORD_TOO, (EC_GROUP_ENDINGS << 9) | 0x39 - .set EC_WORD_LIKE, (EC_GROUP_ENDINGS << 9) | 0x3a - .set EC_WORD_DID, (EC_GROUP_ENDINGS << 9) | 0x3b - .set EC_WORD_DIDN_T, (EC_GROUP_ENDINGS << 9) | 0x3c - .set EC_WORD_DOESN_T, (EC_GROUP_ENDINGS << 9) | 0x3d - .set EC_WORD_WITHOUT, (EC_GROUP_ENDINGS << 9) | 0x3e - .set EC_WORD_AFTER, (EC_GROUP_ENDINGS << 9) | 0x3f - .set EC_WORD_BEFORE, (EC_GROUP_ENDINGS << 9) | 0x40 - .set EC_WORD_WHILE, (EC_GROUP_ENDINGS << 9) | 0x41 - .set EC_WORD_THAN, (EC_GROUP_ENDINGS << 9) | 0x42 - .set EC_WORD_ONCE, (EC_GROUP_ENDINGS << 9) | 0x43 - .set EC_WORD_ANYWHERE, (EC_GROUP_ENDINGS << 9) | 0x44 - -@ Feelings - .set EC_WORD_MEET, (EC_GROUP_FEELINGS << 9) | 0x0 - .set EC_WORD_PLAY, (EC_GROUP_FEELINGS << 9) | 0x1 - .set EC_WORD_HURRIED, (EC_GROUP_FEELINGS << 9) | 0x2 - .set EC_WORD_GOES, (EC_GROUP_FEELINGS << 9) | 0x3 - .set EC_WORD_GIDDY, (EC_GROUP_FEELINGS << 9) | 0x4 - .set EC_WORD_HAPPY, (EC_GROUP_FEELINGS << 9) | 0x5 - .set EC_WORD_HAPPINESS, (EC_GROUP_FEELINGS << 9) | 0x6 - .set EC_WORD_EXCITE, (EC_GROUP_FEELINGS << 9) | 0x7 - .set EC_WORD_IMPORTANT, (EC_GROUP_FEELINGS << 9) | 0x8 - .set EC_WORD_FUNNY, (EC_GROUP_FEELINGS << 9) | 0x9 - .set EC_WORD_GOT, (EC_GROUP_FEELINGS << 9) | 0xa - .set EC_WORD_GO_HOME, (EC_GROUP_FEELINGS << 9) | 0xb - .set EC_WORD_DISAPPOINTED, (EC_GROUP_FEELINGS << 9) | 0xc - .set EC_WORD_DISAPPOINTS, (EC_GROUP_FEELINGS << 9) | 0xd - .set EC_WORD_SAD, (EC_GROUP_FEELINGS << 9) | 0xe - .set EC_WORD_TRY, (EC_GROUP_FEELINGS << 9) | 0xf - .set EC_WORD_TRIES, (EC_GROUP_FEELINGS << 9) | 0x10 - .set EC_WORD_HEARS, (EC_GROUP_FEELINGS << 9) | 0x11 - .set EC_WORD_THINK, (EC_GROUP_FEELINGS << 9) | 0x12 - .set EC_WORD_HEAR, (EC_GROUP_FEELINGS << 9) | 0x13 - .set EC_WORD_WANTS, (EC_GROUP_FEELINGS << 9) | 0x14 - .set EC_WORD_MISHEARD, (EC_GROUP_FEELINGS << 9) | 0x15 - .set EC_WORD_DISLIKE, (EC_GROUP_FEELINGS << 9) | 0x16 - .set EC_WORD_ANGRY, (EC_GROUP_FEELINGS << 9) | 0x17 - .set EC_WORD_ANGER, (EC_GROUP_FEELINGS << 9) | 0x18 - .set EC_WORD_SCARY, (EC_GROUP_FEELINGS << 9) | 0x19 - .set EC_WORD_LONESOME, (EC_GROUP_FEELINGS << 9) | 0x1a - .set EC_WORD_DISAPPOINT, (EC_GROUP_FEELINGS << 9) | 0x1b - .set EC_WORD_JOY, (EC_GROUP_FEELINGS << 9) | 0x1c - .set EC_WORD_GETS, (EC_GROUP_FEELINGS << 9) | 0x1d - .set EC_WORD_NEVER, (EC_GROUP_FEELINGS << 9) | 0x1e - .set EC_WORD_DARN, (EC_GROUP_FEELINGS << 9) | 0x1f - .set EC_WORD_DOWNCAST, (EC_GROUP_FEELINGS << 9) | 0x20 - .set EC_WORD_INCREDIBLE, (EC_GROUP_FEELINGS << 9) | 0x21 - .set EC_WORD_LIKES, (EC_GROUP_FEELINGS << 9) | 0x22 - .set EC_WORD_DISLIKES, (EC_GROUP_FEELINGS << 9) | 0x23 - .set EC_WORD_BORING, (EC_GROUP_FEELINGS << 9) | 0x24 - .set EC_WORD_CARE, (EC_GROUP_FEELINGS << 9) | 0x25 - .set EC_WORD_CARES, (EC_GROUP_FEELINGS << 9) | 0x26 - .set EC_WORD_ALL_RIGHT, (EC_GROUP_FEELINGS << 9) | 0x27 - .set EC_WORD_ADORE, (EC_GROUP_FEELINGS << 9) | 0x28 - .set EC_WORD_DISASTER, (EC_GROUP_FEELINGS << 9) | 0x29 - .set EC_WORD_ENJOY, (EC_GROUP_FEELINGS << 9) | 0x2a - .set EC_WORD_ENJOYS, (EC_GROUP_FEELINGS << 9) | 0x2b - .set EC_WORD_EAT, (EC_GROUP_FEELINGS << 9) | 0x2c - .set EC_WORD_LACKING, (EC_GROUP_FEELINGS << 9) | 0x2d - .set EC_WORD_BAD, (EC_GROUP_FEELINGS << 9) | 0x2e - .set EC_WORD_HARD, (EC_GROUP_FEELINGS << 9) | 0x2f - .set EC_WORD_TERRIBLE, (EC_GROUP_FEELINGS << 9) | 0x30 - .set EC_WORD_SHOULD, (EC_GROUP_FEELINGS << 9) | 0x31 - .set EC_WORD_NICE, (EC_GROUP_FEELINGS << 9) | 0x32 - .set EC_WORD_DRINK, (EC_GROUP_FEELINGS << 9) | 0x33 - .set EC_WORD_SURPRISE, (EC_GROUP_FEELINGS << 9) | 0x34 - .set EC_WORD_FEAR, (EC_GROUP_FEELINGS << 9) | 0x35 - .set EC_WORD_WANT, (EC_GROUP_FEELINGS << 9) | 0x36 - .set EC_WORD_WAIT, (EC_GROUP_FEELINGS << 9) | 0x37 - .set EC_WORD_SATISFIED, (EC_GROUP_FEELINGS << 9) | 0x38 - .set EC_WORD_SEE, (EC_GROUP_FEELINGS << 9) | 0x39 - .set EC_WORD_RARE, (EC_GROUP_FEELINGS << 9) | 0x3a - .set EC_WORD_NEGATIVE, (EC_GROUP_FEELINGS << 9) | 0x3b - .set EC_WORD_DONE, (EC_GROUP_FEELINGS << 9) | 0x3c - .set EC_WORD_DANGER, (EC_GROUP_FEELINGS << 9) | 0x3d - .set EC_WORD_DEFEATED, (EC_GROUP_FEELINGS << 9) | 0x3e - .set EC_WORD_BEAT, (EC_GROUP_FEELINGS << 9) | 0x3f - .set EC_WORD_GREAT, (EC_GROUP_FEELINGS << 9) | 0x40 - .set EC_WORD_ROMANTIC, (EC_GROUP_FEELINGS << 9) | 0x41 - .set EC_WORD_QUESTION, (EC_GROUP_FEELINGS << 9) | 0x42 - .set EC_WORD_UNDERSTAND, (EC_GROUP_FEELINGS << 9) | 0x43 - .set EC_WORD_UNDERSTANDS, (EC_GROUP_FEELINGS << 9) | 0x44 - -@ Conditions - .set EC_WORD_HOT, (EC_GROUP_CONDITIONS << 9) | 0x0 - .set EC_WORD_EXISTS, (EC_GROUP_CONDITIONS << 9) | 0x1 - .set EC_WORD_EXCESS, (EC_GROUP_CONDITIONS << 9) | 0x2 - .set EC_WORD_APPROVED, (EC_GROUP_CONDITIONS << 9) | 0x3 - .set EC_WORD_HAS, (EC_GROUP_CONDITIONS << 9) | 0x4 - .set EC_WORD_GOOD, (EC_GROUP_CONDITIONS << 9) | 0x5 - .set EC_WORD_LESS, (EC_GROUP_CONDITIONS << 9) | 0x6 - .set EC_WORD_MOMENTUM, (EC_GROUP_CONDITIONS << 9) | 0x7 - .set EC_WORD_GOING, (EC_GROUP_CONDITIONS << 9) | 0x8 - .set EC_WORD_WEIRD, (EC_GROUP_CONDITIONS << 9) | 0x9 - .set EC_WORD_BUSY, (EC_GROUP_CONDITIONS << 9) | 0xa - .set EC_WORD_TOGETHER, (EC_GROUP_CONDITIONS << 9) | 0xb - .set EC_WORD_FULL, (EC_GROUP_CONDITIONS << 9) | 0xc - .set EC_WORD_ABSENT, (EC_GROUP_CONDITIONS << 9) | 0xd - .set EC_WORD_BEING, (EC_GROUP_CONDITIONS << 9) | 0xe - .set EC_WORD_NEED, (EC_GROUP_CONDITIONS << 9) | 0xf - .set EC_WORD_TASTY, (EC_GROUP_CONDITIONS << 9) | 0x10 - .set EC_WORD_SKILLED, (EC_GROUP_CONDITIONS << 9) | 0x11 - .set EC_WORD_NOISY, (EC_GROUP_CONDITIONS << 9) | 0x12 - .set EC_WORD_BIG, (EC_GROUP_CONDITIONS << 9) | 0x13 - .set EC_WORD_LATE, (EC_GROUP_CONDITIONS << 9) | 0x14 - .set EC_WORD_CLOSE, (EC_GROUP_CONDITIONS << 9) | 0x15 - .set EC_WORD_DOCILE, (EC_GROUP_CONDITIONS << 9) | 0x16 - .set EC_WORD_AMUSING, (EC_GROUP_CONDITIONS << 9) | 0x17 - .set EC_WORD_ENTERTAINING, (EC_GROUP_CONDITIONS << 9) | 0x18 - .set EC_WORD_PERFECTION, (EC_GROUP_CONDITIONS << 9) | 0x19 - .set EC_WORD_PRETTY, (EC_GROUP_CONDITIONS << 9) | 0x1a - .set EC_WORD_HEALTHY, (EC_GROUP_CONDITIONS << 9) | 0x1b - .set EC_WORD_EXCELLENT, (EC_GROUP_CONDITIONS << 9) | 0x1c - .set EC_WORD_UPSIDE_DOWN, (EC_GROUP_CONDITIONS << 9) | 0x1d - .set EC_WORD_COLD, (EC_GROUP_CONDITIONS << 9) | 0x1e - .set EC_WORD_REFRESHING, (EC_GROUP_CONDITIONS << 9) | 0x1f - .set EC_WORD_UNAVOIDABLE, (EC_GROUP_CONDITIONS << 9) | 0x20 - .set EC_WORD_MUCH, (EC_GROUP_CONDITIONS << 9) | 0x21 - .set EC_WORD_OVERWHELMING, (EC_GROUP_CONDITIONS << 9) | 0x22 - .set EC_WORD_FABULOUS, (EC_GROUP_CONDITIONS << 9) | 0x23 - .set EC_WORD_ELSE, (EC_GROUP_CONDITIONS << 9) | 0x24 - .set EC_WORD_EXPENSIVE, (EC_GROUP_CONDITIONS << 9) | 0x25 - .set EC_WORD_CORRECT, (EC_GROUP_CONDITIONS << 9) | 0x26 - .set EC_WORD_IMPOSSIBLE, (EC_GROUP_CONDITIONS << 9) | 0x27 - .set EC_WORD_SMALL, (EC_GROUP_CONDITIONS << 9) | 0x28 - .set EC_WORD_DIFFERENT, (EC_GROUP_CONDITIONS << 9) | 0x29 - .set EC_WORD_TIRED, (EC_GROUP_CONDITIONS << 9) | 0x2a - .set EC_WORD_SKILL, (EC_GROUP_CONDITIONS << 9) | 0x2b - .set EC_WORD_TOP, (EC_GROUP_CONDITIONS << 9) | 0x2c - .set EC_WORD_NON_STOP, (EC_GROUP_CONDITIONS << 9) | 0x2d - .set EC_WORD_PREPOSTEROUS, (EC_GROUP_CONDITIONS << 9) | 0x2e - .set EC_WORD_NONE, (EC_GROUP_CONDITIONS << 9) | 0x2f - .set EC_WORD_NOTHING, (EC_GROUP_CONDITIONS << 9) | 0x30 - .set EC_WORD_NATURAL, (EC_GROUP_CONDITIONS << 9) | 0x31 - .set EC_WORD_BECOMES, (EC_GROUP_CONDITIONS << 9) | 0x32 - .set EC_WORD_LUKEWARM, (EC_GROUP_CONDITIONS << 9) | 0x33 - .set EC_WORD_FAST, (EC_GROUP_CONDITIONS << 9) | 0x34 - .set EC_WORD_LOW, (EC_GROUP_CONDITIONS << 9) | 0x35 - .set EC_WORD_AWFUL, (EC_GROUP_CONDITIONS << 9) | 0x36 - .set EC_WORD_ALONE, (EC_GROUP_CONDITIONS << 9) | 0x37 - .set EC_WORD_BORED, (EC_GROUP_CONDITIONS << 9) | 0x38 - .set EC_WORD_SECRET, (EC_GROUP_CONDITIONS << 9) | 0x39 - .set EC_WORD_MYSTERY, (EC_GROUP_CONDITIONS << 9) | 0x3a - .set EC_WORD_LACKS, (EC_GROUP_CONDITIONS << 9) | 0x3b - .set EC_WORD_BEST, (EC_GROUP_CONDITIONS << 9) | 0x3c - .set EC_WORD_LOUSY, (EC_GROUP_CONDITIONS << 9) | 0x3d - .set EC_WORD_MISTAKE, (EC_GROUP_CONDITIONS << 9) | 0x3e - .set EC_WORD_KIND, (EC_GROUP_CONDITIONS << 9) | 0x3f - .set EC_WORD_WELL, (EC_GROUP_CONDITIONS << 9) | 0x40 - .set EC_WORD_WEAKENED, (EC_GROUP_CONDITIONS << 9) | 0x41 - .set EC_WORD_SIMPLE, (EC_GROUP_CONDITIONS << 9) | 0x42 - .set EC_WORD_SEEMS, (EC_GROUP_CONDITIONS << 9) | 0x43 - .set EC_WORD_BADLY, (EC_GROUP_CONDITIONS << 9) | 0x44 - -@ Actions - .set EC_WORD_MEETS, (EC_GROUP_ACTIONS << 9) | 0x0 - .set EC_WORD_CONCEDE, (EC_GROUP_ACTIONS << 9) | 0x1 - .set EC_WORD_GIVE, (EC_GROUP_ACTIONS << 9) | 0x2 - .set EC_WORD_GIVES, (EC_GROUP_ACTIONS << 9) | 0x3 - .set EC_WORD_PLAYED, (EC_GROUP_ACTIONS << 9) | 0x4 - .set EC_WORD_PLAYS, (EC_GROUP_ACTIONS << 9) | 0x5 - .set EC_WORD_COLLECT, (EC_GROUP_ACTIONS << 9) | 0x6 - .set EC_WORD_WALKING, (EC_GROUP_ACTIONS << 9) | 0x7 - .set EC_WORD_WALKS, (EC_GROUP_ACTIONS << 9) | 0x8 - .set EC_WORD_SAYS, (EC_GROUP_ACTIONS << 9) | 0x9 - .set EC_WORD_WENT, (EC_GROUP_ACTIONS << 9) | 0xa - .set EC_WORD_SAID, (EC_GROUP_ACTIONS << 9) | 0xb - .set EC_WORD_WAKE_UP, (EC_GROUP_ACTIONS << 9) | 0xc - .set EC_WORD_WAKES_UP, (EC_GROUP_ACTIONS << 9) | 0xd - .set EC_WORD_ANGERS, (EC_GROUP_ACTIONS << 9) | 0xe - .set EC_WORD_TEACH, (EC_GROUP_ACTIONS << 9) | 0xf - .set EC_WORD_TEACHES, (EC_GROUP_ACTIONS << 9) | 0x10 - .set EC_WORD_PLEASE, (EC_GROUP_ACTIONS << 9) | 0x11 - .set EC_WORD_LEARN, (EC_GROUP_ACTIONS << 9) | 0x12 - .set EC_WORD_CHANGE, (EC_GROUP_ACTIONS << 9) | 0x13 - .set EC_WORD_STORY, (EC_GROUP_ACTIONS << 9) | 0x14 - .set EC_WORD_TRUST, (EC_GROUP_ACTIONS << 9) | 0x15 - .set EC_WORD_LAVISH, (EC_GROUP_ACTIONS << 9) | 0x16 - .set EC_WORD_LISTENS, (EC_GROUP_ACTIONS << 9) | 0x17 - .set EC_WORD_HEARING, (EC_GROUP_ACTIONS << 9) | 0x18 - .set EC_WORD_TRAINS, (EC_GROUP_ACTIONS << 9) | 0x19 - .set EC_WORD_CHOOSE, (EC_GROUP_ACTIONS << 9) | 0x1a - .set EC_WORD_COME, (EC_GROUP_ACTIONS << 9) | 0x1b - .set EC_WORD_CAME, (EC_GROUP_ACTIONS << 9) | 0x1c - .set EC_WORD_SEARCH, (EC_GROUP_ACTIONS << 9) | 0x1d - .set EC_WORD_MAKE, (EC_GROUP_ACTIONS << 9) | 0x1e - .set EC_WORD_CAUSE, (EC_GROUP_ACTIONS << 9) | 0x1f - .set EC_WORD_KNOW, (EC_GROUP_ACTIONS << 9) | 0x20 - .set EC_WORD_KNOWS, (EC_GROUP_ACTIONS << 9) | 0x21 - .set EC_WORD_REFUSE, (EC_GROUP_ACTIONS << 9) | 0x22 - .set EC_WORD_STORES, (EC_GROUP_ACTIONS << 9) | 0x23 - .set EC_WORD_BRAG, (EC_GROUP_ACTIONS << 9) | 0x24 - .set EC_WORD_IGNORANT, (EC_GROUP_ACTIONS << 9) | 0x25 - .set EC_WORD_THINKS, (EC_GROUP_ACTIONS << 9) | 0x26 - .set EC_WORD_BELIEVE, (EC_GROUP_ACTIONS << 9) | 0x27 - .set EC_WORD_SLIDE, (EC_GROUP_ACTIONS << 9) | 0x28 - .set EC_WORD_EATS, (EC_GROUP_ACTIONS << 9) | 0x29 - .set EC_WORD_USE, (EC_GROUP_ACTIONS << 9) | 0x2a - .set EC_WORD_USES, (EC_GROUP_ACTIONS << 9) | 0x2b - .set EC_WORD_USING, (EC_GROUP_ACTIONS << 9) | 0x2c - .set EC_WORD_COULDN_T, (EC_GROUP_ACTIONS << 9) | 0x2d - .set EC_WORD_CAPABLE, (EC_GROUP_ACTIONS << 9) | 0x2e - .set EC_WORD_DISAPPEAR, (EC_GROUP_ACTIONS << 9) | 0x2f - .set EC_WORD_APPEAR, (EC_GROUP_ACTIONS << 9) | 0x30 - .set EC_WORD_THROW, (EC_GROUP_ACTIONS << 9) | 0x31 - .set EC_WORD_WORRY, (EC_GROUP_ACTIONS << 9) | 0x32 - .set EC_WORD_SLEPT, (EC_GROUP_ACTIONS << 9) | 0x33 - .set EC_WORD_SLEEP, (EC_GROUP_ACTIONS << 9) | 0x34 - .set EC_WORD_RELEASE, (EC_GROUP_ACTIONS << 9) | 0x35 - .set EC_WORD_DRINKS, (EC_GROUP_ACTIONS << 9) | 0x36 - .set EC_WORD_RUNS, (EC_GROUP_ACTIONS << 9) | 0x37 - .set EC_WORD_RUN, (EC_GROUP_ACTIONS << 9) | 0x38 - .set EC_WORD_WORKS, (EC_GROUP_ACTIONS << 9) | 0x39 - .set EC_WORD_WORKING, (EC_GROUP_ACTIONS << 9) | 0x3a - .set EC_WORD_TALKING, (EC_GROUP_ACTIONS << 9) | 0x3b - .set EC_WORD_TALK, (EC_GROUP_ACTIONS << 9) | 0x3c - .set EC_WORD_SINK, (EC_GROUP_ACTIONS << 9) | 0x3d - .set EC_WORD_SMACK, (EC_GROUP_ACTIONS << 9) | 0x3e - .set EC_WORD_PRETEND, (EC_GROUP_ACTIONS << 9) | 0x3f - .set EC_WORD_PRAISE, (EC_GROUP_ACTIONS << 9) | 0x40 - .set EC_WORD_OVERDO, (EC_GROUP_ACTIONS << 9) | 0x41 - .set EC_WORD_SHOW, (EC_GROUP_ACTIONS << 9) | 0x42 - .set EC_WORD_LOOKS, (EC_GROUP_ACTIONS << 9) | 0x43 - .set EC_WORD_SEES, (EC_GROUP_ACTIONS << 9) | 0x44 - .set EC_WORD_SEEK, (EC_GROUP_ACTIONS << 9) | 0x45 - .set EC_WORD_OWN, (EC_GROUP_ACTIONS << 9) | 0x46 - .set EC_WORD_TAKE, (EC_GROUP_ACTIONS << 9) | 0x47 - .set EC_WORD_ALLOW, (EC_GROUP_ACTIONS << 9) | 0x48 - .set EC_WORD_FORGET, (EC_GROUP_ACTIONS << 9) | 0x49 - .set EC_WORD_FORGETS, (EC_GROUP_ACTIONS << 9) | 0x4a - .set EC_WORD_APPEARS, (EC_GROUP_ACTIONS << 9) | 0x4b - .set EC_WORD_FAINT, (EC_GROUP_ACTIONS << 9) | 0x4c - .set EC_WORD_FAINTED, (EC_GROUP_ACTIONS << 9) | 0x4d - -@ Lifestyle - .set EC_WORD_CHORES, (EC_GROUP_LIFESTYLE << 9) | 0x0 - .set EC_WORD_HOME, (EC_GROUP_LIFESTYLE << 9) | 0x1 - .set EC_WORD_MONEY, (EC_GROUP_LIFESTYLE << 9) | 0x2 - .set EC_WORD_ALLOWANCE, (EC_GROUP_LIFESTYLE << 9) | 0x3 - .set EC_WORD_BATH, (EC_GROUP_LIFESTYLE << 9) | 0x4 - .set EC_WORD_CONVERSATION, (EC_GROUP_LIFESTYLE << 9) | 0x5 - .set EC_WORD_SCHOOL, (EC_GROUP_LIFESTYLE << 9) | 0x6 - .set EC_WORD_COMMEMORATE, (EC_GROUP_LIFESTYLE << 9) | 0x7 - .set EC_WORD_HABIT, (EC_GROUP_LIFESTYLE << 9) | 0x8 - .set EC_WORD_GROUP, (EC_GROUP_LIFESTYLE << 9) | 0x9 - .set EC_WORD_WORD, (EC_GROUP_LIFESTYLE << 9) | 0xa - .set EC_WORD_STORE, (EC_GROUP_LIFESTYLE << 9) | 0xb - .set EC_WORD_SERVICE, (EC_GROUP_LIFESTYLE << 9) | 0xc - .set EC_WORD_WORK, (EC_GROUP_LIFESTYLE << 9) | 0xd - .set EC_WORD_SYSTEM, (EC_GROUP_LIFESTYLE << 9) | 0xe - .set EC_WORD_TRAIN, (EC_GROUP_LIFESTYLE << 9) | 0xf - .set EC_WORD_CLASS, (EC_GROUP_LIFESTYLE << 9) | 0x10 - .set EC_WORD_LESSONS, (EC_GROUP_LIFESTYLE << 9) | 0x11 - .set EC_WORD_INFORMATION, (EC_GROUP_LIFESTYLE << 9) | 0x12 - .set EC_WORD_LIVING, (EC_GROUP_LIFESTYLE << 9) | 0x13 - .set EC_WORD_TEACHER, (EC_GROUP_LIFESTYLE << 9) | 0x14 - .set EC_WORD_TOURNAMENT, (EC_GROUP_LIFESTYLE << 9) | 0x15 - .set EC_WORD_LETTER, (EC_GROUP_LIFESTYLE << 9) | 0x16 - .set EC_WORD_EVENT, (EC_GROUP_LIFESTYLE << 9) | 0x17 - .set EC_WORD_DIGITAL, (EC_GROUP_LIFESTYLE << 9) | 0x18 - .set EC_WORD_TEST, (EC_GROUP_LIFESTYLE << 9) | 0x19 - .set EC_WORD_DEPT_STORE, (EC_GROUP_LIFESTYLE << 9) | 0x1a - .set EC_WORD_TELEVISION, (EC_GROUP_LIFESTYLE << 9) | 0x1b - .set EC_WORD_PHONE, (EC_GROUP_LIFESTYLE << 9) | 0x1c - .set EC_WORD_ITEM, (EC_GROUP_LIFESTYLE << 9) | 0x1d - .set EC_WORD_NAME, (EC_GROUP_LIFESTYLE << 9) | 0x1e - .set EC_WORD_NEWS, (EC_GROUP_LIFESTYLE << 9) | 0x1f - .set EC_WORD_POPULAR, (EC_GROUP_LIFESTYLE << 9) | 0x20 - .set EC_WORD_PARTY, (EC_GROUP_LIFESTYLE << 9) | 0x21 - .set EC_WORD_STUDY, (EC_GROUP_LIFESTYLE << 9) | 0x22 - .set EC_WORD_MACHINE, (EC_GROUP_LIFESTYLE << 9) | 0x23 - .set EC_WORD_MAIL, (EC_GROUP_LIFESTYLE << 9) | 0x24 - .set EC_WORD_MESSAGE, (EC_GROUP_LIFESTYLE << 9) | 0x25 - .set EC_WORD_PROMISE, (EC_GROUP_LIFESTYLE << 9) | 0x26 - .set EC_WORD_DREAM, (EC_GROUP_LIFESTYLE << 9) | 0x27 - .set EC_WORD_KINDERGARTEN, (EC_GROUP_LIFESTYLE << 9) | 0x28 - .set EC_WORD_LIFE, (EC_GROUP_LIFESTYLE << 9) | 0x29 - .set EC_WORD_RADIO, (EC_GROUP_LIFESTYLE << 9) | 0x2a - .set EC_WORD_RENTAL, (EC_GROUP_LIFESTYLE << 9) | 0x2b - .set EC_WORD_WORLD, (EC_GROUP_LIFESTYLE << 9) | 0x2c - -@ Hobbies - .set EC_WORD_IDOL, (EC_GROUP_HOBBIES << 9) | 0x0 - .set EC_WORD_ANIME, (EC_GROUP_HOBBIES << 9) | 0x1 - .set EC_WORD_SONG, (EC_GROUP_HOBBIES << 9) | 0x2 - .set EC_WORD_MOVIE, (EC_GROUP_HOBBIES << 9) | 0x3 - .set EC_WORD_SWEETS, (EC_GROUP_HOBBIES << 9) | 0x4 - .set EC_WORD_CHAT, (EC_GROUP_HOBBIES << 9) | 0x5 - .set EC_WORD_CHILD_S_PLAY, (EC_GROUP_HOBBIES << 9) | 0x6 - .set EC_WORD_TOYS, (EC_GROUP_HOBBIES << 9) | 0x7 - .set EC_WORD_MUSIC, (EC_GROUP_HOBBIES << 9) | 0x8 - .set EC_WORD_CARDS, (EC_GROUP_HOBBIES << 9) | 0x9 - .set EC_WORD_SHOPPING, (EC_GROUP_HOBBIES << 9) | 0xa - .set EC_WORD_CAMERA, (EC_GROUP_HOBBIES << 9) | 0xb - .set EC_WORD_VIEWING, (EC_GROUP_HOBBIES << 9) | 0xc - .set EC_WORD_SPECTATOR, (EC_GROUP_HOBBIES << 9) | 0xd - .set EC_WORD_GOURMET, (EC_GROUP_HOBBIES << 9) | 0xe - .set EC_WORD_GAME, (EC_GROUP_HOBBIES << 9) | 0xf - .set EC_WORD_RPG, (EC_GROUP_HOBBIES << 9) | 0x10 - .set EC_WORD_COLLECTION, (EC_GROUP_HOBBIES << 9) | 0x11 - .set EC_WORD_COMPLETE, (EC_GROUP_HOBBIES << 9) | 0x12 - .set EC_WORD_MAGAZINE, (EC_GROUP_HOBBIES << 9) | 0x13 - .set EC_WORD_WALK, (EC_GROUP_HOBBIES << 9) | 0x14 - .set EC_WORD_BIKE, (EC_GROUP_HOBBIES << 9) | 0x15 - .set EC_WORD_HOBBY, (EC_GROUP_HOBBIES << 9) | 0x16 - .set EC_WORD_SPORTS, (EC_GROUP_HOBBIES << 9) | 0x17 - .set EC_WORD_SOFTWARE, (EC_GROUP_HOBBIES << 9) | 0x18 - .set EC_WORD_SONGS, (EC_GROUP_HOBBIES << 9) | 0x19 - .set EC_WORD_DIET, (EC_GROUP_HOBBIES << 9) | 0x1a - .set EC_WORD_TREASURE, (EC_GROUP_HOBBIES << 9) | 0x1b - .set EC_WORD_TRAVEL, (EC_GROUP_HOBBIES << 9) | 0x1c - .set EC_WORD_DANCE, (EC_GROUP_HOBBIES << 9) | 0x1d - .set EC_WORD_CHANNEL, (EC_GROUP_HOBBIES << 9) | 0x1e - .set EC_WORD_MAKING, (EC_GROUP_HOBBIES << 9) | 0x1f - .set EC_WORD_FISHING, (EC_GROUP_HOBBIES << 9) | 0x20 - .set EC_WORD_DATE, (EC_GROUP_HOBBIES << 9) | 0x21 - .set EC_WORD_DESIGN, (EC_GROUP_HOBBIES << 9) | 0x22 - .set EC_WORD_LOCOMOTIVE, (EC_GROUP_HOBBIES << 9) | 0x23 - .set EC_WORD_PLUSH_DOLL, (EC_GROUP_HOBBIES << 9) | 0x24 - .set EC_WORD_PC, (EC_GROUP_HOBBIES << 9) | 0x25 - .set EC_WORD_FLOWERS, (EC_GROUP_HOBBIES << 9) | 0x26 - .set EC_WORD_HERO, (EC_GROUP_HOBBIES << 9) | 0x27 - .set EC_WORD_NAP, (EC_GROUP_HOBBIES << 9) | 0x28 - .set EC_WORD_HEROINE, (EC_GROUP_HOBBIES << 9) | 0x29 - .set EC_WORD_FASHION, (EC_GROUP_HOBBIES << 9) | 0x2a - .set EC_WORD_ADVENTURE, (EC_GROUP_HOBBIES << 9) | 0x2b - .set EC_WORD_BOARD, (EC_GROUP_HOBBIES << 9) | 0x2c - .set EC_WORD_BALL, (EC_GROUP_HOBBIES << 9) | 0x2d - .set EC_WORD_BOOK, (EC_GROUP_HOBBIES << 9) | 0x2e - .set EC_WORD_FESTIVAL, (EC_GROUP_HOBBIES << 9) | 0x2f - .set EC_WORD_COMICS, (EC_GROUP_HOBBIES << 9) | 0x30 - .set EC_WORD_HOLIDAY, (EC_GROUP_HOBBIES << 9) | 0x31 - .set EC_WORD_PLANS, (EC_GROUP_HOBBIES << 9) | 0x32 - .set EC_WORD_TRENDY, (EC_GROUP_HOBBIES << 9) | 0x33 - .set EC_WORD_VACATION, (EC_GROUP_HOBBIES << 9) | 0x34 - .set EC_WORD_LOOK, (EC_GROUP_HOBBIES << 9) | 0x35 - -@ Time - .set EC_WORD_FALL, (EC_GROUP_TIME << 9) | 0x0 - .set EC_WORD_MORNING, (EC_GROUP_TIME << 9) | 0x1 - .set EC_WORD_TOMORROW, (EC_GROUP_TIME << 9) | 0x2 - .set EC_WORD_LAST, (EC_GROUP_TIME << 9) | 0x3 - .set EC_WORD_DAY, (EC_GROUP_TIME << 9) | 0x4 - .set EC_WORD_SOMETIME, (EC_GROUP_TIME << 9) | 0x5 - .set EC_WORD_ALWAYS, (EC_GROUP_TIME << 9) | 0x6 - .set EC_WORD_CURRENT, (EC_GROUP_TIME << 9) | 0x7 - .set EC_WORD_FOREVER, (EC_GROUP_TIME << 9) | 0x8 - .set EC_WORD_DAYS, (EC_GROUP_TIME << 9) | 0x9 - .set EC_WORD_END, (EC_GROUP_TIME << 9) | 0xa - .set EC_WORD_TUESDAY, (EC_GROUP_TIME << 9) | 0xb - .set EC_WORD_YESTERDAY, (EC_GROUP_TIME << 9) | 0xc - .set EC_WORD_TODAY, (EC_GROUP_TIME << 9) | 0xd - .set EC_WORD_FRIDAY, (EC_GROUP_TIME << 9) | 0xe - .set EC_WORD_MONDAY, (EC_GROUP_TIME << 9) | 0xf - .set EC_WORD_LATER, (EC_GROUP_TIME << 9) | 0x10 - .set EC_WORD_EARLIER, (EC_GROUP_TIME << 9) | 0x11 - .set EC_WORD_ANOTHER, (EC_GROUP_TIME << 9) | 0x12 - .set EC_WORD_TIME, (EC_GROUP_TIME << 9) | 0x13 - .set EC_WORD_FINISH, (EC_GROUP_TIME << 9) | 0x14 - .set EC_WORD_WEDNESDAY, (EC_GROUP_TIME << 9) | 0x15 - .set EC_WORD_SOON, (EC_GROUP_TIME << 9) | 0x16 - .set EC_WORD_START, (EC_GROUP_TIME << 9) | 0x17 - .set EC_WORD_MONTH, (EC_GROUP_TIME << 9) | 0x18 - .set EC_WORD_STOP, (EC_GROUP_TIME << 9) | 0x19 - .set EC_WORD_NOW, (EC_GROUP_TIME << 9) | 0x1a - .set EC_WORD_FINAL, (EC_GROUP_TIME << 9) | 0x1b - .set EC_WORD_NEXT, (EC_GROUP_TIME << 9) | 0x1c - .set EC_WORD_AGE, (EC_GROUP_TIME << 9) | 0x1d - .set EC_WORD_SATURDAY, (EC_GROUP_TIME << 9) | 0x1e - .set EC_WORD_SUMMER, (EC_GROUP_TIME << 9) | 0x1f - .set EC_WORD_SUNDAY, (EC_GROUP_TIME << 9) | 0x20 - .set EC_WORD_BEGINNING, (EC_GROUP_TIME << 9) | 0x21 - .set EC_WORD_SPRING, (EC_GROUP_TIME << 9) | 0x22 - .set EC_WORD_DAYTIME, (EC_GROUP_TIME << 9) | 0x23 - .set EC_WORD_WINTER, (EC_GROUP_TIME << 9) | 0x24 - .set EC_WORD_DAILY, (EC_GROUP_TIME << 9) | 0x25 - .set EC_WORD_OLDEN, (EC_GROUP_TIME << 9) | 0x26 - .set EC_WORD_ALMOST, (EC_GROUP_TIME << 9) | 0x27 - .set EC_WORD_NEARLY, (EC_GROUP_TIME << 9) | 0x28 - .set EC_WORD_THURSDAY, (EC_GROUP_TIME << 9) | 0x29 - .set EC_WORD_NIGHTTIME, (EC_GROUP_TIME << 9) | 0x2a - .set EC_WORD_NIGHT, (EC_GROUP_TIME << 9) | 0x2b - .set EC_WORD_WEEK, (EC_GROUP_TIME << 9) | 0x2c - -@ Misc. - .set EC_WORD_HIGHS, (EC_GROUP_MISC << 9) | 0x0 - .set EC_WORD_LOWS, (EC_GROUP_MISC << 9) | 0x1 - .set EC_WORD_UM, (EC_GROUP_MISC << 9) | 0x2 - .set EC_WORD_REAR, (EC_GROUP_MISC << 9) | 0x3 - .set EC_WORD_THINGS, (EC_GROUP_MISC << 9) | 0x4 - .set EC_WORD_THING, (EC_GROUP_MISC << 9) | 0x5 - .set EC_WORD_BELOW, (EC_GROUP_MISC << 9) | 0x6 - .set EC_WORD_ABOVE, (EC_GROUP_MISC << 9) | 0x7 - .set EC_WORD_BACK, (EC_GROUP_MISC << 9) | 0x8 - .set EC_WORD_HIGH, (EC_GROUP_MISC << 9) | 0x9 - .set EC_WORD_HERE, (EC_GROUP_MISC << 9) | 0xa - .set EC_WORD_INSIDE, (EC_GROUP_MISC << 9) | 0xb - .set EC_WORD_OUTSIDE, (EC_GROUP_MISC << 9) | 0xc - .set EC_WORD_BESIDE, (EC_GROUP_MISC << 9) | 0xd - .set EC_WORD_THIS_IS_IT_EXCL, (EC_GROUP_MISC << 9) | 0xe - .set EC_WORD_THIS, (EC_GROUP_MISC << 9) | 0xf - .set EC_WORD_EVERY, (EC_GROUP_MISC << 9) | 0x10 - .set EC_WORD_THESE, (EC_GROUP_MISC << 9) | 0x11 - .set EC_WORD_THESE_WERE, (EC_GROUP_MISC << 9) | 0x12 - .set EC_WORD_DOWN, (EC_GROUP_MISC << 9) | 0x13 - .set EC_WORD_THAT, (EC_GROUP_MISC << 9) | 0x14 - .set EC_WORD_THOSE_ARE, (EC_GROUP_MISC << 9) | 0x15 - .set EC_WORD_THOSE_WERE, (EC_GROUP_MISC << 9) | 0x16 - .set EC_WORD_THAT_S_IT_EXCL, (EC_GROUP_MISC << 9) | 0x17 - .set EC_WORD_AM, (EC_GROUP_MISC << 9) | 0x18 - .set EC_WORD_THAT_WAS, (EC_GROUP_MISC << 9) | 0x19 - .set EC_WORD_FRONT, (EC_GROUP_MISC << 9) | 0x1a - .set EC_WORD_UP, (EC_GROUP_MISC << 9) | 0x1b - .set EC_WORD_CHOICE, (EC_GROUP_MISC << 9) | 0x1c - .set EC_WORD_FAR, (EC_GROUP_MISC << 9) | 0x1d - .set EC_WORD_AWAY, (EC_GROUP_MISC << 9) | 0x1e - .set EC_WORD_NEAR, (EC_GROUP_MISC << 9) | 0x1f - .set EC_WORD_WHERE, (EC_GROUP_MISC << 9) | 0x20 - .set EC_WORD_WHEN, (EC_GROUP_MISC << 9) | 0x21 - .set EC_WORD_WHAT, (EC_GROUP_MISC << 9) | 0x22 - .set EC_WORD_DEEP, (EC_GROUP_MISC << 9) | 0x23 - .set EC_WORD_SHALLOW, (EC_GROUP_MISC << 9) | 0x24 - .set EC_WORD_WHY, (EC_GROUP_MISC << 9) | 0x25 - .set EC_WORD_CONFUSED, (EC_GROUP_MISC << 9) | 0x26 - .set EC_WORD_OPPOSITE, (EC_GROUP_MISC << 9) | 0x27 - .set EC_WORD_LEFT, (EC_GROUP_MISC << 9) | 0x28 - .set EC_WORD_RIGHT, (EC_GROUP_MISC << 9) | 0x29 - -@ Adjectives - .set EC_WORD_WANDERING, (EC_GROUP_ADJECTIVES << 9) | 0x0 - .set EC_WORD_RICKETY, (EC_GROUP_ADJECTIVES << 9) | 0x1 - .set EC_WORD_ROCK_SOLID, (EC_GROUP_ADJECTIVES << 9) | 0x2 - .set EC_WORD_HUNGRY, (EC_GROUP_ADJECTIVES << 9) | 0x3 - .set EC_WORD_TIGHT, (EC_GROUP_ADJECTIVES << 9) | 0x4 - .set EC_WORD_TICKLISH, (EC_GROUP_ADJECTIVES << 9) | 0x5 - .set EC_WORD_TWIRLING, (EC_GROUP_ADJECTIVES << 9) | 0x6 - .set EC_WORD_SPIRALING, (EC_GROUP_ADJECTIVES << 9) | 0x7 - .set EC_WORD_THIRSTY, (EC_GROUP_ADJECTIVES << 9) | 0x8 - .set EC_WORD_LOLLING, (EC_GROUP_ADJECTIVES << 9) | 0x9 - .set EC_WORD_SILKY, (EC_GROUP_ADJECTIVES << 9) | 0xa - .set EC_WORD_SADLY, (EC_GROUP_ADJECTIVES << 9) | 0xb - .set EC_WORD_HOPELESS, (EC_GROUP_ADJECTIVES << 9) | 0xc - .set EC_WORD_USELESS, (EC_GROUP_ADJECTIVES << 9) | 0xd - .set EC_WORD_DROOLING, (EC_GROUP_ADJECTIVES << 9) | 0xe - .set EC_WORD_EXCITING, (EC_GROUP_ADJECTIVES << 9) | 0xf - .set EC_WORD_THICK, (EC_GROUP_ADJECTIVES << 9) | 0x10 - .set EC_WORD_SMOOTH, (EC_GROUP_ADJECTIVES << 9) | 0x11 - .set EC_WORD_SLIMY, (EC_GROUP_ADJECTIVES << 9) | 0x12 - .set EC_WORD_THIN, (EC_GROUP_ADJECTIVES << 9) | 0x13 - .set EC_WORD_BREAK, (EC_GROUP_ADJECTIVES << 9) | 0x14 - .set EC_WORD_VORACIOUS, (EC_GROUP_ADJECTIVES << 9) | 0x15 - .set EC_WORD_SCATTER, (EC_GROUP_ADJECTIVES << 9) | 0x16 - .set EC_WORD_AWESOME, (EC_GROUP_ADJECTIVES << 9) | 0x17 - .set EC_WORD_WIMPY, (EC_GROUP_ADJECTIVES << 9) | 0x18 - .set EC_WORD_WOBBLY, (EC_GROUP_ADJECTIVES << 9) | 0x19 - .set EC_WORD_SHAKY, (EC_GROUP_ADJECTIVES << 9) | 0x1a - .set EC_WORD_RIPPED, (EC_GROUP_ADJECTIVES << 9) | 0x1b - .set EC_WORD_SHREDDED, (EC_GROUP_ADJECTIVES << 9) | 0x1c - .set EC_WORD_INCREASING, (EC_GROUP_ADJECTIVES << 9) | 0x1d - .set EC_WORD_YET, (EC_GROUP_ADJECTIVES << 9) | 0x1e - .set EC_WORD_DESTROYED, (EC_GROUP_ADJECTIVES << 9) | 0x1f - .set EC_WORD_FIERY, (EC_GROUP_ADJECTIVES << 9) | 0x20 - .set EC_WORD_LOVEY_DOVEY, (EC_GROUP_ADJECTIVES << 9) | 0x21 - .set EC_WORD_HAPPILY, (EC_GROUP_ADJECTIVES << 9) | 0x22 - .set EC_WORD_ANTICIPATION, (EC_GROUP_ADJECTIVES << 9) | 0x23 - -@ Events - .set EC_WORD_APPEAL, (EC_GROUP_EVENTS << 9) | 0x0 - .set EC_WORD_EVENTS, (EC_GROUP_EVENTS << 9) | 0x1 - .set EC_WORD_STAY_AT_HOME, (EC_GROUP_EVENTS << 9) | 0x2 - .set EC_WORD_BERRY, (EC_GROUP_EVENTS << 9) | 0x3 - .set EC_WORD_CONTEST, (EC_GROUP_EVENTS << 9) | 0x4 - .set EC_WORD_MC, (EC_GROUP_EVENTS << 9) | 0x5 - .set EC_WORD_JUDGE, (EC_GROUP_EVENTS << 9) | 0x6 - .set EC_WORD_SUPER, (EC_GROUP_EVENTS << 9) | 0x7 - .set EC_WORD_STAGE, (EC_GROUP_EVENTS << 9) | 0x8 - .set EC_WORD_HALL_OF_FAME, (EC_GROUP_EVENTS << 9) | 0x9 - .set EC_WORD_EVOLUTION, (EC_GROUP_EVENTS << 9) | 0xa - .set EC_WORD_HYPER, (EC_GROUP_EVENTS << 9) | 0xb - .set EC_WORD_BATTLE_TOWER, (EC_GROUP_EVENTS << 9) | 0xc - .set EC_WORD_LEADERS, (EC_GROUP_EVENTS << 9) | 0xd - .set EC_WORD_BATTLE_ROOM, (EC_GROUP_EVENTS << 9) | 0xe - .set EC_WORD_HIDDEN, (EC_GROUP_EVENTS << 9) | 0xf - .set EC_WORD_SECRET_BASE, (EC_GROUP_EVENTS << 9) | 0x10 - .set EC_WORD_BLEND, (EC_GROUP_EVENTS << 9) | 0x11 - .set EC_WORD_POKEBLOCK, (EC_GROUP_EVENTS << 9) | 0x12 - .set EC_WORD_MASTER, (EC_GROUP_EVENTS << 9) | 0x13 - .set EC_WORD_RANK, (EC_GROUP_EVENTS << 9) | 0x14 - .set EC_WORD_RIBBON, (EC_GROUP_EVENTS << 9) | 0x15 - .set EC_WORD_CRUSH, (EC_GROUP_EVENTS << 9) | 0x16 - .set EC_WORD_DIRECT, (EC_GROUP_EVENTS << 9) | 0x17 - .set EC_WORD_TOWER, (EC_GROUP_EVENTS << 9) | 0x18 - .set EC_WORD_UNION, (EC_GROUP_EVENTS << 9) | 0x19 - .set EC_WORD_ROOM, (EC_GROUP_EVENTS << 9) | 0x1a - .set EC_WORD_WIRELESS, (EC_GROUP_EVENTS << 9) | 0x1b - .set EC_WORD_FRONTIER, (EC_GROUP_EVENTS << 9) | 0x1c - -@ Trendy Saying - .set EC_WORD_KTHX_BYE, (EC_GROUP_TRENDY_SAYING << 9) | 0x0 - .set EC_WORD_YES_SIR_EXCL, (EC_GROUP_TRENDY_SAYING << 9) | 0x1 - .set EC_WORD_AVANT_GARDE, (EC_GROUP_TRENDY_SAYING << 9) | 0x2 - .set EC_WORD_COUPLE, (EC_GROUP_TRENDY_SAYING << 9) | 0x3 - .set EC_WORD_MUCH_OBLIGED, (EC_GROUP_TRENDY_SAYING << 9) | 0x4 - .set EC_WORD_YEEHAW_EXCL, (EC_GROUP_TRENDY_SAYING << 9) | 0x5 - .set EC_WORD_MEGA, (EC_GROUP_TRENDY_SAYING << 9) | 0x6 - .set EC_WORD_1_HIT_KO_EXCL, (EC_GROUP_TRENDY_SAYING << 9) | 0x7 - .set EC_WORD_DESTINY, (EC_GROUP_TRENDY_SAYING << 9) | 0x8 - .set EC_WORD_CANCEL, (EC_GROUP_TRENDY_SAYING << 9) | 0x9 - .set EC_WORD_NEW, (EC_GROUP_TRENDY_SAYING << 9) | 0xa - .set EC_WORD_FLATTEN, (EC_GROUP_TRENDY_SAYING << 9) | 0xb - .set EC_WORD_KIDDING, (EC_GROUP_TRENDY_SAYING << 9) | 0xc - .set EC_WORD_LOSER, (EC_GROUP_TRENDY_SAYING << 9) | 0xd - .set EC_WORD_LOSING, (EC_GROUP_TRENDY_SAYING << 9) | 0xe - .set EC_WORD_HAPPENING, (EC_GROUP_TRENDY_SAYING << 9) | 0xf - .set EC_WORD_HIP_AND, (EC_GROUP_TRENDY_SAYING << 9) | 0x10 - .set EC_WORD_SHAKE, (EC_GROUP_TRENDY_SAYING << 9) | 0x11 - .set EC_WORD_SHADY, (EC_GROUP_TRENDY_SAYING << 9) | 0x12 - .set EC_WORD_UPBEAT, (EC_GROUP_TRENDY_SAYING << 9) | 0x13 - .set EC_WORD_MODERN, (EC_GROUP_TRENDY_SAYING << 9) | 0x14 - .set EC_WORD_SMELL_YA, (EC_GROUP_TRENDY_SAYING << 9) | 0x15 - .set EC_WORD_BANG, (EC_GROUP_TRENDY_SAYING << 9) | 0x16 - .set EC_WORD_KNOCKOUT, (EC_GROUP_TRENDY_SAYING << 9) | 0x17 - .set EC_WORD_HASSLE, (EC_GROUP_TRENDY_SAYING << 9) | 0x18 - .set EC_WORD_WINNER, (EC_GROUP_TRENDY_SAYING << 9) | 0x19 - .set EC_WORD_FEVER, (EC_GROUP_TRENDY_SAYING << 9) | 0x1a - .set EC_WORD_WANNABE, (EC_GROUP_TRENDY_SAYING << 9) | 0x1b - .set EC_WORD_BABY, (EC_GROUP_TRENDY_SAYING << 9) | 0x1c - .set EC_WORD_HEART, (EC_GROUP_TRENDY_SAYING << 9) | 0x1d - .set EC_WORD_OLD, (EC_GROUP_TRENDY_SAYING << 9) | 0x1e - .set EC_WORD_YOUNG, (EC_GROUP_TRENDY_SAYING << 9) | 0x1f - .set EC_WORD_UGLY, (EC_GROUP_TRENDY_SAYING << 9) | 0x20 - diff --git a/constants/field_object_constants.inc b/constants/field_object_constants.inc deleted file mode 100644 index 50cdbd848..000000000 --- a/constants/field_object_constants.inc +++ /dev/null @@ -1,251 +0,0 @@ - .set FIELD_OBJ_GFX_BRENDAN_NORMAL, 0 - .set FIELD_OBJ_GFX_BRENDAN_MACH_BIKE, 1 - .set FIELD_OBJ_GFX_BRENDAN_SURFING, 2 - .set FIELD_OBJ_GFX_BRENDAN_FIELD_MOVE, 3 - .set FIELD_OBJ_GFX_QUINTY_PLUMP, 4 - .set FIELD_OBJ_GFX_LITTLE_BOY_1, 5 - .set FIELD_OBJ_GFX_LITTLE_GIRL_1, 6 - .set FIELD_OBJ_GFX_BOY_1, 7 - .set FIELD_OBJ_GFX_GIRL_1, 8 - .set FIELD_OBJ_GFX_BOY_2, 9 - .set FIELD_OBJ_GFX_GIRL_2, 10 - .set FIELD_OBJ_GFX_LITTLE_BOY_2, 11 - .set FIELD_OBJ_GFX_LITTLE_GIRL_2, 12 - .set FIELD_OBJ_GFX_BOY_3, 13 - .set FIELD_OBJ_GFX_GIRL_3, 14 - .set FIELD_OBJ_GFX_BOY_4, 15 - .set FIELD_OBJ_GFX_WOMAN_1, 16 - .set FIELD_OBJ_GFX_FAT_MAN, 17 - .set FIELD_OBJ_GFX_WOMAN_2, 18 - .set FIELD_OBJ_GFX_MAN_1, 19 - .set FIELD_OBJ_GFX_WOMAN_3, 20 - .set FIELD_OBJ_GFX_OLD_MAN_1, 21 - .set FIELD_OBJ_GFX_OLD_WOMAN_1, 22 - .set FIELD_OBJ_GFX_MAN_2, 23 - .set FIELD_OBJ_GFX_WOMAN_4, 24 - .set FIELD_OBJ_GFX_MAN_3, 25 - .set FIELD_OBJ_GFX_WOMAN_5, 26 - .set FIELD_OBJ_GFX_COOK, 27 - .set FIELD_OBJ_GFX_WOMAN_6, 28 - .set FIELD_OBJ_GFX_OLD_MAN_2, 29 - .set FIELD_OBJ_GFX_OLD_WOMAN_2, 30 - .set FIELD_OBJ_GFX_CAMPER, 31 - .set FIELD_OBJ_GFX_PICNICKER, 32 - .set FIELD_OBJ_GFX_MAN_4, 33 - .set FIELD_OBJ_GFX_WOMAN_7, 34 - .set FIELD_OBJ_GFX_YOUNGSTER, 35 - .set FIELD_OBJ_GFX_BUG_CATCHER, 36 - .set FIELD_OBJ_GFX_PSYCHIC_M, 37 - .set FIELD_OBJ_GFX_SCHOOL_KID_M, 38 - .set FIELD_OBJ_GFX_MANIAC, 39 - .set FIELD_OBJ_GFX_HEX_MANIAC, 40 - .set FIELD_OBJ_GFX_RAYQUAZA_1, 41 - .set FIELD_OBJ_GFX_SWIMMER_M, 42 - .set FIELD_OBJ_GFX_SWIMMER_F, 43 - .set FIELD_OBJ_GFX_BLACK_BELT, 44 - .set FIELD_OBJ_GFX_BEAUTY, 45 - .set FIELD_OBJ_GFX_SCIENTIST_1, 46 - .set FIELD_OBJ_GFX_LASS, 47 - .set FIELD_OBJ_GFX_GENTLEMAN, 48 - .set FIELD_OBJ_GFX_SAILOR, 49 - .set FIELD_OBJ_GFX_FISHERMAN, 50 - .set FIELD_OBJ_GFX_RUNNING_TRIATHLETE_M, 51 - .set FIELD_OBJ_GFX_RUNNING_TRIATHLETE_F, 52 - .set FIELD_OBJ_GFX_TUBER_F, 53 - .set FIELD_OBJ_GFX_TUBER_M, 54 - .set FIELD_OBJ_GFX_HIKER, 55 - .set FIELD_OBJ_GFX_CYCLING_TRIATHLETE_M, 56 - .set FIELD_OBJ_GFX_CYCLING_TRIATHLETE_F, 57 - .set FIELD_OBJ_GFX_NURSE, 58 - .set FIELD_OBJ_GFX_ITEM_BALL, 59 - .set FIELD_OBJ_GFX_BERRY_TREE, 60 - .set FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES, 61 - .set FIELD_OBJ_GFX_BERRY_TREE_LATE_STAGES, 62 - .set FIELD_OBJ_GFX_BRENDAN_ACRO_BIKE, 63 - .set FIELD_OBJ_GFX_PROF_BIRCH, 64 - .set FIELD_OBJ_GFX_MAN_5, 65 - .set FIELD_OBJ_GFX_MAN_6, 66 - .set FIELD_OBJ_GFX_REPORTER_M, 67 - .set FIELD_OBJ_GFX_REPORTER_F, 68 - .set FIELD_OBJ_GFX_MAUVILLE_OLD_MAN, 69 - .set FIELD_OBJ_GFX_ANABEL, 70 - .set FIELD_OBJ_GFX_TUCKER, 71 - .set FIELD_OBJ_GFX_GRETA, 72 - .set FIELD_OBJ_GFX_SPENSER, 73 - .set FIELD_OBJ_GFX_NOLAND, 74 - .set FIELD_OBJ_GFX_LUCY, 75 - .set FIELD_OBJ_GFX_UNUSED_NATU_DOLL, 76 - .set FIELD_OBJ_GFX_UNUSED_MAGNEMITE_DOLL, 77 - .set FIELD_OBJ_GFX_UNUSED_SQUIRTLE_DOLL, 78 - .set FIELD_OBJ_GFX_UNUSED_WOOPER_DOLL, 79 - .set FIELD_OBJ_GFX_UNUSED_PIKACHU_DOLL, 80 - .set FIELD_OBJ_GFX_UNUSED_PORYGON2_DOLL, 81 - .set FIELD_OBJ_GFX_CUTTABLE_TREE, 82 - .set FIELD_OBJ_GFX_MART_EMPLOYEE, 83 - .set FIELD_OBJ_GFX_ROOFTOP_SALE_WOMAN, 84 - .set FIELD_OBJ_GFX_TEALA, 85 - .set FIELD_OBJ_GFX_BREAKABLE_ROCK, 86 - .set FIELD_OBJ_GFX_PUSHABLE_BOULDER, 87 - .set FIELD_OBJ_GFX_MR_BRINEYS_BOAT, 88 - .set FIELD_OBJ_GFX_MAY_NORMAL, 89 - .set FIELD_OBJ_GFX_MAY_MACH_BIKE, 90 - .set FIELD_OBJ_GFX_MAY_ACRO_BIKE, 91 - .set FIELD_OBJ_GFX_MAY_SURFING, 92 - .set FIELD_OBJ_GFX_MAY_FIELD_MOVE, 93 - .set FIELD_OBJ_GFX_TRUCK, 94 - .set FIELD_OBJ_GFX_VIGOROTH_CARRYING_BOX, 95 - .set FIELD_OBJ_GFX_VIGOROTH_FACING_AWAY, 96 - .set FIELD_OBJ_GFX_BIRCHS_BAG, 97 - .set FIELD_OBJ_GFX_ENEMY_ZIGZAGOON, 98 - .set FIELD_OBJ_GFX_ARTIST, 99 - .set FIELD_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 100 - .set FIELD_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE, 101 - .set FIELD_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE, 102 - .set FIELD_OBJ_GFX_RIVAL_BRENDAN_SURFING, 103 - .set FIELD_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE, 104 - .set FIELD_OBJ_GFX_RIVAL_MAY_NORMAL, 105 - .set FIELD_OBJ_GFX_RIVAL_MAY_MACH_BIKE, 106 - .set FIELD_OBJ_GFX_RIVAL_MAY_ACRO_BIKE, 107 - .set FIELD_OBJ_GFX_RIVAL_MAY_SURFING, 108 - .set FIELD_OBJ_GFX_RIVAL_MAY_FIELD_MOVE, 109 - .set FIELD_OBJ_GFX_CAMERAMAN, 110 - .set FIELD_OBJ_GFX_BRENDAN_UNDERWATER, 111 - .set FIELD_OBJ_GFX_MAY_UNDERWATER, 112 - .set FIELD_OBJ_GFX_MOVING_BOX, 113 - .set FIELD_OBJ_GFX_CABLE_CAR, 114 - .set FIELD_OBJ_GFX_SCIENTIST_2, 115 - .set FIELD_OBJ_GFX_MAN_7, 116 - .set FIELD_OBJ_GFX_AQUA_MEMBER_M, 117 - .set FIELD_OBJ_GFX_AQUA_MEMBER_F, 118 - .set FIELD_OBJ_GFX_MAGMA_MEMBER_M, 119 - .set FIELD_OBJ_GFX_MAGMA_MEMBER_F, 120 - .set FIELD_OBJ_GFX_SIDNEY, 121 - .set FIELD_OBJ_GFX_PHOEBE, 122 - .set FIELD_OBJ_GFX_GLACIA, 123 - .set FIELD_OBJ_GFX_DRAKE, 124 - .set FIELD_OBJ_GFX_ROXANNE, 125 - .set FIELD_OBJ_GFX_BRAWLY, 126 - .set FIELD_OBJ_GFX_WATTSON, 127 - .set FIELD_OBJ_GFX_FLANNERY, 128 - .set FIELD_OBJ_GFX_NORMAN, 129 - .set FIELD_OBJ_GFX_WINONA, 130 - .set FIELD_OBJ_GFX_LIZA, 131 - .set FIELD_OBJ_GFX_TATE, 132 - .set FIELD_OBJ_GFX_WALLACE, 133 - .set FIELD_OBJ_GFX_STEVEN, 134 - .set FIELD_OBJ_GFX_WALLY, 135 - .set FIELD_OBJ_GFX_RUBY_SAPPHIRE_LITTLE_BOY, 136 - .set FIELD_OBJ_GFX_BRENDAN_FISHING, 137 - .set FIELD_OBJ_GFX_MAY_FISHING, 138 - .set FIELD_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN, 139 - .set FIELD_OBJ_GFX_SS_TIDAL, 140 - .set FIELD_OBJ_GFX_SUBMARINE_SHADOW, 141 - .set FIELD_OBJ_GFX_PICHU_DOLL, 142 - .set FIELD_OBJ_GFX_PIKACHU_DOLL, 143 - .set FIELD_OBJ_GFX_MARILL_DOLL, 144 - .set FIELD_OBJ_GFX_TOGEPI_DOLL, 145 - .set FIELD_OBJ_GFX_CYNDAQUIL_DOLL, 146 - .set FIELD_OBJ_GFX_CHIKORITA_DOLL, 147 - .set FIELD_OBJ_GFX_TOTODILE_DOLL, 148 - .set FIELD_OBJ_GFX_JIGGLYPUFF_DOLL, 149 - .set FIELD_OBJ_GFX_MEOWTH_DOLL, 150 - .set FIELD_OBJ_GFX_CLEFAIRY_DOLL, 151 - .set FIELD_OBJ_GFX_DITTO_DOLL, 152 - .set FIELD_OBJ_GFX_SMOOCHUM_DOLL, 153 - .set FIELD_OBJ_GFX_TREECKO_DOLL, 154 - .set FIELD_OBJ_GFX_TORCHIC_DOLL, 155 - .set FIELD_OBJ_GFX_MUDKIP_DOLL, 156 - .set FIELD_OBJ_GFX_DUSKULL_DOLL, 157 - .set FIELD_OBJ_GFX_WYNAUT_DOLL, 158 - .set FIELD_OBJ_GFX_BALTOY_DOLL, 159 - .set FIELD_OBJ_GFX_KECLEON_DOLL, 160 - .set FIELD_OBJ_GFX_AZURILL_DOLL, 161 - .set FIELD_OBJ_GFX_SKITTY_DOLL, 162 - .set FIELD_OBJ_GFX_SWABLU_DOLL, 163 - .set FIELD_OBJ_GFX_GULPIN_DOLL, 164 - .set FIELD_OBJ_GFX_LOTAD_DOLL, 165 - .set FIELD_OBJ_GFX_SEEDOT_DOLL, 166 - .set FIELD_OBJ_GFX_PIKA_CUSHION, 167 - .set FIELD_OBJ_GFX_ROUND_CUSHION, 168 - .set FIELD_OBJ_GFX_KISS_CUSHION, 169 - .set FIELD_OBJ_GFX_ZIGZAG_CUSHION, 170 - .set FIELD_OBJ_GFX_SPIN_CUSHION, 171 - .set FIELD_OBJ_GFX_DIAMOND_CUSHION, 172 - .set FIELD_OBJ_GFX_BALL_CUSHION, 173 - .set FIELD_OBJ_GFX_GRASS_CUSHION, 174 - .set FIELD_OBJ_GFX_FIRE_CUSHION, 175 - .set FIELD_OBJ_GFX_WATER_CUSHION, 176 - .set FIELD_OBJ_GFX_BIG_SNORLAX_DOLL, 177 - .set FIELD_OBJ_GFX_BIG_RHYDON_DOLL, 178 - .set FIELD_OBJ_GFX_BIG_LAPRAS_DOLL, 179 - .set FIELD_OBJ_GFX_BIG_VENUSAUR_DOLL, 180 - .set FIELD_OBJ_GFX_BIG_CHARIZARD_DOLL, 181 - .set FIELD_OBJ_GFX_BIG_BLASTOISE_DOLL, 182 - .set FIELD_OBJ_GFX_BIG_WAILMER_DOLL, 183 - .set FIELD_OBJ_GFX_BIG_REGIROCK_DOLL, 184 - .set FIELD_OBJ_GFX_BIG_REGICE_DOLL, 185 - .set FIELD_OBJ_GFX_BIG_REGISTEEL_DOLL, 186 - .set FIELD_OBJ_GFX_LATIAS, 187 - .set FIELD_OBJ_GFX_LATIOS, 188 - .set FIELD_OBJ_GFX_BOY_5, 189 - .set FIELD_OBJ_GFX_CONTEST_OLD_MAN, 190 - .set FIELD_OBJ_GFX_BRENDAN_WATERING, 191 - .set FIELD_OBJ_GFX_MAY_WATERING, 192 - .set FIELD_OBJ_GFX_BRENDAN_UNKNOWN, 193 - .set FIELD_OBJ_GFX_MAY_UNKNOWN, 194 - .set FIELD_OBJ_GFX_ARCHIE, 195 - .set FIELD_OBJ_GFX_MAXIE, 196 - .set FIELD_OBJ_GFX_KYOGRE_1, 197 - .set FIELD_OBJ_GFX_GROUDON_1, 198 - .set FIELD_OBJ_GFX_FOSSIL, 199 - .set FIELD_OBJ_GFX_REGIROCK, 200 - .set FIELD_OBJ_GFX_REGICE, 201 - .set FIELD_OBJ_GFX_REGISTEEL, 202 - .set FIELD_OBJ_GFX_SKITTY, 203 - .set FIELD_OBJ_GFX_KECLEON_1, 204 - .set FIELD_OBJ_GFX_KYOGRE_2, 205 - .set FIELD_OBJ_GFX_GROUDON_2, 206 - .set FIELD_OBJ_GFX_RAYQUAZA_2, 207 - .set FIELD_OBJ_GFX_ZIGZAGOON, 208 - .set FIELD_OBJ_GFX_PIKACHU, 209 - .set FIELD_OBJ_GFX_AZUMARILL, 210 - .set FIELD_OBJ_GFX_WINGULL, 211 - .set FIELD_OBJ_GFX_KECLEON_2, 212 - .set FIELD_OBJ_GFX_TUBER_M_SWIMMING, 213 - .set FIELD_OBJ_GFX_AZURILL, 214 - .set FIELD_OBJ_GFX_MOM, 215 - .set FIELD_OBJ_GFX_LINK_BRENDAN, 216 - .set FIELD_OBJ_GFX_LINK_MAY, 217 - .set FIELD_OBJ_GFX_JUAN, 218 - .set FIELD_OBJ_GFX_SCOTT, 219 - .set FIELD_OBJ_GFX_POOCHYENA, 220 - .set FIELD_OBJ_GFX_KYOGRE_3, 221 - .set FIELD_OBJ_GFX_GROUDON_3, 222 - .set FIELD_OBJ_GFX_MYSTERY_EVENT_DELIVERYMAN, 223 - .set FIELD_OBJ_GFX_STATUE, 224 - .set FIELD_OBJ_GFX_KIRLIA, 225 - .set FIELD_OBJ_GFX_DUSCLOPS, 226 - .set FIELD_OBJ_GFX_UNION_ROOM_ATTENDANT, 227 - .set FIELD_OBJ_GFX_SUDOWOODO, 228 - .set FIELD_OBJ_GFX_MEW, 229 - .set FIELD_OBJ_GFX_RED, 230 - .set FIELD_OBJ_GFX_LEAF, 231 - .set FIELD_OBJ_GFX_DEOXYS, 232 - .set FIELD_OBJ_GFX_BIRTH_ISLAND_STONE, 233 - .set FIELD_OBJ_GFX_BRANDON, 234 - .set FIELD_OBJ_GFX_RUBY_SAPPHIRE_BRENDAN, 235 - .set FIELD_OBJ_GFX_RUBY_SAPPHIRE_MAY, 236 - .set FIELD_OBJ_GFX_LUGIA, 237 - .set FIELD_OBJ_GFX_HO_OH, 238 - - .set SHADOW_SIZE_S, 0 - .set SHADOW_SIZE_M, 1 - .set SHADOW_SIZE_L, 2 - .set SHADOW_SIZE_XL, 3 - - .set F_INANIMATE, 1 << 6 - .set F_DISABLE_REFLECTION_PALETTE_LOAD, 1 << 7 - - .set TRACKS_NONE, 0 - .set TRACKS_FOOT, 1 - .set TRACKS_BIKE_TIRE, 2 diff --git a/constants/flags.inc b/constants/flags.inc deleted file mode 100644 index 66663cb65..000000000 --- a/constants/flags.inc +++ /dev/null @@ -1,1574 +0,0 @@ - .equiv FLAG_0x001, 0x1 - .equiv FLAG_0x002, 0x2 - .equiv FLAG_0x003, 0x3 - .equiv FLAG_0x004, 0x4 - .equiv FLAG_0x005, 0x5 - .equiv FLAG_0x006, 0x6 - .equiv FLAG_0x007, 0x7 - .equiv FLAG_0x008, 0x8 - .equiv FLAG_0x009, 0x9 - .equiv FLAG_0x00A, 0xA - .equiv FLAG_0x00B, 0xB - .equiv FLAG_0x00C, 0xC - .equiv FLAG_0x00D, 0xD - .equiv FLAG_0x00E, 0xE - .equiv FLAG_0x00F, 0xF - .equiv FLAG_0x010, 0x10 - .equiv FLAG_0x011, 0x11 - .equiv FLAG_0x012, 0x12 - .equiv FLAG_0x013, 0x13 - .equiv FLAG_0x014, 0x14 - .equiv FLAG_0x015, 0x15 - .equiv FLAG_0x016, 0x16 - .equiv FLAG_0x017, 0x17 - .equiv FLAG_0x018, 0x18 - .equiv FLAG_0x019, 0x19 - .equiv FLAG_0x01A, 0x1A - .equiv FLAG_0x01B, 0x1B - .equiv FLAG_0x01C, 0x1C - .equiv FLAG_0x01D, 0x1D - .equiv FLAG_0x01E, 0x1E - .equiv FLAG_0x01F, 0x1F - .equiv FLAG_0x020, 0x20 - .equiv FLAG_0x021, 0x21 - .equiv FLAG_0x022, 0x22 - .equiv FLAG_0x023, 0x23 - .equiv FLAG_0x024, 0x24 - .equiv FLAG_0x025, 0x25 - .equiv FLAG_0x026, 0x26 - .equiv FLAG_0x027, 0x27 - .equiv FLAG_0x028, 0x28 - .equiv FLAG_0x029, 0x29 - .equiv FLAG_0x02A, 0x2A - .equiv FLAG_0x02B, 0x2B - .equiv FLAG_0x02C, 0x2C - .equiv FLAG_0x02D, 0x2D - .equiv FLAG_0x02E, 0x2E - .equiv FLAG_0x02F, 0x2F - .equiv FLAG_0x030, 0x30 - .equiv FLAG_0x031, 0x31 - .equiv FLAG_0x032, 0x32 - .equiv FLAG_0x033, 0x33 - .equiv FLAG_0x034, 0x34 - .equiv FLAG_0x035, 0x35 - .equiv FLAG_0x036, 0x36 - .equiv FLAG_0x037, 0x37 - .equiv FLAG_0x038, 0x38 - .equiv FLAG_0x039, 0x39 - .equiv FLAG_0x03A, 0x3A - .equiv FLAG_0x03B, 0x3B - .equiv FLAG_0x03C, 0x3C - .equiv FLAG_0x03D, 0x3D - .equiv FLAG_0x03E, 0x3E - .equiv FLAG_0x03F, 0x3F - .equiv FLAG_0x040, 0x40 - .equiv FLAG_0x041, 0x41 - .equiv FLAG_0x042, 0x42 - .equiv FLAG_0x043, 0x43 - .equiv FLAG_0x044, 0x44 - .equiv FLAG_0x045, 0x45 - .equiv FLAG_0x046, 0x46 - .equiv FLAG_0x047, 0x47 - .equiv FLAG_0x048, 0x48 - .equiv FLAG_0x049, 0x49 - .equiv FLAG_0x04A, 0x4A - .equiv FLAG_0x04B, 0x4B - .equiv FLAG_0x04C, 0x4C - .equiv FLAG_0x04D, 0x4D - .equiv FLAG_0x04E, 0x4E - .equiv FLAG_0x04F, 0x4F - .equiv FLAG_0x050, 0x50 - .equiv FLAG_0x051, 0x51 - .equiv FLAG_0x052, 0x52 - .equiv FLAG_LEGENDARIES_IN_SOOTOPOLIS, 0x53 - .equiv FLAG_0x054, 0x54 - .equiv FLAG_0x055, 0x55 - .equiv FLAG_0x056, 0x56 - .equiv FLAG_0x057, 0x57 - .equiv FLAG_0x058, 0x58 - .equiv FLAG_0x059, 0x59 - .equiv FLAG_0x05A, 0x5A - .equiv FLAG_0x05B, 0x5B - .equiv FLAG_0x05C, 0x5C - .equiv FLAG_0x05D, 0x5D - .equiv FLAG_0x05E, 0x5E - .equiv FLAG_0x05F, 0x5F - .equiv FLAG_0x060, 0x60 - .equiv FLAG_0x061, 0x61 - .equiv FLAG_0x062, 0x62 - .equiv FLAG_0x063, 0x63 - .equiv FLAG_0x064, 0x64 - .equiv FLAG_0x065, 0x65 - .equiv FLAG_0x066, 0x66 - .equiv FLAG_0x067, 0x67 - .equiv FLAG_0x068, 0x68 - .equiv FLAG_0x069, 0x69 - .equiv FLAG_0x06A, 0x6A - .equiv FLAG_0x06B, 0x6B - .equiv FLAG_0x06C, 0x6C - .equiv FLAG_0x06D, 0x6D - .equiv FLAG_0x06E, 0x6E - .equiv FLAG_0x06F, 0x6F - .equiv FLAG_0x070, 0x70 - .equiv FLAG_0x071, 0x71 - .equiv FLAG_0x072, 0x72 - .equiv FLAG_0x073, 0x73 - .equiv FLAG_0x074, 0x74 - .equiv FLAG_0x075, 0x75 - .equiv FLAG_0x076, 0x76 - .equiv FLAG_0x077, 0x77 - .equiv FLAG_0x078, 0x78 - .equiv FLAG_0x079, 0x79 - .equiv FLAG_0x07A, 0x7A - .equiv FLAG_0x07B, 0x7B - .equiv FLAG_0x07C, 0x7C - .equiv FLAG_0x07D, 0x7D - .equiv FLAG_0x07E, 0x7E - .equiv FLAG_0x07F, 0x7F - .equiv FLAG_0x080, 0x80 - .equiv FLAG_0x081, 0x81 - .equiv FLAG_0x082, 0x82 - .equiv FLAG_0x083, 0x83 - .equiv FLAG_0x084, 0x84 - .equiv FLAG_0x085, 0x85 - .equiv FLAG_PENDING_DAYCARE_EGG, 0x86 - .equiv FLAG_0x087, 0x87 - .equiv FLAG_0x088, 0x88 - .equiv FLAG_0x089, 0x89 - .equiv FLAG_0x08A, 0x8A - .equiv FLAG_0x08B, 0x8B - .equiv FLAG_0x08C, 0x8C - .equiv FLAG_0x08D, 0x8D - .equiv FLAG_0x08E, 0x8E - .equiv FLAG_0x08F, 0x8F - .equiv FLAG_0x090, 0x90 - .equiv FLAG_0x091, 0x91 - .equiv FLAG_0x092, 0x92 - .equiv FLAG_0x093, 0x93 - .equiv FLAG_0x094, 0x94 - .equiv FLAG_0x095, 0x95 - .equiv FLAG_0x096, 0x96 - .equiv FLAG_0x097, 0x97 - .equiv FLAG_0x098, 0x98 - .equiv FLAG_0x099, 0x99 - .equiv FLAG_0x09A, 0x9A - .equiv FLAG_0x09B, 0x9B - .equiv FLAG_0x09C, 0x9C - .equiv FLAG_0x09D, 0x9D - .equiv FLAG_0x09E, 0x9E - .equiv FLAG_0x09F, 0x9F - .equiv FLAG_0x0A0, 0xA0 - .equiv FLAG_0x0A1, 0xA1 - .equiv FLAG_0x0A2, 0xA2 - .equiv FLAG_0x0A3, 0xA3 - .equiv FLAG_0x0A4, 0xA4 - .equiv FLAG_0x0A5, 0xA5 - .equiv FLAG_0x0A6, 0xA6 - .equiv FLAG_0x0A7, 0xA7 - .equiv FLAG_0x0A8, 0xA8 - .equiv FLAG_0x0A9, 0xA9 - .equiv FLAG_0x0AA, 0xAA - .equiv FLAG_0x0AB, 0xAB - .equiv FLAG_0x0AC, 0xAC - .equiv FLAG_0x0AD, 0xAD - .equiv FLAG_0x0AE, 0xAE - .equiv FLAG_0x0AF, 0xAF - .equiv FLAG_0x0B0, 0xB0 - .equiv FLAG_0x0B1, 0xB1 - .equiv FLAG_0x0B2, 0xB2 - .equiv FLAG_0x0B3, 0xB3 - .equiv FLAG_0x0B4, 0xB4 - .equiv FLAG_0x0B5, 0xB5 - .equiv FLAG_0x0B6, 0xB6 - .equiv FLAG_0x0B7, 0xB7 - .equiv FLAG_0x0B8, 0xB8 - .equiv FLAG_0x0B9, 0xB9 - .equiv FLAG_0x0BA, 0xBA - .equiv FLAG_0x0BB, 0xBB - .equiv FLAG_0x0BC, 0xBC - .equiv FLAG_0x0BD, 0xBD - .equiv FLAG_0x0BE, 0xBE - .equiv FLAG_0x0BF, 0xBF - .equiv FLAG_0x0C0, 0xC0 - .equiv FLAG_0x0C1, 0xC1 - .equiv FLAG_0x0C2, 0xC2 - .equiv FLAG_0x0C3, 0xC3 - .equiv FLAG_0x0C4, 0xC4 - .equiv FLAG_0x0C5, 0xC5 - .equiv FLAG_0x0C6, 0xC6 - .equiv FLAG_0x0C7, 0xC7 - .equiv FLAG_0x0C8, 0xC8 - .equiv FLAG_0x0C9, 0xC9 - .equiv FLAG_0x0CA, 0xCA - .equiv FLAG_0x0CB, 0xCB - .equiv FLAG_0x0CC, 0xCC - .equiv FLAG_0x0CD, 0xCD - .equiv FLAG_0x0CE, 0xCE - .equiv FLAG_0x0CF, 0xCF - .equiv FLAG_0x0D0, 0xD0 - .equiv FLAG_0x0D1, 0xD1 - .equiv FLAG_0x0D2, 0xD2 - .equiv FLAG_0x0D3, 0xD3 - .equiv FLAG_0x0D4, 0xD4 - .equiv FLAG_0x0D5, 0xD5 - .equiv FLAG_0x0D6, 0xD6 - .equiv FLAG_0x0D7, 0xD7 - .equiv FLAG_0x0D8, 0xD8 - .equiv FLAG_0x0D9, 0xD9 - .equiv FLAG_0x0DA, 0xDA - .equiv FLAG_0x0DB, 0xDB - .equiv FLAG_0x0DC, 0xDC - .equiv FLAG_0x0DD, 0xDD - .equiv FLAG_0x0DE, 0xDE - .equiv FLAG_0x0DF, 0xDF - .equiv FLAG_0x0E0, 0xE0 - .equiv FLAG_0x0E1, 0xE1 - .equiv FLAG_0x0E2, 0xE2 - .equiv FLAG_0x0E3, 0xE3 - .equiv FLAG_0x0E4, 0xE4 - .equiv FLAG_0x0E5, 0xE5 - .equiv FLAG_0x0E6, 0xE6 - .equiv FLAG_0x0E7, 0xE7 - .equiv FLAG_0x0E8, 0xE8 - .equiv FLAG_0x0E9, 0xE9 - .equiv FLAG_0x0EA, 0xEA - .equiv FLAG_0x0EB, 0xEB - .equiv FLAG_0x0EC, 0xEC - .equiv FLAG_0x0ED, 0xED - .equiv FLAG_0x0EE, 0xEE - .equiv FLAG_0x0EF, 0xEF - .equiv FLAG_0x0F0, 0xF0 - .equiv FLAG_0x0F1, 0xF1 - .equiv FLAG_0x0F2, 0xF2 - .equiv FLAG_0x0F3, 0xF3 - .equiv FLAG_0x0F4, 0xF4 - .equiv FLAG_0x0F5, 0xF5 - .equiv FLAG_0x0F6, 0xF6 - .equiv FLAG_0x0F7, 0xF7 - .equiv FLAG_0x0F8, 0xF8 - .equiv FLAG_0x0F9, 0xF9 - .equiv FLAG_0x0FA, 0xFA - .equiv FLAG_0x0FB, 0xFB - .equiv FLAG_0x0FC, 0xFC - .equiv FLAG_0x0FD, 0xFD - .equiv FLAG_0x0FE, 0xFE - .equiv FLAG_0x0FF, 0xFF - .equiv FLAG_0x100, 0x100 - .equiv FLAG_0x101, 0x101 - .equiv FLAG_0x102, 0x102 - .equiv FLAG_0x103, 0x103 - .equiv FLAG_0x104, 0x104 - .equiv FLAG_0x105, 0x105 - .equiv FLAG_0x106, 0x106 - .equiv FLAG_0x107, 0x107 - .equiv FLAG_0x108, 0x108 - .equiv FLAG_0x109, 0x109 - .equiv FLAG_0x10A, 0x10A - .equiv FLAG_0x10B, 0x10B - .equiv FLAG_0x10C, 0x10C - .equiv FLAG_0x10D, 0x10D - .equiv FLAG_0x10E, 0x10E - .equiv FLAG_0x10F, 0x10F - .equiv FLAG_0x110, 0x110 - .equiv FLAG_0x111, 0x111 - .equiv FLAG_0x112, 0x112 - .equiv FLAG_0x113, 0x113 - .equiv FLAG_0x114, 0x114 - .equiv FLAG_0x115, 0x115 - .equiv FLAG_0x116, 0x116 - .equiv FLAG_0x117, 0x117 - .equiv FLAG_0x118, 0x118 - .equiv FLAG_0x119, 0x119 - .equiv FLAG_0x11A, 0x11A - .equiv FLAG_0x11B, 0x11B - .equiv FLAG_0x11C, 0x11C - .equiv FLAG_0x11D, 0x11D - .equiv FLAG_0x11E, 0x11E - .equiv FLAG_0x11F, 0x11F - .equiv FLAG_0x120, 0x120 - .equiv FLAG_0x121, 0x121 - .equiv FLAG_0x122, 0x122 - .equiv FLAG_0x123, 0x123 - .equiv FLAG_0x124, 0x124 - .equiv FLAG_0x125, 0x125 - .equiv FLAG_0x126, 0x126 - .equiv FLAG_0x127, 0x127 - .equiv FLAG_0x128, 0x128 - .equiv FLAG_0x129, 0x129 - .equiv FLAG_0x12A, 0x12A - .equiv FLAG_0x12B, 0x12B - .equiv FLAG_0x12C, 0x12C - .equiv FLAG_0x12D, 0x12D - .equiv FLAG_0x12E, 0x12E - .equiv FLAG_0x12F, 0x12F - .equiv FLAG_0x130, 0x130 - .equiv FLAG_0x131, 0x131 - .equiv FLAG_0x132, 0x132 - .equiv FLAG_0x133, 0x133 - .equiv FLAG_0x134, 0x134 - .equiv FLAG_0x135, 0x135 - .equiv FLAG_0x136, 0x136 - .equiv FLAG_0x137, 0x137 - .equiv FLAG_0x138, 0x138 - .equiv FLAG_0x139, 0x139 - .equiv FLAG_0x13A, 0x13A - .equiv FLAG_0x13B, 0x13B - .equiv FLAG_0x13C, 0x13C - .equiv FLAG_0x13D, 0x13D - .equiv FLAG_0x13E, 0x13E - .equiv FLAG_0x13F, 0x13F - .equiv FLAG_0x140, 0x140 - .equiv FLAG_0x141, 0x141 - .equiv FLAG_0x142, 0x142 - .equiv FLAG_0x143, 0x143 - .equiv FLAG_0x144, 0x144 - .equiv FLAG_0x145, 0x145 - .equiv FLAG_0x146, 0x146 - .equiv FLAG_0x147, 0x147 - .equiv FLAG_0x148, 0x148 - .equiv FLAG_0x149, 0x149 - .equiv FLAG_0x14A, 0x14A - .equiv FLAG_0x14B, 0x14B - .equiv FLAG_0x14C, 0x14C - .equiv FLAG_0x14D, 0x14D - .equiv FLAG_0x14E, 0x14E - .equiv FLAG_0x14F, 0x14F - .equiv FLAG_0x150, 0x150 - .equiv FLAG_0x151, 0x151 - .equiv FLAG_0x152, 0x152 - .equiv FLAG_0x153, 0x153 - .equiv FLAG_0x154, 0x154 - .equiv FLAG_0x155, 0x155 - .equiv FLAG_0x156, 0x156 - .equiv FLAG_0x157, 0x157 - .equiv FLAG_0x158, 0x158 - .equiv FLAG_0x159, 0x159 - .equiv FLAG_0x15A, 0x15A - .equiv FLAG_0x15B, 0x15B - .equiv FLAG_0x15C, 0x15C - .equiv FLAG_0x15D, 0x15D - .equiv FLAG_0x15E, 0x15E - .equiv FLAG_0x15F, 0x15F - .equiv FLAG_0x160, 0x160 - .equiv FLAG_0x161, 0x161 - .equiv FLAG_0x162, 0x162 - .equiv FLAG_0x163, 0x163 - .equiv FLAG_0x164, 0x164 - .equiv FLAG_0x165, 0x165 - .equiv FLAG_0x166, 0x166 - .equiv FLAG_0x167, 0x167 - .equiv FLAG_0x168, 0x168 - .equiv FLAG_0x169, 0x169 - .equiv FLAG_0x16A, 0x16A - .equiv FLAG_0x16B, 0x16B - .equiv FLAG_0x16C, 0x16C - .equiv FLAG_0x16D, 0x16D - .equiv FLAG_0x16E, 0x16E - .equiv FLAG_0x16F, 0x16F - .equiv FLAG_0x170, 0x170 - .equiv FLAG_0x171, 0x171 - .equiv FLAG_0x172, 0x172 - .equiv FLAG_0x173, 0x173 - .equiv FLAG_0x174, 0x174 - .equiv FLAG_0x175, 0x175 - .equiv FLAG_0x176, 0x176 - .equiv FLAG_0x177, 0x177 - .equiv FLAG_0x178, 0x178 - .equiv FLAG_0x179, 0x179 - .equiv FLAG_0x17A, 0x17A - .equiv FLAG_0x17B, 0x17B - .equiv FLAG_0x17C, 0x17C - .equiv FLAG_0x17D, 0x17D - .equiv FLAG_0x17E, 0x17E - .equiv FLAG_0x17F, 0x17F - .equiv FLAG_0x180, 0x180 - .equiv FLAG_0x181, 0x181 - .equiv FLAG_0x182, 0x182 - .equiv FLAG_0x183, 0x183 - .equiv FLAG_0x184, 0x184 - .equiv FLAG_0x185, 0x185 - .equiv FLAG_0x186, 0x186 - .equiv FLAG_0x187, 0x187 - .equiv FLAG_0x188, 0x188 - .equiv FLAG_0x189, 0x189 - .equiv FLAG_0x18A, 0x18A - .equiv FLAG_0x18B, 0x18B - .equiv FLAG_0x18C, 0x18C - .equiv FLAG_0x18D, 0x18D - .equiv FLAG_0x18E, 0x18E - .equiv FLAG_0x18F, 0x18F - .equiv FLAG_0x190, 0x190 - .equiv FLAG_0x191, 0x191 - .equiv FLAG_0x192, 0x192 - .equiv FLAG_0x193, 0x193 - .equiv FLAG_0x194, 0x194 - .equiv FLAG_0x195, 0x195 - .equiv FLAG_0x196, 0x196 - .equiv FLAG_0x197, 0x197 - .equiv FLAG_0x198, 0x198 - .equiv FLAG_0x199, 0x199 - .equiv FLAG_0x19A, 0x19A - .equiv FLAG_0x19B, 0x19B - .equiv FLAG_0x19C, 0x19C - .equiv FLAG_0x19D, 0x19D - .equiv FLAG_0x19E, 0x19E - .equiv FLAG_0x19F, 0x19F - .equiv FLAG_0x1A0, 0x1A0 - .equiv FLAG_0x1A1, 0x1A1 - .equiv FLAG_0x1A2, 0x1A2 - .equiv FLAG_0x1A3, 0x1A3 - .equiv FLAG_0x1A4, 0x1A4 - .equiv FLAG_0x1A5, 0x1A5 - .equiv FLAG_0x1A6, 0x1A6 - .equiv FLAG_0x1A7, 0x1A7 - .equiv FLAG_0x1A8, 0x1A8 - .equiv FLAG_0x1A9, 0x1A9 - .equiv FLAG_0x1AA, 0x1AA - .equiv FLAG_0x1AB, 0x1AB - .equiv FLAG_0x1AC, 0x1AC - .equiv FLAG_0x1AD, 0x1AD - .equiv FLAG_0x1AE, 0x1AE - .equiv FLAG_0x1AF, 0x1AF - .equiv FLAG_0x1B0, 0x1B0 - .equiv FLAG_0x1B1, 0x1B1 - .equiv FLAG_0x1B2, 0x1B2 - .equiv FLAG_0x1B3, 0x1B3 - .equiv FLAG_0x1B4, 0x1B4 - .equiv FLAG_0x1B5, 0x1B5 - .equiv FLAG_0x1B6, 0x1B6 - .equiv FLAG_0x1B7, 0x1B7 - .equiv FLAG_0x1B8, 0x1B8 - .equiv FLAG_0x1B9, 0x1B9 - .equiv FLAG_0x1BA, 0x1BA - .equiv FLAG_0x1BB, 0x1BB - .equiv FLAG_0x1BC, 0x1BC - .equiv FLAG_0x1BD, 0x1BD - .equiv FLAG_0x1BE, 0x1BE - .equiv FLAG_0x1BF, 0x1BF - .equiv FLAG_0x1C0, 0x1C0 - .equiv FLAG_0x1C1, 0x1C1 - .equiv FLAG_0x1C2, 0x1C2 - .equiv FLAG_0x1C3, 0x1C3 - .equiv FLAG_0x1C4, 0x1C4 - .equiv FLAG_0x1C5, 0x1C5 - .equiv FLAG_0x1C6, 0x1C6 - .equiv FLAG_0x1C7, 0x1C7 - .equiv FLAG_0x1C8, 0x1C8 - .equiv FLAG_0x1C9, 0x1C9 - .equiv FLAG_0x1CA, 0x1CA - .equiv FLAG_0x1CB, 0x1CB - .equiv FLAG_0x1CC, 0x1CC - .equiv FLAG_0x1CD, 0x1CD - .equiv FLAG_0x1CE, 0x1CE - .equiv FLAG_0x1CF, 0x1CF - .equiv FLAG_0x1D0, 0x1D0 - .equiv FLAG_0x1D1, 0x1D1 - .equiv FLAG_0x1D2, 0x1D2 - .equiv FLAG_0x1D3, 0x1D3 - .equiv FLAG_0x1D4, 0x1D4 - .equiv FLAG_0x1D5, 0x1D5 - .equiv FLAG_0x1D6, 0x1D6 - .equiv FLAG_0x1D7, 0x1D7 - .equiv FLAG_0x1D8, 0x1D8 - .equiv FLAG_0x1D9, 0x1D9 - .equiv FLAG_0x1DA, 0x1DA - .equiv FLAG_0x1DB, 0x1DB - .equiv FLAG_0x1DC, 0x1DC - .equiv FLAG_0x1DD, 0x1DD - .equiv FLAG_0x1DE, 0x1DE - .equiv FLAG_0x1DF, 0x1DF - .equiv FLAG_0x1E0, 0x1E0 - .equiv FLAG_0x1E1, 0x1E1 - .equiv FLAG_0x1E2, 0x1E2 - .equiv FLAG_0x1E3, 0x1E3 - .equiv FLAG_0x1E4, 0x1E4 - .equiv FLAG_0x1E5, 0x1E5 - .equiv FLAG_0x1E6, 0x1E6 - .equiv FLAG_0x1E7, 0x1E7 - .equiv FLAG_0x1E8, 0x1E8 - .equiv FLAG_0x1E9, 0x1E9 - .equiv FLAG_0x1EA, 0x1EA - .equiv FLAG_0x1EB, 0x1EB - .equiv FLAG_0x1EC, 0x1EC - .equiv FLAG_0x1ED, 0x1ED - .equiv FLAG_0x1EE, 0x1EE - .equiv FLAG_0x1EF, 0x1EF - .equiv FLAG_0x1F0, 0x1F0 - .equiv FLAG_0x1F1, 0x1F1 - .equiv FLAG_0x1F2, 0x1F2 - .equiv FLAG_0x1F3, 0x1F3 - .equiv FLAG_0x1F4, 0x1F4 - .equiv FLAG_0x1F5, 0x1F5 - .equiv FLAG_0x1F6, 0x1F6 - .equiv FLAG_0x1F7, 0x1F7 - .equiv FLAG_0x1F8, 0x1F8 - .equiv FLAG_0x1F9, 0x1F9 - .equiv FLAG_0x1FA, 0x1FA - .equiv FLAG_0x1FB, 0x1FB - .equiv FLAG_0x1FC, 0x1FC - .equiv FLAG_0x1FD, 0x1FD - .equiv FLAG_0x1FE, 0x1FE - .equiv FLAG_0x1FF, 0x1FF - .equiv FLAG_0x200, 0x200 - .equiv FLAG_0x201, 0x201 - .equiv FLAG_0x202, 0x202 - .equiv FLAG_0x203, 0x203 - .equiv FLAG_0x204, 0x204 - .equiv FLAG_0x205, 0x205 - .equiv FLAG_0x206, 0x206 - .equiv FLAG_0x207, 0x207 - .equiv FLAG_0x208, 0x208 - .equiv FLAG_0x209, 0x209 - .equiv FLAG_0x20A, 0x20A - .equiv FLAG_0x20B, 0x20B - .equiv FLAG_0x20C, 0x20C - .equiv FLAG_0x20D, 0x20D - .equiv FLAG_0x20E, 0x20E - .equiv FLAG_0x20F, 0x20F - .equiv FLAG_0x210, 0x210 - .equiv FLAG_0x211, 0x211 - .equiv FLAG_0x212, 0x212 - .equiv FLAG_0x213, 0x213 - .equiv FLAG_0x214, 0x214 - .equiv FLAG_0x215, 0x215 - .equiv FLAG_0x216, 0x216 - .equiv FLAG_0x217, 0x217 - .equiv FLAG_0x218, 0x218 - .equiv FLAG_0x219, 0x219 - .equiv FLAG_0x21A, 0x21A - .equiv FLAG_0x21B, 0x21B - .equiv FLAG_0x21C, 0x21C - .equiv FLAG_0x21D, 0x21D - .equiv FLAG_0x21E, 0x21E - .equiv FLAG_0x21F, 0x21F - .equiv FLAG_0x220, 0x220 - .equiv FLAG_0x221, 0x221 - .equiv FLAG_0x222, 0x222 - .equiv FLAG_0x223, 0x223 - .equiv FLAG_0x224, 0x224 - .equiv FLAG_0x225, 0x225 - .equiv FLAG_0x226, 0x226 - .equiv FLAG_0x227, 0x227 - .equiv FLAG_0x228, 0x228 - .equiv FLAG_0x229, 0x229 - .equiv FLAG_0x22A, 0x22A - .equiv FLAG_0x22B, 0x22B - .equiv FLAG_0x22C, 0x22C - .equiv FLAG_0x22D, 0x22D - .equiv FLAG_0x22E, 0x22E - .equiv FLAG_0x22F, 0x22F - .equiv FLAG_0x230, 0x230 - .equiv FLAG_0x231, 0x231 - .equiv FLAG_0x232, 0x232 - .equiv FLAG_0x233, 0x233 - .equiv FLAG_0x234, 0x234 - .equiv FLAG_0x235, 0x235 - .equiv FLAG_0x236, 0x236 - .equiv FLAG_0x237, 0x237 - .equiv FLAG_0x238, 0x238 - .equiv FLAG_0x239, 0x239 - .equiv FLAG_0x23A, 0x23A - .equiv FLAG_0x23B, 0x23B - .equiv FLAG_0x23C, 0x23C - .equiv FLAG_0x23D, 0x23D - .equiv FLAG_0x23E, 0x23E - .equiv FLAG_0x23F, 0x23F - .equiv FLAG_0x240, 0x240 - .equiv FLAG_0x241, 0x241 - .equiv FLAG_0x242, 0x242 - .equiv FLAG_0x243, 0x243 - .equiv FLAG_0x244, 0x244 - .equiv FLAG_0x245, 0x245 - .equiv FLAG_0x246, 0x246 - .equiv FLAG_0x247, 0x247 - .equiv FLAG_0x248, 0x248 - .equiv FLAG_0x249, 0x249 - .equiv FLAG_0x24A, 0x24A - .equiv FLAG_0x24B, 0x24B - .equiv FLAG_0x24C, 0x24C - .equiv FLAG_0x24D, 0x24D - .equiv FLAG_0x24E, 0x24E - .equiv FLAG_0x24F, 0x24F - .equiv FLAG_0x250, 0x250 - .equiv FLAG_0x251, 0x251 - .equiv FLAG_0x252, 0x252 - .equiv FLAG_0x253, 0x253 - .equiv FLAG_0x254, 0x254 - .equiv FLAG_0x255, 0x255 - .equiv FLAG_0x256, 0x256 - .equiv FLAG_0x257, 0x257 - .equiv FLAG_0x258, 0x258 - .equiv FLAG_0x259, 0x259 - .equiv FLAG_0x25A, 0x25A - .equiv FLAG_0x25B, 0x25B - .equiv FLAG_0x25C, 0x25C - .equiv FLAG_0x25D, 0x25D - .equiv FLAG_0x25E, 0x25E - .equiv FLAG_0x25F, 0x25F - .equiv FLAG_0x260, 0x260 - .equiv FLAG_0x261, 0x261 - .equiv FLAG_0x262, 0x262 - .equiv FLAG_0x263, 0x263 - .equiv FLAG_0x264, 0x264 - .equiv FLAG_0x265, 0x265 - .equiv FLAG_0x266, 0x266 - .equiv FLAG_0x267, 0x267 - .equiv FLAG_0x268, 0x268 - .equiv FLAG_0x269, 0x269 - .equiv FLAG_0x26A, 0x26A - .equiv FLAG_0x26B, 0x26B - .equiv FLAG_0x26C, 0x26C - .equiv FLAG_0x26D, 0x26D - .equiv FLAG_0x26E, 0x26E - .equiv FLAG_0x26F, 0x26F - .equiv FLAG_0x270, 0x270 - .equiv FLAG_0x271, 0x271 - .equiv FLAG_0x272, 0x272 - .equiv FLAG_0x273, 0x273 - .equiv FLAG_0x274, 0x274 - .equiv FLAG_0x275, 0x275 - .equiv FLAG_0x276, 0x276 - .equiv FLAG_0x277, 0x277 - .equiv FLAG_0x278, 0x278 - .equiv FLAG_0x279, 0x279 - .equiv FLAG_0x27A, 0x27A - .equiv FLAG_0x27B, 0x27B - .equiv FLAG_0x27C, 0x27C - .equiv FLAG_0x27D, 0x27D - .equiv FLAG_0x27E, 0x27E - .equiv FLAG_0x27F, 0x27F - .equiv FLAG_0x280, 0x280 - .equiv FLAG_0x281, 0x281 - .equiv FLAG_0x282, 0x282 - .equiv FLAG_0x283, 0x283 - .equiv FLAG_0x284, 0x284 - .equiv FLAG_0x285, 0x285 - .equiv FLAG_0x286, 0x286 - .equiv FLAG_0x287, 0x287 - .equiv FLAG_0x288, 0x288 - .equiv FLAG_0x289, 0x289 - .equiv FLAG_0x28A, 0x28A - .equiv FLAG_0x28B, 0x28B - .equiv FLAG_0x28C, 0x28C - .equiv FLAG_0x28D, 0x28D - .equiv FLAG_0x28E, 0x28E - .equiv FLAG_0x28F, 0x28F - .equiv FLAG_0x290, 0x290 - .equiv FLAG_0x291, 0x291 - .equiv FLAG_0x292, 0x292 - .equiv FLAG_0x293, 0x293 - .equiv FLAG_0x294, 0x294 - .equiv FLAG_0x295, 0x295 - .equiv FLAG_0x296, 0x296 - .equiv FLAG_0x297, 0x297 - .equiv FLAG_0x298, 0x298 - .equiv FLAG_0x299, 0x299 - .equiv FLAG_0x29A, 0x29A - .equiv FLAG_0x29B, 0x29B - .equiv FLAG_0x29C, 0x29C - .equiv FLAG_0x29D, 0x29D - .equiv FLAG_0x29E, 0x29E - .equiv FLAG_0x29F, 0x29F - .equiv FLAG_0x2A0, 0x2A0 - .equiv FLAG_0x2A1, 0x2A1 - .equiv FLAG_0x2A2, 0x2A2 - .equiv FLAG_0x2A3, 0x2A3 - .equiv FLAG_0x2A4, 0x2A4 - .equiv FLAG_0x2A5, 0x2A5 - .equiv FLAG_0x2A6, 0x2A6 - .equiv FLAG_0x2A7, 0x2A7 - .equiv FLAG_0x2A8, 0x2A8 - .equiv FLAG_0x2A9, 0x2A9 - .equiv FLAG_0x2AA, 0x2AA - .equiv FLAG_0x2AB, 0x2AB - .equiv FLAG_0x2AC, 0x2AC - .equiv FLAG_0x2AD, 0x2AD - .equiv FLAG_0x2AE, 0x2AE - .equiv FLAG_0x2AF, 0x2AF - .equiv FLAG_0x2B0, 0x2B0 - .equiv FLAG_0x2B1, 0x2B1 - .equiv FLAG_0x2B2, 0x2B2 - .equiv FLAG_0x2B3, 0x2B3 - .equiv FLAG_0x2B4, 0x2B4 - .equiv FLAG_0x2B5, 0x2B5 - .equiv FLAG_0x2B6, 0x2B6 - .equiv FLAG_0x2B7, 0x2B7 - .equiv FLAG_0x2B8, 0x2B8 - .equiv FLAG_0x2B9, 0x2B9 - .equiv FLAG_0x2BA, 0x2BA - .equiv FLAG_0x2BB, 0x2BB - .equiv FLAG_0x2BC, 0x2BC - .equiv FLAG_0x2BD, 0x2BD - .equiv FLAG_0x2BE, 0x2BE - .equiv FLAG_0x2BF, 0x2BF - .equiv FLAG_0x2C0, 0x2C0 - .equiv FLAG_0x2C1, 0x2C1 - .equiv FLAG_0x2C2, 0x2C2 - .equiv FLAG_0x2C3, 0x2C3 - .equiv FLAG_0x2C4, 0x2C4 - .equiv FLAG_0x2C5, 0x2C5 - .equiv FLAG_0x2C6, 0x2C6 - .equiv FLAG_0x2C7, 0x2C7 - .equiv FLAG_0x2C8, 0x2C8 - .equiv FLAG_0x2C9, 0x2C9 - .equiv FLAG_0x2CA, 0x2CA - .equiv FLAG_0x2CB, 0x2CB - .equiv FLAG_0x2CC, 0x2CC - .equiv FLAG_0x2CD, 0x2CD - .equiv FLAG_0x2CE, 0x2CE - .equiv FLAG_0x2CF, 0x2CF - .equiv FLAG_0x2D0, 0x2D0 - .equiv FLAG_0x2D1, 0x2D1 - .equiv FLAG_0x2D2, 0x2D2 - .equiv FLAG_0x2D3, 0x2D3 - .equiv FLAG_0x2D4, 0x2D4 - .equiv FLAG_0x2D5, 0x2D5 - .equiv FLAG_0x2D6, 0x2D6 - .equiv FLAG_0x2D7, 0x2D7 - .equiv FLAG_0x2D8, 0x2D8 - .equiv FLAG_0x2D9, 0x2D9 - .equiv FLAG_0x2DA, 0x2DA - .equiv FLAG_0x2DB, 0x2DB - .equiv FLAG_0x2DC, 0x2DC - .equiv FLAG_0x2DD, 0x2DD - .equiv FLAG_0x2DE, 0x2DE - .equiv FLAG_0x2DF, 0x2DF - .equiv FLAG_0x2E0, 0x2E0 - .equiv FLAG_0x2E1, 0x2E1 - .equiv FLAG_0x2E2, 0x2E2 - .equiv FLAG_0x2E3, 0x2E3 - .equiv FLAG_0x2E4, 0x2E4 - .equiv FLAG_0x2E5, 0x2E5 - .equiv FLAG_0x2E6, 0x2E6 - .equiv FLAG_0x2E7, 0x2E7 - .equiv FLAG_0x2E8, 0x2E8 - .equiv FLAG_0x2E9, 0x2E9 - .equiv FLAG_0x2EA, 0x2EA - .equiv FLAG_0x2EB, 0x2EB - .equiv FLAG_0x2EC, 0x2EC - .equiv FLAG_0x2ED, 0x2ED - .equiv FLAG_0x2EE, 0x2EE - .equiv FLAG_0x2EF, 0x2EF - .equiv FLAG_0x2F0, 0x2F0 - .equiv FLAG_0x2F1, 0x2F1 - .equiv FLAG_0x2F2, 0x2F2 - .equiv FLAG_0x2F3, 0x2F3 - .equiv FLAG_0x2F4, 0x2F4 - .equiv FLAG_0x2F5, 0x2F5 - .equiv FLAG_0x2F6, 0x2F6 - .equiv FLAG_0x2F7, 0x2F7 - .equiv FLAG_0x2F8, 0x2F8 - .equiv FLAG_0x2F9, 0x2F9 - .equiv FLAG_0x2FA, 0x2FA - .equiv FLAG_0x2FB, 0x2FB - .equiv FLAG_0x2FC, 0x2FC - .equiv FLAG_0x2FD, 0x2FD - .equiv FLAG_0x2FE, 0x2FE - .equiv FLAG_0x2FF, 0x2FF - .equiv FLAG_0x300, 0x300 - .equiv FLAG_0x301, 0x301 - .equiv FLAG_0x302, 0x302 - .equiv FLAG_0x303, 0x303 - .equiv FLAG_0x304, 0x304 - .equiv FLAG_0x305, 0x305 - .equiv FLAG_0x306, 0x306 - .equiv FLAG_0x307, 0x307 - .equiv FLAG_0x308, 0x308 - .equiv FLAG_0x309, 0x309 - .equiv FLAG_0x30A, 0x30A - .equiv FLAG_0x30B, 0x30B - .equiv FLAG_0x30C, 0x30C - .equiv FLAG_0x30D, 0x30D - .equiv FLAG_0x30E, 0x30E - .equiv FLAG_0x30F, 0x30F - .equiv FLAG_0x310, 0x310 - .equiv FLAG_0x311, 0x311 - .equiv FLAG_0x312, 0x312 - .equiv FLAG_0x313, 0x313 - .equiv FLAG_0x314, 0x314 - .equiv FLAG_0x315, 0x315 - .equiv FLAG_0x316, 0x316 - .equiv FLAG_0x317, 0x317 - .equiv FLAG_0x318, 0x318 - .equiv FLAG_0x319, 0x319 - .equiv FLAG_0x31A, 0x31A - .equiv FLAG_0x31B, 0x31B - .equiv FLAG_0x31C, 0x31C - .equiv FLAG_0x31D, 0x31D - .equiv FLAG_0x31E, 0x31E - .equiv FLAG_0x31F, 0x31F - .equiv FLAG_0x320, 0x320 - .equiv FLAG_0x321, 0x321 - .equiv FLAG_0x322, 0x322 - .equiv FLAG_0x323, 0x323 - .equiv FLAG_0x324, 0x324 - .equiv FLAG_0x325, 0x325 - .equiv FLAG_0x326, 0x326 - .equiv FLAG_0x327, 0x327 - .equiv FLAG_0x328, 0x328 - .equiv FLAG_0x329, 0x329 - .equiv FLAG_0x32A, 0x32A - .equiv FLAG_0x32B, 0x32B - .equiv FLAG_0x32C, 0x32C - .equiv FLAG_0x32D, 0x32D - .equiv FLAG_0x32E, 0x32E - .equiv FLAG_0x32F, 0x32F - .equiv FLAG_0x330, 0x330 - .equiv FLAG_0x331, 0x331 - .equiv FLAG_0x332, 0x332 - .equiv FLAG_0x333, 0x333 - .equiv FLAG_0x334, 0x334 - .equiv FLAG_0x335, 0x335 - .equiv FLAG_0x336, 0x336 - .equiv FLAG_0x337, 0x337 - .equiv FLAG_0x338, 0x338 - .equiv FLAG_0x339, 0x339 - .equiv FLAG_0x33A, 0x33A - .equiv FLAG_0x33B, 0x33B - .equiv FLAG_0x33C, 0x33C - .equiv FLAG_0x33D, 0x33D - .equiv FLAG_0x33E, 0x33E - .equiv FLAG_0x33F, 0x33F - .equiv FLAG_0x340, 0x340 - .equiv FLAG_0x341, 0x341 - .equiv FLAG_0x342, 0x342 - .equiv FLAG_0x343, 0x343 - .equiv FLAG_0x344, 0x344 - .equiv FLAG_0x345, 0x345 - .equiv FLAG_0x346, 0x346 - .equiv FLAG_0x347, 0x347 - .equiv FLAG_0x348, 0x348 - .equiv FLAG_0x349, 0x349 - .equiv FLAG_0x34A, 0x34A - .equiv FLAG_0x34B, 0x34B - .equiv FLAG_0x34C, 0x34C - .equiv FLAG_0x34D, 0x34D - .equiv FLAG_0x34E, 0x34E - .equiv FLAG_0x34F, 0x34F - .equiv FLAG_0x350, 0x350 - .equiv FLAG_0x351, 0x351 - .equiv FLAG_0x352, 0x352 - .equiv FLAG_0x353, 0x353 - .equiv FLAG_0x354, 0x354 - .equiv FLAG_0x355, 0x355 - .equiv FLAG_0x356, 0x356 - .equiv FLAG_0x357, 0x357 - .equiv FLAG_0x358, 0x358 - .equiv FLAG_0x359, 0x359 - .equiv FLAG_0x35A, 0x35A - .equiv FLAG_0x35B, 0x35B - .equiv FLAG_0x35C, 0x35C - .equiv FLAG_0x35D, 0x35D - .equiv FLAG_0x35E, 0x35E - .equiv FLAG_0x35F, 0x35F - .equiv FLAG_0x360, 0x360 - .equiv FLAG_0x361, 0x361 - .equiv FLAG_0x362, 0x362 - .equiv FLAG_0x363, 0x363 - .equiv FLAG_0x364, 0x364 - .equiv FLAG_0x365, 0x365 - .equiv FLAG_0x366, 0x366 - .equiv FLAG_0x367, 0x367 - .equiv FLAG_0x368, 0x368 - .equiv FLAG_0x369, 0x369 - .equiv FLAG_0x36A, 0x36A - .equiv FLAG_0x36B, 0x36B - .equiv FLAG_0x36C, 0x36C - .equiv FLAG_0x36D, 0x36D - .equiv FLAG_0x36E, 0x36E - .equiv FLAG_0x36F, 0x36F - .equiv FLAG_0x370, 0x370 - .equiv FLAG_0x371, 0x371 - .equiv FLAG_0x372, 0x372 - .equiv FLAG_0x373, 0x373 - .equiv FLAG_0x374, 0x374 - .equiv FLAG_0x375, 0x375 - .equiv FLAG_0x376, 0x376 - .equiv FLAG_0x377, 0x377 - .equiv FLAG_0x378, 0x378 - .equiv FLAG_0x379, 0x379 - .equiv FLAG_0x37A, 0x37A - .equiv FLAG_0x37B, 0x37B - .equiv FLAG_0x37C, 0x37C - .equiv FLAG_0x37D, 0x37D - .equiv FLAG_0x37E, 0x37E - .equiv FLAG_0x37F, 0x37F - .equiv FLAG_0x380, 0x380 - .equiv FLAG_0x381, 0x381 - .equiv FLAG_0x382, 0x382 - .equiv FLAG_0x383, 0x383 - .equiv FLAG_0x384, 0x384 - .equiv FLAG_0x385, 0x385 - .equiv FLAG_0x386, 0x386 - .equiv FLAG_0x387, 0x387 - .equiv FLAG_0x388, 0x388 - .equiv FLAG_0x389, 0x389 - .equiv FLAG_0x38A, 0x38A - .equiv FLAG_0x38B, 0x38B - .equiv FLAG_0x38C, 0x38C - .equiv FLAG_0x38D, 0x38D - .equiv FLAG_0x38E, 0x38E - .equiv FLAG_0x38F, 0x38F - .equiv FLAG_0x390, 0x390 - .equiv FLAG_0x391, 0x391 - .equiv FLAG_0x392, 0x392 - .equiv FLAG_0x393, 0x393 - .equiv FLAG_0x394, 0x394 - .equiv FLAG_0x395, 0x395 - .equiv FLAG_0x396, 0x396 - .equiv FLAG_0x397, 0x397 - .equiv FLAG_0x398, 0x398 - .equiv FLAG_0x399, 0x399 - .equiv FLAG_0x39A, 0x39A - .equiv FLAG_0x39B, 0x39B - .equiv FLAG_0x39C, 0x39C - .equiv FLAG_0x39D, 0x39D - .equiv FLAG_0x39E, 0x39E - .equiv FLAG_0x39F, 0x39F - .equiv FLAG_0x3A0, 0x3A0 - .equiv FLAG_0x3A1, 0x3A1 - .equiv FLAG_0x3A2, 0x3A2 - .equiv FLAG_0x3A3, 0x3A3 - .equiv FLAG_0x3A4, 0x3A4 - .equiv FLAG_0x3A5, 0x3A5 - .equiv FLAG_0x3A6, 0x3A6 - .equiv FLAG_0x3A7, 0x3A7 - .equiv FLAG_0x3A8, 0x3A8 - .equiv FLAG_0x3A9, 0x3A9 - .equiv FLAG_0x3AA, 0x3AA - .equiv FLAG_0x3AB, 0x3AB - .equiv FLAG_0x3AC, 0x3AC - .equiv FLAG_0x3AD, 0x3AD - .equiv FLAG_0x3AE, 0x3AE - .equiv FLAG_0x3AF, 0x3AF - .equiv FLAG_0x3B0, 0x3B0 - .equiv FLAG_0x3B1, 0x3B1 - .equiv FLAG_0x3B2, 0x3B2 - .equiv FLAG_0x3B3, 0x3B3 - .equiv FLAG_0x3B4, 0x3B4 - .equiv FLAG_0x3B5, 0x3B5 - .equiv FLAG_0x3B6, 0x3B6 - .equiv FLAG_0x3B7, 0x3B7 - .equiv FLAG_0x3B8, 0x3B8 - .equiv FLAG_0x3B9, 0x3B9 - .equiv FLAG_0x3BA, 0x3BA - .equiv FLAG_0x3BB, 0x3BB - .equiv FLAG_0x3BC, 0x3BC - .equiv FLAG_0x3BD, 0x3BD - .equiv FLAG_0x3BE, 0x3BE - .equiv FLAG_0x3BF, 0x3BF - .equiv FLAG_0x3C0, 0x3C0 - .equiv FLAG_0x3C1, 0x3C1 - .equiv FLAG_0x3C2, 0x3C2 - .equiv FLAG_0x3C3, 0x3C3 - .equiv FLAG_0x3C4, 0x3C4 - .equiv FLAG_0x3C5, 0x3C5 - .equiv FLAG_0x3C6, 0x3C6 - .equiv FLAG_0x3C7, 0x3C7 - .equiv FLAG_0x3C8, 0x3C8 - .equiv FLAG_0x3C9, 0x3C9 - .equiv FLAG_0x3CA, 0x3CA - .equiv FLAG_0x3CB, 0x3CB - .equiv FLAG_0x3CC, 0x3CC - .equiv FLAG_0x3CD, 0x3CD - .equiv FLAG_0x3CE, 0x3CE - .equiv FLAG_0x3CF, 0x3CF - .equiv FLAG_0x3D0, 0x3D0 - .equiv FLAG_0x3D1, 0x3D1 - .equiv FLAG_0x3D2, 0x3D2 - .equiv FLAG_0x3D3, 0x3D3 - .equiv FLAG_0x3D4, 0x3D4 - .equiv FLAG_0x3D5, 0x3D5 - .equiv FLAG_0x3D6, 0x3D6 - .equiv FLAG_0x3D7, 0x3D7 - .equiv FLAG_0x3D8, 0x3D8 - .equiv FLAG_0x3D9, 0x3D9 - .equiv FLAG_0x3DA, 0x3DA - .equiv FLAG_0x3DB, 0x3DB - .equiv FLAG_0x3DC, 0x3DC - .equiv FLAG_0x3DD, 0x3DD - .equiv FLAG_0x3DE, 0x3DE - .equiv FLAG_0x3DF, 0x3DF - .equiv FLAG_0x3E0, 0x3E0 - .equiv FLAG_0x3E1, 0x3E1 - .equiv FLAG_0x3E2, 0x3E2 - .equiv FLAG_0x3E3, 0x3E3 - .equiv FLAG_0x3E4, 0x3E4 - .equiv FLAG_0x3E5, 0x3E5 - .equiv FLAG_0x3E6, 0x3E6 - .equiv FLAG_0x3E7, 0x3E7 - .equiv FLAG_0x3E8, 0x3E8 - .equiv FLAG_0x3E9, 0x3E9 - .equiv FLAG_0x3EA, 0x3EA - .equiv FLAG_0x3EB, 0x3EB - .equiv FLAG_0x3EC, 0x3EC - .equiv FLAG_0x3ED, 0x3ED - .equiv FLAG_0x3EE, 0x3EE - .equiv FLAG_0x3EF, 0x3EF - .equiv FLAG_0x3F0, 0x3F0 - .equiv FLAG_0x3F1, 0x3F1 - .equiv FLAG_0x3F2, 0x3F2 - .equiv FLAG_0x3F3, 0x3F3 - .equiv FLAG_0x3F4, 0x3F4 - .equiv FLAG_0x3F5, 0x3F5 - .equiv FLAG_0x3F6, 0x3F6 - .equiv FLAG_0x3F7, 0x3F7 - .equiv FLAG_0x3F8, 0x3F8 - .equiv FLAG_0x3F9, 0x3F9 - .equiv FLAG_0x3FA, 0x3FA - .equiv FLAG_0x3FB, 0x3FB - .equiv FLAG_0x3FC, 0x3FC - .equiv FLAG_0x3FD, 0x3FD - .equiv FLAG_0x3FE, 0x3FE - .equiv FLAG_0x3FF, 0x3FF - .equiv FLAG_0x400, 0x400 - .equiv FLAG_0x401, 0x401 - .equiv FLAG_0x402, 0x402 - .equiv FLAG_0x403, 0x403 - .equiv FLAG_0x404, 0x404 - .equiv FLAG_0x405, 0x405 - .equiv FLAG_0x406, 0x406 - .equiv FLAG_0x407, 0x407 - .equiv FLAG_0x408, 0x408 - .equiv FLAG_0x409, 0x409 - .equiv FLAG_0x40A, 0x40A - .equiv FLAG_0x40B, 0x40B - .equiv FLAG_0x40C, 0x40C - .equiv FLAG_0x40D, 0x40D - .equiv FLAG_0x40E, 0x40E - .equiv FLAG_0x40F, 0x40F - .equiv FLAG_0x410, 0x410 - .equiv FLAG_0x411, 0x411 - .equiv FLAG_0x412, 0x412 - .equiv FLAG_0x413, 0x413 - .equiv FLAG_0x414, 0x414 - .equiv FLAG_0x415, 0x415 - .equiv FLAG_0x416, 0x416 - .equiv FLAG_0x417, 0x417 - .equiv FLAG_0x418, 0x418 - .equiv FLAG_0x419, 0x419 - .equiv FLAG_0x41A, 0x41A - .equiv FLAG_0x41B, 0x41B - .equiv FLAG_0x41C, 0x41C - .equiv FLAG_0x41D, 0x41D - .equiv FLAG_0x41E, 0x41E - .equiv FLAG_0x41F, 0x41F - .equiv FLAG_0x420, 0x420 - .equiv FLAG_0x421, 0x421 - .equiv FLAG_0x422, 0x422 - .equiv FLAG_0x423, 0x423 - .equiv FLAG_0x424, 0x424 - .equiv FLAG_0x425, 0x425 - .equiv FLAG_0x426, 0x426 - .equiv FLAG_0x427, 0x427 - .equiv FLAG_0x428, 0x428 - .equiv FLAG_0x429, 0x429 - .equiv FLAG_0x42A, 0x42A - .equiv FLAG_0x42B, 0x42B - .equiv FLAG_0x42C, 0x42C - .equiv FLAG_0x42D, 0x42D - .equiv FLAG_0x42E, 0x42E - .equiv FLAG_0x42F, 0x42F - .equiv FLAG_0x430, 0x430 - .equiv FLAG_0x431, 0x431 - .equiv FLAG_0x432, 0x432 - .equiv FLAG_0x433, 0x433 - .equiv FLAG_0x434, 0x434 - .equiv FLAG_0x435, 0x435 - .equiv FLAG_0x436, 0x436 - .equiv FLAG_0x437, 0x437 - .equiv FLAG_0x438, 0x438 - .equiv FLAG_0x439, 0x439 - .equiv FLAG_0x43A, 0x43A - .equiv FLAG_0x43B, 0x43B - .equiv FLAG_0x43C, 0x43C - .equiv FLAG_0x43D, 0x43D - .equiv FLAG_0x43E, 0x43E - .equiv FLAG_0x43F, 0x43F - .equiv FLAG_0x440, 0x440 - .equiv FLAG_0x441, 0x441 - .equiv FLAG_0x442, 0x442 - .equiv FLAG_0x443, 0x443 - .equiv FLAG_0x444, 0x444 - .equiv FLAG_0x445, 0x445 - .equiv FLAG_0x446, 0x446 - .equiv FLAG_0x447, 0x447 - .equiv FLAG_0x448, 0x448 - .equiv FLAG_0x449, 0x449 - .equiv FLAG_0x44A, 0x44A - .equiv FLAG_0x44B, 0x44B - .equiv FLAG_0x44C, 0x44C - .equiv FLAG_0x44D, 0x44D - .equiv FLAG_0x44E, 0x44E - .equiv FLAG_0x44F, 0x44F - .equiv FLAG_0x450, 0x450 - .equiv FLAG_0x451, 0x451 - .equiv FLAG_0x452, 0x452 - .equiv FLAG_0x453, 0x453 - .equiv FLAG_0x454, 0x454 - .equiv FLAG_0x455, 0x455 - .equiv FLAG_0x456, 0x456 - .equiv FLAG_0x457, 0x457 - .equiv FLAG_0x458, 0x458 - .equiv FLAG_0x459, 0x459 - .equiv FLAG_0x45A, 0x45A - .equiv FLAG_0x45B, 0x45B - .equiv FLAG_0x45C, 0x45C - .equiv FLAG_0x45D, 0x45D - .equiv FLAG_0x45E, 0x45E - .equiv FLAG_0x45F, 0x45F - .equiv FLAG_0x460, 0x460 - .equiv FLAG_0x461, 0x461 - .equiv FLAG_0x462, 0x462 - .equiv FLAG_0x463, 0x463 - .equiv FLAG_0x464, 0x464 - .equiv FLAG_0x465, 0x465 - .equiv FLAG_0x466, 0x466 - .equiv FLAG_0x467, 0x467 - .equiv FLAG_0x468, 0x468 - .equiv FLAG_0x469, 0x469 - .equiv FLAG_0x46A, 0x46A - .equiv FLAG_0x46B, 0x46B - .equiv FLAG_0x46C, 0x46C - .equiv FLAG_0x46D, 0x46D - .equiv FLAG_0x46E, 0x46E - .equiv FLAG_0x46F, 0x46F - .equiv FLAG_0x470, 0x470 - .equiv FLAG_0x471, 0x471 - .equiv FLAG_0x472, 0x472 - .equiv FLAG_0x473, 0x473 - .equiv FLAG_0x474, 0x474 - .equiv FLAG_0x475, 0x475 - .equiv FLAG_0x476, 0x476 - .equiv FLAG_0x477, 0x477 - .equiv FLAG_0x478, 0x478 - .equiv FLAG_0x479, 0x479 - .equiv FLAG_0x47A, 0x47A - .equiv FLAG_0x47B, 0x47B - .equiv FLAG_0x47C, 0x47C - .equiv FLAG_0x47D, 0x47D - .equiv FLAG_0x47E, 0x47E - .equiv FLAG_0x47F, 0x47F - .equiv FLAG_0x480, 0x480 - .equiv FLAG_0x481, 0x481 - .equiv FLAG_0x482, 0x482 - .equiv FLAG_0x483, 0x483 - .equiv FLAG_0x484, 0x484 - .equiv FLAG_0x485, 0x485 - .equiv FLAG_0x486, 0x486 - .equiv FLAG_0x487, 0x487 - .equiv FLAG_0x488, 0x488 - .equiv FLAG_0x489, 0x489 - .equiv FLAG_0x48A, 0x48A - .equiv FLAG_0x48B, 0x48B - .equiv FLAG_0x48C, 0x48C - .equiv FLAG_0x48D, 0x48D - .equiv FLAG_0x48E, 0x48E - .equiv FLAG_0x48F, 0x48F - .equiv FLAG_0x490, 0x490 - .equiv FLAG_0x491, 0x491 - .equiv FLAG_0x492, 0x492 - .equiv FLAG_0x493, 0x493 - .equiv FLAG_0x494, 0x494 - .equiv FLAG_0x495, 0x495 - .equiv FLAG_0x496, 0x496 - .equiv FLAG_0x497, 0x497 - .equiv FLAG_0x498, 0x498 - .equiv FLAG_0x499, 0x499 - .equiv FLAG_0x49A, 0x49A - .equiv FLAG_0x49B, 0x49B - .equiv FLAG_0x49C, 0x49C - .equiv FLAG_0x49D, 0x49D - .equiv FLAG_0x49E, 0x49E - .equiv FLAG_0x49F, 0x49F - .equiv FLAG_0x4A0, 0x4A0 - .equiv FLAG_0x4A1, 0x4A1 - .equiv FLAG_0x4A2, 0x4A2 - .equiv FLAG_0x4A3, 0x4A3 - .equiv FLAG_0x4A4, 0x4A4 - .equiv FLAG_0x4A5, 0x4A5 - .equiv FLAG_0x4A6, 0x4A6 - .equiv FLAG_0x4A7, 0x4A7 - .equiv FLAG_0x4A8, 0x4A8 - .equiv FLAG_0x4A9, 0x4A9 - .equiv FLAG_0x4AA, 0x4AA - .equiv FLAG_0x4AB, 0x4AB - .equiv FLAG_0x4AC, 0x4AC - .equiv FLAG_0x4AD, 0x4AD - .equiv FLAG_0x4AE, 0x4AE - .equiv FLAG_0x4AF, 0x4AF - .equiv FLAG_0x4B0, 0x4B0 - .equiv FLAG_0x4B1, 0x4B1 - .equiv FLAG_0x4B2, 0x4B2 - .equiv FLAG_0x4B3, 0x4B3 - .equiv FLAG_0x4B4, 0x4B4 - .equiv FLAG_0x4B5, 0x4B5 - .equiv FLAG_0x4B6, 0x4B6 - .equiv FLAG_0x4B7, 0x4B7 - .equiv FLAG_0x4B8, 0x4B8 - .equiv FLAG_0x4B9, 0x4B9 - .equiv FLAG_0x4BA, 0x4BA - .equiv FLAG_0x4BB, 0x4BB - .equiv FLAG_0x4BC, 0x4BC - .equiv FLAG_0x4BD, 0x4BD - .equiv FLAG_0x4BE, 0x4BE - .equiv FLAG_0x4BF, 0x4BF - .equiv FLAG_0x4C0, 0x4C0 - .equiv FLAG_0x4C1, 0x4C1 - .equiv FLAG_0x4C2, 0x4C2 - .equiv FLAG_0x4C3, 0x4C3 - .equiv FLAG_0x4C4, 0x4C4 - .equiv FLAG_0x4C5, 0x4C5 - .equiv FLAG_0x4C6, 0x4C6 - .equiv FLAG_0x4C7, 0x4C7 - .equiv FLAG_0x4C8, 0x4C8 - .equiv FLAG_0x4C9, 0x4C9 - .equiv FLAG_0x4CA, 0x4CA - .equiv FLAG_0x4CB, 0x4CB - .equiv FLAG_0x4CC, 0x4CC - .equiv FLAG_0x4CD, 0x4CD - .equiv FLAG_0x4CE, 0x4CE - .equiv FLAG_0x4CF, 0x4CF - .equiv FLAG_0x4D0, 0x4D0 - .equiv FLAG_0x4D1, 0x4D1 - .equiv FLAG_0x4D2, 0x4D2 - .equiv FLAG_0x4D3, 0x4D3 - .equiv FLAG_0x4D4, 0x4D4 - .equiv FLAG_0x4D5, 0x4D5 - .equiv FLAG_0x4D6, 0x4D6 - .equiv FLAG_0x4D7, 0x4D7 - .equiv FLAG_0x4D8, 0x4D8 - .equiv FLAG_0x4D9, 0x4D9 - .equiv FLAG_0x4DA, 0x4DA - .equiv FLAG_0x4DB, 0x4DB - .equiv FLAG_0x4DC, 0x4DC - .equiv FLAG_0x4DD, 0x4DD - .equiv FLAG_0x4DE, 0x4DE - .equiv FLAG_0x4DF, 0x4DF - .equiv FLAG_0x4E0, 0x4E0 - .equiv FLAG_0x4E1, 0x4E1 - .equiv FLAG_0x4E2, 0x4E2 - .equiv FLAG_0x4E3, 0x4E3 - .equiv FLAG_0x4E4, 0x4E4 - .equiv FLAG_0x4E5, 0x4E5 - .equiv FLAG_0x4E6, 0x4E6 - .equiv FLAG_0x4E7, 0x4E7 - .equiv FLAG_0x4E8, 0x4E8 - .equiv FLAG_0x4E9, 0x4E9 - .equiv FLAG_0x4EA, 0x4EA - .equiv FLAG_0x4EB, 0x4EB - .equiv FLAG_0x4EC, 0x4EC - .equiv FLAG_0x4ED, 0x4ED - .equiv FLAG_0x4EE, 0x4EE - .equiv FLAG_0x4EF, 0x4EF - .equiv FLAG_0x4F0, 0x4F0 - .equiv FLAG_0x4F1, 0x4F1 - .equiv FLAG_0x4F2, 0x4F2 - .equiv FLAG_0x4F3, 0x4F3 - .equiv FLAG_0x4F4, 0x4F4 - .equiv FLAG_0x4F5, 0x4F5 - .equiv FLAG_0x4F6, 0x4F6 - .equiv FLAG_0x4F7, 0x4F7 - .equiv FLAG_0x4F8, 0x4F8 - .equiv FLAG_0x4F9, 0x4F9 - .equiv FLAG_0x4FA, 0x4FA - .equiv FLAG_0x4FB, 0x4FB - .equiv FLAG_0x4FC, 0x4FC - .equiv FLAG_0x4FD, 0x4FD - .equiv FLAG_0x4FE, 0x4FE - .equiv FLAG_0x4FF, 0x4FF - .equiv FLAG_TRAINER_FLAG_START, 0x500 - - .equiv TRAINERS_FLAG_NO, 0x356 - .equiv CODE_FLAGS, (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) @ 0x860 - -@ SYSTEM FLAGS - - .equiv FLAG_SYS_POKEMON_GET, CODE_FLAGS + 0x0 - .equiv FLAG_SYS_POKEDEX_GET, CODE_FLAGS + 0x1 - .equiv FLAG_SYS_POKENAV_GET, CODE_FLAGS + 0x2 - .equiv FLAG_0x863, CODE_FLAGS + 0x3 - .equiv FLAG_SYS_GAME_CLEAR, CODE_FLAGS + 0x4 - .equiv FLAG_SYS_CHAT_USED, CODE_FLAGS + 0x5 - .equiv FLAG_SYS_HIPSTER_MEET, CODE_FLAGS + 0x6 - -@ badges - .equiv FLAG_BADGE01_GET, CODE_FLAGS + 0x7 - .equiv FLAG_BADGE02_GET, CODE_FLAGS + 0x8 - .equiv FLAG_BADGE03_GET, CODE_FLAGS + 0x9 - .equiv FLAG_BADGE04_GET, CODE_FLAGS + 0xA - .equiv FLAG_BADGE05_GET, CODE_FLAGS + 0xB - .equiv FLAG_BADGE06_GET, CODE_FLAGS + 0xC - .equiv FLAG_BADGE07_GET, CODE_FLAGS + 0xD - .equiv FLAG_BADGE08_GET, CODE_FLAGS + 0xE - -@ cities and towns - .equiv FLAG_VISITED_LITTLEROOT_TOWN, CODE_FLAGS + 0xF - .equiv FLAG_VISITED_OLDALE_TOWN, CODE_FLAGS + 0x10 - .equiv FLAG_VISITED_DEWFORD_TOWN, CODE_FLAGS + 0x11 - .equiv FLAG_VISITED_LAVARIDGE_TOWN, CODE_FLAGS + 0x12 - .equiv FLAG_VISITED_FALLARBOR_TOWN, CODE_FLAGS + 0x13 - .equiv FLAG_VISITED_VERDANTURF_TOWN, CODE_FLAGS + 0x14 - .equiv FLAG_VISITED_PACIFIDLOG_TOWN, CODE_FLAGS + 0x15 - .equiv FLAG_VISITED_PETALBURG_CITY, CODE_FLAGS + 0x16 - .equiv FLAG_VISITED_SLATEPORT_CITY, CODE_FLAGS + 0x17 - .equiv FLAG_VISITED_MAUVILLE_CITY, CODE_FLAGS + 0x18 - .equiv FLAG_VISITED_RUSTBORO_CITY, CODE_FLAGS + 0x19 - .equiv FLAG_VISITED_FORTREE_CITY, CODE_FLAGS + 0x1A - .equiv FLAG_VISITED_LILYCOVE_CITY, CODE_FLAGS + 0x1B - .equiv FLAG_VISITED_MOSSDEEP_CITY, CODE_FLAGS + 0x1C - .equiv FLAG_VISITED_SOOTOPOLIS_CITY, CODE_FLAGS + 0x1D - .equiv FLAG_VISITED_EVER_GRANDE_CITY, CODE_FLAGS + 0x1E - - .equiv FLAG_0x87F, CODE_FLAGS + 0x1F - .equiv FLAG_0x880, CODE_FLAGS + 0x20 - .equiv FLAG_0x881, CODE_FLAGS + 0x21 - .equiv FLAG_0x882, CODE_FLAGS + 0x22 - .equiv FLAG_0x883, CODE_FLAGS + 0x23 - .equiv FLAG_0x884, CODE_FLAGS + 0x24 - .equiv FLAG_0x885, CODE_FLAGS + 0x25 - .equiv FLAG_0x886, CODE_FLAGS + 0x26 - .equiv FLAG_0x887, CODE_FLAGS + 0x27 - - .equiv FLAG_SYS_USE_FLASH, CODE_FLAGS + 0x28 - .equiv FLAG_SYS_USE_STRENGTH, CODE_FLAGS + 0x29 - .equiv FLAG_SYS_WEATHER_CTRL, CODE_FLAGS + 0x2A - .equiv FLAG_SYS_CYCLING_ROAD, CODE_FLAGS + 0x2B - .equiv FLAG_SYS_SAFARI_MODE, CODE_FLAGS + 0x2C - .equiv FLAG_SYS_CRUISE_MODE, CODE_FLAGS + 0x2D - - .equiv FLAG_0x88E, CODE_FLAGS + 0x2E - .equiv FLAG_0x88F, CODE_FLAGS + 0x2F - - .equiv FLAG_SYS_TV_HOME, CODE_FLAGS + 0x30 - .equiv FLAG_SYS_TV_WATCH, CODE_FLAGS + 0x31 - .equiv FLAG_SYS_TV_START, CODE_FLAGS + 0x32 - .equiv FLAG_SYS_POPWORD_INPUT, CODE_FLAGS + 0x33 - .equiv FLAG_SYS_MIX_RECORD, CODE_FLAGS + 0x34 - .equiv FLAG_SYS_CLOCK_SET, CODE_FLAGS + 0x35 - .equiv FLAG_SYS_NATIONAL_DEX, CODE_FLAGS + 0x36 - .equiv FLAG_SYS_CAVE_SHIP, CODE_FLAGS + 0x37 - .equiv FLAG_SYS_CAVE_WONDER, CODE_FLAGS + 0x38 - .equiv FLAG_SYS_CAVE_BATTLE, CODE_FLAGS + 0x39 - .equiv FLAG_SYS_SHOAL_TIDE, CODE_FLAGS + 0x3A - .equiv FLAG_SYS_RIBBON_GET, CODE_FLAGS + 0x3B - - .equiv FLAG_0x89C, CODE_FLAGS + 0x3C - .equiv FLAG_0x89D, CODE_FLAGS + 0x3D - .equiv FLAG_0x89E, CODE_FLAGS + 0x3E - .equiv FLAG_0x89F, CODE_FLAGS + 0x3F - .equiv FLAG_0x8A0, CODE_FLAGS + 0x40 - .equiv FLAG_0x8A1, CODE_FLAGS + 0x41 - .equiv FLAG_0x8A2, CODE_FLAGS + 0x42 - .equiv FLAG_0x8A3, CODE_FLAGS + 0x43 - .equiv FLAG_0x8A4, CODE_FLAGS + 0x44 - .equiv FLAG_0x8A5, CODE_FLAGS + 0x45 - .equiv FLAG_0x8A6, CODE_FLAGS + 0x46 - .equiv FLAG_0x8A7, CODE_FLAGS + 0x47 - .equiv FLAG_UNLOCK_BATTLE_FRONTIER, CODE_FLAGS + 0x48 - .equiv FLAG_UNLOCK_SOUTHERN_ISLAND, CODE_FLAGS + 0x49 - .equiv FLAG_0x8AA, CODE_FLAGS + 0x4A - - .equiv FLAG_SYS_PC_LANETTE, CODE_FLAGS + 0x4B - .equiv FLAG_SYS_MYSTERY_EVENT_ENABLE, CODE_FLAGS + 0x4C - .equiv FLAG_SYS_ENC_UP_ITEM, CODE_FLAGS + 0x4D - .equiv FLAG_SYS_ENC_DOWN_ITEM, CODE_FLAGS + 0x4E - - .equiv FLAG_SYS_BRAILLE_DIG, CODE_FLAGS + 0x4F - .equiv FLAG_SYS_BRAILLE_STRENGTH, CODE_FLAGS + 0x50 - .equiv FLAG_SYS_BRAILLE_WAIT, CODE_FLAGS + 0x51 - .equiv FLAG_SYS_BRAILLE_FLY, CODE_FLAGS + 0x52 - - .equiv FLAG_SYS_HAS_EON_TICKET, CODE_FLAGS + 0x53 - - .equiv FLAG_SYS_POKEMON_LEAGUE_FLY, CODE_FLAGS + 0x54 - - .equiv FLAG_0x8B5, CODE_FLAGS + 0x55 - .equiv FLAG_0x8B6, CODE_FLAGS + 0x56 - .equiv FLAG_0x8B7, CODE_FLAGS + 0x57 - .equiv FLAG_0x8B8, CODE_FLAGS + 0x58 - .equiv FLAG_0x8B9, CODE_FLAGS + 0x59 - .equiv FLAG_0x8BA, CODE_FLAGS + 0x5A - .equiv FLAG_0x8BB, CODE_FLAGS + 0x5B - .equiv FLAG_0x8BC, CODE_FLAGS + 0x5C - - .equiv FLAG_SYS_TV_LATI, CODE_FLAGS + 0x5D - - .equiv FLAG_0x8BE, CODE_FLAGS + 0x5E - - .equiv FLAG_SYS_SHOAL_ITEM, CODE_FLAGS + 0x5F - .equiv FLAG_SYS_B_DASH, CODE_FLAGS + 0x60 @ got Running Shoes - .equiv FLAG_SYS_CTRL_OBJ_DELETE, CODE_FLAGS + 0x61 - .equiv FLAG_SYS_RESET_RTC_ENABLE, CODE_FLAGS + 0x62 - - .equiv FLAG_0x8C3, CODE_FLAGS + 0x63 - - .equiv FLAG_SYS_TOWER_SILVER, CODE_FLAGS + 0x64 - .equiv FLAG_SYS_TOWER_GOLD, CODE_FLAGS + 0x65 - .equiv FLAG_SYS_DOME_SILVER, CODE_FLAGS + 0x66 - .equiv FLAG_SYS_DOME_GOLD, CODE_FLAGS + 0x67 - .equiv FLAG_SYS_PALACE_SILVER, CODE_FLAGS + 0x68 - .equiv FLAG_SYS_PALACE_GOLD, CODE_FLAGS + 0x69 - .equiv FLAG_SYS_ARENA_SILVER, CODE_FLAGS + 0x6A - .equiv FLAG_SYS_ARENA_GOLD, CODE_FLAGS + 0x6B - .equiv FLAG_SYS_FACTORY_SILVER, CODE_FLAGS + 0x6C - .equiv FLAG_SYS_FACTORY_GOLD, CODE_FLAGS + 0x6D - .equiv FLAG_SYS_PIKE_SILVER, CODE_FLAGS + 0x6E - .equiv FLAG_SYS_PIKE_GOLD, CODE_FLAGS + 0x6F - .equiv FLAG_SYS_PYRAMID_SILVER, CODE_FLAGS + 0x70 - .equiv FLAG_SYS_PYRAMID_GOLD, CODE_FLAGS + 0x71 - .equiv FLAG_SYS_FRONTIER_PASS, CODE_FLAGS + 0x72 - - .equiv FLAG_0x8D3, CODE_FLAGS + 0x73 - .equiv FLAG_0x8D4, CODE_FLAGS + 0x74 - .equiv FLAG_0x8D5, CODE_FLAGS + 0x75 - .equiv FLAG_0x8D6, CODE_FLAGS + 0x76 - - .equiv FLAG_SYS_STORAGE_UNKNOWN_FLAG, CODE_FLAGS + 0x77 - - .equiv FLAG_0x8D8, CODE_FLAGS + 0x78 - .equiv FLAG_0x8D9, CODE_FLAGS + 0x79 - .equiv FLAG_0x8DA, CODE_FLAGS + 0x7A - - .equiv FLAG_SYS_MYSTERY_GIFT_ENABLE, CODE_FLAGS + 0x7B - - .equiv FLAG_0x8DC, CODE_FLAGS + 0x7C - .equiv FLAG_0x8DD, CODE_FLAGS + 0x7D - .equiv FLAG_0x8DE, CODE_FLAGS + 0x7E - .equiv FLAG_0x8DF, CODE_FLAGS + 0x7F - .equiv FLAG_0x8E0, CODE_FLAGS + 0x80 - .equiv FLAG_0x8E1, CODE_FLAGS + 0x81 - .equiv FLAG_0x8E2, CODE_FLAGS + 0x82 - .equiv FLAG_0x8E3, CODE_FLAGS + 0x83 - .equiv FLAG_0x8E4, CODE_FLAGS + 0x84 - .equiv FLAG_0x8E5, CODE_FLAGS + 0x85 - .equiv FLAG_0x8E6, CODE_FLAGS + 0x86 - .equiv FLAG_0x8E7, CODE_FLAGS + 0x87 - .equiv FLAG_0x8E8, CODE_FLAGS + 0x88 - .equiv FLAG_0x8E9, CODE_FLAGS + 0x89 - .equiv FLAG_0x8EA, CODE_FLAGS + 0x8A - .equiv FLAG_0x8EB, CODE_FLAGS + 0x8B - .equiv FLAG_0x8EC, CODE_FLAGS + 0x8C - .equiv FLAG_0x8ED, CODE_FLAGS + 0x8D - .equiv FLAG_0x8EE, CODE_FLAGS + 0x8E - .equiv FLAG_0x8EF, CODE_FLAGS + 0x8F - .equiv FLAG_0x8F0, CODE_FLAGS + 0x90 - .equiv FLAG_0x8F1, CODE_FLAGS + 0x91 - .equiv FLAG_0x8F2, CODE_FLAGS + 0x92 - .equiv FLAG_0x8F3, CODE_FLAGS + 0x93 - .equiv FLAG_0x8F4, CODE_FLAGS + 0x94 - .equiv FLAG_0x8F5, CODE_FLAGS + 0x95 - .equiv FLAG_0x8F6, CODE_FLAGS + 0x96 - .equiv FLAG_0x8F7, CODE_FLAGS + 0x97 - .equiv FLAG_0x8F8, CODE_FLAGS + 0x98 - .equiv FLAG_0x8F9, CODE_FLAGS + 0x99 - .equiv FLAG_0x8FA, CODE_FLAGS + 0x9A - .equiv FLAG_0x8FB, CODE_FLAGS + 0x9B - .equiv FLAG_0x8FC, CODE_FLAGS + 0x9C - .equiv FLAG_0x8FD, CODE_FLAGS + 0x9D - .equiv FLAG_0x8FE, CODE_FLAGS + 0x9E - .equiv FLAG_0x8FF, CODE_FLAGS + 0x9F - .equiv FLAG_0x900, CODE_FLAGS + 0xA0 - .equiv FLAG_0x901, CODE_FLAGS + 0xA1 - .equiv FLAG_0x902, CODE_FLAGS + 0xA2 - .equiv FLAG_0x903, CODE_FLAGS + 0xA3 - .equiv FLAG_0x904, CODE_FLAGS + 0xA4 - .equiv FLAG_0x905, CODE_FLAGS + 0xA5 - .equiv FLAG_0x906, CODE_FLAGS + 0xA6 - .equiv FLAG_0x907, CODE_FLAGS + 0xA7 - .equiv FLAG_0x908, CODE_FLAGS + 0xA8 - .equiv FLAG_0x909, CODE_FLAGS + 0xA9 - .equiv FLAG_0x90A, CODE_FLAGS + 0xAA - .equiv FLAG_0x90B, CODE_FLAGS + 0xAB - .equiv FLAG_0x90C, CODE_FLAGS + 0xAC - .equiv FLAG_0x90D, CODE_FLAGS + 0xAD - .equiv FLAG_0x90E, CODE_FLAGS + 0xAE - .equiv FLAG_0x90F, CODE_FLAGS + 0xAF - .equiv FLAG_0x910, CODE_FLAGS + 0xB0 - .equiv FLAG_0x911, CODE_FLAGS + 0xB1 - .equiv FLAG_0x912, CODE_FLAGS + 0xB2 - .equiv FLAG_0x913, CODE_FLAGS + 0xB3 - .equiv FLAG_0x914, CODE_FLAGS + 0xB4 - .equiv FLAG_0x915, CODE_FLAGS + 0xB5 - .equiv FLAG_0x916, CODE_FLAGS + 0xB6 - .equiv FLAG_0x917, CODE_FLAGS + 0xB7 - .equiv FLAG_0x918, CODE_FLAGS + 0xB8 - .equiv FLAG_0x919, CODE_FLAGS + 0xB9 - .equiv FLAG_0x91A, CODE_FLAGS + 0xBA - .equiv FLAG_0x91B, CODE_FLAGS + 0xBB - .equiv FLAG_0x91C, CODE_FLAGS + 0xBC - .equiv FLAG_0x91D, CODE_FLAGS + 0xBD - .equiv FLAG_0x91E, CODE_FLAGS + 0xBE - .equiv FLAG_0x91F, CODE_FLAGS + 0xBF - .equiv FLAG_0x920, CODE_FLAGS + 0xC0 - .equiv FLAG_0x921, CODE_FLAGS + 0xC1 - .equiv FLAG_0x922, CODE_FLAGS + 0xC2 - .equiv FLAG_0x923, CODE_FLAGS + 0xC3 - .equiv FLAG_0x924, CODE_FLAGS + 0xC4 - .equiv FLAG_0x925, CODE_FLAGS + 0xC5 - .equiv FLAG_0x926, CODE_FLAGS + 0xC6 - .equiv FLAG_0x927, CODE_FLAGS + 0xC7 - .equiv FLAG_0x928, CODE_FLAGS + 0xC8 - .equiv FLAG_0x929, CODE_FLAGS + 0xC9 - .equiv FLAG_0x92A, CODE_FLAGS + 0xCA - .equiv FLAG_0x92B, CODE_FLAGS + 0xCB - .equiv FLAG_0x92C, CODE_FLAGS + 0xCC - .equiv FLAG_0x92D, CODE_FLAGS + 0xCD - .equiv FLAG_0x92E, CODE_FLAGS + 0xCE - .equiv FLAG_0x92F, CODE_FLAGS + 0xCF - .equiv FLAG_0x930, CODE_FLAGS + 0xD0 - .equiv FLAG_0x931, CODE_FLAGS + 0xD1 - .equiv FLAG_0x932, CODE_FLAGS + 0xD2 - .equiv FLAG_0x933, CODE_FLAGS + 0xD3 - .equiv FLAG_0x934, CODE_FLAGS + 0xD4 - .equiv FLAG_0x935, CODE_FLAGS + 0xD5 - .equiv FLAG_0x936, CODE_FLAGS + 0xD6 - .equiv FLAG_0x937, CODE_FLAGS + 0xD7 - .equiv FLAG_0x938, CODE_FLAGS + 0xD8 - .equiv FLAG_0x939, CODE_FLAGS + 0xD9 - .equiv FLAG_0x93A, CODE_FLAGS + 0xDA - .equiv FLAG_0x93B, CODE_FLAGS + 0xDB - .equiv FLAG_0x93C, CODE_FLAGS + 0xDC - .equiv FLAG_0x93D, CODE_FLAGS + 0xDD - .equiv FLAG_0x93E, CODE_FLAGS + 0xDE - .equiv FLAG_0x93F, CODE_FLAGS + 0xDF - .equiv FLAG_0x940, CODE_FLAGS + 0xE0 - .equiv FLAG_0x941, CODE_FLAGS + 0xE1 - .equiv FLAG_0x942, CODE_FLAGS + 0xE2 - .equiv FLAG_0x943, CODE_FLAGS + 0xE3 - .equiv FLAG_0x944, CODE_FLAGS + 0xE4 - .equiv FLAG_0x945, CODE_FLAGS + 0xE5 - .equiv FLAG_0x946, CODE_FLAGS + 0xE6 - .equiv FLAG_0x947, CODE_FLAGS + 0xE7 - .equiv FLAG_0x948, CODE_FLAGS + 0xE8 - .equiv FLAG_0x949, CODE_FLAGS + 0xE9 - .equiv FLAG_0x94A, CODE_FLAGS + 0xEA - .equiv FLAG_0x94B, CODE_FLAGS + 0xEB - .equiv FLAG_0x94C, CODE_FLAGS + 0xEC - .equiv FLAG_0x94D, CODE_FLAGS + 0xED - .equiv FLAG_0x94E, CODE_FLAGS + 0xEE - .equiv FLAG_0x94F, CODE_FLAGS + 0xEF - .equiv FLAG_0x950, CODE_FLAGS + 0xF0 - .equiv FLAG_0x951, CODE_FLAGS + 0xF1 - .equiv FLAG_0x952, CODE_FLAGS + 0xF2 - .equiv FLAG_0x953, CODE_FLAGS + 0xF3 - .equiv FLAG_0x954, CODE_FLAGS + 0xF4 - .equiv FLAG_0x955, CODE_FLAGS + 0xF5 - .equiv FLAG_0x956, CODE_FLAGS + 0xF6 - .equiv FLAG_0x957, CODE_FLAGS + 0xF7 - .equiv FLAG_0x958, CODE_FLAGS + 0xF8 - .equiv FLAG_0x959, CODE_FLAGS + 0xF9 - .equiv FLAG_0x95A, CODE_FLAGS + 0xFA - .equiv FLAG_0x95B, CODE_FLAGS + 0xFB - .equiv FLAG_0x95C, CODE_FLAGS + 0xFC - .equiv FLAG_0x95D, CODE_FLAGS + 0xFD - .equiv FLAG_0x95E, CODE_FLAGS + 0xFE - .equiv FLAG_0x95F, CODE_FLAGS + 0xFF - -@ SPECIAL FLAGS (unknown purpose) - - .equiv FLAG_SPECIAL_FLAG_0x4000, 0x4000 - .equiv FLAG_SPECIAL_FLAG_0x4001, 0x4001 - .equiv FLAG_SPECIAL_FLAG_0x4002, 0x4002 - .equiv FLAG_SPECIAL_FLAG_0x4003, 0x4003 - .equiv FLAG_SPECIAL_FLAG_0x4004, 0x4004 diff --git a/constants/item_constants.inc b/constants/item_constants.inc deleted file mode 100644 index 934ebd798..000000000 --- a/constants/item_constants.inc +++ /dev/null @@ -1,310 +0,0 @@ - .set ITEM_NONE, 0x000 - .set ITEM_MASTER_BALL, 0x001 - .set ITEM_ULTRA_BALL, 0x002 - .set ITEM_GREAT_BALL, 0x003 - .set ITEM_POKE_BALL, 0x004 - .set ITEM_SAFARI_BALL, 0x005 - .set ITEM_NET_BALL, 0x006 - .set ITEM_DIVE_BALL, 0x007 - .set ITEM_NEST_BALL, 0x008 - .set ITEM_REPEAT_BALL, 0x009 - .set ITEM_TIMER_BALL, 0x00a - .set ITEM_LUXURY_BALL, 0x00b - .set ITEM_PREMIER_BALL, 0x00c - .set ITEM_POTION, 0x00d - .set ITEM_ANTIDOTE, 0x00e - .set ITEM_BURN_HEAL, 0x00f - .set ITEM_ICE_HEAL, 0x010 - .set ITEM_AWAKENING, 0x011 - .set ITEM_PARALYZE_HEAL, 0x012 - .set ITEM_FULL_RESTORE, 0x013 - .set ITEM_MAX_POTION, 0x014 - .set ITEM_HYPER_POTION, 0x015 - .set ITEM_SUPER_POTION, 0x016 - .set ITEM_FULL_HEAL, 0x017 - .set ITEM_REVIVE, 0x018 - .set ITEM_MAX_REVIVE, 0x019 - .set ITEM_FRESH_WATER, 0x01a - .set ITEM_SODA_POP, 0x01b - .set ITEM_LEMONADE, 0x01c - .set ITEM_MOOMOO_MILK, 0x01d - .set ITEM_ENERGY_POWDER, 0x01e - .set ITEM_ENERGY_ROOT, 0x01f - .set ITEM_HEAL_POWDER, 0x020 - .set ITEM_REVIVAL_HERB, 0x021 - .set ITEM_ETHER, 0x022 - .set ITEM_MAX_ETHER, 0x023 - .set ITEM_ELIXIR, 0x024 - .set ITEM_MAX_ELIXIR, 0x025 - .set ITEM_LAVA_COOKIE, 0x026 - .set ITEM_BLUE_FLUTE, 0x027 - .set ITEM_YELLOW_FLUTE, 0x028 - .set ITEM_RED_FLUTE, 0x029 - .set ITEM_BLACK_FLUTE, 0x02a - .set ITEM_WHITE_FLUTE, 0x02b - .set ITEM_BERRY_JUICE, 0x02c - .set ITEM_SACRED_ASH, 0x02d - .set ITEM_SHOAL_SALT, 0x02e - .set ITEM_SHOAL_SHELL, 0x02f - .set ITEM_RED_SHARD, 0x030 - .set ITEM_BLUE_SHARD, 0x031 - .set ITEM_YELLOW_SHARD, 0x032 - .set ITEM_GREEN_SHARD, 0x033 - .set ITEM_HP_UP, 0x03f - .set ITEM_PROTEIN, 0x040 - .set ITEM_IRON, 0x041 - .set ITEM_CARBOS, 0x042 - .set ITEM_CALCIUM, 0x043 - .set ITEM_RARE_CANDY, 0x044 - .set ITEM_PP_UP, 0x045 - .set ITEM_ZINC, 0x046 - .set ITEM_PP_MAX, 0x047 - .set ITEM_GUARD_SPEC, 0x049 - .set ITEM_DIRE_HIT, 0x04a - .set ITEM_X_ATTACK, 0x04b - .set ITEM_X_DEFEND, 0x04c - .set ITEM_X_SPEED, 0x04d - .set ITEM_X_ACCURACY, 0x04e - .set ITEM_X_SPECIAL, 0x04f - .set ITEM_POKE_DOLL, 0x050 - .set ITEM_FLUFFY_TAIL, 0x051 - .set ITEM_SUPER_REPEL, 0x053 - .set ITEM_MAX_REPEL, 0x054 - .set ITEM_ESCAPE_ROPE, 0x055 - .set ITEM_REPEL, 0x056 - .set ITEM_SUN_STONE, 0x05d - .set ITEM_MOON_STONE, 0x05e - .set ITEM_FIRE_STONE, 0x05f - .set ITEM_THUNDER_STONE, 0x060 - .set ITEM_WATER_STONE, 0x061 - .set ITEM_LEAF_STONE, 0x062 - .set ITEM_TINY_MUSHROOM, 0x067 - .set ITEM_BIG_MUSHROOM, 0x068 - .set ITEM_PEARL, 0x06a - .set ITEM_BIG_PEARL, 0x06b - .set ITEM_STARDUST, 0x06c - .set ITEM_STAR_PIECE, 0x06d - .set ITEM_NUGGET, 0x06e - .set ITEM_HEART_SCALE, 0x06f - .set ITEM_ORANGE_MAIL, 0x079 - .set ITEM_HARBOR_MAIL, 0x07a - .set ITEM_GLITTER_MAIL, 0x07b - .set ITEM_MECH_MAIL, 0x07c - .set ITEM_WOOD_MAIL, 0x07d - .set ITEM_WAVE_MAIL, 0x07e - .set ITEM_BEAD_MAIL, 0x07f - .set ITEM_SHADOW_MAIL, 0x080 - .set ITEM_TROPIC_MAIL, 0x081 - .set ITEM_DREAM_MAIL, 0x082 - .set ITEM_FAB_MAIL, 0x083 - .set ITEM_RETRO_MAIL, 0x084 - .set ITEM_CHERI_BERRY, 0x085 - .set ITEM_CHESTO_BERRY, 0x086 - .set ITEM_PECHA_BERRY, 0x087 - .set ITEM_RAWST_BERRY, 0x088 - .set ITEM_ASPEAR_BERRY, 0x089 - .set ITEM_LEPPA_BERRY, 0x08a - .set ITEM_ORAN_BERRY, 0x08b - .set ITEM_PERSIM_BERRY, 0x08c - .set ITEM_LUM_BERRY, 0x08d - .set ITEM_SITRUS_BERRY, 0x08e - .set ITEM_FIGY_BERRY, 0x08f - .set ITEM_WIKI_BERRY, 0x090 - .set ITEM_MAGO_BERRY, 0x091 - .set ITEM_AGUAV_BERRY, 0x092 - .set ITEM_IAPAPA_BERRY, 0x093 - .set ITEM_RAZZ_BERRY, 0x094 - .set ITEM_BLUK_BERRY, 0x095 - .set ITEM_NANAB_BERRY, 0x096 - .set ITEM_WEPEAR_BERRY, 0x097 - .set ITEM_PINAP_BERRY, 0x098 - .set ITEM_POMEG_BERRY, 0x099 - .set ITEM_KELPSY_BERRY, 0x09a - .set ITEM_QUALOT_BERRY, 0x09b - .set ITEM_HONDEW_BERRY, 0x09c - .set ITEM_GREPA_BERRY, 0x09d - .set ITEM_TAMATO_BERRY, 0x09e - .set ITEM_CORNN_BERRY, 0x09f - .set ITEM_MAGOST_BERRY, 0x0a0 - .set ITEM_RABUTA_BERRY, 0x0a1 - .set ITEM_NOMEL_BERRY, 0x0a2 - .set ITEM_SPELON_BERRY, 0x0a3 - .set ITEM_PAMTRE_BERRY, 0x0a4 - .set ITEM_WATMEL_BERRY, 0x0a5 - .set ITEM_DURIN_BERRY, 0x0a6 - .set ITEM_BELUE_BERRY, 0x0a7 - .set ITEM_LIECHI_BERRY, 0x0a8 - .set ITEM_GANLON_BERRY, 0x0a9 - .set ITEM_SALAC_BERRY, 0x0aa - .set ITEM_PETAYA_BERRY, 0x0ab - .set ITEM_APICOT_BERRY, 0x0ac - .set ITEM_LANSAT_BERRY, 0x0ad - .set ITEM_STARF_BERRY, 0x0ae - .set ITEM_ENIGMA_BERRY, 0x0af - .set ITEM_BRIGHT_POWDER, 0x0b3 - .set ITEM_WHITE_HERB, 0x0b4 - .set ITEM_MACHO_BRACE, 0x0b5 - .set ITEM_EXP_SHARE, 0x0b6 - .set ITEM_QUICK_CLAW, 0x0b7 - .set ITEM_SOOTHE_BELL, 0x0b8 - .set ITEM_MENTAL_HERB, 0x0b9 - .set ITEM_CHOICE_BAND, 0x0ba - .set ITEM_KINGS_ROCK, 0x0bb - .set ITEM_SILVER_POWDER, 0x0bc - .set ITEM_AMULET_COIN, 0x0bd - .set ITEM_CLEANSE_TAG, 0x0be - .set ITEM_SOUL_DEW, 0x0bf - .set ITEM_DEEP_SEA_TOOTH, 0x0c0 - .set ITEM_DEEP_SEA_SCALE, 0x0c1 - .set ITEM_SMOKE_BALL, 0x0c2 - .set ITEM_EVERSTONE, 0x0c3 - .set ITEM_FOCUS_BAND, 0x0c4 - .set ITEM_LUCKY_EGG, 0x0c5 - .set ITEM_SCOPE_LENS, 0x0c6 - .set ITEM_METAL_COAT, 0x0c7 - .set ITEM_LEFTOVERS, 0x0c8 - .set ITEM_DRAGON_SCALE, 0x0c9 - .set ITEM_LIGHT_BALL, 0x0ca - .set ITEM_SOFT_SAND, 0x0cb - .set ITEM_HARD_STONE, 0x0cc - .set ITEM_MIRACLE_SEED, 0x0cd - .set ITEM_BLACK_GLASSES, 0x0ce - .set ITEM_BLACK_BELT, 0x0cf - .set ITEM_MAGNET, 0x0d0 - .set ITEM_MYSTIC_WATER, 0x0d1 - .set ITEM_SHARP_BEAK, 0x0d2 - .set ITEM_POISON_BARB, 0x0d3 - .set ITEM_NEVER_MELT_ICE, 0x0d4 - .set ITEM_SPELL_TAG, 0x0d5 - .set ITEM_TWISTED_SPOON, 0x0d6 - .set ITEM_CHARCOAL, 0x0d7 - .set ITEM_DRAGON_FANG, 0x0d8 - .set ITEM_SILK_SCARF, 0x0d9 - .set ITEM_UP_GRADE, 0x0da - .set ITEM_SHELL_BELL, 0x0db - .set ITEM_SEA_INCENSE, 0x0dc - .set ITEM_LAX_INCENSE, 0x0dd - .set ITEM_LUCKY_PUNCH, 0x0de - .set ITEM_METAL_POWDER, 0x0df - .set ITEM_THICK_CLUB, 0x0e0 - .set ITEM_STICK, 0x0e1 - .set ITEM_RED_SCARF, 0x0fe - .set ITEM_BLUE_SCARF, 0x0ff - .set ITEM_PINK_SCARF, 0x100 - .set ITEM_GREEN_SCARF, 0x101 - .set ITEM_YELLOW_SCARF, 0x102 - .set ITEM_MACH_BIKE, 0x103 - .set ITEM_COIN_CASE, 0x104 - .set ITEM_ITEMFINDER, 0x105 - .set ITEM_OLD_ROD, 0x106 - .set ITEM_GOOD_ROD, 0x107 - .set ITEM_SUPER_ROD, 0x108 - .set ITEM_SS_TICKET, 0x109 - .set ITEM_CONTEST_PASS, 0x10a - .set ITEM_WAILMER_PAIL, 0x10c - .set ITEM_DEVON_GOODS, 0x10d - .set ITEM_SOOT_SACK, 0x10e - .set ITEM_BASEMENT_KEY, 0x10f - .set ITEM_ACRO_BIKE, 0x110 - .set ITEM_POKEBLOCK_CASE, 0x111 - .set ITEM_LETTER, 0x112 - .set ITEM_EON_TICKET, 0x113 - .set ITEM_RED_ORB, 0x114 - .set ITEM_BLUE_ORB, 0x115 - .set ITEM_SCANNER, 0x116 - .set ITEM_GO_GOGGLES, 0x117 - .set ITEM_METEORITE, 0x118 - .set ITEM_ROOM_1_KEY, 0x119 - .set ITEM_ROOM_2_KEY, 0x11a - .set ITEM_ROOM_4_KEY, 0x11b - .set ITEM_ROOM_6_KEY, 0x11c - .set ITEM_STORAGE_KEY, 0x11d - .set ITEM_ROOT_FOSSIL, 0x11e - .set ITEM_CLAW_FOSSIL, 0x11f - .set ITEM_DEVON_SCOPE, 0x120 - .set ITEM_TM01, 0x121 - .set ITEM_TM02, 0x122 - .set ITEM_TM03, 0x123 - .set ITEM_TM04, 0x124 - .set ITEM_TM05, 0x125 - .set ITEM_TM06, 0x126 - .set ITEM_TM07, 0x127 - .set ITEM_TM08, 0x128 - .set ITEM_TM09, 0x129 - .set ITEM_TM10, 0x12a - .set ITEM_TM11, 0x12b - .set ITEM_TM12, 0x12c - .set ITEM_TM13, 0x12d - .set ITEM_TM14, 0x12e - .set ITEM_TM15, 0x12f - .set ITEM_TM16, 0x130 - .set ITEM_TM17, 0x131 - .set ITEM_TM18, 0x132 - .set ITEM_TM19, 0x133 - .set ITEM_TM20, 0x134 - .set ITEM_TM21, 0x135 - .set ITEM_TM22, 0x136 - .set ITEM_TM23, 0x137 - .set ITEM_TM24, 0x138 - .set ITEM_TM25, 0x139 - .set ITEM_TM26, 0x13a - .set ITEM_TM27, 0x13b - .set ITEM_TM28, 0x13c - .set ITEM_TM29, 0x13d - .set ITEM_TM30, 0x13e - .set ITEM_TM31, 0x13f - .set ITEM_TM32, 0x140 - .set ITEM_TM33, 0x141 - .set ITEM_TM34, 0x142 - .set ITEM_TM35, 0x143 - .set ITEM_TM36, 0x144 - .set ITEM_TM37, 0x145 - .set ITEM_TM38, 0x146 - .set ITEM_TM39, 0x147 - .set ITEM_TM40, 0x148 - .set ITEM_TM41, 0x149 - .set ITEM_TM42, 0x14a - .set ITEM_TM43, 0x14b - .set ITEM_TM44, 0x14c - .set ITEM_TM45, 0x14d - .set ITEM_TM46, 0x14e - .set ITEM_TM47, 0x14f - .set ITEM_TM48, 0x150 - .set ITEM_TM49, 0x151 - .set ITEM_TM50, 0x152 - .set ITEM_HM01, 0x153 - .set ITEM_HM02, 0x154 - .set ITEM_HM03, 0x155 - .set ITEM_HM04, 0x156 - .set ITEM_HM05, 0x157 - .set ITEM_HM06, 0x158 - .set ITEM_HM07, 0x159 - .set ITEM_HM08, 0x15a - .set ITEM_OAKS_PARCEL, 0x15d - .set ITEM_POKE_FLUTE, 0x15e - .set ITEM_SECRET_KEY, 0x15f - .set ITEM_BIKE_VOUCHER, 0x160 - .set ITEM_GOLD_TEETH, 0x161 - .set ITEM_OLD_AMBER, 0x162 - .set ITEM_CARD_KEY, 0x163 - .set ITEM_LIFT_KEY, 0x164 - .set ITEM_HELIX_FOSSIL, 0x165 - .set ITEM_DOME_FOSSIL, 0x166 - .set ITEM_SILPH_SCOPE, 0x167 - .set ITEM_BICYCLE, 0x168 - .set ITEM_TOWN_MAP, 0x169 - .set ITEM_VS_SEEKER, 0x16a - .set ITEM_FAME_CHECKER, 0x16b - .set ITEM_TM_CASE, 0x16c - .set ITEM_BERRY_POUCH, 0x16d - .set ITEM_TEACHY_TV, 0x16e - .set ITEM_TRI_PASS, 0x16f - .set ITEM_RAINBOW_PASS, 0x170 - .set ITEM_TEA, 0x171 - .set ITEM_MYSTIC_TICKET, 0x172 - .set ITEM_AURORA_TICKET, 0x173 - .set ITEM_POWDER_JAR, 0x174 - .set ITEM_RUBY, 0x175 - .set ITEM_SAPPHIRE, 0x176 - .set ITEM_MAGMA_EMBLEM, 0x177 - .set ITEM_OLD_SEA_MAP, 0x178 diff --git a/constants/map_constants.inc b/constants/map_constants.inc index eabfe6e69..a061d2501 100644 --- a/constants/map_constants.inc +++ b/constants/map_constants.inc @@ -1,3 +1,4 @@ +@ TODO: these need to match the names in include/constants/maps.h .set cur_map_group, -1 new_map_group diff --git a/constants/map_object_constants.inc b/constants/map_object_constants.inc deleted file mode 100644 index 50b171d9c..000000000 --- a/constants/map_object_constants.inc +++ /dev/null @@ -1,258 +0,0 @@ - .set MAP_OBJ_GFX_BRENDAN_NORMAL, 0 - .set MAP_OBJ_GFX_BRENDAN_MACH_BIKE, 1 - .set MAP_OBJ_GFX_BRENDAN_SURFING, 2 - .set MAP_OBJ_GFX_BRENDAN_FIELD_MOVE, 3 - .set MAP_OBJ_GFX_QUINTY_PLUMP, 4 - .set MAP_OBJ_GFX_LITTLE_BOY_1, 5 - .set MAP_OBJ_GFX_LITTLE_GIRL_1, 6 - .set MAP_OBJ_GFX_BOY_1, 7 - .set MAP_OBJ_GFX_GIRL_1, 8 - .set MAP_OBJ_GFX_BOY_2, 9 - .set MAP_OBJ_GFX_GIRL_2, 10 - .set MAP_OBJ_GFX_LITTLE_BOY_2, 11 - .set MAP_OBJ_GFX_LITTLE_GIRL_2, 12 - .set MAP_OBJ_GFX_BOY_3, 13 - .set MAP_OBJ_GFX_GIRL_3, 14 - .set MAP_OBJ_GFX_BOY_4, 15 - .set MAP_OBJ_GFX_WOMAN_1, 16 - .set MAP_OBJ_GFX_FAT_MAN, 17 - .set MAP_OBJ_GFX_WOMAN_2, 18 - .set MAP_OBJ_GFX_MAN_1, 19 - .set MAP_OBJ_GFX_WOMAN_3, 20 - .set MAP_OBJ_GFX_OLD_MAN_1, 21 - .set MAP_OBJ_GFX_OLD_WOMAN_1, 22 - .set MAP_OBJ_GFX_MAN_2, 23 - .set MAP_OBJ_GFX_WOMAN_4, 24 - .set MAP_OBJ_GFX_MAN_3, 25 - .set MAP_OBJ_GFX_WOMAN_5, 26 - .set MAP_OBJ_GFX_COOK, 27 - .set MAP_OBJ_GFX_WOMAN_6, 28 - .set MAP_OBJ_GFX_OLD_MAN_2, 29 - .set MAP_OBJ_GFX_OLD_WOMAN_2, 30 - .set MAP_OBJ_GFX_CAMPER, 31 - .set MAP_OBJ_GFX_PICNICKER, 32 - .set MAP_OBJ_GFX_MAN_4, 33 - .set MAP_OBJ_GFX_WOMAN_7, 34 - .set MAP_OBJ_GFX_YOUNGSTER, 35 - .set MAP_OBJ_GFX_BUG_CATCHER, 36 - .set MAP_OBJ_GFX_PSYCHIC_M, 37 - .set MAP_OBJ_GFX_SCHOOL_KID_M, 38 - .set MAP_OBJ_GFX_MANIAC, 39 - .set MAP_OBJ_GFX_HEX_MANIAC, 40 - .set MAP_OBJ_GFX_RAYQUAZA_1, 41 - .set MAP_OBJ_GFX_SWIMMER_M, 42 - .set MAP_OBJ_GFX_SWIMMER_F, 43 - .set MAP_OBJ_GFX_BLACK_BELT, 44 - .set MAP_OBJ_GFX_BEAUTY, 45 - .set MAP_OBJ_GFX_SCIENTIST_1, 46 - .set MAP_OBJ_GFX_LASS, 47 - .set MAP_OBJ_GFX_GENTLEMAN, 48 - .set MAP_OBJ_GFX_SAILOR, 49 - .set MAP_OBJ_GFX_FISHERMAN, 50 - .set MAP_OBJ_GFX_RUNNING_TRIATHLETE_M, 51 - .set MAP_OBJ_GFX_RUNNING_TRIATHLETE_F, 52 - .set MAP_OBJ_GFX_TUBER_F, 53 - .set MAP_OBJ_GFX_TUBER_M, 54 - .set MAP_OBJ_GFX_HIKER, 55 - .set MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, 56 - .set MAP_OBJ_GFX_CYCLING_TRIATHLETE_F, 57 - .set MAP_OBJ_GFX_NURSE, 58 - .set MAP_OBJ_GFX_ITEM_BALL, 59 - .set MAP_OBJ_GFX_BERRY_TREE, 60 - .set MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES, 61 - .set MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES, 62 - .set MAP_OBJ_GFX_BRENDAN_ACRO_BIKE, 63 - .set MAP_OBJ_GFX_PROF_BIRCH, 64 - .set MAP_OBJ_GFX_MAN_5, 65 - .set MAP_OBJ_GFX_MAN_6, 66 - .set MAP_OBJ_GFX_REPORTER_M, 67 - .set MAP_OBJ_GFX_REPORTER_F, 68 - .set MAP_OBJ_GFX_BARD, 69 - .set MAP_OBJ_GFX_ANABEL, 70 - .set MAP_OBJ_GFX_TUCKER, 71 - .set MAP_OBJ_GFX_GRETA, 72 - .set MAP_OBJ_GFX_SPENSER, 73 - .set MAP_OBJ_GFX_NOLAND, 74 - .set MAP_OBJ_GFX_LUCY, 75 - .set MAP_OBJ_GFX_UNUSED_NATU_DOLL, 76 - .set MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL, 77 - .set MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL, 78 - .set MAP_OBJ_GFX_UNUSED_WOOPER_DOLL, 79 - .set MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL, 80 - .set MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL, 81 - .set MAP_OBJ_GFX_CUTTABLE_TREE, 82 - .set MAP_OBJ_GFX_MART_EMPLOYEE, 83 - .set MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN, 84 - .set MAP_OBJ_GFX_TEALA, 85 - .set MAP_OBJ_GFX_BREAKABLE_ROCK, 86 - .set MAP_OBJ_GFX_PUSHABLE_BOULDER, 87 - .set MAP_OBJ_GFX_MR_BRINEYS_BOAT, 88 - .set MAP_OBJ_GFX_MAY_NORMAL, 89 - .set MAP_OBJ_GFX_MAY_MACH_BIKE, 90 - .set MAP_OBJ_GFX_MAY_ACRO_BIKE, 91 - .set MAP_OBJ_GFX_MAY_SURFING, 92 - .set MAP_OBJ_GFX_MAY_FIELD_MOVE, 93 - .set MAP_OBJ_GFX_TRUCK, 94 - .set MAP_OBJ_GFX_VIGAROTH_CARRYING_BOX, 95 - .set MAP_OBJ_GFX_VIGAROTH_FACING_AWAY, 96 - .set MAP_OBJ_GFX_BIRCHS_BAG, 97 - .set MAP_OBJ_GFX_ZIGZAGOON_1, 98 - .set MAP_OBJ_GFX_ARTIST, 99 - .set MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, 100 - .set MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE, 101 - .set MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE, 102 - .set MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING, 103 - .set MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE, 104 - .set MAP_OBJ_GFX_RIVAL_MAY_NORMAL, 105 - .set MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE, 106 - .set MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE, 107 - .set MAP_OBJ_GFX_RIVAL_MAY_SURFING, 108 - .set MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE, 109 - .set MAP_OBJ_GFX_CAMERAMAN, 110 - .set MAP_OBJ_GFX_BRENDAN_UNDERWATER, 111 - .set MAP_OBJ_GFX_MAY_UNDERWATER, 112 - .set MAP_OBJ_GFX_MOVING_BOX, 113 - .set MAP_OBJ_GFX_CABLE_CAR, 114 - .set MAP_OBJ_GFX_SCIENTIST_2, 115 - .set MAP_OBJ_GFX_MAN_7, 116 - .set MAP_OBJ_GFX_AQUA_MEMBER_M, 117 - .set MAP_OBJ_GFX_AQUA_MEMBER_F, 118 - .set MAP_OBJ_GFX_MAGMA_MEMBER_M, 119 - .set MAP_OBJ_GFX_MAGMA_MEMBER_F, 120 - .set MAP_OBJ_GFX_SIDNEY, 121 - .set MAP_OBJ_GFX_PHOEBE, 122 - .set MAP_OBJ_GFX_GLACIA, 123 - .set MAP_OBJ_GFX_DRAKE, 124 - .set MAP_OBJ_GFX_ROXANNE, 125 - .set MAP_OBJ_GFX_BRAWLY, 126 - .set MAP_OBJ_GFX_WATTSON, 127 - .set MAP_OBJ_GFX_FLANNERY, 128 - .set MAP_OBJ_GFX_NORMAN, 129 - .set MAP_OBJ_GFX_WINONA, 130 - .set MAP_OBJ_GFX_LIZA, 131 - .set MAP_OBJ_GFX_TATE, 132 - .set MAP_OBJ_GFX_WALLACE, 133 - .set MAP_OBJ_GFX_STEVEN, 134 - .set MAP_OBJ_GFX_WALLY, 135 - .set MAP_OBJ_GFX_LITTLE_BOY_3, 136 - .set MAP_OBJ_GFX_BRENDAN_FISHING, 137 - .set MAP_OBJ_GFX_MAY_FISHING, 138 - .set MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN, 139 - .set MAP_OBJ_GFX_SS_TIDAL, 140 - .set MAP_OBJ_GFX_SUBMARINE_SHADOW, 141 - .set MAP_OBJ_GFX_PICHU_DOLL, 142 - .set MAP_OBJ_GFX_PIKACHU_DOLL, 143 - .set MAP_OBJ_GFX_MARILL_DOLL, 144 - .set MAP_OBJ_GFX_TOGEPI_DOLL, 145 - .set MAP_OBJ_GFX_CYNDAQUIL_DOLL, 146 - .set MAP_OBJ_GFX_CHIKORITA_DOLL, 147 - .set MAP_OBJ_GFX_TOTODILE_DOLL, 148 - .set MAP_OBJ_GFX_JIGGLYPUFF_DOLL, 149 - .set MAP_OBJ_GFX_MEOWTH_DOLL, 150 - .set MAP_OBJ_GFX_CLEFAIRY_DOLL, 151 - .set MAP_OBJ_GFX_DITTO_DOLL, 152 - .set MAP_OBJ_GFX_SMOOCHUM_DOLL, 153 - .set MAP_OBJ_GFX_TREECKO_DOLL, 154 - .set MAP_OBJ_GFX_TORCHIC_DOLL, 155 - .set MAP_OBJ_GFX_MUDKIP_DOLL, 156 - .set MAP_OBJ_GFX_DUSKULL_DOLL, 157 - .set MAP_OBJ_GFX_WYNAUT_DOLL, 158 - .set MAP_OBJ_GFX_BALTOY_DOLL, 159 - .set MAP_OBJ_GFX_KECLEON_DOLL, 160 - .set MAP_OBJ_GFX_AZURILL_DOLL, 161 - .set MAP_OBJ_GFX_SKITTY_DOLL, 162 - .set MAP_OBJ_GFX_SWABLU_DOLL, 163 - .set MAP_OBJ_GFX_GULPIN_DOLL, 164 - .set MAP_OBJ_GFX_LOTAD_DOLL, 165 - .set MAP_OBJ_GFX_SEEDOT_DOLL, 166 - .set MAP_OBJ_GFX_PIKA_CUSHION, 167 - .set MAP_OBJ_GFX_ROUND_CUSHION, 168 - .set MAP_OBJ_GFX_KISS_CUSHION, 169 - .set MAP_OBJ_GFX_ZIGZAG_CUSHION, 170 - .set MAP_OBJ_GFX_SPIN_CUSHION, 171 - .set MAP_OBJ_GFX_DIAMOND_CUSHION, 172 - .set MAP_OBJ_GFX_BALL_CUSHION, 173 - .set MAP_OBJ_GFX_GRASS_CUSHION, 174 - .set MAP_OBJ_GFX_FIRE_CUSHION, 175 - .set MAP_OBJ_GFX_WATER_CUSHION, 176 - .set MAP_OBJ_GFX_BIG_SNORLAX_DOLL, 177 - .set MAP_OBJ_GFX_BIG_RHYDON_DOLL, 178 - .set MAP_OBJ_GFX_BIG_LAPRAS_DOLL, 179 - .set MAP_OBJ_GFX_BIG_VENUSAUR_DOLL, 180 - .set MAP_OBJ_GFX_BIG_CHARIZARD_DOLL, 181 - .set MAP_OBJ_GFX_BIG_BLASTOISE_DOLL, 182 - .set MAP_OBJ_GFX_BIG_WAILMER_DOLL, 183 - .set MAP_OBJ_GFX_BIG_REGIROCK_DOLL, 184 - .set MAP_OBJ_GFX_BIG_REGICE_DOLL, 185 - .set MAP_OBJ_GFX_BIG_REGISTEEL_DOLL, 186 - .set MAP_OBJ_GFX_LATIAS, 187 - .set MAP_OBJ_GFX_LATIOS, 188 - .set MAP_OBJ_GFX_BOY_5, 189 - .set MAP_OBJ_GFX_CONTEST_JUDGE, 190 - .set MAP_OBJ_GFX_BRENDAN_WATERING, 191 - .set MAP_OBJ_GFX_MAY_WATERING, 192 - .set MAP_OBJ_GFX_BRENDAN_DECORATING, 193 - .set MAP_OBJ_GFX_MAY_DECORATING, 194 - .set MAP_OBJ_GFX_ARCHIE, 195 - .set MAP_OBJ_GFX_MAXIE, 196 - .set MAP_OBJ_GFX_KYOGRE_1, 197 - .set MAP_OBJ_GFX_GROUDON_1, 198 - .set MAP_OBJ_GFX_FOSSIL, 199 - .set MAP_OBJ_GFX_REGIROCK, 200 - .set MAP_OBJ_GFX_REGICE, 201 - .set MAP_OBJ_GFX_REGISTEEL, 202 - .set MAP_OBJ_GFX_SKITTY, 203 - .set MAP_OBJ_GFX_KECLEON_1, 204 - .set MAP_OBJ_GFX_KYOGRE_2, 205 - .set MAP_OBJ_GFX_GROUDON_2, 206 - .set MAP_OBJ_GFX_RAYQUAZA_2, 207 - .set MAP_OBJ_GFX_ZIGZAGOON_2, 208 - .set MAP_OBJ_GFX_PIKACHU, 209 - .set MAP_OBJ_GFX_AZUMARILL, 210 - .set MAP_OBJ_GFX_WINGULL, 211 - .set MAP_OBJ_GFX_KECLEON_2, 212 - .set MAP_OBJ_GFX_TUBER_M_SWIMMING, 213 - .set MAP_OBJ_GFX_AZURILL, 214 - .set MAP_OBJ_GFX_MOM, 215 - .set MAP_OBJ_GFX_LINK_BRENDAN, 216 - .set MAP_OBJ_GFX_LINK_MAY, 217 - .set MAP_OBJ_GFX_JUAN, 218 - .set MAP_OBJ_GFX_SCOTT, 219 - .set MAP_OBJ_GFX_POOCHYENA, 220 - .set MAP_OBJ_GFX_KYOGRE_3, 221 - .set MAP_OBJ_GFX_GROUDON_3, 222 - .set MAP_OBJ_GFX_MYSTERY_GIFT_MAN, 223 - .set MAP_OBJ_GFX_TRICK_HOUSE_STATUE, 224 - .set MAP_OBJ_GFX_KIRLIA, 225 - .set MAP_OBJ_GFX_DUSCLOPS, 226 - .set MAP_OBJ_GFX_UNION_ROOM_NURSE, 227 - .set MAP_OBJ_GFX_SUDOWOODO, 228 - .set MAP_OBJ_GFX_MEW, 229 - .set MAP_OBJ_GFX_RED, 230 - .set MAP_OBJ_GFX_LEAF, 231 - .set MAP_OBJ_GFX_DEOXYS, 232 - .set MAP_OBJ_GFX_DEOXYS_TRIANGLE, 233 - .set MAP_OBJ_GFX_BRANDON, 234 - .set MAP_OBJ_GFX_LINK_RS_BRENDAN, 235 - .set MAP_OBJ_GFX_LINK_RS_MAY, 236 - .set MAP_OBJ_GFX_LUGIA, 237 - .set MAP_OBJ_GFX_HOOH, 238 - .set MAP_OBJ_GFX_BARD_2, 239 - .set MAP_OBJ_GFX_HIPSTER, 240 - .set MAP_OBJ_GFX_TRADER, 241 - .set MAP_OBJ_GFX_STORYTELLER, 242 - .set MAP_OBJ_GFX_GIDDY, 243 - .set MAP_OBJ_GFX_PLACEHOLDER_1, 244 - .set MAP_OBJ_GFX_PLACEHOLDER_2, 245 - - .set SHADOW_SIZE_S, 0 - .set SHADOW_SIZE_M, 1 - .set SHADOW_SIZE_L, 2 - .set SHADOW_SIZE_XL, 3 - - .set F_INANIMATE, 1 << 6 - .set F_DISABLE_REFLECTION_PALETTE_LOAD, 1 << 7 - - .set TRACKS_NONE, 0 - .set TRACKS_FOOT, 1 - .set TRACKS_BIKE_TIRE, 2 diff --git a/constants/move_constants.inc b/constants/move_constants.inc deleted file mode 100644 index b6c8edf98..000000000 --- a/constants/move_constants.inc +++ /dev/null @@ -1,355 +0,0 @@ - .set MOVE_NONE, 0x000 - .set MOVE_POUND, 0x001 - .set MOVE_KARATE_CHOP, 0x002 - .set MOVE_DOUBLE_SLAP, 0x003 - .set MOVE_COMET_PUNCH, 0x004 - .set MOVE_MEGA_PUNCH, 0x005 - .set MOVE_PAY_DAY, 0x006 - .set MOVE_FIRE_PUNCH, 0x007 - .set MOVE_ICE_PUNCH, 0x008 - .set MOVE_THUNDER_PUNCH, 0x009 - .set MOVE_SCRATCH, 0x00a - .set MOVE_VICE_GRIP, 0x00b - .set MOVE_GUILLOTINE, 0x00c - .set MOVE_RAZOR_WIND, 0x00d - .set MOVE_SWORDS_DANCE, 0x00e - .set MOVE_CUT, 0x00f - .set MOVE_GUST, 0x010 - .set MOVE_WING_ATTACK, 0x011 - .set MOVE_WHIRLWIND, 0x012 - .set MOVE_FLY, 0x013 - .set MOVE_BIND, 0x014 - .set MOVE_SLAM, 0x015 - .set MOVE_VINE_WHIP, 0x016 - .set MOVE_STOMP, 0x017 - .set MOVE_DOUBLE_KICK, 0x018 - .set MOVE_MEGA_KICK, 0x019 - .set MOVE_JUMP_KICK, 0x01a - .set MOVE_ROLLING_KICK, 0x01b - .set MOVE_SAND_ATTACK, 0x01c - .set MOVE_HEADBUTT, 0x01d - .set MOVE_HORN_ATTACK, 0x01e - .set MOVE_FURY_ATTACK, 0x01f - .set MOVE_HORN_DRILL, 0x020 - .set MOVE_TACKLE, 0x021 - .set MOVE_BODY_SLAM, 0x022 - .set MOVE_WRAP, 0x023 - .set MOVE_TAKE_DOWN, 0x024 - .set MOVE_THRASH, 0x025 - .set MOVE_DOUBLE_EDGE, 0x026 - .set MOVE_TAIL_WHIP, 0x027 - .set MOVE_POISON_STING, 0x028 - .set MOVE_TWINEEDLE, 0x029 - .set MOVE_PIN_MISSILE, 0x02a - .set MOVE_LEER, 0x02b - .set MOVE_BITE, 0x02c - .set MOVE_GROWL, 0x02d - .set MOVE_ROAR, 0x02e - .set MOVE_SING, 0x02f - .set MOVE_SUPERSONIC, 0x030 - .set MOVE_SONIC_BOOM, 0x031 - .set MOVE_DISABLE, 0x032 - .set MOVE_ACID, 0x033 - .set MOVE_EMBER, 0x034 - .set MOVE_FLAMETHROWER, 0x035 - .set MOVE_MIST, 0x036 - .set MOVE_WATER_GUN, 0x037 - .set MOVE_HYDRO_PUMP, 0x038 - .set MOVE_SURF, 0x039 - .set MOVE_ICE_BEAM, 0x03a - .set MOVE_BLIZZARD, 0x03b - .set MOVE_PSYBEAM, 0x03c - .set MOVE_BUBBLE_BEAM, 0x03d - .set MOVE_AURORA_BEAM, 0x03e - .set MOVE_HYPER_BEAM, 0x03f - .set MOVE_PECK, 0x040 - .set MOVE_DRILL_PECK, 0x041 - .set MOVE_SUBMISSION, 0x042 - .set MOVE_LOW_KICK, 0x043 - .set MOVE_COUNTER, 0x044 - .set MOVE_SEISMIC_TOSS, 0x045 - .set MOVE_STRENGTH, 0x046 - .set MOVE_ABSORB, 0x047 - .set MOVE_MEGA_DRAIN, 0x048 - .set MOVE_LEECH_SEED, 0x049 - .set MOVE_GROWTH, 0x04a - .set MOVE_RAZOR_LEAF, 0x04b - .set MOVE_SOLAR_BEAM, 0x04c - .set MOVE_POISON_POWDER, 0x04d - .set MOVE_STUN_SPORE, 0x04e - .set MOVE_SLEEP_POWDER, 0x04f - .set MOVE_PETAL_DANCE, 0x050 - .set MOVE_STRING_SHOT, 0x051 - .set MOVE_DRAGON_RAGE, 0x052 - .set MOVE_FIRE_SPIN, 0x053 - .set MOVE_THUNDER_SHOCK, 0x054 - .set MOVE_THUNDERBOLT, 0x055 - .set MOVE_THUNDER_WAVE, 0x056 - .set MOVE_THUNDER, 0x057 - .set MOVE_ROCK_THROW, 0x058 - .set MOVE_EARTHQUAKE, 0x059 - .set MOVE_FISSURE, 0x05a - .set MOVE_DIG, 0x05b - .set MOVE_TOXIC, 0x05c - .set MOVE_CONFUSION, 0x05d - .set MOVE_PSYCHIC, 0x05e - .set MOVE_HYPNOSIS, 0x05f - .set MOVE_MEDITATE, 0x060 - .set MOVE_AGILITY, 0x061 - .set MOVE_QUICK_ATTACK, 0x062 - .set MOVE_RAGE, 0x063 - .set MOVE_TELEPORT, 0x064 - .set MOVE_NIGHT_SHADE, 0x065 - .set MOVE_MIMIC, 0x066 - .set MOVE_SCREECH, 0x067 - .set MOVE_DOUBLE_TEAM, 0x068 - .set MOVE_RECOVER, 0x069 - .set MOVE_HARDEN, 0x06a - .set MOVE_MINIMIZE, 0x06b - .set MOVE_SMOKESCREEN, 0x06c - .set MOVE_CONFUSE_RAY, 0x06d - .set MOVE_WITHDRAW, 0x06e - .set MOVE_DEFENSE_CURL, 0x06f - .set MOVE_BARRIER, 0x070 - .set MOVE_LIGHT_SCREEN, 0x071 - .set MOVE_HAZE, 0x072 - .set MOVE_REFLECT, 0x073 - .set MOVE_FOCUS_ENERGY, 0x074 - .set MOVE_BIDE, 0x075 - .set MOVE_METRONOME, 0x076 - .set MOVE_MIRROR_MOVE, 0x077 - .set MOVE_SELF_DESTRUCT, 0x078 - .set MOVE_EGG_BOMB, 0x079 - .set MOVE_LICK, 0x07a - .set MOVE_SMOG, 0x07b - .set MOVE_SLUDGE, 0x07c - .set MOVE_BONE_CLUB, 0x07d - .set MOVE_FIRE_BLAST, 0x07e - .set MOVE_WATERFALL, 0x07f - .set MOVE_CLAMP, 0x080 - .set MOVE_SWIFT, 0x081 - .set MOVE_SKULL_BASH, 0x082 - .set MOVE_SPIKE_CANNON, 0x083 - .set MOVE_CONSTRICT, 0x084 - .set MOVE_AMNESIA, 0x085 - .set MOVE_KINESIS, 0x086 - .set MOVE_SOFT_BOILED, 0x087 - .set MOVE_HI_JUMP_KICK, 0x088 - .set MOVE_GLARE, 0x089 - .set MOVE_DREAM_EATER, 0x08a - .set MOVE_POISON_GAS, 0x08b - .set MOVE_BARRAGE, 0x08c - .set MOVE_LEECH_LIFE, 0x08d - .set MOVE_LOVELY_KISS, 0x08e - .set MOVE_SKY_ATTACK, 0x08f - .set MOVE_TRANSFORM, 0x090 - .set MOVE_BUBBLE, 0x091 - .set MOVE_DIZZY_PUNCH, 0x092 - .set MOVE_SPORE, 0x093 - .set MOVE_FLASH, 0x094 - .set MOVE_PSYWAVE, 0x095 - .set MOVE_SPLASH, 0x096 - .set MOVE_ACID_ARMOR, 0x097 - .set MOVE_CRABHAMMER, 0x098 - .set MOVE_EXPLOSION, 0x099 - .set MOVE_FURY_SWIPES, 0x09a - .set MOVE_BONEMERANG, 0x09b - .set MOVE_REST, 0x09c - .set MOVE_ROCK_SLIDE, 0x09d - .set MOVE_HYPER_FANG, 0x09e - .set MOVE_SHARPEN, 0x09f - .set MOVE_CONVERSION, 0x0a0 - .set MOVE_TRI_ATTACK, 0x0a1 - .set MOVE_SUPER_FANG, 0x0a2 - .set MOVE_SLASH, 0x0a3 - .set MOVE_SUBSTITUTE, 0x0a4 - .set MOVE_STRUGGLE, 0x0a5 - .set MOVE_SKETCH, 0x0a6 - .set MOVE_TRIPLE_KICK, 0x0a7 - .set MOVE_THIEF, 0x0a8 - .set MOVE_SPIDER_WEB, 0x0a9 - .set MOVE_MIND_READER, 0x0aa - .set MOVE_NIGHTMARE, 0x0ab - .set MOVE_FLAME_WHEEL, 0x0ac - .set MOVE_SNORE, 0x0ad - .set MOVE_CURSE, 0x0ae - .set MOVE_FLAIL, 0x0af - .set MOVE_CONVERSION_2, 0x0b0 - .set MOVE_AEROBLAST, 0x0b1 - .set MOVE_COTTON_SPORE, 0x0b2 - .set MOVE_REVERSAL, 0x0b3 - .set MOVE_SPITE, 0x0b4 - .set MOVE_POWDER_SNOW, 0x0b5 - .set MOVE_PROTECT, 0x0b6 - .set MOVE_MACH_PUNCH, 0x0b7 - .set MOVE_SCARY_FACE, 0x0b8 - .set MOVE_FAINT_ATTACK, 0x0b9 - .set MOVE_SWEET_KISS, 0x0ba - .set MOVE_BELLY_DRUM, 0x0bb - .set MOVE_SLUDGE_BOMB, 0x0bc - .set MOVE_MUD_SLAP, 0x0bd - .set MOVE_OCTAZOOKA, 0x0be - .set MOVE_SPIKES, 0x0bf - .set MOVE_ZAP_CANNON, 0x0c0 - .set MOVE_FORESIGHT, 0x0c1 - .set MOVE_DESTINY_BOND, 0x0c2 - .set MOVE_PERISH_SONG, 0x0c3 - .set MOVE_ICY_WIND, 0x0c4 - .set MOVE_DETECT, 0x0c5 - .set MOVE_BONE_RUSH, 0x0c6 - .set MOVE_LOCK_ON, 0x0c7 - .set MOVE_OUTRAGE, 0x0c8 - .set MOVE_SANDSTORM, 0x0c9 - .set MOVE_GIGA_DRAIN, 0x0ca - .set MOVE_ENDURE, 0x0cb - .set MOVE_CHARM, 0x0cc - .set MOVE_ROLLOUT, 0x0cd - .set MOVE_FALSE_SWIPE, 0x0ce - .set MOVE_SWAGGER, 0x0cf - .set MOVE_MILK_DRINK, 0x0d0 - .set MOVE_SPARK, 0x0d1 - .set MOVE_FURY_CUTTER, 0x0d2 - .set MOVE_STEEL_WING, 0x0d3 - .set MOVE_MEAN_LOOK, 0x0d4 - .set MOVE_ATTRACT, 0x0d5 - .set MOVE_SLEEP_TALK, 0x0d6 - .set MOVE_HEAL_BELL, 0x0d7 - .set MOVE_RETURN, 0x0d8 - .set MOVE_PRESENT, 0x0d9 - .set MOVE_FRUSTRATION, 0x0da - .set MOVE_SAFEGUARD, 0x0db - .set MOVE_PAIN_SPLIT, 0x0dc - .set MOVE_SACRED_FIRE, 0x0dd - .set MOVE_MAGNITUDE, 0x0de - .set MOVE_DYNAMIC_PUNCH, 0x0df - .set MOVE_MEGAHORN, 0x0e0 - .set MOVE_DRAGON_BREATH, 0x0e1 - .set MOVE_BATON_PASS, 0x0e2 - .set MOVE_ENCORE, 0x0e3 - .set MOVE_PURSUIT, 0x0e4 - .set MOVE_RAPID_SPIN, 0x0e5 - .set MOVE_SWEET_SCENT, 0x0e6 - .set MOVE_IRON_TAIL, 0x0e7 - .set MOVE_METAL_CLAW, 0x0e8 - .set MOVE_VITAL_THROW, 0x0e9 - .set MOVE_MORNING_SUN, 0x0ea - .set MOVE_SYNTHESIS, 0x0eb - .set MOVE_MOONLIGHT, 0x0ec - .set MOVE_HIDDEN_POWER, 0x0ed - .set MOVE_CROSS_CHOP, 0x0ee - .set MOVE_TWISTER, 0x0ef - .set MOVE_RAIN_DANCE, 0x0f0 - .set MOVE_SUNNY_DAY, 0x0f1 - .set MOVE_CRUNCH, 0x0f2 - .set MOVE_MIRROR_COAT, 0x0f3 - .set MOVE_PSYCH_UP, 0x0f4 - .set MOVE_EXTREME_SPEED, 0x0f5 - .set MOVE_ANCIENT_POWER, 0x0f6 - .set MOVE_SHADOW_BALL, 0x0f7 - .set MOVE_FUTURE_SIGHT, 0x0f8 - .set MOVE_ROCK_SMASH, 0x0f9 - .set MOVE_WHIRLPOOL, 0x0fa - .set MOVE_BEAT_UP, 0x0fb - .set MOVE_FAKE_OUT, 0x0fc - .set MOVE_UPROAR, 0x0fd - .set MOVE_STOCKPILE, 0x0fe - .set MOVE_SPIT_UP, 0x0ff - .set MOVE_SWALLOW, 0x100 - .set MOVE_HEAT_WAVE, 0x101 - .set MOVE_HAIL, 0x102 - .set MOVE_TORMENT, 0x103 - .set MOVE_FLATTER, 0x104 - .set MOVE_WILL_O_WISP, 0x105 - .set MOVE_MEMENTO, 0x106 - .set MOVE_FACADE, 0x107 - .set MOVE_FOCUS_PUNCH, 0x108 - .set MOVE_SMELLING_SALT, 0x109 - .set MOVE_FOLLOW_ME, 0x10a - .set MOVE_NATURE_POWER, 0x10b - .set MOVE_CHARGE, 0x10c - .set MOVE_TAUNT, 0x10d - .set MOVE_HELPING_HAND, 0x10e - .set MOVE_TRICK, 0x10f - .set MOVE_ROLE_PLAY, 0x110 - .set MOVE_WISH, 0x111 - .set MOVE_ASSIST, 0x112 - .set MOVE_INGRAIN, 0x113 - .set MOVE_SUPERPOWER, 0x114 - .set MOVE_MAGIC_COAT, 0x115 - .set MOVE_RECYCLE, 0x116 - .set MOVE_REVENGE, 0x117 - .set MOVE_BRICK_BREAK, 0x118 - .set MOVE_YAWN, 0x119 - .set MOVE_KNOCK_OFF, 0x11a - .set MOVE_ENDEAVOR, 0x11b - .set MOVE_ERUPTION, 0x11c - .set MOVE_SKILL_SWAP, 0x11d - .set MOVE_IMPRISON, 0x11e - .set MOVE_REFRESH, 0x11f - .set MOVE_GRUDGE, 0x120 - .set MOVE_SNATCH, 0x121 - .set MOVE_SECRET_POWER, 0x122 - .set MOVE_DIVE, 0x123 - .set MOVE_ARM_THRUST, 0x124 - .set MOVE_CAMOUFLAGE, 0x125 - .set MOVE_TAIL_GLOW, 0x126 - .set MOVE_LUSTER_PURGE, 0x127 - .set MOVE_MIST_BALL, 0x128 - .set MOVE_FEATHER_DANCE, 0x129 - .set MOVE_TEETER_DANCE, 0x12a - .set MOVE_BLAZE_KICK, 0x12b - .set MOVE_MUD_SPORT, 0x12c - .set MOVE_ICE_BALL, 0x12d - .set MOVE_NEEDLE_ARM, 0x12e - .set MOVE_SLACK_OFF, 0x12f - .set MOVE_HYPER_VOICE, 0x130 - .set MOVE_POISON_FANG, 0x131 - .set MOVE_CRUSH_CLAW, 0x132 - .set MOVE_BLAST_BURN, 0x133 - .set MOVE_HYDRO_CANNON, 0x134 - .set MOVE_METEOR_MASH, 0x135 - .set MOVE_ASTONISH, 0x136 - .set MOVE_WEATHER_BALL, 0x137 - .set MOVE_AROMATHERAPY, 0x138 - .set MOVE_FAKE_TEARS, 0x139 - .set MOVE_AIR_CUTTER, 0x13a - .set MOVE_OVERHEAT, 0x13b - .set MOVE_ODOR_SLEUTH, 0x13c - .set MOVE_ROCK_TOMB, 0x13d - .set MOVE_SILVER_WIND, 0x13e - .set MOVE_METAL_SOUND, 0x13f - .set MOVE_GRASS_WHISTLE, 0x140 - .set MOVE_TICKLE, 0x141 - .set MOVE_COSMIC_POWER, 0x142 - .set MOVE_WATER_SPOUT, 0x143 - .set MOVE_SIGNAL_BEAM, 0x144 - .set MOVE_SHADOW_PUNCH, 0x145 - .set MOVE_EXTRASENSORY, 0x146 - .set MOVE_SKY_UPPERCUT, 0x147 - .set MOVE_SAND_TOMB, 0x148 - .set MOVE_SHEER_COLD, 0x149 - .set MOVE_MUDDY_WATER, 0x14a - .set MOVE_BULLET_SEED, 0x14b - .set MOVE_AERIAL_ACE, 0x14c - .set MOVE_ICICLE_SPEAR, 0x14d - .set MOVE_IRON_DEFENSE, 0x14e - .set MOVE_BLOCK, 0x14f - .set MOVE_HOWL, 0x150 - .set MOVE_DRAGON_CLAW, 0x151 - .set MOVE_FRENZY_PLANT, 0x152 - .set MOVE_BULK_UP, 0x153 - .set MOVE_BOUNCE, 0x154 - .set MOVE_MUD_SHOT, 0x155 - .set MOVE_POISON_TAIL, 0x156 - .set MOVE_COVET, 0x157 - .set MOVE_VOLT_TACKLE, 0x158 - .set MOVE_MAGICAL_LEAF, 0x159 - .set MOVE_WATER_SPORT, 0x15a - .set MOVE_CALM_MIND, 0x15b - .set MOVE_LEAF_BLADE, 0x15c - .set MOVE_DRAGON_DANCE, 0x15d - .set MOVE_ROCK_BLAST, 0x15e - .set MOVE_SHOCK_WAVE, 0x15f - .set MOVE_WATER_PULSE, 0x160 - .set MOVE_DOOM_DESIRE, 0x161 - .set MOVE_PSYCHO_BOOST, 0x162 diff --git a/constants/songs.inc b/constants/songs.inc deleted file mode 100644 index 61362f058..000000000 --- a/constants/songs.inc +++ /dev/null @@ -1,461 +0,0 @@ - .equiv SE_STOP, 0 - .equiv SE_KAIFUKU, 1 - .equiv SE_PC_LOGON, 2 - .equiv SE_PC_OFF, 3 - .equiv SE_PC_ON, 4 - .equiv SE_SELECT, 5 - .equiv SE_WIN_OPEN, 6 - .equiv SE_WALL_HIT, 7 - .equiv SE_DOOR, 8 - .equiv SE_KAIDAN, 9 - .equiv SE_DANSA, 10 - .equiv SE_JITENSYA, 11 - .equiv SE_KOUKA_L, 12 - .equiv SE_KOUKA_M, 13 - .equiv SE_KOUKA_H, 14 - .equiv SE_BOWA2, 15 - .equiv SE_POKE_DEAD, 16 - .equiv SE_NIGERU, 17 - .equiv SE_JIDO_DOA, 18 - .equiv SE_NAMINORI, 19 - .equiv SE_BAN, 20 - .equiv SE_PIN, 21 - .equiv SE_BOO, 22 - .equiv SE_BOWA, 23 - .equiv SE_JYUNI, 24 - .equiv SE_A, 25 - .equiv SE_I, 26 - .equiv SE_U, 27 - .equiv SE_E, 28 - .equiv SE_O, 29 - .equiv SE_N, 30 - .equiv SE_SEIKAI, 31 - .equiv SE_HAZURE, 32 - .equiv SE_EXP, 33 - .equiv SE_JITE_PYOKO, 34 - .equiv SE_MU_PACHI, 35 - .equiv SE_TK_KASYA, 36 - .equiv SE_FU_ZAKU, 37 - .equiv SE_FU_ZAKU2, 38 - .equiv SE_FU_ZUZUZU, 39 - .equiv SE_RU_GASHIN, 40 - .equiv SE_RU_GASYAN, 41 - .equiv SE_RU_BARI, 42 - .equiv SE_RU_HYUU, 43 - .equiv SE_KI_GASYAN, 44 - .equiv SE_TK_WARPIN, 45 - .equiv SE_TK_WARPOUT, 46 - .equiv SE_TU_SAA, 47 - .equiv SE_HI_TURUN, 48 - .equiv SE_TRACK_MOVE, 49 - .equiv SE_TRACK_STOP, 50 - .equiv SE_TRACK_HAIK, 51 - .equiv SE_TRACK_DOOR, 52 - .equiv SE_MOTER, 53 - .equiv SE_CARD, 54 - .equiv SE_SAVE, 55 - .equiv SE_KON, 56 - .equiv SE_KON2, 57 - .equiv SE_KON3, 58 - .equiv SE_KON4, 59 - .equiv SE_SUIKOMU, 60 - .equiv SE_NAGERU, 61 - .equiv SE_TOY_C, 62 - .equiv SE_TOY_D, 63 - .equiv SE_TOY_E, 64 - .equiv SE_TOY_F, 65 - .equiv SE_TOY_G, 66 - .equiv SE_TOY_A, 67 - .equiv SE_TOY_B, 68 - .equiv SE_TOY_C1, 69 - .equiv SE_MIZU, 70 - .equiv SE_HASHI, 71 - .equiv SE_DAUGI, 72 - .equiv SE_PINPON, 73 - .equiv SE_FUUSEN1, 74 - .equiv SE_FUUSEN2, 75 - .equiv SE_FUUSEN3, 76 - .equiv SE_TOY_KABE, 77 - .equiv SE_TOY_DANGO, 78 - .equiv SE_DOKU, 79 - .equiv SE_ESUKA, 80 - .equiv SE_T_AME, 81 - .equiv SE_T_AME_E, 82 - .equiv SE_T_OOAME, 83 - .equiv SE_T_OOAME_E, 84 - .equiv SE_T_KOAME, 85 - .equiv SE_T_KOAME_E, 86 - .equiv SE_T_KAMI, 87 - .equiv SE_T_KAMI2, 88 - .equiv SE_ELEBETA, 89 - .equiv SE_HINSI, 90 - .equiv SE_EXPMAX, 91 - .equiv SE_TAMAKORO, 92 - .equiv SE_TAMAKORO_E, 93 - .equiv SE_BASABASA, 94 - .equiv SE_REGI, 95 - .equiv SE_C_GAJI, 96 - .equiv SE_C_MAKU_U, 97 - .equiv SE_C_MAKU_D, 98 - .equiv SE_C_PASI, 99 - .equiv SE_C_SYU, 100 - .equiv SE_C_PIKON, 101 - .equiv SE_REAPOKE, 102 - .equiv SE_OP_BASYU, 103 - .equiv SE_BT_START, 104 - .equiv SE_DENDOU, 105 - .equiv SE_JIHANKI, 106 - .equiv SE_TAMA, 107 - .equiv SE_Z_SCROLL, 108 - .equiv SE_Z_PAGE, 109 - .equiv SE_PN_ON, 110 - .equiv SE_PN_OFF, 111 - .equiv SE_Z_SEARCH, 112 - .equiv SE_TAMAGO, 113 - .equiv SE_TB_START, 114 - .equiv SE_TB_KON, 115 - .equiv SE_TB_KARA, 116 - .equiv SE_BIDORO, 117 - .equiv SE_W085, 118 - .equiv SE_W085B, 119 - .equiv SE_W231, 120 - .equiv SE_W171, 121 - .equiv SE_W233, 122 - .equiv SE_W233B, 123 - .equiv SE_W145, 124 - .equiv SE_W145B, 125 - .equiv SE_W145C, 126 - .equiv SE_W240, 127 - .equiv SE_W015, 128 - .equiv SE_W081, 129 - .equiv SE_W081B, 130 - .equiv SE_W088, 131 - .equiv SE_W016, 132 - .equiv SE_W016B, 133 - .equiv SE_W003, 134 - .equiv SE_W104, 135 - .equiv SE_W013, 136 - .equiv SE_W196, 137 - .equiv SE_W086, 138 - .equiv SE_W004, 139 - .equiv SE_W025, 140 - .equiv SE_W025B, 141 - .equiv SE_W152, 142 - .equiv SE_W026, 143 - .equiv SE_W172, 144 - .equiv SE_W172B, 145 - .equiv SE_W053, 146 - .equiv SE_W007, 147 - .equiv SE_W092, 148 - .equiv SE_W221, 149 - .equiv SE_W221B, 150 - .equiv SE_W052, 151 - .equiv SE_W036, 152 - .equiv SE_W059, 153 - .equiv SE_W059B, 154 - .equiv SE_W010, 155 - .equiv SE_W011, 156 - .equiv SE_W017, 157 - .equiv SE_W019, 158 - .equiv SE_W028, 159 - .equiv SE_W013B, 160 - .equiv SE_W044, 161 - .equiv SE_W029, 162 - .equiv SE_W057, 163 - .equiv SE_W056, 164 - .equiv SE_W250, 165 - .equiv SE_W030, 166 - .equiv SE_W039, 167 - .equiv SE_W054, 168 - .equiv SE_W077, 169 - .equiv SE_W020, 170 - .equiv SE_W082, 171 - .equiv SE_W047, 172 - .equiv SE_W195, 173 - .equiv SE_W006, 174 - .equiv SE_W091, 175 - .equiv SE_W146, 176 - .equiv SE_W120, 177 - .equiv SE_W153, 178 - .equiv SE_W071B, 179 - .equiv SE_W071, 180 - .equiv SE_W103, 181 - .equiv SE_W062, 182 - .equiv SE_W062B, 183 - .equiv SE_W048, 184 - .equiv SE_W187, 185 - .equiv SE_W118, 186 - .equiv SE_W155, 187 - .equiv SE_W122, 188 - .equiv SE_W060, 189 - .equiv SE_W185, 190 - .equiv SE_W014, 191 - .equiv SE_W043, 192 - .equiv SE_W207, 193 - .equiv SE_W207B, 194 - .equiv SE_W215, 195 - .equiv SE_W109, 196 - .equiv SE_W173, 197 - .equiv SE_W280, 198 - .equiv SE_W202, 199 - .equiv SE_W060B, 200 - .equiv SE_W076, 201 - .equiv SE_W080, 202 - .equiv SE_W100, 203 - .equiv SE_W107, 204 - .equiv SE_W166, 205 - .equiv SE_W129, 206 - .equiv SE_W115, 207 - .equiv SE_W112, 208 - .equiv SE_W197, 209 - .equiv SE_W199, 210 - .equiv SE_W236, 211 - .equiv SE_W204, 212 - .equiv SE_W268, 213 - .equiv SE_W070, 214 - .equiv SE_W063, 215 - .equiv SE_W127, 216 - .equiv SE_W179, 217 - .equiv SE_W151, 218 - .equiv SE_W201, 219 - .equiv SE_W161, 220 - .equiv SE_W161B, 221 - .equiv SE_W227, 222 - .equiv SE_W227B, 223 - .equiv SE_W226, 224 - .equiv SE_W208, 225 - .equiv SE_W213, 226 - .equiv SE_W213B, 227 - .equiv SE_W234, 228 - .equiv SE_W260, 229 - .equiv SE_W328, 230 - .equiv SE_W320, 231 - .equiv SE_W255, 232 - .equiv SE_W291, 233 - .equiv SE_W089, 234 - .equiv SE_W239, 235 - .equiv SE_W230, 236 - .equiv SE_W281, 237 - .equiv SE_W327, 238 - .equiv SE_W287, 239 - .equiv SE_W257, 240 - .equiv SE_W253, 241 - .equiv SE_W258, 242 - .equiv SE_W322, 243 - .equiv SE_W298, 244 - .equiv SE_W287B, 245 - .equiv SE_W114, 246 - .equiv SE_W063B, 247 - - .equiv BGM_STOP, 349 - .equiv BGM_TETSUJI, 350 - .equiv BGM_FIELD13, 351 - .equiv BGM_KACHI22, 352 - .equiv BGM_KACHI2, 353 - .equiv BGM_KACHI3, 354 - .equiv BGM_KACHI5, 355 - .equiv BGM_PCC, 356 - .equiv BGM_NIBI, 357 - .equiv BGM_SUIKUN, 358 - .equiv BGM_DOORO1, 359 - .equiv BGM_DOORO_X1, 360 - .equiv BGM_DOORO_X3, 361 - .equiv BGM_MACHI_S2, 362 - .equiv BGM_MACHI_S4, 363 - .equiv BGM_GIM, 364 - .equiv BGM_NAMINORI, 365 - .equiv BGM_DAN01, 366 - .equiv BGM_FANFA1, 367 - .equiv BGM_ME_ASA, 368 - .equiv BGM_ME_BACHI, 369 - .equiv BGM_FANFA4, 370 - .equiv BGM_FANFA5, 371 - .equiv BGM_ME_WAZA, 372 - .equiv BGM_BIJYUTU, 373 - .equiv BGM_DOORO_X4, 374 - .equiv BGM_FUNE_KAN, 375 - .equiv BGM_ME_SHINKA, 376 - .equiv BGM_SHINKA, 377 - .equiv BGM_ME_WASURE, 378 - .equiv BGM_SYOUJOEYE, 379 - .equiv BGM_BOYEYE, 380 - .equiv BGM_DAN02, 381 - .equiv BGM_MACHI_S3, 382 - .equiv BGM_ODAMAKI, 383 - .equiv BGM_B_TOWER, 384 - .equiv BGM_SWIMEYE, 385 - .equiv BGM_DAN03, 386 - .equiv BGM_ME_KINOMI, 387 - .equiv BGM_ME_TAMA, 388 - .equiv BGM_ME_B_BIG, 389 - .equiv BGM_ME_B_SMALL, 390 - .equiv BGM_ME_ZANNEN, 391 - .equiv BGM_BD_TIME, 392 - .equiv BGM_TEST1, 393 - .equiv BGM_TEST2, 394 - .equiv BGM_TEST3, 395 - .equiv BGM_TEST4, 396 - .equiv BGM_TEST, 397 - .equiv BGM_GOMACHI0, 398 - .equiv BGM_GOTOWN, 399 - .equiv BGM_POKECEN, 400 - .equiv BGM_NEXTROAD, 401 - .equiv BGM_GRANROAD, 402 - .equiv BGM_CYCLING, 403 - .equiv BGM_FRIENDLY, 404 - .equiv BGM_MISHIRO, 405 - .equiv BGM_TOZAN, 406 - .equiv BGM_GIRLEYE, 407 - .equiv BGM_MINAMO, 408 - .equiv BGM_ASHROAD, 409 - .equiv BGM_EVENT0, 410 - .equiv BGM_DEEPDEEP, 411 - .equiv BGM_KACHI1, 412 - .equiv BGM_TITLE3, 413 - .equiv BGM_DEMO1, 414 - .equiv BGM_GIRL_SUP, 415 - .equiv BGM_HAGESHII, 416 - .equiv BGM_KAKKOII, 417 - .equiv BGM_KAZANBAI, 418 - .equiv BGM_AQA_0, 419 - .equiv BGM_TSURETEK, 420 - .equiv BGM_BOY_SUP, 421 - .equiv BGM_RAINBOW, 422 - .equiv BGM_AYASII, 423 - .equiv BGM_KACHI4, 424 - .equiv BGM_ROPEWAY, 425 - .equiv BGM_CASINO, 426 - .equiv BGM_HIGHTOWN, 427 - .equiv BGM_SAFARI, 428 - .equiv BGM_C_ROAD, 429 - .equiv BGM_AJITO, 430 - .equiv BGM_M_BOAT, 431 - .equiv BGM_M_DUNGON, 432 - .equiv BGM_FINECITY, 433 - .equiv BGM_MACHUPI, 434 - .equiv BGM_P_SCHOOL, 435 - .equiv BGM_DENDOU, 436 - .equiv BGM_TONEKUSA, 437 - .equiv BGM_MABOROSI, 438 - .equiv BGM_CON_FAN, 439 - .equiv BGM_CONTEST0, 440 - .equiv BGM_MGM0, 441 - .equiv BGM_T_BATTLE, 442 - .equiv BGM_OOAME, 443 - .equiv BGM_HIDERI, 444 - .equiv BGM_RUNECITY, 445 - .equiv BGM_CON_K, 446 - .equiv BGM_EIKOU_R, 447 - .equiv BGM_KARAKURI, 448 - .equiv BGM_HUTAGO, 449 - .equiv BGM_SITENNOU, 450 - .equiv BGM_YAMA_EYE, 451 - .equiv BGM_CONLOBBY, 452 - .equiv BGM_INTER_V, 453 - .equiv BGM_DAIGO, 454 - .equiv BGM_THANKFOR, 455 - .equiv BGM_END, 456 - .equiv BGM_BATTLE_FRONTIER, 457 - .equiv BGM_BATTLE_ARENA, 458 - .equiv BGM_ME_BATTLE_POINTS, 459 - .equiv BGM_ME_MATCH_CALL, 460 - .equiv BGM_BATTLE_PYRAMID, 461 - .equiv BGM_BATTLE_PYRAMID_SUMMIT, 462 - .equiv BGM_BATTLE_PALACE, 463 - .equiv BGM_FANFA_RAYQUAZA, 464 - .equiv BGM_BATTLE_TOWER, 465 - .equiv BGM_ME_BATTLE_SYMBOL, 466 - .equiv BGM_BATTLE_DOME_TOURNAMENT, 467 - .equiv BGM_BATTLE_PIKE, 468 - .equiv BGM_BATTLE_FACTORY, 469 - .equiv BGM_BATTLE_LEGENDARY, 470 - .equiv BGM_BATTLE_FRONTIER_BRAIN, 471 - .equiv BGM_BATTLE_MEW, 472 - .equiv BGM_BATTLE_DOME, 473 - .equiv BGM_BATTLE27, 474 - .equiv BGM_BATTLE31, 475 - .equiv BGM_BATTLE20, 476 - .equiv BGM_BATTLE32, 477 - .equiv BGM_BATTLE33, 478 - .equiv BGM_BATTLE36, 479 - .equiv BGM_BATTLE34, 480 - .equiv BGM_BATTLE35, 481 - .equiv BGM_BATTLE38, 482 - .equiv BGM_BATTLE30, 483 - .equiv BGM_FRLG_FOLLOW_ME, 484 - .equiv BGM_FRLG_GAMECORNER, 485 - .equiv BGM_FRLG_ROCKET_HIDEOUT, 486 - .equiv BGM_FRLG_GYM, 487 - .equiv BGM_FRLG_JIGGLYPUFF, 488 - .equiv BGM_FRLG_OPENING, 489 - .equiv BGM_FRLG_TITLE, 490 - .equiv BGM_FRLG_CINNABAR_ISLAND, 491 - .equiv BGM_FRLG_LAVENDER_TOWN, 492 - .equiv BGM_FRLG_HEALING_TEST, 493 - .equiv BGM_FRLG_BICYCLE, 494 - .equiv BGM_FRLG_SUSPICIOUS_EYE, 495 - .equiv BGM_FRLG_GIRL_EYE, 496 - .equiv BGM_FRLG_BOY_EYE, 497 - .equiv BGM_FRLG_CONGRATULATIONS_HALL_OF_FAME, 498 - .equiv BGM_FRLG_VIRIDIAN_FOREST, 499 - .equiv BGM_FRLG_MT_MOON, 500 - .equiv BGM_FRLG_POKEMON_MANSION, 501 - .equiv BGM_FRLG_CREDITS, 502 - .equiv BGM_FRLG_ROUTE_1, 503 - .equiv BGM_FRLG_ROUTE_24, 504 - .equiv BGM_FRLG_ROUTE_3, 505 - .equiv BGM_FRLG_ROUTE_11, 506 - .equiv BGM_FRLG_INDIGO_PLATEAU, 507 - .equiv BGM_FRLG_BATTLE_LEADER, 508 - .equiv BGM_FRLG_BATTLE_TRAINER, 509 - .equiv BGM_FRLG_BATTLE_WILD_POKEMON, 510 - .equiv BGM_FRLG_BATTLE_CHAMPION, 511 - .equiv BGM_FRLG_PALLET_TOWN, 512 - .equiv BGM_FRLG_OAK_LAB, 513 - .equiv BGM_FRLG_PROF_OAK, 514 - .equiv BGM_FRLG_POKEMON_CENTER, 515 - .equiv BGM_FRLG_SS_ANNE, 516 - .equiv BGM_FRLG_SURF, 517 - .equiv BGM_FRLG_POKEMON_TOWER, 518 - .equiv BGM_FRLG_SILPH, 519 - .equiv BGM_FRLG_CERULEAN_CITY, 520 - .equiv BGM_FRLG_CELADON_CITY, 521 - .equiv BGM_FRLG_KACHI_TRAINER, 522 - .equiv BGM_FRLG_KACHI_WILD_POKEMON, 523 - .equiv BGM_FRLG_KACHI_LEADER, 524 - .equiv BGM_FRLG_VERMILION_CITY, 525 - .equiv BGM_FRLG_VIRIDIAN_CITY, 526 - .equiv BGM_FRLG_RIVAL, 527 - .equiv BGM_FRLG_RIVAL_POSTBATTLE, 528 - .equiv BGM_FRLG_ME_POKEDEX_EVAL, 529 - .equiv BGM_FRLG_ME_KEYITEM, 530 - .equiv BGM_FRLG_FANFA_POKEMON_CAUGHT, 531 - .equiv BGM_FRLG_FANFA_TRAINERCARD_PHOTO, 532 - .equiv BGM_FRLG_GAMEFREAK_LOGO, 533 - .equiv BGM_FRLG_CAUGHT_POKEMON, 534 - .equiv BGM_FRLG_GAME_EXPLANATION_START, 535 - .equiv BGM_FRLG_GAME_EXPLANATION_MIDDLE, 536 - .equiv BGM_FRLG_GAME_EXPLANATION_END, 537 - .equiv BGM_FRLG_POKEMON_JUMP, 538 - .equiv BGM_FRLG_UNION_ROOM, 539 - .equiv BGM_FRLG_POKEMON_NETWORK_CENTER, 540 - .equiv BGM_FRLG_MYSTERY_GIFT, 541 - .equiv BGM_FRLG_DODRIO_BERRY_PICK, 542 - .equiv BGM_FRLG_MT_EMBER, 543 - .equiv BGM_FRLG_TEACHY_TV_EPISODE, 544 - .equiv BGM_FRLG_SEVII_ISLANDS, 545 - .equiv BGM_FRLG_TANOBY_RUINS, 546 - .equiv BGM_FRLG_ISLAND_ONE, 547 - .equiv BGM_FRLG_ISLAND_FOUR, 548 - .equiv BGM_FRLG_ISLAND_SIX, 549 - .equiv BGM_FRLG_FLUTE, 550 - .equiv BGM_FRLG_BATTLE_DEOXYS, 551 - .equiv BGM_FRLG_BATTLE_MEWTWO, 552 - .equiv BGM_FRLG_BATTLE_LEGENDARY, 553 - .equiv BGM_FRLG_LEADER_EYE, 554 - .equiv BGM_FRLG_DEOXYS_EYE, 555 - .equiv BGM_FRLG_TRAINER_TOWER, 556 - .equiv BGM_FRLG_HALL_OF_FAME_PALLET_TOWN, 557 - .equiv BGM_FRLG_TEACHY_TV, 558 - - .equiv BGM_ROUTE_118, 0x7fff diff --git a/constants/variables.inc b/constants/variables.inc deleted file mode 100644 index 47748891b..000000000 --- a/constants/variables.inc +++ /dev/null @@ -1,278 +0,0 @@ - .equiv VAR_0x4000, 0x4000 - .equiv VAR_0x4001, 0x4001 - .equiv VAR_0x4002, 0x4002 - .equiv VAR_0x4003, 0x4003 - .equiv VAR_0x4004, 0x4004 - .equiv VAR_0x4005, 0x4005 - .equiv VAR_0x4006, 0x4006 - .equiv VAR_0x4007, 0x4007 - .equiv VAR_0x4008, 0x4008 - .equiv VAR_0x4009, 0x4009 - .equiv VAR_0x400A, 0x400A - .equiv VAR_0x400B, 0x400B - .equiv VAR_0x400C, 0x400C - .equiv VAR_0x400D, 0x400D - .equiv VAR_0x400E, 0x400E - .equiv VAR_0x400F, 0x400F - .equiv VAR_0x4010, 0x4010 - .equiv VAR_0x4011, 0x4011 - .equiv VAR_0x4012, 0x4012 - .equiv VAR_0x4013, 0x4013 - .equiv VAR_0x4014, 0x4014 - .equiv VAR_0x4015, 0x4015 - .equiv VAR_0x4016, 0x4016 - .equiv VAR_0x4017, 0x4017 - .equiv VAR_0x4018, 0x4018 - .equiv VAR_0x4019, 0x4019 - .equiv VAR_0x401A, 0x401A - .equiv VAR_0x401B, 0x401B - .equiv VAR_0x401C, 0x401C - .equiv VAR_0x401D, 0x401D - .equiv VAR_0x401E, 0x401E - .equiv VAR_0x401F, 0x401F - .equiv VAR_RECYCLE_GOODS, 0x4020 - .equiv VAR_REPEL_STEP_COUNT, 0x4021 - .equiv VAR_ICE_STEP_COUNT, 0x4022 - .equiv VAR_FIRST_POKE, 0x4023 - .equiv VAR_MIRAGE_RND_H, 0x4024 - .equiv VAR_MIRAGE_RND_L, 0x4025 - .equiv VAR_SECRET_BASE_MAP, 0x4026 - .equiv VAR_0x4027, 0x4027 - .equiv VAR_0x4028, 0x4028 - .equiv VAR_0x4029, 0x4029 - .equiv VAR_HAPPINESS_STEP_COUNTER, 0x402A - .equiv VAR_POISON_STEP_COUNTER, 0x402B - .equiv VAR_RESET_RTC_ENABLE, 0x402C - .equiv VAR_0x402D, 0x402D - .equiv VAR_0x402E, 0x402E - .equiv VAR_0x402F, 0x402F - .equiv VAR_0x4030, 0x4030 - .equiv VAR_0x4031, 0x4031 - .equiv VAR_0x4032, 0x4032 - .equiv VAR_0x4033, 0x4033 - .equiv VAR_0x4034, 0x4034 - .equiv VAR_0x4035, 0x4035 - .equiv VAR_STORAGE_UNKNOWN, 0x4036 - .equiv VAR_0x4037, 0x4037 - .equiv VAR_0x4038, 0x4038 - .equiv VAR_0x4039, 0x4039 - .equiv VAR_0x403A, 0x403A - .equiv VAR_0x403B, 0x403B - .equiv VAR_0x403C, 0x403C - .equiv VAR_0x403D, 0x403D - .equiv VAR_ALTERING_CAVE_WILD_SET, 0x403E - .equiv VAR_0x403F, 0x403F - .equiv VAR_DAYS, 0x4040 - .equiv VAR_0x4041, 0x4041 - .equiv VAR_0x4042, 0x4042 - .equiv VAR_DEPT_STORE_FLOOR, 0x4043 - .equiv VAR_0x4044, 0x4044 - .equiv VAR_POKELOT_PRIZE, 0x4045 - .equiv VAR_NATIONAL_DEX, 0x4046 - .equiv VAR_SEEDOT_SIZE_RECORD, 0x4047 - .equiv VAR_ASH_GATHER_COUNT, 0x4048 - .equiv VAR_BIRCH_STATE, 0x4049 - .equiv VAR_CRUISE_STEP_COUNT, 0x404A - .equiv VAR_POKELOT_RND1, 0x404B - .equiv VAR_POKELOT_RND2, 0x404C - .equiv VAR_0x404D, 0x404D - .equiv VAR_0x404E, 0x404E - .equiv VAR_LOTAD_SIZE_RECORD, 0x404F - .equiv VAR_0x4050, 0x4050 - .equiv VAR_0x4051, 0x4051 - .equiv VAR_0x4052, 0x4052 - .equiv VAR_0x4053, 0x4053 - .equiv VAR_0x4054, 0x4054 - .equiv VAR_0x4055, 0x4055 - .equiv VAR_0x4056, 0x4056 - .equiv VAR_0x4057, 0x4057 - .equiv VAR_0x4058, 0x4058 - .equiv VAR_0x4059, 0x4059 - .equiv VAR_0x405A, 0x405A - .equiv VAR_0x405B, 0x405B - .equiv VAR_0x405C, 0x405C - .equiv VAR_0x405D, 0x405D - .equiv VAR_0x405E, 0x405E - .equiv VAR_0x405F, 0x405F - .equiv VAR_0x4060, 0x4060 - .equiv VAR_0x4061, 0x4061 - .equiv VAR_0x4062, 0x4062 - .equiv VAR_0x4063, 0x4063 - .equiv VAR_0x4064, 0x4064 - .equiv VAR_0x4065, 0x4065 - .equiv VAR_0x4066, 0x4066 - .equiv VAR_0x4067, 0x4067 - .equiv VAR_0x4068, 0x4068 - .equiv VAR_0x4069, 0x4069 - .equiv VAR_0x406A, 0x406A - .equiv VAR_0x406B, 0x406B - .equiv VAR_0x406C, 0x406C - .equiv VAR_0x406D, 0x406D - .equiv VAR_0x406E, 0x406E - .equiv VAR_0x406F, 0x406F - .equiv VAR_0x4070, 0x4070 - .equiv VAR_0x4071, 0x4071 - .equiv VAR_0x4072, 0x4072 - .equiv VAR_0x4073, 0x4073 - .equiv VAR_0x4074, 0x4074 - .equiv VAR_0x4075, 0x4075 - .equiv VAR_0x4076, 0x4076 - .equiv VAR_0x4077, 0x4077 - .equiv VAR_0x4078, 0x4078 - .equiv VAR_0x4079, 0x4079 - .equiv VAR_0x407A, 0x407A - .equiv VAR_0x407B, 0x407B - .equiv VAR_0x407C, 0x407C - .equiv VAR_0x407D, 0x407D - .equiv VAR_0x407E, 0x407E - .equiv VAR_0x407F, 0x407F - .equiv VAR_0x4080, 0x4080 - .equiv VAR_0x4081, 0x4081 - .equiv VAR_0x4082, 0x4082 - .equiv VAR_0x4083, 0x4083 - .equiv VAR_0x4084, 0x4084 - .equiv VAR_0x4085, 0x4085 - .equiv VAR_0x4086, 0x4086 - .equiv VAR_0x4087, 0x4087 - .equiv VAR_0x4088, 0x4088 - .equiv VAR_0x4089, 0x4089 - .equiv VAR_0x408A, 0x408A - .equiv VAR_0x408B, 0x408B - .equiv VAR_0x408C, 0x408C - .equiv VAR_0x408D, 0x408D - .equiv VAR_0x408E, 0x408E - .equiv VAR_0x408F, 0x408F - .equiv VAR_0x4090, 0x4090 - .equiv VAR_0x4091, 0x4091 - .equiv VAR_0x4092, 0x4092 - .equiv VAR_0x4093, 0x4093 - .equiv VAR_0x4094, 0x4094 - .equiv VAR_0x4095, 0x4095 - .equiv VAR_0x4096, 0x4096 - .equiv VAR_0x4097, 0x4097 - .equiv VAR_0x4098, 0x4098 - .equiv VAR_0x4099, 0x4099 - .equiv VAR_0x409A, 0x409A - .equiv VAR_0x409B, 0x409B - .equiv VAR_0x409C, 0x409C - .equiv VAR_0x409D, 0x409D - .equiv VAR_0x409E, 0x409E - .equiv VAR_0x409F, 0x409F - .equiv VAR_0x40A0, 0x40A0 - .equiv VAR_0x40A1, 0x40A1 - .equiv VAR_0x40A2, 0x40A2 - .equiv VAR_0x40A3, 0x40A3 - .equiv VAR_0x40A4, 0x40A4 - .equiv VAR_0x40A5, 0x40A5 - .equiv VAR_0x40A6, 0x40A6 - .equiv VAR_0x40A7, 0x40A7 - .equiv VAR_0x40A8, 0x40A8 - .equiv VAR_0x40A9, 0x40A9 - .equiv VAR_0x40AA, 0x40AA - .equiv VAR_0x40AB, 0x40AB - .equiv VAR_0x40AC, 0x40AC - .equiv VAR_0x40AD, 0x40AD - .equiv VAR_0x40AE, 0x40AE - .equiv VAR_0x40AF, 0x40AF - .equiv VAR_0x40B0, 0x40B0 - .equiv VAR_0x40B1, 0x40B1 - .equiv VAR_0x40B2, 0x40B2 - .equiv VAR_0x40B3, 0x40B3 - .equiv VAR_PORTHOLE, 0x40B4 - .equiv VAR_0x40B5, 0x40B5 - .equiv VAR_0x40B6, 0x40B6 - .equiv VAR_0x40B7, 0x40B7 - .equiv VAR_0x40B8, 0x40B8 - .equiv VAR_0x40B9, 0x40B9 - .equiv VAR_0x40BA, 0x40BA - .equiv VAR_0x40BB, 0x40BB - .equiv VAR_0x40BC, 0x40BC - .equiv VAR_0x40BD, 0x40BD - .equiv VAR_0x40BE, 0x40BE - .equiv VAR_0x40BF, 0x40BF - .equiv VAR_0x40C0, 0x40C0 - .equiv VAR_0x40C1, 0x40C1 - .equiv VAR_0x40C2, 0x40C2 - .equiv VAR_0x40C3, 0x40C3 - .equiv VAR_0x40C4, 0x40C4 - .equiv VAR_0x40C5, 0x40C5 - .equiv VAR_0x40C6, 0x40C6 - .equiv VAR_0x40C7, 0x40C7 - .equiv VAR_0x40C8, 0x40C8 - .equiv VAR_0x40C9, 0x40C9 - .equiv VAR_0x40CA, 0x40CA - .equiv VAR_0x40CB, 0x40CB - .equiv VAR_0x40CC, 0x40CC - .equiv VAR_0x40CD, 0x40CD - .equiv VAR_0x40CE, 0x40CE - .equiv VAR_FRONTIER_FACILITY, 0x40CF - .equiv VAR_0x40D0, 0x40D0 - .equiv VAR_0x40D1, 0x40D1 - .equiv VAR_0x40D2, 0x40D2 - .equiv VAR_0x40D3, 0x40D3 - .equiv VAR_0x40D4, 0x40D4 - .equiv VAR_0x40D5, 0x40D5 - .equiv VAR_0x40D6, 0x40D6 - .equiv VAR_0x40D7, 0x40D7 - .equiv VAR_0x40D8, 0x40D8 - .equiv VAR_0x40D9, 0x40D9 - .equiv VAR_0x40DA, 0x40DA - .equiv VAR_0x40DB, 0x40DB - .equiv VAR_0x40DC, 0x40DC - .equiv VAR_0x40DD, 0x40DD - .equiv VAR_0x40DE, 0x40DE - .equiv VAR_0x40DF, 0x40DF - .equiv VAR_0x40E0, 0x40E0 - .equiv VAR_0x40E1, 0x40E1 - .equiv VAR_0x40E2, 0x40E2 - .equiv VAR_0x40E3, 0x40E3 - .equiv VAR_0x40E4, 0x40E4 - .equiv VAR_0x40E5, 0x40E5 - .equiv VAR_DAILY_SLOTS, 0x40E6 - .equiv VAR_DAILY_WILDS, 0x40E7 - .equiv VAR_DAILY_BLENDER, 0x40E8 - .equiv VAR_DAILY_PLANTED_BERRIES, 0x40E9 - .equiv VAR_DAILY_PICKED_BERRIES, 0x40EA - .equiv VAR_DAILY_ROULETTE, 0x40EB - .equiv VAR_0x40EC, 0x40EC - .equiv VAR_0x40ED, 0x40ED - .equiv VAR_0x40EE, 0x40EE - .equiv VAR_0x40EF, 0x40EF - .equiv VAR_0x40F0, 0x40F0 - .equiv VAR_DAILY_BP, 0x40F1 - .equiv VAR_0x40F2, 0x40F2 - .equiv VAR_0x40F3, 0x40F3 - .equiv VAR_0x40F4, 0x40F4 - .equiv VAR_0x40F5, 0x40F5 - .equiv VAR_0x40F6, 0x40F6 - .equiv VAR_0x40F7, 0x40F7 - .equiv VAR_0x40F8, 0x40F8 - .equiv VAR_0x40F9, 0x40F9 - .equiv VAR_0x40FA, 0x40FA - .equiv VAR_0x40FB, 0x40FB - .equiv VAR_0x40FC, 0x40FC - .equiv VAR_0x40FD, 0x40FD - .equiv VAR_0x40FE, 0x40FE - .equiv VAR_0x40FF, 0x40FF - - .equiv VAR_0x8000, 0x8000 - .equiv VAR_0x8001, 0x8001 - .equiv VAR_0x8002, 0x8002 - .equiv VAR_0x8003, 0x8003 - .equiv VAR_0x8004, 0x8004 - .equiv VAR_0x8005, 0x8005 - .equiv VAR_0x8006, 0x8006 - .equiv VAR_0x8007, 0x8007 - .equiv VAR_0x8008, 0x8008 - .equiv VAR_0x8009, 0x8009 - .equiv VAR_0x800A, 0x800A - .equiv VAR_0x800B, 0x800B - .equiv VAR_FACING, 0x800C - .equiv VAR_RESULT, 0x800D - .equiv VAR_ITEM_ID, 0x800E - .equiv VAR_LAST_TALKED, 0x800F - .equiv VAR_CONTEST_RANK, 0x8010 - .equiv VAR_CONTEST_CATEGORY, 0x8011 - .equiv VAR_MON_BOX_ID, 0x8012 - .equiv VAR_MON_BOX_POS, 0x8013 - .equiv VAR_0x8014, 0x8014 diff --git a/data/battle_frontier/battle_frontier_mons.inc b/data/battle_frontier/battle_frontier_mons.inc index 47ba6b4ef..6b77c8378 100644 --- a/data/battle_frontier/battle_frontier_mons.inc +++ b/data/battle_frontier/battle_frontier_mons.inc @@ -960,7 +960,7 @@ gBattleFrontierMons:: @ 85D97BC .4byte NATURE_DOCILE @ 137 - .2byte SPECIES_FARFETCH_D + .2byte SPECIES_FARFETCHD .2byte MOVE_SLASH, MOVE_KNOCK_OFF, MOVE_SWORDS_DANCE, MOVE_AGILITY .byte BATTLE_FRONTIER_ITEM_STICK .byte F_EV_SPREAD_SP_DEFENSE | F_EV_SPREAD_DEFENSE | F_EV_SPREAD_HP diff --git a/data/battle_frontier/battle_frontier_trainers.inc b/data/battle_frontier/battle_frontier_trainers.inc index fc8f29261..fc97ffe89 100644 --- a/data/battle_frontier/battle_frontier_trainers.inc +++ b/data/battle_frontier/battle_frontier_trainers.inc @@ -4,389 +4,389 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_YOUNGSTER .string "BRADY$", 8 @ pre-battle speech - ec_word I_AM - ec_word NEVER - ec_word GOING - ec_word TO - ec_word LOSE - ec_word EXCL -@ win speech - ec_word I_AM - ec_word STRONG - ec_word AREN_T - ec_word I - ec_word QUES - .2byte -1 -@ loss speech - ec_word WHAT - ec_word QUES - .2byte -1 - ec_word BUT - ec_word HOW - ec_word QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_NEVER + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_LOSE + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_STRONG + .2byte EC_WORD_AREN_T + .2byte EC_WORD_I + .2byte EC_WORD_QUES + .2byte -1 +@ loss speech + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES + .2byte -1 + .2byte EC_WORD_BUT + .2byte EC_WORD_HOW + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Brady @ 1 .4byte TRAINER_CLASS_YOUNGSTER .string "CONNER$", 8 @ pre-battle speech - ec_word LOSING - ec_word DOESN_T - ec_word BUG - ec_word ME + .2byte EC_WORD_LOSING + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_BUG + .2byte EC_WORD_ME .2byte -1 .2byte -1 @ win speech - ec_word A - ec_word WIN - ec_word IS - ec_word JUST - ec_word AWESOME + .2byte EC_WORD_A + .2byte EC_WORD_WIN + .2byte EC_WORD_IS + .2byte EC_WORD_JUST + .2byte EC_WORD_AWESOME .2byte -1 @ loss speech - ec_word DARN - ec_word ELLIPSIS - ec_word LOSING - ec_word DOES - ec_word BUG - ec_word ME + .2byte EC_WORD_DARN + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_LOSING + .2byte EC_WORD_DOES + .2byte EC_WORD_BUG + .2byte EC_WORD_ME .4byte gBattleFrontierTrainerMons_Conner @ 2 .4byte TRAINER_CLASS_YOUNGSTER .string "BRADLEY$", 8 @ pre-battle speech - ec_word HEY_THERE - ec_word EXCL - ec_word YOU_RE - ec_word MY - ec_word OPPONENT - ec_word TODAY -@ win speech - ec_word HAHAHA - ec_word EXCL - .2byte -1 - ec_word SEE_YA - ec_word LATER - ec_word EXCL -@ loss speech - ec_word TOMORROW - ec_word IS - ec_word WHEN - ec_word WE - ec_word REALLY - ec_word BATTLE + .2byte EC_WORD_HEY_THERE + .2byte EC_WORD_EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MY + .2byte EC_WORD_OPPONENT + .2byte EC_WORD_TODAY +@ win speech + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_EXCL + .2byte -1 + .2byte EC_WORD_SEE_YA + .2byte EC_WORD_LATER + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_TOMORROW + .2byte EC_WORD_IS + .2byte EC_WORD_WHEN + .2byte EC_WORD_WE + .2byte EC_WORD_REALLY + .2byte EC_WORD_BATTLE .4byte gBattleFrontierTrainerMons_Bradley @ 3 .4byte TRAINER_CLASS_LASS .string "CYBIL$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word REALLY - ec_word NOT_VERY - ec_word SCARY - ec_word AT - ec_word ALL -@ win speech - ec_word IT_S - ec_word SAD - ec_word TO - ec_word SEE - ec_word YOU - ec_move2 STRUGGLE -@ loss speech - ec_word THIS - ec_word CAN_T - ec_word BE - ec_word HAPPENING - ec_word TO_ME - ec_word EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_REALLY + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_SCARY + .2byte EC_WORD_AT + .2byte EC_WORD_ALL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_SAD + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_YOU + .2byte EC_MOVE2(STRUGGLE) +@ loss speech + .2byte EC_WORD_THIS + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BE + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_TO_ME + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Cybil @ 4 .4byte TRAINER_CLASS_LASS .string "RODETTE$", 8 @ pre-battle speech - ec_word OH - ec_word THIS - ec_word IS - ec_word SO - ec_word EXCITING - ec_word EXCL -@ win speech - ec_word IT_S - ec_word INCREDIBLE - ec_word HOW - ec_word STRONG - ec_word I_AM - ec_word EXCL -@ loss speech - ec_word OH_DEAR - ec_word ELLIPSIS - ec_word I_AM - ec_word JUST - ec_word NO - ec_word GOOD + .2byte EC_WORD_OH + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_SO + .2byte EC_WORD_EXCITING + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_HOW + .2byte EC_WORD_STRONG + .2byte EC_WORD_I_AM + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_OH_DEAR + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_JUST + .2byte EC_WORD_NO + .2byte EC_WORD_GOOD .4byte gBattleFrontierTrainerMons_Rodette @ 5 .4byte TRAINER_CLASS_LASS .string "PEGGY$", 8 @ pre-battle speech - ec_word GET - ec_word READY - ec_word TO - ec_word BE - ec_word DESTROYED - ec_word EXCL -@ win speech - ec_word HAHAHA - ec_word EXCL_EXCL - .2byte -1 - ec_word I_AM - ec_word LOLLING - ec_word EXCL -@ loss speech - ec_word I_AM - ec_word FEELING - ec_word SAD - ec_word THANKS - ec_word TO - ec_word YOU + .2byte EC_WORD_GET + .2byte EC_WORD_READY + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_EXCL_EXCL + .2byte -1 + .2byte EC_WORD_I_AM + .2byte EC_WORD_LOLLING + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_SAD + .2byte EC_WORD_THANKS + .2byte EC_WORD_TO + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Peggy @ 6 .4byte TRAINER_CLASS_SCHOOL_KID_1 .string "KEITH$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word JUST - ec_word STUDY - ec_word YOU - ec_word KNOW -@ win speech - ec_word YOU - ec_word DON_T - ec_word STUDY - ec_word ENOUGH - ec_word ELLIPSIS - .2byte -1 -@ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word STUDY - ec_word MORE - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_JUST + .2byte EC_WORD_STUDY + .2byte EC_WORD_YOU + .2byte EC_WORD_KNOW +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_STUDY + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_ELLIPSIS + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_STUDY + .2byte EC_WORD_MORE + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Keith @ 7 .4byte TRAINER_CLASS_SCHOOL_KID_1 .string "GRAYSON$", 8 @ pre-battle speech - ec_word A - ec_word POKEMON - ec_word BATTLE - ec_word ISN_T - ec_word CHILD_S_PLAY - ec_word EXCL -@ win speech - ec_word YOU_RE - ec_word DONE - ec_word AREN_T - ec_word YOU - ec_word QUES - .2byte -1 -@ loss speech - ec_word WE - ec_word WERE - ec_word LIKE - ec_word TOYS - ec_word TO - ec_word YOU + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_BATTLE + .2byte EC_WORD_ISN_T + .2byte EC_WORD_CHILD_S_PLAY + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_DONE + .2byte EC_WORD_AREN_T + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES + .2byte -1 +@ loss speech + .2byte EC_WORD_WE + .2byte EC_WORD_WERE + .2byte EC_WORD_LIKE + .2byte EC_WORD_TOYS + .2byte EC_WORD_TO + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Grayson @ 8 .4byte TRAINER_CLASS_SCHOOL_KID_1 .string "GLENN$", 8 @ pre-battle speech - ec_word I - ec_word WOULD - ec_word BE - ec_word COOL - ec_word IF_I_WIN + .2byte EC_WORD_I + .2byte EC_WORD_WOULD + .2byte EC_WORD_BE + .2byte EC_WORD_COOL + .2byte EC_WORD_IF_I_WIN .2byte -1 @ win speech - ec_word COOL - ec_word EXCL + .2byte EC_WORD_COOL + .2byte EC_WORD_EXCL .2byte -1 - ec_word THAT_S - ec_word WHAT - ec_word I_AM + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM @ loss speech - ec_word I_AM - ec_word NOT - ec_word GOING - ec_word TO - ec_word BE - ec_word COOL + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_COOL .4byte gBattleFrontierTrainerMons_Glenn @ 9 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "LILIANA$", 8 @ pre-battle speech - ec_word I - ec_word WON_T - ec_word GIVE_UP - ec_word UNTIL - ec_word I - ec_word WIN -@ win speech - ec_word THERE - ec_word IS - ec_word NO - ec_word SURRENDER - ec_word IN - ec_word ME -@ loss speech - ec_word THAT_S - ec_word IT - ec_word ELLIPSIS - ec_word I - ec_word GIVE_UP - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_WON_T + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_UNTIL + .2byte EC_WORD_I + .2byte EC_WORD_WIN +@ win speech + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_NO + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_IN + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_IT + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Liliana @ 10 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "ELISE$", 8 @ pre-battle speech - ec_word MY - ec_word STRATEGY - ec_word IS - ec_word FROM - ec_word MY - ec_word FATHER -@ win speech - ec_word I - ec_word WIN - ec_word EXCL - ec_word FATHER - ec_word I_VE - ec_word WON -@ loss speech - ec_word FORGIVE - ec_word ME - ec_word FATHER - ec_word FOR - ec_word I_VE - ec_word LOST + .2byte EC_WORD_MY + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_IS + .2byte EC_WORD_FROM + .2byte EC_WORD_MY + .2byte EC_WORD_FATHER +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WIN + .2byte EC_WORD_EXCL + .2byte EC_WORD_FATHER + .2byte EC_WORD_I_VE + .2byte EC_WORD_WON +@ loss speech + .2byte EC_WORD_FORGIVE + .2byte EC_WORD_ME + .2byte EC_WORD_FATHER + .2byte EC_WORD_FOR + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST .4byte gBattleFrontierTrainerMons_Elise @ 11 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "ZOEY$", 8 @ pre-battle speech - ec_word PLEASE - ec_word BATTLE - ec_word LIKE - ec_word YOU - ec_word MEAN - ec_word IT -@ win speech - ec_word THANK_YOU - ec_word EXCL_EXCL - .2byte -1 - ec_word THANK_YOU - ec_word SO - ec_word MUCH -@ loss speech - ec_word WERE - ec_word YOU - ec_word REALLY - ec_word BEING - ec_word SERIOUS - ec_word QUES + .2byte EC_WORD_PLEASE + .2byte EC_WORD_BATTLE + .2byte EC_WORD_LIKE + .2byte EC_WORD_YOU + .2byte EC_WORD_MEAN + .2byte EC_WORD_IT +@ win speech + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL_EXCL + .2byte -1 + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_SO + .2byte EC_WORD_MUCH +@ loss speech + .2byte EC_WORD_WERE + .2byte EC_WORD_YOU + .2byte EC_WORD_REALLY + .2byte EC_WORD_BEING + .2byte EC_WORD_SERIOUS + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Zoey @ 12 .4byte TRAINER_CLASS_RICH_BOY .string "MANUEL$", 8 @ pre-battle speech - ec_word ME - ec_word LOSE - ec_word QUES - ec_word THAT_S - ec_word PREPOSTEROUS - ec_word EXCL + .2byte EC_WORD_ME + .2byte EC_WORD_LOSE + .2byte EC_WORD_QUES + .2byte EC_WORD_THAT_S + .2byte EC_WORD_PREPOSTEROUS + .2byte EC_WORD_EXCL @ win speech - ec_word NATURALLY - ec_word I - ec_word WIN + .2byte EC_WORD_NATURALLY + .2byte EC_WORD_I + .2byte EC_WORD_WIN .2byte -1 .2byte -1 .2byte -1 @ loss speech - ec_word WAAAH - ec_word EXCL + .2byte EC_WORD_WAAAH + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word LOST - ec_word MOTHER + .2byte EC_WORD_I + .2byte EC_WORD_LOST + .2byte EC_WORD_MOTHER .4byte gBattleFrontierTrainerMons_Manuel @ 13 .4byte TRAINER_CLASS_RICH_BOY .string "RUSS$", 8 @ pre-battle speech - ec_word THEY - ec_word ALL - ec_word WANT - ec_word MY - ec_word FABULOUS - ec_word POKEMON -@ win speech - ec_word I - ec_word WILL - ec_word HAVE - ec_word A - ec_word POKEMON - ec_word PARTY -@ loss speech - ec_word HOW - ec_word COULD - ec_word YOU - ec_word DO - ec_word THAT - ec_word QUES + .2byte EC_WORD_THEY + .2byte EC_WORD_ALL + .2byte EC_WORD_WANT + .2byte EC_WORD_MY + .2byte EC_WORD_FABULOUS + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_PARTY +@ loss speech + .2byte EC_WORD_HOW + .2byte EC_WORD_COULD + .2byte EC_WORD_YOU + .2byte EC_WORD_DO + .2byte EC_WORD_THAT + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Russ @ 14 .4byte TRAINER_CLASS_RICH_BOY .string "DUSTIN$", 8 @ pre-battle speech - ec_word I - ec_word REALLY - ec_word LIKE - ec_word COOL - ec_word POKEMON + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_LIKE + .2byte EC_WORD_COOL + .2byte EC_WORD_POKEMON .2byte -1 @ win speech - ec_word I - ec_word LIKE - ec_word MYSELF - ec_word WHEN_I_WIN - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_MYSELF + .2byte EC_WORD_WHEN_I_WIN + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word I - ec_word LIKE - ec_word MYSELF - ec_word IF_I_LOSE - ec_word TOO + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_MYSELF + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_TOO .2byte -1 .4byte gBattleFrontierTrainerMons_Dustin @@ -394,50 +394,50 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_LADY .string "TINA$", 8 @ pre-battle speech - ec_word IF_I_WIN - ec_word YOU - ec_word CAN - ec_word HAVE - ec_word A - ec_move2 SWEET_KISS -@ win speech - ec_word HERE_IT_IS - ec_word YOUR - ec_move2 SWEET_KISS - ec_word FROM - ec_word MY - ec_pokemon2 JYNX -@ loss speech - ec_word YOU - ec_word WANT - ec_word A - ec_move1 SWIFT - ec_move2 MEGA_KICK - ec_word INSTEAD + .2byte EC_WORD_IF_I_WIN + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE2(SWEET_KISS) +@ win speech + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(SWEET_KISS) + .2byte EC_WORD_FROM + .2byte EC_WORD_MY + .2byte EC_POKEMON2(JYNX) +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_WANT + .2byte EC_WORD_A + .2byte EC_MOVE(SWIFT) + .2byte EC_MOVE2(MEGA_KICK) + .2byte EC_WORD_INSTEAD .4byte gBattleFrontierTrainerMons_Tina @ 16 .4byte TRAINER_CLASS_LADY .string "GILLIAN$", 8 @ pre-battle speech - ec_word THE - ec_word GOURMET - ec_word THING - ec_word IS - ec_word SO - ec_word YESTERDAY + .2byte EC_WORD_THE + .2byte EC_WORD_GOURMET + .2byte EC_WORD_THING + .2byte EC_WORD_IS + .2byte EC_WORD_SO + .2byte EC_WORD_YESTERDAY @ win speech - ec_word POKEMON - ec_word NEVER - ec_word GO - ec_word OUT - ec_word OF - ec_word FASHION + .2byte EC_WORD_POKEMON + .2byte EC_WORD_NEVER + .2byte EC_WORD_GO + .2byte EC_WORD_OUT + .2byte EC_WORD_OF + .2byte EC_WORD_FASHION @ loss speech - ec_word LOSING - ec_word DOESN_T - ec_word DISAPPOINT - ec_word ME + .2byte EC_WORD_LOSING + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_DISAPPOINT + .2byte EC_WORD_ME .2byte -1 .2byte -1 .4byte gBattleFrontierTrainerMons_Gillian @@ -446,103 +446,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_LADY .string "ZOE$", 8 @ pre-battle speech - ec_word I - ec_word HAVEN_T - ec_word A - ec_word WORRY - ec_word AT - ec_word ALL -@ win speech - ec_word LIFE - ec_word IS - ec_word ALWAYS - ec_word GOOD - ec_word TO_ME - .2byte -1 -@ loss speech - ec_word I - ec_word WORRY - ec_word ABOUT - ec_word MY - ec_word POKEMON - ec_word SKILL + .2byte EC_WORD_I + .2byte EC_WORD_HAVEN_T + .2byte EC_WORD_A + .2byte EC_WORD_WORRY + .2byte EC_WORD_AT + .2byte EC_WORD_ALL +@ win speech + .2byte EC_WORD_LIFE + .2byte EC_WORD_IS + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_GOOD + .2byte EC_WORD_TO_ME + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WORRY + .2byte EC_WORD_ABOUT + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_SKILL .4byte gBattleFrontierTrainerMons_Zoe @ 18 .4byte TRAINER_CLASS_CAMPER .string "CHEN$", 8 @ pre-battle speech - ec_word I_AM - ec_word TOTALLY - ec_word READY - ec_word TO - ec_word ROCK - ec_word TODAY -@ win speech - ec_word I_AM - ec_word READY - ec_word TO - ec_word GO - ec_word ON - ec_word EXCL -@ loss speech - ec_word I_VE - ec_word LOST - ec_word MY - ec_move1 FOCUS_ENERGY - ec_word AND - ec_word TOUGHNESS + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_READY + .2byte EC_WORD_TO + .2byte EC_WORD_ROCK + .2byte EC_WORD_TODAY +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_READY + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_ON + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST + .2byte EC_WORD_MY + .2byte EC_MOVE(FOCUS_ENERGY) + .2byte EC_WORD_AND + .2byte EC_WORD_TOUGHNESS .4byte gBattleFrontierTrainerMons_Chen @ 19 .4byte TRAINER_CLASS_CAMPER .string "AL$", 8 @ pre-battle speech - ec_word YOUR - ec_word LOOK - ec_word SAYS - ec_word YOU_RE - ec_word REALLY - ec_word TOUGH -@ win speech - ec_word IT_S - ec_word ME - ec_word WHO_IS - ec_word REALLY - ec_word TOUGH - .2byte -1 -@ loss speech - ec_word I_AM - ec_word RIGHT - ec_word EXCL - ec_word YOU_RE - ec_word REALLY - ec_word TOUGH + .2byte EC_WORD_YOUR + .2byte EC_WORD_LOOK + .2byte EC_WORD_SAYS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_REALLY + .2byte EC_WORD_TOUGH +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_ME + .2byte EC_WORD_WHO_IS + .2byte EC_WORD_REALLY + .2byte EC_WORD_TOUGH + .2byte -1 +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_RIGHT + .2byte EC_WORD_EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_REALLY + .2byte EC_WORD_TOUGH .4byte gBattleFrontierTrainerMons_Al @ 20 .4byte TRAINER_CLASS_CAMPER .string "MITCH$", 8 @ pre-battle speech - ec_word MOTHER - ec_word NATURE - ec_word IS - ec_word MY - ec_word ALLY - ec_word EXCL -@ win speech - ec_word WAS - ec_word THAT - ec_word ENOUGH - ec_word FOR - ec_word YOU - ec_word QUES -@ loss speech - ec_word MOTHER - ec_word NATURE - ec_word DIDN_T - ec_word LET_ME_WIN - ec_word QUES + .2byte EC_WORD_MOTHER + .2byte EC_WORD_NATURE + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_ALLY + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_WAS + .2byte EC_WORD_THAT + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_MOTHER + .2byte EC_WORD_NATURE + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_LET_ME_WIN + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Mitch @@ -550,25 +550,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PICNICKER .string "ANNE$", 8 @ pre-battle speech - ec_word I - ec_word CAN_T - ec_word WAIT - ec_word LET_S - ec_word BATTLE - ec_word NOW + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_WAIT + .2byte EC_WORD_LET_S + .2byte EC_WORD_BATTLE + .2byte EC_WORD_NOW @ win speech - ec_word MY - ec_word HAPPINESS - ec_word IS - ec_word OVERWHELMING - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_IS + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word YOU_VE - ec_word DESTROYED - ec_word MY - ec_word HAPPINESS - ec_word ELLIPSIS + .2byte EC_WORD_YOU_VE + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_MY + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Anne @@ -576,207 +576,207 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PICNICKER .string "ALIZE$", 8 @ pre-battle speech - ec_word CUTE - ec_word AND - ec_word AWFULLY - ec_word STRONG - ec_word THAT_S - ec_word ME -@ win speech - ec_word YUP - ec_word I_AM - ec_word CUTE - ec_word AND - ec_word AWFULLY - ec_word STRONG -@ loss speech - ec_word I_AM - ec_word WEAK - ec_word ELLIPSIS - ec_word BUT - ec_word I_AM - ec_word CUTE + .2byte EC_WORD_CUTE + .2byte EC_WORD_AND + .2byte EC_WORD_AWFULLY + .2byte EC_WORD_STRONG + .2byte EC_WORD_THAT_S + .2byte EC_WORD_ME +@ win speech + .2byte EC_WORD_YUP + .2byte EC_WORD_I_AM + .2byte EC_WORD_CUTE + .2byte EC_WORD_AND + .2byte EC_WORD_AWFULLY + .2byte EC_WORD_STRONG +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_WEAK + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_BUT + .2byte EC_WORD_I_AM + .2byte EC_WORD_CUTE .4byte gBattleFrontierTrainerMons_Alize @ 23 .4byte TRAINER_CLASS_PICNICKER .string "LAUREN$", 8 @ pre-battle speech - ec_word I_AM - ec_word OLD - ec_word BUT - ec_word I_AM - ec_word ALSO - ec_word GOOD -@ win speech - ec_word I - ec_word SAID - ec_word I_WAS - ec_word OLD - ec_word BUT - ec_word GOOD -@ loss speech - ec_word WHAT - ec_word A - ec_word WEIRD - ec_word DREAM - ec_word THAT_WAS - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_OLD + .2byte EC_WORD_BUT + .2byte EC_WORD_I_AM + .2byte EC_WORD_ALSO + .2byte EC_WORD_GOOD +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_SAID + .2byte EC_WORD_I_WAS + .2byte EC_WORD_OLD + .2byte EC_WORD_BUT + .2byte EC_WORD_GOOD +@ loss speech + .2byte EC_WORD_WHAT + .2byte EC_WORD_A + .2byte EC_WORD_WEIRD + .2byte EC_WORD_DREAM + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Lauren @ 24 .4byte TRAINER_CLASS_TUBER_2 .string "KIPP$", 8 @ pre-battle speech - ec_word IF_I_WIN - ec_word I_AM - ec_word GOING - ec_word TO - ec_word GO - ec_move2 SURF -@ win speech - ec_word YEAH - ec_word EXCL - ec_word I_AM - ec_word OFF - ec_word TO - ec_move2 SURF -@ loss speech - ec_word OH - ec_word NO - ec_word EXCL - ec_word A - ec_move1 WHIRLPOOL - ec_word EXCL + .2byte EC_WORD_IF_I_WIN + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_MOVE2(SURF) +@ win speech + .2byte EC_WORD_YEAH + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_OFF + .2byte EC_WORD_TO + .2byte EC_MOVE2(SURF) +@ loss speech + .2byte EC_WORD_OH + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL + .2byte EC_WORD_A + .2byte EC_MOVE(WHIRLPOOL) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Kipp @ 25 .4byte TRAINER_CLASS_TUBER_2 .string "JASON$", 8 @ pre-battle speech - ec_word TEACH - ec_word ME - ec_word A - ec_word GOOD - ec_word STRATEGY + .2byte EC_WORD_TEACH + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_WORD_GOOD + .2byte EC_WORD_STRATEGY .2byte -1 @ win speech - ec_word THAT_WAS - ec_word YOUR - ec_word GOOD - ec_word STRATEGY - ec_word QUES_EXCL + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_YOUR + .2byte EC_WORD_GOOD + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_QUES_EXCL .2byte -1 @ loss speech - ec_word WOW - ec_word THAT - ec_word IS - ec_word AN - ec_word AWESOME - ec_word STRATEGY + .2byte EC_WORD_WOW + .2byte EC_WORD_THAT + .2byte EC_WORD_IS + .2byte EC_WORD_AN + .2byte EC_WORD_AWESOME + .2byte EC_WORD_STRATEGY .4byte gBattleFrontierTrainerMons_Jason @ 26 .4byte TRAINER_CLASS_TUBER_2 .string "JOHN$", 8 @ pre-battle speech - ec_word I_AM - ec_word A - ec_word PRETTY - ec_word NEW - ec_word TRAINER - .2byte -1 -@ win speech - ec_word I_AM - ec_word NEW - ec_word BUT - ec_word I - ec_word WON - ec_word EXCL -@ loss speech - ec_word I_AM - ec_word NEW - ec_word SO - ec_word WHAT - ec_word IF_I_LOSE - ec_word QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_PRETTY + .2byte EC_WORD_NEW + .2byte EC_WORD_TRAINER + .2byte -1 +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_NEW + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_NEW + .2byte EC_WORD_SO + .2byte EC_WORD_WHAT + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_John @ 27 .4byte TRAINER_CLASS_TUBER_1 .string "ANN$", 8 @ pre-battle speech - ec_word IT_S - ec_word SO - ec_word EXCITING - ec_word IT - ec_word REALLY - ec_word IS -@ win speech - ec_word I_AM - ec_word SO - ec_word HAPPY - ec_word I - ec_word CAN - ec_word CRY -@ loss speech - ec_word I_AM - ec_word SO - ec_word SAD - ec_word I - ec_word WILL - ec_word CRY + .2byte EC_WORD_IT_S + .2byte EC_WORD_SO + .2byte EC_WORD_EXCITING + .2byte EC_WORD_IT + .2byte EC_WORD_REALLY + .2byte EC_WORD_IS +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_HAPPY + .2byte EC_WORD_I + .2byte EC_WORD_CAN + .2byte EC_WORD_CRY +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_SAD + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_CRY .4byte gBattleFrontierTrainerMons_Ann @ 28 .4byte TRAINER_CLASS_TUBER_1 .string "EILEEN$", 8 @ pre-battle speech - ec_word LET_S - ec_word PRETEND - ec_word I_AM - ec_word AN - ec_word ADULT - ec_word OK_QUES -@ win speech - ec_word SO - ec_word THIS - ec_word IS - ec_word AN - ec_word ADULT - ec_word FEELING -@ loss speech - ec_word AN - ec_word ADULT - ec_word CAN_T - ec_word BEAT - ec_word YOU - ec_word QUES + .2byte EC_WORD_LET_S + .2byte EC_WORD_PRETEND + .2byte EC_WORD_I_AM + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_OK_QUES +@ win speech + .2byte EC_WORD_SO + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_FEELING +@ loss speech + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BEAT + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Eileen @ 29 .4byte TRAINER_CLASS_TUBER_1 .string "CARLIE$", 8 @ pre-battle speech - ec_word MY - ec_word SUMMER - ec_word VACATION - ec_word IS - ec_word FOR - ec_word POKEMON -@ win speech - ec_word MY - ec_word SUMMER - ec_word VACATION - ec_word WILL - ec_word BE - ec_word AWESOME -@ loss speech - ec_word I - ec_word CAN_T_WIN - ec_word LIKE - ec_word THIS - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_SUMMER + .2byte EC_WORD_VACATION + .2byte EC_WORD_IS + .2byte EC_WORD_FOR + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_SUMMER + .2byte EC_WORD_VACATION + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_AWESOME +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T_WIN + .2byte EC_WORD_LIKE + .2byte EC_WORD_THIS + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Carlie @@ -784,389 +784,389 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_SWIMMER_M .string "GORDON$", 8 @ pre-battle speech - ec_word VICTORY - ec_word WILL - ec_word COME - ec_word TO_ME - ec_word EXCL + .2byte EC_WORD_VICTORY + .2byte EC_WORD_WILL + .2byte EC_WORD_COME + .2byte EC_WORD_TO_ME + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word OH_YEAH - ec_word EXCL + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word REALLY - ec_word WON + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_WON @ loss speech - ec_word NOTHING - ec_word IS - ec_word WORKING - ec_word OUT - ec_word FOR - ec_word ME + .2byte EC_WORD_NOTHING + .2byte EC_WORD_IS + .2byte EC_WORD_WORKING + .2byte EC_WORD_OUT + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .4byte gBattleFrontierTrainerMons_Gordon @ 31 .4byte TRAINER_CLASS_SWIMMER_M .string "AYDEN$", 8 @ pre-battle speech - ec_word COME_ON - ec_word I - ec_word NEED - ec_word A - ec_word HOT - ec_word BATTLE -@ win speech - ec_word I - ec_word NEED - ec_word WATER - ec_word TO - ec_word COOL - ec_word DOWN -@ loss speech - ec_word YOU - ec_word HAVE - ec_word ME - ec_word FEELING - ec_word ICE - ec_word COLD + .2byte EC_WORD_COME_ON + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_A + .2byte EC_WORD_HOT + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_WATER + .2byte EC_WORD_TO + .2byte EC_WORD_COOL + .2byte EC_WORD_DOWN +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_ME + .2byte EC_WORD_FEELING + .2byte EC_WORD_ICE + .2byte EC_WORD_COLD .4byte gBattleFrontierTrainerMons_Ayden @ 32 .4byte TRAINER_CLASS_SWIMMER_M .string "MARCO$", 8 @ pre-battle speech - ec_word I - ec_move2 SURF - ec_word IN - ec_word THE - ec_word WINTER - ec_word TOO -@ win speech - ec_word I - ec_word WILL - ec_word GO - ec_move2 SURF - ec_word RIGHT - ec_word NOW -@ loss speech - ec_word I - ec_word WILL - ec_move2 BEAT_UP - ec_word MY - ec_move2 SURF - ec_word BOARD + .2byte EC_WORD_I + .2byte EC_MOVE2(SURF) + .2byte EC_WORD_IN + .2byte EC_WORD_THE + .2byte EC_WORD_WINTER + .2byte EC_WORD_TOO +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_GO + .2byte EC_MOVE2(SURF) + .2byte EC_WORD_RIGHT + .2byte EC_WORD_NOW +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_MY + .2byte EC_MOVE2(SURF) + .2byte EC_WORD_BOARD .4byte gBattleFrontierTrainerMons_Marco @ 33 .4byte TRAINER_CLASS_SWIMMER_F .string "CIERRA$", 8 @ pre-battle speech - ec_word I - ec_word LIKE - ec_word TO - ec_word SYNCHRONIZE - ec_word MY - ec_word SWIFT_SWIM -@ win speech - ec_word MY - ec_word POKEMON - ec_word SYNCHRONIZE - ec_word WITH - ec_word ME - .2byte -1 -@ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word SYNCHRONIZE - ec_word BETTER - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_TO + .2byte EC_WORD_SYNCHRONIZE + .2byte EC_WORD_MY + .2byte EC_WORD_SWIFT_SWIM +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_SYNCHRONIZE + .2byte EC_WORD_WITH + .2byte EC_WORD_ME + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_SYNCHRONIZE + .2byte EC_WORD_BETTER + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Cierra @ 34 .4byte TRAINER_CLASS_SWIMMER_F .string "MARCY$", 8 @ pre-battle speech - ec_word I_AM - ec_word A - ec_word KNOCKOUT - ec_word YOU - ec_word CAN_T_WIN - ec_word EXCL -@ win speech - ec_word AFTER - ec_word ALL - ec_word I_AM - ec_word A - ec_word KNOCKOUT - ec_word EXCL -@ loss speech - ec_word THAT_S - ec_word NOT - ec_word THE - ec_word KNOCKOUT - ec_word I - ec_word MEAN + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_KNOCKOUT + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T_WIN + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_AFTER + .2byte EC_WORD_ALL + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_KNOCKOUT + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_NOT + .2byte EC_WORD_THE + .2byte EC_WORD_KNOCKOUT + .2byte EC_WORD_I + .2byte EC_WORD_MEAN .4byte gBattleFrontierTrainerMons_Marcy @ 35 .4byte TRAINER_CLASS_SWIMMER_F .string "KATHY$", 8 @ pre-battle speech - ec_word I_VE - ec_word WON - ec_word EVERY - ec_word MATCH - ec_word TODAY - ec_word EXCL -@ win speech - ec_word IT_S - ec_word SO - ec_word GREAT - ec_word TO - ec_word WIN - ec_word EXCL -@ loss speech - ec_word HUH_QUES - ec_word I - ec_word SHOULD - ec_word NOT - ec_word HAVE - ec_word LOST + .2byte EC_WORD_I_VE + .2byte EC_WORD_WON + .2byte EC_WORD_EVERY + .2byte EC_WORD_MATCH + .2byte EC_WORD_TODAY + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_SO + .2byte EC_WORD_GREAT + .2byte EC_WORD_TO + .2byte EC_WORD_WIN + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_I + .2byte EC_WORD_SHOULD + .2byte EC_WORD_NOT + .2byte EC_WORD_HAVE + .2byte EC_WORD_LOST .4byte gBattleFrontierTrainerMons_Kathy @ 36 .4byte TRAINER_CLASS_POKEFAN_1 .string "PEYTON$", 8 @ pre-battle speech - ec_word I_AM - ec_word NEVER - ec_word DISAPPOINTED - ec_word WITH - ec_word MY - ec_word POKEMON -@ win speech - ec_word I_AM - ec_word HAPPY - ec_word IF - ec_word WE - ec_word WIN - ec_word TOGETHER -@ loss speech - ec_word I - ec_word ADORE - ec_word MY - ec_word POKEMON - ec_word MORE - ec_word IF_I_LOSE + .2byte EC_WORD_I_AM + .2byte EC_WORD_NEVER + .2byte EC_WORD_DISAPPOINTED + .2byte EC_WORD_WITH + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY + .2byte EC_WORD_IF + .2byte EC_WORD_WE + .2byte EC_WORD_WIN + .2byte EC_WORD_TOGETHER +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_ADORE + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_MORE + .2byte EC_WORD_IF_I_LOSE .4byte gBattleFrontierTrainerMons_Peyton @ 37 .4byte TRAINER_CLASS_POKEFAN_1 .string "JULIAN$", 8 @ pre-battle speech - ec_word YOU - ec_word ADORE - ec_word YOUR - ec_word POKEMON - ec_word RIGHT - ec_word QUES -@ win speech - ec_word YOU_RE - ec_word TOTALLY - ec_word OUT - ec_word OF - ec_word THE - ec_word QUESTION -@ loss speech - ec_word YOU - ec_word DO - ec_word ADORE - ec_word YOUR - ec_word POKEMON - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_ADORE + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_RIGHT + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_OUT + .2byte EC_WORD_OF + .2byte EC_WORD_THE + .2byte EC_WORD_QUESTION +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DO + .2byte EC_WORD_ADORE + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Julian @ 38 .4byte TRAINER_CLASS_POKEFAN_1 .string "QUINN$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word ARE - ec_word BUT - ec_word A - ec_word DREAM -@ win speech - ec_word THIS - ec_word IS - ec_word A - ec_word BEAUTIFUL - ec_word DREAM - ec_word EXCL -@ loss speech - ec_word THIS - ec_word IS - ec_word AN - ec_word AWFUL - ec_move1 NIGHTMARE - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_BUT + .2byte EC_WORD_A + .2byte EC_WORD_DREAM +@ win speech + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_BEAUTIFUL + .2byte EC_WORD_DREAM + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_AN + .2byte EC_WORD_AWFUL + .2byte EC_MOVE(NIGHTMARE) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Quinn @ 39 .4byte TRAINER_CLASS_POKEFAN_2 .string "HAYLEE$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word KNOW - ec_word HOW - ec_word I_AM - ec_word FEELING -@ win speech - ec_word I_AM - ec_word FEELING - ec_word OVERWHELMING - ec_word JOY - ec_word OVER - ec_word THIS -@ loss speech - ec_word DESTROYED - ec_word IS - ec_word THE - ec_word WAY - ec_word I_AM - ec_word FEELING + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_KNOW + .2byte EC_WORD_HOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_JOY + .2byte EC_WORD_OVER + .2byte EC_WORD_THIS +@ loss speech + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_IS + .2byte EC_WORD_THE + .2byte EC_WORD_WAY + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING .4byte gBattleFrontierTrainerMons_Haylee @ 40 .4byte TRAINER_CLASS_POKEFAN_2 .string "AMANDA$", 8 @ pre-battle speech - ec_word I - ec_word COME - ec_word FROM - ec_word A - ec_word TRAINER - ec_word FAMILY -@ win speech - ec_word I - ec_word WILL - ec_word TREASURE - ec_word THIS - ec_word WIN - .2byte -1 -@ loss speech - ec_word I - ec_word WANT - ec_word TO - ec_word GO_HOME - ec_word RIGHT - ec_word NOW + .2byte EC_WORD_I + .2byte EC_WORD_COME + .2byte EC_WORD_FROM + .2byte EC_WORD_A + .2byte EC_WORD_TRAINER + .2byte EC_WORD_FAMILY +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_TREASURE + .2byte EC_WORD_THIS + .2byte EC_WORD_WIN + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_GO_HOME + .2byte EC_WORD_RIGHT + .2byte EC_WORD_NOW .4byte gBattleFrontierTrainerMons_Amanda @ 41 .4byte TRAINER_CLASS_POKEFAN_2 .string "STACY$", 8 @ pre-battle speech - ec_word ALL - ec_word POKEMON - ec_word HAVE - ec_word THEIR - ec_word OWN - ec_word CUTE_CHARM -@ win speech - ec_word YOU - ec_word SEE - ec_word WHAT - ec_word I - ec_word MEAN - ec_word QUES -@ loss speech - ec_word SHOULD - ec_word I - ec_word NOT - ec_word ADORE - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_ALL + .2byte EC_WORD_POKEMON + .2byte EC_WORD_HAVE + .2byte EC_WORD_THEIR + .2byte EC_WORD_OWN + .2byte EC_WORD_CUTE_CHARM +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_MEAN + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_SHOULD + .2byte EC_WORD_I + .2byte EC_WORD_NOT + .2byte EC_WORD_ADORE + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Stacy @ 42 .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "RAFAEL$", 8 @ pre-battle speech - ec_word COME_ON - ec_word EXCL - ec_word LET_S - ec_word SEE - ec_word SOME - ec_word SPIRIT -@ win speech - ec_word THAT_S_IT_EXCL - ec_word THAT_S - ec_word THE - ec_word SPIRIT - ec_word EXCL - .2byte -1 -@ loss speech - ec_word WELL - ec_word SO - ec_word MUCH - ec_word FOR - ec_word OUR - ec_word SPIRIT + .2byte EC_WORD_COME_ON + .2byte EC_WORD_EXCL + .2byte EC_WORD_LET_S + .2byte EC_WORD_SEE + .2byte EC_WORD_SOME + .2byte EC_WORD_SPIRIT +@ win speech + .2byte EC_WORD_THAT_S_IT_EXCL + .2byte EC_WORD_THAT_S + .2byte EC_WORD_THE + .2byte EC_WORD_SPIRIT + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_WELL + .2byte EC_WORD_SO + .2byte EC_WORD_MUCH + .2byte EC_WORD_FOR + .2byte EC_WORD_OUR + .2byte EC_WORD_SPIRIT .4byte gBattleFrontierTrainerMons_Rafael @ 43 .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "OLIVER$", 8 @ pre-battle speech - ec_word A - ec_word GENIUS - ec_word THAT_S - ec_word WHAT - ec_word I_AM - ec_word EXCL -@ win speech - ec_word THAT_S - ec_word HOW - ec_word A - ec_word GENIUS - ec_word WORKS - ec_word EXCL -@ loss speech - ec_word YOU_RE - ec_word MORE - ec_word A - ec_word GENIUS - ec_word THAN - ec_word I_AM + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_HOW + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_WORKS + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MORE + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_THAN + .2byte EC_WORD_I_AM .4byte gBattleFrontierTrainerMons_Oliver @ 44 .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "PAYTON$", 8 @ pre-battle speech - ec_word I - ec_word TRAIN - ec_word FROM - ec_word THE - ec_word EGG - ec_word UP + .2byte EC_WORD_I + .2byte EC_WORD_TRAIN + .2byte EC_WORD_FROM + .2byte EC_WORD_THE + .2byte EC_WORD_EGG + .2byte EC_WORD_UP @ win speech - ec_word WELL - ec_word DONE - ec_word EXCL + .2byte EC_WORD_WELL + .2byte EC_WORD_DONE + .2byte EC_WORD_EXCL .2byte -1 .2byte -1 .2byte -1 @ loss speech - ec_word THAT_WAS - ec_word A - ec_move2 SOFT_BOILED - ec_word LOSS - ec_word ELLIPSIS + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_A + .2byte EC_MOVE2(SOFT_BOILED) + .2byte EC_WORD_LOSS + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Payton @@ -1174,129 +1174,129 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "PAMELA$", 8 @ pre-battle speech - ec_word ALL - ec_word POKEMON - ec_word ADORE - ec_word A - ec_word KIND - ec_word TRAINER -@ win speech - ec_word IT_S - ec_word TOO - ec_word BAD - ec_word YOU - ec_word LOST - .2byte -1 -@ loss speech - ec_word YOU_RE - ec_word KIND - ec_word AND - ec_word YOU_RE - ec_word ALSO - ec_word STRONG + .2byte EC_WORD_ALL + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ADORE + .2byte EC_WORD_A + .2byte EC_WORD_KIND + .2byte EC_WORD_TRAINER +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_TOO + .2byte EC_WORD_BAD + .2byte EC_WORD_YOU + .2byte EC_WORD_LOST + .2byte -1 +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_KIND + .2byte EC_WORD_AND + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_ALSO + .2byte EC_WORD_STRONG .4byte gBattleFrontierTrainerMons_Pamela @ 46 .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "ELIZA$", 8 @ pre-battle speech - ec_word I - ec_word ADORE - ec_word POKEMON - ec_word LIKE - ec_word MY - ec_word CHILDREN -@ win speech - ec_word I_AM - ec_word SO - ec_word HAPPY - ec_word FOR - ec_word MY - ec_word POKEMON -@ loss speech - ec_word OH_DEAR - ec_word I_AM - ec_word SO - ec_word SORRY - ec_word ABOUT - ec_word THIS + .2byte EC_WORD_I + .2byte EC_WORD_ADORE + .2byte EC_WORD_POKEMON + .2byte EC_WORD_LIKE + .2byte EC_WORD_MY + .2byte EC_WORD_CHILDREN +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_HAPPY + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON +@ loss speech + .2byte EC_WORD_OH_DEAR + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_SORRY + .2byte EC_WORD_ABOUT + .2byte EC_WORD_THIS .4byte gBattleFrontierTrainerMons_Eliza @ 47 .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "MARISA$", 8 @ pre-battle speech - ec_word I - ec_word PROMISE - ec_word TO - ec_word BATTLE - ec_word SERIOUSLY - .2byte -1 -@ win speech - ec_word PROMISE - ec_word ME - ec_word YOU - ec_word WILL - ec_word DO - ec_word BETTER -@ loss speech - ec_word PROMISE - ec_word ME - ec_word ANOTHER - ec_word BATTLE - ec_word PLEASE - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_PROMISE + .2byte EC_WORD_TO + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SERIOUSLY + .2byte -1 +@ win speech + .2byte EC_WORD_PROMISE + .2byte EC_WORD_ME + .2byte EC_WORD_YOU + .2byte EC_WORD_WILL + .2byte EC_WORD_DO + .2byte EC_WORD_BETTER +@ loss speech + .2byte EC_WORD_PROMISE + .2byte EC_WORD_ME + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_PLEASE + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Marisa @ 48 .4byte TRAINER_CLASS_BUG_CATCHER .string "LEWIS$", 8 @ pre-battle speech - ec_word A_LITTLE - ec_word BUG - ec_word IS - ec_word SCARY - ec_word QUES - ec_word HAHAHA -@ win speech - ec_word LOOK - ec_word LOOK - ec_word EXCL - ec_word A - ec_word SCARY - ec_word BUG -@ loss speech - ec_word OH - ec_word A - ec_word BUG - ec_word ISN_T - ec_word SCARY - ec_word ELLIPSIS + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_BUG + .2byte EC_WORD_IS + .2byte EC_WORD_SCARY + .2byte EC_WORD_QUES + .2byte EC_WORD_HAHAHA +@ win speech + .2byte EC_WORD_LOOK + .2byte EC_WORD_LOOK + .2byte EC_WORD_EXCL + .2byte EC_WORD_A + .2byte EC_WORD_SCARY + .2byte EC_WORD_BUG +@ loss speech + .2byte EC_WORD_OH + .2byte EC_WORD_A + .2byte EC_WORD_BUG + .2byte EC_WORD_ISN_T + .2byte EC_WORD_SCARY + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Lewis @ 49 .4byte TRAINER_CLASS_BUG_CATCHER .string "YOSHI$", 8 @ pre-battle speech - ec_word BUG - ec_word POKEMON - ec_word MAKE - ec_word ME - ec_word FEELING - ec_word LOVEY_DOVEY -@ win speech - ec_word BUG - ec_word POKEMON - ec_word ARE - ec_word THE - ec_word BEST - ec_word EXCL -@ loss speech - ec_word YOU_RE - ec_word IGNORANT - ec_word ABOUT - ec_word BUG - ec_word POKEMON + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_WORD_FEELING + .2byte EC_WORD_LOVEY_DOVEY +@ win speech + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_THE + .2byte EC_WORD_BEST + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_IGNORANT + .2byte EC_WORD_ABOUT + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON .2byte -1 .4byte gBattleFrontierTrainerMons_Yoshi @@ -1304,25 +1304,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BUG_CATCHER .string "DESTIN$", 8 @ pre-battle speech - ec_word IT_S - ec_word WAY - ec_word TOO - ec_word HOT - ec_word HERE + .2byte EC_WORD_IT_S + .2byte EC_WORD_WAY + .2byte EC_WORD_TOO + .2byte EC_WORD_HOT + .2byte EC_WORD_HERE .2byte -1 @ win speech - ec_word I_AM - ec_word ABOUT - ec_word TO - ec_move1 OVERHEAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_ABOUT + .2byte EC_WORD_TO + .2byte EC_MOVE(OVERHEAT) .2byte -1 .2byte -1 @ loss speech - ec_word PLEASE - ec_word I - ec_word NEED - ec_word SOME - ec_word WATER + .2byte EC_WORD_PLEASE + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_SOME + .2byte EC_WORD_WATER .2byte -1 .4byte gBattleFrontierTrainerMons_Destin @@ -1330,23 +1330,23 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_NINJA_BOY .string "KEON$", 8 @ pre-battle speech - ec_word FORGIVE - ec_word ME - ec_word BUT - ec_word HERE_I_COME - ec_word EXCL + .2byte EC_WORD_FORGIVE + .2byte EC_WORD_ME + .2byte EC_WORD_BUT + .2byte EC_WORD_HERE_I_COME + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word FORGIVE - ec_word ME - ec_word FOR - ec_word MY - ec_word OVERWHELMING - ec_word POWER + .2byte EC_WORD_FORGIVE + .2byte EC_WORD_ME + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_POWER @ loss speech - ec_word I_AM - ec_word SORRY - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 @@ -1356,51 +1356,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_NINJA_BOY .string "STUART$", 8 @ pre-battle speech - ec_word I - ec_word PROMISE - ec_word YOU - ec_word A - ec_word HOT - ec_word BATTLE -@ win speech - ec_word THE - ec_word MASTER - ec_word OF - ec_word COOL - ec_word THAT_S - ec_word ME -@ loss speech - ec_word I - ec_word SEE - ec_word I_AM - ec_word NOT - ec_word SO - ec_word COOL + .2byte EC_WORD_I + .2byte EC_WORD_PROMISE + .2byte EC_WORD_YOU + .2byte EC_WORD_A + .2byte EC_WORD_HOT + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_THE + .2byte EC_WORD_MASTER + .2byte EC_WORD_OF + .2byte EC_WORD_COOL + .2byte EC_WORD_THAT_S + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_SEE + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_SO + .2byte EC_WORD_COOL .4byte gBattleFrontierTrainerMons_Stuart @ 53 .4byte TRAINER_CLASS_NINJA_BOY .string "NESTOR$", 8 @ pre-battle speech - ec_word SHOW - ec_word ME - ec_word A - ec_word REALLY - ec_word SMOOTH - ec_word MOVE -@ win speech - ec_word THERE - ec_word WAS - ec_word NOTHING - ec_word SMOOTH - ec_word ABOUT - ec_word THAT -@ loss speech - ec_word YOU - ec_word REALLY - ec_word ARE - ec_word SMOOTH - ec_word EXCL + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_WORD_REALLY + .2byte EC_WORD_SMOOTH + .2byte EC_WORD_MOVE +@ win speech + .2byte EC_WORD_THERE + .2byte EC_WORD_WAS + .2byte EC_WORD_NOTHING + .2byte EC_WORD_SMOOTH + .2byte EC_WORD_ABOUT + .2byte EC_WORD_THAT +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_REALLY + .2byte EC_WORD_ARE + .2byte EC_WORD_SMOOTH + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Nestor @@ -1408,50 +1408,50 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BUG_MANIAC .string "DERRICK$", 8 @ pre-battle speech - ec_word LET_S - ec_word SEE - ec_word YOU - ec_move2 MEDITATE - ec_word LIKE - ec_word ME -@ win speech - ec_word HOW - ec_word I - ec_move2 MEDITATE - ec_word IS - ec_word JUST - ec_word BEAUTIFUL -@ loss speech - ec_word I - ec_word WILL - ec_move2 MEDITATE - ec_word FOR - ec_word A - ec_move2 CALM_MIND + .2byte EC_WORD_LET_S + .2byte EC_WORD_SEE + .2byte EC_WORD_YOU + .2byte EC_MOVE2(MEDITATE) + .2byte EC_WORD_LIKE + .2byte EC_WORD_ME +@ win speech + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_MOVE2(MEDITATE) + .2byte EC_WORD_IS + .2byte EC_WORD_JUST + .2byte EC_WORD_BEAUTIFUL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE2(MEDITATE) + .2byte EC_WORD_FOR + .2byte EC_WORD_A + .2byte EC_MOVE2(CALM_MIND) .4byte gBattleFrontierTrainerMons_Derrick @ 55 .4byte TRAINER_CLASS_BUG_MANIAC .string "BRYSON$", 8 @ pre-battle speech - ec_move2 POISON_POWDER - ec_word IS - ec_word IN - ec_word OUR - ec_move2 COTTON_SPORE - ec_word MOVE + .2byte EC_MOVE2(POISON_POWDER) + .2byte EC_WORD_IS + .2byte EC_WORD_IN + .2byte EC_WORD_OUR + .2byte EC_MOVE2(COTTON_SPORE) + .2byte EC_WORD_MOVE @ win speech - ec_word HOW_DO - ec_word YOU - ec_word LIKE - ec_word OUR - ec_move2 POISON_POWDER - ec_word QUES + .2byte EC_WORD_HOW_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_LIKE + .2byte EC_WORD_OUR + .2byte EC_MOVE2(POISON_POWDER) + .2byte EC_WORD_QUES @ loss speech - ec_word MY - ec_move2 COTTON_SPORE - ec_word WAS - ec_word USELESS + .2byte EC_WORD_MY + .2byte EC_MOVE2(COTTON_SPORE) + .2byte EC_WORD_WAS + .2byte EC_WORD_USELESS .2byte -1 .2byte -1 .4byte gBattleFrontierTrainerMons_Bryson @@ -1460,103 +1460,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BUG_MANIAC .string "CLAYTON$", 8 @ pre-battle speech - ec_word HUH_QUES + .2byte EC_WORD_HUH_QUES .2byte -1 .2byte -1 - ec_word WHERE - ec_word IS_IT_QUES + .2byte EC_WORD_WHERE + .2byte EC_WORD_IS_IT_QUES .2byte -1 @ win speech - ec_word WHERE - ec_word IS_IT_QUES - ec_word I_VE - ec_word LOST - ec_word MY - ec_word POKENAV + .2byte EC_WORD_WHERE + .2byte EC_WORD_IS_IT_QUES + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST + .2byte EC_WORD_MY + .2byte EC_WORD_POKENAV @ loss speech - ec_word WHERE - ec_word IS_IT_QUES - ec_word I_VE - ec_word LOST - ec_word MY - ec_word SENSE + .2byte EC_WORD_WHERE + .2byte EC_WORD_IS_IT_QUES + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST + .2byte EC_WORD_MY + .2byte EC_WORD_SENSE .4byte gBattleFrontierTrainerMons_Clayton @ 57 .4byte TRAINER_CLASS_FISHERMAN .string "TRENTON$", 8 @ pre-battle speech - ec_word COME_OVER - ec_word FOR - ec_word SOME - ec_word TASTY - ec_word WATER - .2byte -1 -@ win speech - ec_word MMM - ec_word DO - ec_word YOU - ec_word WANT - ec_word SOME - ec_word QUES -@ loss speech - ec_word I - ec_word GOT - ec_word THIS - ec_word TASTY - ec_word WATER - ec_word SHOPPING + .2byte EC_WORD_COME_OVER + .2byte EC_WORD_FOR + .2byte EC_WORD_SOME + .2byte EC_WORD_TASTY + .2byte EC_WORD_WATER + .2byte -1 +@ win speech + .2byte EC_WORD_MMM + .2byte EC_WORD_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_WANT + .2byte EC_WORD_SOME + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_GOT + .2byte EC_WORD_THIS + .2byte EC_WORD_TASTY + .2byte EC_WORD_WATER + .2byte EC_WORD_SHOPPING .4byte gBattleFrontierTrainerMons_Trenton @ 58 .4byte TRAINER_CLASS_FISHERMAN .string "JENSON$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word WILL - ec_word MAKE - ec_word YOU - ec_word DOWNCAST -@ win speech - ec_word YOUR - ec_word POKEMON - ec_word DON_T - ec_word MAKE - ec_word THE - ec_move1 CUT -@ loss speech - ec_word I_AM - ec_word THE - ec_word TRAINER - ec_word WHO_IS - ec_word FEELING - ec_word DOWNCAST + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WILL + .2byte EC_WORD_MAKE + .2byte EC_WORD_YOU + .2byte EC_WORD_DOWNCAST +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_DON_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_THE + .2byte EC_MOVE(CUT) +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_TRAINER + .2byte EC_WORD_WHO_IS + .2byte EC_WORD_FEELING + .2byte EC_WORD_DOWNCAST .4byte gBattleFrontierTrainerMons_Jenson @ 59 .4byte TRAINER_CLASS_FISHERMAN .string "WESLEY$", 8 @ pre-battle speech - ec_pokemon2 MEW - ec_pokemon2 MEW - ec_word IS - ec_word HOW - ec_word I - ec_word CRY -@ win speech - ec_word YES - ec_word I - ec_word KNOW - ec_word I_AM - ec_word CUTE - ec_word EXCL -@ loss speech - ec_pokemon2 MEW - ec_pokemon2 MEW - ec_word EXCL - ec_pokemon2 MEW - ec_word EXCL_EXCL + .2byte EC_POKEMON2(MEW) + .2byte EC_POKEMON2(MEW) + .2byte EC_WORD_IS + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_WORD_CRY +@ win speech + .2byte EC_WORD_YES + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_CUTE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_POKEMON2(MEW) + .2byte EC_POKEMON2(MEW) + .2byte EC_WORD_EXCL + .2byte EC_POKEMON2(MEW) + .2byte EC_WORD_EXCL_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Wesley @@ -1564,129 +1564,129 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_RUIN_MANIAC .string "ANTON$", 8 @ pre-battle speech - ec_word GET - ec_word READY - ec_word FOR - ec_word ME - ec_word TO - ec_move1 THRASH -@ win speech - ec_word WAHAHAHA - ec_word EXCL - ec_word SORRY - ec_word ABOUT - ec_word THAT - ec_word EXCL -@ loss speech - ec_word IT_S - ec_word A - ec_word TOUGH - ec_word LOSS - ec_word TO - ec_move2 SWALLOW + .2byte EC_WORD_GET + .2byte EC_WORD_READY + .2byte EC_WORD_FOR + .2byte EC_WORD_ME + .2byte EC_WORD_TO + .2byte EC_MOVE(THRASH) +@ win speech + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL + .2byte EC_WORD_SORRY + .2byte EC_WORD_ABOUT + .2byte EC_WORD_THAT + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_TOUGH + .2byte EC_WORD_LOSS + .2byte EC_WORD_TO + .2byte EC_MOVE2(SWALLOW) .4byte gBattleFrontierTrainerMons_Anton @ 61 .4byte TRAINER_CLASS_RUIN_MANIAC .string "LAWSON$", 8 @ pre-battle speech - ec_word I_AM - ec_word YOUNG - ec_word AT - ec_word HEART - ec_word EXCL - .2byte -1 -@ win speech - ec_word NOT - ec_word COOL - ec_word EXCL - ec_word NOT - ec_word AT - ec_word ALL -@ loss speech - ec_word I_AM - ec_word OLD - ec_word AND - ec_word FEELING - ec_word SHAKY - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_YOUNG + .2byte EC_WORD_AT + .2byte EC_WORD_HEART + .2byte EC_WORD_EXCL + .2byte -1 +@ win speech + .2byte EC_WORD_NOT + .2byte EC_WORD_COOL + .2byte EC_WORD_EXCL + .2byte EC_WORD_NOT + .2byte EC_WORD_AT + .2byte EC_WORD_ALL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_OLD + .2byte EC_WORD_AND + .2byte EC_WORD_FEELING + .2byte EC_WORD_SHAKY + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Lawson @ 62 .4byte TRAINER_CLASS_RUIN_MANIAC .string "SAMMY$", 8 @ pre-battle speech - ec_word MY - ec_word PARTY - ec_word IS - ec_word READY - ec_word TO - ec_word ROCK -@ win speech - ec_word MY - ec_word PARTY - ec_word IS - ec_word JUST - ec_word INCREDIBLE - ec_word EXCL -@ loss speech - ec_word I - ec_word CRY - ec_word FOR - ec_word MY - ec_word PARTY - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_PARTY + .2byte EC_WORD_IS + .2byte EC_WORD_READY + .2byte EC_WORD_TO + .2byte EC_WORD_ROCK +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_PARTY + .2byte EC_WORD_IS + .2byte EC_WORD_JUST + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_CRY + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_PARTY + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Sammy @ 63 .4byte TRAINER_CLASS_COLLECTOR .string "ARNIE$", 8 @ pre-battle speech - ec_word I_AM - ec_word NO_1 - ec_word I - ec_word HAVE - ec_word NO - ec_word RIVAL -@ win speech - ec_word YOU - ec_word SEE - ec_word QUES - ec_word I - ec_word CAN_T - ec_word LOSE -@ loss speech - ec_word NO - ec_word EXCL - ec_word I - ec_word WON_T - ec_word ACCEPT - ec_word THIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_NO_1 + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_NO + .2byte EC_WORD_RIVAL +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_LOSE +@ loss speech + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_WON_T + .2byte EC_WORD_ACCEPT + .2byte EC_WORD_THIS .4byte gBattleFrontierTrainerMons_Arnie @ 64 .4byte TRAINER_CLASS_COLLECTOR .string "ADRIAN$", 8 @ pre-battle speech - ec_word YAHOO - ec_word EXCL + .2byte EC_WORD_YAHOO + .2byte EC_WORD_EXCL .2byte -1 - ec_word YAHOO - ec_word EXCL_EXCL + .2byte EC_WORD_YAHOO + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word THANK_YOU - ec_word EXCL + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL .2byte -1 - ec_word THANK_YOU - ec_word EXCL_EXCL + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ loss speech - ec_word GOOD_BYE - ec_word EXCL + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_EXCL .2byte -1 - ec_word GOOD_BYE - ec_word EXCL_EXCL + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_EXCL_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Adrian @@ -1694,103 +1694,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_COLLECTOR .string "TRISTAN$", 8 @ pre-battle speech - ec_word CONFUSED - ec_word QUES + .2byte EC_WORD_CONFUSED + .2byte EC_WORD_QUES .2byte -1 - ec_word I_AM - ec_word A - ec_word GENIUS + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS @ win speech - ec_word SEE - ec_word QUES + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES .2byte -1 - ec_word I_AM - ec_word A - ec_word GENIUS + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS @ loss speech - ec_word I_AM - ec_word NOT - ec_word A - ec_word GENIUS - ec_word IN - ec_word BATTLE + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_IN + .2byte EC_WORD_BATTLE .4byte gBattleFrontierTrainerMons_Tristan @ 66 .4byte TRAINER_CLASS_PARASOL_LADY .string "JULIANA$", 8 @ pre-battle speech - ec_word I - ec_word THINK - ec_word I_AM - ec_word SHOPPING - ec_word TOO - ec_word MUCH -@ win speech - ec_word BUT - ec_word I - ec_word WANT - ec_word A - ec_word POKEMON - ec_word PLUSH_DOLL -@ loss speech - ec_word I - ec_word SO - ec_word WANT - ec_word ANOTHER - ec_word POKEMON - ec_word PLUSH_DOLL + .2byte EC_WORD_I + .2byte EC_WORD_THINK + .2byte EC_WORD_I_AM + .2byte EC_WORD_SHOPPING + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH +@ win speech + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_PLUSH_DOLL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_SO + .2byte EC_WORD_WANT + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_POKEMON + .2byte EC_WORD_PLUSH_DOLL .4byte gBattleFrontierTrainerMons_Juliana @ 67 .4byte TRAINER_CLASS_PARASOL_LADY .string "RYLEE$", 8 @ pre-battle speech - ec_word SHOW - ec_word ME - ec_word THAT - ec_word YOU - ec_word HAVE - ec_word GUTS -@ win speech - ec_word BYE_BYE - ec_word EXCL - ec_word YOU - ec_word HAVE - ec_word NO - ec_word GUTS -@ loss speech - ec_word THAT_WAS - ec_word GUTSY - ec_word ELLIPSIS - ec_word YOU_RE - ec_word QUITE - ec_word SUPER + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_THAT + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_GUTS +@ win speech + .2byte EC_WORD_BYE_BYE + .2byte EC_WORD_EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_NO + .2byte EC_WORD_GUTS +@ loss speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_GUTSY + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_QUITE + .2byte EC_WORD_SUPER .4byte gBattleFrontierTrainerMons_Rylee @ 68 .4byte TRAINER_CLASS_PARASOL_LADY .string "CHELSEA$", 8 @ pre-battle speech - ec_word I - ec_word SERIOUSLY - ec_word MEAN - ec_word TO - ec_word WIN - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_SERIOUSLY + .2byte EC_WORD_MEAN + .2byte EC_WORD_TO + .2byte EC_WORD_WIN + .2byte EC_WORD_EXCL @ win speech - ec_word THAT_WAS - ec_word MY - ec_word WILL - ec_word TO - ec_word WIN + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_MY + .2byte EC_WORD_WILL + .2byte EC_WORD_TO + .2byte EC_WORD_WIN .2byte -1 @ loss speech - ec_word YOU_RE - ec_word FAR - ec_word TOO_STRONG - ec_word FOR - ec_word ME + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_FAR + .2byte EC_WORD_TOO_STRONG + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .2byte -1 .4byte gBattleFrontierTrainerMons_Chelsea @@ -1798,233 +1798,233 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BEAUTY .string "DANELA$", 8 @ pre-battle speech - ec_word YOU - ec_word MUST_BE - ec_word MY - ec_word OPPONENT - ec_word NOW - ec_word EXCL -@ win speech - ec_word OH_DEAR - ec_word TOO_WEAK - ec_word EXCL - ec_word DON_T - ec_word GIVE_UP - ec_word EXCL -@ loss speech - ec_word THAT_WAS - ec_word GOOD - ec_word AND - ec_word THIS - ec_word IS - ec_word GOOD_BYE + .2byte EC_WORD_YOU + .2byte EC_WORD_MUST_BE + .2byte EC_WORD_MY + .2byte EC_WORD_OPPONENT + .2byte EC_WORD_NOW + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_OH_DEAR + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_EXCL + .2byte EC_WORD_DON_T + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_GOOD + .2byte EC_WORD_AND + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_GOOD_BYE .4byte gBattleFrontierTrainerMons_Danela @ 70 .4byte TRAINER_CLASS_BEAUTY .string "LIZBETH$", 8 @ pre-battle speech - ec_word IF_I_LOSE - ec_word YOU - ec_word CAN - ec_word HAVE - ec_word A - ec_move2 PRESENT -@ win speech - ec_word HERE_IT_IS - ec_word A_LITTLE - ec_word PRAISE - ec_word AS - ec_word YOUR - ec_move2 PRESENT -@ loss speech - ec_word YOUR - ec_move2 PRESENT - ec_word QUES_EXCL - ec_word HERE_IT_IS - ec_word A - ec_move1 DOUBLE_SLAP + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE2(PRESENT) +@ win speech + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_PRAISE + .2byte EC_WORD_AS + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(PRESENT) +@ loss speech + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_QUES_EXCL + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_A + .2byte EC_MOVE(DOUBLE_SLAP) .4byte gBattleFrontierTrainerMons_Lizbeth @ 71 .4byte TRAINER_CLASS_BEAUTY .string "AMELIA$", 8 @ pre-battle speech - ec_word I - ec_word BELIEVE - ec_word IN - ec_word CUTE - ec_word FASHION - ec_word APPEAL -@ win speech - ec_word YOUR - ec_word FASHION - ec_word SENSE - ec_word IS - ec_word A - ec_word DISASTER -@ loss speech - ec_word THAT_WAS - ec_word AWFUL - ec_word EXCL - ec_word I_AM - ec_word GOING - ec_word HOME + .2byte EC_WORD_I + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_IN + .2byte EC_WORD_CUTE + .2byte EC_WORD_FASHION + .2byte EC_WORD_APPEAL +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_DISASTER +@ loss speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_AWFUL + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_HOME .4byte gBattleFrontierTrainerMons_Amelia @ 72 .4byte TRAINER_CLASS_AROMA_LADY .string "JILLIAN$", 8 @ pre-battle speech - ec_word WHAT - ec_word IS - ec_word THAT - ec_word I - ec_word SMELL - ec_word QUES -@ win speech - ec_word IT_S - ec_word THE - ec_move1 SWEET_SCENT - ec_word OF - ec_word TASTY - ec_word WATER -@ loss speech - ec_word IT_S - ec_word YOUR - ec_word OFFENSIVE - ec_word STENCH - ec_word THAT_S - ec_word WHAT + .2byte EC_WORD_WHAT + .2byte EC_WORD_IS + .2byte EC_WORD_THAT + .2byte EC_WORD_I + .2byte EC_WORD_SMELL + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_THE + .2byte EC_MOVE(SWEET_SCENT) + .2byte EC_WORD_OF + .2byte EC_WORD_TASTY + .2byte EC_WORD_WATER +@ loss speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_YOUR + .2byte EC_WORD_OFFENSIVE + .2byte EC_WORD_STENCH + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT .4byte gBattleFrontierTrainerMons_Jillian @ 73 .4byte TRAINER_CLASS_AROMA_LADY .string "ABBIE$", 8 @ pre-battle speech - ec_word YOU - ec_word TRY - ec_word MY - ec_word SECRET - ec_move1 AROMATHERAPY - ec_word OK_QUES -@ win speech - ec_word MY - ec_move1 AROMATHERAPY - ec_word IS - ec_word TERRIBLE - ec_word FOR - ec_word YOU -@ loss speech - ec_word DIDN_T - ec_word YOU - ec_word SMELL - ec_word A - ec_word THING - ec_word QUES_EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_TRY + .2byte EC_WORD_MY + .2byte EC_WORD_SECRET + .2byte EC_MOVE(AROMATHERAPY) + .2byte EC_WORD_OK_QUES +@ win speech + .2byte EC_WORD_MY + .2byte EC_MOVE(AROMATHERAPY) + .2byte EC_WORD_IS + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU +@ loss speech + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_YOU + .2byte EC_WORD_SMELL + .2byte EC_WORD_A + .2byte EC_WORD_THING + .2byte EC_WORD_QUES_EXCL .4byte gBattleFrontierTrainerMons_Abbie @ 74 .4byte TRAINER_CLASS_AROMA_LADY .string "BRIANA$", 8 @ pre-battle speech - ec_word MY - ec_word BOY - ec_word FRIEND - ec_word WORKS - ec_word TOO - ec_word MUCH -@ win speech - ec_word I - ec_word ONLY - ec_word MISS - ec_word HIM - ec_word MORE - ec_word ELLIPSIS -@ loss speech - ec_word I_AM - ec_word SO - ec_word LONESOME - ec_word WITHOUT - ec_word HIM - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_BOY + .2byte EC_WORD_FRIEND + .2byte EC_WORD_WORKS + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_ONLY + .2byte EC_WORD_MISS + .2byte EC_WORD_HIM + .2byte EC_WORD_MORE + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_LONESOME + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_HIM + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Briana @ 75 .4byte TRAINER_CLASS_GUITARIST .string "ANTONIO$", 8 @ pre-battle speech - ec_word I - ec_word KNOW - ec_word HOW - ec_word TO - ec_word GO - ec_word GO -@ win speech - ec_word BUT - ec_word I - ec_word DON_T - ec_word LIKE - ec_word TO - ec_word DANCE -@ loss speech - ec_word GO - ec_word GO - ec_word ELLIPSIS - ec_word JUST - ec_move1 FLAIL - ec_word ABOUT + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_HOW + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_GO +@ win speech + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_LIKE + .2byte EC_WORD_TO + .2byte EC_WORD_DANCE +@ loss speech + .2byte EC_WORD_GO + .2byte EC_WORD_GO + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_JUST + .2byte EC_MOVE(FLAIL) + .2byte EC_WORD_ABOUT .4byte gBattleFrontierTrainerMons_Antonio @ 76 .4byte TRAINER_CLASS_GUITARIST .string "JADEN$", 8 @ pre-battle speech - ec_word HELLO - ec_word I - ec_word THINK - ec_word I - ec_word ADORE - ec_word YOU + .2byte EC_WORD_HELLO + .2byte EC_WORD_I + .2byte EC_WORD_THINK + .2byte EC_WORD_I + .2byte EC_WORD_ADORE + .2byte EC_WORD_YOU @ win speech - ec_word YOU - ec_word MAKE - ec_word ME - ec_move1 THRASH - ec_word IN - ec_move2 FRUSTRATION + .2byte EC_WORD_YOU + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_MOVE(THRASH) + .2byte EC_WORD_IN + .2byte EC_MOVE2(FRUSTRATION) @ loss speech - ec_word THIS_IS_IT_EXCL + .2byte EC_WORD_THIS_IS_IT_EXCL .2byte -1 .2byte -1 - ec_word GOOD_BYE - ec_word FOREVER - ec_word EXCL + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_FOREVER + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Jaden @ 77 .4byte TRAINER_CLASS_GUITARIST .string "DAKOTA$", 8 @ pre-battle speech - ec_word YOU - ec_word HAVE - ec_word TO - ec_word DANCE - ec_word WITH - ec_word POWER -@ win speech - ec_word GOT - ec_word IT - ec_word QUES - ec_word DANCE - ec_word WITH - ec_word POWER -@ loss speech - ec_word OKAY - ec_word YOU - ec_word UNDERSTAND - ec_word ALL_RIGHT - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_DANCE + .2byte EC_WORD_WITH + .2byte EC_WORD_POWER +@ win speech + .2byte EC_WORD_GOT + .2byte EC_WORD_IT + .2byte EC_WORD_QUES + .2byte EC_WORD_DANCE + .2byte EC_WORD_WITH + .2byte EC_WORD_POWER +@ loss speech + .2byte EC_WORD_OKAY + .2byte EC_WORD_YOU + .2byte EC_WORD_UNDERSTAND + .2byte EC_WORD_ALL_RIGHT + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Dakota @@ -2032,74 +2032,74 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BIRD_KEEPER .string "BRAYDEN$", 8 @ pre-battle speech - ec_word COLOR_CHANGE - ec_word VERSION - ec_word TOYS - ec_word ARE - ec_word USELESS - ec_word EXCL -@ win speech - ec_word I - ec_word ONLY - ec_word COLLECT - ec_word NORMAL - ec_word VERSION - ec_word TOYS -@ loss speech - ec_word I - ec_move2 ATTRACT - ec_word COLOR_CHANGE - ec_word VERSION - ec_word TOYS - ec_word ELLIPSIS + .2byte EC_WORD_COLOR_CHANGE + .2byte EC_WORD_VERSION + .2byte EC_WORD_TOYS + .2byte EC_WORD_ARE + .2byte EC_WORD_USELESS + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_ONLY + .2byte EC_WORD_COLLECT + .2byte EC_WORD_NORMAL + .2byte EC_WORD_VERSION + .2byte EC_WORD_TOYS +@ loss speech + .2byte EC_WORD_I + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_COLOR_CHANGE + .2byte EC_WORD_VERSION + .2byte EC_WORD_TOYS + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Brayden @ 79 .4byte TRAINER_CLASS_BIRD_KEEPER .string "CORSON$", 8 @ pre-battle speech - ec_word I - ec_word GET - ec_word TO - ec_move2 BEAT_UP - ec_word ON - ec_word YOU -@ win speech - ec_word TOO - ec_word EASY - ec_word EXCL - ec_word I_AM - ec_word SO - ec_word COOL -@ loss speech - ec_word WHY - ec_word QUES_EXCL - .2byte -1 - ec_word I - ec_move2 CURSE - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_GET + .2byte EC_WORD_TO + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_ON + .2byte EC_WORD_YOU +@ win speech + .2byte EC_WORD_TOO + .2byte EC_WORD_EASY + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_COOL +@ loss speech + .2byte EC_WORD_WHY + .2byte EC_WORD_QUES_EXCL + .2byte -1 + .2byte EC_WORD_I + .2byte EC_MOVE2(CURSE) + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Corson @ 80 .4byte TRAINER_CLASS_BIRD_KEEPER .string "TREVIN$", 8 @ pre-battle speech - ec_word THERE - ec_word IS - ec_word NONE - ec_word BETTER - ec_word THAN - ec_word ME + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_NONE + .2byte EC_WORD_BETTER + .2byte EC_WORD_THAN + .2byte EC_WORD_ME @ win speech - ec_word YES_SIR_EXCL + .2byte EC_WORD_YES_SIR_EXCL .2byte -1 .2byte -1 - ec_word I_AM - ec_word THE - ec_word BEST + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_BEST @ loss speech - ec_word SERIOUS - ec_word QUES_EXCL + .2byte EC_WORD_SERIOUS + .2byte EC_WORD_QUES_EXCL .2byte -1 .2byte -1 .2byte -1 @@ -2110,77 +2110,77 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_SAILOR .string "PATRICK$", 8 @ pre-battle speech - ec_word I_AM - ec_word PERFECT - ec_word EXCL - ec_word GIVE_UP - ec_word NOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_PERFECT + .2byte EC_WORD_EXCL + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_NOW .2byte -1 @ win speech - ec_word DON_T - ec_word BE - ec_word DISAPPOINTED - ec_word I_AM - ec_word PERFECT + .2byte EC_WORD_DON_T + .2byte EC_WORD_BE + .2byte EC_WORD_DISAPPOINTED + .2byte EC_WORD_I_AM + .2byte EC_WORD_PERFECT .2byte -1 @ loss speech - ec_word BUT - ec_word HOW - ec_word QUES - ec_word I_AM - ec_word PERFECT - ec_word ELLIPSIS + .2byte EC_WORD_BUT + .2byte EC_WORD_HOW + .2byte EC_WORD_QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_PERFECT + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Patrick @ 82 .4byte TRAINER_CLASS_SAILOR .string "KADEN$", 8 @ pre-battle speech - ec_word WHAT - ec_word ARE - ec_word YOU - ec_word UP - ec_word TO - ec_word QUES -@ win speech - ec_word YOU - ec_word WERE - ec_word A - ec_word SURPRISE - ec_word TO_ME - ec_word EXCL -@ loss speech - ec_word I - ec_word DON_T - ec_word KNOW - ec_word WHO - ec_word I_AM - ec_word ELLIPSIS + .2byte EC_WORD_WHAT + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_UP + .2byte EC_WORD_TO + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_WERE + .2byte EC_WORD_A + .2byte EC_WORD_SURPRISE + .2byte EC_WORD_TO_ME + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_KNOW + .2byte EC_WORD_WHO + .2byte EC_WORD_I_AM + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Kaden @ 83 .4byte TRAINER_CLASS_SAILOR .string "MAXWELL$", 8 @ pre-battle speech - ec_word HEY_THERE - ec_word WHO_IS - ec_word YOUR - ec_word RIVAL - ec_word QUES + .2byte EC_WORD_HEY_THERE + .2byte EC_WORD_WHO_IS + .2byte EC_WORD_YOUR + .2byte EC_WORD_RIVAL + .2byte EC_WORD_QUES .2byte -1 @ win speech - ec_word MY - ec_word RIVAL - ec_word IS - ec_word MY - ec_word GIRL - ec_word FRIEND + .2byte EC_WORD_MY + .2byte EC_WORD_RIVAL + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_GIRL + .2byte EC_WORD_FRIEND @ loss speech - ec_word I_AM - ec_word MAKING - ec_word YOU - ec_word MY - ec_word RIVAL + .2byte EC_WORD_I_AM + .2byte EC_WORD_MAKING + .2byte EC_WORD_YOU + .2byte EC_WORD_MY + .2byte EC_WORD_RIVAL .2byte -1 .4byte gBattleFrontierTrainerMons_Maxwell @@ -2188,49 +2188,49 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_HIKER .string "DARYL$", 8 @ pre-battle speech - ec_word I - ec_word ONLY - ec_word KNOW - ec_word HOW - ec_word TO - ec_move1 CHARGE -@ win speech - ec_word AM - ec_word I - ec_word OVERWHELMING - ec_word OR - ec_word WHAT - ec_word QUES -@ loss speech - ec_word YOU_RE - ec_word GOING - ec_word TO - ec_word A - ec_word LEGEND - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_ONLY + .2byte EC_WORD_KNOW + .2byte EC_WORD_HOW + .2byte EC_WORD_TO + .2byte EC_MOVE(CHARGE) +@ win speech + .2byte EC_WORD_AM + .2byte EC_WORD_I + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_OR + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_A + .2byte EC_WORD_LEGEND + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Daryl @ 85 .4byte TRAINER_CLASS_HIKER .string "KENNETH$", 8 @ pre-battle speech - ec_word YOU - ec_word BETTER - ec_word NOT - ec_move2 SLACK_OFF - ec_word WITH - ec_word ME + .2byte EC_WORD_YOU + .2byte EC_WORD_BETTER + .2byte EC_WORD_NOT + .2byte EC_MOVE2(SLACK_OFF) + .2byte EC_WORD_WITH + .2byte EC_WORD_ME @ win speech - ec_word DID - ec_word MY - ec_move2 TAUNT - ec_word INTIMIDATE - ec_word YOU - ec_word QUES + .2byte EC_WORD_DID + .2byte EC_WORD_MY + .2byte EC_MOVE2(TAUNT) + .2byte EC_WORD_INTIMIDATE + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES @ loss speech - ec_word I_AM - ec_word SORRY - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 @@ -2240,25 +2240,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_HIKER .string "RICH$", 8 @ pre-battle speech - ec_word YOUR - ec_move1 FACADE - ec_word DOESN_T - ec_move2 TRICK - ec_word ME + .2byte EC_WORD_YOUR + .2byte EC_MOVE(FACADE) + .2byte EC_WORD_DOESN_T + .2byte EC_MOVE2(TRICK) + .2byte EC_WORD_ME .2byte -1 @ win speech - ec_word SERIOUSLY - ec_word ARE - ec_word YOU - ec_word REALLY - ec_word OK_QUES + .2byte EC_WORD_SERIOUSLY + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_REALLY + .2byte EC_WORD_OK_QUES .2byte -1 @ loss speech - ec_word THAT_WAS - ec_word REALLY - ec_word TOUGH - ec_word ON - ec_word ME + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_REALLY + .2byte EC_WORD_TOUGH + .2byte EC_WORD_ON + .2byte EC_WORD_ME .2byte -1 .4byte gBattleFrontierTrainerMons_Rich @@ -2266,181 +2266,181 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_KINDLER .string "CADEN$", 8 @ pre-battle speech - ec_word I - ec_word CAN_T - ec_word BE - ec_word DEFEATED - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BE + .2byte EC_WORD_DEFEATED + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word FIRE - ec_word EXCL + .2byte EC_WORD_FIRE + .2byte EC_WORD_EXCL .2byte -1 - ec_word FIRE - ec_word EXCL_EXCL + .2byte EC_WORD_FIRE + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ loss speech - ec_word I_AM - ec_word TIRED - ec_word ELLIPSIS - ec_word IT_S - ec_word SO - ec_word HOT + .2byte EC_WORD_I_AM + .2byte EC_WORD_TIRED + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_IT_S + .2byte EC_WORD_SO + .2byte EC_WORD_HOT .4byte gBattleFrontierTrainerMons_Caden @ 88 .4byte TRAINER_CLASS_KINDLER .string "MARLON$", 8 @ pre-battle speech - ec_word A - ec_word POKEDEX - ec_word IS - ec_word A_LITTLE - ec_word RADIO - ec_word QUES -@ win speech - ec_word A_LITTLE - ec_word RADIO - ec_word HUH_QUES - ec_word THAT_S - ec_word TOTALLY - ec_word COOL -@ loss speech - ec_word IT_S - ec_word NOT - ec_word QUES - ec_word IS - ec_word POKENAV - ec_word QUES + .2byte EC_WORD_A + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_IS + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_RADIO + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_RADIO + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_THAT_S + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_COOL +@ loss speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_NOT + .2byte EC_WORD_QUES + .2byte EC_WORD_IS + .2byte EC_WORD_POKENAV + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Marlon @ 89 .4byte TRAINER_CLASS_KINDLER .string "NASH$", 8 @ pre-battle speech - ec_word I_AM - ec_word ON - ec_word FIRE - ec_word BABY - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_ON + .2byte EC_WORD_FIRE + .2byte EC_WORD_BABY + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word I - ec_word LEFT - ec_word YOU - ec_word JUST - ec_word AN - ec_move2 EMBER + .2byte EC_WORD_I + .2byte EC_WORD_LEFT + .2byte EC_WORD_YOU + .2byte EC_WORD_JUST + .2byte EC_WORD_AN + .2byte EC_MOVE2(EMBER) @ loss speech - ec_word AIYEEH - ec_word EXCL_EXCL + .2byte EC_WORD_AIYEEH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word NO - ec_word WATER - ec_word PLEASE + .2byte EC_WORD_NO + .2byte EC_WORD_WATER + .2byte EC_WORD_PLEASE .4byte gBattleFrontierTrainerMons_Nash @ 90 .4byte TRAINER_CLASS_TRIATHLETE_3 .string "ROBBY$", 8 @ pre-battle speech - ec_word HAHAHA - ec_word EXCL - ec_word HAPPY - ec_word TO - ec_word MEET_YOU - ec_word EXCL -@ win speech - ec_word I_AM - ec_word THE - ec_word LEADER - ec_word WITH - ec_word REFRESHING - ec_word SERENE_GRACE -@ loss speech - ec_word I - ec_word WILL - ec_move1 THRASH - ec_word MY - ec_word TOYS - ec_word EXCL + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_EXCL + .2byte EC_WORD_HAPPY + .2byte EC_WORD_TO + .2byte EC_WORD_MEET_YOU + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_LEADER + .2byte EC_WORD_WITH + .2byte EC_WORD_REFRESHING + .2byte EC_WORD_SERENE_GRACE +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE(THRASH) + .2byte EC_WORD_MY + .2byte EC_WORD_TOYS + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Robby @ 91 .4byte TRAINER_CLASS_TRIATHLETE_3 .string "REECE$", 8 @ pre-battle speech - ec_word MY - ec_move2 QUICK_ATTACK - ec_word CAN - ec_word BEAT - ec_word A - ec_move2 TELEPORT -@ win speech - ec_word LIKE - ec_word I - ec_word SAID - ec_word I_AM - ec_word DARN - ec_word FAST -@ loss speech - ec_word I_WAS - ec_word KIDDING - ec_word ABOUT - ec_word THAT - ec_move2 TELEPORT - ec_word THING + .2byte EC_WORD_MY + .2byte EC_MOVE2(QUICK_ATTACK) + .2byte EC_WORD_CAN + .2byte EC_WORD_BEAT + .2byte EC_WORD_A + .2byte EC_MOVE2(TELEPORT) +@ win speech + .2byte EC_WORD_LIKE + .2byte EC_WORD_I + .2byte EC_WORD_SAID + .2byte EC_WORD_I_AM + .2byte EC_WORD_DARN + .2byte EC_WORD_FAST +@ loss speech + .2byte EC_WORD_I_WAS + .2byte EC_WORD_KIDDING + .2byte EC_WORD_ABOUT + .2byte EC_WORD_THAT + .2byte EC_MOVE2(TELEPORT) + .2byte EC_WORD_THING .4byte gBattleFrontierTrainerMons_Reece @ 92 .4byte TRAINER_CLASS_TRIATHLETE_4 .string "KATHRYN$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word TRAIN - ec_word GOOD - ec_word ENOUGH - ec_word QUES -@ win speech - ec_word DON_T - ec_move2 TAUNT - ec_word ME - ec_word LIKE - ec_word THAT - ec_word OK_QUES -@ loss speech - ec_word WHY - ec_word COULDN_T - ec_word I - ec_word WIN - ec_word THIS - ec_word QUES + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_TRAIN + .2byte EC_WORD_GOOD + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_DON_T + .2byte EC_MOVE2(TAUNT) + .2byte EC_WORD_ME + .2byte EC_WORD_LIKE + .2byte EC_WORD_THAT + .2byte EC_WORD_OK_QUES +@ loss speech + .2byte EC_WORD_WHY + .2byte EC_WORD_COULDN_T + .2byte EC_WORD_I + .2byte EC_WORD_WIN + .2byte EC_WORD_THIS + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Kathryn @ 93 .4byte TRAINER_CLASS_TRIATHLETE_4 .string "ELLEN$", 8 @ pre-battle speech - ec_word CRUSH - ec_word YOU - ec_word LIKE - ec_word AN - ec_word EGG - ec_word EXCL -@ win speech - ec_word THAT_WAS - ec_word A - ec_word TASTY - ec_word VICTORY - ec_word FOR - ec_word ME -@ loss speech - ec_word TOO - ec_word TOUGH - ec_word TO - ec_word CRUSH - ec_word EXCL + .2byte EC_WORD_CRUSH + .2byte EC_WORD_YOU + .2byte EC_WORD_LIKE + .2byte EC_WORD_AN + .2byte EC_WORD_EGG + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_A + .2byte EC_WORD_TASTY + .2byte EC_WORD_VICTORY + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_TOO + .2byte EC_WORD_TOUGH + .2byte EC_WORD_TO + .2byte EC_WORD_CRUSH + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Ellen @@ -2448,51 +2448,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_5 .string "RAMON$", 8 @ pre-battle speech - ec_word OKAY - ec_word EXCL - .2byte -1 - ec_word THIS - ec_word IS - ec_word PERFECTION -@ win speech - ec_word I_AM - ec_word HAPPY - ec_word THAT - ec_word I - ec_word WON - ec_word EXCL -@ loss speech - ec_word IT_S - ec_word A - ec_word SECRET - ec_word WHY - ec_word I_AM - ec_word HAPPY + .2byte EC_WORD_OKAY + .2byte EC_WORD_EXCL + .2byte -1 + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_PERFECTION +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY + .2byte EC_WORD_THAT + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_SECRET + .2byte EC_WORD_WHY + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY .4byte gBattleFrontierTrainerMons_Ramon @ 95 .4byte TRAINER_CLASS_TRIATHLETE_5 .string "ARTHUR$", 8 @ pre-battle speech - ec_word HERE_I_COME - ec_word FEELING - ec_word READY - ec_word FOR - ec_word IT - ec_word ALL + .2byte EC_WORD_HERE_I_COME + .2byte EC_WORD_FEELING + .2byte EC_WORD_READY + .2byte EC_WORD_FOR + .2byte EC_WORD_IT + .2byte EC_WORD_ALL @ win speech - ec_word THAT_S_IT_EXCL + .2byte EC_WORD_THAT_S_IT_EXCL .2byte -1 .2byte -1 - ec_word THAT_WAS - ec_word FABULOUS - ec_word EXCL + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_FABULOUS + .2byte EC_WORD_EXCL @ loss speech - ec_word THAT_WAS - ec_word NOT - ec_word WHAT - ec_word I - ec_word NEED + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_NOT + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_NEED .2byte -1 .4byte gBattleFrontierTrainerMons_Arthur @@ -2500,51 +2500,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_6 .string "ALONDRA$", 8 @ pre-battle speech - ec_word EVERY - ec_word DAY - ec_word IS - ec_word A - ec_word GREAT - ec_word DAY -@ win speech - ec_word MY - ec_move2 DIVE - ec_word WILL - ec_word BE - ec_word A - ec_word LEGEND -@ loss speech - ec_word MY - ec_move2 DIVE - ec_word LEFT - ec_word ME - ec_word COLD - ec_word ELLIPSIS + .2byte EC_WORD_EVERY + .2byte EC_WORD_DAY + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_GREAT + .2byte EC_WORD_DAY +@ win speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_A + .2byte EC_WORD_LEGEND +@ loss speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_LEFT + .2byte EC_WORD_ME + .2byte EC_WORD_COLD + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Alondra @ 97 .4byte TRAINER_CLASS_TRIATHLETE_6 .string "ADRIANA$", 8 @ pre-battle speech - ec_word COME - ec_word SEE - ec_word AN - ec_word INCREDIBLE - ec_word SWIFT_SWIM - ec_word EXCL -@ win speech - ec_word I - ec_word MAKE - ec_word IT - ec_word LOOK - ec_word SO - ec_word EASY -@ loss speech - ec_word I_AM - ec_word FEELING - ec_move2 BEAT_UP - ec_word AND - ec_word TIRED + .2byte EC_WORD_COME + .2byte EC_WORD_SEE + .2byte EC_WORD_AN + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_SWIFT_SWIM + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_MAKE + .2byte EC_WORD_IT + .2byte EC_WORD_LOOK + .2byte EC_WORD_SO + .2byte EC_WORD_EASY +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_AND + .2byte EC_WORD_TIRED .2byte -1 .4byte gBattleFrontierTrainerMons_Adriana @@ -2552,207 +2552,207 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_1 .string "MALIK$", 8 @ pre-battle speech - ec_word OH - ec_word NOT - ec_word ANOTHER - ec_word BATTLE - ec_word PLEASE - ec_word ELLIPSIS -@ win speech - ec_word I - ec_word FINALLY - ec_word WON - ec_word ELLIPSIS - ec_word I_AM - ec_word TIRED -@ loss speech - ec_word I - ec_word FINALLY - ec_word LOST - ec_word ELLIPSIS - ec_word I_AM - ec_word TIRED + .2byte EC_WORD_OH + .2byte EC_WORD_NOT + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_PLEASE + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_FINALLY + .2byte EC_WORD_WON + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_TIRED +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_FINALLY + .2byte EC_WORD_LOST + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_TIRED .4byte gBattleFrontierTrainerMons_Malik @ 99 .4byte TRAINER_CLASS_TRIATHLETE_2 .string "JILL$", 8 @ pre-battle speech - ec_word I_AM - ec_word THE - ec_move2 QUICK_ATTACK - ec_word TRAINER - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_MOVE2(QUICK_ATTACK) + .2byte EC_WORD_TRAINER + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word THE - ec_move2 QUICK_ATTACK - ec_word TRAINER - ec_word WINS - ec_word EXCL + .2byte EC_WORD_THE + .2byte EC_MOVE2(QUICK_ATTACK) + .2byte EC_WORD_TRAINER + .2byte EC_WORD_WINS + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word THE - ec_move2 QUICK_ATTACK - ec_word TRAINER - ec_word GIVES - ec_word UP - ec_word EXCL + .2byte EC_WORD_THE + .2byte EC_MOVE2(QUICK_ATTACK) + .2byte EC_WORD_TRAINER + .2byte EC_WORD_GIVES + .2byte EC_WORD_UP + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Jill @ 100 .4byte TRAINER_CLASS_TRIATHLETE_3 .string "ERIK$", 8 @ pre-battle speech - ec_word I_AM - ec_word THE - ec_word SPEED_BOOST - ec_word HERO - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_SPEED_BOOST + .2byte EC_WORD_HERO + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word THANK_YOU - ec_word FROM - ec_word THE - ec_word SPEED_BOOST - ec_word HERO - ec_word EXCL + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_FROM + .2byte EC_WORD_THE + .2byte EC_WORD_SPEED_BOOST + .2byte EC_WORD_HERO + .2byte EC_WORD_EXCL @ loss speech - ec_word WAAAH - ec_word EXCL_EXCL + .2byte EC_WORD_WAAAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word NO - ec_word NO - ec_word EXCL_EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL_EXCL .4byte gBattleFrontierTrainerMons_Erik @ 101 .4byte TRAINER_CLASS_TRIATHLETE_4 .string "YAZMIN$", 8 @ pre-battle speech - ec_word I - ec_word WOULD - ec_word RATHER - ec_word RUN - ec_word THAN - ec_word BIKE -@ win speech - ec_word YES - ec_word I - ec_word WOULD - ec_word MUCH - ec_word RATHER - ec_word RUN -@ loss speech - ec_word BYE_BYE - ec_word EXCL - ec_word I_AM - ec_word GOING - ec_word TO - ec_word RUN_AWAY + .2byte EC_WORD_I + .2byte EC_WORD_WOULD + .2byte EC_WORD_RATHER + .2byte EC_WORD_RUN + .2byte EC_WORD_THAN + .2byte EC_WORD_BIKE +@ win speech + .2byte EC_WORD_YES + .2byte EC_WORD_I + .2byte EC_WORD_WOULD + .2byte EC_WORD_MUCH + .2byte EC_WORD_RATHER + .2byte EC_WORD_RUN +@ loss speech + .2byte EC_WORD_BYE_BYE + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_RUN_AWAY .4byte gBattleFrontierTrainerMons_Yazmin @ 102 .4byte TRAINER_CLASS_TRIATHLETE_5 .string "JAMAL$", 8 @ pre-battle speech - ec_word I_AM - ec_word GOING - ec_word TO - ec_word BE - ec_word A - ec_word FATHER -@ win speech - ec_word I - ec_word CAN_T - ec_word WAIT - ec_word FOR - ec_word MY - ec_word BABY -@ loss speech - ec_word MY - ec_word BABY - ec_word WILL - ec_word BE - ec_word TOTALLY - ec_word AWESOME + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_A + .2byte EC_WORD_FATHER +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_WAIT + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_BABY +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_BABY + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_AWESOME .4byte gBattleFrontierTrainerMons_Jamal @ 103 .4byte TRAINER_CLASS_TRIATHLETE_6 .string "LESLIE$", 8 @ pre-battle speech - ec_word I_AM - ec_word GOING - ec_word TO - ec_word BE - ec_word A - ec_word MOTHER -@ win speech - ec_word A - ec_word BABY - ec_word WILL - ec_word BE - ec_word A_LITTLE - ec_word CHALLENGE -@ loss speech - ec_word I_AM - ec_word TOO - ec_word HAPPY - ec_word TO - ec_word BE - ec_word ANGRY + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_A + .2byte EC_WORD_MOTHER +@ win speech + .2byte EC_WORD_A + .2byte EC_WORD_BABY + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_CHALLENGE +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOO + .2byte EC_WORD_HAPPY + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_ANGRY .4byte gBattleFrontierTrainerMons_Leslie @ 104 .4byte TRAINER_CLASS_TRIATHLETE_1 .string "DAVE$", 8 @ pre-battle speech - ec_word WHAT - ec_word SHOULD - ec_word I - ec_word DO - ec_word TODAY - ec_word QUES -@ win speech - ec_word I - ec_word SHOULD - ec_word ENJOY - ec_word SOME - ec_word SPORTS - ec_word EXCL -@ loss speech - ec_word I - ec_word WILL - ec_word GO - ec_word PLAY - ec_word A - ec_word GAME + .2byte EC_WORD_WHAT + .2byte EC_WORD_SHOULD + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_TODAY + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_SHOULD + .2byte EC_WORD_ENJOY + .2byte EC_WORD_SOME + .2byte EC_WORD_SPORTS + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_GO + .2byte EC_WORD_PLAY + .2byte EC_WORD_A + .2byte EC_WORD_GAME .4byte gBattleFrontierTrainerMons_Dave @ 105 .4byte TRAINER_CLASS_TRIATHLETE_1 .string "CARLO$", 8 @ pre-battle speech - ec_word HAH - ec_word EXCL_EXCL + .2byte EC_WORD_HAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word YEAH - ec_word EXCL_EXCL + .2byte EC_WORD_YEAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word I - ec_word DO - ec_word THINGS - ec_word AT - ec_move1 EXTREME_SPEED - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_THINGS + .2byte EC_WORD_AT + .2byte EC_MOVE(EXTREME_SPEED) + .2byte EC_WORD_EXCL @ loss speech - ec_word I - ec_word LOST - ec_word AT - ec_move1 EXTREME_SPEED - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_LOST + .2byte EC_WORD_AT + .2byte EC_MOVE(EXTREME_SPEED) + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Carlo @@ -2760,103 +2760,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_2 .string "EMILIA$", 8 @ pre-battle speech - ec_word ME - ec_word WORRY - ec_word QUES - ec_word I - ec_word HAVE - ec_word NONE -@ win speech - ec_word AHAHA - ec_word SEE - ec_word QUES - ec_word THAT_WAS - ec_word FANTASTIC - ec_word EXCL -@ loss speech - ec_word AHAHA - ec_word SEE - ec_word QUES - ec_word THAT_WAS - ec_word ENTERTAINING - ec_word EXCL + .2byte EC_WORD_ME + .2byte EC_WORD_WORRY + .2byte EC_WORD_QUES + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_NONE +@ win speech + .2byte EC_WORD_AHAHA + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_FANTASTIC + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_AHAHA + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_ENTERTAINING + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Emilia @ 107 .4byte TRAINER_CLASS_TRIATHLETE_2 .string "DALIA$", 8 @ pre-battle speech - ec_word MY - ec_word BIKE - ec_word IS - ec_word VERY - ec_word EXPENSIVE - .2byte -1 -@ win speech - ec_word DON_T - ec_word COME - ec_word NEAR - ec_word MY - ec_word BIKE - ec_word EXCL -@ loss speech - ec_word MY - ec_word BIKE - ec_word IS - ec_word MY - ec_word BEST - ec_word FRIEND + .2byte EC_WORD_MY + .2byte EC_WORD_BIKE + .2byte EC_WORD_IS + .2byte EC_WORD_VERY + .2byte EC_WORD_EXPENSIVE + .2byte -1 +@ win speech + .2byte EC_WORD_DON_T + .2byte EC_WORD_COME + .2byte EC_WORD_NEAR + .2byte EC_WORD_MY + .2byte EC_WORD_BIKE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_BIKE + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_BEST + .2byte EC_WORD_FRIEND .4byte gBattleFrontierTrainerMons_Dalia @ 108 .4byte TRAINER_CLASS_BLACK_BELT .string "HITOMI$", 8 @ pre-battle speech - ec_word YEAH - ec_word EXCL_EXCL + .2byte EC_WORD_YEAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word HAH - ec_word EXCL_EXCL + .2byte EC_WORD_HAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word WHAT - ec_word QUES_EXCL + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES_EXCL .2byte -1 - ec_word I - ec_word WON - ec_word QUES_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_QUES_EXCL @ loss speech - ec_word AIYEEH - ec_word EXCL_EXCL + .2byte EC_WORD_AIYEEH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word I_AM - ec_word SORRY - ec_word EXCL_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_EXCL_EXCL .4byte gBattleFrontierTrainerMons_Hitomi @ 109 .4byte TRAINER_CLASS_BLACK_BELT .string "RICARDO$", 8 @ pre-battle speech - ec_word COME_ON - ec_word EXCL - ec_word PLAY - ec_word TIME - ec_word IS - ec_word OVER + .2byte EC_WORD_COME_ON + .2byte EC_WORD_EXCL + .2byte EC_WORD_PLAY + .2byte EC_WORD_TIME + .2byte EC_WORD_IS + .2byte EC_WORD_OVER @ win speech - ec_word YOU_RE - ec_word OUT - ec_word OF - ec_word HERE - ec_word EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_OUT + .2byte EC_WORD_OF + .2byte EC_WORD_HERE + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word PLEASE - ec_word DON_T - ec_word HIT - ec_word ME - ec_word EXCL + .2byte EC_WORD_PLEASE + .2byte EC_WORD_DON_T + .2byte EC_WORD_HIT + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Ricardo @@ -2864,178 +2864,178 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BLACK_BELT .string "SHIZUKA$", 8 @ pre-battle speech - ec_word SHOW - ec_word ME - ec_word THAT - ec_word YOU_RE - ec_word SERIOUS - ec_word EXCL -@ win speech - ec_word I - ec_word WON_T - ec_word FORGET - ec_word ABOUT - ec_word YOU - .2byte -1 -@ loss speech - ec_word YOU_RE - ec_word PERFECT - ec_word IN - ec_word EVERY - ec_word WAY - ec_word EXCL + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_THAT + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SERIOUS + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WON_T + .2byte EC_WORD_FORGET + .2byte EC_WORD_ABOUT + .2byte EC_WORD_YOU + .2byte -1 +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_PERFECT + .2byte EC_WORD_IN + .2byte EC_WORD_EVERY + .2byte EC_WORD_WAY + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Shizuka @ 111 .4byte TRAINER_CLASS_BATTLE_GIRL .string "JOANA$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word GOING - ec_word TO - ec_word LOSE - ec_word RIGHT - ec_word AWAY -@ win speech - ec_word I_AM - ec_word THE - ec_word WINNER - ec_word HEAR - ec_word ME - ec_move2 ROAR -@ loss speech - ec_word I - ec_word REFUSE - ec_word TO - ec_word ACCEPT - ec_word THAT - ec_move1 OUTRAGE + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_LOSE + .2byte EC_WORD_RIGHT + .2byte EC_WORD_AWAY +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_WINNER + .2byte EC_WORD_HEAR + .2byte EC_WORD_ME + .2byte EC_MOVE2(ROAR) +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_REFUSE + .2byte EC_WORD_TO + .2byte EC_WORD_ACCEPT + .2byte EC_WORD_THAT + .2byte EC_MOVE(OUTRAGE) .4byte gBattleFrontierTrainerMons_Joana @ 112 .4byte TRAINER_CLASS_BATTLE_GIRL .string "KELLY$", 8 @ pre-battle speech - ec_word MY - ec_word NIGHT - ec_word SCHOOL - ec_word IS - ec_word REALLY - ec_word SCARY -@ win speech - ec_word A - ec_word LADY - ec_word GHOST - ec_word APPEARS - ec_word THERE - .2byte -1 -@ loss speech - ec_word THE - ec_word HOME - ec_word WORK - ec_word IS - ec_word AWFULLY - ec_word SCARY + .2byte EC_WORD_MY + .2byte EC_WORD_NIGHT + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_IS + .2byte EC_WORD_REALLY + .2byte EC_WORD_SCARY +@ win speech + .2byte EC_WORD_A + .2byte EC_WORD_LADY + .2byte EC_WORD_GHOST + .2byte EC_WORD_APPEARS + .2byte EC_WORD_THERE + .2byte -1 +@ loss speech + .2byte EC_WORD_THE + .2byte EC_WORD_HOME + .2byte EC_WORD_WORK + .2byte EC_WORD_IS + .2byte EC_WORD_AWFULLY + .2byte EC_WORD_SCARY .4byte gBattleFrontierTrainerMons_Kelly @ 113 .4byte TRAINER_CLASS_BATTLE_GIRL .string "RAYNA$", 8 @ pre-battle speech - ec_word I_AM - ec_word NO_1 - ec_word WHEN - ec_word IT_S - ec_word ABOUT - ec_word POWER + .2byte EC_WORD_I_AM + .2byte EC_WORD_NO_1 + .2byte EC_WORD_WHEN + .2byte EC_WORD_IT_S + .2byte EC_WORD_ABOUT + .2byte EC_WORD_POWER @ win speech - ec_word UNDERSTAND - ec_word MY - ec_word POWER - ec_word NOW - ec_word QUES + .2byte EC_WORD_UNDERSTAND + .2byte EC_WORD_MY + .2byte EC_WORD_POWER + .2byte EC_WORD_NOW + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word TERRIBLE - ec_word ELLIPSIS + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_ELLIPSIS .2byte -1 - ec_word I_AM - ec_word TERRIBLE - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Rayna @ 114 .4byte TRAINER_CLASS_EXPERT_1 .string "EVAN$", 8 @ pre-battle speech - ec_word EVERY - ec_word BATTLE - ec_word HAS - ec_word A - ec_word SMELL - .2byte -1 -@ win speech - ec_word OH - ec_word EXCL - ec_word THE - ec_move1 SWEET_SCENT - ec_word OF - ec_word VICTORY -@ loss speech - ec_word THE - ec_word AWFUL - ec_word STENCH - ec_word OF - ec_word A - ec_word LOSS + .2byte EC_WORD_EVERY + .2byte EC_WORD_BATTLE + .2byte EC_WORD_HAS + .2byte EC_WORD_A + .2byte EC_WORD_SMELL + .2byte -1 +@ win speech + .2byte EC_WORD_OH + .2byte EC_WORD_EXCL + .2byte EC_WORD_THE + .2byte EC_MOVE(SWEET_SCENT) + .2byte EC_WORD_OF + .2byte EC_WORD_VICTORY +@ loss speech + .2byte EC_WORD_THE + .2byte EC_WORD_AWFUL + .2byte EC_WORD_STENCH + .2byte EC_WORD_OF + .2byte EC_WORD_A + .2byte EC_WORD_LOSS .4byte gBattleFrontierTrainerMons_Evan @ 115 .4byte TRAINER_CLASS_EXPERT_1 .string "JORDAN$", 8 @ pre-battle speech - ec_word GOOD - ec_word EXCL + .2byte EC_WORD_GOOD + .2byte EC_WORD_EXCL .2byte -1 - ec_word COME_ON - ec_word EXCL_EXCL + .2byte EC_WORD_COME_ON + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word YOU - ec_word CAN_T - ec_word BEAT - ec_word ME - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BEAT + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word WHAT - ec_word QUES_EXCL + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES_EXCL .2byte -1 - ec_word BUT - ec_word HOW - ec_word QUES + .2byte EC_WORD_BUT + .2byte EC_WORD_HOW + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Jordan @ 116 .4byte TRAINER_CLASS_EXPERT_1 .string "JOEL$", 8 @ pre-battle speech - ec_word FUFUFU - ec_word ELLIPSIS + .2byte EC_WORD_FUFUFU + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 .2byte -1 @ win speech - ec_word GIGGLE - ec_word ELLIPSIS + .2byte EC_WORD_GIGGLE + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 .2byte -1 @ loss speech - ec_word HAHAHA - ec_word ELLIPSIS + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 @@ -3046,129 +3046,129 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_EXPERT_2 .string "KRISTEN$", 8 @ pre-battle speech - ec_word HAHAHA - ec_word ELLIPSIS - .2byte -1 - ec_word A - ec_word KID - ec_word ELLIPSIS -@ win speech - ec_word JUST - ec_word A_LITTLE - ec_word KID - ec_word AFTER - ec_word ALL - ec_word EXCL -@ loss speech - ec_word A - ec_word TOUGH - ec_word KID - ec_word HUH_QUES - ec_word HUMPH - ec_word EXCL + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_ELLIPSIS + .2byte -1 + .2byte EC_WORD_A + .2byte EC_WORD_KID + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_JUST + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_KID + .2byte EC_WORD_AFTER + .2byte EC_WORD_ALL + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_A + .2byte EC_WORD_TOUGH + .2byte EC_WORD_KID + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_HUMPH + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Kristen @ 118 .4byte TRAINER_CLASS_EXPERT_2 .string "SELPHY$", 8 @ pre-battle speech - ec_word HUH_QUES - ec_word WHAT - ec_word IS_IT_QUES + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_IS_IT_QUES .2byte -1 .2byte -1 .2byte -1 @ win speech - ec_word OH - ec_word YES - ec_word EXCL - ec_word WHY - ec_word NOT - ec_word QUES + .2byte EC_WORD_OH + .2byte EC_WORD_YES + .2byte EC_WORD_EXCL + .2byte EC_WORD_WHY + .2byte EC_WORD_NOT + .2byte EC_WORD_QUES @ loss speech - ec_word OH - ec_word NO - ec_word EXCL - ec_word WHY - ec_word NOT - ec_word QUES + .2byte EC_WORD_OH + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL + .2byte EC_WORD_WHY + .2byte EC_WORD_NOT + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Selphy @ 119 .4byte TRAINER_CLASS_EXPERT_2 .string "CHLOE$", 8 @ pre-battle speech - ec_word COME - ec_word WE - ec_word WILL - ec_word DO - ec_word BATTLE - ec_word NOW + .2byte EC_WORD_COME + .2byte EC_WORD_WE + .2byte EC_WORD_WILL + .2byte EC_WORD_DO + .2byte EC_WORD_BATTLE + .2byte EC_WORD_NOW @ win speech - ec_word MORE - ec_word EXCL + .2byte EC_WORD_MORE + .2byte EC_WORD_EXCL .2byte -1 - ec_word ANOTHER - ec_word BATTLE - ec_word EXCL + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_EXCL @ loss speech - ec_word OH - ec_word EXCL + .2byte EC_WORD_OH + .2byte EC_WORD_EXCL .2byte -1 - ec_word STRONG - ec_word YOU - ec_word ARE + .2byte EC_WORD_STRONG + .2byte EC_WORD_YOU + .2byte EC_WORD_ARE .4byte gBattleFrontierTrainerMons_Chloe @ 120 .4byte TRAINER_CLASS_PSYCHIC_1 .string "NORTON$", 8 @ pre-battle speech - ec_word I - ec_word KNOW - ec_word ONLY - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_ONLY + .2byte EC_WORD_YOU .2byte -1 .2byte -1 @ win speech - ec_word EXCUSE_ME - ec_word BUT - ec_word YOU_RE - ec_word A - ec_word PUSHOVER - ec_word EXCL + .2byte EC_WORD_EXCUSE_ME + .2byte EC_WORD_BUT + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_PUSHOVER + .2byte EC_WORD_EXCL @ loss speech - ec_word YOU_RE - ec_word SOME - ec_word KIND - ec_word OF - ec_word AWESOME - ec_word EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SOME + .2byte EC_WORD_KIND + .2byte EC_WORD_OF + .2byte EC_WORD_AWESOME + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Norton @ 121 .4byte TRAINER_CLASS_PSYCHIC_1 .string "LUKAS$", 8 @ pre-battle speech - ec_word MY - ec_word JOKING - ec_word IS - ec_word PRETTY - ec_word TERRIBLE - ec_word ELLIPSIS -@ win speech - ec_word YOUR - ec_word ROCK_HEAD - ec_word EXISTS - ec_word TO - ec_word SHINE - ec_word EXCL -@ loss speech - ec_word YOUR - ec_word ROCK_HEAD - ec_word COME - ec_word TO - ec_word SHINE + .2byte EC_WORD_MY + .2byte EC_WORD_JOKING + .2byte EC_WORD_IS + .2byte EC_WORD_PRETTY + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_ROCK_HEAD + .2byte EC_WORD_EXISTS + .2byte EC_WORD_TO + .2byte EC_WORD_SHINE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_ROCK_HEAD + .2byte EC_WORD_COME + .2byte EC_WORD_TO + .2byte EC_WORD_SHINE .2byte -1 .4byte gBattleFrontierTrainerMons_Lukas @@ -3176,77 +3176,77 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PSYCHIC_1 .string "ZACH$", 8 @ pre-battle speech - ec_word I_AM - ec_word AN - ec_word EXCELLENT - ec_move2 MIMIC - ec_word OF - ec_word POKEMON -@ win speech - ec_word I_AM - ec_word HAPPY - ec_word LIKE - ec_word A_LITTLE - ec_pokemon2 TOGEPI - ec_word EXCL -@ loss speech - ec_word I_AM - ec_word ANGRY - ec_word LIKE - ec_word A - ec_pokemon2 MANKEY - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_AN + .2byte EC_WORD_EXCELLENT + .2byte EC_MOVE2(MIMIC) + .2byte EC_WORD_OF + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY + .2byte EC_WORD_LIKE + .2byte EC_WORD_A_LITTLE + .2byte EC_POKEMON2(TOGEPI) + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_ANGRY + .2byte EC_WORD_LIKE + .2byte EC_WORD_A + .2byte EC_POKEMON2(MANKEY) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Zach @ 123 .4byte TRAINER_CLASS_PSYCHIC_2 .string "KAITLYN$", 8 @ pre-battle speech - ec_word I - ec_word CRUSH - ec_word THINGS - ec_word WITH - ec_word PSYCHIC - ec_word POWER -@ win speech - ec_word MY - ec_word VICTORY - ec_word WILL - ec_word MAKE - ec_word THE - ec_word NEWS -@ loss speech - ec_word NO - ec_word NO - ec_word ELLIPSIS - ec_word THIS - ec_word WON_T - ec_word DO + .2byte EC_WORD_I + .2byte EC_WORD_CRUSH + .2byte EC_WORD_THINGS + .2byte EC_WORD_WITH + .2byte EC_WORD_PSYCHIC + .2byte EC_WORD_POWER +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_VICTORY + .2byte EC_WORD_WILL + .2byte EC_WORD_MAKE + .2byte EC_WORD_THE + .2byte EC_WORD_NEWS +@ loss speech + .2byte EC_WORD_NO + .2byte EC_WORD_NO + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_THIS + .2byte EC_WORD_WON_T + .2byte EC_WORD_DO .4byte gBattleFrontierTrainerMons_Kaitlyn @ 124 .4byte TRAINER_CLASS_PSYCHIC_2 .string "BREANNA$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word WILL - ec_word CRUSH - ec_word YOU - ec_word EXCL -@ win speech - ec_word HAVE - ec_word SOME - ec_word MORE - ec_word OF - ec_word THIS - ec_word EXCL -@ loss speech - ec_word YOU - ec_word HAVE - ec_word GUTS - ec_word AND - ec_word SKILL + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WILL + .2byte EC_WORD_CRUSH + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_HAVE + .2byte EC_WORD_SOME + .2byte EC_WORD_MORE + .2byte EC_WORD_OF + .2byte EC_WORD_THIS + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_GUTS + .2byte EC_WORD_AND + .2byte EC_WORD_SKILL .2byte -1 .4byte gBattleFrontierTrainerMons_Breanna @@ -3254,25 +3254,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PSYCHIC_2 .string "KENDRA$", 8 @ pre-battle speech - ec_word IF - ec_word YOU_RE - ec_word SMART - ec_word STOP - ec_word RIGHT - ec_word NOW -@ win speech - ec_word I - ec_word SAID - ec_word THAT - ec_word YOU - ec_word SHOULD - ec_word STOP -@ loss speech - ec_word WHY - ec_word DIDN_T - ec_word YOU - ec_word STOP - ec_word QUES + .2byte EC_WORD_IF + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SMART + .2byte EC_WORD_STOP + .2byte EC_WORD_RIGHT + .2byte EC_WORD_NOW +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_SAID + .2byte EC_WORD_THAT + .2byte EC_WORD_YOU + .2byte EC_WORD_SHOULD + .2byte EC_WORD_STOP +@ loss speech + .2byte EC_WORD_WHY + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_YOU + .2byte EC_WORD_STOP + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Kendra @@ -3280,25 +3280,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_HEX_MANIAC .string "MOLLY$", 8 @ pre-battle speech - ec_word WILL - ec_word MY - ec_word CUTE_CHARM - ec_move2 ATTRACT - ec_word YOU - ec_word QUES -@ win speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word MY - ec_word TOYS - ec_word NOW -@ loss speech - ec_word OH - ec_word HOW - ec_word COULD - ec_word YOU - ec_word QUES + .2byte EC_WORD_WILL + .2byte EC_WORD_MY + .2byte EC_WORD_CUTE_CHARM + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_MY + .2byte EC_WORD_TOYS + .2byte EC_WORD_NOW +@ loss speech + .2byte EC_WORD_OH + .2byte EC_WORD_HOW + .2byte EC_WORD_COULD + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Molly @@ -3306,205 +3306,205 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_HEX_MANIAC .string "JAZMIN$", 8 @ pre-battle speech - ec_word I - ec_word FORECAST - ec_word TERRIBLE - ec_word THINGS - ec_word FOR - ec_word YOU -@ win speech - ec_word THERE - ec_word WASN_T - ec_word MY - ec_word FORECAST - ec_word RIGHT - ec_word QUES -@ loss speech - ec_word MY - ec_move2 FORESIGHT - ec_word DIDN_T - ec_word SHOW - ec_word ME - ec_word THIS + .2byte EC_WORD_I + .2byte EC_WORD_FORECAST + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_THINGS + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU +@ win speech + .2byte EC_WORD_THERE + .2byte EC_WORD_WASN_T + .2byte EC_WORD_MY + .2byte EC_WORD_FORECAST + .2byte EC_WORD_RIGHT + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_THIS .4byte gBattleFrontierTrainerMons_Jazmin @ 128 .4byte TRAINER_CLASS_HEX_MANIAC .string "KELSEY$", 8 @ pre-battle speech - ec_word I - ec_word HAVEN_T - ec_word SLEPT - ec_word IN - ec_word DAYS - ec_word ELLIPSIS -@ win speech - ec_word MY - ec_word SLEEP - ec_word WILL - ec_word BE - ec_word EXCELLENT - ec_word NOW -@ loss speech - ec_word YOU - ec_word HAVE - ec_word DESTROYED - ec_word MY - ec_word SLEEP - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_HAVEN_T + .2byte EC_WORD_SLEPT + .2byte EC_WORD_IN + .2byte EC_WORD_DAYS + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_SLEEP + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_EXCELLENT + .2byte EC_WORD_NOW +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_MY + .2byte EC_WORD_SLEEP + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Kelsey @ 129 .4byte TRAINER_CLASS_POKEMANIAC .string "JALEN$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word ALLOW - ec_word POKEMON - ec_word TO - ec_move1 THRASH -@ win speech - ec_word HAHAHA - ec_word EXCL - ec_word ARE - ec_word YOU - ec_word ANGRY - ec_word QUES -@ loss speech - ec_word WHY - ec_word IS - ec_word THIS - ec_word SO - ec_word HARD - ec_word QUES + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_ALLOW + .2byte EC_WORD_POKEMON + .2byte EC_WORD_TO + .2byte EC_MOVE(THRASH) +@ win speech + .2byte EC_WORD_HAHAHA + .2byte EC_WORD_EXCL + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_ANGRY + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_WHY + .2byte EC_WORD_IS + .2byte EC_WORD_THIS + .2byte EC_WORD_SO + .2byte EC_WORD_HARD + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Jalen @ 130 .4byte TRAINER_CLASS_POKEMANIAC .string "GRIFFEN$", 8 @ pre-battle speech - ec_word I - ec_move2 SWALLOW - ec_move2 SLUDGE - ec_word TO - ec_move2 TRANSFORM - ec_word MYSELF -@ win speech - ec_word I - ec_word HAVE - ec_word A - ec_move1 GROWTH - ec_word OF - ec_move2 ACID_ARMOR -@ loss speech - ec_word I - ec_word HAVE - ec_word A - ec_move1 GROWTH - ec_word OF - ec_word SUCTION_CUPS + .2byte EC_WORD_I + .2byte EC_MOVE2(SWALLOW) + .2byte EC_MOVE2(SLUDGE) + .2byte EC_WORD_TO + .2byte EC_MOVE2(TRANSFORM) + .2byte EC_WORD_MYSELF +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE(GROWTH) + .2byte EC_WORD_OF + .2byte EC_MOVE2(ACID_ARMOR) +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE(GROWTH) + .2byte EC_WORD_OF + .2byte EC_WORD_SUCTION_CUPS .4byte gBattleFrontierTrainerMons_Griffen @ 131 .4byte TRAINER_CLASS_POKEMANIAC .string "XANDER$", 8 @ pre-battle speech - ec_word I - ec_word GOT - ec_word MY - ec_word POKEMON - ec_word ON - ec_word RENTAL -@ win speech - ec_word IT_S - ec_word INCREDIBLE - ec_word MY - ec_word RENTAL - ec_word POKEMON - ec_word WON -@ loss speech - ec_word RENTAL - ec_word POKEMON - ec_word AREN_T - ec_word UP - ec_word TO - ec_move2 SCRATCH + .2byte EC_WORD_I + .2byte EC_WORD_GOT + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ON + .2byte EC_WORD_RENTAL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_MY + .2byte EC_WORD_RENTAL + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WON +@ loss speech + .2byte EC_WORD_RENTAL + .2byte EC_WORD_POKEMON + .2byte EC_WORD_AREN_T + .2byte EC_WORD_UP + .2byte EC_WORD_TO + .2byte EC_MOVE2(SCRATCH) .4byte gBattleFrontierTrainerMons_Xander @ 132 .4byte TRAINER_CLASS_GENTLEMAN .string "MARVIN$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word UP - ec_word TO - ec_word THE - ec_word CHALLENGE - ec_word QUES -@ win speech - ec_word I - ec_word DIDN_T - ec_word THINK - ec_word YOU_RE - ec_word GOOD - ec_word ENOUGH -@ loss speech - ec_word I_AM - ec_word FEELING - ec_word PERFECT - ec_word THANK_YOU - ec_word SO - ec_word MUCH + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_UP + .2byte EC_WORD_TO + .2byte EC_WORD_THE + .2byte EC_WORD_CHALLENGE + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_THINK + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOOD + .2byte EC_WORD_ENOUGH +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_PERFECT + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_SO + .2byte EC_WORD_MUCH .4byte gBattleFrontierTrainerMons_Marvin @ 133 .4byte TRAINER_CLASS_GENTLEMAN .string "BRENNAN$", 8 @ pre-battle speech - ec_word I - ec_move2 WISH - ec_word TO - ec_word SEE - ec_word THE - ec_word NEWS -@ win speech - ec_word COMICS - ec_word GET - ec_word DAMP - ec_word FROM - ec_word DRIZZLE - ec_word QUES -@ loss speech - ec_word THE - ec_word TIGHT - ec_word MONEY - ec_word LIVING - ec_word CHANNEL - ec_word QUES_EXCL + .2byte EC_WORD_I + .2byte EC_MOVE2(WISH) + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_THE + .2byte EC_WORD_NEWS +@ win speech + .2byte EC_WORD_COMICS + .2byte EC_WORD_GET + .2byte EC_WORD_DAMP + .2byte EC_WORD_FROM + .2byte EC_WORD_DRIZZLE + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_THE + .2byte EC_WORD_TIGHT + .2byte EC_WORD_MONEY + .2byte EC_WORD_LIVING + .2byte EC_WORD_CHANNEL + .2byte EC_WORD_QUES_EXCL .4byte gBattleFrontierTrainerMons_Brennan @ 134 .4byte TRAINER_CLASS_BUG_MANIAC .string "BALEY$", 8 @ pre-battle speech - ec_move1 SCREECH - ec_word IS - ec_word LIKE - ec_word MUSIC - ec_word TO_ME - ec_word EXCL + .2byte EC_MOVE(SCREECH) + .2byte EC_WORD_IS + .2byte EC_WORD_LIKE + .2byte EC_WORD_MUSIC + .2byte EC_WORD_TO_ME + .2byte EC_WORD_EXCL @ win speech - ec_word MY - ec_move1 SCREECH - ec_word STRATEGY - ec_word IS - ec_word THE - ec_word BEST + .2byte EC_WORD_MY + .2byte EC_MOVE(SCREECH) + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_IS + .2byte EC_WORD_THE + .2byte EC_WORD_BEST @ loss speech - ec_word YOU_RE - ec_word SOUNDPROOF - ec_word QUES + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SOUNDPROOF + .2byte EC_WORD_QUES .2byte -1 .2byte -1 .2byte -1 @@ -3514,51 +3514,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_RUIN_MANIAC .string "ZACKARY$", 8 @ pre-battle speech - ec_word CAN - ec_word YOU - ec_move1 DIG - ec_word IT - ec_word YO - ec_word QUES -@ win speech - ec_move2 TAKE_DOWN - ec_word TAKE - ec_word A - ec_move2 DIVE - ec_word YO - ec_word YO -@ loss speech - ec_word BREAK - ec_word DOWN - ec_move2 DIVE - ec_word TIME - ec_word FOR - ec_word ME + .2byte EC_WORD_CAN + .2byte EC_WORD_YOU + .2byte EC_MOVE(DIG) + .2byte EC_WORD_IT + .2byte EC_WORD_YO + .2byte EC_WORD_QUES +@ win speech + .2byte EC_MOVE2(TAKE_DOWN) + .2byte EC_WORD_TAKE + .2byte EC_WORD_A + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_YO + .2byte EC_WORD_YO +@ loss speech + .2byte EC_WORD_BREAK + .2byte EC_WORD_DOWN + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_TIME + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .4byte gBattleFrontierTrainerMons_Zackary @ 136 .4byte TRAINER_CLASS_COLLECTOR .string "GABRIEL$", 8 @ pre-battle speech - ec_move2 POUND - ec_word THE - ec_word THICK_FAT - ec_word ON - ec_word MY - ec_move2 BELLY_DRUM -@ win speech - ec_move2 POUND - ec_word MY - ec_move2 BELLY_DRUM - ec_move2 POUND - ec_word MY - ec_move2 BELLY_DRUM -@ loss speech - ec_word MY - ec_move2 BELLY_DRUM - ec_word WAS - ec_word TOO_WEAK - ec_word ELLIPSIS + .2byte EC_MOVE2(POUND) + .2byte EC_WORD_THE + .2byte EC_WORD_THICK_FAT + .2byte EC_WORD_ON + .2byte EC_WORD_MY + .2byte EC_MOVE2(BELLY_DRUM) +@ win speech + .2byte EC_MOVE2(POUND) + .2byte EC_WORD_MY + .2byte EC_MOVE2(BELLY_DRUM) + .2byte EC_MOVE2(POUND) + .2byte EC_WORD_MY + .2byte EC_MOVE2(BELLY_DRUM) +@ loss speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(BELLY_DRUM) + .2byte EC_WORD_WAS + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Gabriel @@ -3566,77 +3566,77 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PARASOL_LADY .string "EMILY$", 8 @ pre-battle speech - ec_word HOW - ec_word ABOUT - ec_word A_TINY_BIT - ec_word OF - ec_move1 HYPNOSIS - ec_word QUES -@ win speech - ec_word MY - ec_move1 HYPNOSIS - ec_word STRATEGY - ec_word WORKS - ec_word TO - ec_word PERFECTION -@ loss speech - ec_word MY - ec_move1 HYPNOSIS - ec_word STRATEGY - ec_word WENT - ec_word BADLY - ec_word ELLIPSIS + .2byte EC_WORD_HOW + .2byte EC_WORD_ABOUT + .2byte EC_WORD_A_TINY_BIT + .2byte EC_WORD_OF + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_MY + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_WORKS + .2byte EC_WORD_TO + .2byte EC_WORD_PERFECTION +@ loss speech + .2byte EC_WORD_MY + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_WENT + .2byte EC_WORD_BADLY + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Emily @ 138 .4byte TRAINER_CLASS_BEAUTY .string "JORDYN$", 8 @ pre-battle speech - ec_word YOU - ec_word DON_T - ec_word KNOW - ec_word MY - ec_word SECRET - ec_word ELLIPSIS -@ win speech - ec_word I_AM - ec_word NOT - ec_word AS - ec_word I - ec_word APPEAR - ec_word ELLIPSIS -@ loss speech - ec_word BUT - ec_word HOW - ec_word DID - ec_word YOU - ec_word KNOW - ec_word QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_KNOW + .2byte EC_WORD_MY + .2byte EC_WORD_SECRET + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_AS + .2byte EC_WORD_I + .2byte EC_WORD_APPEAR + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_BUT + .2byte EC_WORD_HOW + .2byte EC_WORD_DID + .2byte EC_WORD_YOU + .2byte EC_WORD_KNOW + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Jordyn @ 139 .4byte TRAINER_CLASS_AROMA_LADY .string "SOFIA$", 8 @ pre-battle speech - ec_pokemon1 LOUDRED - ec_word PROBABLY - ec_word HAS - ec_word A - ec_move1 SWEET_SCENT + .2byte EC_POKEMON(LOUDRED) + .2byte EC_WORD_PROBABLY + .2byte EC_WORD_HAS + .2byte EC_WORD_A + .2byte EC_MOVE(SWEET_SCENT) .2byte -1 @ win speech - ec_word THAT_S - ec_word THE - ec_word FEELING - ec_word THAT - ec_word I - ec_word GET + .2byte EC_WORD_THAT_S + .2byte EC_WORD_THE + .2byte EC_WORD_FEELING + .2byte EC_WORD_THAT + .2byte EC_WORD_I + .2byte EC_WORD_GET @ loss speech - ec_word I - ec_word WORK - ec_word AT - ec_word THE - ec_word DEPT_STORE + .2byte EC_WORD_I + .2byte EC_WORD_WORK + .2byte EC_WORD_AT + .2byte EC_WORD_THE + .2byte EC_WORD_DEPT_STORE .2byte -1 .4byte gBattleFrontierTrainerMons_Sofia @@ -3644,51 +3644,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_COOLTRAINER_1 .string "BRADEN$", 8 @ pre-battle speech - ec_word I_CHOOSE_YOU - ec_word EXCL + .2byte EC_WORD_I_CHOOSE_YOU + .2byte EC_WORD_EXCL .2byte -1 - ec_word THIS_IS_IT_EXCL + .2byte EC_WORD_THIS_IS_IT_EXCL .2byte -1 .2byte -1 @ win speech - ec_word I_AM - ec_word FEELING - ec_word PRETTY - ec_word AWESOME - ec_word ABOUT - ec_word MYSELF + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_PRETTY + .2byte EC_WORD_AWESOME + .2byte EC_WORD_ABOUT + .2byte EC_WORD_MYSELF @ loss speech - ec_word ALL_RIGHT - ec_word EXCL + .2byte EC_WORD_ALL_RIGHT + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word SURRENDER - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Braden @ 141 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "KAYDEN$", 8 @ pre-battle speech - ec_word THEY - ec_word OVERDO - ec_word THAT - ec_word GOURMET - ec_word THING - ec_word ELLIPSIS -@ win speech - ec_word THAT - ec_word GOURMET - ec_word THING - ec_word ISN_T - ec_word FOR - ec_word ME -@ loss speech - ec_word HEY - ec_word THIS - ec_word IS - ec_word PRETTY - ec_word TASTY + .2byte EC_WORD_THEY + .2byte EC_WORD_OVERDO + .2byte EC_WORD_THAT + .2byte EC_WORD_GOURMET + .2byte EC_WORD_THING + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_THAT + .2byte EC_WORD_GOURMET + .2byte EC_WORD_THING + .2byte EC_WORD_ISN_T + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_HEY + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_PRETTY + .2byte EC_WORD_TASTY .2byte -1 .4byte gBattleFrontierTrainerMons_Kayden @@ -3696,259 +3696,259 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_COOLTRAINER_1 .string "COOPER$", 8 @ pre-battle speech - ec_word THIS - ec_word SHOULD - ec_word ABSOLUTELY - ec_word BE - ec_word A - ec_word PUSHOVER -@ win speech - ec_word THAT_WAS - ec_word TOO - ec_word EXCITING - ec_word FOR - ec_word ME - ec_word ELLIPSIS -@ loss speech - ec_word PLEASE - ec_word EXCL - .2byte -1 - ec_word SORRY - ec_word I_AM - ec_word SORRY + .2byte EC_WORD_THIS + .2byte EC_WORD_SHOULD + .2byte EC_WORD_ABSOLUTELY + .2byte EC_WORD_BE + .2byte EC_WORD_A + .2byte EC_WORD_PUSHOVER +@ win speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_TOO + .2byte EC_WORD_EXCITING + .2byte EC_WORD_FOR + .2byte EC_WORD_ME + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_EXCL + .2byte -1 + .2byte EC_WORD_SORRY + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY .4byte gBattleFrontierTrainerMons_Cooper @ 143 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "JULIA$", 8 @ pre-battle speech - ec_word SPIRIT - ec_word ALONE - ec_word WON_T - ec_word MAKE - ec_word YOU - ec_word WIN -@ win speech - ec_word YOU - ec_word SHOULD - ec_word ACCEPT - ec_word THIS - ec_word WITH - ec_word SERENE_GRACE -@ loss speech - ec_word FOR_NOW - ec_word GOOD_BYE - ec_word BUT - ec_word IT_S - ec_word NOT - ec_word OVER + .2byte EC_WORD_SPIRIT + .2byte EC_WORD_ALONE + .2byte EC_WORD_WON_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_YOU + .2byte EC_WORD_WIN +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SHOULD + .2byte EC_WORD_ACCEPT + .2byte EC_WORD_THIS + .2byte EC_WORD_WITH + .2byte EC_WORD_SERENE_GRACE +@ loss speech + .2byte EC_WORD_FOR_NOW + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_BUT + .2byte EC_WORD_IT_S + .2byte EC_WORD_NOT + .2byte EC_WORD_OVER .4byte gBattleFrontierTrainerMons_Julia @ 144 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "AMARA$", 8 @ pre-battle speech - ec_word WROOOAAR_EXCL - ec_word EXCL_EXCL - ec_word I_AM - ec_word SO - ec_word READY - ec_word EXCL_EXCL -@ win speech - ec_word I - ec_word LOSE - ec_word MYSELF - ec_word IF - ec_word IT_S - ec_word EXCITING -@ loss speech - ec_word THAT_S - ec_word TOO - ec_word MUCH - ec_word TO - ec_move2 TACKLE - ec_word EXCL + .2byte EC_WORD_WROOOAAR_EXCL + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_READY + .2byte EC_WORD_EXCL_EXCL +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_LOSE + .2byte EC_WORD_MYSELF + .2byte EC_WORD_IF + .2byte EC_WORD_IT_S + .2byte EC_WORD_EXCITING +@ loss speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_TO + .2byte EC_MOVE2(TACKLE) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Amara @ 145 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "LYNN$", 8 @ pre-battle speech - ec_word YOUR - ec_word SECRET - ec_word CAN_T - ec_word BE - ec_word HIDDEN - ec_word FOREVER -@ win speech - ec_word I - ec_word KNOW - ec_word YOUR - ec_word SECRET - ec_word NOW - ec_word EXCL -@ loss speech - ec_word YOU - ec_word CAN_T - ec_move1 SAFEGUARD - ec_word YOUR - ec_word OWN - ec_word SECRET + .2byte EC_WORD_YOUR + .2byte EC_WORD_SECRET + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BE + .2byte EC_WORD_HIDDEN + .2byte EC_WORD_FOREVER +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_YOUR + .2byte EC_WORD_SECRET + .2byte EC_WORD_NOW + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_MOVE(SAFEGUARD) + .2byte EC_WORD_YOUR + .2byte EC_WORD_OWN + .2byte EC_WORD_SECRET .4byte gBattleFrontierTrainerMons_Lynn @ 146 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "JOVAN$", 8 @ pre-battle speech - ec_word YOUR - ec_word BATTLE - ec_word SENSE - ec_word IS - ec_word SADLY - ec_word LACKING -@ win speech - ec_word MY - ec_word BATTLE - ec_word SENSE - ec_word IS - ec_word COOL - ec_word ISN_T_IT_QUES -@ loss speech - ec_word I_WAS - ec_word MINUS - ec_word MY - ec_word NORMAL - ec_word POWER - ec_word TODAY + .2byte EC_WORD_YOUR + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SENSE + .2byte EC_WORD_IS + .2byte EC_WORD_SADLY + .2byte EC_WORD_LACKING +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SENSE + .2byte EC_WORD_IS + .2byte EC_WORD_COOL + .2byte EC_WORD_ISN_T_IT_QUES +@ loss speech + .2byte EC_WORD_I_WAS + .2byte EC_WORD_MINUS + .2byte EC_WORD_MY + .2byte EC_WORD_NORMAL + .2byte EC_WORD_POWER + .2byte EC_WORD_TODAY .4byte gBattleFrontierTrainerMons_Jovan @ 147 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "DOMINIC$", 8 @ pre-battle speech - ec_word I - ec_word HAVE - ec_word THIS - ec_word EXCELLENT - ec_word CAMERA + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_THIS + .2byte EC_WORD_EXCELLENT + .2byte EC_WORD_CAMERA .2byte -1 @ win speech - ec_word MY - ec_word CAMERA - ec_word WAS - ec_word AWFULLY - ec_word EXPENSIVE + .2byte EC_WORD_MY + .2byte EC_WORD_CAMERA + .2byte EC_WORD_WAS + .2byte EC_WORD_AWFULLY + .2byte EC_WORD_EXPENSIVE .2byte -1 @ loss speech - ec_word MY - ec_word CAMERA - ec_word DOESN_T - ec_word MISS - ec_word A - ec_word THING + .2byte EC_WORD_MY + .2byte EC_WORD_CAMERA + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_MISS + .2byte EC_WORD_A + .2byte EC_WORD_THING .4byte gBattleFrontierTrainerMons_Dominic @ 148 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "NIKOLAS$", 8 @ pre-battle speech - ec_word I - ec_move2 MIMIC - ec_word POKEMON - ec_word AFTER - ec_word EVERY - ec_word BATTLE -@ win speech - ec_word IF_I_WIN - ec_word I - ec_word PRETEND - ec_word I_AM - ec_word A - ec_pokemon2 TAUROS -@ loss speech - ec_word IF_I_LOSE - ec_word I - ec_word PRETEND - ec_word I_AM - ec_word A - ec_pokemon2 MILTANK + .2byte EC_WORD_I + .2byte EC_MOVE2(MIMIC) + .2byte EC_WORD_POKEMON + .2byte EC_WORD_AFTER + .2byte EC_WORD_EVERY + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_IF_I_WIN + .2byte EC_WORD_I + .2byte EC_WORD_PRETEND + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_POKEMON2(TAUROS) +@ loss speech + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_I + .2byte EC_WORD_PRETEND + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_POKEMON2(MILTANK) .4byte gBattleFrontierTrainerMons_Nikolas @ 149 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "VALERIA$", 8 @ pre-battle speech - ec_word I - ec_move2 WISH - ec_word YOU - ec_word WOULD - ec_word NOT - ec_move2 GLARE -@ win speech - ec_word YOU_RE - ec_word MEAN - ec_word EXCL - ec_word I - ec_word MEAN - ec_word REALLY -@ loss speech - ec_word YOU - ec_word HAVE - ec_word A - ec_word REALLY - ec_move1 SCARY_FACE - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_MOVE2(WISH) + .2byte EC_WORD_YOU + .2byte EC_WORD_WOULD + .2byte EC_WORD_NOT + .2byte EC_MOVE2(GLARE) +@ win speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MEAN + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_MEAN + .2byte EC_WORD_REALLY +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_WORD_REALLY + .2byte EC_MOVE(SCARY_FACE) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Valeria @ 150 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "DELANEY$", 8 @ pre-battle speech - ec_word SCHOOL - ec_word IS - ec_word OVER - ec_word TIME - ec_word TO - ec_word PLAY -@ win speech - ec_word MY - ec_word BOY - ec_word FRIEND - ec_word IS - ec_word FROM - ec_word SCHOOL -@ loss speech - ec_word I - ec_word HAVE - ec_word TO - ec_word WORK - ec_word NEXT - ec_word WEEK + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_IS + .2byte EC_WORD_OVER + .2byte EC_WORD_TIME + .2byte EC_WORD_TO + .2byte EC_WORD_PLAY +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_BOY + .2byte EC_WORD_FRIEND + .2byte EC_WORD_IS + .2byte EC_WORD_FROM + .2byte EC_WORD_SCHOOL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_WORK + .2byte EC_WORD_NEXT + .2byte EC_WORD_WEEK .4byte gBattleFrontierTrainerMons_Delaney @ 151 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "MEGHAN$", 8 @ pre-battle speech - ec_word SCHOOL - ec_word IS - ec_word OUT - ec_word TIME - ec_word TO - ec_word PLAY + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_IS + .2byte EC_WORD_OUT + .2byte EC_WORD_TIME + .2byte EC_WORD_TO + .2byte EC_WORD_PLAY @ win speech - ec_word MY - ec_word BOY - ec_word FRIEND - ec_word LIKES - ec_word COMICS + .2byte EC_WORD_MY + .2byte EC_WORD_BOY + .2byte EC_WORD_FRIEND + .2byte EC_WORD_LIKES + .2byte EC_WORD_COMICS .2byte -1 @ loss speech - ec_word IT_S - ec_word BACK - ec_word TO - ec_word SCHOOL - ec_word SOON + .2byte EC_WORD_IT_S + .2byte EC_WORD_BACK + .2byte EC_WORD_TO + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_SOON .2byte -1 .4byte gBattleFrontierTrainerMons_Meghan @@ -3956,25 +3956,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_DRAGON_TAMER .string "ROBERTO$", 8 @ pre-battle speech - ec_word DRAGON - ec_word POKEMON - ec_word ARE - ec_word INVINCIBLE - ec_word EXCL + .2byte EC_WORD_DRAGON + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word YOU - ec_word WEREN_T - ec_word BAD - ec_word I_WAS - ec_word JUST - ec_word BETTER + .2byte EC_WORD_YOU + .2byte EC_WORD_WEREN_T + .2byte EC_WORD_BAD + .2byte EC_WORD_I_WAS + .2byte EC_WORD_JUST + .2byte EC_WORD_BETTER @ loss speech - ec_word AREN_T - ec_word YOU - ec_word SATISFIED - ec_word YET - ec_word QUES + .2byte EC_WORD_AREN_T + .2byte EC_WORD_YOU + .2byte EC_WORD_SATISFIED + .2byte EC_WORD_YET + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Roberto @@ -3982,25 +3982,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_DRAGON_TAMER .string "DAMIAN$", 8 @ pre-battle speech - ec_word MY - ec_word PURE_POWER - ec_word IS - ec_word MACHINE - ec_word LIKE - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_PURE_POWER + .2byte EC_WORD_IS + .2byte EC_WORD_MACHINE + .2byte EC_WORD_LIKE + .2byte EC_WORD_EXCL @ win speech - ec_word MY - ec_move2 MACH_PUNCH - ec_word WILL - ec_word MAKE - ec_word A - ec_move1 BRICK_BREAK + .2byte EC_WORD_MY + .2byte EC_MOVE2(MACH_PUNCH) + .2byte EC_WORD_WILL + .2byte EC_WORD_MAKE + .2byte EC_WORD_A + .2byte EC_MOVE(BRICK_BREAK) @ loss speech - ec_word ARRGH - ec_word EXCL + .2byte EC_WORD_ARRGH + .2byte EC_WORD_EXCL .2byte -1 - ec_word NO - ec_word EXCL_EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Damian @@ -4008,103 +4008,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_DRAGON_TAMER .string "BRODY$", 8 @ pre-battle speech - ec_word MY - ec_word FASHION - ec_word SENSE - ec_word SEEMS - ec_pokemon1 ODDISH - ec_word QUES -@ win speech - ec_word IT_S - ec_word MY - ec_word FAMILY - ec_word STAY_AT_HOME - ec_word LOOK - ec_word EXCL -@ loss speech - ec_word I - ec_word QUESTION - ec_word YOUR - ec_word FASHION - ec_word SENSE - ec_word SERIOUSLY + .2byte EC_WORD_MY + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE + .2byte EC_WORD_SEEMS + .2byte EC_POKEMON(ODDISH) + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_MY + .2byte EC_WORD_FAMILY + .2byte EC_WORD_STAY_AT_HOME + .2byte EC_WORD_LOOK + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_QUESTION + .2byte EC_WORD_YOUR + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE + .2byte EC_WORD_SERIOUSLY .4byte gBattleFrontierTrainerMons_Brody @ 155 .4byte TRAINER_CLASS_DRAGON_TAMER .string "GRAHAM$", 8 @ pre-battle speech - ec_word YEAH - ec_word EXCL + .2byte EC_WORD_YEAH + .2byte EC_WORD_EXCL .2byte -1 - ec_word YEAH_YEAH - ec_word EXCL_EXCL + .2byte EC_WORD_YEAH_YEAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word WAHAHAHA - ec_word WAHAHAHA - ec_word EXCL - ec_word WAHAHAHA - ec_word WAHAHAHA - ec_word EXCL_EXCL + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL_EXCL @ loss speech - ec_word I_AM - ec_word SORRY - ec_word ELLIPSIS - ec_word IT_S - ec_word MY - ec_word BAD + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_IT_S + .2byte EC_WORD_MY + .2byte EC_WORD_BAD .4byte gBattleFrontierTrainerMons_Graham @ 156 .4byte TRAINER_CLASS_POKEFAN_1 .string "TYLOR$", 8 @ pre-battle speech - ec_word ARE - ec_word YOU - ec_word FEELING - ec_word MY - ec_move2 HEAT_WAVE - ec_word QUES -@ win speech - ec_word YES - ec_word I_AM - ec_word ON - ec_word FIRE - ec_word EXCL - .2byte -1 -@ loss speech - ec_word BUT - ec_word I_WAS - ec_word ON - ec_word FIRE - ec_word FOR - ec_word YOU + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_FEELING + .2byte EC_WORD_MY + .2byte EC_MOVE2(HEAT_WAVE) + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YES + .2byte EC_WORD_I_AM + .2byte EC_WORD_ON + .2byte EC_WORD_FIRE + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_BUT + .2byte EC_WORD_I_WAS + .2byte EC_WORD_ON + .2byte EC_WORD_FIRE + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Tylor @ 157 .4byte TRAINER_CLASS_POKEFAN_2 .string "JAREN$", 8 @ pre-battle speech - ec_word FIGHTING - ec_word SPIRIT - ec_word QUES - ec_word ME - ec_word QUES + .2byte EC_WORD_FIGHTING + .2byte EC_WORD_SPIRIT + .2byte EC_WORD_QUES + .2byte EC_WORD_ME + .2byte EC_WORD_QUES .2byte -1 @ win speech - ec_word I - ec_word WANT - ec_word MORE - ec_word CUTE - ec_word POKEMON + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_MORE + .2byte EC_WORD_CUTE + .2byte EC_WORD_POKEMON .2byte -1 @ loss speech - ec_word YOUR - ec_word POKEMON - ec_word LOOK - ec_word QUITE - ec_word CUTE + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_LOOK + .2byte EC_WORD_QUITE + .2byte EC_WORD_CUTE .2byte -1 .4byte gBattleFrontierTrainerMons_Jaren @@ -4112,389 +4112,389 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "CORDELL$", 8 @ pre-battle speech - ec_word A - ec_word BATTLE - ec_word IS - ec_word DECIDED - ec_word ON - ec_word SPIRIT -@ win speech - ec_word CAN_T - ec_word YOU - ec_word ACCEPT - ec_word THAT - ec_word QUES - .2byte -1 -@ loss speech - ec_word I - ec_word WILL - ec_word BE - ec_word ON - ec_word MY - ec_word WAY + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_IS + .2byte EC_WORD_DECIDED + .2byte EC_WORD_ON + .2byte EC_WORD_SPIRIT +@ win speech + .2byte EC_WORD_CAN_T + .2byte EC_WORD_YOU + .2byte EC_WORD_ACCEPT + .2byte EC_WORD_THAT + .2byte EC_WORD_QUES + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_ON + .2byte EC_WORD_MY + .2byte EC_WORD_WAY .4byte gBattleFrontierTrainerMons_Cordell @ 159 .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "JAZLYN$", 8 @ pre-battle speech - ec_word IS - ec_word YOUR - ec_word POKEDEX - ec_word REALLY - ec_word AWESOME - ec_word QUES -@ win speech - ec_word OH_YEAH - ec_word WOW - ec_word YOUR - ec_word POKEDEX - ec_word IS - ec_word SUPER -@ loss speech - ec_word AN - ec_word AVANT_GARDE - ec_word POKEDEX - ec_word WOULD - ec_word BE - ec_word AWESOME + .2byte EC_WORD_IS + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_REALLY + .2byte EC_WORD_AWESOME + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_WOW + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_IS + .2byte EC_WORD_SUPER +@ loss speech + .2byte EC_WORD_AN + .2byte EC_WORD_AVANT_GARDE + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_WOULD + .2byte EC_WORD_BE + .2byte EC_WORD_AWESOME .4byte gBattleFrontierTrainerMons_Jazlyn @ 160 .4byte TRAINER_CLASS_YOUNGSTER .string "ZACHERY$", 8 @ pre-battle speech - ec_word I - ec_word HAVE - ec_word MY - ec_word OWN - ec_word PLACE - ec_word YEEHAW_EXCL -@ win speech - ec_word IT_S - ec_word AN - ec_word EXCITING - ec_word TIME - ec_word FOR - ec_word ME -@ loss speech - ec_word YOU - ec_word CAN_T - ec_word FLATTEN - ec_word MY - ec_word HAPPINESS - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_MY + .2byte EC_WORD_OWN + .2byte EC_WORD_PLACE + .2byte EC_WORD_YEEHAW_EXCL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_AN + .2byte EC_WORD_EXCITING + .2byte EC_WORD_TIME + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_FLATTEN + .2byte EC_WORD_MY + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Zachery @ 161 .4byte TRAINER_CLASS_YOUNGSTER .string "JOHAN$", 8 @ pre-battle speech - ec_word WINTER - ec_word WILL - ec_word SOON - ec_word BE - ec_word HERE - .2byte -1 -@ win speech - ec_word MY - ec_word ALLOWANCE - ec_word COULD - ec_word USE - ec_word A - ec_move2 HELPING_HAND -@ loss speech - ec_word I - ec_word ALWAYS - ec_word USE - ec_word MY - ec_word ALLOWANCE - ec_word UP + .2byte EC_WORD_WINTER + .2byte EC_WORD_WILL + .2byte EC_WORD_SOON + .2byte EC_WORD_BE + .2byte EC_WORD_HERE + .2byte -1 +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_ALLOWANCE + .2byte EC_WORD_COULD + .2byte EC_WORD_USE + .2byte EC_WORD_A + .2byte EC_MOVE2(HELPING_HAND) +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_USE + .2byte EC_WORD_MY + .2byte EC_WORD_ALLOWANCE + .2byte EC_WORD_UP .4byte gBattleFrontierTrainerMons_Johan @ 162 .4byte TRAINER_CLASS_LASS .string "SHEA$", 8 @ pre-battle speech - ec_word DO - ec_word YOU - ec_word BATTLE - ec_word WITH - ec_word BEAUTY - ec_word QUES -@ win speech - ec_word YOU - ec_word BATTLE - ec_word IN - ec_word AN - ec_word UGLY - ec_word WAY -@ loss speech - ec_word WHAT - ec_word IS - ec_word BEAUTY - ec_word TO - ec_word YOU - ec_word QUES + .2byte EC_WORD_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_BATTLE + .2byte EC_WORD_WITH + .2byte EC_WORD_BEAUTY + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_BATTLE + .2byte EC_WORD_IN + .2byte EC_WORD_AN + .2byte EC_WORD_UGLY + .2byte EC_WORD_WAY +@ loss speech + .2byte EC_WORD_WHAT + .2byte EC_WORD_IS + .2byte EC_WORD_BEAUTY + .2byte EC_WORD_TO + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Shea @ 163 .4byte TRAINER_CLASS_LASS .string "KAILA$", 8 @ pre-battle speech - ec_word I_AM - ec_word FEELING - ec_word THIRSTY - ec_word RIGHT - ec_word NOW - ec_word ELLIPSIS -@ win speech - ec_word I - ec_word COULD - ec_word USE - ec_word A - ec_word COLD - ec_word DRINK -@ loss speech - ec_word THAT - ec_word LOSS - ec_word IS - ec_word HARD - ec_word TO - ec_move2 SWALLOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_THIRSTY + .2byte EC_WORD_RIGHT + .2byte EC_WORD_NOW + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_COULD + .2byte EC_WORD_USE + .2byte EC_WORD_A + .2byte EC_WORD_COLD + .2byte EC_WORD_DRINK +@ loss speech + .2byte EC_WORD_THAT + .2byte EC_WORD_LOSS + .2byte EC_WORD_IS + .2byte EC_WORD_HARD + .2byte EC_WORD_TO + .2byte EC_MOVE2(SWALLOW) .4byte gBattleFrontierTrainerMons_Kaila @ 164 .4byte TRAINER_CLASS_SCHOOL_KID_1 .string "ISIAH$", 8 @ pre-battle speech - ec_word I - ec_word PRETEND - ec_word TO - ec_word STUDY - ec_word A_LOT - .2byte -1 -@ win speech - ec_word I - ec_move2 TRICK - ec_word MOTHER - ec_word FOR - ec_word MY - ec_word ALLOWANCE -@ loss speech - ec_word I - ec_word DON_T - ec_word WANT - ec_word TO - ec_word STUDY - ec_word MORE + .2byte EC_WORD_I + .2byte EC_WORD_PRETEND + .2byte EC_WORD_TO + .2byte EC_WORD_STUDY + .2byte EC_WORD_A_LOT + .2byte -1 +@ win speech + .2byte EC_WORD_I + .2byte EC_MOVE2(TRICK) + .2byte EC_WORD_MOTHER + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_ALLOWANCE +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_STUDY + .2byte EC_WORD_MORE .4byte gBattleFrontierTrainerMons_Isiah @ 165 .4byte TRAINER_CLASS_SCHOOL_KID_1 .string "GARRETT$", 8 @ pre-battle speech - ec_word I - ec_word ENJOY - ec_word COMICS - ec_word AND - ec_word THIS - ec_word GAME -@ win speech - ec_word I - ec_word LIKE - ec_word THIS - ec_word MUSIC - ec_word IDOL - ec_word TOO -@ loss speech - ec_word BUT - ec_word I - ec_word HAVE - ec_word TO - ec_word STUDY - ec_word MORE + .2byte EC_WORD_I + .2byte EC_WORD_ENJOY + .2byte EC_WORD_COMICS + .2byte EC_WORD_AND + .2byte EC_WORD_THIS + .2byte EC_WORD_GAME +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_THIS + .2byte EC_WORD_MUSIC + .2byte EC_WORD_IDOL + .2byte EC_WORD_TOO +@ loss speech + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_STUDY + .2byte EC_WORD_MORE .4byte gBattleFrontierTrainerMons_Garrett @ 166 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "HAYLIE$", 8 @ pre-battle speech - ec_word I - ec_word WORRY - ec_word TOO - ec_word MUCH - ec_word TO - ec_word SLEEP -@ win speech - ec_word A - ec_word WIN - ec_word GIVES - ec_word ME - ec_word A - ec_move2 CALM_MIND -@ loss speech - ec_word MY - ec_word INSOMNIA - ec_word WILL - ec_word GET - ec_word BAD - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_WORRY + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_TO + .2byte EC_WORD_SLEEP +@ win speech + .2byte EC_WORD_A + .2byte EC_WORD_WIN + .2byte EC_WORD_GIVES + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_MOVE2(CALM_MIND) +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_INSOMNIA + .2byte EC_WORD_WILL + .2byte EC_WORD_GET + .2byte EC_WORD_BAD + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Haylie @ 167 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "MEGAN$", 8 @ pre-battle speech - ec_word I - ec_word BELIEVE - ec_word IN - ec_word AN - ec_move1 AROMATHERAPY - ec_word BATH -@ win speech - ec_word I - ec_word WANT - ec_word A - ec_word HEALTHY - ec_word CLEAR_BODY - .2byte -1 -@ loss speech - ec_word IF - ec_word ONLY - ec_move1 AROMATHERAPY - ec_word WERE - ec_word LESS - ec_word EXPENSIVE + .2byte EC_WORD_I + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_IN + .2byte EC_WORD_AN + .2byte EC_MOVE(AROMATHERAPY) + .2byte EC_WORD_BATH +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_A + .2byte EC_WORD_HEALTHY + .2byte EC_WORD_CLEAR_BODY + .2byte -1 +@ loss speech + .2byte EC_WORD_IF + .2byte EC_WORD_ONLY + .2byte EC_MOVE(AROMATHERAPY) + .2byte EC_WORD_WERE + .2byte EC_WORD_LESS + .2byte EC_WORD_EXPENSIVE .4byte gBattleFrontierTrainerMons_Megan @ 168 .4byte TRAINER_CLASS_RICH_BOY .string "ISSAC$", 8 @ pre-battle speech - ec_word MY - ec_word HOBBY - ec_word QUES + .2byte EC_WORD_MY + .2byte EC_WORD_HOBBY + .2byte EC_WORD_QUES .2byte -1 .2byte -1 .2byte -1 @ win speech - ec_word I - ec_word LIKE - ec_word ANY - ec_word KIND - ec_word OF - ec_move2 WATER_SPORT + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_ANY + .2byte EC_WORD_KIND + .2byte EC_WORD_OF + .2byte EC_MOVE2(WATER_SPORT) @ loss speech - ec_word I - ec_word DISLIKE - ec_word ANY - ec_word KIND - ec_word OF - ec_move2 MUD_SPORT + .2byte EC_WORD_I + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_ANY + .2byte EC_WORD_KIND + .2byte EC_WORD_OF + .2byte EC_MOVE2(MUD_SPORT) .4byte gBattleFrontierTrainerMons_Issac @ 169 .4byte TRAINER_CLASS_RICH_BOY .string "QUINTON$", 8 @ pre-battle speech - ec_word I_AM - ec_word SAD - ec_word CAUSE - ec_word I_AM - ec_word TOO_WEAK + .2byte EC_WORD_I_AM + .2byte EC_WORD_SAD + .2byte EC_WORD_CAUSE + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOO_WEAK .2byte -1 @ win speech - ec_word YOU - ec_word AREN_T - ec_word TOO_STRONG - ec_word FOR - ec_word ME + .2byte EC_WORD_YOU + .2byte EC_WORD_AREN_T + .2byte EC_WORD_TOO_STRONG + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .2byte -1 @ loss speech - ec_word HEY - ec_word WHAT - ec_word DID - ec_word I - ec_word DO - ec_word QUES + .2byte EC_WORD_HEY + .2byte EC_WORD_WHAT + .2byte EC_WORD_DID + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Quinton @ 170 .4byte TRAINER_CLASS_LADY .string "SALMA$", 8 @ pre-battle speech - ec_word YOU_VE - ec_word GOT - ec_word YOUR - ec_word HUSTLE - ec_word ON - ec_word EXCL -@ win speech - ec_word I - ec_word WIN - ec_word YOU - ec_word HUSTLE - ec_word ON - ec_word OUT -@ loss speech - ec_word I - ec_word DON_T - ec_word GET - ec_word HOW - ec_word I - ec_word LOST + .2byte EC_WORD_YOU_VE + .2byte EC_WORD_GOT + .2byte EC_WORD_YOUR + .2byte EC_WORD_HUSTLE + .2byte EC_WORD_ON + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WIN + .2byte EC_WORD_YOU + .2byte EC_WORD_HUSTLE + .2byte EC_WORD_ON + .2byte EC_WORD_OUT +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_GET + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_WORD_LOST .4byte gBattleFrontierTrainerMons_Salma @ 171 .4byte TRAINER_CLASS_LADY .string "ANSLEY$", 8 @ pre-battle speech - ec_word I_AM - ec_word BORED - ec_word ELLIPSIS - ec_word DANCE - ec_word FOR - ec_word ME -@ win speech - ec_word YOU_VE - ec_word BORED - ec_word ME - ec_word SOME - ec_word MORE - .2byte -1 -@ loss speech - ec_word TAKE - ec_word YOUR - ec_move2 FRUSTRATION - ec_word SOME - ec_word OTHER - ec_word PLACE + .2byte EC_WORD_I_AM + .2byte EC_WORD_BORED + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_DANCE + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ win speech + .2byte EC_WORD_YOU_VE + .2byte EC_WORD_BORED + .2byte EC_WORD_ME + .2byte EC_WORD_SOME + .2byte EC_WORD_MORE + .2byte -1 +@ loss speech + .2byte EC_WORD_TAKE + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(FRUSTRATION) + .2byte EC_WORD_SOME + .2byte EC_WORD_OTHER + .2byte EC_WORD_PLACE .4byte gBattleFrontierTrainerMons_Ansley @ 172 .4byte TRAINER_CLASS_BUG_CATCHER .string "HOLDEN$", 8 @ pre-battle speech - ec_word LET_S - ec_word COMMEMORATE - ec_word MY - ec_word COOLNESS - ec_word IN - ec_word BATTLE + .2byte EC_WORD_LET_S + .2byte EC_WORD_COMMEMORATE + .2byte EC_WORD_MY + .2byte EC_WORD_COOLNESS + .2byte EC_WORD_IN + .2byte EC_WORD_BATTLE @ win speech - ec_word YOU_RE - ec_word TOO_WEAK - ec_word FOR - ec_word ANY - ec_word PRAISE + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_FOR + .2byte EC_WORD_ANY + .2byte EC_WORD_PRAISE .2byte -1 @ loss speech - ec_word YOUR - ec_word BATTLE - ec_word SENSE - ec_word IS - ec_word AMUSING + .2byte EC_WORD_YOUR + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SENSE + .2byte EC_WORD_IS + .2byte EC_WORD_AMUSING .2byte -1 .4byte gBattleFrontierTrainerMons_Holden @@ -4502,103 +4502,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BUG_CATCHER .string "LUCA$", 8 @ pre-battle speech - ec_word WE - ec_word WILL - ec_word HAVE - ec_word A - ec_word COOL - ec_word BATTLE -@ win speech - ec_word I - ec_word WON - ec_word IN - ec_word A - ec_word COOL - ec_word WAY -@ loss speech - ec_word HELLO - ec_word QUES - ec_word I_AM - ec_word JUST - ec_word A - ec_word KID + .2byte EC_WORD_WE + .2byte EC_WORD_WILL + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_WORD_COOL + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_IN + .2byte EC_WORD_A + .2byte EC_WORD_COOL + .2byte EC_WORD_WAY +@ loss speech + .2byte EC_WORD_HELLO + .2byte EC_WORD_QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_JUST + .2byte EC_WORD_A + .2byte EC_WORD_KID .4byte gBattleFrontierTrainerMons_Luca @ 174 .4byte TRAINER_CLASS_NINJA_BOY .string "JAMISON$", 8 @ pre-battle speech - ec_word MY - ec_move2 SECRET_POWER - ec_word IS - ec_word OVERWHELMING - ec_word TO - ec_word POKEMON -@ win speech - ec_word DID - ec_word YOU - ec_word SEE - ec_word THAT - ec_word QUES - .2byte -1 -@ loss speech - ec_word I - ec_word WILL - ec_word USE - ec_move1 SMOKESCREEN - ec_word TO - ec_word ESCAPE + .2byte EC_WORD_MY + .2byte EC_MOVE2(SECRET_POWER) + .2byte EC_WORD_IS + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_TO + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_DID + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_THAT + .2byte EC_WORD_QUES + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_USE + .2byte EC_MOVE(SMOKESCREEN) + .2byte EC_WORD_TO + .2byte EC_WORD_ESCAPE .4byte gBattleFrontierTrainerMons_Jamison @ 175 .4byte TRAINER_CLASS_NINJA_BOY .string "GUNNAR$", 8 @ pre-battle speech - ec_word I - ec_move1 CUT - ec_word DOWN - ec_word EVERY - ec_word OPPONENT - .2byte -1 -@ win speech - ec_word DON_T - ec_move1 GRUDGE - ec_word ME - ec_word FOR - ec_word YOUR - ec_word LOSS -@ loss speech - ec_word PLEASE - ec_word LOSE - ec_word THAT - ec_move1 SCARY_FACE - ec_word OF - ec_word YOURS + .2byte EC_WORD_I + .2byte EC_MOVE(CUT) + .2byte EC_WORD_DOWN + .2byte EC_WORD_EVERY + .2byte EC_WORD_OPPONENT + .2byte -1 +@ win speech + .2byte EC_WORD_DON_T + .2byte EC_MOVE(GRUDGE) + .2byte EC_WORD_ME + .2byte EC_WORD_FOR + .2byte EC_WORD_YOUR + .2byte EC_WORD_LOSS +@ loss speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_LOSE + .2byte EC_WORD_THAT + .2byte EC_MOVE(SCARY_FACE) + .2byte EC_WORD_OF + .2byte EC_WORD_YOURS .4byte gBattleFrontierTrainerMons_Gunnar @ 176 .4byte TRAINER_CLASS_TUBER_2 .string "CRAIG$", 8 @ pre-battle speech - ec_word I - ec_word CAN_T - ec_word WAIT - ec_word FOR - ec_word MY - ec_word TRAIN -@ win speech - ec_word MY - ec_word TRAIN - ec_word ISN_T - ec_word HERE - ec_word YET - ec_word ELLIPSIS -@ loss speech - ec_word HERE_IT_IS - ec_word MY - ec_word TRAIN - ec_word SEE_YA - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_WAIT + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_TRAIN +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_TRAIN + .2byte EC_WORD_ISN_T + .2byte EC_WORD_HERE + .2byte EC_WORD_YET + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_MY + .2byte EC_WORD_TRAIN + .2byte EC_WORD_SEE_YA + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Craig @@ -4606,25 +4606,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TUBER_2 .string "PIERCE$", 8 @ pre-battle speech - ec_word THERE - ec_word WAS - ec_word A - ec_move2 HEAT_WAVE - ec_word LAST - ec_word WEEK + .2byte EC_WORD_THERE + .2byte EC_WORD_WAS + .2byte EC_WORD_A + .2byte EC_MOVE2(HEAT_WAVE) + .2byte EC_WORD_LAST + .2byte EC_WORD_WEEK @ win speech - ec_word I - ec_word CAN_T - ec_word TAKE - ec_word A - ec_move2 HEAT_WAVE + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_TAKE + .2byte EC_WORD_A + .2byte EC_MOVE2(HEAT_WAVE) .2byte -1 @ loss speech - ec_word DIDN_T - ec_word IT - ec_move1 HAIL - ec_word TOO - ec_word QUES + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_IT + .2byte EC_MOVE(HAIL) + .2byte EC_WORD_TOO + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Pierce @@ -4632,155 +4632,155 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TUBER_1 .string "REGINA$", 8 @ pre-battle speech - ec_word I - ec_word LIKE - ec_word TO - ec_word PLAY - ec_word IN - ec_word WATER -@ win speech - ec_word I - ec_word REFUSE - ec_word TO - ec_word COME - ec_word OUT - .2byte -1 -@ loss speech - ec_word YOU_RE - ec_word NOT - ec_word MUCH - ec_word GOOD - ec_word IN - ec_word WATER + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_TO + .2byte EC_WORD_PLAY + .2byte EC_WORD_IN + .2byte EC_WORD_WATER +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_REFUSE + .2byte EC_WORD_TO + .2byte EC_WORD_COME + .2byte EC_WORD_OUT + .2byte -1 +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_NOT + .2byte EC_WORD_MUCH + .2byte EC_WORD_GOOD + .2byte EC_WORD_IN + .2byte EC_WORD_WATER .4byte gBattleFrontierTrainerMons_Regina @ 179 .4byte TRAINER_CLASS_TUBER_1 .string "ALISON$", 8 @ pre-battle speech - ec_word THIS - ec_word KINDERGARTEN - ec_word MAGAZINE - ec_word IS - ec_word TOO - ec_word MUCH -@ win speech - ec_word HOW - ec_word TO - ec_word BUG - ec_word YOUR - ec_word TEACHER - ec_word QUES -@ loss speech - ec_word ENJOY - ec_word A - ec_word TASTY - ec_word SCHOOL - ec_word DIET - ec_word QUES + .2byte EC_WORD_THIS + .2byte EC_WORD_KINDERGARTEN + .2byte EC_WORD_MAGAZINE + .2byte EC_WORD_IS + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH +@ win speech + .2byte EC_WORD_HOW + .2byte EC_WORD_TO + .2byte EC_WORD_BUG + .2byte EC_WORD_YOUR + .2byte EC_WORD_TEACHER + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_ENJOY + .2byte EC_WORD_A + .2byte EC_WORD_TASTY + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_DIET + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Alison @ 180 .4byte TRAINER_CLASS_BUG_MANIAC .string "HANK$", 8 @ pre-battle speech - ec_word THERE - ec_word IS - ec_word A - ec_word BUG - ec_word EVENT - ec_word SOON -@ win speech - ec_word IT_S - ec_word A - ec_word BUG - ec_word FASHION - ec_word SHOW - ec_word EXCL -@ loss speech - ec_word DON_T - ec_word YOU - ec_word LIKE - ec_word BUG - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_BUG + .2byte EC_WORD_EVENT + .2byte EC_WORD_SOON +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_BUG + .2byte EC_WORD_FASHION + .2byte EC_WORD_SHOW + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_LIKE + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Hank @ 181 .4byte TRAINER_CLASS_BUG_MANIAC .string "EARL$", 8 @ pre-battle speech - ec_word THE - ec_word INVINCIBLE - ec_word BUG - ec_word TRAINER - ec_word IS - ec_word HERE -@ win speech - ec_word THE - ec_word INVINCIBLE - ec_word BUG - ec_word TRAINER - ec_word AM - ec_word I -@ loss speech - ec_word SEE - ec_word HOW - ec_word FAST - ec_word I - ec_word RUN_AWAY - ec_word EXCL + .2byte EC_WORD_THE + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_BUG + .2byte EC_WORD_TRAINER + .2byte EC_WORD_IS + .2byte EC_WORD_HERE +@ win speech + .2byte EC_WORD_THE + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_BUG + .2byte EC_WORD_TRAINER + .2byte EC_WORD_AM + .2byte EC_WORD_I +@ loss speech + .2byte EC_WORD_SEE + .2byte EC_WORD_HOW + .2byte EC_WORD_FAST + .2byte EC_WORD_I + .2byte EC_WORD_RUN_AWAY + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Earl @ 182 .4byte TRAINER_CLASS_FISHERMAN .string "RAMIRO$", 8 @ pre-battle speech - ec_word I - ec_word WENT - ec_word TO - ec_word A - ec_word FISHING - ec_word SCHOOL -@ win speech - ec_word SERIOUSLY - ec_word I_AM - ec_word IN - ec_word THE - ec_word FISHING - ec_word HALL_OF_FAME -@ loss speech - ec_word I - ec_word WANT - ec_word TO - ec_word GO - ec_word BACK - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_WENT + .2byte EC_WORD_TO + .2byte EC_WORD_A + .2byte EC_WORD_FISHING + .2byte EC_WORD_SCHOOL +@ win speech + .2byte EC_WORD_SERIOUSLY + .2byte EC_WORD_I_AM + .2byte EC_WORD_IN + .2byte EC_WORD_THE + .2byte EC_WORD_FISHING + .2byte EC_WORD_HALL_OF_FAME +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_BACK + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Ramiro @ 183 .4byte TRAINER_CLASS_FISHERMAN .string "HUNTER$", 8 @ pre-battle speech - ec_word SHOW - ec_word ME - ec_word A - ec_word TOTALLY - ec_word COOL - ec_move1 CROSS_CHOP -@ win speech - ec_word YOU_RE - ec_word TOO_WEAK - ec_word TO - ec_word DO - ec_word A - ec_move1 CROSS_CHOP -@ loss speech - ec_word WAS - ec_word IT - ec_word A - ec_word MISTAKE - ec_word QUES + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_COOL + .2byte EC_MOVE(CROSS_CHOP) +@ win speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_TO + .2byte EC_WORD_DO + .2byte EC_WORD_A + .2byte EC_MOVE(CROSS_CHOP) +@ loss speech + .2byte EC_WORD_WAS + .2byte EC_WORD_IT + .2byte EC_WORD_A + .2byte EC_WORD_MISTAKE + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Hunter @@ -4788,103 +4788,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_RUIN_MANIAC .string "AIDEN$", 8 @ pre-battle speech - ec_word MY - ec_word WORK - ec_word IS - ec_word MAKING - ec_word ME - ec_word HEALTHY -@ win speech - ec_word YOU - ec_word SEE - ec_word QUES - ec_word I_AM - ec_word HEALTHY - ec_word EXCL -@ loss speech - ec_word YOU_RE - ec_word MORE - ec_word HEALTHY - ec_word THAN - ec_word I_AM - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_WORK + .2byte EC_WORD_IS + .2byte EC_WORD_MAKING + .2byte EC_WORD_ME + .2byte EC_WORD_HEALTHY +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_HEALTHY + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MORE + .2byte EC_WORD_HEALTHY + .2byte EC_WORD_THAN + .2byte EC_WORD_I_AM + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Aiden @ 185 .4byte TRAINER_CLASS_RUIN_MANIAC .string "XAVIER$", 8 @ pre-battle speech - ec_word HEY_THERE - ec_word EXCL + .2byte EC_WORD_HEY_THERE + .2byte EC_WORD_EXCL .2byte -1 - ec_word LOOK - ec_word LOOK - ec_word EXCL_EXCL + .2byte EC_WORD_LOOK + .2byte EC_WORD_LOOK + .2byte EC_WORD_EXCL_EXCL @ win speech - ec_word GOOD_BYE - ec_word AND - ec_word THANK_YOU - ec_word THAT_WAS - ec_word FUNNY + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_AND + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_FUNNY .2byte -1 @ loss speech - ec_word WOWEE - ec_word EXCL + .2byte EC_WORD_WOWEE + .2byte EC_WORD_EXCL .2byte -1 - ec_word NO - ec_word NO - ec_word EXCL_EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL_EXCL .4byte gBattleFrontierTrainerMons_Xavier @ 186 .4byte TRAINER_CLASS_COLLECTOR .string "CLINTON$", 8 @ pre-battle speech - ec_word WANT - ec_word TO - ec_word SEE - ec_word MY - ec_move1 HYPNOSIS - ec_word QUES -@ win speech - ec_word YOUR - ec_move2 FURY_SWIPES - ec_word YOUR - ec_move1 STRENGTH - ec_word YOUNG - ec_word TRAINER -@ loss speech - ec_word TCH - ec_word ELLIPSIS - .2byte -1 - ec_word I_AM - ec_word TOO_WEAK - ec_word ELLIPSIS + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_MY + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(FURY_SWIPES) + .2byte EC_WORD_YOUR + .2byte EC_MOVE(STRENGTH) + .2byte EC_WORD_YOUNG + .2byte EC_WORD_TRAINER +@ loss speech + .2byte EC_WORD_TCH + .2byte EC_WORD_ELLIPSIS + .2byte -1 + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Clinton @ 187 .4byte TRAINER_CLASS_COLLECTOR .string "JESSE$", 8 @ pre-battle speech - ec_word THIS - ec_word BATTLE - ec_word IS - ec_word FOR - ec_word MY - ec_word MOTHER -@ win speech - ec_word MOTHER - ec_word WILL - ec_word BE - ec_word HAPPY - ec_word FOR - ec_word ME -@ loss speech - ec_word I - ec_word WANT - ec_word MY - ec_word MOTHER - ec_word EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_BATTLE + .2byte EC_WORD_IS + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_MOTHER +@ win speech + .2byte EC_WORD_MOTHER + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_HAPPY + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_MY + .2byte EC_WORD_MOTHER + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Jesse @@ -4892,77 +4892,77 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_GUITARIST .string "EDUARDO$", 8 @ pre-battle speech - ec_word OUR - ec_word MUSIC - ec_word WILL - ec_word PLAY - ec_word ALL - ec_word NIGHT -@ win speech - ec_word NIGHTTIME - ec_word IS - ec_word WHEN - ec_word I - ec_word PLAY - ec_word BEST -@ loss speech - ec_word LET_S - ec_word PARTY - ec_word UNTIL - ec_word THE - ec_move1 MORNING_SUN - ec_word EXCL + .2byte EC_WORD_OUR + .2byte EC_WORD_MUSIC + .2byte EC_WORD_WILL + .2byte EC_WORD_PLAY + .2byte EC_WORD_ALL + .2byte EC_WORD_NIGHT +@ win speech + .2byte EC_WORD_NIGHTTIME + .2byte EC_WORD_IS + .2byte EC_WORD_WHEN + .2byte EC_WORD_I + .2byte EC_WORD_PLAY + .2byte EC_WORD_BEST +@ loss speech + .2byte EC_WORD_LET_S + .2byte EC_WORD_PARTY + .2byte EC_WORD_UNTIL + .2byte EC_WORD_THE + .2byte EC_MOVE(MORNING_SUN) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Eduardo @ 189 .4byte TRAINER_CLASS_GUITARIST .string "HAL$", 8 @ pre-battle speech - ec_word I_AM - ec_word TRENDY - ec_word AREN_T - ec_word I - ec_word QUES - .2byte -1 -@ win speech - ec_word I_AM - ec_word FEELING - ec_word HIP_AND - ec_word HAPPENING - ec_word OH_YEAH - ec_word EXCL -@ loss speech - ec_word I_AM - ec_word ALWAYS - ec_word TRENDY - ec_word THANK_YOU - ec_word VERY - ec_word MUCH + .2byte EC_WORD_I_AM + .2byte EC_WORD_TRENDY + .2byte EC_WORD_AREN_T + .2byte EC_WORD_I + .2byte EC_WORD_QUES + .2byte -1 +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_HIP_AND + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_TRENDY + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_VERY + .2byte EC_WORD_MUCH .4byte gBattleFrontierTrainerMons_Hal @ 190 .4byte TRAINER_CLASS_BIRD_KEEPER .string "GAGE$", 8 @ pre-battle speech - ec_word HERE_IT_IS - ec_word A - ec_word FLYING - ec_word TYPE - ec_word HIDDEN - ec_word MOVE -@ win speech - ec_word IT_S - ec_word A - ec_word FLYING - ec_word TYPE - ec_word VICTORY - ec_word EXCL -@ loss speech - ec_word IF_I_LOSE - ec_word I - ec_word JUST - ec_move1 FLY - ec_word AWAY + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_A + .2byte EC_WORD_FLYING + .2byte EC_WORD_TYPE + .2byte EC_WORD_HIDDEN + .2byte EC_WORD_MOVE +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_FLYING + .2byte EC_WORD_TYPE + .2byte EC_WORD_VICTORY + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_I + .2byte EC_WORD_JUST + .2byte EC_MOVE(FLY) + .2byte EC_WORD_AWAY .2byte -1 .4byte gBattleFrontierTrainerMons_Gage @@ -4970,181 +4970,181 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BIRD_KEEPER .string "ARNOLD$", 8 @ pre-battle speech - ec_word I_AM - ec_word FEELING - ec_word WEIRD - ec_word FROM - ec_word A - ec_word DREAM -@ win speech - ec_word YOUR - ec_move1 SCARY_FACE - ec_word WAS - ec_word IN - ec_word MY - ec_word DREAM -@ loss speech - ec_word MY - ec_word INCREDIBLE - ec_word DREAM - ec_word WAS - ec_word SO - ec_word WEIRD + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_WEIRD + .2byte EC_WORD_FROM + .2byte EC_WORD_A + .2byte EC_WORD_DREAM +@ win speech + .2byte EC_WORD_YOUR + .2byte EC_MOVE(SCARY_FACE) + .2byte EC_WORD_WAS + .2byte EC_WORD_IN + .2byte EC_WORD_MY + .2byte EC_WORD_DREAM +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_DREAM + .2byte EC_WORD_WAS + .2byte EC_WORD_SO + .2byte EC_WORD_WEIRD .4byte gBattleFrontierTrainerMons_Arnold @ 192 .4byte TRAINER_CLASS_SAILOR .string "JARRETT$", 8 @ pre-battle speech - ec_word COME_ON - ec_word LET_S - ec_word DANCE - ec_word LIKE - ec_word IT_S - ec_word YESTERDAY -@ win speech - ec_word YOU - ec_word LIKE - ec_word HOW - ec_word I - ec_word DANCE - ec_word QUES -@ loss speech - ec_word YOU - ec_word DON_T - ec_word APPRECIATE - ec_word HOW - ec_word I - ec_word DANCE + .2byte EC_WORD_COME_ON + .2byte EC_WORD_LET_S + .2byte EC_WORD_DANCE + .2byte EC_WORD_LIKE + .2byte EC_WORD_IT_S + .2byte EC_WORD_YESTERDAY +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_LIKE + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_WORD_DANCE + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_APPRECIATE + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_WORD_DANCE .4byte gBattleFrontierTrainerMons_Jarrett @ 193 .4byte TRAINER_CLASS_SAILOR .string "GARETT$", 8 @ pre-battle speech - ec_word MY - ec_word GIRL - ec_word GIVES - ec_word ME - ec_word A_LITTLE - ec_move2 SWEET_KISS -@ win speech - ec_word MY - ec_word GIRL - ec_word FRIEND - ec_word IS - ec_word MY - ec_word TREASURE -@ loss speech - ec_word A - ec_word TREASURE - ec_word ISN_T - ec_word ALWAYS - ec_word ABOUT - ec_word MONEY + .2byte EC_WORD_MY + .2byte EC_WORD_GIRL + .2byte EC_WORD_GIVES + .2byte EC_WORD_ME + .2byte EC_WORD_A_LITTLE + .2byte EC_MOVE2(SWEET_KISS) +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_GIRL + .2byte EC_WORD_FRIEND + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_TREASURE +@ loss speech + .2byte EC_WORD_A + .2byte EC_WORD_TREASURE + .2byte EC_WORD_ISN_T + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_ABOUT + .2byte EC_WORD_MONEY .4byte gBattleFrontierTrainerMons_Garett @ 194 .4byte TRAINER_CLASS_HIKER .string "EMANUEL$", 8 @ pre-battle speech - ec_word SMARTNESS - ec_word ALONE - ec_word WON_T - ec_word MAKE - ec_word YOU - ec_word WIN -@ win speech - ec_word I_AM - ec_word NOT_VERY - ec_word SMART - ec_word BUT - ec_word I - ec_word WON -@ loss speech - ec_word HOW - ec_word DID - ec_word YOU - ec_move2 FAKE_OUT - ec_word ME - ec_word QUES + .2byte EC_WORD_SMARTNESS + .2byte EC_WORD_ALONE + .2byte EC_WORD_WON_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_YOU + .2byte EC_WORD_WIN +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_SMART + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_WON +@ loss speech + .2byte EC_WORD_HOW + .2byte EC_WORD_DID + .2byte EC_WORD_YOU + .2byte EC_MOVE2(FAKE_OUT) + .2byte EC_WORD_ME + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Emanuel @ 195 .4byte TRAINER_CLASS_HIKER .string "GUSTAVO$", 8 @ pre-battle speech - ec_move1 CHARGE - ec_word EXCL + .2byte EC_MOVE(CHARGE) + .2byte EC_WORD_EXCL .2byte -1 - ec_move1 CHARGE - ec_word EXCL_EXCL + .2byte EC_MOVE(CHARGE) + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ win speech - ec_word SURRENDER - ec_word QUES + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_QUES .2byte -1 - ec_word SO - ec_word SOON - ec_word QUES + .2byte EC_WORD_SO + .2byte EC_WORD_SOON + .2byte EC_WORD_QUES @ loss speech - ec_word YOU - ec_word CAN_T - ec_word MAKE - ec_word ME - ec_word SURRENDER - ec_word YET + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_YET .4byte gBattleFrontierTrainerMons_Gustavo @ 196 .4byte TRAINER_CLASS_KINDLER .string "KAMERON$", 8 @ pre-battle speech - ec_word TAKE_THAT - ec_word EXCL - ec_word IT_S - ec_word MY - ec_word FIERY - ec_move2 TRICK -@ win speech - ec_word DID - ec_word MY - ec_word FIERY - ec_move2 TRICK - ec_move1 ASTONISH - ec_word QUES -@ loss speech - ec_word YOU - ec_word DIDN_T - ec_word FALL - ec_word FOR - ec_word MY - ec_move2 TRICK + .2byte EC_WORD_TAKE_THAT + .2byte EC_WORD_EXCL + .2byte EC_WORD_IT_S + .2byte EC_WORD_MY + .2byte EC_WORD_FIERY + .2byte EC_MOVE2(TRICK) +@ win speech + .2byte EC_WORD_DID + .2byte EC_WORD_MY + .2byte EC_WORD_FIERY + .2byte EC_MOVE2(TRICK) + .2byte EC_MOVE(ASTONISH) + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_FALL + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_MOVE2(TRICK) .4byte gBattleFrontierTrainerMons_Kameron @ 197 .4byte TRAINER_CLASS_KINDLER .string "ALFREDO$", 8 @ pre-battle speech - ec_word A - ec_word FIERY - ec_word GOURMET - ec_word AM - ec_word I - ec_word EXCL -@ win speech - ec_word IT_S - ec_word A - ec_word TASTY - ec_word GOURMET - ec_word VICTORY - ec_word EXCL -@ loss speech - ec_word WHAT - ec_word A - ec_word DISASTER - ec_word THAT_WAS - ec_word EXCL + .2byte EC_WORD_A + .2byte EC_WORD_FIERY + .2byte EC_WORD_GOURMET + .2byte EC_WORD_AM + .2byte EC_WORD_I + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_TASTY + .2byte EC_WORD_GOURMET + .2byte EC_WORD_VICTORY + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_WHAT + .2byte EC_WORD_A + .2byte EC_WORD_DISASTER + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Alfredo @@ -5152,25 +5152,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_GENTLEMAN .string "RUBEN$", 8 @ pre-battle speech - ec_word I - ec_word CAN_T - ec_word WAIT - ec_word TO - ec_word GET - ec_word GOING -@ win speech - ec_word GET - ec_word GOING - ec_word EXCL - ec_word THIS - ec_word IS - ec_word GOOD_BYE -@ loss speech - ec_word I_VE - ec_word GOT - ec_word TO - ec_word GET - ec_word GOING + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_WAIT + .2byte EC_WORD_TO + .2byte EC_WORD_GET + .2byte EC_WORD_GOING +@ win speech + .2byte EC_WORD_GET + .2byte EC_WORD_GOING + .2byte EC_WORD_EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_GOOD_BYE +@ loss speech + .2byte EC_WORD_I_VE + .2byte EC_WORD_GOT + .2byte EC_WORD_TO + .2byte EC_WORD_GET + .2byte EC_WORD_GOING .2byte -1 .4byte gBattleFrontierTrainerMons_Ruben @@ -5178,25 +5178,25 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_GENTLEMAN .string "LAMAR$", 8 @ pre-battle speech - ec_word A - ec_move2 PRESENT - ec_word FOR - ec_word ME - ec_word QUES + .2byte EC_WORD_A + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_FOR + .2byte EC_WORD_ME + .2byte EC_WORD_QUES .2byte -1 @ win speech - ec_word MMM - ec_word THIS - ec_word IS - ec_word QUITE - ec_word TASTY - ec_word ELLIPSIS + .2byte EC_WORD_MMM + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_QUITE + .2byte EC_WORD_TASTY + .2byte EC_WORD_ELLIPSIS @ loss speech - ec_word OH - ec_word IT_S - ec_word A - ec_word GAME - ec_word IS_IT_QUES + .2byte EC_WORD_OH + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_GAME + .2byte EC_WORD_IS_IT_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Lamar @@ -5204,155 +5204,155 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_YOUNGSTER .string "JAXON$", 8 @ pre-battle speech - ec_word A - ec_word SHELL_ARMOR - ec_word IS - ec_word WHAT - ec_word I - ec_word WANT -@ win speech - ec_word MY - ec_word FATHER - ec_word AND - ec_word MOTHER - ec_word WON_T - ec_word ACCEPT -@ loss speech - ec_word PLEASE - ec_word I - ec_word NEED - ec_word A - ec_word SHELL_ARMOR - ec_word EXCL + .2byte EC_WORD_A + .2byte EC_WORD_SHELL_ARMOR + .2byte EC_WORD_IS + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_WANT +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_FATHER + .2byte EC_WORD_AND + .2byte EC_WORD_MOTHER + .2byte EC_WORD_WON_T + .2byte EC_WORD_ACCEPT +@ loss speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_A + .2byte EC_WORD_SHELL_ARMOR + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Jaxon @ 201 .4byte TRAINER_CLASS_YOUNGSTER .string "LOGAN$", 8 @ pre-battle speech - ec_word IF_I_LOSE - ec_word I - ec_word WILL - ec_word STUDY - ec_word FOR - ec_word SCHOOL -@ win speech - ec_word ME - ec_word STUDY - ec_word QUES - ec_word NOT_VERY - ec_word LIKELY_TO - ec_word SEE -@ loss speech - ec_word NO - ec_word THANKS - ec_word I_AM - ec_word GOING - ec_word TO - ec_word SLEEP + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_STUDY + .2byte EC_WORD_FOR + .2byte EC_WORD_SCHOOL +@ win speech + .2byte EC_WORD_ME + .2byte EC_WORD_STUDY + .2byte EC_WORD_QUES + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_LIKELY_TO + .2byte EC_WORD_SEE +@ loss speech + .2byte EC_WORD_NO + .2byte EC_WORD_THANKS + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_SLEEP .4byte gBattleFrontierTrainerMons_Logan @ 202 .4byte TRAINER_CLASS_LASS .string "EMILEE$", 8 @ pre-battle speech - ec_word IS - ec_word THIS - ec_word KIND - ec_word OF - ec_word BATTLE - ec_word OK_QUES -@ win speech - ec_word LET_S - ec_word GO - ec_word FOR - ec_word AN - ec_move1 ICY_WIND - ec_move2 SURF -@ loss speech - ec_word HOW - ec_word ABOUT - ec_word A - ec_move1 ROCK_SLIDE - ec_word SHOW - ec_word QUES + .2byte EC_WORD_IS + .2byte EC_WORD_THIS + .2byte EC_WORD_KIND + .2byte EC_WORD_OF + .2byte EC_WORD_BATTLE + .2byte EC_WORD_OK_QUES +@ win speech + .2byte EC_WORD_LET_S + .2byte EC_WORD_GO + .2byte EC_WORD_FOR + .2byte EC_WORD_AN + .2byte EC_MOVE(ICY_WIND) + .2byte EC_MOVE2(SURF) +@ loss speech + .2byte EC_WORD_HOW + .2byte EC_WORD_ABOUT + .2byte EC_WORD_A + .2byte EC_MOVE(ROCK_SLIDE) + .2byte EC_WORD_SHOW + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Emilee @ 203 .4byte TRAINER_CLASS_LASS .string "JOSIE$", 8 @ pre-battle speech - ec_word A - ec_word POKEMON - ec_word FASHION - ec_word CONTEST - ec_word IS - ec_word PRETTY -@ win speech - ec_word I - ec_word REALLY - ec_word LIKE - ec_word MODE - ec_word FASHION - ec_word THINGS -@ loss speech - ec_word YOU_RE - ec_word TOTALLY - ec_word LACKING - ec_word IN - ec_word FASHION - ec_word SENSE + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_FASHION + .2byte EC_WORD_CONTEST + .2byte EC_WORD_IS + .2byte EC_WORD_PRETTY +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_LIKE + .2byte EC_WORD_MODE + .2byte EC_WORD_FASHION + .2byte EC_WORD_THINGS +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_LACKING + .2byte EC_WORD_IN + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE .4byte gBattleFrontierTrainerMons_Josie @ 204 .4byte TRAINER_CLASS_CAMPER .string "ARMANDO$", 8 @ pre-battle speech - ec_word I - ec_word NEED - ec_word MORE - ec_word GRASS - ec_word TYPE - ec_word POKEMON -@ win speech - ec_word TRADE - ec_word ME - ec_word A - ec_word GRASS - ec_word POKEMON - ec_word PLEASE -@ loss speech - ec_word THERE - ec_word AREN_T - ec_word ENOUGH - ec_word GRASS - ec_word TYPE - ec_word POKEMON + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_MORE + .2byte EC_WORD_GRASS + .2byte EC_WORD_TYPE + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_TRADE + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_WORD_GRASS + .2byte EC_WORD_POKEMON + .2byte EC_WORD_PLEASE +@ loss speech + .2byte EC_WORD_THERE + .2byte EC_WORD_AREN_T + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_GRASS + .2byte EC_WORD_TYPE + .2byte EC_WORD_POKEMON .4byte gBattleFrontierTrainerMons_Armando @ 205 .4byte TRAINER_CLASS_CAMPER .string "SKYLER$", 8 @ pre-battle speech - ec_move2 INGRAIN - ec_word IS - ec_word MY - ec_word CHOICE - ec_word BATTLE - ec_word MOVE -@ win speech - ec_word YOU - ec_word CAN_T - ec_word MOVE - ec_word ME - ec_word NOW - ec_word EXCL -@ loss speech - ec_word YOU - ec_move1 CUT - ec_word ME - ec_word DOWN - ec_word ELLIPSIS + .2byte EC_MOVE2(INGRAIN) + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_CHOICE + .2byte EC_WORD_BATTLE + .2byte EC_WORD_MOVE +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_MOVE + .2byte EC_WORD_ME + .2byte EC_WORD_NOW + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_MOVE(CUT) + .2byte EC_WORD_ME + .2byte EC_WORD_DOWN + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Skyler @@ -5360,154 +5360,154 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PICNICKER .string "RUTH$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word TO - ec_word ENJOY - ec_word THIS - ec_word BATTLE -@ win speech - ec_word THAT_WAS - ec_word MUCH - ec_word TOO - ec_word EASY - ec_word EXCL - .2byte -1 -@ loss speech - ec_word PLEASE - ec_word STOP - ec_word I - ec_word DON_T - ec_word ENJOY - ec_word THIS + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_ENJOY + .2byte EC_WORD_THIS + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_MUCH + .2byte EC_WORD_TOO + .2byte EC_WORD_EASY + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_STOP + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_ENJOY + .2byte EC_WORD_THIS .4byte gBattleFrontierTrainerMons_Ruth @ 207 .4byte TRAINER_CLASS_PICNICKER .string "MELODY$", 8 @ pre-battle speech - ec_word I - ec_move2 WISH - ec_word SUNDAY - ec_word IS - ec_word A - ec_move2 SUNNY_DAY -@ win speech - ec_word SUNDAY - ec_word SEEMS - ec_word FOREVER - ec_word TO - ec_word COME - ec_word ELLIPSIS -@ loss speech - ec_word THE - ec_word FORECAST - ec_word SAYS - ec_word IT - ec_word WILL - ec_move1 HAIL + .2byte EC_WORD_I + .2byte EC_MOVE2(WISH) + .2byte EC_WORD_SUNDAY + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_MOVE2(SUNNY_DAY) +@ win speech + .2byte EC_WORD_SUNDAY + .2byte EC_WORD_SEEMS + .2byte EC_WORD_FOREVER + .2byte EC_WORD_TO + .2byte EC_WORD_COME + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_THE + .2byte EC_WORD_FORECAST + .2byte EC_WORD_SAYS + .2byte EC_WORD_IT + .2byte EC_WORD_WILL + .2byte EC_MOVE(HAIL) .4byte gBattleFrontierTrainerMons_Melody @ 208 .4byte TRAINER_CLASS_SWIMMER_M .string "PEDRO$", 8 @ pre-battle speech - ec_word A - ec_word SWIFT_SWIM - ec_word WILL - ec_word DO - ec_word YOU - ec_word GOOD -@ win speech - ec_word THAT_S - ec_word HOW - ec_word I - ec_word SINK - ec_word AN - ec_word OPPONENT -@ loss speech - ec_word UH_OH - ec_word EXCL - .2byte -1 - ec_word A - ec_move1 WHIRLPOOL - ec_word EXCL + .2byte EC_WORD_A + .2byte EC_WORD_SWIFT_SWIM + .2byte EC_WORD_WILL + .2byte EC_WORD_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_GOOD +@ win speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_HOW + .2byte EC_WORD_I + .2byte EC_WORD_SINK + .2byte EC_WORD_AN + .2byte EC_WORD_OPPONENT +@ loss speech + .2byte EC_WORD_UH_OH + .2byte EC_WORD_EXCL + .2byte -1 + .2byte EC_WORD_A + .2byte EC_MOVE(WHIRLPOOL) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Pedro @ 209 .4byte TRAINER_CLASS_SWIMMER_M .string "ERICK$", 8 @ pre-battle speech - ec_word I - ec_word WILL - ec_move2 TACKLE - ec_word YOU - ec_word DOWN - ec_word EXCL -@ win speech - ec_word DON_T - ec_word YOU - ec_word RUN_AWAY - ec_word YOU - ec_word LOSER - ec_word EXCL -@ loss speech - ec_word I - ec_word DIDN_T - ec_word THINK - ec_word YOU - ec_word WOULD - ec_move1 COUNTER + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE2(TACKLE) + .2byte EC_WORD_YOU + .2byte EC_WORD_DOWN + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_RUN_AWAY + .2byte EC_WORD_YOU + .2byte EC_WORD_LOSER + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_THINK + .2byte EC_WORD_YOU + .2byte EC_WORD_WOULD + .2byte EC_MOVE(COUNTER) .4byte gBattleFrontierTrainerMons_Erick @ 210 .4byte TRAINER_CLASS_SWIMMER_F .string "ELAINE$", 8 @ pre-battle speech - ec_word MY - ec_word HEROINE - ec_word ADVENTURE - ec_word ISN_T - ec_word GOING - ec_word WELL -@ win speech - ec_word THANK_YOU - ec_word EXCL - ec_word THAT_S - ec_word WHAT - ec_word I - ec_word NEED -@ loss speech - ec_word I - ec_word KNOW - ec_word I_AM - ec_word NOT - ec_word A - ec_word HEROINE + .2byte EC_WORD_MY + .2byte EC_WORD_HEROINE + .2byte EC_WORD_ADVENTURE + .2byte EC_WORD_ISN_T + .2byte EC_WORD_GOING + .2byte EC_WORD_WELL +@ win speech + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_NEED +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_A + .2byte EC_WORD_HEROINE .4byte gBattleFrontierTrainerMons_Elaine @ 211 .4byte TRAINER_CLASS_SWIMMER_F .string "JOYCE$", 8 @ pre-battle speech - ec_word YOU - ec_word MAKE - ec_word ME - ec_word GO - ec_word AHAHA - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_WORD_GO + .2byte EC_WORD_AHAHA + .2byte EC_WORD_EXCL @ win speech - ec_word LALALA - ec_word NO - ec_word LOSING - ec_word FOR - ec_word ME - ec_word EXCL + .2byte EC_WORD_LALALA + .2byte EC_WORD_NO + .2byte EC_WORD_LOSING + .2byte EC_WORD_FOR + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL @ loss speech - ec_word LALALA - ec_word ELLIPSIS + .2byte EC_WORD_LALALA + .2byte EC_WORD_ELLIPSIS .2byte -1 - ec_word HUH_QUES + .2byte EC_WORD_HUH_QUES .2byte -1 .2byte -1 .4byte gBattleFrontierTrainerMons_Joyce @@ -5516,129 +5516,129 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_POKEFAN_1 .string "TODD$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word A - ec_word LIGHTNINGROD - ec_word FOR - ec_word MY - ec_word POWER -@ win speech - ec_word THAT_S - ec_word ALL - ec_word YOU - ec_word COULD - ec_move1 ABSORB - ec_word QUES -@ loss speech - ec_word YOU - ec_move2 REFLECT - ec_word MY - ec_word POWER - ec_word BACK - ec_word QUES + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_LIGHTNINGROD + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_POWER +@ win speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_ALL + .2byte EC_WORD_YOU + .2byte EC_WORD_COULD + .2byte EC_MOVE(ABSORB) + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_MOVE2(REFLECT) + .2byte EC_WORD_MY + .2byte EC_WORD_POWER + .2byte EC_WORD_BACK + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Todd @ 213 .4byte TRAINER_CLASS_POKEFAN_1 .string "GAVIN$", 8 @ pre-battle speech - ec_word I - ec_word WILL - ec_move1 BIDE - ec_word MY - ec_word TIME + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE(BIDE) + .2byte EC_WORD_MY + .2byte EC_WORD_TIME .2byte -1 @ win speech - ec_word IT_S - ec_word OVER - ec_word SO - ec_word SOON - ec_word QUES + .2byte EC_WORD_IT_S + .2byte EC_WORD_OVER + .2byte EC_WORD_SO + .2byte EC_WORD_SOON + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word MY - ec_word MISTAKE - ec_word WAS - ec_word TOO - ec_word EXPENSIVE - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_MISTAKE + .2byte EC_WORD_WAS + .2byte EC_WORD_TOO + .2byte EC_WORD_EXPENSIVE + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Gavin @ 214 .4byte TRAINER_CLASS_POKEFAN_2 .string "MALORY$", 8 @ pre-battle speech - ec_word PROMISE - ec_word TO - ec_word SHOW - ec_word ME - ec_word CUTE - ec_word POKEMON -@ win speech - ec_word GIGGLE - ec_word ELLIPSIS - .2byte -1 - ec_word THANK_YOU - ec_word SO - ec_word MUCH -@ loss speech - ec_word TCH - ec_word YOUR - ec_word POKEMON - ec_word AREN_T - ec_word VERY - ec_word NICE + .2byte EC_WORD_PROMISE + .2byte EC_WORD_TO + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_CUTE + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_GIGGLE + .2byte EC_WORD_ELLIPSIS + .2byte -1 + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_SO + .2byte EC_WORD_MUCH +@ loss speech + .2byte EC_WORD_TCH + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_AREN_T + .2byte EC_WORD_VERY + .2byte EC_WORD_NICE .4byte gBattleFrontierTrainerMons_Malory @ 215 .4byte TRAINER_CLASS_POKEFAN_2 .string "ESTHER$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word A - ec_word NICE - ec_move2 PRESENT - ec_word ELLIPSIS -@ win speech - ec_word PLEASE - ec_word GET - ec_word ME - ec_word A - ec_word POKEMON - ec_word GAME -@ loss speech - ec_word MESSAGE - ec_word CARDS - ec_word MAKE - ec_word A - ec_word WEAK - ec_move2 PRESENT + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_A + .2byte EC_WORD_NICE + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_GET + .2byte EC_WORD_ME + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_GAME +@ loss speech + .2byte EC_WORD_MESSAGE + .2byte EC_WORD_CARDS + .2byte EC_WORD_MAKE + .2byte EC_WORD_A + .2byte EC_WORD_WEAK + .2byte EC_MOVE2(PRESENT) .4byte gBattleFrontierTrainerMons_Esther @ 216 .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "OSCAR$", 8 @ pre-battle speech - ec_word LET_S - ec_word SEE - ec_word YOUR - ec_word POWER - ec_word IN - ec_word FULL -@ win speech - ec_word THAT_WAS - ec_word NOT - ec_word YOUR - ec_word FULL - ec_word POWER - ec_word EXCL -@ loss speech - ec_word NOT - ec_word FUNNY - ec_word ELLIPSIS - ec_word YOU_RE - ec_word TOO_STRONG + .2byte EC_WORD_LET_S + .2byte EC_WORD_SEE + .2byte EC_WORD_YOUR + .2byte EC_WORD_POWER + .2byte EC_WORD_IN + .2byte EC_WORD_FULL +@ win speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_NOT + .2byte EC_WORD_YOUR + .2byte EC_WORD_FULL + .2byte EC_WORD_POWER + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_NOT + .2byte EC_WORD_FUNNY + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOO_STRONG .2byte -1 .4byte gBattleFrontierTrainerMons_Oscar @@ -5646,129 +5646,129 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PKMN_BREEDER_2 .string "WILSON$", 8 @ pre-battle speech - ec_word WORK - ec_word IS - ec_word MAKING - ec_word ME - ec_word AN - ec_word EARLY_BIRD -@ win speech - ec_word ALL - ec_word WORK - ec_word AND - ec_word NO - ec_word PLAY - ec_word ELLIPSIS -@ loss speech - ec_move1 ENDURE - ec_word IS - ec_word ALL - ec_word I - ec_word CAN - ec_word DO + .2byte EC_WORD_WORK + .2byte EC_WORD_IS + .2byte EC_WORD_MAKING + .2byte EC_WORD_ME + .2byte EC_WORD_AN + .2byte EC_WORD_EARLY_BIRD +@ win speech + .2byte EC_WORD_ALL + .2byte EC_WORD_WORK + .2byte EC_WORD_AND + .2byte EC_WORD_NO + .2byte EC_WORD_PLAY + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_MOVE(ENDURE) + .2byte EC_WORD_IS + .2byte EC_WORD_ALL + .2byte EC_WORD_I + .2byte EC_WORD_CAN + .2byte EC_WORD_DO .4byte gBattleFrontierTrainerMons_Wilson @ 218 .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "CLARE$", 8 @ pre-battle speech - ec_word YAY - ec_word EXCL - ec_word A - ec_word TOUGH - ec_word TRAINER - ec_word EXCL -@ win speech - ec_word AWW - ec_word EXCL - ec_word A - ec_word WIMPY - ec_word TRAINER - ec_word EXCL -@ loss speech - ec_word COOL - ec_word EXCL - ec_word A - ec_word GENIUS - ec_word TRAINER - ec_word EXCL + .2byte EC_WORD_YAY + .2byte EC_WORD_EXCL + .2byte EC_WORD_A + .2byte EC_WORD_TOUGH + .2byte EC_WORD_TRAINER + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_AWW + .2byte EC_WORD_EXCL + .2byte EC_WORD_A + .2byte EC_WORD_WIMPY + .2byte EC_WORD_TRAINER + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_COOL + .2byte EC_WORD_EXCL + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_TRAINER + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Clare @ 219 .4byte TRAINER_CLASS_PKMN_BREEDER_1 .string "TESS$", 8 @ pre-battle speech - ec_word WANT - ec_word SOME - ec_pokemon1 GULPIN - ec_word DESIGN - ec_word SWEETS - ec_word QUES -@ win speech - ec_word THEY_RE - ec_word A - ec_word SECRET - ec_word POKEMON - ec_word GOURMET - ec_word ITEM -@ loss speech - ec_word THEY_RE - ec_word TASTY - ec_word EXCL - ec_word REFRESHING - ec_word TOO - ec_word EXCL + .2byte EC_WORD_WANT + .2byte EC_WORD_SOME + .2byte EC_POKEMON(GULPIN) + .2byte EC_WORD_DESIGN + .2byte EC_WORD_SWEETS + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_THEY_RE + .2byte EC_WORD_A + .2byte EC_WORD_SECRET + .2byte EC_WORD_POKEMON + .2byte EC_WORD_GOURMET + .2byte EC_WORD_ITEM +@ loss speech + .2byte EC_WORD_THEY_RE + .2byte EC_WORD_TASTY + .2byte EC_WORD_EXCL + .2byte EC_WORD_REFRESHING + .2byte EC_WORD_TOO + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Tess @ 220 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "LEON$", 8 @ pre-battle speech - ec_word I_AM - ec_word BETTER - ec_word THAN - ec_word ANY - ec_word OTHER - ec_word TRAINER -@ win speech - ec_word I - ec_word DID - ec_word IT - ec_move2 JUMP_KICK - ec_word FOR - ec_word JOY -@ loss speech - ec_word BACK - ec_word HOME - ec_word I - ec_word WILL - ec_word GO - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_BETTER + .2byte EC_WORD_THAN + .2byte EC_WORD_ANY + .2byte EC_WORD_OTHER + .2byte EC_WORD_TRAINER +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_DID + .2byte EC_WORD_IT + .2byte EC_MOVE2(JUMP_KICK) + .2byte EC_WORD_FOR + .2byte EC_WORD_JOY +@ loss speech + .2byte EC_WORD_BACK + .2byte EC_WORD_HOME + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_GO + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Leon @ 221 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "ALONZO$", 8 @ pre-battle speech - ec_word I_VE - ec_word NOT - ec_word LOST - ec_word ONCE - ec_word YET - ec_word EXCL + .2byte EC_WORD_I_VE + .2byte EC_WORD_NOT + .2byte EC_WORD_LOST + .2byte EC_WORD_ONCE + .2byte EC_WORD_YET + .2byte EC_WORD_EXCL @ win speech - ec_word YOUR - ec_word SAD - ec_word LOOK - ec_word BECOMES - ec_word YOU + .2byte EC_WORD_YOUR + .2byte EC_WORD_SAD + .2byte EC_WORD_LOOK + .2byte EC_WORD_BECOMES + .2byte EC_WORD_YOU .2byte -1 @ loss speech - ec_word I - ec_word DON_T - ec_word BELIEVE - ec_word THIS - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_THIS + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Alonzo @@ -5776,363 +5776,363 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_COOLTRAINER_1 .string "VINCE$", 8 @ pre-battle speech - ec_word THE - ec_word TOP - ec_word TRAINER - ec_word THAT_S - ec_word ME - ec_word EXCL -@ win speech - ec_word THE - ec_word TOP - ec_word RANK - ec_word BELONGS_TO - ec_word ME - ec_word EXCL -@ loss speech - ec_word I - ec_word WILL - ec_word APPEAL - ec_word THIS - ec_move1 OUTRAGE - ec_word EXCL + .2byte EC_WORD_THE + .2byte EC_WORD_TOP + .2byte EC_WORD_TRAINER + .2byte EC_WORD_THAT_S + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_THE + .2byte EC_WORD_TOP + .2byte EC_WORD_RANK + .2byte EC_WORD_BELONGS_TO + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_APPEAL + .2byte EC_WORD_THIS + .2byte EC_MOVE(OUTRAGE) + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Vince @ 223 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "BRYON$", 8 @ pre-battle speech - ec_word MY - ec_move2 BARRAGE - ec_word WILL - ec_move2 SLAM - ec_word YOU - ec_word EXCL -@ win speech - ec_word YOU - ec_word DIDN_T - ec_word COUNT_ON - ec_word ANY - ec_word LESS - ec_word QUES -@ loss speech - ec_word I - ec_word JUST - ec_word DON_T - ec_word GET - ec_word IT - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_MOVE2(BARRAGE) + .2byte EC_WORD_WILL + .2byte EC_MOVE2(SLAM) + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_COUNT_ON + .2byte EC_WORD_ANY + .2byte EC_WORD_LESS + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_JUST + .2byte EC_WORD_DON_T + .2byte EC_WORD_GET + .2byte EC_WORD_IT + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Bryon @ 224 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "AVA$", 8 @ pre-battle speech - ec_word I_AM - ec_word A - ec_word TREASURE - ec_word OF - ec_word THIS - ec_word WORLD -@ win speech - ec_word MY - ec_word WORLD - ec_word IS - ec_word FULL - ec_word OF - ec_word WONDER -@ loss speech - ec_word WHY - ec_word ARE - ec_word YOU - ec_word SO - ec_word TERRIBLE - ec_word QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_TREASURE + .2byte EC_WORD_OF + .2byte EC_WORD_THIS + .2byte EC_WORD_WORLD +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_WORLD + .2byte EC_WORD_IS + .2byte EC_WORD_FULL + .2byte EC_WORD_OF + .2byte EC_WORD_WONDER +@ loss speech + .2byte EC_WORD_WHY + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_SO + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Ava @ 225 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "MIRIAM$", 8 @ pre-battle speech - ec_word OH - ec_word A - ec_word TRAINER - ec_word WITH - ec_word A - ec_move1 SCARY_FACE -@ win speech - ec_word AHAHA - ec_word YOU - ec_word ONLY - ec_word LOOK - ec_word SCARY - ec_word EXCL -@ loss speech - ec_word AIYEEH - ec_word EXCL - ec_word YOU - ec_word REALLY - ec_word ARE - ec_word SCARY + .2byte EC_WORD_OH + .2byte EC_WORD_A + .2byte EC_WORD_TRAINER + .2byte EC_WORD_WITH + .2byte EC_WORD_A + .2byte EC_MOVE(SCARY_FACE) +@ win speech + .2byte EC_WORD_AHAHA + .2byte EC_WORD_YOU + .2byte EC_WORD_ONLY + .2byte EC_WORD_LOOK + .2byte EC_WORD_SCARY + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_AIYEEH + .2byte EC_WORD_EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_REALLY + .2byte EC_WORD_ARE + .2byte EC_WORD_SCARY .4byte gBattleFrontierTrainerMons_Miriam @ 226 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "CARRIE$", 8 @ pre-battle speech - ec_word I - ec_word WILL - ec_word SHOW - ec_word YOU - ec_word GUTSY - ec_word EXCL -@ win speech - ec_word IT_S - ec_word ALL - ec_word ABOUT - ec_word GUTS - ec_word EXCL - .2byte -1 -@ loss speech - ec_word OH - ec_word NO - ec_word ELLIPSIS - ec_move1 SELF_DESTRUCT - ec_word MODE - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_SHOW + .2byte EC_WORD_YOU + .2byte EC_WORD_GUTSY + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_ALL + .2byte EC_WORD_ABOUT + .2byte EC_WORD_GUTS + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_OH + .2byte EC_WORD_NO + .2byte EC_WORD_ELLIPSIS + .2byte EC_MOVE(SELF_DESTRUCT) + .2byte EC_WORD_MODE + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Carrie @ 227 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "GILLIAN$", 8 @ pre-battle speech - ec_word I - ec_word SEEK - ec_word A - ec_word TRULY - ec_word GREAT - ec_word BATTLE -@ win speech - ec_word I - ec_word NEED - ec_word A_LOT - ec_word BETTER - ec_word BATTLE - ec_word ELLIPSIS -@ loss speech - ec_word THAT_WAS - ec_word A_LITTLE - ec_word TOO - ec_word MUCH - ec_word TO - ec_word TAKE + .2byte EC_WORD_I + .2byte EC_WORD_SEEK + .2byte EC_WORD_A + .2byte EC_WORD_TRULY + .2byte EC_WORD_GREAT + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_A_LOT + .2byte EC_WORD_BETTER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_TO + .2byte EC_WORD_TAKE .4byte gBattleFrontierTrainerMons_Gillian2 @ 228 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "TYLER$", 8 @ pre-battle speech - ec_word YO - ec_word EXCL + .2byte EC_WORD_YO + .2byte EC_WORD_EXCL .2byte -1 - ec_word LET_S - ec_word GO - ec_word EXCL_EXCL + .2byte EC_WORD_LET_S + .2byte EC_WORD_GO + .2byte EC_WORD_EXCL_EXCL @ win speech - ec_word YO - ec_word EXCL + .2byte EC_WORD_YO + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word WON - ec_word YO + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_YO @ loss speech - ec_word YO - ec_word EXCL + .2byte EC_WORD_YO + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word LOST - ec_word YO + .2byte EC_WORD_I + .2byte EC_WORD_LOST + .2byte EC_WORD_YO .4byte gBattleFrontierTrainerMons_Tyler @ 229 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "CHAZ$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word HAVE - ec_word TOO - ec_word MUCH - ec_word POWER -@ win speech - ec_word THEY - ec_word HAVE - ec_word MORE - ec_word POWER - ec_word NOW - ec_word EXCL -@ loss speech - ec_word YEAH - ec_move2 TAKE_DOWN - ec_word THEIR - ec_word POWER - ec_word A_TINY_BIT - ec_word PLEASE + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_HAVE + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_POWER +@ win speech + .2byte EC_WORD_THEY + .2byte EC_WORD_HAVE + .2byte EC_WORD_MORE + .2byte EC_WORD_POWER + .2byte EC_WORD_NOW + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YEAH + .2byte EC_MOVE2(TAKE_DOWN) + .2byte EC_WORD_THEIR + .2byte EC_WORD_POWER + .2byte EC_WORD_A_TINY_BIT + .2byte EC_WORD_PLEASE .4byte gBattleFrontierTrainerMons_Chaz @ 230 .4byte TRAINER_CLASS_PKMN_RANGER_1 .string "NELSON$", 8 @ pre-battle speech - ec_word WELL_THEN - ec_word WILL - ec_word THIS - ec_word POKEMON - ec_word WORK - ec_word QUES -@ win speech - ec_word I - ec_word SEE - ec_word THAT - ec_word IT - ec_word WAS - ec_word TOO_STRONG -@ loss speech - ec_word IT - ec_word DIDN_T - ec_word MATCH_UP - ec_word WELL - ec_word I - ec_word THINK + .2byte EC_WORD_WELL_THEN + .2byte EC_WORD_WILL + .2byte EC_WORD_THIS + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WORK + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_SEE + .2byte EC_WORD_THAT + .2byte EC_WORD_IT + .2byte EC_WORD_WAS + .2byte EC_WORD_TOO_STRONG +@ loss speech + .2byte EC_WORD_IT + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_MATCH_UP + .2byte EC_WORD_WELL + .2byte EC_WORD_I + .2byte EC_WORD_THINK .4byte gBattleFrontierTrainerMons_Nelson @ 231 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "SHANIA$", 8 @ pre-battle speech - ec_word ALL - ec_word MY - ec_word POKEMON - ec_word ABSOLUTELY - ec_word ADORE - ec_word ME -@ win speech - ec_word HAPPINESS - ec_word IS - ec_word A - ec_word POKEMON - ec_word WITH - ec_word CUTE_CHARM -@ loss speech - ec_word YOU_RE - ec_word SO - ec_word MEAN - ec_word TO - ec_word CUTE - ec_word POKEMON + .2byte EC_WORD_ALL + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ABSOLUTELY + .2byte EC_WORD_ADORE + .2byte EC_WORD_ME +@ win speech + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WITH + .2byte EC_WORD_CUTE_CHARM +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SO + .2byte EC_WORD_MEAN + .2byte EC_WORD_TO + .2byte EC_WORD_CUTE + .2byte EC_WORD_POKEMON .4byte gBattleFrontierTrainerMons_Shania @ 232 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "STELLA$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word TO - ec_word SEE - ec_word YOUR - ec_word POKEMON -@ win speech - ec_word WELL - ec_word AREN_T - ec_word THEY - ec_word BORING - ec_word QUES - ec_word AHAHA -@ loss speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word SOMETHING - ec_word ELSE - ec_word ALL_RIGHT + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_WELL + .2byte EC_WORD_AREN_T + .2byte EC_WORD_THEY + .2byte EC_WORD_BORING + .2byte EC_WORD_QUES + .2byte EC_WORD_AHAHA +@ loss speech + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_SOMETHING + .2byte EC_WORD_ELSE + .2byte EC_WORD_ALL_RIGHT .4byte gBattleFrontierTrainerMons_Stella @ 233 .4byte TRAINER_CLASS_PKMN_RANGER_2 .string "DORINE$", 8 @ pre-battle speech - ec_word I_AM - ec_word YOUNG - ec_word AND - ec_word STRONG - ec_word EXCL - .2byte -1 -@ win speech - ec_word SEE - ec_word QUES - ec_word AREN_T - ec_word I - ec_word GOOD - ec_word QUES -@ loss speech - ec_word THIS - ec_word ISN_T - ec_word WORKING - ec_word OUT - ec_word AT - ec_word ALL + .2byte EC_WORD_I_AM + .2byte EC_WORD_YOUNG + .2byte EC_WORD_AND + .2byte EC_WORD_STRONG + .2byte EC_WORD_EXCL + .2byte -1 +@ win speech + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_AREN_T + .2byte EC_WORD_I + .2byte EC_WORD_GOOD + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_THIS + .2byte EC_WORD_ISN_T + .2byte EC_WORD_WORKING + .2byte EC_WORD_OUT + .2byte EC_WORD_AT + .2byte EC_WORD_ALL .4byte gBattleFrontierTrainerMons_Dorine @ 234 .4byte TRAINER_CLASS_DRAGON_TAMER .string "MADDOX$", 8 @ pre-battle speech - ec_word DRAGON - ec_word POKEMON - ec_word ARE - ec_word MY - ec_word NO_1 - ec_word CHOICE -@ win speech - ec_word IT_S - ec_word NO - ec_word SECRET - ec_word DRAGON - ec_word POKEMON - ec_word WIN -@ loss speech - ec_word DRAGON - ec_word POKEMON - ec_word SHOULD - ec_word NOT - ec_word LOSE - ec_word EXCL + .2byte EC_WORD_DRAGON + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_MY + .2byte EC_WORD_NO_1 + .2byte EC_WORD_CHOICE +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_NO + .2byte EC_WORD_SECRET + .2byte EC_WORD_DRAGON + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WIN +@ loss speech + .2byte EC_WORD_DRAGON + .2byte EC_WORD_POKEMON + .2byte EC_WORD_SHOULD + .2byte EC_WORD_NOT + .2byte EC_WORD_LOSE + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Maddox @ 235 .4byte TRAINER_CLASS_DRAGON_TAMER .string "DAVIN$", 8 @ pre-battle speech - ec_word LET_S - ec_word HEAR - ec_word YOU - ec_move2 ROAR - ec_word EXCL + .2byte EC_WORD_LET_S + .2byte EC_WORD_HEAR + .2byte EC_WORD_YOU + .2byte EC_MOVE2(ROAR) + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word WROOOAAR_EXCL + .2byte EC_WORD_WROOOAAR_EXCL .2byte -1 .2byte -1 - ec_word VICTORY - ec_word EXCL_EXCL + .2byte EC_WORD_VICTORY + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ loss speech - ec_word WROOOAAR_EXCL + .2byte EC_WORD_WROOOAAR_EXCL .2byte -1 .2byte -1 - ec_word WHY - ec_word QUES_EXCL + .2byte EC_WORD_WHY + .2byte EC_WORD_QUES_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Davin @@ -6140,285 +6140,285 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_DRAGON_TAMER .string "TREVON$", 8 @ pre-battle speech - ec_word I_AM - ec_word LIVING - ec_word ONLY - ec_word WITH - ec_word DRAGON - ec_word POKEMON -@ win speech - ec_word THE - ec_word WAY - ec_word I_AM - ec_word LIVING - ec_word IS - ec_word PERFECT -@ loss speech - ec_word YOU_VE - ec_word DESTROYED - ec_word THE - ec_word WAY - ec_word I_AM - ec_word LIVING + .2byte EC_WORD_I_AM + .2byte EC_WORD_LIVING + .2byte EC_WORD_ONLY + .2byte EC_WORD_WITH + .2byte EC_WORD_DRAGON + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_THE + .2byte EC_WORD_WAY + .2byte EC_WORD_I_AM + .2byte EC_WORD_LIVING + .2byte EC_WORD_IS + .2byte EC_WORD_PERFECT +@ loss speech + .2byte EC_WORD_YOU_VE + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_THE + .2byte EC_WORD_WAY + .2byte EC_WORD_I_AM + .2byte EC_WORD_LIVING .4byte gBattleFrontierTrainerMons_Trevon @ 237 .4byte TRAINER_CLASS_BLACK_BELT .string "MATEO$", 8 @ pre-battle speech - ec_word THIS - ec_word SHOULD - ec_word BE - ec_word OVER - ec_word SOON - ec_word ENOUGH -@ win speech - ec_word WELL - ec_word THAT - ec_word DIDN_T - ec_word TAKE - ec_word VERY - ec_word MUCH -@ loss speech - ec_word I - ec_word CAN_T - ec_word LOSE - ec_word SO - ec_word SOON - ec_word EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_SHOULD + .2byte EC_WORD_BE + .2byte EC_WORD_OVER + .2byte EC_WORD_SOON + .2byte EC_WORD_ENOUGH +@ win speech + .2byte EC_WORD_WELL + .2byte EC_WORD_THAT + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_TAKE + .2byte EC_WORD_VERY + .2byte EC_WORD_MUCH +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_LOSE + .2byte EC_WORD_SO + .2byte EC_WORD_SOON + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Mateo @ 238 .4byte TRAINER_CLASS_BLACK_BELT .string "BRET$", 8 @ pre-battle speech - ec_word I - ec_word LIKE - ec_word ROCK_SOLID - ec_word POKEMON - ec_word THE - ec_word BEST -@ win speech - ec_word TOUGHNESS - ec_word IS - ec_word THE - ec_word WAY - ec_word TO - ec_word GO -@ loss speech - ec_word I - ec_word ALSO - ec_word HAVE - ec_word A - ec_word PLUSH_DOLL - ec_word COLLECTION + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_ROCK_SOLID + .2byte EC_WORD_POKEMON + .2byte EC_WORD_THE + .2byte EC_WORD_BEST +@ win speech + .2byte EC_WORD_TOUGHNESS + .2byte EC_WORD_IS + .2byte EC_WORD_THE + .2byte EC_WORD_WAY + .2byte EC_WORD_TO + .2byte EC_WORD_GO +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_ALSO + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_WORD_PLUSH_DOLL + .2byte EC_WORD_COLLECTION .4byte gBattleFrontierTrainerMons_Bret @ 239 .4byte TRAINER_CLASS_BLACK_BELT .string "RAUL$", 8 @ pre-battle speech - ec_word I - ec_word REJECT - ec_word EVERY - ec_word WEAK - ec_word TRAINER - .2byte -1 -@ win speech - ec_word HUMPH - ec_word EXCL - ec_word ANOTHER - ec_word WEAK - ec_word TRAINER - ec_word ELLIPSIS -@ loss speech - ec_word THERE - ec_word IS - ec_word NOTHING - ec_word WEAK - ec_word ABOUT - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_REJECT + .2byte EC_WORD_EVERY + .2byte EC_WORD_WEAK + .2byte EC_WORD_TRAINER + .2byte -1 +@ win speech + .2byte EC_WORD_HUMPH + .2byte EC_WORD_EXCL + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_WEAK + .2byte EC_WORD_TRAINER + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_NOTHING + .2byte EC_WORD_WEAK + .2byte EC_WORD_ABOUT + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Raul @ 240 .4byte TRAINER_CLASS_BATTLE_GIRL .string "KAY$", 8 @ pre-battle speech - ec_word AND - ec_word YET - ec_word ANOTHER - ec_word BATTLE - ec_word QUES - .2byte -1 -@ win speech - ec_word I - ec_word WON - ec_word BUT - ec_word I_AM - ec_word TIRED - ec_word ELLIPSIS -@ loss speech - ec_word GOOD - ec_word IT_S - ec_word OVER - ec_word AT - ec_word LAST - ec_word ELLIPSIS + .2byte EC_WORD_AND + .2byte EC_WORD_YET + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_QUES + .2byte -1 +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_BUT + .2byte EC_WORD_I_AM + .2byte EC_WORD_TIRED + .2byte EC_WORD_ELLIPSIS +@ loss speech + .2byte EC_WORD_GOOD + .2byte EC_WORD_IT_S + .2byte EC_WORD_OVER + .2byte EC_WORD_AT + .2byte EC_WORD_LAST + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Kay @ 241 .4byte TRAINER_CLASS_BATTLE_GIRL .string "ELENA$", 8 @ pre-battle speech - ec_word A - ec_word BATTLE - ec_word GIRL - ec_word THAT_S - ec_word ME - ec_word EXCL -@ win speech - ec_word ISN_T - ec_word A - ec_word BATTLE - ec_word GIRL - ec_word AWESOME - ec_word QUES -@ loss speech - ec_word YOU - ec_word DISLIKE - ec_word A - ec_word BATTLE - ec_word GIRL - ec_word QUES + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_GIRL + .2byte EC_WORD_THAT_S + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_ISN_T + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_GIRL + .2byte EC_WORD_AWESOME + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_GIRL + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Elena @ 242 .4byte TRAINER_CLASS_BATTLE_GIRL .string "ALANA$", 8 @ pre-battle speech - ec_word EAT - ec_word MY - ec_word INVINCIBLE - ec_word ATTACK - ec_word YOU - ec_word EXCL -@ win speech - ec_word YOU - ec_word HAVE - ec_word MUCH - ec_word TO - ec_word LEARN - .2byte -1 -@ loss speech - ec_word SO - ec_word MUCH - ec_word FOR - ec_word MY - ec_word INVINCIBLE - ec_word ATTACK + .2byte EC_WORD_EAT + .2byte EC_WORD_MY + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_ATTACK + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_MUCH + .2byte EC_WORD_TO + .2byte EC_WORD_LEARN + .2byte -1 +@ loss speech + .2byte EC_WORD_SO + .2byte EC_WORD_MUCH + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_ATTACK .4byte gBattleFrontierTrainerMons_Alana @ 243 .4byte TRAINER_CLASS_EXPERT_1 .string "ALEXAS$", 8 @ pre-battle speech - ec_word GOOD - ec_word TO - ec_word MEET_YOU - ec_word YOUNG - ec_word TRAINER - ec_word EXCL -@ win speech - ec_word WAHAHAHA - ec_word EXCL - .2byte -1 - ec_word GIVE - ec_word IT - ec_word UP -@ loss speech - ec_word YOU - ec_word ARE - ec_word A - ec_word STRONG - ec_word TRAINER - ec_word KID + .2byte EC_WORD_GOOD + .2byte EC_WORD_TO + .2byte EC_WORD_MEET_YOU + .2byte EC_WORD_YOUNG + .2byte EC_WORD_TRAINER + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL + .2byte -1 + .2byte EC_WORD_GIVE + .2byte EC_WORD_IT + .2byte EC_WORD_UP +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_ARE + .2byte EC_WORD_A + .2byte EC_WORD_STRONG + .2byte EC_WORD_TRAINER + .2byte EC_WORD_KID .4byte gBattleFrontierTrainerMons_Alexas @ 244 .4byte TRAINER_CLASS_EXPERT_1 .string "WESTON$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word PLAY - ec_word DOWN - ec_word ALL_RIGHT - ec_word QUES -@ win speech - ec_word YOU_RE - ec_word FAR - ec_word TOO - ec_word EASY - ec_word TO - ec_word ATTACK -@ loss speech - ec_word WELL - ec_word WELL - ec_word ELLIPSIS - ec_word I - ec_word SURRENDER - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_PLAY + .2byte EC_WORD_DOWN + .2byte EC_WORD_ALL_RIGHT + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_FAR + .2byte EC_WORD_TOO + .2byte EC_WORD_EASY + .2byte EC_WORD_TO + .2byte EC_WORD_ATTACK +@ loss speech + .2byte EC_WORD_WELL + .2byte EC_WORD_WELL + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Weston @ 245 .4byte TRAINER_CLASS_EXPERT_1 .string "JASPER$", 8 @ pre-battle speech - ec_word I_AM - ec_word NOT - ec_word OLD - ec_word I_AM - ec_word SKILLED - ec_word EXCL -@ win speech - ec_word SKILLED - ec_word THAT_S - ec_word WHAT - ec_word I_AM - ec_word EXCL - .2byte -1 -@ loss speech - ec_word I_AM - ec_word SHOCKED - ec_word EXCL - ec_word DOWN - ec_word I - ec_word GO + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_OLD + .2byte EC_WORD_I_AM + .2byte EC_WORD_SKILLED + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_SKILLED + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SHOCKED + .2byte EC_WORD_EXCL + .2byte EC_WORD_DOWN + .2byte EC_WORD_I + .2byte EC_WORD_GO .4byte gBattleFrontierTrainerMons_Jasper @ 246 .4byte TRAINER_CLASS_EXPERT_2 .string "NADIA$", 8 @ pre-battle speech - ec_word YOU - ec_word CAN_T - ec_word BEAT - ec_word ME - ec_word DOWN - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BEAT + .2byte EC_WORD_ME + .2byte EC_WORD_DOWN + .2byte EC_WORD_EXCL @ win speech - ec_word HAH - ec_word EXCL + .2byte EC_WORD_HAH + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word BEAT - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_BEAT + .2byte EC_WORD_YOU @ loss speech - ec_word I_AM - ec_move2 BEAT_UP - ec_word AND - ec_word DOWNCAST - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_AND + .2byte EC_WORD_DOWNCAST + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Nadia @@ -6426,103 +6426,103 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_EXPERT_2 .string "MIRANDA$", 8 @ pre-battle speech - ec_word WELL - ec_word WELL + .2byte EC_WORD_WELL + .2byte EC_WORD_WELL .2byte -1 - ec_word LET_S - ec_word START + .2byte EC_WORD_LET_S + .2byte EC_WORD_START .2byte -1 @ win speech - ec_word WHAT - ec_word QUES - ec_word DONE - ec_word SO - ec_word SOON - ec_word QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES + .2byte EC_WORD_DONE + .2byte EC_WORD_SO + .2byte EC_WORD_SOON + .2byte EC_WORD_QUES @ loss speech - ec_word WELL - ec_word I - ec_word SEE - ec_word THAT - ec_word I_AM - ec_word TOO_WEAK + .2byte EC_WORD_WELL + .2byte EC_WORD_I + .2byte EC_WORD_SEE + .2byte EC_WORD_THAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOO_WEAK .4byte gBattleFrontierTrainerMons_Miranda @ 248 .4byte TRAINER_CLASS_EXPERT_2 .string "EMMA$", 8 @ pre-battle speech - ec_word I_VE - ec_word BEEN - ec_word HEARING - ec_word ABOUT - ec_word YOU + .2byte EC_WORD_I_VE + .2byte EC_WORD_BEEN + .2byte EC_WORD_HEARING + .2byte EC_WORD_ABOUT + .2byte EC_WORD_YOU .2byte -1 @ win speech - ec_word I - ec_word THINK - ec_word I_VE - ec_word MISHEARD - ec_word THINGS + .2byte EC_WORD_I + .2byte EC_WORD_THINK + .2byte EC_WORD_I_VE + .2byte EC_WORD_MISHEARD + .2byte EC_WORD_THINGS .2byte -1 @ loss speech - ec_word WHAT - ec_word I_VE - ec_word BEEN - ec_word HEARING - ec_word IS - ec_word RIGHT + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_VE + .2byte EC_WORD_BEEN + .2byte EC_WORD_HEARING + .2byte EC_WORD_IS + .2byte EC_WORD_RIGHT .4byte gBattleFrontierTrainerMons_Emma @ 249 .4byte TRAINER_CLASS_PSYCHIC_1 .string "ROLANDO$", 8 @ pre-battle speech - ec_word I_AM - ec_word A - ec_word SUPER - ec_word POKEMON - ec_word HERO - ec_word EXCL -@ win speech - ec_word WAS - ec_word THAT - ec_word ENOUGH - ec_word FOR - ec_word YOU - ec_word QUES -@ loss speech - ec_word YOU - ec_word SHOULD - ec_word NOT - ec_word BEAT - ec_word A - ec_word HERO + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_SUPER + .2byte EC_WORD_POKEMON + .2byte EC_WORD_HERO + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_WAS + .2byte EC_WORD_THAT + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SHOULD + .2byte EC_WORD_NOT + .2byte EC_WORD_BEAT + .2byte EC_WORD_A + .2byte EC_WORD_HERO .4byte gBattleFrontierTrainerMons_Rolando @ 250 .4byte TRAINER_CLASS_PSYCHIC_1 .string "STANLY$", 8 @ pre-battle speech - ec_word THIS - ec_word SHOULD - ec_word BE - ec_word AN - ec_word EASY - ec_word MATCH + .2byte EC_WORD_THIS + .2byte EC_WORD_SHOULD + .2byte EC_WORD_BE + .2byte EC_WORD_AN + .2byte EC_WORD_EASY + .2byte EC_WORD_MATCH @ win speech - ec_word IT - ec_word REALLY - ec_word WAS - ec_word EASY + .2byte EC_WORD_IT + .2byte EC_WORD_REALLY + .2byte EC_WORD_WAS + .2byte EC_WORD_EASY .2byte -1 .2byte -1 @ loss speech - ec_word ARE - ec_word YOU - ec_word HAPPY - ec_word NOW - ec_word QUES + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_HAPPY + .2byte EC_WORD_NOW + .2byte EC_WORD_QUES .2byte -1 .4byte gBattleFrontierTrainerMons_Stanly @@ -6530,207 +6530,207 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_PSYCHIC_1 .string "DARIO$", 8 @ pre-battle speech - ec_word MY - ec_move2 FORESIGHT - ec_word SAYS - ec_word I - ec_word WILL - ec_word WIN -@ win speech - ec_word MY - ec_move2 FORESIGHT - ec_word HAS - ec_word BEEN - ec_word PERFECT - .2byte -1 -@ loss speech - ec_word I - ec_word DIDN_T - ec_word SEE - ec_word THIS - ec_move1 REVERSAL - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_SAYS + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_WIN +@ win speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_HAS + .2byte EC_WORD_BEEN + .2byte EC_WORD_PERFECT + .2byte -1 +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_SEE + .2byte EC_WORD_THIS + .2byte EC_MOVE(REVERSAL) + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Dario @ 252 .4byte TRAINER_CLASS_PSYCHIC_2 .string "KARLEE$", 8 @ pre-battle speech - ec_word SOMETHING - ec_word GOOD - ec_word WILL - ec_word COME - ec_word OF - ec_word THIS -@ win speech - ec_word YOU - ec_word SEE - ec_word QUES - ec_word FANTASTIC - ec_word EXCL - .2byte -1 -@ loss speech - ec_word THAT - ec_word SOMETHING - ec_word GOOD - ec_word WENT - ec_word TO - ec_word YOU + .2byte EC_WORD_SOMETHING + .2byte EC_WORD_GOOD + .2byte EC_WORD_WILL + .2byte EC_WORD_COME + .2byte EC_WORD_OF + .2byte EC_WORD_THIS +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_FANTASTIC + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_THAT + .2byte EC_WORD_SOMETHING + .2byte EC_WORD_GOOD + .2byte EC_WORD_WENT + .2byte EC_WORD_TO + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Karlee @ 253 .4byte TRAINER_CLASS_PSYCHIC_2 .string "JAYLIN$", 8 @ pre-battle speech - ec_word EVERY - ec_word TRAINER - ec_word HAS - ec_word BEEN - ec_word TOO_WEAK - ec_word ELLIPSIS -@ win speech - ec_word IT_S - ec_word MAKING - ec_word ME - ec_move1 YAWN - ec_word THAT - ec_word BATTLE -@ loss speech - ec_word I - ec_word SLEPT - ec_word AND - ec_word SO - ec_word I - ec_word LOST + .2byte EC_WORD_EVERY + .2byte EC_WORD_TRAINER + .2byte EC_WORD_HAS + .2byte EC_WORD_BEEN + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_ELLIPSIS +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_MAKING + .2byte EC_WORD_ME + .2byte EC_MOVE(YAWN) + .2byte EC_WORD_THAT + .2byte EC_WORD_BATTLE +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_SLEPT + .2byte EC_WORD_AND + .2byte EC_WORD_SO + .2byte EC_WORD_I + .2byte EC_WORD_LOST .4byte gBattleFrontierTrainerMons_Jaylin @ 254 .4byte TRAINER_CLASS_PSYCHIC_2 .string "INGRID$", 8 @ pre-battle speech - ec_word I_AM - ec_word NOT - ec_word A - ec_word VERY - ec_word MEAN - ec_word TRAINER -@ win speech - ec_word WASN_T - ec_word THAT - ec_word A - ec_word GOOD - ec_word MATCH - ec_word QUES -@ loss speech - ec_word I - ec_word LOST - ec_word CAUSE - ec_word YOU_RE - ec_word MEAN - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_A + .2byte EC_WORD_VERY + .2byte EC_WORD_MEAN + .2byte EC_WORD_TRAINER +@ win speech + .2byte EC_WORD_WASN_T + .2byte EC_WORD_THAT + .2byte EC_WORD_A + .2byte EC_WORD_GOOD + .2byte EC_WORD_MATCH + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_LOST + .2byte EC_WORD_CAUSE + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MEAN + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Ingrid @ 255 .4byte TRAINER_CLASS_HEX_MANIAC .string "DELILAH$", 8 @ pre-battle speech - ec_word DON_T - ec_move1 GRUDGE - ec_word ME - ec_word IF_I_WIN - ec_word OK_QUES - .2byte -1 -@ win speech - ec_word I_AM - ec_word SORRY - ec_word TO - ec_word SEE - ec_word YOU - ec_word ANGRY -@ loss speech - ec_word I - ec_word HAVE - ec_word A - ec_move1 GRUDGE - ec_word WITH - ec_word YOU + .2byte EC_WORD_DON_T + .2byte EC_MOVE(GRUDGE) + .2byte EC_WORD_ME + .2byte EC_WORD_IF_I_WIN + .2byte EC_WORD_OK_QUES + .2byte -1 +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_YOU + .2byte EC_WORD_ANGRY +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE(GRUDGE) + .2byte EC_WORD_WITH + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Delilah @ 256 .4byte TRAINER_CLASS_HEX_MANIAC .string "CARLY$", 8 @ pre-battle speech - ec_word I - ec_word WILL - ec_word SCATTER - ec_word SOME - ec_move2 POISON_POWDER - ec_word ABOUT -@ win speech - ec_word IT_S - ec_word SCARY - ec_word HOW - ec_word MY - ec_word STRATEGY - ec_word WORKS -@ loss speech - ec_word I - ec_word DISLIKE - ec_word YOU - ec_word AND - ec_word YOUR - ec_word POKEMON + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_SCATTER + .2byte EC_WORD_SOME + .2byte EC_MOVE2(POISON_POWDER) + .2byte EC_WORD_ABOUT +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_SCARY + .2byte EC_WORD_HOW + .2byte EC_WORD_MY + .2byte EC_WORD_STRATEGY + .2byte EC_WORD_WORKS +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_YOU + .2byte EC_WORD_AND + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON .4byte gBattleFrontierTrainerMons_Carly @ 257 .4byte TRAINER_CLASS_HEX_MANIAC .string "LEXIE$", 8 @ pre-battle speech - ec_word WANT - ec_word TO - ec_word SEE - ec_word SCARY - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_SEE + .2byte EC_WORD_SCARY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES @ win speech - ec_word WASN_T - ec_word THAT - ec_word SCARY - ec_word EH_QUES + .2byte EC_WORD_WASN_T + .2byte EC_WORD_THAT + .2byte EC_WORD_SCARY + .2byte EC_WORD_EH_QUES .2byte -1 .2byte -1 @ loss speech - ec_word YOU_RE - ec_word MORE - ec_word SCARY - ec_word THAN - ec_word MY - ec_word POKEMON + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MORE + .2byte EC_WORD_SCARY + .2byte EC_WORD_THAN + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON .4byte gBattleFrontierTrainerMons_Lexie @ 258 .4byte TRAINER_CLASS_POKEMANIAC .string "MILLER$", 8 @ pre-battle speech - ec_word HELLO - ec_word QUES + .2byte EC_WORD_HELLO + .2byte EC_WORD_QUES .2byte -1 - ec_word HELLO - ec_word QUES_EXCL + .2byte EC_WORD_HELLO + .2byte EC_WORD_QUES_EXCL .2byte -1 @ win speech - ec_word HELLO - ec_word MOTHER - ec_word EXCL - ec_word I - ec_word WON - ec_word EXCL + .2byte EC_WORD_HELLO + .2byte EC_WORD_MOTHER + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_EXCL @ loss speech - ec_word MY - ec_word PHONE - ec_word ISN_T - ec_word WORKING - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_PHONE + .2byte EC_WORD_ISN_T + .2byte EC_WORD_WORKING + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Miller @@ -6738,153 +6738,153 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_POKEMANIAC .string "MARV$", 8 @ pre-battle speech - ec_word YOU - ec_word CAN - ec_word LOSE - ec_word YOUR - ec_move1 SWAGGER - ec_word NOW -@ win speech - ec_word THERE - ec_word IS - ec_word NO - ec_move1 SWAGGER - ec_word LEFT - ec_word EH_QUES -@ loss speech - ec_word GO - ec_word ON - ec_move1 SWAGGER - ec_word ALL - ec_word YOU - ec_word WANT + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN + .2byte EC_WORD_LOSE + .2byte EC_WORD_YOUR + .2byte EC_MOVE(SWAGGER) + .2byte EC_WORD_NOW +@ win speech + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_NO + .2byte EC_MOVE(SWAGGER) + .2byte EC_WORD_LEFT + .2byte EC_WORD_EH_QUES +@ loss speech + .2byte EC_WORD_GO + .2byte EC_WORD_ON + .2byte EC_MOVE(SWAGGER) + .2byte EC_WORD_ALL + .2byte EC_WORD_YOU + .2byte EC_WORD_WANT .4byte gBattleFrontierTrainerMons_Marv @ 260 .4byte TRAINER_CLASS_POKEMANIAC .string "LAYTON$", 8 @ pre-battle speech - ec_word I - ec_word KNOW - ec_word I_AM - ec_word TOTALLY - ec_word COOL - ec_word EXCL -@ win speech - ec_word YOU - ec_word CAN - ec_word LOOK - ec_word UP - ec_word TO - ec_word ME -@ loss speech - ec_word YOU_RE - ec_word COOL - ec_word EXCL - ec_word NO - ec_word REALLY - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_KNOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_COOL + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN + .2byte EC_WORD_LOOK + .2byte EC_WORD_UP + .2byte EC_WORD_TO + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_COOL + .2byte EC_WORD_EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_REALLY + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Layton @ 261 .4byte TRAINER_CLASS_GENTLEMAN .string "BROOKS$", 8 @ pre-battle speech - ec_word THIS - ec_word IS - ec_word A - ec_word HIGH - ec_word LEVEL - ec_word BATTLE -@ win speech - ec_word THAT_WAS - ec_word HIGH - ec_word LEVEL - ec_word AND - ec_word EXCITING - ec_word TOO -@ loss speech - ec_word YOU_RE - ec_word TOO - ec_word HIGH - ec_word IN - ec_word LEVEL - ec_word ELLIPSIS + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_HIGH + .2byte EC_WORD_LEVEL + .2byte EC_WORD_BATTLE +@ win speech + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_HIGH + .2byte EC_WORD_LEVEL + .2byte EC_WORD_AND + .2byte EC_WORD_EXCITING + .2byte EC_WORD_TOO +@ loss speech + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOO + .2byte EC_WORD_HIGH + .2byte EC_WORD_IN + .2byte EC_WORD_LEVEL + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Brooks @ 262 .4byte TRAINER_CLASS_GENTLEMAN .string "GREGORY$", 8 @ pre-battle speech - ec_word I_AM - ec_word NOT - ec_word THAT - ec_word OLD - ec_word YET - .2byte -1 -@ win speech - ec_word WHO - ec_word SAYS - ec_word I_AM - ec_word TOO - ec_word OLD - ec_word QUES -@ loss speech - ec_word PLEASE - ec_word I_AM - ec_word REALLY - ec_word NOT - ec_word THAT - ec_word OLD + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_THAT + .2byte EC_WORD_OLD + .2byte EC_WORD_YET + .2byte -1 +@ win speech + .2byte EC_WORD_WHO + .2byte EC_WORD_SAYS + .2byte EC_WORD_I_AM + .2byte EC_WORD_TOO + .2byte EC_WORD_OLD + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_PLEASE + .2byte EC_WORD_I_AM + .2byte EC_WORD_REALLY + .2byte EC_WORD_NOT + .2byte EC_WORD_THAT + .2byte EC_WORD_OLD .4byte gBattleFrontierTrainerMons_Gregory @ 263 .4byte TRAINER_CLASS_GENTLEMAN .string "REESE$", 8 @ pre-battle speech - ec_word I_VE - ec_word A - ec_word COUPLE - ec_word THINGS + .2byte EC_WORD_I_VE + .2byte EC_WORD_A + .2byte EC_WORD_COUPLE + .2byte EC_WORD_THINGS .2byte -1 .2byte -1 @ win speech - ec_word DON_T - ec_word DIET - ec_word PLAY - ec_word SPORTS - ec_word INSTEAD + .2byte EC_WORD_DON_T + .2byte EC_WORD_DIET + .2byte EC_WORD_PLAY + .2byte EC_WORD_SPORTS + .2byte EC_WORD_INSTEAD .2byte -1 @ loss speech - ec_word INSTEAD - ec_word OF - ec_word TELEVISION - ec_word GET - ec_word A - ec_word BOOK + .2byte EC_WORD_INSTEAD + .2byte EC_WORD_OF + .2byte EC_WORD_TELEVISION + .2byte EC_WORD_GET + .2byte EC_WORD_A + .2byte EC_WORD_BOOK .4byte gBattleFrontierTrainerMons_Reese @ 264 .4byte TRAINER_CLASS_TRIATHLETE_3 .string "MASON$", 8 @ pre-battle speech - ec_word PLEASE - ec_word DON_T - ec_word MAKE - ec_word THIS - ec_word SCARY + .2byte EC_WORD_PLEASE + .2byte EC_WORD_DON_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_THIS + .2byte EC_WORD_SCARY .2byte -1 @ win speech - ec_word THANK_YOU - ec_word ELLIPSIS + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_ELLIPSIS .2byte -1 - ec_word I_AM - ec_word HAPPY - ec_word NOW + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY + .2byte EC_WORD_NOW @ loss speech - ec_word I_AM - ec_word DISAPPOINTED - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_DISAPPOINTED + .2byte EC_WORD_ELLIPSIS .2byte -1 .2byte -1 .2byte -1 @@ -6894,75 +6894,75 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_3 .string "TOBY$", 8 @ pre-battle speech - ec_word LISTEN - ec_word UP - .2byte -1 - ec_word I - ec_word ALWAYS - ec_word WIN -@ win speech - ec_word I_AM - ec_word A - ec_word GENIUS - ec_word OR - ec_word WHAT - ec_word QUES -@ loss speech - ec_word I - ec_word CAN - ec_word BEAT - ec_word YOU - ec_word AT - ec_word SMARTNESS + .2byte EC_WORD_LISTEN + .2byte EC_WORD_UP + .2byte -1 + .2byte EC_WORD_I + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_WIN +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_A + .2byte EC_WORD_GENIUS + .2byte EC_WORD_OR + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_CAN + .2byte EC_WORD_BEAT + .2byte EC_WORD_YOU + .2byte EC_WORD_AT + .2byte EC_WORD_SMARTNESS .4byte gBattleFrontierTrainerMons_Toby @ 266 .4byte TRAINER_CLASS_TRIATHLETE_4 .string "DOROTHY$", 8 @ pre-battle speech - ec_word THE - ec_word SPORTS - ec_word WORLD - ec_word SHOULD - ec_word ACCEPT - ec_word POKEMON -@ win speech - ec_word THANK_YOU - ec_word EXCL - ec_word THAT - ec_word WIN - ec_word WAS - ec_word REFRESHING -@ loss speech - ec_word THANK_YOU - ec_word EXCL - ec_word THAT - ec_word LOSS - ec_word WAS - ec_word REFRESHING + .2byte EC_WORD_THE + .2byte EC_WORD_SPORTS + .2byte EC_WORD_WORLD + .2byte EC_WORD_SHOULD + .2byte EC_WORD_ACCEPT + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL + .2byte EC_WORD_THAT + .2byte EC_WORD_WIN + .2byte EC_WORD_WAS + .2byte EC_WORD_REFRESHING +@ loss speech + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_EXCL + .2byte EC_WORD_THAT + .2byte EC_WORD_LOSS + .2byte EC_WORD_WAS + .2byte EC_WORD_REFRESHING .4byte gBattleFrontierTrainerMons_Dorothy @ 267 .4byte TRAINER_CLASS_TRIATHLETE_4 .string "PIPER$", 8 @ pre-battle speech - ec_word COME_ON - ec_word YOU - ec_word NEED - ec_word A - ec_word SPEED_BOOST - ec_word QUES + .2byte EC_WORD_COME_ON + .2byte EC_WORD_YOU + .2byte EC_WORD_NEED + .2byte EC_WORD_A + .2byte EC_WORD_SPEED_BOOST + .2byte EC_WORD_QUES @ win speech - ec_word YOU - ec_word NEED - ec_word TO - ec_word SHOW - ec_word MORE - ec_word GUTS + .2byte EC_WORD_YOU + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_SHOW + .2byte EC_WORD_MORE + .2byte EC_WORD_GUTS @ loss speech - ec_word OH - ec_word YOU - ec_word EXCL + .2byte EC_WORD_OH + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL .2byte -1 .2byte -1 .2byte -1 @@ -6972,51 +6972,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_5 .string "FINN$", 8 @ pre-battle speech - ec_word NOT - ec_word ANOTHER - ec_word TRAINER - ec_word BATTLE - ec_word ELLIPSIS + .2byte EC_WORD_NOT + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_TRAINER + .2byte EC_WORD_BATTLE + .2byte EC_WORD_ELLIPSIS .2byte -1 @ win speech - ec_word WON_T - ec_word THIS - ec_word EVER - ec_word END - ec_word QUES + .2byte EC_WORD_WON_T + .2byte EC_WORD_THIS + .2byte EC_WORD_EVER + .2byte EC_WORD_END + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word I - ec_word FINALLY - ec_word GET - ec_word TO - ec_move2 REST - ec_word A_LITTLE + .2byte EC_WORD_I + .2byte EC_WORD_FINALLY + .2byte EC_WORD_GET + .2byte EC_WORD_TO + .2byte EC_MOVE2(REST) + .2byte EC_WORD_A_LITTLE .4byte gBattleFrontierTrainerMons_Finn @ 269 .4byte TRAINER_CLASS_TRIATHLETE_5 .string "SAMIR$", 8 @ pre-battle speech - ec_word I - ec_move2 DIVE - ec_word BELOW - ec_word THE - ec_move2 SURF - ec_word EXCL -@ win speech - ec_word YAHOO - ec_word TAKE - ec_word A - ec_move2 DIVE - ec_word YOU - ec_word EXCL -@ loss speech - ec_word I_AM - ec_word GOING - ec_word TO - ec_word SINK - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_BELOW + .2byte EC_WORD_THE + .2byte EC_MOVE2(SURF) + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_YAHOO + .2byte EC_WORD_TAKE + .2byte EC_WORD_A + .2byte EC_MOVE2(DIVE) + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_SINK + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gBattleFrontierTrainerMons_Samir @@ -7024,700 +7024,700 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_TRIATHLETE_6 .string "FIONA$", 8 @ pre-battle speech - ec_word DID - ec_word YOU - ec_word LIMBER - ec_word UP - ec_word BEFORE - ec_word QUES -@ win speech - ec_word YOU - ec_word NEED - ec_word TO - ec_word BE - ec_word MORE - ec_word READY -@ loss speech - ec_word BEING - ec_word LIMBER - ec_word DIDN_T - ec_word WORK - ec_word FOR - ec_word ME + .2byte EC_WORD_DID + .2byte EC_WORD_YOU + .2byte EC_WORD_LIMBER + .2byte EC_WORD_UP + .2byte EC_WORD_BEFORE + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_MORE + .2byte EC_WORD_READY +@ loss speech + .2byte EC_WORD_BEING + .2byte EC_WORD_LIMBER + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_WORK + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .4byte gBattleFrontierTrainerMons_Fiona @ 271 .4byte TRAINER_CLASS_TRIATHLETE_6 .string "GLORIA$", 8 @ pre-battle speech - ec_word I - ec_word LIKE - ec_word TO - ec_word ATTACK - ec_word WITH - ec_word SUCTION_CUPS -@ win speech - ec_word GIGGLE - ec_word ELLIPSIS - ec_word IT_S - ec_word OVER - ec_word FOR - ec_word YOU -@ loss speech - ec_word I - ec_word DON_T - ec_word GET - ec_word HOW - ec_word SUCTION_CUPS - ec_word WORK + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_TO + .2byte EC_WORD_ATTACK + .2byte EC_WORD_WITH + .2byte EC_WORD_SUCTION_CUPS +@ win speech + .2byte EC_WORD_GIGGLE + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_IT_S + .2byte EC_WORD_OVER + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_GET + .2byte EC_WORD_HOW + .2byte EC_WORD_SUCTION_CUPS + .2byte EC_WORD_WORK .4byte gBattleFrontierTrainerMons_Gloria @ 272 .4byte TRAINER_CLASS_TRIATHLETE_1 .string "NICO$", 8 @ pre-battle speech - ec_word LIKE - ec_word A - ec_move1 SONIC_BOOM - ec_word I_VE_ARRIVED + .2byte EC_WORD_LIKE + .2byte EC_WORD_A + .2byte EC_MOVE(SONIC_BOOM) + .2byte EC_WORD_I_VE_ARRIVED .2byte -1 .2byte -1 @ win speech - ec_word SORRY - ec_word TO - ec_word MAKE - ec_word YOU - ec_word SO - ec_word DOWNCAST + .2byte EC_WORD_SORRY + .2byte EC_WORD_TO + .2byte EC_WORD_MAKE + .2byte EC_WORD_YOU + .2byte EC_WORD_SO + .2byte EC_WORD_DOWNCAST @ loss speech - ec_word I_AM - ec_word GOING - ec_word WITH - ec_word A - ec_move2 SUPERSONIC - ec_word SPEED_BOOST + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_WITH + .2byte EC_WORD_A + .2byte EC_MOVE2(SUPERSONIC) + .2byte EC_WORD_SPEED_BOOST .4byte gBattleFrontierTrainerMons_Nico @ 273 .4byte TRAINER_CLASS_TRIATHLETE_1 .string "JEREMY$", 8 @ pre-battle speech - ec_word A - ec_word POKEMON - ec_word MASTER - ec_word THAT_S - ec_word MY - ec_word DREAM -@ win speech - ec_word MY - ec_word DREAM - ec_word ISN_T - ec_word FAR - ec_word OFF - ec_word EXCL -@ loss speech - ec_word WHAT - ec_word I - ec_word DREAM - ec_word ISN_T - ec_word HAPPENING - ec_word ELLIPSIS + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_MASTER + .2byte EC_WORD_THAT_S + .2byte EC_WORD_MY + .2byte EC_WORD_DREAM +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_DREAM + .2byte EC_WORD_ISN_T + .2byte EC_WORD_FAR + .2byte EC_WORD_OFF + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_DREAM + .2byte EC_WORD_ISN_T + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Jeremy @ 274 .4byte TRAINER_CLASS_TRIATHLETE_2 .string "CAITLIN$", 8 @ pre-battle speech - ec_word DON_T - ec_word YOU - ec_word THINK - ec_word I_AM - ec_word CUTE - ec_word QUES -@ win speech - ec_word THERE - ec_word IS - ec_word MORE - ec_word TO_ME - ec_word THAN - ec_word CUTENESS -@ loss speech - ec_word MY - ec_word CUTE_CHARM - ec_word DOESN_T - ec_move2 ATTRACT - ec_word YOU - ec_word QUES + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_THINK + .2byte EC_WORD_I_AM + .2byte EC_WORD_CUTE + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_MORE + .2byte EC_WORD_TO_ME + .2byte EC_WORD_THAN + .2byte EC_WORD_CUTENESS +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_CUTE_CHARM + .2byte EC_WORD_DOESN_T + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Caitlin @ 275 .4byte TRAINER_CLASS_TRIATHLETE_2 .string "REENA$", 8 @ pre-battle speech - ec_word I_AM - ec_word ALWAYS - ec_word HAPPY - ec_word HAPPY - ec_word HAPPY - ec_word EXCL -@ win speech - ec_word OH - ec_word YAY - ec_word EXCL - ec_word YAHOO - ec_word FOR - ec_word ME -@ loss speech - ec_word YAHOO - ec_word EXCL - ec_word I_AM - ec_word HAPPY - ec_word FOR - ec_word YOU + .2byte EC_WORD_I_AM + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_HAPPY + .2byte EC_WORD_HAPPY + .2byte EC_WORD_HAPPY + .2byte EC_WORD_EXCL +@ win speech + .2byte EC_WORD_OH + .2byte EC_WORD_YAY + .2byte EC_WORD_EXCL + .2byte EC_WORD_YAHOO + .2byte EC_WORD_FOR + .2byte EC_WORD_ME +@ loss speech + .2byte EC_WORD_YAHOO + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_HAPPY + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU .4byte gBattleFrontierTrainerMons_Reena @ 276 .4byte TRAINER_CLASS_BUG_MANIAC .string "AVERY$", 8 @ pre-battle speech - ec_word I_VE - ec_word GOT - ec_word A_LOT - ec_word OF - ec_word BUG - ec_word POKEMON -@ win speech - ec_word MY - ec_word BUG - ec_word POKEMON - ec_word ARE - ec_word ALL - ec_word UNBELIEVABLE -@ loss speech - ec_word MY - ec_word BUG - ec_word POKEMON - ec_word ARE - ec_word ALL - ec_word UPSIDE_DOWN + .2byte EC_WORD_I_VE + .2byte EC_WORD_GOT + .2byte EC_WORD_A_LOT + .2byte EC_WORD_OF + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_MY + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_ALL + .2byte EC_WORD_UNBELIEVABLE +@ loss speech + .2byte EC_WORD_MY + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_ALL + .2byte EC_WORD_UPSIDE_DOWN .4byte gBattleFrontierTrainerMons_Avery @ 277 .4byte TRAINER_CLASS_BUG_MANIAC .string "LIAM$", 8 @ pre-battle speech - ec_word WE - ec_word REALLY - ec_word DISLIKE - ec_word FIRE - ec_word AND - ec_word FLYING -@ win speech - ec_word BUG - ec_word POKEMON - ec_word AREN_T - ec_word BAD - ec_word HEY_QUES - .2byte -1 -@ loss speech - ec_word YOU - ec_word KNOW - ec_word WHAT - ec_word WE - ec_word DISLIKE - ec_word HEY_QUES + .2byte EC_WORD_WE + .2byte EC_WORD_REALLY + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_FIRE + .2byte EC_WORD_AND + .2byte EC_WORD_FLYING +@ win speech + .2byte EC_WORD_BUG + .2byte EC_WORD_POKEMON + .2byte EC_WORD_AREN_T + .2byte EC_WORD_BAD + .2byte EC_WORD_HEY_QUES + .2byte -1 +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_KNOW + .2byte EC_WORD_WHAT + .2byte EC_WORD_WE + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_HEY_QUES .4byte gBattleFrontierTrainerMons_Liam @ 278 .4byte TRAINER_CLASS_FISHERMAN .string "THEO$", 8 @ pre-battle speech - ec_word FISHING - ec_word IS - ec_word MY - ec_word CHOICE - ec_word IN - ec_word LIFE -@ win speech - ec_word WATER - ec_word POKEMON - ec_move2 ATTRACT - ec_word ME - ec_word WITHOUT - ec_word END -@ loss speech - ec_word DON_T - ec_word COUNT_ON - ec_word THAT - ec_word HAPPENING - ec_word ANOTHER - ec_word TIME + .2byte EC_WORD_FISHING + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_CHOICE + .2byte EC_WORD_IN + .2byte EC_WORD_LIFE +@ win speech + .2byte EC_WORD_WATER + .2byte EC_WORD_POKEMON + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_ME + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_END +@ loss speech + .2byte EC_WORD_DON_T + .2byte EC_WORD_COUNT_ON + .2byte EC_WORD_THAT + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_TIME .4byte gBattleFrontierTrainerMons_Theo @ 279 .4byte TRAINER_CLASS_FISHERMAN .string "BAILEY$", 8 @ pre-battle speech - ec_word I_AM - ec_word AN - ec_word ADULT - ec_word I - ec_word BATTLE - ec_word EASY -@ win speech - ec_word I_AM - ec_word AN - ec_word ADULT - ec_word I - ec_move2 SWALLOW - ec_word JOY -@ loss speech - ec_word I_AM - ec_word AN - ec_word ADULT - ec_word I - ec_move2 SWALLOW - ec_move2 FRUSTRATION + .2byte EC_WORD_I_AM + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_I + .2byte EC_WORD_BATTLE + .2byte EC_WORD_EASY +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_I + .2byte EC_MOVE2(SWALLOW) + .2byte EC_WORD_JOY +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_AN + .2byte EC_WORD_ADULT + .2byte EC_WORD_I + .2byte EC_MOVE2(SWALLOW) + .2byte EC_MOVE2(FRUSTRATION) .4byte gBattleFrontierTrainerMons_Bailey @ 280 .4byte TRAINER_CLASS_RUIN_MANIAC .string "HUGO$", 8 @ pre-battle speech - ec_word I - ec_word TRY - ec_word THE - ec_word BEST - ec_word I - ec_word CAN -@ win speech - ec_word I - ec_word CAN_WIN - ec_word IF - ec_word I - ec_word TRY - ec_word ENOUGH -@ loss speech - ec_word I - ec_word DID - ec_word TRY - ec_word DIDN_T - ec_word I - ec_word QUES + .2byte EC_WORD_I + .2byte EC_WORD_TRY + .2byte EC_WORD_THE + .2byte EC_WORD_BEST + .2byte EC_WORD_I + .2byte EC_WORD_CAN +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_CAN_WIN + .2byte EC_WORD_IF + .2byte EC_WORD_I + .2byte EC_WORD_TRY + .2byte EC_WORD_ENOUGH +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_DID + .2byte EC_WORD_TRY + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_I + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Hugo @ 281 .4byte TRAINER_CLASS_RUIN_MANIAC .string "BRYCE$", 8 @ pre-battle speech - ec_word I_WAS - ec_word ON - ec_word VACATION - ec_word UNTIL - ec_word ONLY - ec_word YESTERDAY -@ win speech - ec_word I - ec_word HAVEN_T - ec_word LOST - ec_word MY - ec_word SKILL - ec_word YET -@ loss speech - ec_word THAT_S - ec_word IT - ec_word ELLIPSIS - ec_word I - ec_word NEED - ec_word SLEEP + .2byte EC_WORD_I_WAS + .2byte EC_WORD_ON + .2byte EC_WORD_VACATION + .2byte EC_WORD_UNTIL + .2byte EC_WORD_ONLY + .2byte EC_WORD_YESTERDAY +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_HAVEN_T + .2byte EC_WORD_LOST + .2byte EC_WORD_MY + .2byte EC_WORD_SKILL + .2byte EC_WORD_YET +@ loss speech + .2byte EC_WORD_THAT_S + .2byte EC_WORD_IT + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_SLEEP .4byte gBattleFrontierTrainerMons_Bryce @ 282 .4byte TRAINER_CLASS_COLLECTOR .string "GIDEON$", 8 @ pre-battle speech - ec_word WHAT_S_UP_QUES - ec_word YOU - ec_word THINK - ec_word I_AM - ec_word SCARY - ec_word QUES -@ win speech - ec_word I_AM - ec_word COOL - ec_word BUT - ec_word NOT - ec_word SCARY - ec_word EXCL -@ loss speech - ec_word LOOK - ec_word AT - ec_word MY - ec_word FABULOUS - ec_word FASHION - ec_word SENSE + .2byte EC_WORD_WHAT_S_UP_QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_THINK + .2byte EC_WORD_I_AM + .2byte EC_WORD_SCARY + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_COOL + .2byte EC_WORD_BUT + .2byte EC_WORD_NOT + .2byte EC_WORD_SCARY + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_WORD_FABULOUS + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE .4byte gBattleFrontierTrainerMons_Gideon @ 283 .4byte TRAINER_CLASS_COLLECTOR .string "TRISTON$", 8 @ pre-battle speech - ec_word I - ec_word WOULD - ec_word RATHER - ec_word LOOK - ec_word AT - ec_word POKEMON -@ win speech - ec_word HUH_QUES - ec_word YOU - ec_word MEAN - ec_word I - ec_word WON - ec_word QUES_EXCL -@ loss speech - ec_word SEE - ec_word QUES - .2byte -1 - ec_word I - ec_word ALWAYS - ec_word LOSE + .2byte EC_WORD_I + .2byte EC_WORD_WOULD + .2byte EC_WORD_RATHER + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_POKEMON +@ win speech + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_MEAN + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_QUES_EXCL +@ loss speech + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte -1 + .2byte EC_WORD_I + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_LOSE .4byte gBattleFrontierTrainerMons_Triston @ 284 .4byte TRAINER_CLASS_GUITARIST .string "CHARLES$", 8 @ pre-battle speech - ec_word IT_S - ec_word HOPELESS - ec_word TO - ec_move2 STRUGGLE - ec_word WITH - ec_word ME -@ win speech - ec_move1 SUBMISSION - ec_word WAS - ec_word YOUR - ec_word ONLY - ec_word CHOICE - .2byte -1 -@ loss speech - ec_word I_AM - ec_word GOING - ec_word DOWN - ec_word DOWN - ec_word DOWN - ec_word EXCL + .2byte EC_WORD_IT_S + .2byte EC_WORD_HOPELESS + .2byte EC_WORD_TO + .2byte EC_MOVE2(STRUGGLE) + .2byte EC_WORD_WITH + .2byte EC_WORD_ME +@ win speech + .2byte EC_MOVE(SUBMISSION) + .2byte EC_WORD_WAS + .2byte EC_WORD_YOUR + .2byte EC_WORD_ONLY + .2byte EC_WORD_CHOICE + .2byte -1 +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_DOWN + .2byte EC_WORD_DOWN + .2byte EC_WORD_DOWN + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Charles @ 285 .4byte TRAINER_CLASS_GUITARIST .string "RAYMOND$", 8 @ pre-battle speech - ec_word WANT - ec_word TO - ec_word HEAR - ec_word MY - ec_word SONG - ec_word QUES -@ win speech - ec_word SATISFIED - ec_word THAT_S - ec_word WHAT - ec_word I_AM - ec_word EXCL - .2byte -1 -@ loss speech - ec_word SATISFIED - ec_word IS - ec_word WHAT - ec_word I - ec_word CAN_T - ec_word BE + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_HEAR + .2byte EC_WORD_MY + .2byte EC_WORD_SONG + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_SATISFIED + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_SATISFIED + .2byte EC_WORD_IS + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BE .4byte gBattleFrontierTrainerMons_Raymond @ 286 .4byte TRAINER_CLASS_BIRD_KEEPER .string "DIRK$", 8 @ pre-battle speech - ec_word FLYING - ec_word POKEMON - ec_word ARE - ec_word ABOVE - ec_word THE - ec_move2 REST -@ win speech - ec_word YOU - ec_word CAN_T_WIN - ec_word EXCL - ec_word FLYING - ec_word POKEMON - ec_word RULE -@ loss speech - ec_word AREN_T - ec_word THERE - ec_word MORE - ec_word FLYING - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_FLYING + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_ABOVE + .2byte EC_WORD_THE + .2byte EC_MOVE2(REST) +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T_WIN + .2byte EC_WORD_EXCL + .2byte EC_WORD_FLYING + .2byte EC_WORD_POKEMON + .2byte EC_WORD_RULE +@ loss speech + .2byte EC_WORD_AREN_T + .2byte EC_WORD_THERE + .2byte EC_WORD_MORE + .2byte EC_WORD_FLYING + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Dirk @ 287 .4byte TRAINER_CLASS_BIRD_KEEPER .string "HAROLD$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word APPEAL - ec_word TO - ec_word YOU - ec_word QUES -@ win speech - ec_word YOU - ec_word DO - ec_word LIKE - ec_word MY - ec_word POKEMON - ec_word QUES -@ loss speech - ec_word SO - ec_word YOU - ec_word DISLIKE - ec_word MY - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_APPEAL + .2byte EC_WORD_TO + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_DO + .2byte EC_WORD_LIKE + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES +@ loss speech + .2byte EC_WORD_SO + .2byte EC_WORD_YOU + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Harold @ 288 .4byte TRAINER_CLASS_SAILOR .string "OMAR$", 8 @ pre-battle speech - ec_word LET_ME_WIN - ec_word IN - ec_move1 RETURN - ec_word FOR - ec_word A - ec_move2 PRESENT -@ win speech - ec_word HERE - ec_word YOU - ec_word ARE - ec_word SOME - ec_move2 TOXIC - ec_word SWEETS -@ loss speech - ec_word YOUR - ec_move2 PRESENT - ec_word QUES - ec_word WHAT - ec_word FOR - ec_word QUES_EXCL + .2byte EC_WORD_LET_ME_WIN + .2byte EC_WORD_IN + .2byte EC_MOVE(RETURN) + .2byte EC_WORD_FOR + .2byte EC_WORD_A + .2byte EC_MOVE2(PRESENT) +@ win speech + .2byte EC_WORD_HERE + .2byte EC_WORD_YOU + .2byte EC_WORD_ARE + .2byte EC_WORD_SOME + .2byte EC_MOVE2(TOXIC) + .2byte EC_WORD_SWEETS +@ loss speech + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_FOR + .2byte EC_WORD_QUES_EXCL .4byte gBattleFrontierTrainerMons_Omar @ 289 .4byte TRAINER_CLASS_SAILOR .string "PETER$", 8 @ pre-battle speech - ec_word I - ec_word BRAG - ec_word ABOUT - ec_word MY - ec_word HAPPINESS - ec_word OK_QUES -@ win speech - ec_word YOU - ec_word HAVE - ec_word TO - ec_word LISTEN - ec_word TO_ME - ec_word BRAG -@ loss speech - ec_word I_AM - ec_word DISAPPOINTED - ec_word YOU - ec_word WON_T - ec_word LISTEN - ec_word TO_ME + .2byte EC_WORD_I + .2byte EC_WORD_BRAG + .2byte EC_WORD_ABOUT + .2byte EC_WORD_MY + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_OK_QUES +@ win speech + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_LISTEN + .2byte EC_WORD_TO_ME + .2byte EC_WORD_BRAG +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_DISAPPOINTED + .2byte EC_WORD_YOU + .2byte EC_WORD_WON_T + .2byte EC_WORD_LISTEN + .2byte EC_WORD_TO_ME .4byte gBattleFrontierTrainerMons_Peter @ 290 .4byte TRAINER_CLASS_HIKER .string "DEV$", 8 @ pre-battle speech - ec_word COME_ON - ec_word LET_S - ec_word GET - ec_word A - ec_word MOVE - ec_word ON -@ win speech - ec_word I - ec_word GET - ec_word TO - ec_word NAP - ec_word AFTER - ec_word THAT -@ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word NAP - ec_word AFTER - ec_word THAT + .2byte EC_WORD_COME_ON + .2byte EC_WORD_LET_S + .2byte EC_WORD_GET + .2byte EC_WORD_A + .2byte EC_WORD_MOVE + .2byte EC_WORD_ON +@ win speech + .2byte EC_WORD_I + .2byte EC_WORD_GET + .2byte EC_WORD_TO + .2byte EC_WORD_NAP + .2byte EC_WORD_AFTER + .2byte EC_WORD_THAT +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_NAP + .2byte EC_WORD_AFTER + .2byte EC_WORD_THAT .4byte gBattleFrontierTrainerMons_Dev @ 291 .4byte TRAINER_CLASS_HIKER .string "COREY$", 8 @ pre-battle speech - ec_word LET_S - ec_word TEACH - ec_word YOU - ec_word HOW - ec_word TOUGH - ec_word I_AM -@ win speech - ec_word LOOK - ec_word AT - ec_word ME - ec_word MAKE - ec_word A - ec_move1 BRICK_BREAK -@ loss speech - ec_word MY - ec_move2 FRUSTRATION - ec_word IS - ec_word CLOSE - ec_word TO - ec_move2 ERUPTION + .2byte EC_WORD_LET_S + .2byte EC_WORD_TEACH + .2byte EC_WORD_YOU + .2byte EC_WORD_HOW + .2byte EC_WORD_TOUGH + .2byte EC_WORD_I_AM +@ win speech + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_ME + .2byte EC_WORD_MAKE + .2byte EC_WORD_A + .2byte EC_MOVE(BRICK_BREAK) +@ loss speech + .2byte EC_WORD_MY + .2byte EC_MOVE2(FRUSTRATION) + .2byte EC_WORD_IS + .2byte EC_WORD_CLOSE + .2byte EC_WORD_TO + .2byte EC_MOVE2(ERUPTION) .4byte gBattleFrontierTrainerMons_Corey @ 292 .4byte TRAINER_CLASS_KINDLER .string "ANDRE$", 8 @ pre-battle speech - ec_word NOW - ec_word THIS - ec_word IS - ec_word A - ec_word PERFECT - ec_word FLAME_BODY -@ win speech - ec_word LOOK - ec_word AT - ec_word MY - ec_word FIERY - ec_word DANCE - ec_word EXCL -@ loss speech - ec_word YOU - ec_word WANT - ec_word AN - ec_move2 EXPLOSION - ec_word HERE - ec_word QUES + .2byte EC_WORD_NOW + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_PERFECT + .2byte EC_WORD_FLAME_BODY +@ win speech + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_WORD_FIERY + .2byte EC_WORD_DANCE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_YOU + .2byte EC_WORD_WANT + .2byte EC_WORD_AN + .2byte EC_MOVE2(EXPLOSION) + .2byte EC_WORD_HERE + .2byte EC_WORD_QUES .4byte gBattleFrontierTrainerMons_Andre @ 293 .4byte TRAINER_CLASS_KINDLER .string "FERRIS$", 8 @ pre-battle speech - ec_word I_AM - ec_word NO_1 - ec_word IN - ec_word THE - ec_word OLD - ec_word CLASS -@ win speech - ec_word NO_1 - ec_word THAT_S - ec_word WHAT - ec_word I_AM - ec_word EXCL - .2byte -1 -@ loss speech - ec_word I_AM - ec_word NOT - ec_word NO_1 - ec_word ANY - ec_word MORE - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_NO_1 + .2byte EC_WORD_IN + .2byte EC_WORD_THE + .2byte EC_WORD_OLD + .2byte EC_WORD_CLASS +@ win speech + .2byte EC_WORD_NO_1 + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM + .2byte EC_WORD_EXCL + .2byte -1 +@ loss speech + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_NO_1 + .2byte EC_WORD_ANY + .2byte EC_WORD_MORE + .2byte EC_WORD_ELLIPSIS .4byte gBattleFrontierTrainerMons_Ferris @ 294 .4byte TRAINER_CLASS_PARASOL_LADY .string "ALIVIA$", 8 @ pre-battle speech - ec_word I_AM - ec_word FEELING - ec_word GIDDY - ec_word SO - ec_word SHOULD - ec_word YOU -@ win speech - ec_word IT - ec_word WAS - ec_word ALL - ec_word TOGETHER - ec_word TOO - ec_word EASY -@ loss speech - ec_word I - ec_word WILL - ec_word GIDDY - ec_word UP - ec_word AND - ec_word AWAY + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_GIDDY + .2byte EC_WORD_SO + .2byte EC_WORD_SHOULD + .2byte EC_WORD_YOU +@ win speech + .2byte EC_WORD_IT + .2byte EC_WORD_WAS + .2byte EC_WORD_ALL + .2byte EC_WORD_TOGETHER + .2byte EC_WORD_TOO + .2byte EC_WORD_EASY +@ loss speech + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_GIDDY + .2byte EC_WORD_UP + .2byte EC_WORD_AND + .2byte EC_WORD_AWAY .4byte gBattleFrontierTrainerMons_Alivia @ 295 .4byte TRAINER_CLASS_PARASOL_LADY .string "PAIGE$", 8 @ pre-battle speech - ec_word LET_S - ec_word ENJOY - ec_word OUR - ec_word BATTLE - ec_word TOGETHER + .2byte EC_WORD_LET_S + .2byte EC_WORD_ENJOY + .2byte EC_WORD_OUR + .2byte EC_WORD_BATTLE + .2byte EC_WORD_TOGETHER .2byte -1 @ win speech - ec_word THAT_S_IT_EXCL + .2byte EC_WORD_THAT_S_IT_EXCL .2byte -1 .2byte -1 - ec_word THANK_YOU - ec_word VERY - ec_word MUCH + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_VERY + .2byte EC_WORD_MUCH @ loss speech - ec_word THAT_S_IT_EXCL + .2byte EC_WORD_THAT_S_IT_EXCL .2byte -1 .2byte -1 - ec_word DO - ec_word GO - ec_word ON + .2byte EC_WORD_DO + .2byte EC_WORD_GO + .2byte EC_WORD_ON .4byte gBattleFrontierTrainerMons_Paige @ 296 .4byte TRAINER_CLASS_BEAUTY .string "ANYA$", 8 @ pre-battle speech - ec_word I - ec_word DISLIKE - ec_word OH - ec_word SO - ec_word PRETTY - ec_word FASHION + .2byte EC_WORD_I + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_OH + .2byte EC_WORD_SO + .2byte EC_WORD_PRETTY + .2byte EC_WORD_FASHION @ win speech - ec_word FASHION - ec_word SHOULD - ec_word MATCH - ec_word THE - ec_word PERSON + .2byte EC_WORD_FASHION + .2byte EC_WORD_SHOULD + .2byte EC_WORD_MATCH + .2byte EC_WORD_THE + .2byte EC_WORD_PERSON .2byte -1 @ loss speech - ec_word PRETTY - ec_word COULD - ec_word BE - ec_word GOOD + .2byte EC_WORD_PRETTY + .2byte EC_WORD_COULD + .2byte EC_WORD_BE + .2byte EC_WORD_GOOD .2byte -1 .2byte -1 .4byte gBattleFrontierTrainerMons_Anya @@ -7726,51 +7726,51 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_BEAUTY .string "DAWN$", 8 @ pre-battle speech - ec_word I - ec_word GO - ec_word ALL - ec_word OUT - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_GO + .2byte EC_WORD_ALL + .2byte EC_WORD_OUT + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word DON_T - ec_word BE - ec_word A - ec_word BABY - ec_word EXCL + .2byte EC_WORD_DON_T + .2byte EC_WORD_BE + .2byte EC_WORD_A + .2byte EC_WORD_BABY + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word YOU - ec_word WON - ec_word EXCL - ec_word MOVE - ec_word ON - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_WON + .2byte EC_WORD_EXCL + .2byte EC_WORD_MOVE + .2byte EC_WORD_ON + .2byte EC_WORD_EXCL .4byte gBattleFrontierTrainerMons_Dawn @ 298 .4byte TRAINER_CLASS_AROMA_LADY .string "ABBY$", 8 @ pre-battle speech - ec_word I - ec_word LIKE - ec_word A - ec_word TRAINER - ec_word THAT_S - ec_word REFRESHING + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_A + .2byte EC_WORD_TRAINER + .2byte EC_WORD_THAT_S + .2byte EC_WORD_REFRESHING @ win speech - ec_word VICTORY - ec_word HAS - ec_word A - ec_move1 SWEET_SCENT - ec_word EXCL + .2byte EC_WORD_VICTORY + .2byte EC_WORD_HAS + .2byte EC_WORD_A + .2byte EC_MOVE(SWEET_SCENT) + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word WHAT - ec_word AN - ec_word AWFUL - ec_word STENCH - ec_word EXCL + .2byte EC_WORD_WHAT + .2byte EC_WORD_AN + .2byte EC_WORD_AWFUL + .2byte EC_WORD_STENCH + .2byte EC_WORD_EXCL .2byte -1 .4byte gBattleFrontierTrainerMons_Abby @@ -7778,24 +7778,24 @@ gBattleFrontierTrainers:: @ 85D5ACC .4byte TRAINER_CLASS_AROMA_LADY .string "GRETEL$", 8 @ pre-battle speech - ec_word I - ec_word CAUSE - ec_move1 OUTRAGE - ec_word AS - ec_word A - ec_word TRAINER -@ win speech - ec_word IT_S - ec_word ONLY - ec_word NATURAL - ec_word SEE_YA - ec_word BYE_BYE - ec_word EXCL -@ loss speech - ec_word IT_S - ec_word HARD - ec_word TO - ec_word BELIEVE - ec_word BUT - ec_word CONGRATS + .2byte EC_WORD_I + .2byte EC_WORD_CAUSE + .2byte EC_MOVE(OUTRAGE) + .2byte EC_WORD_AS + .2byte EC_WORD_A + .2byte EC_WORD_TRAINER +@ win speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_ONLY + .2byte EC_WORD_NATURAL + .2byte EC_WORD_SEE_YA + .2byte EC_WORD_BYE_BYE + .2byte EC_WORD_EXCL +@ loss speech + .2byte EC_WORD_IT_S + .2byte EC_WORD_HARD + .2byte EC_WORD_TO + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_BUT + .2byte EC_WORD_CONGRATS .4byte gBattleFrontierTrainerMons_Gretel diff --git a/data/battle_frontier/fallarbor_battle_tent_trainers.inc b/data/battle_frontier/fallarbor_battle_tent_trainers.inc index 049cca1ad..2574b7d86 100644 --- a/data/battle_frontier/fallarbor_battle_tent_trainers.inc +++ b/data/battle_frontier/fallarbor_battle_tent_trainers.inc @@ -4,103 +4,103 @@ gFallarborBattleTentTrainers:: @ 85DF084 .4byte TRAINER_CLASS_AROMA_LADY .string "AMBER$", 8 @ pre-battle speech - ec_word I - ec_word HAVE - ec_word TO - ec_word DIET - ec_word EVERY - ec_word DAY + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_DIET + .2byte EC_WORD_EVERY + .2byte EC_WORD_DAY @ win speech - ec_word A - ec_move1 NIGHTMARE - ec_word OF - ec_word SWEETS - ec_word SHOCKED - ec_word ME + .2byte EC_WORD_A + .2byte EC_MOVE(NIGHTMARE) + .2byte EC_WORD_OF + .2byte EC_WORD_SWEETS + .2byte EC_WORD_SHOCKED + .2byte EC_WORD_ME @ loss speech - ec_word IF - ec_word YOU - ec_word GIVE_UP - ec_word YOU - ec_word WILL - ec_word LOSE + .2byte EC_WORD_IF + .2byte EC_WORD_YOU + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_YOU + .2byte EC_WORD_WILL + .2byte EC_WORD_LOSE .4byte gFallarborBattleTentTrainerMons_Amber @ 1 .4byte TRAINER_CLASS_RUIN_MANIAC .string "JAVIER$", 8 @ pre-battle speech - ec_word I - ec_word NEVER - ec_word EVER - ec_word HAVE - ec_word ENOUGH - ec_word MONEY + .2byte EC_WORD_I + .2byte EC_WORD_NEVER + .2byte EC_WORD_EVER + .2byte EC_WORD_HAVE + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_MONEY @ win speech - ec_word I - ec_word WON - ec_word BUT - ec_word I - ec_word NEED - ec_word MONEY + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_MONEY @ loss speech - ec_word I - ec_word NEED - ec_word MONEY - ec_word FOR - ec_word A - ec_word BIKE + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_MONEY + .2byte EC_WORD_FOR + .2byte EC_WORD_A + .2byte EC_WORD_BIKE .4byte gFallarborBattleTentTrainerMons_Javier @ 2 .4byte TRAINER_CLASS_TUBER_1 .string "NATALIE$", 8 @ pre-battle speech - ec_word THE - ec_word WAY - ec_word I - ec_word BATTLE - ec_word IS - ec_word WEIRD + .2byte EC_WORD_THE + .2byte EC_WORD_WAY + .2byte EC_WORD_I + .2byte EC_WORD_BATTLE + .2byte EC_WORD_IS + .2byte EC_WORD_WEIRD @ win speech - ec_word YOU_RE - ec_word MUCH - ec_word TOO_WEAK - ec_word FOR - ec_word THIS - ec_word PLACE + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MUCH + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_FOR + .2byte EC_WORD_THIS + .2byte EC_WORD_PLACE @ loss speech - ec_word GIVE_ME - ec_word AN - ec_word EASY - ec_word MATCH - ec_word NEXT - ec_word TIME + .2byte EC_WORD_GIVE_ME + .2byte EC_WORD_AN + .2byte EC_WORD_EASY + .2byte EC_WORD_MATCH + .2byte EC_WORD_NEXT + .2byte EC_WORD_TIME .4byte gFallarborBattleTentTrainerMons_Natalie @ 3 .4byte TRAINER_CLASS_TUBER_2 .string "TREVE$", 8 @ pre-battle speech - ec_word LOOK - ec_word AT - ec_word MY - ec_move2 METRONOME - ec_word AND - ec_word SLEEP + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_MOVE2(METRONOME) + .2byte EC_WORD_AND + .2byte EC_WORD_SLEEP @ win speech - ec_word YEAH - ec_word EXCL - ec_move1 HYPNOSIS - ec_word IS - ec_word TOTALLY - ec_word GREAT + .2byte EC_WORD_YEAH + .2byte EC_WORD_EXCL + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_IS + .2byte EC_WORD_TOTALLY + .2byte EC_WORD_GREAT @ loss speech - ec_word MY - ec_move1 HYPNOSIS - ec_word DIDN_T - ec_word WORK - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_MOVE(HYPNOSIS) + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_WORK + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gFallarborBattleTentTrainerMons_Treve @@ -108,77 +108,77 @@ gFallarborBattleTentTrainers:: @ 85DF084 .4byte TRAINER_CLASS_LADY .string "ARIANNA$", 8 @ pre-battle speech - ec_word IF_I_WIN - ec_word GIVE_ME - ec_word POKEMON - ec_word FOR - ec_word MY - ec_word COLLECTION + .2byte EC_WORD_IF_I_WIN + .2byte EC_WORD_GIVE_ME + .2byte EC_WORD_POKEMON + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_COLLECTION @ win speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word TOO_WEAK - ec_word TO - ec_word COLLECT + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_TO + .2byte EC_WORD_COLLECT @ loss speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word SOMETHING - ec_word ELSE - ec_word ELLIPSIS + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_SOMETHING + .2byte EC_WORD_ELSE + .2byte EC_WORD_ELLIPSIS .4byte gFallarborBattleTentTrainerMons_Arianna @ 5 .4byte TRAINER_CLASS_BEAUTY .string "JADYN$", 8 @ pre-battle speech - ec_word MY - ec_word NAME - ec_word IS - ec_word REALLY - ec_word A - ec_word MYSTERY + .2byte EC_WORD_MY + .2byte EC_WORD_NAME + .2byte EC_WORD_IS + .2byte EC_WORD_REALLY + .2byte EC_WORD_A + .2byte EC_WORD_MYSTERY @ win speech - ec_word MY - ec_word NAME - ec_word GOES - ec_word ON - ec_word A - ec_word MYSTERY + .2byte EC_WORD_MY + .2byte EC_WORD_NAME + .2byte EC_WORD_GOES + .2byte EC_WORD_ON + .2byte EC_WORD_A + .2byte EC_WORD_MYSTERY @ loss speech - ec_word MY - ec_word NAME - ec_word QUES - ec_word I_AM - ec_word YOUR - ec_word MOTHER + .2byte EC_WORD_MY + .2byte EC_WORD_NAME + .2byte EC_WORD_QUES + .2byte EC_WORD_I_AM + .2byte EC_WORD_YOUR + .2byte EC_WORD_MOTHER .4byte gFallarborBattleTentTrainerMons_Jadyn @ 6 .4byte TRAINER_CLASS_RICH_BOY .string "GERARDO$", 8 @ pre-battle speech - ec_word I_AM - ec_word THE - ec_word BEST - ec_word HERO - ec_word EVER - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_THE + .2byte EC_WORD_BEST + .2byte EC_WORD_HERO + .2byte EC_WORD_EVER + .2byte EC_WORD_EXCL @ win speech - ec_word SEE - ec_word WHAT - ec_word I - ec_word MEAN - ec_word QUES + .2byte EC_WORD_SEE + .2byte EC_WORD_WHAT + .2byte EC_WORD_I + .2byte EC_WORD_MEAN + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word HUH_QUES - ec_word YOU - ec_word WERE - ec_word RIGHT - ec_word QUES + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_WERE + .2byte EC_WORD_RIGHT + .2byte EC_WORD_QUES .2byte -1 .4byte gFallarborBattleTentTrainerMons_Gerardo @@ -186,285 +186,285 @@ gFallarborBattleTentTrainers:: @ 85DF084 .4byte TRAINER_CLASS_POKEMANIAC .string "JONN$", 8 @ pre-battle speech - ec_word THE - ec_word WORLD - ec_move2 SUPERPOWER - ec_move2 STOMP - ec_word CONTEST - ec_word EXCL_EXCL + .2byte EC_WORD_THE + .2byte EC_WORD_WORLD + .2byte EC_MOVE2(SUPERPOWER) + .2byte EC_MOVE2(STOMP) + .2byte EC_WORD_CONTEST + .2byte EC_WORD_EXCL_EXCL @ win speech - ec_word I_AM - ec_word NO_1 - ec_word EXCL_EXCL - ec_word HEAR - ec_word ME - ec_move2 ROAR + .2byte EC_WORD_I_AM + .2byte EC_WORD_NO_1 + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_HEAR + .2byte EC_WORD_ME + .2byte EC_MOVE2(ROAR) @ loss speech - ec_word I - ec_word GIVE_UP - ec_word EXCL - ec_word YOU_RE - ec_word NO_1 - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_NO_1 + .2byte EC_WORD_EXCL .4byte gFallarborBattleTentTrainerMons_Jonn @ 8 .4byte TRAINER_CLASS_SWIMMER_M .string "ESTEBAN$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word A - ec_word GOOD - ec_word TRAINER - ec_word QUES - ec_word UNBELIEVABLE + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_GOOD + .2byte EC_WORD_TRAINER + .2byte EC_WORD_QUES + .2byte EC_WORD_UNBELIEVABLE @ win speech - ec_word YOU_RE - ec_word SOME - ec_word PUSHOVER - ec_word OF - ec_word A - ec_word TRAINER + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SOME + .2byte EC_WORD_PUSHOVER + .2byte EC_WORD_OF + .2byte EC_WORD_A + .2byte EC_WORD_TRAINER @ loss speech - ec_word YOU_RE - ec_word MUCH - ec_word TOO - ec_word MUCH - ec_word FOR - ec_word ME + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MUCH + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_FOR + .2byte EC_WORD_ME .4byte gFallarborBattleTentTrainerMons_Esteban @ 9 .4byte TRAINER_CLASS_CAMPER .string "JAMESON$", 8 @ pre-battle speech - ec_word MY - ec_word POKEMON - ec_word ARE - ec_word SILKY - ec_word SMOOTH - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_SILKY + .2byte EC_WORD_SMOOTH + .2byte EC_WORD_EXCL @ win speech - ec_word MY - ec_word SILKY - ec_word SMOOTH - ec_word POKEMON - ec_word RULE - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_SILKY + .2byte EC_WORD_SMOOTH + .2byte EC_WORD_POKEMON + .2byte EC_WORD_RULE + .2byte EC_WORD_EXCL @ loss speech - ec_word MY - ec_word POKEMON - ec_move2 STRUGGLE - ec_word IN - ec_word YOUR - ec_word STICKY_HOLD + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_MOVE2(STRUGGLE) + .2byte EC_WORD_IN + .2byte EC_WORD_YOUR + .2byte EC_WORD_STICKY_HOLD .4byte gFallarborBattleTentTrainerMons_Jameson @ 10 .4byte TRAINER_CLASS_BUG_MANIAC .string "ALANZO$", 8 @ pre-battle speech - ec_move2 FORESIGHT - ec_word IS - ec_word A - ec_word POWER - ec_word I - ec_word HAVE + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_WORD_POWER + .2byte EC_WORD_I + .2byte EC_WORD_HAVE @ win speech - ec_word YOU_RE - ec_word OBLIVIOUS - ec_word ABOUT - ec_move2 FORESIGHT - ec_word EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_OBLIVIOUS + .2byte EC_WORD_ABOUT + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word MY - ec_move2 FORESIGHT - ec_word IS - ec_word ALWAYS - ec_word RIGHT - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_IS + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_RIGHT + .2byte EC_WORD_EXCL .4byte gFallarborBattleTentTrainerMons_Alanzo @ 11 .4byte TRAINER_CLASS_GENTLEMAN .string "HOWARD$", 8 @ pre-battle speech - ec_word YOUR - ec_word POKEMON - ec_word CAN_T - ec_word BEAT - ec_word ME + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_CAN_T + .2byte EC_WORD_BEAT + .2byte EC_WORD_ME .2byte -1 @ win speech - ec_word YOU - ec_word COULDN_T - ec_word WIN - ec_word COULD - ec_word YOU - ec_word QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_COULDN_T + .2byte EC_WORD_WIN + .2byte EC_WORD_COULD + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES @ loss speech - ec_word YOU - ec_word WOULD - ec_word GO - ec_word ALL - ec_word OUT - ec_word ELLIPSIS + .2byte EC_WORD_YOU + .2byte EC_WORD_WOULD + .2byte EC_WORD_GO + .2byte EC_WORD_ALL + .2byte EC_WORD_OUT + .2byte EC_WORD_ELLIPSIS .4byte gFallarborBattleTentTrainerMons_Howard @ 12 .4byte TRAINER_CLASS_GUITARIST .string "CONRAD$", 8 @ pre-battle speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word PRETTY - ec_word WILD - ec_word EXCL + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_PRETTY + .2byte EC_WORD_WILD + .2byte EC_WORD_EXCL @ win speech - ec_word WHOAH - ec_word EXCL_EXCL + .2byte EC_WORD_WHOAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word LET_S - ec_word DANCE - ec_word EXCL + .2byte EC_WORD_LET_S + .2byte EC_WORD_DANCE + .2byte EC_WORD_EXCL @ loss speech - ec_word MY - ec_word MUSIC - ec_word WILL - ec_word PLAY - ec_word ON - ec_word ELLIPSIS + .2byte EC_WORD_MY + .2byte EC_WORD_MUSIC + .2byte EC_WORD_WILL + .2byte EC_WORD_PLAY + .2byte EC_WORD_ON + .2byte EC_WORD_ELLIPSIS .4byte gFallarborBattleTentTrainerMons_Conrad @ 13 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "MAKENNA$", 8 @ pre-battle speech - ec_word SHOW - ec_word ME - ec_word THAT - ec_word YOU - ec_word MEAN - ec_word IT + .2byte EC_WORD_SHOW + .2byte EC_WORD_ME + .2byte EC_WORD_THAT + .2byte EC_WORD_YOU + .2byte EC_WORD_MEAN + .2byte EC_WORD_IT @ win speech - ec_word THAT_S - ec_word WHY - ec_word I - ec_word STUDY - ec_word EVERY - ec_word DAY + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHY + .2byte EC_WORD_I + .2byte EC_WORD_STUDY + .2byte EC_WORD_EVERY + .2byte EC_WORD_DAY @ loss speech - ec_word AWW - ec_word I - ec_word STUDY - ec_word EVERY - ec_word DAY - ec_word TOO + .2byte EC_WORD_AWW + .2byte EC_WORD_I + .2byte EC_WORD_STUDY + .2byte EC_WORD_EVERY + .2byte EC_WORD_DAY + .2byte EC_WORD_TOO .4byte gFallarborBattleTentTrainerMons_Makenna @ 14 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "BRAYAN$", 8 @ pre-battle speech - ec_word CAN - ec_word YOU - ec_word SEE - ec_word MY - ec_word POWER - ec_word QUES + .2byte EC_WORD_CAN + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_MY + .2byte EC_WORD_POWER + .2byte EC_WORD_QUES @ win speech - ec_word HOW - ec_word BORING - ec_word ELLIPSIS - ec_word THIS - ec_word IS - ec_word GOOD_BYE + .2byte EC_WORD_HOW + .2byte EC_WORD_BORING + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_GOOD_BYE @ loss speech - ec_word AM - ec_word I - ec_word THE - ec_word WEAK - ec_word TRAINER - ec_word QUES + .2byte EC_WORD_AM + .2byte EC_WORD_I + .2byte EC_WORD_THE + .2byte EC_WORD_WEAK + .2byte EC_WORD_TRAINER + .2byte EC_WORD_QUES .4byte gFallarborBattleTentTrainerMons_Brayan @ 15 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "MARIANA$", 8 @ pre-battle speech - ec_word A - ec_word LIE - ec_word CAN - ec_word BE - ec_word KIND - ec_word ELLIPSIS + .2byte EC_WORD_A + .2byte EC_WORD_LIE + .2byte EC_WORD_CAN + .2byte EC_WORD_BE + .2byte EC_WORD_KIND + .2byte EC_WORD_ELLIPSIS @ win speech - ec_word THIS - ec_word IS - ec_word LIKE - ec_word THE - ec_word SUNDAY - ec_word COMICS + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_LIKE + .2byte EC_WORD_THE + .2byte EC_WORD_SUNDAY + .2byte EC_WORD_COMICS @ loss speech - ec_word THIS - ec_word IS - ec_word LIKE - ec_word FROM - ec_word A - ec_word MOVIE + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_LIKE + .2byte EC_WORD_FROM + .2byte EC_WORD_A + .2byte EC_WORD_MOVIE .4byte gFallarborBattleTentTrainerMons_Mariana @ 16 .4byte TRAINER_CLASS_POKEFAN_1 .string "SHELDON$", 8 @ pre-battle speech - ec_word A - ec_word POKEMON - ec_word TEACHER - ec_word GETS - ec_word NO - ec_move2 REST + .2byte EC_WORD_A + .2byte EC_WORD_POKEMON + .2byte EC_WORD_TEACHER + .2byte EC_WORD_GETS + .2byte EC_WORD_NO + .2byte EC_MOVE2(REST) @ win speech - ec_word MY - ec_word SMARTNESS - ec_word GETS - ec_word ME - ec_word EASY - ec_word WINS + .2byte EC_WORD_MY + .2byte EC_WORD_SMARTNESS + .2byte EC_WORD_GETS + .2byte EC_WORD_ME + .2byte EC_WORD_EASY + .2byte EC_WORD_WINS @ loss speech - ec_word I - ec_word HAVE - ec_word TO - ec_word GO - ec_word WORK - ec_word BYE_BYE + .2byte EC_WORD_I + .2byte EC_WORD_HAVE + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_WORK + .2byte EC_WORD_BYE_BYE .4byte gFallarborBattleTentTrainerMons_Sheldon @ 17 .4byte TRAINER_CLASS_POKEFAN_2 .string "GIANNA$", 8 @ pre-battle speech - ec_word AHAHA - ec_word YES - ec_word EXCL - ec_word LOVEY_DOVEY - ec_word POKEMON - ec_word WORLD + .2byte EC_WORD_AHAHA + .2byte EC_WORD_YES + .2byte EC_WORD_EXCL + .2byte EC_WORD_LOVEY_DOVEY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_WORLD @ win speech - ec_word MY - ec_word SHINE - ec_word IS - ec_word MAKING - ec_word THINGS - ec_word BETTER + .2byte EC_WORD_MY + .2byte EC_WORD_SHINE + .2byte EC_WORD_IS + .2byte EC_WORD_MAKING + .2byte EC_WORD_THINGS + .2byte EC_WORD_BETTER @ loss speech - ec_word DO - ec_word YOU - ec_word DISLIKE - ec_word POKEMON - ec_word QUES + .2byte EC_WORD_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_POKEMON + .2byte EC_WORD_QUES .2byte -1 .4byte gFallarborBattleTentTrainerMons_Gianna @@ -472,257 +472,257 @@ gFallarborBattleTentTrainers:: @ 85DF084 .4byte TRAINER_CLASS_EXPERT_1 .string "YAHIR$", 8 @ pre-battle speech - ec_word YOU - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word COME_ON - ec_word EXCL + .2byte EC_WORD_YOU + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_COME_ON + .2byte EC_WORD_EXCL @ win speech - ec_word YOU - ec_word NEED - ec_word TO - ec_word TRAIN - ec_word A_LOT - ec_word MORE + .2byte EC_WORD_YOU + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_TRAIN + .2byte EC_WORD_A_LOT + .2byte EC_WORD_MORE @ loss speech - ec_word NOT - ec_word ENOUGH - ec_word ELLIPSIS - ec_word JUST - ec_word NOT - ec_word ENOUGH + .2byte EC_WORD_NOT + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_JUST + .2byte EC_WORD_NOT + .2byte EC_WORD_ENOUGH .4byte gFallarborBattleTentTrainerMons_Yahir @ 19 .4byte TRAINER_CLASS_EXPERT_2 .string "BRITNEY$", 8 @ pre-battle speech - ec_word IT - ec_word SEEMS - ec_word THAT - ec_word YOU_RE - ec_word QUITE - ec_word GOOD + .2byte EC_WORD_IT + .2byte EC_WORD_SEEMS + .2byte EC_WORD_THAT + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_QUITE + .2byte EC_WORD_GOOD @ win speech - ec_word YOU_RE - ec_word A - ec_word LUKEWARM - ec_word TALENT - ec_word AT - ec_word BEST + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_LUKEWARM + .2byte EC_WORD_TALENT + .2byte EC_WORD_AT + .2byte EC_WORD_BEST @ loss speech - ec_word YOU_RE - ec_word A - ec_word COOL - ec_word HERO - ec_word AT - ec_word THIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_COOL + .2byte EC_WORD_HERO + .2byte EC_WORD_AT + .2byte EC_WORD_THIS .4byte gFallarborBattleTentTrainerMons_Britney @ 20 .4byte TRAINER_CLASS_YOUNGSTER .string "HECTER$", 8 @ pre-battle speech - ec_word MY - ec_move2 HIDDEN_POWER - ec_word IS - ec_word EXCITING - ec_word ME - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_MOVE2(HIDDEN_POWER) + .2byte EC_WORD_IS + .2byte EC_WORD_EXCITING + .2byte EC_WORD_ME + .2byte EC_WORD_EXCL @ win speech - ec_word YEEHAW_EXCL - ec_word LET_S - ec_word HAVE - ec_word A - ec_move2 HIDDEN_POWER - ec_word PARTY + .2byte EC_WORD_YEEHAW_EXCL + .2byte EC_WORD_LET_S + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_MOVE2(HIDDEN_POWER) + .2byte EC_WORD_PARTY @ loss speech - ec_word WAAAH - ec_word EXCL - ec_word DON_T - ec_word YOU - ec_move2 MIMIC - ec_word ME + .2byte EC_WORD_WAAAH + .2byte EC_WORD_EXCL + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_MOVE2(MIMIC) + .2byte EC_WORD_ME .4byte gFallarborBattleTentTrainerMons_Hecter @ 21 .4byte TRAINER_CLASS_FISHERMAN .string "TANNOR$", 8 @ pre-battle speech - ec_word YOU - ec_word HAVE - ec_word GOT - ec_word TO - ec_word BE - ec_word JOKING + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_GOT + .2byte EC_WORD_TO + .2byte EC_WORD_BE + .2byte EC_WORD_JOKING @ win speech - ec_word YOU_RE - ec_word THE - ec_word BEST - ec_word AT - ec_word BEING - ec_word FUNNY + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_THE + .2byte EC_WORD_BEST + .2byte EC_WORD_AT + .2byte EC_WORD_BEING + .2byte EC_WORD_FUNNY @ loss speech - ec_word YOU - ec_word WEREN_T - ec_word BEING - ec_word FUNNY - ec_word AT - ec_word ALL + .2byte EC_WORD_YOU + .2byte EC_WORD_WEREN_T + .2byte EC_WORD_BEING + .2byte EC_WORD_FUNNY + .2byte EC_WORD_AT + .2byte EC_WORD_ALL .4byte gFallarborBattleTentTrainerMons_Tannor @ 22 .4byte TRAINER_CLASS_BIRD_KEEPER .string "BENJI$", 8 @ pre-battle speech - ec_word YOU - ec_word DON_T - ec_word THINK - ec_word VERY - ec_word FAST - ec_word HUH_QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_THINK + .2byte EC_WORD_VERY + .2byte EC_WORD_FAST + .2byte EC_WORD_HUH_QUES @ win speech - ec_word SORRY - ec_word EXCL - ec_word I - ec_word DIDN_T - ec_word MEAN - ec_word YOU + .2byte EC_WORD_SORRY + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_MEAN + .2byte EC_WORD_YOU @ loss speech - ec_word YOU - ec_word LEFT - ec_word ME - ec_word FEELING - ec_word SAD - ec_word ELLIPSIS + .2byte EC_WORD_YOU + .2byte EC_WORD_LEFT + .2byte EC_WORD_ME + .2byte EC_WORD_FEELING + .2byte EC_WORD_SAD + .2byte EC_WORD_ELLIPSIS .4byte gFallarborBattleTentTrainerMons_Benji @ 23 .4byte TRAINER_CLASS_NINJA_BOY .string "RORY$", 8 @ pre-battle speech - ec_word DON_T - ec_word CAUSE - ec_word AN - ec_move1 UPROAR - ec_word YOU - ec_word EXCL + .2byte EC_WORD_DON_T + .2byte EC_WORD_CAUSE + .2byte EC_WORD_AN + .2byte EC_MOVE(UPROAR) + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL @ win speech - ec_word I - ec_word DON_T - ec_word NEED - ec_word AN - ec_move1 UPROAR - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_NEED + .2byte EC_WORD_AN + .2byte EC_MOVE(UPROAR) + .2byte EC_WORD_EXCL @ loss speech - ec_word I_AM - ec_word GOING - ec_word TO - ec_word CAUSE - ec_word AN - ec_move1 UPROAR + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_CAUSE + .2byte EC_WORD_AN + .2byte EC_MOVE(UPROAR) .4byte gFallarborBattleTentTrainerMons_Rory @ 24 .4byte TRAINER_CLASS_PARASOL_LADY .string "ELEANOR$", 8 @ pre-battle speech - ec_word I - ec_word REALLY - ec_word WANT - ec_word TO - ec_word PARTY + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_PARTY .2byte -1 @ win speech - ec_word A - ec_word TRENDY - ec_word PARTY - ec_word WOULD - ec_word BE - ec_word REFRESHING + .2byte EC_WORD_A + .2byte EC_WORD_TRENDY + .2byte EC_WORD_PARTY + .2byte EC_WORD_WOULD + .2byte EC_WORD_BE + .2byte EC_WORD_REFRESHING @ loss speech - ec_word DON_T - ec_word YOU - ec_word LIKE - ec_word TO - ec_word PARTY - ec_word QUES + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_LIKE + .2byte EC_WORD_TO + .2byte EC_WORD_PARTY + .2byte EC_WORD_QUES .4byte gFallarborBattleTentTrainerMons_Eleanor @ 25 .4byte TRAINER_CLASS_SWIMMER_F .string "EVELYN$", 8 @ pre-battle speech - ec_word MY - ec_word PC - ec_word IS - ec_word MY - ec_word SECRET_BASE - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_PC + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_SECRET_BASE + .2byte EC_WORD_EXCL @ win speech - ec_word IT_S - ec_word ALL - ec_word SECRET - ec_word ON - ec_word MY - ec_word PC + .2byte EC_WORD_IT_S + .2byte EC_WORD_ALL + .2byte EC_WORD_SECRET + .2byte EC_WORD_ON + .2byte EC_WORD_MY + .2byte EC_WORD_PC @ loss speech - ec_word NO - ec_word EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word REJECT - ec_word THIS + .2byte EC_WORD_I + .2byte EC_WORD_REJECT + .2byte EC_WORD_THIS .4byte gFallarborBattleTentTrainerMons_Evelyn @ 26 .4byte TRAINER_CLASS_PICNICKER .string "ARIELLE$", 8 @ pre-battle speech - ec_word IT_S - ec_word NOT_VERY - ec_word PRETTY - ec_word BUT - ec_word I - ec_word TRY + .2byte EC_WORD_IT_S + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_PRETTY + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_TRY @ win speech - ec_word WE_RE - ec_word NOT_VERY - ec_word PRETTY - ec_word BUT - ec_word WE_RE - ec_word GREAT + .2byte EC_WORD_WE_RE + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_PRETTY + .2byte EC_WORD_BUT + .2byte EC_WORD_WE_RE + .2byte EC_WORD_GREAT @ loss speech - ec_word THAT_WAS - ec_word PRETTY - ec_word MEAN - ec_word OF - ec_word YOU - ec_word EXCL + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_PRETTY + .2byte EC_WORD_MEAN + .2byte EC_WORD_OF + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL .4byte gFallarborBattleTentTrainerMons_Arielle @ 27 .4byte TRAINER_CLASS_SAILOR .string "CONNAR$", 8 @ pre-battle speech - ec_word I_AM - ec_word NOT - ec_word STRONG - ec_word ENOUGH - ec_word FOR - ec_word THIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_STRONG + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_FOR + .2byte EC_WORD_THIS @ win speech - ec_word DO - ec_word YOU - ec_word THINK - ec_word YOU_RE - ec_word OK_QUES + .2byte EC_WORD_DO + .2byte EC_WORD_YOU + .2byte EC_WORD_THINK + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_OK_QUES .2byte -1 @ loss speech - ec_word GOOD_BYE - ec_word AND - ec_word THANK_YOU + .2byte EC_WORD_GOOD_BYE + .2byte EC_WORD_AND + .2byte EC_WORD_THANK_YOU .2byte -1 .2byte -1 .2byte -1 @@ -732,50 +732,50 @@ gFallarborBattleTentTrainers:: @ 85DF084 .4byte TRAINER_CLASS_COLLECTOR .string "MAURICE$", 8 @ pre-battle speech - ec_word THERE - ec_word IS - ec_word NO - ec_word RADIO - ec_word OR - ec_word TELEVISION + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_NO + .2byte EC_WORD_RADIO + .2byte EC_WORD_OR + .2byte EC_WORD_TELEVISION @ win speech - ec_word BUT - ec_word THERE - ec_word IS - ec_word A_LOT - ec_word OF - ec_word POKEMON + .2byte EC_WORD_BUT + .2byte EC_WORD_THERE + .2byte EC_WORD_IS + .2byte EC_WORD_A_LOT + .2byte EC_WORD_OF + .2byte EC_WORD_POKEMON @ loss speech - ec_word I - ec_word CAN_T - ec_word ENJOY - ec_word MYSELF - ec_word WITHOUT - ec_word MONEY + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_ENJOY + .2byte EC_WORD_MYSELF + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_MONEY .4byte gFallarborBattleTentTrainerMons_Maurice @ 29 .4byte TRAINER_CLASS_LASS .string "KIANNA$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word TO - ec_word GO - ec_word DEPT_STORE - ec_word SHOPPING + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_DEPT_STORE + .2byte EC_WORD_SHOPPING @ win speech - ec_word I - ec_word DISLIKE - ec_word SHOPPING - ec_word ALONE + .2byte EC_WORD_I + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_SHOPPING + .2byte EC_WORD_ALONE .2byte -1 .2byte -1 @ loss speech - ec_word WANT - ec_word TO - ec_word GO - ec_word SHOPPING - ec_word TOGETHER - ec_word QUES + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_SHOPPING + .2byte EC_WORD_TOGETHER + .2byte EC_WORD_QUES .4byte gFallarborBattleTentTrainerMons_Kianna diff --git a/data/battle_frontier/slateport_battle_tent_trainers.inc b/data/battle_frontier/slateport_battle_tent_trainers.inc index 00b874c07..9d6900149 100644 --- a/data/battle_frontier/slateport_battle_tent_trainers.inc +++ b/data/battle_frontier/slateport_battle_tent_trainers.inc @@ -4,205 +4,205 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_AROMA_LADY .string "JOLIE$", 8 @ pre-battle speech - ec_word WHAT - ec_word WILL - ec_word I - ec_word BE - ec_word TOMORROW - ec_word QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_WILL + .2byte EC_WORD_I + .2byte EC_WORD_BE + .2byte EC_WORD_TOMORROW + .2byte EC_WORD_QUES @ win speech - ec_word I_AM - ec_word FEELING - ec_word LIKE - ec_word IT_S - ec_word FRIDAY - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_LIKE + .2byte EC_WORD_IT_S + .2byte EC_WORD_FRIDAY + .2byte EC_WORD_EXCL @ loss speech - ec_word I_AM - ec_word FEELING - ec_word LIKE - ec_word IT_S - ec_word MONDAY - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_LIKE + .2byte EC_WORD_IT_S + .2byte EC_WORD_MONDAY + .2byte EC_WORD_ELLIPSIS .4byte gSlateportBattleTentTrainerMons_Jolie @ 1 .4byte TRAINER_CLASS_RUIN_MANIAC .string "MALACHI$", 8 @ pre-battle speech - ec_word BAD - ec_word NEWS - ec_word EXCL - ec_word IT_S - ec_word A - ec_move1 SAND_TOMB + .2byte EC_WORD_BAD + .2byte EC_WORD_NEWS + .2byte EC_WORD_EXCL + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_MOVE(SAND_TOMB) @ win speech - ec_word YEEHAW_EXCL + .2byte EC_WORD_YEEHAW_EXCL .2byte -1 .2byte -1 - ec_word I_VE - ec_word DONE - ec_word IT + .2byte EC_WORD_I_VE + .2byte EC_WORD_DONE + .2byte EC_WORD_IT @ loss speech - ec_word I_VE - ec_word LOST - ec_word IN - ec_word THIS - ec_move1 SAND_TOMB - ec_word ELLIPSIS + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST + .2byte EC_WORD_IN + .2byte EC_WORD_THIS + .2byte EC_MOVE(SAND_TOMB) + .2byte EC_WORD_ELLIPSIS .4byte gSlateportBattleTentTrainerMons_Malachi @ 2 .4byte TRAINER_CLASS_TUBER_1 .string "KELSIE$", 8 @ pre-battle speech - ec_word GO - ec_word EXCL_EXCL - ec_word MY - ec_word BATH - ec_word POKEMON - ec_word EXCL_EXCL + .2byte EC_WORD_GO + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_BATH + .2byte EC_WORD_POKEMON + .2byte EC_WORD_EXCL_EXCL @ win speech - ec_word YAHOO - ec_word EXCL_EXCL - ec_word MY - ec_word BATH - ec_word POKEMON - ec_word EXCL_EXCL + .2byte EC_WORD_YAHOO + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_BATH + .2byte EC_WORD_POKEMON + .2byte EC_WORD_EXCL_EXCL @ loss speech - ec_word GWAH - ec_word EXCL_EXCL - ec_word MY - ec_word BATH - ec_word POKEMON - ec_word EXCL_EXCL + .2byte EC_WORD_GWAH + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_BATH + .2byte EC_WORD_POKEMON + .2byte EC_WORD_EXCL_EXCL .4byte gSlateportBattleTentTrainerMons_Kelsie @ 3 .4byte TRAINER_CLASS_TUBER_2 .string "DAVON$", 8 @ pre-battle speech - ec_word YEAH_YEAH - ec_word EXCL_EXCL + .2byte EC_WORD_YEAH_YEAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word GREAT - ec_move1 WHIRLPOOL - ec_word ISN_T_IT_QUES + .2byte EC_WORD_GREAT + .2byte EC_MOVE(WHIRLPOOL) + .2byte EC_WORD_ISN_T_IT_QUES @ win speech - ec_word THAT_WAS - ec_word LIKE - ec_word A - ec_move1 WHIRLPOOL - ec_word YEAH_YEAH - ec_word EXCL_EXCL + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_LIKE + .2byte EC_WORD_A + .2byte EC_MOVE(WHIRLPOOL) + .2byte EC_WORD_YEAH_YEAH + .2byte EC_WORD_EXCL_EXCL @ loss speech - ec_word DON_T - ec_word GET - ec_move2 BEAT_UP - ec_word IN - ec_word THAT - ec_move1 WHIRLPOOL + .2byte EC_WORD_DON_T + .2byte EC_WORD_GET + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_IN + .2byte EC_WORD_THAT + .2byte EC_MOVE(WHIRLPOOL) .4byte gSlateportBattleTentTrainerMons_Davon @ 4 .4byte TRAINER_CLASS_LADY .string "GLENDA$", 8 @ pre-battle speech - ec_word CONVERSATION - ec_word CAN - ec_word WAIT - ec_word UNTIL - ec_word I - ec_word WIN + .2byte EC_WORD_CONVERSATION + .2byte EC_WORD_CAN + .2byte EC_WORD_WAIT + .2byte EC_WORD_UNTIL + .2byte EC_WORD_I + .2byte EC_WORD_WIN @ win speech - ec_word FABULOUS - ec_word EXCL - ec_word I_AM - ec_word GOING - ec_word TO - ec_word ROCK + .2byte EC_WORD_FABULOUS + .2byte EC_WORD_EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_ROCK @ loss speech - ec_word NO - ec_word EXCL + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word WASN_T - ec_word SERIOUS + .2byte EC_WORD_I + .2byte EC_WORD_WASN_T + .2byte EC_WORD_SERIOUS .4byte gSlateportBattleTentTrainerMons_Glenda @ 5 .4byte TRAINER_CLASS_BEAUTY .string "HELENA$", 8 @ pre-battle speech - ec_word DOES - ec_word MY - ec_word BEAUTY - ec_word INTIMIDATE - ec_word YOU - ec_word QUES + .2byte EC_WORD_DOES + .2byte EC_WORD_MY + .2byte EC_WORD_BEAUTY + .2byte EC_WORD_INTIMIDATE + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES @ win speech - ec_word I_AM - ec_word SO - ec_word SORRY - ec_word BUT - ec_word YOU_RE - ec_word BORING + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_SORRY + .2byte EC_WORD_BUT + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_BORING @ loss speech - ec_word I - ec_word DO - ec_word SO - ec_word ENJOY - ec_word THIS - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_SO + .2byte EC_WORD_ENJOY + .2byte EC_WORD_THIS + .2byte EC_WORD_EXCL .4byte gSlateportBattleTentTrainerMons_Helena @ 6 .4byte TRAINER_CLASS_RICH_BOY .string "RODOLFO$", 8 @ pre-battle speech - ec_word GO - ec_word GET - ec_word A - ec_pokemon1 WHISCASH - ec_word FOR - ec_word ME + .2byte EC_WORD_GO + .2byte EC_WORD_GET + .2byte EC_WORD_A + .2byte EC_POKEMON(WHISCASH) + .2byte EC_WORD_FOR + .2byte EC_WORD_ME @ win speech - ec_word AWW - ec_word YOU - ec_word DON_T - ec_word HAVE - ec_word A - ec_pokemon1 WHISCASH + .2byte EC_WORD_AWW + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_POKEMON(WHISCASH) @ loss speech - ec_word PLEASE - ec_word I - ec_word NEED - ec_word A - ec_pokemon1 WHISCASH - ec_word BADLY + .2byte EC_WORD_PLEASE + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_A + .2byte EC_POKEMON(WHISCASH) + .2byte EC_WORD_BADLY .4byte gSlateportBattleTentTrainerMons_Rodolfo @ 7 .4byte TRAINER_CLASS_POKEMANIAC .string "DAVION$", 8 @ pre-battle speech - ec_word GRAAAH - ec_word GRAAAH - ec_word EXCL_EXCL - ec_word GRAAAH - ec_word GRAAAH - ec_word EXCL_EXCL + .2byte EC_WORD_GRAAAH + .2byte EC_WORD_GRAAAH + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_GRAAAH + .2byte EC_WORD_GRAAAH + .2byte EC_WORD_EXCL_EXCL @ win speech - ec_move2 ROAR - ec_word EXCL + .2byte EC_MOVE2(ROAR) + .2byte EC_WORD_EXCL .2byte -1 - ec_move2 ROAR - ec_word EXCL_EXCL + .2byte EC_MOVE2(ROAR) + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ loss speech - ec_word URGH - ec_word WAAAH - ec_word EXCL_EXCL + .2byte EC_WORD_URGH + .2byte EC_WORD_WAAAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 .2byte -1 .2byte -1 @@ -212,285 +212,285 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_SWIMMER_M .string "KENDALL$", 8 @ pre-battle speech - ec_word A_LITTLE - ec_move2 PETAL_DANCE - ec_word TO - ec_word PLEASE - ec_word YOU - ec_word EXCL + .2byte EC_WORD_A_LITTLE + .2byte EC_MOVE2(PETAL_DANCE) + .2byte EC_WORD_TO + .2byte EC_WORD_PLEASE + .2byte EC_WORD_YOU + .2byte EC_WORD_EXCL @ win speech - ec_word I - ec_word DO - ec_word THIS - ec_word ONLY - ec_word FOR - ec_word WORK + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_THIS + .2byte EC_WORD_ONLY + .2byte EC_WORD_FOR + .2byte EC_WORD_WORK @ loss speech - ec_word HOW - ec_word COULD - ec_word YOU - ec_move2 POUND - ec_word ME - ec_word QUES + .2byte EC_WORD_HOW + .2byte EC_WORD_COULD + .2byte EC_WORD_YOU + .2byte EC_MOVE2(POUND) + .2byte EC_WORD_ME + .2byte EC_WORD_QUES .4byte gSlateportBattleTentTrainerMons_Kendall @ 9 .4byte TRAINER_CLASS_CAMPER .string "COLTEN$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word TO - ec_word GO - ec_word RUN - ec_word AROUND + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_GO + .2byte EC_WORD_RUN + .2byte EC_WORD_AROUND @ win speech - ec_word YAY - ec_word EXCL - ec_word WANT - ec_word TO - ec_word RUN - ec_word QUES + .2byte EC_WORD_YAY + .2byte EC_WORD_EXCL + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_RUN + .2byte EC_WORD_QUES @ loss speech - ec_word A - ec_word SWIFT_SWIM - ec_word WOULD - ec_word BE - ec_word GOOD - ec_word TOO + .2byte EC_WORD_A + .2byte EC_WORD_SWIFT_SWIM + .2byte EC_WORD_WOULD + .2byte EC_WORD_BE + .2byte EC_WORD_GOOD + .2byte EC_WORD_TOO .4byte gSlateportBattleTentTrainerMons_Colten @ 10 .4byte TRAINER_CLASS_BUG_MANIAC .string "IRVIN$", 8 @ pre-battle speech - ec_word HAVE - ec_word A - ec_word LOOK - ec_word AT - ec_word MY - ec_move1 CONFUSE_RAY + .2byte EC_WORD_HAVE + .2byte EC_WORD_A + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_MOVE(CONFUSE_RAY) @ win speech - ec_word YAHOO - ec_word MY - ec_move1 CONFUSE_RAY - ec_word IS - ec_word THE - ec_word BEST + .2byte EC_WORD_YAHOO + .2byte EC_WORD_MY + .2byte EC_MOVE(CONFUSE_RAY) + .2byte EC_WORD_IS + .2byte EC_WORD_THE + .2byte EC_WORD_BEST @ loss speech - ec_word GWAH - ec_word EXCL_EXCL + .2byte EC_WORD_GWAH + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word I_AM - ec_word SORRY - ec_word EXCL + .2byte EC_WORD_I_AM + .2byte EC_WORD_SORRY + .2byte EC_WORD_EXCL .4byte gSlateportBattleTentTrainerMons_Irvin @ 11 .4byte TRAINER_CLASS_GENTLEMAN .string "SHAUN$", 8 @ pre-battle speech - ec_word LISTEN - ec_word ELLIPSIS - ec_word YOU - ec_word AREN_T - ec_word VERY - ec_word GOOD + .2byte EC_WORD_LISTEN + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_YOU + .2byte EC_WORD_AREN_T + .2byte EC_WORD_VERY + .2byte EC_WORD_GOOD @ win speech - ec_word YOU - ec_word SEE - ec_word QUES - ec_word I - ec_word WAS - ec_word RIGHT + .2byte EC_WORD_YOU + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_I + .2byte EC_WORD_WAS + .2byte EC_WORD_RIGHT @ loss speech - ec_word YES - ec_word YES - ec_word ELLIPSIS - ec_word YOU_RE - ec_word QUITE - ec_word SOMETHING + .2byte EC_WORD_YES + .2byte EC_WORD_YES + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_QUITE + .2byte EC_WORD_SOMETHING .4byte gSlateportBattleTentTrainerMons_Shaun @ 12 .4byte TRAINER_CLASS_GUITARIST .string "KYLER$", 8 @ pre-battle speech - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word QUES + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_QUES @ win speech - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word YAY + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_YAY @ loss speech - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word WOW + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_WOW .4byte gSlateportBattleTentTrainerMons_Kyler @ 13 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "MAGGIE$", 8 @ pre-battle speech - ec_pokemon1 VULPIX - ec_pokemon1 XATU - ec_pokemon2 UMBREON - ec_word ELLIPSIS - ec_word UM - ec_word ELLIPSIS + .2byte EC_POKEMON(VULPIX) + .2byte EC_POKEMON(XATU) + .2byte EC_POKEMON2(UMBREON) + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_UM + .2byte EC_WORD_ELLIPSIS @ win speech - ec_pokemon1 NOSEPASS - ec_word ELLIPSIS - ec_word UM - ec_pokemon1 SEVIPER - ec_word EXCL + .2byte EC_POKEMON(NOSEPASS) + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_UM + .2byte EC_POKEMON(SEVIPER) + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_pokemon1 NOSEPASS - ec_word ELLIPSIS - ec_word UM - ec_pokemon2 SNORLAX - ec_word ELLIPSIS - ec_word UH_OH + .2byte EC_POKEMON(NOSEPASS) + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_UM + .2byte EC_POKEMON2(SNORLAX) + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_UH_OH .4byte gSlateportBattleTentTrainerMons_Maggie @ 14 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "STEPHON$", 8 @ pre-battle speech - ec_word I_AM - ec_word GOING - ec_word TO - ec_word ENJOY - ec_word AN - ec_word EGG + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_ENJOY + .2byte EC_WORD_AN + .2byte EC_WORD_EGG @ win speech - ec_word I - ec_word WILL - ec_word ENJOY - ec_word THIS - ec_word TASTY - ec_word VICTORY + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_ENJOY + .2byte EC_WORD_THIS + .2byte EC_WORD_TASTY + .2byte EC_WORD_VICTORY @ loss speech - ec_word AWFUL - ec_word EXCL_EXCL + .2byte EC_WORD_AWFUL + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word JUST - ec_word AWFUL - ec_word EXCL_EXCL + .2byte EC_WORD_JUST + .2byte EC_WORD_AWFUL + .2byte EC_WORD_EXCL_EXCL .4byte gSlateportBattleTentTrainerMons_Stephon @ 15 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "REBECCA$", 8 @ pre-battle speech - ec_word THAT - ec_word EGG - ec_word HAS - ec_word A - ec_word TASTY - ec_word SHINE + .2byte EC_WORD_THAT + .2byte EC_WORD_EGG + .2byte EC_WORD_HAS + .2byte EC_WORD_A + .2byte EC_WORD_TASTY + .2byte EC_WORD_SHINE @ win speech - ec_word I - ec_word CAN_T - ec_word EXCL - ec_word SMELL - ec_word THAT - ec_word STENCH + .2byte EC_WORD_I + .2byte EC_WORD_CAN_T + .2byte EC_WORD_EXCL + .2byte EC_WORD_SMELL + .2byte EC_WORD_THAT + .2byte EC_WORD_STENCH @ loss speech - ec_word YOU - ec_word CAN_T - ec_word MAKE - ec_word ME - ec_word STOP - ec_word ELLIPSIS + .2byte EC_WORD_YOU + .2byte EC_WORD_CAN_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_WORD_STOP + .2byte EC_WORD_ELLIPSIS .4byte gSlateportBattleTentTrainerMons_Rebecca @ 16 .4byte TRAINER_CLASS_POKEFAN_1 .string "REGGIE$", 8 @ pre-battle speech - ec_word POKEMON - ec_word COME - ec_word BEFORE - ec_word MONEY - ec_word OR - ec_word FAMILY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_COME + .2byte EC_WORD_BEFORE + .2byte EC_WORD_MONEY + .2byte EC_WORD_OR + .2byte EC_WORD_FAMILY @ win speech - ec_word THAT_S - ec_word WHAT - ec_word IS - ec_word MAKING - ec_word ME - ec_word STRONG + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_IS + .2byte EC_WORD_MAKING + .2byte EC_WORD_ME + .2byte EC_WORD_STRONG @ loss speech - ec_word THAT_S - ec_word WHY - ec_word I_AM - ec_word SO - ec_word THICK - ec_word ELLIPSIS + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHY + .2byte EC_WORD_I_AM + .2byte EC_WORD_SO + .2byte EC_WORD_THICK + .2byte EC_WORD_ELLIPSIS .4byte gSlateportBattleTentTrainerMons_Reggie @ 17 .4byte TRAINER_CLASS_POKEFAN_2 .string "JANAE$", 8 @ pre-battle speech - ec_word I - ec_word JUST - ec_word ADORE - ec_word YOUR - ec_word TOUGH - ec_word LOOK + .2byte EC_WORD_I + .2byte EC_WORD_JUST + .2byte EC_WORD_ADORE + .2byte EC_WORD_YOUR + .2byte EC_WORD_TOUGH + .2byte EC_WORD_LOOK @ win speech - ec_word I - ec_word LIKE - ec_word HOW - ec_word YOU - ec_move2 STRUGGLE + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_WORD_HOW + .2byte EC_WORD_YOU + .2byte EC_MOVE2(STRUGGLE) .2byte -1 @ loss speech - ec_word YOU_RE - ec_word A - ec_word MEAN - ec_word AND - ec_word AWFUL - ec_word TRAINER + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_A + .2byte EC_WORD_MEAN + .2byte EC_WORD_AND + .2byte EC_WORD_AWFUL + .2byte EC_WORD_TRAINER .4byte gSlateportBattleTentTrainerMons_Janae @ 18 .4byte TRAINER_CLASS_EXPERT_1 .string "CAIDEN$", 8 @ pre-battle speech - ec_word MY - ec_move2 CURSE - ec_word WILL - ec_word BREAK - ec_word YOUR - ec_word SPIRIT + .2byte EC_WORD_MY + .2byte EC_MOVE2(CURSE) + .2byte EC_WORD_WILL + .2byte EC_WORD_BREAK + .2byte EC_WORD_YOUR + .2byte EC_WORD_SPIRIT @ win speech - ec_move2 CURSE - ec_word QUES - ec_word IT_S - ec_word A - ec_word LIE - ec_word ELLIPSIS + .2byte EC_MOVE2(CURSE) + .2byte EC_WORD_QUES + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_LIE + .2byte EC_WORD_ELLIPSIS @ loss speech - ec_word MY - ec_move2 CURSE - ec_word WILL - ec_word LAST - ec_word FOREVER + .2byte EC_WORD_MY + .2byte EC_MOVE2(CURSE) + .2byte EC_WORD_WILL + .2byte EC_WORD_LAST + .2byte EC_WORD_FOREVER .2byte -1 .4byte gSlateportBattleTentTrainerMons_Caiden @@ -498,77 +498,77 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_EXPERT_2 .string "KIRSTEN$", 8 @ pre-battle speech - ec_word HUH_QUES - ec_word A - ec_word BATTLE - ec_word YOU - ec_word SAID - ec_word QUES + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_YOU + .2byte EC_WORD_SAID + .2byte EC_WORD_QUES @ win speech - ec_word HUH_QUES - ec_word STRONG - ec_word BUT - ec_word NOT - ec_word STRONG - ec_word ENOUGH + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_STRONG + .2byte EC_WORD_BUT + .2byte EC_WORD_NOT + .2byte EC_WORD_STRONG + .2byte EC_WORD_ENOUGH @ loss speech - ec_word HUH_QUES - ec_word I - ec_word SURRENDER - ec_word TO - ec_word YOUR - ec_move1 STRENGTH + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_I + .2byte EC_WORD_SURRENDER + .2byte EC_WORD_TO + .2byte EC_WORD_YOUR + .2byte EC_MOVE(STRENGTH) .4byte gSlateportBattleTentTrainerMons_Kirsten @ 20 .4byte TRAINER_CLASS_YOUNGSTER .string "KURTIS$", 8 @ pre-battle speech - ec_word SORRY - ec_word YOU_RE - ec_word GOING - ec_word TO - ec_word GET - ec_move2 BEAT_UP + .2byte EC_WORD_SORRY + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_GET + .2byte EC_MOVE2(BEAT_UP) @ win speech - ec_word I - ec_word SAID - ec_word WE - ec_word WOULD - ec_move2 POUND - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_SAID + .2byte EC_WORD_WE + .2byte EC_WORD_WOULD + .2byte EC_MOVE2(POUND) + .2byte EC_WORD_YOU @ loss speech - ec_word HOW - ec_word DID - ec_word I - ec_word GET - ec_move2 BEAT_UP - ec_word QUES + .2byte EC_WORD_HOW + .2byte EC_WORD_DID + .2byte EC_WORD_I + .2byte EC_WORD_GET + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_QUES .4byte gSlateportBattleTentTrainerMons_Kurtis @ 21 .4byte TRAINER_CLASS_FISHERMAN .string "STEFAN$", 8 @ pre-battle speech - ec_word I - ec_word ONLY - ec_word WANT - ec_word CUTE - ec_word POKEMON + .2byte EC_WORD_I + .2byte EC_WORD_ONLY + .2byte EC_WORD_WANT + .2byte EC_WORD_CUTE + .2byte EC_WORD_POKEMON .2byte -1 @ win speech - ec_word WHAT - ec_word IS - ec_word IT - ec_word TO - ec_word YOU - ec_word QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_IS + .2byte EC_WORD_IT + .2byte EC_WORD_TO + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES @ loss speech - ec_word YOU_RE - ec_word KIND - ec_word OF - ec_word AWESOME - ec_word ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_KIND + .2byte EC_WORD_OF + .2byte EC_WORD_AWESOME + .2byte EC_WORD_ELLIPSIS .2byte -1 .4byte gSlateportBattleTentTrainerMons_Stefan @@ -576,51 +576,51 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_BIRD_KEEPER .string "AVERY$", 8 @ pre-battle speech - ec_word TOYS - ec_word EXCL - ec_word I - ec_word NEED - ec_word MORE - ec_word TOYS + .2byte EC_WORD_TOYS + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_MORE + .2byte EC_WORD_TOYS @ win speech - ec_word I - ec_word NEED - ec_word SOME - ec_word EASY - ec_word MONEY - ec_word FAST + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_SOME + .2byte EC_WORD_EASY + .2byte EC_WORD_MONEY + .2byte EC_WORD_FAST @ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word WORK - ec_word FOR - ec_word MONEY + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_WORK + .2byte EC_WORD_FOR + .2byte EC_WORD_MONEY .4byte gSlateportBattleTentTrainerMons_Avery @ 23 .4byte TRAINER_CLASS_NINJA_BOY .string "DWANE$", 8 @ pre-battle speech - ec_word MMM - ec_word TASTY - ec_word ELLIPSIS - ec_word WONDER - ec_word WHAT - ec_word QUES + .2byte EC_WORD_MMM + .2byte EC_WORD_TASTY + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_WONDER + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES @ win speech - ec_word MMM - ec_word MMM - ec_word ELLIPSIS - ec_word YOU - ec_word DON_T - ec_word KNOW + .2byte EC_WORD_MMM + .2byte EC_WORD_MMM + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_KNOW @ loss speech - ec_word MMM - ec_word MMM - ec_word ELLIPSIS - ec_word OH_YEAH - ec_word THIS_IS_IT_EXCL + .2byte EC_WORD_MMM + .2byte EC_WORD_MMM + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_THIS_IS_IT_EXCL .2byte -1 .4byte gSlateportBattleTentTrainerMons_Dwane @@ -628,21 +628,21 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_PARASOL_LADY .string "MCKENNA$", 8 @ pre-battle speech - ec_word I - ec_word DISLIKE - ec_word SMALL - ec_word TALK - ec_word LET_S - ec_word GO + .2byte EC_WORD_I + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_SMALL + .2byte EC_WORD_TALK + .2byte EC_WORD_LET_S + .2byte EC_WORD_GO @ win speech - ec_word YUP - ec_word THAT_S - ec_word THAT + .2byte EC_WORD_YUP + .2byte EC_WORD_THAT_S + .2byte EC_WORD_THAT .2byte -1 .2byte -1 .2byte -1 @ loss speech - ec_word KTHX_BYE + .2byte EC_WORD_KTHX_BYE .2byte -1 .2byte -1 .2byte -1 @@ -654,51 +654,51 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_SWIMMER_F .string "CAMRYN$", 8 @ pre-battle speech - ec_word MR - ec_word JUDGE - ec_word YOU - ec_word HAVE - ec_word OUR - ec_word TRUST + .2byte EC_WORD_MR + .2byte EC_WORD_JUDGE + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_OUR + .2byte EC_WORD_TRUST @ win speech - ec_word YES_SIR_EXCL - ec_word WE_RE - ec_word NO_1 - ec_word IN - ec_word THIS - ec_word CONTEST + .2byte EC_WORD_YES_SIR_EXCL + .2byte EC_WORD_WE_RE + .2byte EC_WORD_NO_1 + .2byte EC_WORD_IN + .2byte EC_WORD_THIS + .2byte EC_WORD_CONTEST @ loss speech - ec_word I - ec_word WON_T - ec_word GIVE_UP - ec_word MY - ec_word IDOL - ec_word DREAM + .2byte EC_WORD_I + .2byte EC_WORD_WON_T + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_MY + .2byte EC_WORD_IDOL + .2byte EC_WORD_DREAM .4byte gSlateportBattleTentTrainerMons_Camryn @ 26 .4byte TRAINER_CLASS_PICNICKER .string "NATASHA$", 8 @ pre-battle speech - ec_word COME_OVER - ec_word TO - ec_word MY - ec_word PLACE - ec_word OK_QUES + .2byte EC_WORD_COME_OVER + .2byte EC_WORD_TO + .2byte EC_WORD_MY + .2byte EC_WORD_PLACE + .2byte EC_WORD_OK_QUES .2byte -1 @ win speech - ec_word COME_ON - ec_word OVER - ec_word IT - ec_word WILL - ec_word BE - ec_word GREAT + .2byte EC_WORD_COME_ON + .2byte EC_WORD_OVER + .2byte EC_WORD_IT + .2byte EC_WORD_WILL + .2byte EC_WORD_BE + .2byte EC_WORD_GREAT @ loss speech - ec_word AWW - ec_word WON_T - ec_word YOU - ec_word COME_OVER - ec_word QUES + .2byte EC_WORD_AWW + .2byte EC_WORD_WON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_COME_OVER + .2byte EC_WORD_QUES .2byte -1 .4byte gSlateportBattleTentTrainerMons_Natasha @@ -706,76 +706,76 @@ gSlateportBattleTentTrainers:: @ 85DDA14 .4byte TRAINER_CLASS_SAILOR .string "AUSTYN$", 8 @ pre-battle speech - ec_word I - ec_word DON_T - ec_word CARE - ec_word HOW - ec_word WE - ec_word MATCH_UP + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_CARE + .2byte EC_WORD_HOW + .2byte EC_WORD_WE + .2byte EC_WORD_MATCH_UP @ win speech - ec_word HAH - ec_word BACK - ec_word TO - ec_word SCHOOL - ec_word FOR - ec_word YOU + .2byte EC_WORD_HAH + .2byte EC_WORD_BACK + .2byte EC_WORD_TO + .2byte EC_WORD_SCHOOL + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU @ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word STUDY - ec_word MY - ec_word LESSONS + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_STUDY + .2byte EC_WORD_MY + .2byte EC_WORD_LESSONS .4byte gSlateportBattleTentTrainerMons_Austyn @ 28 .4byte TRAINER_CLASS_COLLECTOR .string "DONOVAN$", 8 @ pre-battle speech - ec_word OH - ec_word I_AM - ec_word FEELING - ec_word SLIMY - ec_word ALL - ec_word OVER + .2byte EC_WORD_OH + .2byte EC_WORD_I_AM + .2byte EC_WORD_FEELING + .2byte EC_WORD_SLIMY + .2byte EC_WORD_ALL + .2byte EC_WORD_OVER @ win speech - ec_word YOU_RE - ec_word GOING - ec_word DOWN - ec_word THE - ec_move2 MEGA_DRAIN - ec_word HAHAHA + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOING + .2byte EC_WORD_DOWN + .2byte EC_WORD_THE + .2byte EC_MOVE2(MEGA_DRAIN) + .2byte EC_WORD_HAHAHA @ loss speech - ec_word I_AM - ec_word NATURALLY - ec_word SLIMY - ec_word THAT_S - ec_word WHAT - ec_word I_AM + .2byte EC_WORD_I_AM + .2byte EC_WORD_NATURALLY + .2byte EC_WORD_SLIMY + .2byte EC_WORD_THAT_S + .2byte EC_WORD_WHAT + .2byte EC_WORD_I_AM .4byte gSlateportBattleTentTrainerMons_Donovan @ 29 .4byte TRAINER_CLASS_LASS .string "TAMIA$", 8 @ pre-battle speech - ec_word I_AM - ec_word ANGRY - ec_word WITH - ec_word MY - ec_word FATHER - ec_word ELLIPSIS + .2byte EC_WORD_I_AM + .2byte EC_WORD_ANGRY + .2byte EC_WORD_WITH + .2byte EC_WORD_MY + .2byte EC_WORD_FATHER + .2byte EC_WORD_ELLIPSIS @ win speech - ec_word I - ec_word REALLY - ec_word DISLIKE - ec_word MY - ec_word FATHER - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_MY + .2byte EC_WORD_FATHER + .2byte EC_WORD_EXCL @ loss speech - ec_word I - ec_word JUST - ec_word SO - ec_word ADORE - ec_word MY - ec_word FATHER + .2byte EC_WORD_I + .2byte EC_WORD_JUST + .2byte EC_WORD_SO + .2byte EC_WORD_ADORE + .2byte EC_WORD_MY + .2byte EC_WORD_FATHER .4byte gSlateportBattleTentTrainerMons_Tamia diff --git a/data/battle_frontier/verdanturf_battle_tent_trainers.inc b/data/battle_frontier/verdanturf_battle_tent_trainers.inc index af9a03910..aa028c600 100644 --- a/data/battle_frontier/verdanturf_battle_tent_trainers.inc +++ b/data/battle_frontier/verdanturf_battle_tent_trainers.inc @@ -4,413 +4,413 @@ gVerdanturfBattleTentTrainers:: @ 85DE610 .4byte TRAINER_CLASS_AROMA_LADY .string "BRENNA$", 8 @ pre-battle speech - ec_word NO - ec_word DAYS - ec_word GO - ec_word WITHOUT - ec_word MY - ec_move1 FAKE_TEARS + .2byte EC_WORD_NO + .2byte EC_WORD_DAYS + .2byte EC_WORD_GO + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_MY + .2byte EC_MOVE(FAKE_TEARS) @ win speech - ec_word OH - ec_word THAT_WAS - ec_word SO - ec_word REFRESHING - ec_word EXCL + .2byte EC_WORD_OH + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_SO + .2byte EC_WORD_REFRESHING + .2byte EC_WORD_EXCL .2byte -1 @ loss speech - ec_word ALL - ec_word I - ec_word EVER - ec_word GET - ec_word IS - ec_move1 TORMENT + .2byte EC_WORD_ALL + .2byte EC_WORD_I + .2byte EC_WORD_EVER + .2byte EC_WORD_GET + .2byte EC_WORD_IS + .2byte EC_MOVE(TORMENT) .4byte gVerdanturfBattleTentTrainerMons_Brenna @ 1 .4byte TRAINER_CLASS_RUIN_MANIAC .string "DILAN$", 8 @ pre-battle speech - ec_word YOU - ec_word DON_T - ec_word KNOW - ec_word HOW - ec_word BORED - ec_word I_AM + .2byte EC_WORD_YOU + .2byte EC_WORD_DON_T + .2byte EC_WORD_KNOW + .2byte EC_WORD_HOW + .2byte EC_WORD_BORED + .2byte EC_WORD_I_AM @ win speech - ec_word LOSING - ec_word ISN_T - ec_word EXCITING - ec_word AT - ec_word ALL - ec_word ELLIPSIS + .2byte EC_WORD_LOSING + .2byte EC_WORD_ISN_T + .2byte EC_WORD_EXCITING + .2byte EC_WORD_AT + .2byte EC_WORD_ALL + .2byte EC_WORD_ELLIPSIS @ loss speech - ec_word EXCITING - ec_word EXCL_EXCL - ec_word BYE_BYE - ec_word TO - ec_word BEING - ec_word BORED + .2byte EC_WORD_EXCITING + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_BYE_BYE + .2byte EC_WORD_TO + .2byte EC_WORD_BEING + .2byte EC_WORD_BORED .4byte gVerdanturfBattleTentTrainerMons_Dilan @ 2 .4byte TRAINER_CLASS_TUBER_1 .string "ELIANA$", 8 @ pre-battle speech - ec_word I_AM - ec_word GOING - ec_word ON - ec_word A - ec_word VACATION - ec_word SOON + .2byte EC_WORD_I_AM + .2byte EC_WORD_GOING + .2byte EC_WORD_ON + .2byte EC_WORD_A + .2byte EC_WORD_VACATION + .2byte EC_WORD_SOON @ win speech - ec_word I - ec_word NEED - ec_word TO - ec_word GET - ec_word SOME - ec_word MONEY + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_GET + .2byte EC_WORD_SOME + .2byte EC_WORD_MONEY @ loss speech - ec_word NO - ec_word SLEEP - ec_word UNTIL - ec_word I - ec_word GET - ec_word HOME + .2byte EC_WORD_NO + .2byte EC_WORD_SLEEP + .2byte EC_WORD_UNTIL + .2byte EC_WORD_I + .2byte EC_WORD_GET + .2byte EC_WORD_HOME .4byte gVerdanturfBattleTentTrainerMons_Eliana @ 3 .4byte TRAINER_CLASS_TUBER_2 .string "MARKUS$", 8 @ pre-battle speech - ec_word I_AM - ec_word SMART - ec_word EXCL - ec_word IF_I_LOSE - ec_word I - ec_move1 SELF_DESTRUCT + .2byte EC_WORD_I_AM + .2byte EC_WORD_SMART + .2byte EC_WORD_EXCL + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_I + .2byte EC_MOVE(SELF_DESTRUCT) @ win speech - ec_word IT_S - ec_word A - ec_word NON_STOP - ec_move2 EXPLOSION - ec_word OF - ec_word JOY + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_NON_STOP + .2byte EC_MOVE2(EXPLOSION) + .2byte EC_WORD_OF + .2byte EC_WORD_JOY @ loss speech - ec_word I_VE - ec_word LOST - ec_word ELLIPSIS - ec_word TIME - ec_word TO - ec_move1 SELF_DESTRUCT + .2byte EC_WORD_I_VE + .2byte EC_WORD_LOST + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_TIME + .2byte EC_WORD_TO + .2byte EC_MOVE(SELF_DESTRUCT) .4byte gVerdanturfBattleTentTrainerMons_Markus @ 4 .4byte TRAINER_CLASS_LADY .string "CAITLYN$", 8 @ pre-battle speech - ec_word I_AM - ec_word BORED - ec_word OF - ec_word BEING - ec_word AN - ec_word IDOL + .2byte EC_WORD_I_AM + .2byte EC_WORD_BORED + .2byte EC_WORD_OF + .2byte EC_WORD_BEING + .2byte EC_WORD_AN + .2byte EC_WORD_IDOL @ win speech - ec_word A - ec_word BATTLE - ec_word IS - ec_word BEST - ec_word FOR - ec_word HAPPINESS + .2byte EC_WORD_A + .2byte EC_WORD_BATTLE + .2byte EC_WORD_IS + .2byte EC_WORD_BEST + .2byte EC_WORD_FOR + .2byte EC_WORD_HAPPINESS @ loss speech - ec_word LOSING - ec_word DOESN_T - ec_word BUG - ec_word ME - ec_word AT - ec_word ALL + .2byte EC_WORD_LOSING + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_BUG + .2byte EC_WORD_ME + .2byte EC_WORD_AT + .2byte EC_WORD_ALL .4byte gVerdanturfBattleTentTrainerMons_Caitlyn @ 5 .4byte TRAINER_CLASS_BEAUTY .string "DESIREE$", 8 @ pre-battle speech - ec_word DOESN_T - ec_word MY - ec_word BEAUTY - ec_move1 ASTONISH - ec_word YOU - ec_word QUES + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_MY + .2byte EC_WORD_BEAUTY + .2byte EC_MOVE(ASTONISH) + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES @ win speech - ec_word DID - ec_word I - ec_word INTIMIDATE - ec_word YOU - ec_word QUES + .2byte EC_WORD_DID + .2byte EC_WORD_I + .2byte EC_WORD_INTIMIDATE + .2byte EC_WORD_YOU + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word MY - ec_word BEAUTY - ec_word DID - ec_word NOTHING - ec_word FOR - ec_word YOU + .2byte EC_WORD_MY + .2byte EC_WORD_BEAUTY + .2byte EC_WORD_DID + .2byte EC_WORD_NOTHING + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU .4byte gVerdanturfBattleTentTrainerMons_Desiree @ 6 .4byte TRAINER_CLASS_RICH_BOY .string "RONALD$", 8 @ pre-battle speech - ec_word COME_ON - ec_word I - ec_word WILL - ec_word BATTLE - ec_word SERIOUSLY + .2byte EC_WORD_COME_ON + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SERIOUSLY .2byte -1 @ win speech - ec_word GIVE_UP - ec_word QUES + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_QUES .2byte -1 - ec_word THAT_S - ec_word REALLY - ec_word WEAK + .2byte EC_WORD_THAT_S + .2byte EC_WORD_REALLY + .2byte EC_WORD_WEAK @ loss speech - ec_word I - ec_word NEED - ec_word TO - ec_word DO - ec_word A - ec_move2 BATON_PASS + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_TO + .2byte EC_WORD_DO + .2byte EC_WORD_A + .2byte EC_MOVE2(BATON_PASS) .4byte gVerdanturfBattleTentTrainerMons_Ronald @ 7 .4byte TRAINER_CLASS_POKEMANIAC .string "ASHTEN$", 8 @ pre-battle speech - ec_word OH_YEAH - ec_word ANOTHER - ec_word EXCITING - ec_word BATTLE - ec_word EXCL + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_EXCITING + .2byte EC_WORD_BATTLE + .2byte EC_WORD_EXCL .2byte -1 @ win speech - ec_word YOUR - ec_word POKEMON - ec_word ARE - ec_word WIMPY - ec_word AND - ec_word BORING + .2byte EC_WORD_YOUR + .2byte EC_WORD_POKEMON + .2byte EC_WORD_ARE + .2byte EC_WORD_WIMPY + .2byte EC_WORD_AND + .2byte EC_WORD_BORING @ loss speech - ec_word THAT_WAS - ec_word AN - ec_word EXCITING - ec_word LOSS - ec_word WOW - ec_word EXCL + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_AN + .2byte EC_WORD_EXCITING + .2byte EC_WORD_LOSS + .2byte EC_WORD_WOW + .2byte EC_WORD_EXCL .4byte gVerdanturfBattleTentTrainerMons_Ashten @ 8 .4byte TRAINER_CLASS_SWIMMER_M .string "GERARD$", 8 @ pre-battle speech - ec_word LOOK - ec_word AT - ec_word MY - ec_word SUPER - ec_move2 TEETER_DANCE - ec_word EXCL + .2byte EC_WORD_LOOK + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_WORD_SUPER + .2byte EC_MOVE2(TEETER_DANCE) + .2byte EC_WORD_EXCL @ win speech - ec_word THAT_WAS - ec_word HARD - ec_word ELLIPSIS - ec_word AM - ec_word I - ec_word OK_QUES + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_HARD + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_AM + .2byte EC_WORD_I + .2byte EC_WORD_OK_QUES @ loss speech - ec_word I - ec_word WON_T - ec_word FORGIVE - ec_word YOU - ec_word FOR - ec_word THAT + .2byte EC_WORD_I + .2byte EC_WORD_WON_T + .2byte EC_WORD_FORGIVE + .2byte EC_WORD_YOU + .2byte EC_WORD_FOR + .2byte EC_WORD_THAT .4byte gVerdanturfBattleTentTrainerMons_Gerard @ 9 .4byte TRAINER_CLASS_CAMPER .string "BRADLY$", 8 @ pre-battle speech - ec_word IT_S - ec_word LONESOME - ec_word BUT - ec_word I - ec_word VACATION - ec_word ALONE + .2byte EC_WORD_IT_S + .2byte EC_WORD_LONESOME + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_VACATION + .2byte EC_WORD_ALONE @ win speech - ec_word I - ec_word WILL - ec_move1 WITHDRAW - ec_word INSIDE - ec_word MY - ec_word SHELL_ARMOR + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_MOVE(WITHDRAW) + .2byte EC_WORD_INSIDE + .2byte EC_WORD_MY + .2byte EC_WORD_SHELL_ARMOR @ loss speech - ec_word OH - ec_word ELLIPSIS + .2byte EC_WORD_OH + .2byte EC_WORD_ELLIPSIS .2byte -1 - ec_word ALONE - ec_word AS - ec_word ALWAYS + .2byte EC_WORD_ALONE + .2byte EC_WORD_AS + .2byte EC_WORD_ALWAYS .4byte gVerdanturfBattleTentTrainerMons_Bradly @ 10 .4byte TRAINER_CLASS_BUG_MANIAC .string "DENNIS$", 8 @ pre-battle speech - ec_word ARE - ec_word YOU - ec_word REALLY - ec_word STRONG - ec_word QUES + .2byte EC_WORD_ARE + .2byte EC_WORD_YOU + .2byte EC_WORD_REALLY + .2byte EC_WORD_STRONG + .2byte EC_WORD_QUES .2byte -1 @ win speech - ec_word WAHAHAHA - ec_word EXCL + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL .2byte -1 - ec_word WAHAHAHA - ec_word EXCL_EXCL + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_EXCL_EXCL .2byte -1 @ loss speech - ec_word NICE - ec_word GOING - ec_word EXCL - ec_word I - ec_word WAS - ec_word CHILD_S_PLAY + .2byte EC_WORD_NICE + .2byte EC_WORD_GOING + .2byte EC_WORD_EXCL + .2byte EC_WORD_I + .2byte EC_WORD_WAS + .2byte EC_WORD_CHILD_S_PLAY .4byte gVerdanturfBattleTentTrainerMons_Dennis @ 11 .4byte TRAINER_CLASS_GENTLEMAN .string "PRESTIN$", 8 @ pre-battle speech - ec_word THIS - ec_word IS - ec_word A - ec_move1 NIGHTMARE - ec_word FOR - ec_word YOU + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_A + .2byte EC_MOVE(NIGHTMARE) + .2byte EC_WORD_FOR + .2byte EC_WORD_YOU @ win speech - ec_word FORGIVE - ec_word ME - ec_word ELLIPSIS - ec_word IT_S - ec_word A - ec_word DREAM + .2byte EC_WORD_FORGIVE + .2byte EC_WORD_ME + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_IT_S + .2byte EC_WORD_A + .2byte EC_WORD_DREAM @ loss speech - ec_word I - ec_word WANT - ec_word TO - ec_word WAKE_UP - ec_word FROM - ec_word THIS + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_TO + .2byte EC_WORD_WAKE_UP + .2byte EC_WORD_FROM + .2byte EC_WORD_THIS .4byte gVerdanturfBattleTentTrainerMons_Prestin @ 12 .4byte TRAINER_CLASS_GUITARIST .string "ERNESTO$", 8 @ pre-battle speech - ec_word THIS - ec_word PARTY - ec_word GOES - ec_word ON - ec_word FOREVER - ec_word EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_PARTY + .2byte EC_WORD_GOES + .2byte EC_WORD_ON + .2byte EC_WORD_FOREVER + .2byte EC_WORD_EXCL @ win speech - ec_word THE - ec_word MUSIC - ec_word PLAYS - ec_word ON - ec_word WITHOUT - ec_word END + .2byte EC_WORD_THE + .2byte EC_WORD_MUSIC + .2byte EC_WORD_PLAYS + .2byte EC_WORD_ON + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_END @ loss speech - ec_word NO - ec_word EXCL - ec_word THE - ec_word MUSIC - ec_word CAN_T - ec_word STOP + .2byte EC_WORD_NO + .2byte EC_WORD_EXCL + .2byte EC_WORD_THE + .2byte EC_WORD_MUSIC + .2byte EC_WORD_CAN_T + .2byte EC_WORD_STOP .4byte gVerdanturfBattleTentTrainerMons_Ernesto @ 13 .4byte TRAINER_CLASS_SCHOOL_KID_2 .string "NALA$", 8 @ pre-battle speech - ec_word I - ec_word WANT - ec_word THE - ec_word WORLD - ec_word MOVIE - ec_word COLLECTION + .2byte EC_WORD_I + .2byte EC_WORD_WANT + .2byte EC_WORD_THE + .2byte EC_WORD_WORLD + .2byte EC_WORD_MOVIE + .2byte EC_WORD_COLLECTION @ win speech - ec_word I - ec_word DON_T - ec_word LIKE - ec_word RADIO - ec_word VERY - ec_word MUCH + .2byte EC_WORD_I + .2byte EC_WORD_DON_T + .2byte EC_WORD_LIKE + .2byte EC_WORD_RADIO + .2byte EC_WORD_VERY + .2byte EC_WORD_MUCH @ loss speech - ec_word I - ec_word REFUSE - ec_word TO - ec_word BELIEVE - ec_word THIS - ec_word EXCL + .2byte EC_WORD_I + .2byte EC_WORD_REFUSE + .2byte EC_WORD_TO + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_THIS + .2byte EC_WORD_EXCL .4byte gVerdanturfBattleTentTrainerMons_Nala @ 14 .4byte TRAINER_CLASS_COOLTRAINER_1 .string "DARNELL$", 8 @ pre-battle speech - ec_word I - ec_word WILL - ec_word GO_EASY - ec_word ON - ec_word YOU + .2byte EC_WORD_I + .2byte EC_WORD_WILL + .2byte EC_WORD_GO_EASY + .2byte EC_WORD_ON + .2byte EC_WORD_YOU .2byte -1 @ win speech - ec_word YOUR - ec_move2 FRUSTRATION - ec_word SHOULD - ec_word BE - ec_word HIDDEN - ec_word AWAY + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(FRUSTRATION) + .2byte EC_WORD_SHOULD + .2byte EC_WORD_BE + .2byte EC_WORD_HIDDEN + .2byte EC_WORD_AWAY @ loss speech - ec_word YOU_RE - ec_word TOO - ec_word MUCH - ec_word TO - ec_word TAKE - ec_word ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_TOO + .2byte EC_WORD_MUCH + .2byte EC_WORD_TO + .2byte EC_WORD_TAKE + .2byte EC_WORD_ELLIPSIS .4byte gVerdanturfBattleTentTrainerMons_Darnell @ 15 .4byte TRAINER_CLASS_COOLTRAINER_2 .string "ASHLYN$", 8 @ pre-battle speech - ec_word I - ec_word LOOK - ec_word TOUGH - ec_word DO - ec_word I - ec_word QUES + .2byte EC_WORD_I + .2byte EC_WORD_LOOK + .2byte EC_WORD_TOUGH + .2byte EC_WORD_DO + .2byte EC_WORD_I + .2byte EC_WORD_QUES @ win speech - ec_word I_AM - ec_word NOT - ec_word OVER - ec_word YOUR - ec_move2 TAUNT - ec_word YET + .2byte EC_WORD_I_AM + .2byte EC_WORD_NOT + .2byte EC_WORD_OVER + .2byte EC_WORD_YOUR + .2byte EC_MOVE2(TAUNT) + .2byte EC_WORD_YET @ loss speech - ec_word YOU_RE - ec_word MEAN - ec_word EXCL_EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MEAN + .2byte EC_WORD_EXCL_EXCL .2byte -1 .2byte -1 .2byte -1 @@ -420,48 +420,48 @@ gVerdanturfBattleTentTrainers:: @ 85DE610 .4byte TRAINER_CLASS_POKEFAN_1 .string "ADDISON$", 8 @ pre-battle speech - ec_word YES - ec_word EXCL + .2byte EC_WORD_YES + .2byte EC_WORD_EXCL .2byte -1 - ec_word MY - ec_word POKEMON - ec_word EXCL + .2byte EC_WORD_MY + .2byte EC_WORD_POKEMON + .2byte EC_WORD_EXCL @ win speech - ec_word WELL - ec_word WASN_T - ec_word THAT - ec_word EASY - ec_word QUES + .2byte EC_WORD_WELL + .2byte EC_WORD_WASN_T + .2byte EC_WORD_THAT + .2byte EC_WORD_EASY + .2byte EC_WORD_QUES .2byte -1 @ loss speech - ec_word WAAAH - ec_word EXCL + .2byte EC_WORD_WAAAH + .2byte EC_WORD_EXCL .2byte -1 - ec_word BUT - ec_word WHY - ec_word QUES + .2byte EC_WORD_BUT + .2byte EC_WORD_WHY + .2byte EC_WORD_QUES .4byte gVerdanturfBattleTentTrainerMons_Addison @ 17 .4byte TRAINER_CLASS_POKEFAN_2 .string "JUSTINE$", 8 @ pre-battle speech - ec_word YES - ec_word EXCL + .2byte EC_WORD_YES + .2byte EC_WORD_EXCL .2byte -1 - ec_word COME_ON - ec_word I_AM - ec_word READY + .2byte EC_WORD_COME_ON + .2byte EC_WORD_I_AM + .2byte EC_WORD_READY @ win speech - ec_word YOU_RE - ec_word JUST - ec_word NOT - ec_word GOOD - ec_word ENOUGH - ec_word EXCL + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_JUST + .2byte EC_WORD_NOT + .2byte EC_WORD_GOOD + .2byte EC_WORD_ENOUGH + .2byte EC_WORD_EXCL @ loss speech - ec_word WOWEE - ec_word EXCL_EXCL + .2byte EC_WORD_WOWEE + .2byte EC_WORD_EXCL_EXCL .2byte -1 .2byte -1 .2byte -1 @@ -472,310 +472,310 @@ gVerdanturfBattleTentTrainers:: @ 85DE610 .4byte TRAINER_CLASS_EXPERT_1 .string "TYSON$", 8 @ pre-battle speech - ec_word YOU_RE - ec_word GOING - ec_word TO - ec_word PRESSURE - ec_word ME - ec_word QUES + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_GOING + .2byte EC_WORD_TO + .2byte EC_WORD_PRESSURE + .2byte EC_WORD_ME + .2byte EC_WORD_QUES @ win speech - ec_word WHAT - ec_word QUES - ec_word YOU_RE - ec_word MUCH - ec_word TOO_WEAK - ec_word EXCL + .2byte EC_WORD_WHAT + .2byte EC_WORD_QUES + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_MUCH + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_EXCL @ loss speech - ec_word THIS - ec_word DOESN_T - ec_word MAKE - ec_word ME - ec_word HAPPY - ec_word EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_MAKE + .2byte EC_WORD_ME + .2byte EC_WORD_HAPPY + .2byte EC_WORD_EXCL .4byte gVerdanturfBattleTentTrainerMons_Tyson @ 19 .4byte TRAINER_CLASS_EXPERT_2 .string "LAILA$", 8 @ pre-battle speech - ec_word A - ec_move2 STRUGGLE - ec_word ISN_T - ec_word VERY - ec_word COOL + .2byte EC_WORD_A + .2byte EC_MOVE2(STRUGGLE) + .2byte EC_WORD_ISN_T + .2byte EC_WORD_VERY + .2byte EC_WORD_COOL .2byte -1 @ win speech - ec_word NOPE - ec_word NOT_VERY - ec_word COOL - ec_word AT - ec_word ALL - ec_word EXCL + .2byte EC_WORD_NOPE + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_COOL + .2byte EC_WORD_AT + .2byte EC_WORD_ALL + .2byte EC_WORD_EXCL @ loss speech - ec_word YOU_RE - ec_word NOT - ec_word COOL - ec_word BUT - ec_word YOU - ec_word WON + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_NOT + .2byte EC_WORD_COOL + .2byte EC_WORD_BUT + .2byte EC_WORD_YOU + .2byte EC_WORD_WON .4byte gVerdanturfBattleTentTrainerMons_Laila @ 20 .4byte TRAINER_CLASS_YOUNGSTER .string "WAREN$", 8 @ pre-battle speech - ec_word DANGER - ec_word EXCL + .2byte EC_WORD_DANGER + .2byte EC_WORD_EXCL .2byte -1 - ec_word I - ec_word SENSE - ec_word DANGER + .2byte EC_WORD_I + .2byte EC_WORD_SENSE + .2byte EC_WORD_DANGER @ win speech - ec_word DID - ec_word YOU - ec_word BELIEVE - ec_word MY - ec_word LIE - ec_word QUES_EXCL + .2byte EC_WORD_DID + .2byte EC_WORD_YOU + .2byte EC_WORD_BELIEVE + .2byte EC_WORD_MY + .2byte EC_WORD_LIE + .2byte EC_WORD_QUES_EXCL @ loss speech - ec_word I - ec_word REALLY - ec_word DID - ec_word SENSE - ec_word DANGER - ec_word ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_REALLY + .2byte EC_WORD_DID + .2byte EC_WORD_SENSE + .2byte EC_WORD_DANGER + .2byte EC_WORD_ELLIPSIS .4byte gVerdanturfBattleTentTrainerMons_Waren @ 21 .4byte TRAINER_CLASS_FISHERMAN .string "TOBIAS$", 8 @ pre-battle speech - ec_move2 BARRIER - ec_word EXCL_EXCL + .2byte EC_MOVE2(BARRIER) + .2byte EC_WORD_EXCL_EXCL .2byte -1 - ec_word NOW - ec_word COME_ON - ec_word EXCL + .2byte EC_WORD_NOW + .2byte EC_WORD_COME_ON + .2byte EC_WORD_EXCL @ win speech - ec_word HUH_QUES - ec_word YOU - ec_word MEAN - ec_word I - ec_word WON - ec_word QUES + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_YOU + .2byte EC_WORD_MEAN + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_QUES @ loss speech - ec_word I - ec_word SHOULD - ec_word KNOW - ec_word THAT - ec_word IT_S - ec_word HOPELESS + .2byte EC_WORD_I + .2byte EC_WORD_SHOULD + .2byte EC_WORD_KNOW + .2byte EC_WORD_THAT + .2byte EC_WORD_IT_S + .2byte EC_WORD_HOPELESS .4byte gVerdanturfBattleTentTrainerMons_Tobias @ 22 .4byte TRAINER_CLASS_BIRD_KEEPER .string "JOSIAH$", 8 @ pre-battle speech - ec_word I - ec_word PROMISE - ec_word TO - ec_move1 FLY - ec_word IF_I_LOSE + .2byte EC_WORD_I + .2byte EC_WORD_PROMISE + .2byte EC_WORD_TO + .2byte EC_MOVE(FLY) + .2byte EC_WORD_IF_I_LOSE .2byte -1 @ win speech - ec_word TOO_WEAK - ec_word ELLIPSIS + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_ELLIPSIS .2byte -1 - ec_word YOU - ec_move1 FLY - ec_word INSTEAD + .2byte EC_WORD_YOU + .2byte EC_MOVE(FLY) + .2byte EC_WORD_INSTEAD @ loss speech - ec_word I - ec_word PROMISE - ec_word TO - ec_move1 FLY - ec_word SOMETIME - ec_word SOON + .2byte EC_WORD_I + .2byte EC_WORD_PROMISE + .2byte EC_WORD_TO + .2byte EC_MOVE(FLY) + .2byte EC_WORD_SOMETIME + .2byte EC_WORD_SOON .4byte gVerdanturfBattleTentTrainerMons_Josiah @ 23 .4byte TRAINER_CLASS_NINJA_BOY .string "DION$", 8 @ pre-battle speech - ec_word IT_S - ec_word TRENDY - ec_word UM - ec_word BATTLE - ec_word SOMETHING + .2byte EC_WORD_IT_S + .2byte EC_WORD_TRENDY + .2byte EC_WORD_UM + .2byte EC_WORD_BATTLE + .2byte EC_WORD_SOMETHING .2byte -1 @ win speech - ec_word WAS - ec_word IT - ec_word ELLIPSIS - ec_word BATTLE - ec_word DATE - ec_word QUES + .2byte EC_WORD_WAS + .2byte EC_WORD_IT + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_BATTLE + .2byte EC_WORD_DATE + .2byte EC_WORD_QUES @ loss speech - ec_word WAS - ec_word IT - ec_word ELLIPSIS - ec_word BATTLE - ec_word GOURMET - ec_word QUES + .2byte EC_WORD_WAS + .2byte EC_WORD_IT + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_BATTLE + .2byte EC_WORD_GOURMET + .2byte EC_WORD_QUES .4byte gVerdanturfBattleTentTrainerMons_Dion @ 24 .4byte TRAINER_CLASS_PARASOL_LADY .string "KENZIE$", 8 @ pre-battle speech - ec_word THE - ec_move1 MORNING_SUN - ec_word GIVES - ec_word ME - ec_move1 STRENGTH + .2byte EC_WORD_THE + .2byte EC_MOVE(MORNING_SUN) + .2byte EC_WORD_GIVES + .2byte EC_WORD_ME + .2byte EC_MOVE(STRENGTH) .2byte -1 @ win speech - ec_word BUT - ec_word I - ec_word LIKE - ec_move2 MOONLIGHT - ec_word TOO + .2byte EC_WORD_BUT + .2byte EC_WORD_I + .2byte EC_WORD_LIKE + .2byte EC_MOVE2(MOONLIGHT) + .2byte EC_WORD_TOO .2byte -1 @ loss speech - ec_word YOU_RE - ec_word LIKE - ec_word A - ec_word TERRIBLE - ec_move1 SANDSTORM - ec_word ELLIPSIS + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_LIKE + .2byte EC_WORD_A + .2byte EC_WORD_TERRIBLE + .2byte EC_MOVE(SANDSTORM) + .2byte EC_WORD_ELLIPSIS .4byte gVerdanturfBattleTentTrainerMons_Kenzie @ 25 .4byte TRAINER_CLASS_SWIMMER_F .string "LILLIAN$", 8 @ pre-battle speech - ec_word I - ec_word DO - ec_word THINGS - ec_word AT - ec_word MY - ec_word OWN_TEMPO + .2byte EC_WORD_I + .2byte EC_WORD_DO + .2byte EC_WORD_THINGS + .2byte EC_WORD_AT + .2byte EC_WORD_MY + .2byte EC_WORD_OWN_TEMPO @ win speech - ec_word I - ec_word WON - ec_word QUES - ec_word WHAT - ec_word A - ec_word SURPRISE + .2byte EC_WORD_I + .2byte EC_WORD_WON + .2byte EC_WORD_QUES + .2byte EC_WORD_WHAT + .2byte EC_WORD_A + .2byte EC_WORD_SURPRISE @ loss speech - ec_word AWW - ec_word ELLIPSIS - ec_word I - ec_word NEED - ec_word A - ec_word NAP + .2byte EC_WORD_AWW + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_I + .2byte EC_WORD_NEED + .2byte EC_WORD_A + .2byte EC_WORD_NAP .4byte gVerdanturfBattleTentTrainerMons_Lillian @ 26 .4byte TRAINER_CLASS_PICNICKER .string "LESLEY$", 8 @ pre-battle speech - ec_word YOU - ec_word SHOULD - ec_word NOT - ec_word BE - ec_word LOLLING - ec_word ABOUT + .2byte EC_WORD_YOU + .2byte EC_WORD_SHOULD + .2byte EC_WORD_NOT + .2byte EC_WORD_BE + .2byte EC_WORD_LOLLING + .2byte EC_WORD_ABOUT @ win speech - ec_word YOU - ec_word SHOULD - ec_word GET - ec_word UP - ec_word EARLIER + .2byte EC_WORD_YOU + .2byte EC_WORD_SHOULD + .2byte EC_WORD_GET + .2byte EC_WORD_UP + .2byte EC_WORD_EARLIER .2byte -1 @ loss speech - ec_word THIS - ec_word SHOULD - ec_word NOT - ec_word BE - ec_word HAPPENING - ec_word EXCL + .2byte EC_WORD_THIS + .2byte EC_WORD_SHOULD + .2byte EC_WORD_NOT + .2byte EC_WORD_BE + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_EXCL .4byte gVerdanturfBattleTentTrainerMons_Lesley @ 27 .4byte TRAINER_CLASS_SAILOR .string "MARQUIS$", 8 @ pre-battle speech - ec_word NONE - ec_word OF - ec_word THIS - ec_word IS - ec_word MAKING - ec_word SENSE + .2byte EC_WORD_NONE + .2byte EC_WORD_OF + .2byte EC_WORD_THIS + .2byte EC_WORD_IS + .2byte EC_WORD_MAKING + .2byte EC_WORD_SENSE @ win speech - ec_word SEE - ec_word QUES - ec_word THIS - ec_word JUST - ec_word ISN_T - ec_word NORMAL + .2byte EC_WORD_SEE + .2byte EC_WORD_QUES + .2byte EC_WORD_THIS + .2byte EC_WORD_JUST + .2byte EC_WORD_ISN_T + .2byte EC_WORD_NORMAL @ loss speech - ec_word SHOULD - ec_word I - ec_word CAUSE - ec_word AN - ec_move1 UPROAR - ec_word QUES + .2byte EC_WORD_SHOULD + .2byte EC_WORD_I + .2byte EC_WORD_CAUSE + .2byte EC_WORD_AN + .2byte EC_MOVE(UPROAR) + .2byte EC_WORD_QUES .4byte gVerdanturfBattleTentTrainerMons_Marquis @ 28 .4byte TRAINER_CLASS_COLLECTOR .string "FREDDY$", 8 @ pre-battle speech - ec_word I - ec_word ADORE - ec_word THIS - ec_word CUTE - ec_word TELEVISION - ec_word IDOL + .2byte EC_WORD_I + .2byte EC_WORD_ADORE + .2byte EC_WORD_THIS + .2byte EC_WORD_CUTE + .2byte EC_WORD_TELEVISION + .2byte EC_WORD_IDOL @ win speech - ec_word YOU_RE - ec_word SO - ec_word FUNNY - ec_word WHEN - ec_word YOU_RE - ec_word ANGRY + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_SO + .2byte EC_WORD_FUNNY + .2byte EC_WORD_WHEN + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_ANGRY @ loss speech - ec_word LATE - ec_word NIGHT - ec_word TELEVISION - ec_word IS - ec_word MY - ec_word LIFE + .2byte EC_WORD_LATE + .2byte EC_WORD_NIGHT + .2byte EC_WORD_TELEVISION + .2byte EC_WORD_IS + .2byte EC_WORD_MY + .2byte EC_WORD_LIFE .4byte gVerdanturfBattleTentTrainerMons_Freddy @ 29 .4byte TRAINER_CLASS_LASS .string "CECILIA$", 8 @ pre-battle speech - ec_word MY - ec_word FABULOUS - ec_word CUTENESS - ec_word IS - ec_word IN - ec_word FASHION + .2byte EC_WORD_MY + .2byte EC_WORD_FABULOUS + .2byte EC_WORD_CUTENESS + .2byte EC_WORD_IS + .2byte EC_WORD_IN + .2byte EC_WORD_FASHION @ win speech - ec_word YOU_RE - ec_word NO - ec_word MATCH - ec_word FOR - ec_word MY - ec_word CUTE_CHARM + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_NO + .2byte EC_WORD_MATCH + .2byte EC_WORD_FOR + .2byte EC_WORD_MY + .2byte EC_WORD_CUTE_CHARM @ loss speech - ec_word DON_T - ec_word YOU - ec_word HAVE - ec_word FASHION - ec_word SENSE - ec_word QUES + .2byte EC_WORD_DON_T + .2byte EC_WORD_YOU + .2byte EC_WORD_HAVE + .2byte EC_WORD_FASHION + .2byte EC_WORD_SENSE + .2byte EC_WORD_QUES .4byte gVerdanturfBattleTentTrainerMons_Cecilia diff --git a/data/battle_frontier_2.s b/data/battle_frontier_2.s index 44c14f520..74abbe788 100644 --- a/data/battle_frontier_2.s +++ b/data/battle_frontier_2.s @@ -1,3 +1,5 @@ +#include "constants/moves.h" +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 0be60d109..ef6df1584 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1,3 +1,6 @@ +#include "constants/abilities.h" +#include "constants/moves.h" +#include "constants/songs.h" .include "asm/macros.inc" .include "asm/macros/battle_script.inc" .include "constants/constants.inc" @@ -356,19 +359,19 @@ BattleScript_EffectAbsorb:: waitmessage 0x40 negativedamage orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE - jumpifability TARGET, ABILITY_LIQUID_OOZE, BattleScript_82D8B26 + jumpifability TARGET, ABILITY_LIQUID_OOZE, BattleScript_AbsorbLiquidOoze setbyte cMULTISTRING_CHOOSER, 0x0 - goto BattleScript_82D8B2E -BattleScript_82D8B26:: + goto BattleScript_AbsorbUpdateHp +BattleScript_AbsorbLiquidOoze:: manipulatedamage ATK80_DMG_CHANGE_SIGN setbyte cMULTISTRING_CHOOSER, 0x1 -BattleScript_82D8B2E:: +BattleScript_AbsorbUpdateHp:: healthbarupdate ATTACKER datahpupdate ATTACKER - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_82D8B45 + jumpifmovehadnoeffect BattleScript_AbsorbTryFainting printfromtable gLeechSeedDrainStringIds waitmessage 0x40 -BattleScript_82D8B45:: +BattleScript_AbsorbTryFainting:: tryfaintmon ATTACKER, FALSE, NULL tryfaintmon TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -470,10 +473,10 @@ BattleScript_82D8C18:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE healthbarupdate ATTACKER datahpupdate ATTACKER - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_82D8C56 + jumpifmovehadnoeffect BattleScript_DreamEaterTryFaintEnd printstring STRINGID_PKMNDREAMEATEN waitmessage 0x40 -BattleScript_82D8C56:: +BattleScript_DreamEaterTryFaintEnd:: tryfaintmon TARGET, FALSE, NULL goto BattleScript_MoveEnd @@ -610,11 +613,11 @@ BattleScript_EffectRoar:: attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_SUCTION_CUPS, BattleScript_82DB5B9 - jumpifstatus3 TARGET, STATUS3_ROOTED, BattleScript_82DB109 + jumpifability TARGET, ABILITY_SUCTION_CUPS, BattleScript_AbilityPreventsPhasingOut + jumpifstatus3 TARGET, STATUS3_ROOTED, BattleScript_PrintMonIsRooted accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON accuracycheck BattleScript_MoveMissedPause, ACC_CURR_MOVE - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_ARENA, BattleScript_ButItFailed + jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_ButItFailed forcerandomswitch BattleScript_ButItFailed BattleScript_EffectMultiHit:: @@ -624,19 +627,19 @@ BattleScript_EffectMultiHit:: ppreduce setmultihitcounter 0x0 initmultihitstring - setbyte sFIELD_16, 0x0 -BattleScript_82D8DFD:: - jumpifhasnohp ATTACKER, BattleScript_82D8E93 - jumpifhasnohp TARGET, BattleScript_82D8E74 - jumpifhalfword EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_82D8E1F - jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_82D8E74 -BattleScript_82D8E1F:: + setbyte sMULTIHIT_EFFECT, 0x0 +BattleScript_MultiHitLoop:: + jumpifhasnohp ATTACKER, BattleScript_MultiHitEnd + jumpifhasnohp TARGET, BattleScript_MultiHitPrintStrings + jumpifhalfword EQUAL, gChosenMove, MOVE_SLEEP_TALK, BattleScript_DoMultiHit + jumpifstatus ATTACKER, STATUS_SLEEP, BattleScript_MultiHitPrintStrings +BattleScript_DoMultiHit:: movevaluescleanup - copybyte cEFFECT_CHOOSER, sFIELD_16 + copybyte cEFFECT_CHOOSER, sMULTIHIT_EFFECT critcalc damagecalc typecalc - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_82D8E71 + jumpifmovehadnoeffect BattleScript_MultiHitNoMoreHits adjustnormaldamage attackanimation waitanimation @@ -652,19 +655,19 @@ BattleScript_82D8E1F:: addbyte sMULTIHIT_STRING + 4, 0x1 setbyte sMOVEEND_STATE, 0x0 moveend 0x2, 0x10 - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_ENDURED, BattleScript_82D8E74 - decrementmultihit BattleScript_82D8DFD - goto BattleScript_82D8E74 -BattleScript_82D8E71:: + jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_ENDURED, BattleScript_MultiHitPrintStrings + decrementmultihit BattleScript_MultiHitLoop + goto BattleScript_MultiHitPrintStrings +BattleScript_MultiHitNoMoreHits:: pause 0x20 -BattleScript_82D8E74:: +BattleScript_MultiHitPrintStrings:: resultmessage waitmessage 0x40 - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_82D8E93 + jumpifmovehadnoeffect BattleScript_MultiHitEnd copyarray gBattleTextBuff1, sMULTIHIT_STRING, 0x6 printstring STRINGID_HITXTIMES waitmessage 0x40 -BattleScript_82D8E93:: +BattleScript_MultiHitEnd:: seteffectwithchance tryfaintmon TARGET, FALSE, NULL setbyte sMOVEEND_STATE, 0x2 @@ -784,7 +787,7 @@ BattleScript_EffectOHKO:: ppreduce accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON typecalc - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_HitFromAtkAnimation + jumpifmovehadnoeffect BattleScript_HitFromAtkAnimation tryKO BattleScript_KOFail trysetdestinybondtohappen goto BattleScript_HitFromAtkAnimation @@ -862,15 +865,14 @@ BattleScript_EffectDoubleHit:: ppreduce setmultihitcounter 0x2 initmultihitstring - setbyte sFIELD_16, 0x0 - goto BattleScript_82D8DFD + setbyte sMULTIHIT_EFFECT, 0x0 + goto BattleScript_MultiHitLoop BattleScript_EffectRecoilIfMiss:: attackcanceler - accuracycheck BattleScript_82D9135, ACC_CURR_MOVE + accuracycheck BattleScript_MoveMissedDoDamage, ACC_CURR_MOVE goto BattleScript_HitFromAtkString - -BattleScript_82D9135:: +BattleScript_MoveMissedDoDamage:: attackstring ppreduce pause 0x40 @@ -1031,7 +1033,7 @@ BattleScript_EffectParalyze:: jumpifability TARGET, ABILITY_LIMBER, BattleScript_LimberProtected jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed typecalc - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_ButItFailed + jumpifmovehadnoeffect BattleScript_ButItFailed jumpifstatus TARGET, STATUS_PARALYSIS, BattleScript_AlreadyParalyzed jumpifstatus TARGET, STATUS_ANY, BattleScript_ButItFailed accuracycheck BattleScript_ButItFailed, ACC_CURR_MOVE @@ -1095,12 +1097,12 @@ BattleScript_EffectConfuseHit:: BattleScript_EffectTwineedle:: attackcanceler accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE - setbyte sFIELD_16, 0x2 + setbyte sMULTIHIT_EFFECT, EFFECT_POISON attackstring ppreduce setmultihitcounter 0x2 initmultihitstring - goto BattleScript_82D8DFD + goto BattleScript_MultiHitLoop BattleScript_EffectSubstitute:: attackcanceler @@ -1349,7 +1351,7 @@ BattleScript_SleepTalkUsingMove:: waitanimation setbyte sANIM_TURN, 0x0 setbyte sANIM_TARGETS_HIT, 0x0 - jumptorandomattack 0x1 + jumptorandomattack TRUE BattleScript_EffectDestinyBond:: attackcanceler @@ -1423,7 +1425,7 @@ BattleScript_DoTripleKickAttack:: damagecalc typecalc adjustnormaldamage - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_TripleKickNoMoreHits + jumpifmovehadnoeffect BattleScript_TripleKickNoMoreHits attackanimation waitanimation effectivenesssound @@ -1660,7 +1662,7 @@ BattleScript_FuryCutterHit:: critcalc damagecalc typecalc - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_FuryCutterHit + jumpifmovehadnoeffect BattleScript_FuryCutterHit adjustnormaldamage goto BattleScript_HitFromAtkAnimation @@ -1711,13 +1713,13 @@ BattleScript_EffectMagnitude:: pause 0x20 printstring STRINGID_MAGNITUDESTRENGTH waitmessage 0x40 - goto BattleScript_82D9C44 + goto BattleScript_HitsAllWithUndergroundBonusLoop BattleScript_EffectBatonPass:: attackcanceler attackstring ppreduce - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_ARENA, BattleScript_ButItFailed + jumpifbattletype BATTLE_TYPE_ARENA, BattleScript_ButItFailed jumpifcantswitch ATK4F_DONT_CHECK_STATUSES | ATTACKER, BattleScript_ButItFailed attackanimation waitanimation @@ -1730,7 +1732,7 @@ BattleScript_EffectBatonPass:: switchindataupdate ATTACKER hpthresholds ATTACKER printstring STRINGID_SWITCHINMON - switchinanim ATTACKER, 0x1 + switchinanim ATTACKER, TRUE waitstate switchineffects ATTACKER goto BattleScript_MoveEnd @@ -1858,17 +1860,17 @@ BattleScript_EffectEarthquake:: attackstring ppreduce selectfirstvalidtarget -BattleScript_82D9C44:: +BattleScript_HitsAllWithUndergroundBonusLoop:: movevaluescleanup - jumpifnostatus3 TARGET, STATUS3_UNDERGROUND, BattleScript_82D9C64 + jumpifnostatus3 TARGET, STATUS3_UNDERGROUND, BattleScript_HitsAllNoUndergroundBonus orword gHitMarker, HITMARKER_IGNORE_UNDERGROUND setbyte sDMG_MULTIPLIER, 0x2 - goto BattleScript_82D9C73 -BattleScript_82D9C64:: + goto BattleScript_DoHitAllWithUndergroundBonus +BattleScript_HitsAllNoUndergroundBonus:: bicword gHitMarker, HITMARKER_IGNORE_UNDERGROUND setbyte sDMG_MULTIPLIER, 0x1 -BattleScript_82D9C73:: - accuracycheck BattleScript_82D9CAC, ACC_CURR_MOVE +BattleScript_DoHitAllWithUndergroundBonus:: + accuracycheck BattleScript_HitAllWithUndergroundBonusMissed, ACC_CURR_MOVE critcalc damagecalc typecalc @@ -1889,9 +1891,9 @@ BattleScript_82D9C73:: tryfaintmon TARGET, FALSE, NULL setbyte sMOVEEND_STATE, 0x0 moveend 0x2, 0x10 - jumpifnexttargetvalid BattleScript_82D9C44 + jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end -BattleScript_82D9CAC:: +BattleScript_HitAllWithUndergroundBonusMissed:: pause 0x20 typecalc effectivenesssound @@ -1899,7 +1901,7 @@ BattleScript_82D9CAC:: waitmessage 0x40 setbyte sMOVEEND_STATE, 0x0 moveend 0x2, 0x10 - jumpifnexttargetvalid BattleScript_82D9C44 + jumpifnexttargetvalid BattleScript_HitsAllWithUndergroundBonusLoop end BattleScript_EffectFutureSight:: @@ -1950,10 +1952,10 @@ BattleScript_EffectTeleport:: attackcanceler attackstring ppreduce - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_ButItFailed + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_ButItFailed getifcantrunfrombattle ATTACKER jumpifbyte EQUAL, gBattleCommunication, 0x1, BattleScript_ButItFailed - jumpifbyte EQUAL, gBattleCommunication, 0x2, BattleScript_82DA382 + jumpifbyte EQUAL, gBattleCommunication, 0x2, BattleScript_PrintAbilityMadeIneffective attackanimation waitanimation printstring STRINGID_PKMNFLEDFROMBATTLE @@ -2290,10 +2292,10 @@ BattleScript_EffectFocusPunch:: BattleScript_EffectSmellingsalt:: jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_EffectHit setmoveeffect EFFECT_REMOVE_PARALYSIS | CERTAIN - jumpifstatus TARGET, STATUS_PARALYSIS, BattleScript_82DA1BA + jumpifstatus TARGET, STATUS_PARALYSIS, BattleScript_SmellingsaltDoubleDmg goto BattleScript_EffectHit -BattleScript_82DA1BA:: +BattleScript_SmellingsaltDoubleDmg:: setbyte sDMG_MULTIPLIER, 0x2 goto BattleScript_EffectHit @@ -2395,7 +2397,7 @@ BattleScript_EffectAssist:: waitanimation setbyte sANIM_TURN, 0x0 setbyte sANIM_TARGETS_HIT, 0x0 - jumptorandomattack 0x1 + jumptorandomattack TRUE BattleScript_EffectIngrain:: attackcanceler @@ -2448,15 +2450,15 @@ BattleScript_EffectBrickBreak:: damagecalc typecalc adjustnormaldamage - jumpifbyte EQUAL, sANIM_TURN, 0x0, BattleScript_82DA306 + jumpifbyte EQUAL, sANIM_TURN, 0x0, BattleScript_BrickBreakAnim bicbyte gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED -BattleScript_82DA306:: +BattleScript_BrickBreakAnim:: attackanimation waitanimation - jumpifbyte LESS_THAN, sANIM_TURN, 0x2, BattleScript_82DA319 + jumpifbyte LESS_THAN, sANIM_TURN, 0x2, BattleScript_BrickBreakDoHit printstring STRINGID_THEWALLSHATTERED waitmessage 0x40 -BattleScript_82DA319:: +BattleScript_BrickBreakDoHit:: typecalc2 effectivenesssound hitanimation TARGET @@ -2475,8 +2477,8 @@ BattleScript_EffectYawn:: attackcanceler attackstring ppreduce - jumpifability TARGET, ABILITY_VITAL_SPIRIT, BattleScript_82DA378 - jumpifability TARGET, ABILITY_INSOMNIA, BattleScript_82DA378 + jumpifability TARGET, ABILITY_VITAL_SPIRIT, BattleScript_PrintBankAbilityMadeIneffective + jumpifability TARGET, ABILITY_INSOMNIA, BattleScript_PrintBankAbilityMadeIneffective jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_ButItFailed jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_SafeguardProtected accuracycheck BattleScript_ButItFailed, NO_ACC_CALC_CHECK_LOCK_ON @@ -2487,9 +2489,9 @@ BattleScript_EffectYawn:: printstring STRINGID_PKMNWASMADEDROWSY waitmessage 0x40 goto BattleScript_MoveEnd -BattleScript_82DA378:: - copybyte sBANK, sFIELD_15 -BattleScript_82DA382:: +BattleScript_PrintBankAbilityMadeIneffective:: + copybyte sBANK, sBANK_WITH_ABILITY +BattleScript_PrintAbilityMadeIneffective:: pause 0x20 printstring STRINGID_PKMNSXMADEITINEFFECTIVE waitmessage 0x40 @@ -2507,7 +2509,7 @@ BattleScript_EffectEndeavor:: copyword gHpDealt, gBattleMoveDamage accuracycheck BattleScript_MoveMissedPause, ACC_CURR_MOVE typecalc - jumpifbyte COMMON_BITS, gBattleMoveFlags, MOVESTATUS_MISSED | MOVESTATUS_NOTAFFECTED | MOVESTATUS_FAILED, BattleScript_HitFromAtkAnimation + jumpifmovehadnoeffect BattleScript_HitFromAtkAnimation bicbyte gBattleMoveFlags, MOVESTATUS_SUPEREFFECTIVE | MOVESTATUS_NOTVERYEFFECTIVE copyword gBattleMoveDamage, gHpDealt adjustsetdamage @@ -2596,58 +2598,58 @@ BattleScript_EffectTeeterDance:: attackstring ppreduce setbyte gBankTarget, 0x0 -BattleScript_82DA47B:: +BattleScript_TeeterDanceLoop:: movevaluescleanup setmoveeffect EFFECT_CONFUSION - jumpifbyteequal gBankAttacker, gBankTarget, BattleScript_82DA4D0 - jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_82DA4E5 - jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_82DA501 - jumpifstatus2 TARGET, STATUS2_CONFUSION, BattleScript_82DA50F - jumpifhasnohp TARGET, BattleScript_82DA4D0 - accuracycheck BattleScript_82DA520, ACC_CURR_MOVE - jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_82DA4F3 + jumpifbyteequal gBankAttacker, gBankTarget, BattleScript_TeeterDanceLoopIncrement + jumpifability TARGET, ABILITY_OWN_TEMPO, BattleScript_TeeterDanceOwnTempoPrevents + jumpifstatus2 TARGET, STATUS2_SUBSTITUTE, BattleScript_TeeterDanceSubstitutePrevents + jumpifstatus2 TARGET, STATUS2_CONFUSION, BattleScript_TeeterDanceAlreadyConfused + jumpifhasnohp TARGET, BattleScript_TeeterDanceLoopIncrement + accuracycheck BattleScript_TeeterDanceMissed, ACC_CURR_MOVE + jumpifsideaffecting TARGET, SIDE_STATUS_SAFEGUARD, BattleScript_TeeterDanceSafeguardProtected attackanimation waitanimation seteffectprimary resultmessage waitmessage 0x40 -BattleScript_82DA4C7:: +BattleScript_TeeterDanceDoMoveEndIncrement:: setbyte sMOVEEND_STATE, 0x0 moveend 0x2, 0x10 -BattleScript_82DA4D0:: +BattleScript_TeeterDanceLoopIncrement:: addbyte gBankTarget, 0x1 - jumpifbytenotequal gBankTarget, gNoOfAllBanks, BattleScript_82DA47B + jumpifbytenotequal gBankTarget, gNoOfAllBanks, BattleScript_TeeterDanceLoop end -BattleScript_82DA4E5:: +BattleScript_TeeterDanceOwnTempoPrevents:: pause 0x20 printstring STRINGID_PKMNPREVENTSCONFUSIONWITH waitmessage 0x40 - goto BattleScript_82DA4C7 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_82DA4F3:: +BattleScript_TeeterDanceSafeguardProtected:: pause 0x20 printstring STRINGID_PKMNUSEDSAFEGUARD waitmessage 0x40 - goto BattleScript_82DA4C7 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_82DA501:: +BattleScript_TeeterDanceSubstitutePrevents:: pause 0x20 printstring STRINGID_BUTITFAILED waitmessage 0x40 - goto BattleScript_82DA4C7 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_82DA50F:: +BattleScript_TeeterDanceAlreadyConfused:: various23 ATTACKER pause 0x20 printstring STRINGID_PKMNALREADYCONFUSED waitmessage 0x40 - goto BattleScript_82DA4C7 + goto BattleScript_TeeterDanceDoMoveEndIncrement -BattleScript_82DA520:: +BattleScript_TeeterDanceMissed:: resultmessage waitmessage 0x40 - goto BattleScript_82DA4C7 + goto BattleScript_TeeterDanceDoMoveEndIncrement BattleScript_EffectMudSport:: BattleScript_EffectWaterSport:: @@ -2846,41 +2848,41 @@ BattleScript_FaintTarget:: printstring STRINGID_TARGETFAINTED return -BattleScript_82DA7C4:: +BattleScript_GiveExp:: setbyte sGIVEEXP_STATE, 0x0 getexp TARGET end2 -BattleScript_82DA7CD:: +BattleScript_HandleFaintedMon:: atk24 BattleScript_82DA8F6 - jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_82DA8F5 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_82DA816 - jumpifword NO_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_82DA816 + jumpifbyte NOT_EQUAL, gBattleOutcome, 0, BattleScript_FaintedMonEnd + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonTryChooseAnother + jumpifword NO_COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonTryChooseAnother printstring STRINGID_USENEXTPKMN setbyte gBattleCommunication, 0x0 yesnobox - jumpifbyte EQUAL, gBattleCommunication + 1, 0x0, BattleScript_82DA816 - jumpifplayerran BattleScript_82DA8F5 + jumpifbyte EQUAL, gBattleCommunication + 1, 0x0, BattleScript_FaintedMonTryChooseAnother + jumpifplayerran BattleScript_FaintedMonEnd printstring STRINGID_CANTESCAPE2 -BattleScript_82DA816:: - openpartyscreen 0x3, BattleScript_82DA8F5 +BattleScript_FaintedMonTryChooseAnother:: + openpartyscreen 0x3, BattleScript_FaintedMonEnd switchhandleorder GBANK_1, 0x2 - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_82DA8D0 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_LINK, BattleScript_82DA8D0 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x2000000, BattleScript_82DA8D0 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_82DA8D0 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOUBLE, BattleScript_82DA8D0 - jumpifword COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_82DA8D0 - jumpifbyte EQUAL, sBATTLE_STYLE, 0x1, BattleScript_82DA8D0 - jumpifcantswitch 11, BattleScript_82DA8D0 + jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_LINK, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_x2000000, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_FaintedMonChooseAnother + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonChooseAnother + jumpifword COMMON_BITS, gHitMarker, HITMARKER_x400000, BattleScript_FaintedMonChooseAnother + jumpifbyte EQUAL, sBATTLE_STYLE, 0x1, BattleScript_FaintedMonChooseAnother + jumpifcantswitch 11, BattleScript_FaintedMonChooseAnother printstring STRINGID_ENEMYABOUTTOSWITCHPKMN setbyte gBattleCommunication, 0x0 yesnobox - jumpifbyte EQUAL, gBattleCommunication + 1, 0x1, BattleScript_82DA8D0 + jumpifbyte EQUAL, gBattleCommunication + 1, 0x1, BattleScript_FaintedMonChooseAnother setatktoplayer0 - openpartyscreen 0x81, BattleScript_82DA8D0 + openpartyscreen 0x81, BattleScript_FaintedMonChooseAnother switchhandleorder ATTACKER, 0x2 - jumpifbyte EQUAL, gBattleCommunication, 0x6, BattleScript_82DA8D0 + jumpifbyte EQUAL, gBattleCommunication, 0x6, BattleScript_FaintedMonChooseAnother atknameinbuff1 resetintrimidatetracebits ATTACKER hpthresholds2 ATTACKER @@ -2899,20 +2901,20 @@ BattleScript_82DA816:: waitstate switchineffects ATTACKER resetsentmonsvalue -BattleScript_82DA8D0:: +BattleScript_FaintedMonChooseAnother:: drawpartystatussummary GBANK_1 getswitchedmondata GBANK_1 switchindataupdate GBANK_1 hpthresholds GBANK_1 printstring STRINGID_SWITCHINMON atk62 GBANK_1 - switchinanim GBANK_1, 0x0 + switchinanim GBANK_1, FALSE waitstate various7 ATTACKER switchineffects GBANK_1 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOUBLE, BattleScript_82DA8F5 + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_FaintedMonEnd cancelallactions -BattleScript_82DA8F5:: +BattleScript_FaintedMonEnd:: end2 BattleScript_82DA8F6:: @@ -2929,7 +2931,7 @@ BattleScript_82DA908:: hpthresholds GBANK_1 printstring STRINGID_SWITCHINMON atk62 GBANK_1 - switchinanim GBANK_1, 0x0 + switchinanim GBANK_1, FALSE waitstate switchineffects 5 jumpifbytenotequal gBank1, gNoOfAllBanks, BattleScript_82DA908 @@ -2937,7 +2939,7 @@ BattleScript_82DA92C:: end2 BattleScript_LocalTrainerBattleWon:: - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalTwoTrainersDefeated + jumpifbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalTwoTrainersDefeated printstring STRINGID_PLAYERDEFEATEDTRAINER1 goto BattleScript_LocalBattleWonLoseTexts BattleScript_LocalTwoTrainersDefeated:: @@ -2946,7 +2948,7 @@ BattleScript_LocalBattleWonLoseTexts:: trainerslidein ATTACKER waitstate printstring STRINGID_TRAINER1LOSETEXT - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleWonReward + jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleWonReward trainerslideout IDENTITY_OPPONENT_MON1 waitstate trainerslidein GBANK_1 @@ -2962,10 +2964,10 @@ BattleScript_PayDayMoneyAndPickUpItems:: end2 BattleScript_LocalBattleLost:: - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOME, BattleScript_CheckDomeDrew - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_LocalBattleLostPrintTrainersWinText - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x4000000, BattleScript_LocalBattleLostPrintTrainersWinText - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd + jumpifbattletype BATTLE_TYPE_DOME, BattleScript_CheckDomeDrew + jumpifbattletype BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_DOME | BATTLE_TYPE_PALACE | BATTLE_TYPE_ARENA | BATTLE_TYPE_FACTORY | BATTLE_TYPE_x100000 | BATTLE_TYPE_PYRAMID, BattleScript_LocalBattleLostPrintTrainersWinText + jumpifbattletype BATTLE_TYPE_x4000000, BattleScript_LocalBattleLostPrintTrainersWinText + jumpifbattletype BATTLE_TYPE_EREADER_TRAINER, BattleScript_LocalBattleLostEnd jumpifhalfword EQUAL, gTrainerBattleOpponent_A, 0x400, BattleScript_LocalBattleLostEnd BattleScript_LocalBattleLostPrintWhiteOut:: printstring STRINGID_PLAYERWHITEOUT @@ -2977,7 +2979,7 @@ BattleScript_LocalBattleLostEnd:: BattleScript_CheckDomeDrew:: jumpifbyte EQUAL, gBattleOutcome, DREW, BattleScript_LocalBattleLostEnd_ BattleScript_LocalBattleLostPrintTrainersWinText:: - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_LocalBattleLostPrintWhiteOut + jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_LocalBattleLostPrintWhiteOut returnopponentmon1toball ATTACKER waitstate returnopponentmon2toball ATTACKER @@ -2985,8 +2987,8 @@ BattleScript_LocalBattleLostPrintTrainersWinText:: trainerslidein ATTACKER waitstate printstring STRINGID_TRAINER1WINTEXT - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_x800000, BattleScript_LocalBattleLostDoTrainer2WinText - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleLostEnd_ + jumpifbattletype BATTLE_TYPE_x800000, BattleScript_LocalBattleLostDoTrainer2WinText + jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_LocalBattleLostEnd_ BattleScript_LocalBattleLostDoTrainer2WinText:: trainerslideout IDENTITY_OPPONENT_MON1 waitstate @@ -3009,17 +3011,17 @@ BattleScript_82DAA0B:: trainerslidein GBANK_1 waitstate printstring STRINGID_TRAINER2WINTEXT - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_RECORDED, BattleScript_82DAA31 + jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_82DAA31 atk57 BattleScript_82DAA31:: waitmessage 0x40 end2 BattleScript_LinkBattleWonOrLost:: - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_BATTLE_TOWER, BattleScript_82DAA5C + jumpifbattletype BATTLE_TYPE_BATTLE_TOWER, BattleScript_82DAA5C printstring STRINGID_BATTLEEND waitmessage 0x40 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_RECORDED, BattleScript_LinkBattleWonOrLostWaitEnd + jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_LinkBattleWonOrLostWaitEnd atk57 BattleScript_LinkBattleWonOrLostWaitEnd:: waitmessage 0x40 @@ -3037,15 +3039,15 @@ BattleScript_82DAA5C:: trainerslidein GBANK_1 waitstate printstring STRINGID_TRAINER2LOSETEXT - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_RECORDED, BattleScript_82DAA83 + jumpifbattletype BATTLE_TYPE_RECORDED, BattleScript_82DAA83 atk57 BattleScript_82DAA83:: waitmessage 0x40 end2 BattleScript_FrontierTrainerBattleWon:: - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_PayDayMoneyAndPickUpItems - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAAAB + jumpifnotbattletype BATTLE_TYPE_TRAINER, BattleScript_PayDayMoneyAndPickUpItems + jumpifbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAAAB printstring STRINGID_PLAYERDEFEATEDTRAINER1 goto BattleScript_82DAAAE BattleScript_82DAAAB:: @@ -3054,14 +3056,14 @@ BattleScript_82DAAAE:: trainerslidein ATTACKER waitstate printstring STRINGID_TRAINER1LOSETEXT - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAACB + jumpifnotbattletype BATTLE_TYPE_TWO_OPPONENTS, BattleScript_82DAACB trainerslideout IDENTITY_OPPONENT_MON1 waitstate trainerslidein GBANK_1 waitstate printstring STRINGID_TRAINER2LOSETEXT BattleScript_82DAACB:: - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_PYRAMID, BattleScript_82DAADA + jumpifnotbattletype BATTLE_TYPE_PYRAMID, BattleScript_82DAADA pickup BattleScript_82DAADA:: end2 @@ -3108,20 +3110,19 @@ BattleScript_ActionSwitch:: hpthresholds2 ATTACKER printstring STRINGID_RETURNMON setbyte sDMG_MULTIPLIER, 0x2 - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_DOUBLE, BattleScript_82DAB35 + jumpifbattletype BATTLE_TYPE_DOUBLE, BattleScript_PursuitSwitchDmgSetMultihit setmultihit 0x1 - goto BattleScript_82DAB37 - -BattleScript_82DAB35:: + goto BattleScript_PursuitSwitchDmgLoop +BattleScript_PursuitSwitchDmgSetMultihit:: setmultihit 0x2 -BattleScript_82DAB37:: - jumpifnopursuitswitchdmg BattleScript_82DAB44 +BattleScript_PursuitSwitchDmgLoop:: + jumpifnopursuitswitchdmg BattleScript_DoSwitchOut atk5F trysetdestinybondtohappen - call BattleScript_82DAB77 + call BattleScript_PursuitDmgOnSwitchOut atk5F -BattleScript_82DAB44:: - decrementmultihit BattleScript_82DAB37 +BattleScript_DoSwitchOut:: + decrementmultihit BattleScript_PursuitSwitchDmgLoop switchoutabilities ATTACKER waitstate returnatktoball @@ -3133,7 +3134,7 @@ BattleScript_82DAB44:: hpthresholds ATTACKER printstring STRINGID_SWITCHINMON atk62 ATTACKER - switchinanim ATTACKER, 0x0 + switchinanim ATTACKER, FALSE waitstate switchineffects ATTACKER setbyte sMOVEEND_STATE, 0x4 @@ -3142,7 +3143,7 @@ BattleScript_82DAB44:: moveend 0x1, 0x0 end2 -BattleScript_82DAB77:: +BattleScript_PursuitDmgOnSwitchOut:: pause 0x20 attackstring ppreduce @@ -3165,10 +3166,10 @@ BattleScript_82DAB77:: setbyte sMOVEEND_STATE, 0x3 moveend 0x2, 0x6 various4 TARGET - jumpifbyte EQUAL, gBattleCommunication, 0x0, BattleScript_82DABB8 + jumpifbyte EQUAL, gBattleCommunication, 0x0, BattleScript_PursuitDmgOnSwitchOutRet setbyte sGIVEEXP_STATE, 0x0 getexp TARGET -BattleScript_82DABB8:: +BattleScript_PursuitDmgOnSwitchOutRet:: return BattleScript_Pausex20:: @@ -3291,14 +3292,13 @@ BattleScript_LeechSeedTurnDrain:: healthbarupdate ATTACKER datahpupdate ATTACKER copyword gBattleMoveDamage, gHpDealt - jumpifability ATTACKER, ABILITY_LIQUID_OOZE, BattleScript_82DAD47 + jumpifability ATTACKER, ABILITY_LIQUID_OOZE, BattleScript_LeechSeedTurnPrintLiquidOoze manipulatedamage ATK80_DMG_CHANGE_SIGN setbyte cMULTISTRING_CHOOSER, 0x3 - goto BattleScript_82DAD4D - -BattleScript_82DAD47:: + goto BattleScript_LeechSeedTurnPrintAndUpdateHp +BattleScript_LeechSeedTurnPrintLiquidOoze:: setbyte cMULTISTRING_CHOOSER, 0x4 -BattleScript_82DAD4D:: +BattleScript_LeechSeedTurnPrintAndUpdateHp:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate TARGET datahpupdate TARGET @@ -3345,20 +3345,20 @@ BattleScript_BideNoEnergyToAttack:: waitmessage 0x40 goto BattleScript_ButItFailed -BattleScript_82DADD8:: +BattleScript_SuccessForceOut:: attackanimation waitanimation switchoutabilities TARGET returntoball TARGET waitstate - jumpifword COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_TRAINER, BattleScript_82DADF1 + jumpifbattletype BATTLE_TYPE_TRAINER, BattleScript_TrainerBattleForceOut setoutcomeonteleport ATTACKER finishaction -BattleScript_82DADF1:: +BattleScript_TrainerBattleForceOut:: getswitchedmondata TARGET switchindataupdate TARGET - switchinanim TARGET, 0x0 + switchinanim TARGET, FALSE waitstate printstring STRINGID_PKMNWASDRAGGEDOUT switchineffects TARGET @@ -3389,9 +3389,9 @@ BattleScript_DisabledNoMore:: waitmessage 0x40 end2 -BattleScript_82DAE2A:: +BattleScript_SelectingDisabledMoveInPalace:: printstring STRINGID_PKMNMOVEISDISABLED -BattleScript_82DAE2D:: +BattleScript_SelectingUnusableMoveInPalace:: setbyte sMOVEEND_STATE, 0x0 moveend 0x2, 0x10 end @@ -3414,51 +3414,51 @@ BattleScript_SpikesOnAttacker:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate ATTACKER datahpupdate ATTACKER - call BattleScript_82DAEFE + call BattleScript_PrintHurtBySpikes tryfaintmon ATTACKER, FALSE, NULL - tryfaintmon ATTACKER, TRUE, BattleScript_82DAE7A + tryfaintmon ATTACKER, TRUE, BattleScript_SpikesOnAttackerFainted return -BattleScript_82DAE7A:: +BattleScript_SpikesOnAttackerFainted:: setbyte sGIVEEXP_STATE, 0x0 getexp ATTACKER setbyte sMOVEEND_STATE, 0x0 moveend 0x0, 0x0 - goto BattleScript_82DA7CD + goto BattleScript_HandleFaintedMon BattleScript_SpikesOnTarget:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate TARGET datahpupdate TARGET - call BattleScript_82DAEFE + call BattleScript_PrintHurtBySpikes tryfaintmon TARGET, FALSE, NULL - tryfaintmon TARGET, TRUE, BattleScript_82DAEB1 + tryfaintmon TARGET, TRUE, BattleScript_SpikesOnTargetFainted return -BattleScript_82DAEB1:: +BattleScript_SpikesOnTargetFainted:: setbyte sGIVEEXP_STATE, 0x0 getexp TARGET setbyte sMOVEEND_STATE, 0x0 moveend 0x0, 0x0 - goto BattleScript_82DA7CD + goto BattleScript_HandleFaintedMon BattleScript_SpikesOngBank1:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate GBANK_1 datahpupdate GBANK_1 - call BattleScript_82DAEFE + call BattleScript_PrintHurtBySpikes tryfaintmon GBANK_1, FALSE, NULL - tryfaintmon GBANK_1, TRUE, BattleScript_82DAEE8 + tryfaintmon GBANK_1, TRUE, BattleScript_SpikesOngBank1Fainted return -BattleScript_82DAEE8:: +BattleScript_SpikesOngBank1Fainted:: setbyte sGIVEEXP_STATE, 0x0 getexp GBANK_1 setbyte sMOVEEND_STATE, 0x0 moveend 0x0, 0x0 - goto BattleScript_82DA7CD + goto BattleScript_HandleFaintedMon -BattleScript_82DAEFE:: +BattleScript_PrintHurtBySpikes:: printstring STRINGID_PKMNHURTBYSPIKES waitmessage 0x40 return @@ -3478,39 +3478,39 @@ BattleScript_PerishSongCountGoesDown:: end2 BattleScript_AllStatsUp:: - jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_82DAF54 - jumpifstat ATTACKER, LESS_THAN, DEF, 0xC, BattleScript_82DAF54 - jumpifstat ATTACKER, LESS_THAN, SPEED, 0xC, BattleScript_82DAF54 - jumpifstat ATTACKER, LESS_THAN, SPATK, 0xC, BattleScript_82DAF54 - jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_82DAFC2 -BattleScript_82DAF54:: + jumpifstat ATTACKER, LESS_THAN, ATK, 0xC, BattleScript_AllStatsUpAtk + jumpifstat ATTACKER, LESS_THAN, DEF, 0xC, BattleScript_AllStatsUpAtk + jumpifstat ATTACKER, LESS_THAN, SPEED, 0xC, BattleScript_AllStatsUpAtk + jumpifstat ATTACKER, LESS_THAN, SPATK, 0xC, BattleScript_AllStatsUpAtk + jumpifstat ATTACKER, EQUAL, SPDEF, 0xC, BattleScript_AllStatsUpRet +BattleScript_AllStatsUpAtk:: setbyte sFIELD_1B, 0x0 playstatchangeanimation ATTACKER, 0x3E, 0x0 setstatchanger ATK, 1, FALSE - statbuffchange AFFECTS_USER | 0x1, BattleScript_82DAF72 + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpDef printfromtable gStatUpStringIds waitmessage 0x40 -BattleScript_82DAF72:: +BattleScript_AllStatsUpDef:: setstatchanger DEF, 1, FALSE - statbuffchange AFFECTS_USER | 0x1, BattleScript_82DAF86 + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpeed printfromtable gStatUpStringIds waitmessage 0x40 -BattleScript_82DAF86:: +BattleScript_AllStatsUpSpeed:: setstatchanger SPEED, 1, FALSE - statbuffchange AFFECTS_USER | 0x1, BattleScript_82DAF9A + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpAtk printfromtable gStatUpStringIds waitmessage 0x40 -BattleScript_82DAF9A:: +BattleScript_AllStatsUpSpAtk:: setstatchanger SPATK, 1, FALSE - statbuffchange AFFECTS_USER | 0x1, BattleScript_82DAFAE + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpSpDef printfromtable gStatUpStringIds waitmessage 0x40 -BattleScript_82DAFAE:: +BattleScript_AllStatsUpSpDef:: setstatchanger SPDEF, 1, FALSE - statbuffchange AFFECTS_USER | 0x1, BattleScript_82DAFC2 + statbuffchange AFFECTS_USER | 0x1, BattleScript_AllStatsUpRet printfromtable gStatUpStringIds waitmessage 0x40 -BattleScript_82DAFC2:: +BattleScript_AllStatsUpRet:: return BattleScript_RapidSpinAway:: @@ -3536,19 +3536,19 @@ BattleScript_SpikesFree:: BattleScript_MonTookFutureAttack:: printstring STRINGID_PKMNTOOKATTACK waitmessage 0x40 - jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_82DB001 - accuracycheck BattleScript_82DB058, MOVE_FUTURE_SIGHT - goto BattleScript_82DB008 -BattleScript_82DB001:: - accuracycheck BattleScript_82DB058, MOVE_DOOM_DESIRE -BattleScript_82DB008:: + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_CheckDoomDesireMiss + accuracycheck BattleScript_FutureAttackMiss, MOVE_FUTURE_SIGHT + goto BattleScript_FutureAttackAnimate +BattleScript_CheckDoomDesireMiss:: + accuracycheck BattleScript_FutureAttackMiss, MOVE_DOOM_DESIRE +BattleScript_FutureAttackAnimate:: adjustnormaldamage2 - jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_82DB020 + jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_FutureHitAnimDoomDesire playanimation ATTACKER, ANIM_FUTURE_SIGHT_HIT, NULL - goto BattleScript_82DB027 -BattleScript_82DB020:: - playanimation ATTACKER, ANIM_x13, NULL -BattleScript_82DB027:: + goto BattleScript_DoFutureAttackHit +BattleScript_FutureHitAnimDoomDesire:: + playanimation ATTACKER, ANIM_DOOM_DESIRE_HIT, NULL +BattleScript_DoFutureAttackHit:: effectivenesssound hitanimation TARGET waitstate @@ -3557,15 +3557,16 @@ BattleScript_82DB027:: resultmessage waitmessage 0x40 tryfaintmon TARGET, FALSE, NULL - atk24 BattleScript_82DB03F -BattleScript_82DB03F:: + atk24 BattleScript_FutureAttackEnd +BattleScript_FutureAttackEnd:: setbyte sMOVEEND_STATE, 0x0 moveend 0x1, 0x0 setbyte sMOVEEND_STATE, 0xB moveend 0x2, 0xE setbyte gBattleMoveFlags, 0 end2 -BattleScript_82DB058:: + +BattleScript_FutureAttackMiss:: pause 0x20 setbyte gBattleMoveFlags, 0 orbyte gBattleMoveFlags, MOVESTATUS_FAILED @@ -3593,14 +3594,14 @@ BattleScript_SelectingTormentedMove:: printselectionstring STRINGID_PKMNCANTUSEMOVETORMENT endselectionscript -BattleScript_82DB08D:: +BattleScript_MoveUsedIsTormented:: printstring STRINGID_PKMNCANTUSEMOVETORMENT waitmessage 0x40 goto BattleScript_MoveEnd -BattleScript_82DB098:: +BattleScript_SelectingTormentedMoveInPalace:: printstring STRINGID_PKMNCANTUSEMOVETORMENT - goto BattleScript_82DAE2D + goto BattleScript_SelectingUnusableMoveInPalace BattleScript_SelectingNotAllowedMoveTaunt:: printselectionstring STRINGID_PKMNCANTUSEMOVETAUNT @@ -3611,12 +3612,12 @@ BattleScript_MoveUsedIsTaunted:: waitmessage 0x40 goto BattleScript_MoveEnd -BattleScript_82DB0AF:: +BattleScript_SelectingNotAllowedMoveTauntInPalace:: printstring STRINGID_PKMNCANTUSEMOVETAUNT - goto BattleScript_82DAE2D + goto BattleScript_SelectingUnusableMoveInPalace BattleScript_WishComesTrue:: - trywish 0x1, BattleScript_82DB0DE + trywish 0x1, BattleScript_WishButFullHp playanimation TARGET, ANIM_WISH_HEAL, NULL printstring STRINGID_PKMNWISHCAMETRUE waitmessage 0x40 @@ -3627,7 +3628,7 @@ BattleScript_WishComesTrue:: waitmessage 0x40 end2 -BattleScript_82DB0DE:: +BattleScript_WishButFullHp:: printstring STRINGID_PKMNWISHCAMETRUE waitmessage 0x40 pause 0x20 @@ -3644,7 +3645,7 @@ BattleScript_IngrainTurnHeal:: datahpupdate ATTACKER end2 -BattleScript_82DB109:: +BattleScript_PrintMonIsRooted:: pause 0x20 printstring STRINGID_PKMNANCHOREDITSELF waitmessage 0x40 @@ -3684,9 +3685,9 @@ BattleScript_SelectingImprisionedMove:: printselectionstring STRINGID_PKMNCANTUSEMOVESEALED endselectionscript -BattleScript_82DB185:: +BattleScript_SelectingImprisionedMoveInPalace:: printstring STRINGID_PKMNCANTUSEMOVESEALED - goto BattleScript_82DAE2D + goto BattleScript_SelectingUnusableMoveInPalace BattleScript_GrudgeTakesPp:: printstring STRINGID_PKMNLOSTPPGRUDGE @@ -3765,21 +3766,21 @@ BattleScript_MonWokeUpInUproar:: BattleScript_PoisonTurnDmg:: printstring STRINGID_PKMNHURTBYPOISON waitmessage 0x40 -BattleScript_82DB243:: +BattleScript_DoStatusTurnDmg:: statusanimation ATTACKER -BattleScript_82DB245:: +BattleScript_DoTurnDmg:: orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_x100000 healthbarupdate ATTACKER datahpupdate ATTACKER tryfaintmon ATTACKER, FALSE, NULL - atk24 BattleScript_82DB25E -BattleScript_82DB25E:: + atk24 BattleScript_DoTurnDmgEnd +BattleScript_DoTurnDmgEnd:: end2 BattleScript_BurnTurnDmg:: printstring STRINGID_PKMNHURTBYBURN waitmessage 0x40 - goto BattleScript_82DB243 + goto BattleScript_DoStatusTurnDmg BattleScript_MoveUsedIsFrozen:: printstring STRINGID_PKMNISFROZEN @@ -3826,8 +3827,8 @@ BattleScript_MoveUsedIsConfused:: printstring STRINGID_PKMNISCONFUSED waitmessage 0x40 status2animation ATTACKER, STATUS2_CONFUSION - jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_82DB2FF -BattleScript_82DB2D4:: + jumpifbyte EQUAL, cMULTISTRING_CHOOSER, 0x0, BattleScript_MoveUsedIsConfusedRet +BattleScript_DoSelfConfusionDmg:: cancelmultiturnmoves ATTACKER adjustnormaldamage2 printstring STRINGID_ITHURTCONFUSION @@ -3842,7 +3843,7 @@ BattleScript_82DB2D4:: waitmessage 0x40 tryfaintmon ATTACKER, FALSE, NULL goto BattleScript_MoveEnd -BattleScript_82DB2FF:: +BattleScript_MoveUsedIsConfusedRet:: return BattleScript_MoveUsedIsConfusedNoMore:: @@ -3859,7 +3860,7 @@ BattleScript_WrapTurnDmg:: playanimation ATTACKER, ANIM_TURN_TRAP, sANIM_ARG1 printstring STRINGID_PKMNHURTBY waitmessage 0x40 - goto BattleScript_82DB245 + goto BattleScript_DoTurnDmg BattleScript_WrapEnds:: printstring STRINGID_PKMNFREEDFROM @@ -3881,13 +3882,13 @@ BattleScript_NightmareTurnDmg:: printstring STRINGID_PKMNLOCKEDINNIGHTMARE waitmessage 0x40 status2animation ATTACKER, STATUS2_NIGHTMARE - goto BattleScript_82DB245 + goto BattleScript_DoTurnDmg BattleScript_CurseTurnDmg:: printstring STRINGID_PKMNAFFLICTEDBYCURSE waitmessage 0x40 status2animation ATTACKER, STATUS2_CURSED - goto BattleScript_82DB245 + goto BattleScript_DoTurnDmg BattleScript_TargetPRLZHeal:: printstring STRINGID_PKMNHEALEDPARALYSIS @@ -3899,7 +3900,7 @@ BattleScript_MoveEffectSleep:: statusanimation EFFECT_BANK printfromtable gFellAsleepStringIds waitmessage 0x40 -BattleScript_82DB374:: +BattleScript_UpdateEffectStatusIconRet:: updatestatusicon EFFECT_BANK waitstate return @@ -3917,25 +3918,25 @@ BattleScript_MoveEffectPoison:: statusanimation EFFECT_BANK printfromtable gGotPoisonedStringIds waitmessage 0x40 - goto BattleScript_82DB374 + goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectBurn:: statusanimation EFFECT_BANK printfromtable gGotBurnedStringIds waitmessage 0x40 - goto BattleScript_82DB374 + goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectFreeze:: statusanimation EFFECT_BANK printfromtable gGotFrozenStringIds waitmessage 0x40 - goto BattleScript_82DB374 + goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectParalysis:: statusanimation EFFECT_BANK printfromtable gGotParalyzedStringIds waitmessage 0x40 - goto BattleScript_82DB374 + goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectUproar:: printstring STRINGID_PKMNCAUSEDUPROAR @@ -3946,7 +3947,7 @@ BattleScript_MoveEffectToxic:: statusanimation EFFECT_BANK printstring STRINGID_PKMNBADLYPOISONED waitmessage 0x40 - goto BattleScript_82DB374 + goto BattleScript_UpdateEffectStatusIconRet BattleScript_MoveEffectPayDay:: printstring STRINGID_COINSSCATTERED @@ -4137,7 +4138,7 @@ BattleScript_FlashFireBoost:: waitmessage 0x40 goto BattleScript_MoveEnd -BattleScript_82DB5B9:: +BattleScript_AbilityPreventsPhasingOut:: pause 0x20 printstring STRINGID_PKMNANCHORSITSELFWITH waitmessage 0x40 @@ -4258,7 +4259,7 @@ BattleScript_82DB695:: BattleScript_IgnoresAndUsesRandomMove:: printstring STRINGID_PKMNIGNOREDORDERS waitmessage 0x40 - jumptorandomattack 0x0 + jumptorandomattack FALSE BattleScript_MoveUsedLoafingAround:: jumpifbyte NOT_EQUAL, cMULTISTRING_CHOOSER, 0x4, BattleScript_82DB6C7 @@ -4284,7 +4285,7 @@ BattleScript_IgnoresAndFallsAsleep:: BattleScript_82DB6F0:: printstring STRINGID_PKMNWONTOBEY waitmessage 0x40 - goto BattleScript_82DB2D4 + goto BattleScript_DoSelfConfusionDmg BattleScript_SubstituteFade:: playanimation TARGET, ANIM_SUBSTITUTE_FADE, NULL @@ -4579,12 +4580,12 @@ BattleScript_AskIfWantsToForfeitMatch:: forfeityesnobox ATTACKER endselectionscript -BattleScript_82DB9C1:: +BattleScript_PrintPlayerForfeited:: printstring STRINGID_FORFEITEDMATCH waitmessage 0x40 end2 -BattleScript_82DB9C8:: +BattleScript_PrintPlayerForfeitedLinkBattle:: printstring STRINGID_FORFEITEDMATCH waitmessage 0x40 atk57 diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 88991ccd0..9cd6a4d7d 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -1,3 +1,5 @@ +#include "constants/items.h" +#include "constants/songs.h" .include "asm/macros.inc" .include "asm/macros/battle_script.inc" .include "constants/constants.inc" @@ -24,13 +26,13 @@ gBattlescriptsForBallThrow:: @ 82DBD08 .4byte BattleScript_BallThrow .align 2 -gUnknown_082DBD3C:: @ 82DBD3C - .4byte BattleScript_82DBE12 - .4byte BattleScript_82DBE1C - .4byte BattleScript_82DBE1C - .4byte BattleScript_82DBE4B - .4byte BattleScript_82DBE6F - .4byte BattleScript_82DBE91 +gBattlescriptsForUsingItem:: @ 82DBD3C + .4byte BattleScript_PlayerUsesItem + .4byte BattleScript_OpponentUsesHealItem + .4byte BattleScript_OpponentUsesHealItem + .4byte BattleScript_OpponentUsesStatusCureItem + .4byte BattleScript_OpponentUsesXItem + .4byte BattleScript_OpponentUsesGuardSpecs .align 2 gBattlescriptsForRunningByItem:: @ 82DBD54 @@ -58,27 +60,27 @@ BattleScript_SafariBallThrow:: handleballthrow BattleScript_SuccessBallThrow:: - jumpifhalfword EQUAL, gLastUsedItem, ITEM_SAFARI_BALL, BattleScript_82DBD92 + jumpifhalfword EQUAL, gLastUsedItem, ITEM_SAFARI_BALL, BattleScript_PrintCaughtMonInfo incrementgamestat 0xB -BattleScript_82DBD92:: +BattleScript_PrintCaughtMonInfo:: printstring STRINGID_GOTCHAPKMNCAUGHT - trysetcaughtmondexflags BattleScript_82DBDA5 + trysetcaughtmondexflags BattleScript_TryNicknameCaughtMon printstring STRINGID_PKMNDATAADDEDTODEX waitstate setbyte gBattleCommunication, 0x0 displaydexinfo -BattleScript_82DBDA5:: +BattleScript_TryNicknameCaughtMon:: printstring STRINGID_GIVENICKNAMECAPTURED waitstate setbyte gBattleCommunication, 0x0 - trygivecaughtmonnick BattleScript_82DBDC2 + trygivecaughtmonnick BattleScript_GiveCaughtMonEnd givecaughtmon printfromtable gCaughtMonStringIds waitmessage 0x40 - goto BattleScript_82DBDC3 -BattleScript_82DBDC2:: + goto BattleScript_SuccessBallThrowEnd +BattleScript_GiveCaughtMonEnd:: givecaughtmon -BattleScript_82DBDC3:: +BattleScript_SuccessBallThrowEnd:: setbyte gBattleOutcome, CAUGHT finishturn @@ -90,12 +92,12 @@ BattleScript_WallyBallThrow:: BattleScript_ShakeBallThrow:: printfromtable gBallEscapeStringIds waitmessage 0x40 - jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_SAFARI, BattleScript_82DBE01 - jumpifbyte NOT_EQUAL, gNumSafariBalls, 0x0, BattleScript_82DBE01 + jumpifword NO_COMMON_BITS, gBattleTypeFlags, BATTLE_TYPE_SAFARI, BattleScript_ShakeBallThrowEnd + jumpifbyte NOT_EQUAL, gNumSafariBalls, 0x0, BattleScript_ShakeBallThrowEnd printstring STRINGID_OUTOFSAFARIBALLS waitmessage 0x40 setbyte gBattleOutcome, OUT_OF_BALLS -BattleScript_82DBE01:: +BattleScript_ShakeBallThrowEnd:: finishaction BattleScript_TrainerBallBlock:: @@ -106,12 +108,12 @@ BattleScript_TrainerBallBlock:: waitmessage 0x40 finishaction -BattleScript_82DBE12:: +BattleScript_PlayerUsesItem:: setbyte sMOVEEND_STATE, 0xF moveend 0x1, 0x0 end -BattleScript_82DBE1C:: +BattleScript_OpponentUsesHealItem:: printstring STRINGID_EMPTYSTRING3 pause 0x30 playse SE_KAIFUKU @@ -128,7 +130,7 @@ BattleScript_82DBE1C:: moveend 0x1, 0x0 finishaction -BattleScript_82DBE4B:: +BattleScript_OpponentUsesStatusCureItem:: printstring STRINGID_EMPTYSTRING3 pause 0x30 playse SE_KAIFUKU @@ -142,7 +144,7 @@ BattleScript_82DBE4B:: moveend 0x1, 0x0 finishaction -BattleScript_82DBE6F:: +BattleScript_OpponentUsesXItem:: printstring STRINGID_EMPTYSTRING3 pause 0x30 playse SE_KAIFUKU @@ -155,7 +157,7 @@ BattleScript_82DBE6F:: moveend 0x1, 0x0 finishaction -BattleScript_82DBE91:: +BattleScript_OpponentUsesGuardSpecs:: printstring STRINGID_EMPTYSTRING3 pause 0x30 playse SE_KAIFUKU diff --git a/data/battle_tower.s b/data/battle_tower.s index a952e0773..b3926d19a 100644 --- a/data/battle_tower.s +++ b/data/battle_tower.s @@ -1,3 +1,7 @@ +#include "constants/easy_chat.h" +#include "constants/items.h" +#include "constants/moves.h" +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/cable_car.s b/data/cable_car.s index 0f3bf3e2e..32a265c97 100644 --- a/data/cable_car.s +++ b/data/cable_car.s @@ -1,3 +1,4 @@ +#include "constants/map_objects.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/data2b.s b/data/data2b.s index e723b4c97..6051b86cc 100644 --- a/data/data2b.s +++ b/data/data2b.s @@ -1,5 +1,8 @@ @ the second big chunk of data +#include "constants/items.h" +#include "constants/moves.h" +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/data2c.s b/data/data2c.s index be715493c..904009254 100644 --- a/data/data2c.s +++ b/data/data2c.s @@ -1,5 +1,9 @@ @ the second big chunk of data +#include "constants/abilities.h" +#include "constants/items.h" +#include "constants/moves.h" +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/easy_chat.s b/data/easy_chat.s index d6efc1c7f..a1a5e0c4a 100644 --- a/data/easy_chat.s +++ b/data/easy_chat.s @@ -1,3 +1,6 @@ +#include "constants/easy_chat.h" +#include "constants/moves.h" +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/event_scripts.s b/data/event_scripts.s index 763b39585..d05eb1965 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -1,8 +1,12 @@ +#include "constants/flags.h" +#include "constants/items.h" +#include "constants/moves.h" +#include "constants/songs.h" +#include "constants/species.h" +#include "constants/vars.h" .include "asm/macros.inc" .include "asm/macros/event.inc" .include "constants/constants.inc" - .include "constants/variables.inc" - .include "constants/flags.inc" .section script_data, "aw", %progbits diff --git a/data/field_map_obj.s b/data/field_map_obj.s index 52b39f932..50bdfe6f3 100644 --- a/data/field_map_obj.s +++ b/data/field_map_obj.s @@ -1,3 +1,4 @@ +#include "constants/map_objects.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/graphics.s b/data/graphics.s index 72daf144f..06c4b9e18 100644 --- a/data/graphics.s +++ b/data/graphics.s @@ -16,12 +16,108 @@ gUnknown_08C00524:: @ 8C00524 .incbin "baserom.gba", 0xc00c10, 0xa34 gUnknown_08C01644:: @ 8C01644 - .incbin "baserom.gba", 0xc01644, 0xE0 + .incbin "baserom.gba", 0xc01644, 0xe0 gUnknown_08C01724:: @ 8C01724 - .incbin "baserom.gba", 0xc01724, 0xBDC + .incbin "baserom.gba", 0xc01724, 0x18 + + .align 2 +gInterfaceGfx_PokeBall:: + .incbin "graphics/interface/ball/poke.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_PokeBall:: + .incbin "graphics/interface/ball/poke.gbapal.lz" + + .align 2 +gInterfaceGfx_GreatBall:: + .incbin "graphics/interface/ball/great.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_GreatBall:: + .incbin "graphics/interface/ball/great.gbapal.lz" + + .align 2 +gInterfaceGfx_SafariBall:: + .incbin "graphics/interface/ball/safari.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_SafariBall:: + .incbin "graphics/interface/ball/safari.gbapal.lz" + + .align 2 +gInterfaceGfx_UltraBall:: + .incbin "baserom.gba", 0xC019E0, 0xB4 + + .align 2 +gInterfacePal_UltraBall:: + .incbin "baserom.gba", 0xC01A94, 0x20 + + .align 2 +gInterfaceGfx_MasterBall:: + .incbin "graphics/interface/ball/master.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_MasterBall:: + .incbin "graphics/interface/ball/master.gbapal.lz" + + .align 2 +gInterfaceGfx_NetBall:: + .incbin "graphics/interface/ball/net.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_NetBall:: + .incbin "graphics/interface/ball/net.gbapal.lz" + + .align 2 +gInterfaceGfx_DiveBall:: + .incbin "graphics/interface/ball/dive.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_DiveBall:: + .incbin "graphics/interface/ball/dive.gbapal.lz" + + .align 2 +gInterfaceGfx_NestBall:: + .incbin "graphics/interface/ball/nest.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_NestBall:: + .incbin "graphics/interface/ball/nest.gbapal.lz" + + .align 2 +gInterfaceGfx_RepeatBall:: + .incbin "graphics/interface/ball/repeat.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_RepeatBall:: + .incbin "graphics/interface/ball/repeat.gbapal.lz" + + .align 2 +gInterfaceGfx_TimerBall:: + .incbin "graphics/interface/ball/timer.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_TimerBall:: + .incbin "graphics/interface/ball/timer.gbapal.lz" + + .align 2 +gInterfaceGfx_LuxuryBall:: + .incbin "graphics/interface/ball/luxury.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_LuxuryBall:: + .incbin "graphics/interface/ball/luxury.gbapal.lz" + + .align 2 +gInterfaceGfx_PremierBall:: + .incbin "graphics/interface/ball/premier.4bpp.lz" @ 0xBC + + .align 2 +gInterfacePal_PremierBall:: + .incbin "graphics/interface/ball/premier.gbapal.lz" -gUnknown_08C02300:: @ 8C02300 +gOpenPokeballGfx:: @ 8C02300 .incbin "baserom.gba", 0xc02300, 0x7c gUnknown_08C0237C:: @ 8C0237C diff --git a/data/graphics/field_objects/berry_tree_graphics_tables.inc b/data/graphics/field_objects/berry_tree_graphics_tables.inc index 52c8719fe..8d716d759 100644 --- a/data/graphics/field_objects/berry_tree_graphics_tables.inc +++ b/data/graphics/field_objects/berry_tree_graphics_tables.inc @@ -478,18 +478,18 @@ gFieldObjectPicTable_TamatoBerryTree:: @ 850C758 gBerryTreePaletteSlotTable_Tamato:: @ 850C7A0 berry_tree_palette_slot_table 2 - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES gBerryTreeFieldObjectGraphicsIdTable:: @ 850C7AA - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_EARLY_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_LATE_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_LATE_STAGES - .byte FIELD_OBJ_GFX_BERRY_TREE_LATE_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES + .byte MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES .align 2 gBerryTreePicTablePointers:: @ 850C7B0 diff --git a/data/graphics/pokemon/animation_delay_table.inc b/data/graphics/pokemon/animation_delay_table.inc index 55d602bab..be517649b 100644 --- a/data/graphics/pokemon/animation_delay_table.inc +++ b/data/graphics/pokemon/animation_delay_table.inc @@ -81,7 +81,7 @@ gMonAnimationDelayTable:: @ 8329B87 .byte 0x00 @ SPECIES_SLOWBRO .byte 0x00 @ SPECIES_MAGNEMITE .byte 0x00 @ SPECIES_MAGNETON - .byte 0x00 @ SPECIES_FARFETCH_D + .byte 0x00 @ SPECIES_FARFETCHD .byte 0x00 @ SPECIES_DODUO .byte 0x00 @ SPECIES_DODRIO .byte 0x00 @ SPECIES_SEEL diff --git a/data/graphics/pokemon/front_anim_ids_table.inc b/data/graphics/pokemon/front_anim_ids_table.inc index 6e2d7fe0e..4f225348a 100644 --- a/data/graphics/pokemon/front_anim_ids_table.inc +++ b/data/graphics/pokemon/front_anim_ids_table.inc @@ -81,7 +81,7 @@ gMonFrontAnimIdsTable:: @ 83299EC .byte 0x0b @ SPECIES_SLOWBRO .byte 0x54 @ SPECIES_MAGNEMITE .byte 0x2c @ SPECIES_MAGNETON - .byte 0x48 @ SPECIES_FARFETCH_D + .byte 0x48 @ SPECIES_FARFETCHD .byte 0x4c @ SPECIES_DODUO .byte 0x41 @ SPECIES_DODRIO .byte 0x0b @ SPECIES_SEEL diff --git a/data/item_menu_icons.s b/data/item_menu_icons.s index 3b7b0ef89..01aa67eb0 100644 --- a/data/item_menu_icons.s +++ b/data/item_menu_icons.s @@ -1,3 +1,4 @@ +#include "constants/items.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/link.s b/data/link.s index 336383678..8cd19ba5c 100644 --- a/data/link.s +++ b/data/link.s @@ -1,5 +1,6 @@ @ the second big chunk of data +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/map_events.s b/data/map_events.s index 805c4d255..8784ee047 100644 --- a/data/map_events.s +++ b/data/map_events.s @@ -1,7 +1,9 @@ +#include "constants/flags.h" +#include "constants/items.h" +#include "constants/map_objects.h" +#include "constants/vars.h" .include "asm/macros.inc" .include "constants/constants.inc" - .include "constants/flags.inc" - .include "constants/variables.inc" .section .rodata diff --git a/data/maps.s b/data/maps.s index a8074c02a..8848ac242 100644 --- a/data/maps.s +++ b/data/maps.s @@ -1,3 +1,4 @@ +#include "constants/songs.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/rom4.s b/data/overworld.s index 890829cd9..890829cd9 100644 --- a/data/rom4.s +++ b/data/overworld.s diff --git a/data/player_pc.s b/data/player_pc.s index c3422db30..47bdbff39 100644 --- a/data/player_pc.s +++ b/data/player_pc.s @@ -1,3 +1,4 @@ +#include "constants/items.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/pokeball.s b/data/pokeball.s deleted file mode 100644 index 4e7b4315a..000000000 --- a/data/pokeball.s +++ /dev/null @@ -1,14 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - .align 2, 0 - -gUnknown_0832C400:: @ 832C400 - .incbin "baserom.gba", 0x32c400, 0x60 - -gUnknown_0832C460:: @ 832C460 - .incbin "baserom.gba", 0x32c460, 0x128 - -gUnknown_0832C588:: @ 832C588 - .incbin "baserom.gba", 0x32c588, 0x138 diff --git a/data/text/easy_chat/easy_chat_group_pokemon2.s b/data/text/easy_chat/easy_chat_group_pokemon2.s index 6a1bc0fcd..e2f58e496 100644 --- a/data/text/easy_chat/easy_chat_group_pokemon2.s +++ b/data/text/easy_chat/easy_chat_group_pokemon2.s @@ -57,7 +57,7 @@ gEasyChatGroup_Pokemon2:: @ 859CE0C .2byte SPECIES_ESPEON .2byte SPECIES_EXEGGCUTE .2byte SPECIES_EXEGGUTOR - .2byte SPECIES_FARFETCH_D + .2byte SPECIES_FARFETCHD .2byte SPECIES_FEAROW .2byte SPECIES_FERALIGATR .2byte SPECIES_FLAAFFY diff --git a/data/text/easy_chat/easy_chat_words_by_letter.inc b/data/text/easy_chat/easy_chat_words_by_letter.inc index a271a5586..bce4be347 100644 --- a/data/text/easy_chat/easy_chat_words_by_letter.inc +++ b/data/text/easy_chat/easy_chat_words_by_letter.inc @@ -1,2522 +1,2522 @@ gEasyChatWordsByLetter_Others:: @ 859D0B4 - ec_word EXCL - ec_word EXCL_EXCL - ec_word DASH - ec_word DASH_DASH_DASH - ec_word ELLIPSIS - ec_word ELLIPSIS_EXCL - ec_word ELLIPSIS_ELLIPSIS_ELLIPSIS - ec_word 1_HIT_KO_EXCL - ec_word QUES - ec_word QUES_EXCL + .2byte EC_WORD_EXCL + .2byte EC_WORD_EXCL_EXCL + .2byte EC_WORD_DASH + .2byte EC_WORD_DASH_DASH_DASH + .2byte EC_WORD_ELLIPSIS + .2byte EC_WORD_ELLIPSIS_EXCL + .2byte EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS + .2byte EC_WORD_1_HIT_KO_EXCL + .2byte EC_WORD_QUES + .2byte EC_WORD_QUES_EXCL gEasyChatWordsByLetter_A:: @ 859D0C8 - ec_word A - ec_word A_LITTLE - ec_word A_LOT - ec_word A_TINY_BIT - ec_word ABOUT - ec_word ABOVE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 ABRA - ec_pokemon2 ABRA - ec_word ABSENT - ec_pokemon1 ABSOL - ec_word ABSOLUTELY - ec_move1 ABSORB - ec_word ACCEPT - ec_move2 ACID - ec_move2 ACID_ARMOR - ec_word ADORE - ec_word ADULT - ec_word ADVENTURE - ec_move2 AERIAL_ACE - ec_move1 AEROBLAST - ec_pokemon2 AERODACTYL - ec_word AFTER - ec_word AGE - ec_pokemon1 AGGRON - ec_move1 AGILITY - ec_word AGREE - ec_word AHAHA - ec_word AIM - ec_pokemon2 AIPOM - ec_move1 AIR_CUTTER - ec_word AIR_LOCK - ec_word AIYEEH - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 ALAKAZAM - ec_pokemon2 ALAKAZAM - ec_word ALL - ec_word ALL_RIGHT - ec_word ALLOW - ec_word ALLOWANCE - ec_word ALLY - ec_word ALMOST - ec_word ALONE - ec_word ALSO - ec_word ALT_COLOR - ec_pokemon1 ALTARIA - ec_word ALTHOUGH - ec_word ALWAYS - ec_word AM - ec_move2 AMNESIA - ec_pokemon2 AMPHAROS - ec_word AMUSING - ec_word AN - ec_move1 ANCIENT_POWER - ec_word AND - ec_word ANGER - ec_word ANGERS - ec_word ANGRY - ec_word ANIME - ec_pokemon1 ANORITH - ec_word ANOTHER - ec_word ANTICIPATION - ec_word ANY - ec_word ANYWHERE - ec_word APOLOGIZE - ec_word APPEAL - ec_word APPEAR - ec_word APPEARS - ec_word APPRECIATE - ec_word APPROVED - ec_pokemon2 ARBOK - ec_pokemon2 ARCANINE - ec_word ARE - ec_word AREN_T - ec_word ARENA_TRAP - ec_pokemon2 ARIADOS - ec_move2 ARM_THRUST - ec_pokemon1 ARMALDO - ec_move1 AROMATHERAPY - ec_pokemon1 ARON - ec_word AROUND - ec_word ARRGH - ec_pokemon2 ARTICUNO - ec_word AS - ec_word AS_IF - ec_word AS_MUCH_AS - ec_move2 ASSIST - ec_move1 ASTONISH - ec_word AT - ec_word ATTACK - ec_move2 ATTRACT - ec_word AUNT - ec_move1 AURORA_BEAM - ec_word AVANT_GARDE - ec_word AWAY - ec_word AWESOME - ec_word AWFUL - ec_word AWFULLY - ec_word AWW - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 AZUMARILL - ec_pokemon2 AZUMARILL - ec_pokemon1 AZURILL + .2byte EC_WORD_A + .2byte EC_WORD_A_LITTLE + .2byte EC_WORD_A_LOT + .2byte EC_WORD_A_TINY_BIT + .2byte EC_WORD_ABOUT + .2byte EC_WORD_ABOVE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(ABRA) + .2byte EC_POKEMON2(ABRA) + .2byte EC_WORD_ABSENT + .2byte EC_POKEMON(ABSOL) + .2byte EC_WORD_ABSOLUTELY + .2byte EC_MOVE(ABSORB) + .2byte EC_WORD_ACCEPT + .2byte EC_MOVE2(ACID) + .2byte EC_MOVE2(ACID_ARMOR) + .2byte EC_WORD_ADORE + .2byte EC_WORD_ADULT + .2byte EC_WORD_ADVENTURE + .2byte EC_MOVE2(AERIAL_ACE) + .2byte EC_MOVE(AEROBLAST) + .2byte EC_POKEMON2(AERODACTYL) + .2byte EC_WORD_AFTER + .2byte EC_WORD_AGE + .2byte EC_POKEMON(AGGRON) + .2byte EC_MOVE(AGILITY) + .2byte EC_WORD_AGREE + .2byte EC_WORD_AHAHA + .2byte EC_WORD_AIM + .2byte EC_POKEMON2(AIPOM) + .2byte EC_MOVE(AIR_CUTTER) + .2byte EC_WORD_AIR_LOCK + .2byte EC_WORD_AIYEEH + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(ALAKAZAM) + .2byte EC_POKEMON2(ALAKAZAM) + .2byte EC_WORD_ALL + .2byte EC_WORD_ALL_RIGHT + .2byte EC_WORD_ALLOW + .2byte EC_WORD_ALLOWANCE + .2byte EC_WORD_ALLY + .2byte EC_WORD_ALMOST + .2byte EC_WORD_ALONE + .2byte EC_WORD_ALSO + .2byte EC_WORD_ALT_COLOR + .2byte EC_POKEMON(ALTARIA) + .2byte EC_WORD_ALTHOUGH + .2byte EC_WORD_ALWAYS + .2byte EC_WORD_AM + .2byte EC_MOVE2(AMNESIA) + .2byte EC_POKEMON2(AMPHAROS) + .2byte EC_WORD_AMUSING + .2byte EC_WORD_AN + .2byte EC_MOVE(ANCIENT_POWER) + .2byte EC_WORD_AND + .2byte EC_WORD_ANGER + .2byte EC_WORD_ANGERS + .2byte EC_WORD_ANGRY + .2byte EC_WORD_ANIME + .2byte EC_POKEMON(ANORITH) + .2byte EC_WORD_ANOTHER + .2byte EC_WORD_ANTICIPATION + .2byte EC_WORD_ANY + .2byte EC_WORD_ANYWHERE + .2byte EC_WORD_APOLOGIZE + .2byte EC_WORD_APPEAL + .2byte EC_WORD_APPEAR + .2byte EC_WORD_APPEARS + .2byte EC_WORD_APPRECIATE + .2byte EC_WORD_APPROVED + .2byte EC_POKEMON2(ARBOK) + .2byte EC_POKEMON2(ARCANINE) + .2byte EC_WORD_ARE + .2byte EC_WORD_AREN_T + .2byte EC_WORD_ARENA_TRAP + .2byte EC_POKEMON2(ARIADOS) + .2byte EC_MOVE2(ARM_THRUST) + .2byte EC_POKEMON(ARMALDO) + .2byte EC_MOVE(AROMATHERAPY) + .2byte EC_POKEMON(ARON) + .2byte EC_WORD_AROUND + .2byte EC_WORD_ARRGH + .2byte EC_POKEMON2(ARTICUNO) + .2byte EC_WORD_AS + .2byte EC_WORD_AS_IF + .2byte EC_WORD_AS_MUCH_AS + .2byte EC_MOVE2(ASSIST) + .2byte EC_MOVE(ASTONISH) + .2byte EC_WORD_AT + .2byte EC_WORD_ATTACK + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_AUNT + .2byte EC_MOVE(AURORA_BEAM) + .2byte EC_WORD_AVANT_GARDE + .2byte EC_WORD_AWAY + .2byte EC_WORD_AWESOME + .2byte EC_WORD_AWFUL + .2byte EC_WORD_AWFULLY + .2byte EC_WORD_AWW + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(AZUMARILL) + .2byte EC_POKEMON2(AZUMARILL) + .2byte EC_POKEMON(AZURILL) gEasyChatWordsByLetter_B:: @ 859D19C - ec_word BABE - ec_word BABY - ec_word BACK - ec_word BAD - ec_word BADLY - ec_word BAG - ec_pokemon1 BAGON - ec_word BALL - ec_pokemon1 BALTOY - ec_pokemon1 BANETTE - ec_word BANG - ec_pokemon1 BARBOACH - ec_move2 BARRAGE - ec_move2 BARRIER - ec_word BATH - ec_move2 BATON_PASS - ec_word BATTLE - ec_word BATTLE_ARMOR - ec_word BATTLE_ROOM - ec_word BATTLE_TOWER - ec_pokemon2 BAYLEEF - ec_word BE - ec_word BEAT - ec_move2 BEAT_UP - ec_pokemon1 BEAUTIFLY - ec_word BEAUTIFUL - ec_word BEAUTY - ec_word BECOMES - ec_pokemon2 BEEDRILL - ec_word BEEN - ec_word BEFORE - ec_word BEGINNING - ec_word BEING - ec_pokemon1 BELDUM - ec_word BELIEVE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 BELLOSSOM - ec_pokemon2 BELLOSSOM - ec_pokemon2 BELLSPROUT - ec_move2 BELLY_DRUM - ec_word BELONGS_TO - ec_word BELOW - ec_word BERRY - ec_word BESIDE - ec_word BEST - ec_word BETTER - ec_move1 BIDE - ec_word BIG - ec_word BIKE - ec_move1 BIND - ec_move1 BITE - ec_move2 BLAST_BURN - ec_pokemon2 BLASTOISE - ec_word BLAZE - ec_move2 BLAZE_KICK - ec_pokemon1 BLAZIKEN - ec_word BLEND - ec_pokemon2 BLISSEY - ec_move2 BLIZZARD - ec_move2 BLOCK - ec_word BOARD - ec_move2 BODY_SLAM - ec_move2 BONE_CLUB - ec_move2 BONE_RUSH - ec_move2 BONEMERANG - ec_word BOOK - ec_word BORED - ec_word BORING - ec_move2 BOUNCE - ec_word BOY - ec_word BRAG - ec_word BREAK - ec_pokemon1 BRELOOM - ec_move1 BRICK_BREAK - ec_word BROTHER - ec_move1 BUBBLE - ec_move2 BUBBLE_BEAM - ec_word BUG - ec_pokemon2 BULBASAUR - ec_move2 BULK_UP - ec_move2 BULLET_SEED - ec_word BUSY - ec_word BUT - ec_pokemon2 BUTTERFREE - ec_word BYE_BYE + .2byte EC_WORD_BABE + .2byte EC_WORD_BABY + .2byte EC_WORD_BACK + .2byte EC_WORD_BAD + .2byte EC_WORD_BADLY + .2byte EC_WORD_BAG + .2byte EC_POKEMON(BAGON) + .2byte EC_WORD_BALL + .2byte EC_POKEMON(BALTOY) + .2byte EC_POKEMON(BANETTE) + .2byte EC_WORD_BANG + .2byte EC_POKEMON(BARBOACH) + .2byte EC_MOVE2(BARRAGE) + .2byte EC_MOVE2(BARRIER) + .2byte EC_WORD_BATH + .2byte EC_MOVE2(BATON_PASS) + .2byte EC_WORD_BATTLE + .2byte EC_WORD_BATTLE_ARMOR + .2byte EC_WORD_BATTLE_ROOM + .2byte EC_WORD_BATTLE_TOWER + .2byte EC_POKEMON2(BAYLEEF) + .2byte EC_WORD_BE + .2byte EC_WORD_BEAT + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_POKEMON(BEAUTIFLY) + .2byte EC_WORD_BEAUTIFUL + .2byte EC_WORD_BEAUTY + .2byte EC_WORD_BECOMES + .2byte EC_POKEMON2(BEEDRILL) + .2byte EC_WORD_BEEN + .2byte EC_WORD_BEFORE + .2byte EC_WORD_BEGINNING + .2byte EC_WORD_BEING + .2byte EC_POKEMON(BELDUM) + .2byte EC_WORD_BELIEVE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(BELLOSSOM) + .2byte EC_POKEMON2(BELLOSSOM) + .2byte EC_POKEMON2(BELLSPROUT) + .2byte EC_MOVE2(BELLY_DRUM) + .2byte EC_WORD_BELONGS_TO + .2byte EC_WORD_BELOW + .2byte EC_WORD_BERRY + .2byte EC_WORD_BESIDE + .2byte EC_WORD_BEST + .2byte EC_WORD_BETTER + .2byte EC_MOVE(BIDE) + .2byte EC_WORD_BIG + .2byte EC_WORD_BIKE + .2byte EC_MOVE(BIND) + .2byte EC_MOVE(BITE) + .2byte EC_MOVE2(BLAST_BURN) + .2byte EC_POKEMON2(BLASTOISE) + .2byte EC_WORD_BLAZE + .2byte EC_MOVE2(BLAZE_KICK) + .2byte EC_POKEMON(BLAZIKEN) + .2byte EC_WORD_BLEND + .2byte EC_POKEMON2(BLISSEY) + .2byte EC_MOVE2(BLIZZARD) + .2byte EC_MOVE2(BLOCK) + .2byte EC_WORD_BOARD + .2byte EC_MOVE2(BODY_SLAM) + .2byte EC_MOVE2(BONE_CLUB) + .2byte EC_MOVE2(BONE_RUSH) + .2byte EC_MOVE2(BONEMERANG) + .2byte EC_WORD_BOOK + .2byte EC_WORD_BORED + .2byte EC_WORD_BORING + .2byte EC_MOVE2(BOUNCE) + .2byte EC_WORD_BOY + .2byte EC_WORD_BRAG + .2byte EC_WORD_BREAK + .2byte EC_POKEMON(BRELOOM) + .2byte EC_MOVE(BRICK_BREAK) + .2byte EC_WORD_BROTHER + .2byte EC_MOVE(BUBBLE) + .2byte EC_MOVE2(BUBBLE_BEAM) + .2byte EC_WORD_BUG + .2byte EC_POKEMON2(BULBASAUR) + .2byte EC_MOVE2(BULK_UP) + .2byte EC_MOVE2(BULLET_SEED) + .2byte EC_WORD_BUSY + .2byte EC_WORD_BUT + .2byte EC_POKEMON2(BUTTERFREE) + .2byte EC_WORD_BYE_BYE gEasyChatWordsByLetter_C:: @ 859D248 - ec_pokemon1 CACNEA - ec_pokemon1 CACTURNE - ec_move2 CALM_MIND - ec_word CAME - ec_word CAMERA - ec_pokemon1 CAMERUPT - ec_move2 CAMOUFLAGE - ec_word CAN - ec_word CAN_WIN - ec_word CAN_T - ec_word CAN_T_WIN - ec_word CANCEL - ec_word CAPABLE - ec_word CARDS - ec_word CARE - ec_word CARES - ec_pokemon1 CARVANHA - ec_pokemon1 CASCOON - ec_word CASE - ec_pokemon1 CASTFORM - ec_pokemon2 CATERPIE - ec_word CAUSE - ec_pokemon2 CELEBI - ec_word CENTER - ec_word CHALLENGE - ec_word CHANGE - ec_word CHANNEL - ec_pokemon2 CHANSEY - ec_move1 CHARGE - ec_pokemon2 CHARIZARD - ec_move1 CHARM - ec_pokemon2 CHARMANDER - ec_pokemon2 CHARMELEON - ec_word CHAT - ec_pokemon2 CHIKORITA - ec_word CHILD_S_PLAY - ec_word CHILDREN - ec_pokemon1 CHIMECHO - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 CHINCHOU - ec_pokemon2 CHINCHOU - ec_word CHLOROPHYLL - ec_word CHOICE - ec_word CHOOSE - ec_word CHORES - ec_move1 CLAMP - ec_pokemon1 CLAMPERL - ec_word CLASS - ec_pokemon1 CLAYDOL - ec_word CLEAR_BODY - ec_pokemon2 CLEFABLE - ec_pokemon2 CLEFAIRY - ec_pokemon2 CLEFFA - ec_word CLOSE - ec_word CLOUD_NINE - ec_pokemon2 CLOYSTER - ec_word COLD - ec_word COLLECT - ec_word COLLECTION - ec_word COLOR - ec_word COLOR_CHANGE - ec_pokemon1 COMBUSKEN - ec_word COME - ec_word COME_ON - ec_word COME_OVER - ec_move2 COMET_PUNCH - ec_word COMICS - ec_word COMMEMORATE - ec_word COMPLETE - ec_word COMPOUNDEYES - ec_word CONCEDE - ec_move1 CONFUSE_RAY - ec_word CONFUSED - ec_move2 CONFUSION - ec_word CONGRATS - ec_move1 CONSTRICT - ec_word CONTEST - ec_word CONVERSATION - ec_move2 CONVERSION - ec_move2 CONVERSION_2 - ec_word COOL - ec_word COOLNESS - ec_pokemon1 CORPHISH - ec_word CORRECT - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 CORSOLA - ec_pokemon2 CORSOLA - ec_move1 COSMIC_POWER - ec_move2 COTTON_SPORE - ec_word COULD - ec_word COULDN_T - ec_word COUNT_ON - ec_move1 COUNTER - ec_word COUPLE - ec_move2 COVET - ec_move1 CRABHAMMER - ec_pokemon1 CRADILY - ec_pokemon1 CRAWDAUNT - ec_word CRIES - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 CROBAT - ec_pokemon2 CROBAT - ec_pokemon2 CROCONAW - ec_move1 CROSS_CHOP - ec_move1 CRUNCH - ec_word CRUSH - ec_move2 CRUSH_CLAW - ec_word CRY - ec_pokemon2 CUBONE - ec_word CURRENT - ec_move2 CURSE - ec_move1 CUT - ec_word CUTE - ec_word CUTE_CHARM - ec_word CUTENESS - ec_pokemon2 CYNDAQUIL + .2byte EC_POKEMON(CACNEA) + .2byte EC_POKEMON(CACTURNE) + .2byte EC_MOVE2(CALM_MIND) + .2byte EC_WORD_CAME + .2byte EC_WORD_CAMERA + .2byte EC_POKEMON(CAMERUPT) + .2byte EC_MOVE2(CAMOUFLAGE) + .2byte EC_WORD_CAN + .2byte EC_WORD_CAN_WIN + .2byte EC_WORD_CAN_T + .2byte EC_WORD_CAN_T_WIN + .2byte EC_WORD_CANCEL + .2byte EC_WORD_CAPABLE + .2byte EC_WORD_CARDS + .2byte EC_WORD_CARE + .2byte EC_WORD_CARES + .2byte EC_POKEMON(CARVANHA) + .2byte EC_POKEMON(CASCOON) + .2byte EC_WORD_CASE + .2byte EC_POKEMON(CASTFORM) + .2byte EC_POKEMON2(CATERPIE) + .2byte EC_WORD_CAUSE + .2byte EC_POKEMON2(CELEBI) + .2byte EC_WORD_CENTER + .2byte EC_WORD_CHALLENGE + .2byte EC_WORD_CHANGE + .2byte EC_WORD_CHANNEL + .2byte EC_POKEMON2(CHANSEY) + .2byte EC_MOVE(CHARGE) + .2byte EC_POKEMON2(CHARIZARD) + .2byte EC_MOVE(CHARM) + .2byte EC_POKEMON2(CHARMANDER) + .2byte EC_POKEMON2(CHARMELEON) + .2byte EC_WORD_CHAT + .2byte EC_POKEMON2(CHIKORITA) + .2byte EC_WORD_CHILD_S_PLAY + .2byte EC_WORD_CHILDREN + .2byte EC_POKEMON(CHIMECHO) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(CHINCHOU) + .2byte EC_POKEMON2(CHINCHOU) + .2byte EC_WORD_CHLOROPHYLL + .2byte EC_WORD_CHOICE + .2byte EC_WORD_CHOOSE + .2byte EC_WORD_CHORES + .2byte EC_MOVE(CLAMP) + .2byte EC_POKEMON(CLAMPERL) + .2byte EC_WORD_CLASS + .2byte EC_POKEMON(CLAYDOL) + .2byte EC_WORD_CLEAR_BODY + .2byte EC_POKEMON2(CLEFABLE) + .2byte EC_POKEMON2(CLEFAIRY) + .2byte EC_POKEMON2(CLEFFA) + .2byte EC_WORD_CLOSE + .2byte EC_WORD_CLOUD_NINE + .2byte EC_POKEMON2(CLOYSTER) + .2byte EC_WORD_COLD + .2byte EC_WORD_COLLECT + .2byte EC_WORD_COLLECTION + .2byte EC_WORD_COLOR + .2byte EC_WORD_COLOR_CHANGE + .2byte EC_POKEMON(COMBUSKEN) + .2byte EC_WORD_COME + .2byte EC_WORD_COME_ON + .2byte EC_WORD_COME_OVER + .2byte EC_MOVE2(COMET_PUNCH) + .2byte EC_WORD_COMICS + .2byte EC_WORD_COMMEMORATE + .2byte EC_WORD_COMPLETE + .2byte EC_WORD_COMPOUNDEYES + .2byte EC_WORD_CONCEDE + .2byte EC_MOVE(CONFUSE_RAY) + .2byte EC_WORD_CONFUSED + .2byte EC_MOVE2(CONFUSION) + .2byte EC_WORD_CONGRATS + .2byte EC_MOVE(CONSTRICT) + .2byte EC_WORD_CONTEST + .2byte EC_WORD_CONVERSATION + .2byte EC_MOVE2(CONVERSION) + .2byte EC_MOVE2(CONVERSION_2) + .2byte EC_WORD_COOL + .2byte EC_WORD_COOLNESS + .2byte EC_POKEMON(CORPHISH) + .2byte EC_WORD_CORRECT + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(CORSOLA) + .2byte EC_POKEMON2(CORSOLA) + .2byte EC_MOVE(COSMIC_POWER) + .2byte EC_MOVE2(COTTON_SPORE) + .2byte EC_WORD_COULD + .2byte EC_WORD_COULDN_T + .2byte EC_WORD_COUNT_ON + .2byte EC_MOVE(COUNTER) + .2byte EC_WORD_COUPLE + .2byte EC_MOVE2(COVET) + .2byte EC_MOVE(CRABHAMMER) + .2byte EC_POKEMON(CRADILY) + .2byte EC_POKEMON(CRAWDAUNT) + .2byte EC_WORD_CRIES + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(CROBAT) + .2byte EC_POKEMON2(CROBAT) + .2byte EC_POKEMON2(CROCONAW) + .2byte EC_MOVE(CROSS_CHOP) + .2byte EC_MOVE(CRUNCH) + .2byte EC_WORD_CRUSH + .2byte EC_MOVE2(CRUSH_CLAW) + .2byte EC_WORD_CRY + .2byte EC_POKEMON2(CUBONE) + .2byte EC_WORD_CURRENT + .2byte EC_MOVE2(CURSE) + .2byte EC_MOVE(CUT) + .2byte EC_WORD_CUTE + .2byte EC_WORD_CUTE_CHARM + .2byte EC_WORD_CUTENESS + .2byte EC_POKEMON2(CYNDAQUIL) gEasyChatWordsByLetter_D:: @ 859D336 - ec_word DAILY - ec_word DAMP - ec_word DANCE - ec_word DANGER - ec_word DARK - ec_word DARN - ec_word DATE - ec_word DAUGHTER - ec_word DAY - ec_word DAYS - ec_word DAYTIME - ec_word DECIDE - ec_word DECIDED - ec_word DEEP - ec_word DEFEATED - ec_move2 DEFENSE_CURL - ec_pokemon1 DELCATTY - ec_pokemon2 DELIBIRD - ec_pokemon1 DEOXYS - ec_word DEPT_STORE - ec_word DESIGN - ec_word DESTINY - ec_move2 DESTINY_BOND - ec_word DESTROYED - ec_move2 DETECT - ec_pokemon2 DEWGONG - ec_word DID - ec_word DIDN_T - ec_word DIET - ec_word DIFFERENT - ec_move1 DIG - ec_word DIGITAL - ec_pokemon2 DIGLETT - ec_word DIRECT - ec_move1 DISABLE - ec_word DISAPPEAR - ec_word DISAPPOINT - ec_word DISAPPOINTED - ec_word DISAPPOINTS - ec_word DISASTER - ec_word DISLIKE - ec_word DISLIKES - ec_pokemon2 DITTO - ec_move2 DIVE - ec_move2 DIZZY_PUNCH - ec_word DO - ec_word DOCILE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 DODRIO - ec_pokemon2 DODRIO - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 DODUO - ec_pokemon2 DODUO - ec_word DOES - ec_word DOESN_T - ec_word DON_T - ec_word DONE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 DONPHAN - ec_pokemon2 DONPHAN - ec_move2 DOOM_DESIRE - ec_move2 DOUBLE_KICK - ec_move1 DOUBLE_TEAM - ec_move1 DOUBLE_EDGE - ec_move1 DOUBLE_SLAP - ec_word DOWN - ec_word DOWNCAST - ec_word DRAGON - ec_move2 DRAGON_CLAW - ec_move2 DRAGON_DANCE - ec_move2 DRAGON_RAGE - ec_pokemon2 DRAGONAIR - ec_move2 DRAGON_BREATH - ec_pokemon2 DRAGONITE - ec_pokemon2 DRATINI - ec_word DREAM - ec_move2 DREAM_EATER - ec_move2 DRILL_PECK - ec_word DRINK - ec_word DRINKS - ec_word DRIZZLE - ec_word DROOLING - ec_word DROUGHT - ec_pokemon2 DROWZEE - ec_word DUDE - ec_pokemon2 DUGTRIO - ec_pokemon2 DUNSPARCE - ec_pokemon1 DUSCLOPS - ec_pokemon1 DUSKULL - ec_pokemon1 DUSTOX - ec_move2 DYNAMIC_PUNCH + .2byte EC_WORD_DAILY + .2byte EC_WORD_DAMP + .2byte EC_WORD_DANCE + .2byte EC_WORD_DANGER + .2byte EC_WORD_DARK + .2byte EC_WORD_DARN + .2byte EC_WORD_DATE + .2byte EC_WORD_DAUGHTER + .2byte EC_WORD_DAY + .2byte EC_WORD_DAYS + .2byte EC_WORD_DAYTIME + .2byte EC_WORD_DECIDE + .2byte EC_WORD_DECIDED + .2byte EC_WORD_DEEP + .2byte EC_WORD_DEFEATED + .2byte EC_MOVE2(DEFENSE_CURL) + .2byte EC_POKEMON(DELCATTY) + .2byte EC_POKEMON2(DELIBIRD) + .2byte EC_POKEMON(DEOXYS) + .2byte EC_WORD_DEPT_STORE + .2byte EC_WORD_DESIGN + .2byte EC_WORD_DESTINY + .2byte EC_MOVE2(DESTINY_BOND) + .2byte EC_WORD_DESTROYED + .2byte EC_MOVE2(DETECT) + .2byte EC_POKEMON2(DEWGONG) + .2byte EC_WORD_DID + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_DIET + .2byte EC_WORD_DIFFERENT + .2byte EC_MOVE(DIG) + .2byte EC_WORD_DIGITAL + .2byte EC_POKEMON2(DIGLETT) + .2byte EC_WORD_DIRECT + .2byte EC_MOVE(DISABLE) + .2byte EC_WORD_DISAPPEAR + .2byte EC_WORD_DISAPPOINT + .2byte EC_WORD_DISAPPOINTED + .2byte EC_WORD_DISAPPOINTS + .2byte EC_WORD_DISASTER + .2byte EC_WORD_DISLIKE + .2byte EC_WORD_DISLIKES + .2byte EC_POKEMON2(DITTO) + .2byte EC_MOVE2(DIVE) + .2byte EC_MOVE2(DIZZY_PUNCH) + .2byte EC_WORD_DO + .2byte EC_WORD_DOCILE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(DODRIO) + .2byte EC_POKEMON2(DODRIO) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(DODUO) + .2byte EC_POKEMON2(DODUO) + .2byte EC_WORD_DOES + .2byte EC_WORD_DOESN_T + .2byte EC_WORD_DON_T + .2byte EC_WORD_DONE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(DONPHAN) + .2byte EC_POKEMON2(DONPHAN) + .2byte EC_MOVE2(DOOM_DESIRE) + .2byte EC_MOVE2(DOUBLE_KICK) + .2byte EC_MOVE(DOUBLE_TEAM) + .2byte EC_MOVE(DOUBLE_EDGE) + .2byte EC_MOVE(DOUBLE_SLAP) + .2byte EC_WORD_DOWN + .2byte EC_WORD_DOWNCAST + .2byte EC_WORD_DRAGON + .2byte EC_MOVE2(DRAGON_CLAW) + .2byte EC_MOVE2(DRAGON_DANCE) + .2byte EC_MOVE2(DRAGON_RAGE) + .2byte EC_POKEMON2(DRAGONAIR) + .2byte EC_MOVE2(DRAGON_BREATH) + .2byte EC_POKEMON2(DRAGONITE) + .2byte EC_POKEMON2(DRATINI) + .2byte EC_WORD_DREAM + .2byte EC_MOVE2(DREAM_EATER) + .2byte EC_MOVE2(DRILL_PECK) + .2byte EC_WORD_DRINK + .2byte EC_WORD_DRINKS + .2byte EC_WORD_DRIZZLE + .2byte EC_WORD_DROOLING + .2byte EC_WORD_DROUGHT + .2byte EC_POKEMON2(DROWZEE) + .2byte EC_WORD_DUDE + .2byte EC_POKEMON2(DUGTRIO) + .2byte EC_POKEMON2(DUNSPARCE) + .2byte EC_POKEMON(DUSCLOPS) + .2byte EC_POKEMON(DUSKULL) + .2byte EC_POKEMON(DUSTOX) + .2byte EC_MOVE2(DYNAMIC_PUNCH) gEasyChatWordsByLetter_E:: @ 859D3F2 - ec_word EARLIER - ec_word EARLY_BIRD - ec_move1 EARTHQUAKE - ec_word EASY - ec_word EAT - ec_word EATS - ec_word EEK - ec_pokemon2 EEVEE - ec_word EFFECT_SPORE - ec_word EGG - ec_move2 EGG_BOMB - ec_word EH_QUES - ec_word EHEHE - ec_pokemon2 EKANS - ec_pokemon2 ELECTABUZZ - ec_word ELECTRIC - ec_pokemon1 ELECTRIKE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 ELECTRODE - ec_pokemon2 ELECTRODE - ec_pokemon2 ELEKID - ec_word ELSE - ec_move2 EMBER - ec_word EMERALD - ec_move1 ENCORE - ec_word ENCYCLOPEDIA - ec_word END - ec_move1 ENDEAVOR - ec_move1 ENDURE - ec_word ENJOY - ec_word ENJOYS - ec_word ENOUGH - ec_pokemon2 ENTEI - ec_word ENTERTAINING - ec_move2 ERUPTION - ec_word ESCAPE - ec_pokemon2 ESPEON - ec_word EVEN_SO - ec_word EVENT - ec_word EVENTS - ec_word EVER - ec_word EVERY - ec_word EVOLUTION - ec_word EVOLVE - ec_word EXCELLENT - ec_word EXCESS - ec_word EXCITE - ec_word EXCITING - ec_word EXCUSE - ec_word EXCUSE_ME - ec_pokemon2 EXEGGCUTE - ec_pokemon2 EXEGGUTOR - ec_word EXISTS - ec_word EXPENSIVE - ec_move2 EXPLOSION - ec_pokemon1 EXPLOUD - ec_move1 EXTRASENSORY - ec_move1 EXTREME_SPEED + .2byte EC_WORD_EARLIER + .2byte EC_WORD_EARLY_BIRD + .2byte EC_MOVE(EARTHQUAKE) + .2byte EC_WORD_EASY + .2byte EC_WORD_EAT + .2byte EC_WORD_EATS + .2byte EC_WORD_EEK + .2byte EC_POKEMON2(EEVEE) + .2byte EC_WORD_EFFECT_SPORE + .2byte EC_WORD_EGG + .2byte EC_MOVE2(EGG_BOMB) + .2byte EC_WORD_EH_QUES + .2byte EC_WORD_EHEHE + .2byte EC_POKEMON2(EKANS) + .2byte EC_POKEMON2(ELECTABUZZ) + .2byte EC_WORD_ELECTRIC + .2byte EC_POKEMON(ELECTRIKE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(ELECTRODE) + .2byte EC_POKEMON2(ELECTRODE) + .2byte EC_POKEMON2(ELEKID) + .2byte EC_WORD_ELSE + .2byte EC_MOVE2(EMBER) + .2byte EC_WORD_EMERALD + .2byte EC_MOVE(ENCORE) + .2byte EC_WORD_ENCYCLOPEDIA + .2byte EC_WORD_END + .2byte EC_MOVE(ENDEAVOR) + .2byte EC_MOVE(ENDURE) + .2byte EC_WORD_ENJOY + .2byte EC_WORD_ENJOYS + .2byte EC_WORD_ENOUGH + .2byte EC_POKEMON2(ENTEI) + .2byte EC_WORD_ENTERTAINING + .2byte EC_MOVE2(ERUPTION) + .2byte EC_WORD_ESCAPE + .2byte EC_POKEMON2(ESPEON) + .2byte EC_WORD_EVEN_SO + .2byte EC_WORD_EVENT + .2byte EC_WORD_EVENTS + .2byte EC_WORD_EVER + .2byte EC_WORD_EVERY + .2byte EC_WORD_EVOLUTION + .2byte EC_WORD_EVOLVE + .2byte EC_WORD_EXCELLENT + .2byte EC_WORD_EXCESS + .2byte EC_WORD_EXCITE + .2byte EC_WORD_EXCITING + .2byte EC_WORD_EXCUSE + .2byte EC_WORD_EXCUSE_ME + .2byte EC_POKEMON2(EXEGGCUTE) + .2byte EC_POKEMON2(EXEGGUTOR) + .2byte EC_WORD_EXISTS + .2byte EC_WORD_EXPENSIVE + .2byte EC_MOVE2(EXPLOSION) + .2byte EC_POKEMON(EXPLOUD) + .2byte EC_MOVE(EXTRASENSORY) + .2byte EC_MOVE(EXTREME_SPEED) gEasyChatWordsByLetter_F:: @ 859D468 - ec_word FABULOUS - ec_move1 FACADE - ec_word FAINT - ec_move2 FAINT_ATTACK - ec_word FAINTED - ec_move2 FAKE_OUT - ec_move1 FAKE_TEARS - ec_word FALL - ec_move2 FALSE_SWIPE - ec_word FAMILY - ec_word FANTASTIC - ec_word FAR - ec_pokemon2 FARFETCH_D - ec_word FASHION - ec_word FAST - ec_word FATHER - ec_word FEAR - ec_pokemon2 FEAROW - ec_move2 FEATHER_DANCE - ec_pokemon1 FEEBAS - ec_word FEELING - ec_pokemon2 FERALIGATR - ec_word FESTIVAL - ec_word FEVER - ec_word FIERY - ec_word FIGHT - ec_word FIGHTING - ec_word FIGHTS - ec_word FINAL - ec_word FINALLY - ec_word FINISH - ec_word FIRE - ec_move2 FIRE_BLAST - ec_move2 FIRE_PUNCH - ec_move2 FIRE_SPIN - ec_word FISHING - ec_move1 FISSURE - ec_pokemon2 FLAAFFY - ec_move1 FLAIL - ec_word FLAME - ec_word FLAME_BODY - ec_move1 FLAME_WHEEL - ec_move1 FLAMETHROWER - ec_pokemon2 FLAREON - ec_move2 FLASH - ec_word FLASH_FIRE - ec_word FLATTEN - ec_move1 FLATTER - ec_word FLOWERS - ec_move1 FLY - ec_pokemon1 FLYGON - ec_word FLYING - ec_move1 FOCUS_ENERGY - ec_move1 FOCUS_PUNCH - ec_word FOE - ec_move1 FOLLOW_ME - ec_word FOR - ec_word FOR_NOW - ec_word FORECAST - ec_move2 FORESIGHT - ec_word FOREVER - ec_word FORGET - ec_word FORGETS - ec_word FORGIVE - ec_pokemon2 FORRETRESS - ec_move2 FRENZY_PLANT - ec_word FRIDAY - ec_word FRIEND - ec_word FROM - ec_word FRONT - ec_word FRONTIER - ec_move2 FRUSTRATION - ec_word FUFUFU - ec_word FULL - ec_word FUNNY - ec_pokemon2 FURRET - ec_move2 FURY_ATTACK - ec_move2 FURY_CUTTER - ec_move2 FURY_SWIPES - ec_move2 FUTURE_SIGHT + .2byte EC_WORD_FABULOUS + .2byte EC_MOVE(FACADE) + .2byte EC_WORD_FAINT + .2byte EC_MOVE2(FAINT_ATTACK) + .2byte EC_WORD_FAINTED + .2byte EC_MOVE2(FAKE_OUT) + .2byte EC_MOVE(FAKE_TEARS) + .2byte EC_WORD_FALL + .2byte EC_MOVE2(FALSE_SWIPE) + .2byte EC_WORD_FAMILY + .2byte EC_WORD_FANTASTIC + .2byte EC_WORD_FAR + .2byte EC_POKEMON2(FARFETCHD) + .2byte EC_WORD_FASHION + .2byte EC_WORD_FAST + .2byte EC_WORD_FATHER + .2byte EC_WORD_FEAR + .2byte EC_POKEMON2(FEAROW) + .2byte EC_MOVE2(FEATHER_DANCE) + .2byte EC_POKEMON(FEEBAS) + .2byte EC_WORD_FEELING + .2byte EC_POKEMON2(FERALIGATR) + .2byte EC_WORD_FESTIVAL + .2byte EC_WORD_FEVER + .2byte EC_WORD_FIERY + .2byte EC_WORD_FIGHT + .2byte EC_WORD_FIGHTING + .2byte EC_WORD_FIGHTS + .2byte EC_WORD_FINAL + .2byte EC_WORD_FINALLY + .2byte EC_WORD_FINISH + .2byte EC_WORD_FIRE + .2byte EC_MOVE2(FIRE_BLAST) + .2byte EC_MOVE2(FIRE_PUNCH) + .2byte EC_MOVE2(FIRE_SPIN) + .2byte EC_WORD_FISHING + .2byte EC_MOVE(FISSURE) + .2byte EC_POKEMON2(FLAAFFY) + .2byte EC_MOVE(FLAIL) + .2byte EC_WORD_FLAME + .2byte EC_WORD_FLAME_BODY + .2byte EC_MOVE(FLAME_WHEEL) + .2byte EC_MOVE(FLAMETHROWER) + .2byte EC_POKEMON2(FLAREON) + .2byte EC_MOVE2(FLASH) + .2byte EC_WORD_FLASH_FIRE + .2byte EC_WORD_FLATTEN + .2byte EC_MOVE(FLATTER) + .2byte EC_WORD_FLOWERS + .2byte EC_MOVE(FLY) + .2byte EC_POKEMON(FLYGON) + .2byte EC_WORD_FLYING + .2byte EC_MOVE(FOCUS_ENERGY) + .2byte EC_MOVE(FOCUS_PUNCH) + .2byte EC_WORD_FOE + .2byte EC_MOVE(FOLLOW_ME) + .2byte EC_WORD_FOR + .2byte EC_WORD_FOR_NOW + .2byte EC_WORD_FORECAST + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_WORD_FOREVER + .2byte EC_WORD_FORGET + .2byte EC_WORD_FORGETS + .2byte EC_WORD_FORGIVE + .2byte EC_POKEMON2(FORRETRESS) + .2byte EC_MOVE2(FRENZY_PLANT) + .2byte EC_WORD_FRIDAY + .2byte EC_WORD_FRIEND + .2byte EC_WORD_FROM + .2byte EC_WORD_FRONT + .2byte EC_WORD_FRONTIER + .2byte EC_MOVE2(FRUSTRATION) + .2byte EC_WORD_FUFUFU + .2byte EC_WORD_FULL + .2byte EC_WORD_FUNNY + .2byte EC_POKEMON2(FURRET) + .2byte EC_MOVE2(FURY_ATTACK) + .2byte EC_MOVE2(FURY_CUTTER) + .2byte EC_MOVE2(FURY_SWIPES) + .2byte EC_MOVE2(FUTURE_SIGHT) gEasyChatWordsByLetter_G:: @ 859D508 - ec_word GAME - ec_pokemon1 GARDEVOIR - ec_pokemon2 GASTLY - ec_pokemon2 GENGAR - ec_word GENIUS - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GEODUDE - ec_pokemon2 GEODUDE - ec_word GET - ec_word GETS - ec_word GHOST - ec_word GIDDY - ec_move1 GIGA_DRAIN - ec_word GIGGLE - ec_word GIMME - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GIRAFARIG - ec_pokemon2 GIRAFARIG - ec_word GIRL - ec_word GIVE - ec_word GIVE_ME - ec_word GIVE_UP - ec_word GIVES - ec_pokemon1 GLALIE - ec_move2 GLARE - ec_pokemon2 GLIGAR - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GLOOM - ec_pokemon2 GLOOM - ec_word GO - ec_word GO_AHEAD - ec_word GO_EASY - ec_word GO_HOME - ec_word GOES - ec_word GOING - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GOLBAT - ec_pokemon2 GOLBAT - ec_word GOLD - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GOLDEEN - ec_pokemon2 GOLDEEN - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GOLDUCK - ec_pokemon2 GOLDUCK - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GOLEM - ec_pokemon2 GOLEM - ec_word GOOD - ec_word GOOD_BYE - ec_pokemon1 GOREBYSS - ec_word GOT - ec_word GOTCHA - ec_word GOURMET - ec_word GRAAAH - ec_pokemon2 GRANBULL - ec_word GRANDFATHER - ec_word GRANDMOTHER - ec_word GRASS - ec_move1 GRASS_WHISTLE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GRAVELER - ec_pokemon2 GRAVELER - ec_word GREAT - ec_word GREEN - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GRIMER - ec_pokemon2 GRIMER - ec_pokemon1 GROUDON - ec_word GROUND - ec_word GROUP - ec_pokemon1 GROVYLE - ec_move2 GROWL - ec_pokemon2 GROWLITHE - ec_move1 GROWTH - ec_move1 GRUDGE - ec_pokemon1 GRUMPIG - ec_word GUARD - ec_move2 GUILLOTINE - ec_pokemon1 GULPIN - ec_move1 GUST - ec_word GUTS - ec_word GUTSY - ec_word GWAH - ec_word GWAHAHAHA - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 GYARADOS - ec_pokemon2 GYARADOS + .2byte EC_WORD_GAME + .2byte EC_POKEMON(GARDEVOIR) + .2byte EC_POKEMON2(GASTLY) + .2byte EC_POKEMON2(GENGAR) + .2byte EC_WORD_GENIUS + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GEODUDE) + .2byte EC_POKEMON2(GEODUDE) + .2byte EC_WORD_GET + .2byte EC_WORD_GETS + .2byte EC_WORD_GHOST + .2byte EC_WORD_GIDDY + .2byte EC_MOVE(GIGA_DRAIN) + .2byte EC_WORD_GIGGLE + .2byte EC_WORD_GIMME + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GIRAFARIG) + .2byte EC_POKEMON2(GIRAFARIG) + .2byte EC_WORD_GIRL + .2byte EC_WORD_GIVE + .2byte EC_WORD_GIVE_ME + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_GIVES + .2byte EC_POKEMON(GLALIE) + .2byte EC_MOVE2(GLARE) + .2byte EC_POKEMON2(GLIGAR) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GLOOM) + .2byte EC_POKEMON2(GLOOM) + .2byte EC_WORD_GO + .2byte EC_WORD_GO_AHEAD + .2byte EC_WORD_GO_EASY + .2byte EC_WORD_GO_HOME + .2byte EC_WORD_GOES + .2byte EC_WORD_GOING + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GOLBAT) + .2byte EC_POKEMON2(GOLBAT) + .2byte EC_WORD_GOLD + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GOLDEEN) + .2byte EC_POKEMON2(GOLDEEN) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GOLDUCK) + .2byte EC_POKEMON2(GOLDUCK) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GOLEM) + .2byte EC_POKEMON2(GOLEM) + .2byte EC_WORD_GOOD + .2byte EC_WORD_GOOD_BYE + .2byte EC_POKEMON(GOREBYSS) + .2byte EC_WORD_GOT + .2byte EC_WORD_GOTCHA + .2byte EC_WORD_GOURMET + .2byte EC_WORD_GRAAAH + .2byte EC_POKEMON2(GRANBULL) + .2byte EC_WORD_GRANDFATHER + .2byte EC_WORD_GRANDMOTHER + .2byte EC_WORD_GRASS + .2byte EC_MOVE(GRASS_WHISTLE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GRAVELER) + .2byte EC_POKEMON2(GRAVELER) + .2byte EC_WORD_GREAT + .2byte EC_WORD_GREEN + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GRIMER) + .2byte EC_POKEMON2(GRIMER) + .2byte EC_POKEMON(GROUDON) + .2byte EC_WORD_GROUND + .2byte EC_WORD_GROUP + .2byte EC_POKEMON(GROVYLE) + .2byte EC_MOVE2(GROWL) + .2byte EC_POKEMON2(GROWLITHE) + .2byte EC_MOVE(GROWTH) + .2byte EC_MOVE(GRUDGE) + .2byte EC_POKEMON(GRUMPIG) + .2byte EC_WORD_GUARD + .2byte EC_MOVE2(GUILLOTINE) + .2byte EC_POKEMON(GULPIN) + .2byte EC_MOVE(GUST) + .2byte EC_WORD_GUTS + .2byte EC_WORD_GUTSY + .2byte EC_WORD_GWAH + .2byte EC_WORD_GWAHAHAHA + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(GYARADOS) + .2byte EC_POKEMON2(GYARADOS) gEasyChatWordsByLetter_H:: @ 859D5CC - ec_word HABIT - ec_word HAH - ec_word HAHAHA - ec_move1 HAIL - ec_word HALL_OF_FAME - ec_word HAPPENING - ec_word HAPPILY - ec_word HAPPINESS - ec_word HAPPY - ec_word HARD - ec_move1 HARDEN - ec_pokemon1 HARIYAMA - ec_word HAS - ec_word HASSLE - ec_pokemon2 HAUNTER - ec_word HAVE - ec_word HAVEN_T - ec_move1 HAZE - ec_word HE - ec_word HE_S - ec_move1 HEADBUTT - ec_move1 HEAL_BELL - ec_word HEALTHY - ec_word HEAR - ec_word HEARING - ec_word HEARS - ec_word HEART - ec_move2 HEAT_WAVE - ec_word HEH - ec_word HEHE - ec_word HEHEHE - ec_word HELLO - ec_move2 HELPING_HAND - ec_word HER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 HERACROSS - ec_pokemon2 HERACROSS - ec_word HERE - ec_word HERE_GOES - ec_word HERE_I_COME - ec_word HERE_IT_IS - ec_word HERO - ec_word HEROINE - ec_word HERS - ec_word HEY - ec_word HEY_THERE - ec_word HEY_QUES - ec_word HI - ec_move2 HI_JUMP_KICK - ec_word HIDDEN - ec_move2 HIDDEN_POWER - ec_word HIGH - ec_word HIGHS - ec_word HIM - ec_word HIP_AND - ec_word HIS - ec_word HIT - ec_pokemon2 HITMONCHAN - ec_pokemon2 HITMONLEE - ec_pokemon2 HITMONTOP - ec_word HIYAH - ec_word HMM - ec_pokemon2 HO_OH - ec_word HOBBY - ec_word HOHOHO - ec_word HOLIDAY - ec_word HOME - ec_word HOO_HAH - ec_pokemon2 HOOTHOOT - ec_word HOPELESS - ec_pokemon2 HOPPIP - ec_move2 HORN_ATTACK - ec_move2 HORN_DRILL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 HORSEA - ec_pokemon2 HORSEA - ec_word HOT - ec_pokemon2 HOUNDOOM - ec_pokemon2 HOUNDOUR - ec_word HOW - ec_word HOW_DO - ec_word HOWEVER - ec_move2 HOWL - ec_word HUGE_POWER - ec_word HUH_QUES - ec_word HUMPH - ec_word HUNGRY - ec_pokemon1 HUNTAIL - ec_word HURRIED - ec_word HUSTLE - ec_move2 HYDRO_CANNON - ec_move2 HYDRO_PUMP - ec_word HYPER - ec_move2 HYPER_BEAM - ec_word HYPER_CUTTER - ec_move2 HYPER_FANG - ec_move2 HYPER_VOICE - ec_pokemon2 HYPNO - ec_move1 HYPNOSIS + .2byte EC_WORD_HABIT + .2byte EC_WORD_HAH + .2byte EC_WORD_HAHAHA + .2byte EC_MOVE(HAIL) + .2byte EC_WORD_HALL_OF_FAME + .2byte EC_WORD_HAPPENING + .2byte EC_WORD_HAPPILY + .2byte EC_WORD_HAPPINESS + .2byte EC_WORD_HAPPY + .2byte EC_WORD_HARD + .2byte EC_MOVE(HARDEN) + .2byte EC_POKEMON(HARIYAMA) + .2byte EC_WORD_HAS + .2byte EC_WORD_HASSLE + .2byte EC_POKEMON2(HAUNTER) + .2byte EC_WORD_HAVE + .2byte EC_WORD_HAVEN_T + .2byte EC_MOVE(HAZE) + .2byte EC_WORD_HE + .2byte EC_WORD_HE_S + .2byte EC_MOVE(HEADBUTT) + .2byte EC_MOVE(HEAL_BELL) + .2byte EC_WORD_HEALTHY + .2byte EC_WORD_HEAR + .2byte EC_WORD_HEARING + .2byte EC_WORD_HEARS + .2byte EC_WORD_HEART + .2byte EC_MOVE2(HEAT_WAVE) + .2byte EC_WORD_HEH + .2byte EC_WORD_HEHE + .2byte EC_WORD_HEHEHE + .2byte EC_WORD_HELLO + .2byte EC_MOVE2(HELPING_HAND) + .2byte EC_WORD_HER + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(HERACROSS) + .2byte EC_POKEMON2(HERACROSS) + .2byte EC_WORD_HERE + .2byte EC_WORD_HERE_GOES + .2byte EC_WORD_HERE_I_COME + .2byte EC_WORD_HERE_IT_IS + .2byte EC_WORD_HERO + .2byte EC_WORD_HEROINE + .2byte EC_WORD_HERS + .2byte EC_WORD_HEY + .2byte EC_WORD_HEY_THERE + .2byte EC_WORD_HEY_QUES + .2byte EC_WORD_HI + .2byte EC_MOVE2(HI_JUMP_KICK) + .2byte EC_WORD_HIDDEN + .2byte EC_MOVE2(HIDDEN_POWER) + .2byte EC_WORD_HIGH + .2byte EC_WORD_HIGHS + .2byte EC_WORD_HIM + .2byte EC_WORD_HIP_AND + .2byte EC_WORD_HIS + .2byte EC_WORD_HIT + .2byte EC_POKEMON2(HITMONCHAN) + .2byte EC_POKEMON2(HITMONLEE) + .2byte EC_POKEMON2(HITMONTOP) + .2byte EC_WORD_HIYAH + .2byte EC_WORD_HMM + .2byte EC_POKEMON2(HO_OH) + .2byte EC_WORD_HOBBY + .2byte EC_WORD_HOHOHO + .2byte EC_WORD_HOLIDAY + .2byte EC_WORD_HOME + .2byte EC_WORD_HOO_HAH + .2byte EC_POKEMON2(HOOTHOOT) + .2byte EC_WORD_HOPELESS + .2byte EC_POKEMON2(HOPPIP) + .2byte EC_MOVE2(HORN_ATTACK) + .2byte EC_MOVE2(HORN_DRILL) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(HORSEA) + .2byte EC_POKEMON2(HORSEA) + .2byte EC_WORD_HOT + .2byte EC_POKEMON2(HOUNDOOM) + .2byte EC_POKEMON2(HOUNDOUR) + .2byte EC_WORD_HOW + .2byte EC_WORD_HOW_DO + .2byte EC_WORD_HOWEVER + .2byte EC_MOVE2(HOWL) + .2byte EC_WORD_HUGE_POWER + .2byte EC_WORD_HUH_QUES + .2byte EC_WORD_HUMPH + .2byte EC_WORD_HUNGRY + .2byte EC_POKEMON(HUNTAIL) + .2byte EC_WORD_HURRIED + .2byte EC_WORD_HUSTLE + .2byte EC_MOVE2(HYDRO_CANNON) + .2byte EC_MOVE2(HYDRO_PUMP) + .2byte EC_WORD_HYPER + .2byte EC_MOVE2(HYPER_BEAM) + .2byte EC_WORD_HYPER_CUTTER + .2byte EC_MOVE2(HYPER_FANG) + .2byte EC_MOVE2(HYPER_VOICE) + .2byte EC_POKEMON2(HYPNO) + .2byte EC_MOVE(HYPNOSIS) gEasyChatWordsByLetter_I:: @ 859D696 - ec_word I - ec_word I_AM - ec_word I_CHOOSE_YOU - ec_word I_WAS - ec_word I_VE - ec_word I_VE_ARRIVED - ec_word ICE - ec_move1 ICE_BALL - ec_move2 ICE_BEAM - ec_move2 ICE_PUNCH - ec_move2 ICICLE_SPEAR - ec_move1 ICY_WIND - ec_word IDOL - ec_word IF - ec_word IF_I_LOSE - ec_word IF_I_WIN - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 IGGLYBUFF - ec_pokemon2 IGGLYBUFF - ec_word IGNORANT - ec_word ILLUMINATE - ec_pokemon1 ILLUMISE - ec_word IMMUNITY - ec_word IMPORTANT - ec_word IMPOSSIBLE - ec_move2 IMPRISON - ec_word IN - ec_word INCREASING - ec_word INCREDIBLE - ec_word INFORMATION - ec_move2 INGRAIN - ec_word INNER_FOCUS - ec_word INSIDE - ec_word INSOMNIA - ec_word INSTEAD - ec_word INTIMIDATE - ec_word INVINCIBLE - ec_move2 IRON_DEFENSE - ec_move1 IRON_TAIL - ec_word IS - ec_word IS_IT_QUES - ec_word ISN_T - ec_word ISN_T_IT_QUES - ec_word IT - ec_word IT_S - ec_word ITEM - ec_pokemon2 IVYSAUR + .2byte EC_WORD_I + .2byte EC_WORD_I_AM + .2byte EC_WORD_I_CHOOSE_YOU + .2byte EC_WORD_I_WAS + .2byte EC_WORD_I_VE + .2byte EC_WORD_I_VE_ARRIVED + .2byte EC_WORD_ICE + .2byte EC_MOVE(ICE_BALL) + .2byte EC_MOVE2(ICE_BEAM) + .2byte EC_MOVE2(ICE_PUNCH) + .2byte EC_MOVE2(ICICLE_SPEAR) + .2byte EC_MOVE(ICY_WIND) + .2byte EC_WORD_IDOL + .2byte EC_WORD_IF + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_IF_I_WIN + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(IGGLYBUFF) + .2byte EC_POKEMON2(IGGLYBUFF) + .2byte EC_WORD_IGNORANT + .2byte EC_WORD_ILLUMINATE + .2byte EC_POKEMON(ILLUMISE) + .2byte EC_WORD_IMMUNITY + .2byte EC_WORD_IMPORTANT + .2byte EC_WORD_IMPOSSIBLE + .2byte EC_MOVE2(IMPRISON) + .2byte EC_WORD_IN + .2byte EC_WORD_INCREASING + .2byte EC_WORD_INCREDIBLE + .2byte EC_WORD_INFORMATION + .2byte EC_MOVE2(INGRAIN) + .2byte EC_WORD_INNER_FOCUS + .2byte EC_WORD_INSIDE + .2byte EC_WORD_INSOMNIA + .2byte EC_WORD_INSTEAD + .2byte EC_WORD_INTIMIDATE + .2byte EC_WORD_INVINCIBLE + .2byte EC_MOVE2(IRON_DEFENSE) + .2byte EC_MOVE(IRON_TAIL) + .2byte EC_WORD_IS + .2byte EC_WORD_IS_IT_QUES + .2byte EC_WORD_ISN_T + .2byte EC_WORD_ISN_T_IT_QUES + .2byte EC_WORD_IT + .2byte EC_WORD_IT_S + .2byte EC_WORD_ITEM + .2byte EC_POKEMON2(IVYSAUR) gEasyChatWordsByLetter_J:: @ 859D6F6 .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 JIGGLYPUFF - ec_pokemon2 JIGGLYPUFF - ec_pokemon1 JIRACHI - ec_word JOKING - ec_pokemon2 JOLTEON - ec_word JOY - ec_word JUDGE - ec_move2 JUMP_KICK - ec_pokemon2 JUMPLUFF - ec_word JUST - ec_pokemon2 JYNX + .2byte EC_POKEMON(JIGGLYPUFF) + .2byte EC_POKEMON2(JIGGLYPUFF) + .2byte EC_POKEMON(JIRACHI) + .2byte EC_WORD_JOKING + .2byte EC_POKEMON2(JOLTEON) + .2byte EC_WORD_JOY + .2byte EC_WORD_JUDGE + .2byte EC_MOVE2(JUMP_KICK) + .2byte EC_POKEMON2(JUMPLUFF) + .2byte EC_WORD_JUST + .2byte EC_POKEMON2(JYNX) gEasyChatWordsByLetter_K:: @ 859D710 - ec_pokemon2 KABUTO - ec_pokemon2 KABUTOPS - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 KADABRA - ec_pokemon2 KADABRA - ec_pokemon2 KAKUNA - ec_pokemon2 KANGASKHAN - ec_move1 KARATE_CHOP - ec_pokemon1 KECLEON - ec_word KEEN_EYE - ec_word KID - ec_word KIDDING - ec_word KIND - ec_word KINDERGARTEN - ec_move1 KINESIS - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 KINGDRA - ec_pokemon2 KINGDRA - ec_pokemon2 KINGLER - ec_pokemon1 KIRLIA - ec_move2 KNOCK_OFF - ec_word KNOCKOUT - ec_word KNOW - ec_word KNOWS - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 KOFFING - ec_pokemon2 KOFFING - ec_pokemon2 KRABBY - ec_word KTHX_BYE - ec_pokemon1 KYOGRE + .2byte EC_POKEMON2(KABUTO) + .2byte EC_POKEMON2(KABUTOPS) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(KADABRA) + .2byte EC_POKEMON2(KADABRA) + .2byte EC_POKEMON2(KAKUNA) + .2byte EC_POKEMON2(KANGASKHAN) + .2byte EC_MOVE(KARATE_CHOP) + .2byte EC_POKEMON(KECLEON) + .2byte EC_WORD_KEEN_EYE + .2byte EC_WORD_KID + .2byte EC_WORD_KIDDING + .2byte EC_WORD_KIND + .2byte EC_WORD_KINDERGARTEN + .2byte EC_MOVE(KINESIS) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(KINGDRA) + .2byte EC_POKEMON2(KINGDRA) + .2byte EC_POKEMON2(KINGLER) + .2byte EC_POKEMON(KIRLIA) + .2byte EC_MOVE2(KNOCK_OFF) + .2byte EC_WORD_KNOCKOUT + .2byte EC_WORD_KNOW + .2byte EC_WORD_KNOWS + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(KOFFING) + .2byte EC_POKEMON2(KOFFING) + .2byte EC_POKEMON2(KRABBY) + .2byte EC_WORD_KTHX_BYE + .2byte EC_POKEMON(KYOGRE) gEasyChatWordsByLetter_L:: @ 859D752 - ec_word LACKING - ec_word LACKS - ec_word LADY - ec_pokemon1 LAIRON - ec_word LALALA - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 LANTURN - ec_pokemon2 LANTURN - ec_pokemon2 LAPRAS - ec_pokemon2 LARVITAR - ec_word LAST - ec_word LATE - ec_word LATER - ec_pokemon1 LATIAS - ec_pokemon1 LATIOS - ec_word LAVISH - ec_word LAY - ec_word LEADER - ec_word LEADERS - ec_word LEAF - ec_move2 LEAF_BLADE - ec_word LEARN - ec_pokemon2 LEDIAN - ec_pokemon2 LEDYBA - ec_move1 LEECH_LIFE - ec_move2 LEECH_SEED - ec_move2 LEER - ec_word LEFT - ec_word LEGEND - ec_word LESS - ec_word LESSONS - ec_word LET_ME_WIN - ec_word LET_S - ec_word LETTER - ec_word LEVEL - ec_word LEVITATE - ec_move1 LICK - ec_pokemon2 LICKITUNG - ec_word LIE - ec_word LIFE - ec_move2 LIGHT_SCREEN - ec_word LIGHTNINGROD - ec_word LIKE - ec_word LIKELY_TO - ec_word LIKES - ec_pokemon1 LILEEP - ec_word LIMBER - ec_word LINK - ec_pokemon1 LINOONE - ec_word LIQUID_OOZE - ec_word LISTEN - ec_word LISTENING - ec_word LISTENS - ec_word LIVING - ec_move2 LOCK_ON - ec_word LOCOMOTIVE - ec_word LOL - ec_word LOLLING - ec_pokemon1 LOMBRE - ec_word LONESOME - ec_word LOOK - ec_word LOOKS - ec_word LOSE - ec_word LOSER - ec_word LOSING - ec_word LOSS - ec_word LOST - ec_pokemon1 LOTAD - ec_pokemon1 LOUDRED - ec_word LOUSY - ec_move1 LOVELY_KISS - ec_word LOVEY_DOVEY - ec_word LOW - ec_move1 LOW_KICK - ec_word LOWS - ec_pokemon1 LUDICOLO - ec_pokemon2 LUGIA - ec_word LUKEWARM - ec_pokemon1 LUNATONE - ec_move2 LUSTER_PURGE - ec_pokemon1 LUVDISC + .2byte EC_WORD_LACKING + .2byte EC_WORD_LACKS + .2byte EC_WORD_LADY + .2byte EC_POKEMON(LAIRON) + .2byte EC_WORD_LALALA + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(LANTURN) + .2byte EC_POKEMON2(LANTURN) + .2byte EC_POKEMON2(LAPRAS) + .2byte EC_POKEMON2(LARVITAR) + .2byte EC_WORD_LAST + .2byte EC_WORD_LATE + .2byte EC_WORD_LATER + .2byte EC_POKEMON(LATIAS) + .2byte EC_POKEMON(LATIOS) + .2byte EC_WORD_LAVISH + .2byte EC_WORD_LAY + .2byte EC_WORD_LEADER + .2byte EC_WORD_LEADERS + .2byte EC_WORD_LEAF + .2byte EC_MOVE2(LEAF_BLADE) + .2byte EC_WORD_LEARN + .2byte EC_POKEMON2(LEDIAN) + .2byte EC_POKEMON2(LEDYBA) + .2byte EC_MOVE(LEECH_LIFE) + .2byte EC_MOVE2(LEECH_SEED) + .2byte EC_MOVE2(LEER) + .2byte EC_WORD_LEFT + .2byte EC_WORD_LEGEND + .2byte EC_WORD_LESS + .2byte EC_WORD_LESSONS + .2byte EC_WORD_LET_ME_WIN + .2byte EC_WORD_LET_S + .2byte EC_WORD_LETTER + .2byte EC_WORD_LEVEL + .2byte EC_WORD_LEVITATE + .2byte EC_MOVE(LICK) + .2byte EC_POKEMON2(LICKITUNG) + .2byte EC_WORD_LIE + .2byte EC_WORD_LIFE + .2byte EC_MOVE2(LIGHT_SCREEN) + .2byte EC_WORD_LIGHTNINGROD + .2byte EC_WORD_LIKE + .2byte EC_WORD_LIKELY_TO + .2byte EC_WORD_LIKES + .2byte EC_POKEMON(LILEEP) + .2byte EC_WORD_LIMBER + .2byte EC_WORD_LINK + .2byte EC_POKEMON(LINOONE) + .2byte EC_WORD_LIQUID_OOZE + .2byte EC_WORD_LISTEN + .2byte EC_WORD_LISTENING + .2byte EC_WORD_LISTENS + .2byte EC_WORD_LIVING + .2byte EC_MOVE2(LOCK_ON) + .2byte EC_WORD_LOCOMOTIVE + .2byte EC_WORD_LOL + .2byte EC_WORD_LOLLING + .2byte EC_POKEMON(LOMBRE) + .2byte EC_WORD_LONESOME + .2byte EC_WORD_LOOK + .2byte EC_WORD_LOOKS + .2byte EC_WORD_LOSE + .2byte EC_WORD_LOSER + .2byte EC_WORD_LOSING + .2byte EC_WORD_LOSS + .2byte EC_WORD_LOST + .2byte EC_POKEMON(LOTAD) + .2byte EC_POKEMON(LOUDRED) + .2byte EC_WORD_LOUSY + .2byte EC_MOVE(LOVELY_KISS) + .2byte EC_WORD_LOVEY_DOVEY + .2byte EC_WORD_LOW + .2byte EC_MOVE(LOW_KICK) + .2byte EC_WORD_LOWS + .2byte EC_POKEMON(LUDICOLO) + .2byte EC_POKEMON2(LUGIA) + .2byte EC_WORD_LUKEWARM + .2byte EC_POKEMON(LUNATONE) + .2byte EC_MOVE2(LUSTER_PURGE) + .2byte EC_POKEMON(LUVDISC) gEasyChatWordsByLetter_M:: @ 859D7F6 - ec_move2 MACH_PUNCH - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MACHAMP - ec_pokemon2 MACHAMP - ec_word MACHINE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MACHOKE - ec_pokemon2 MACHOKE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MACHOP - ec_pokemon2 MACHOP - ec_word MAGAZINE - ec_pokemon2 MAGBY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MAGCARGO - ec_pokemon2 MAGCARGO - ec_move2 MAGIC_COAT - ec_move2 MAGICAL_LEAF - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MAGIKARP - ec_pokemon2 MAGIKARP - ec_word MAGMA_ARMOR - ec_pokemon2 MAGMAR - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MAGNEMITE - ec_pokemon2 MAGNEMITE - ec_word MAGNET_PULL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MAGNETON - ec_pokemon2 MAGNETON - ec_move2 MAGNITUDE - ec_word MAIL - ec_word MAKE - ec_word MAKING - ec_pokemon1 MAKUHITA - ec_word MAN - ec_pokemon1 MANECTRIC - ec_pokemon2 MANKEY - ec_pokemon2 MANTINE - ec_pokemon2 MAREEP - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MARILL - ec_pokemon2 MARILL - ec_pokemon2 MAROWAK - ec_pokemon1 MARSHTOMP - ec_word MARVEL_SCALE - ec_pokemon1 MASQUERAIN - ec_word MASTER - ec_word MATCH - ec_word MATCH_UP - ec_pokemon1 MAWILE - ec_word MAYBE - ec_word MC - ec_word ME - ec_word MEAN - ec_move1 MEAN_LOOK - ec_pokemon1 MEDICHAM - ec_move2 MEDITATE - ec_pokemon1 MEDITITE - ec_word MEET - ec_word MEET_YOU - ec_word MEETS - ec_word MEGA - ec_move2 MEGA_DRAIN - ec_move2 MEGA_KICK - ec_move2 MEGA_PUNCH - ec_move2 MEGAHORN - ec_pokemon2 MEGANIUM - ec_move1 MEMENTO - ec_pokemon2 MEOWTH - ec_word MESSAGE - ec_pokemon1 METAGROSS - ec_move2 METAL_CLAW - ec_move1 METAL_SOUND - ec_pokemon1 METANG - ec_pokemon2 METAPOD - ec_move1 METEOR_MASH - ec_move2 METRONOME - ec_pokemon2 MEW - ec_pokemon2 MEWTWO - ec_pokemon1 MIGHTYENA - ec_move2 MILK_DRINK - ec_pokemon1 MILOTIC - ec_pokemon2 MILTANK - ec_move2 MIMIC - ec_move1 MIND_READER - ec_move2 MINIMIZE - ec_pokemon1 MINUN - ec_word MINUS - ec_move2 MIRROR_COAT - ec_move1 MIRROR_MOVE - ec_pokemon2 MISDREAVUS - ec_word MISHEARD - ec_word MISS - ec_move1 MIST - ec_move2 MIST_BALL - ec_word MISTAKE - ec_word MMM - ec_word MODE - ec_word MODERN - ec_pokemon2 MOLTRES - ec_word MOMENTUM - ec_word MONDAY - ec_word MONEY - ec_word MONTH - ec_word MOOD - ec_move2 MOONLIGHT - ec_word MORE - ec_word MORNING - ec_move1 MORNING_SUN - ec_word MOTHER - ec_word MOVE - ec_word MOVIE - ec_word MR - ec_pokemon2 MR_MIME - ec_word MRS - ec_word MUCH - ec_word MUCH_OBLIGED - ec_move2 MUD_SHOT - ec_move2 MUD_SPORT - ec_move2 MUD_SLAP - ec_move2 MUDDY_WATER - ec_pokemon1 MUDKIP - ec_word MUFUFU - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 MUK - ec_pokemon2 MUK - ec_pokemon2 MURKROW - ec_word MUSIC - ec_word MUST_BE - ec_word MY - ec_word MYSELF - ec_word MYSTERY + .2byte EC_MOVE2(MACH_PUNCH) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MACHAMP) + .2byte EC_POKEMON2(MACHAMP) + .2byte EC_WORD_MACHINE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MACHOKE) + .2byte EC_POKEMON2(MACHOKE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MACHOP) + .2byte EC_POKEMON2(MACHOP) + .2byte EC_WORD_MAGAZINE + .2byte EC_POKEMON2(MAGBY) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MAGCARGO) + .2byte EC_POKEMON2(MAGCARGO) + .2byte EC_MOVE2(MAGIC_COAT) + .2byte EC_MOVE2(MAGICAL_LEAF) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MAGIKARP) + .2byte EC_POKEMON2(MAGIKARP) + .2byte EC_WORD_MAGMA_ARMOR + .2byte EC_POKEMON2(MAGMAR) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MAGNEMITE) + .2byte EC_POKEMON2(MAGNEMITE) + .2byte EC_WORD_MAGNET_PULL + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MAGNETON) + .2byte EC_POKEMON2(MAGNETON) + .2byte EC_MOVE2(MAGNITUDE) + .2byte EC_WORD_MAIL + .2byte EC_WORD_MAKE + .2byte EC_WORD_MAKING + .2byte EC_POKEMON(MAKUHITA) + .2byte EC_WORD_MAN + .2byte EC_POKEMON(MANECTRIC) + .2byte EC_POKEMON2(MANKEY) + .2byte EC_POKEMON2(MANTINE) + .2byte EC_POKEMON2(MAREEP) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MARILL) + .2byte EC_POKEMON2(MARILL) + .2byte EC_POKEMON2(MAROWAK) + .2byte EC_POKEMON(MARSHTOMP) + .2byte EC_WORD_MARVEL_SCALE + .2byte EC_POKEMON(MASQUERAIN) + .2byte EC_WORD_MASTER + .2byte EC_WORD_MATCH + .2byte EC_WORD_MATCH_UP + .2byte EC_POKEMON(MAWILE) + .2byte EC_WORD_MAYBE + .2byte EC_WORD_MC + .2byte EC_WORD_ME + .2byte EC_WORD_MEAN + .2byte EC_MOVE(MEAN_LOOK) + .2byte EC_POKEMON(MEDICHAM) + .2byte EC_MOVE2(MEDITATE) + .2byte EC_POKEMON(MEDITITE) + .2byte EC_WORD_MEET + .2byte EC_WORD_MEET_YOU + .2byte EC_WORD_MEETS + .2byte EC_WORD_MEGA + .2byte EC_MOVE2(MEGA_DRAIN) + .2byte EC_MOVE2(MEGA_KICK) + .2byte EC_MOVE2(MEGA_PUNCH) + .2byte EC_MOVE2(MEGAHORN) + .2byte EC_POKEMON2(MEGANIUM) + .2byte EC_MOVE(MEMENTO) + .2byte EC_POKEMON2(MEOWTH) + .2byte EC_WORD_MESSAGE + .2byte EC_POKEMON(METAGROSS) + .2byte EC_MOVE2(METAL_CLAW) + .2byte EC_MOVE(METAL_SOUND) + .2byte EC_POKEMON(METANG) + .2byte EC_POKEMON2(METAPOD) + .2byte EC_MOVE(METEOR_MASH) + .2byte EC_MOVE2(METRONOME) + .2byte EC_POKEMON2(MEW) + .2byte EC_POKEMON2(MEWTWO) + .2byte EC_POKEMON(MIGHTYENA) + .2byte EC_MOVE2(MILK_DRINK) + .2byte EC_POKEMON(MILOTIC) + .2byte EC_POKEMON2(MILTANK) + .2byte EC_MOVE2(MIMIC) + .2byte EC_MOVE(MIND_READER) + .2byte EC_MOVE2(MINIMIZE) + .2byte EC_POKEMON(MINUN) + .2byte EC_WORD_MINUS + .2byte EC_MOVE2(MIRROR_COAT) + .2byte EC_MOVE(MIRROR_MOVE) + .2byte EC_POKEMON2(MISDREAVUS) + .2byte EC_WORD_MISHEARD + .2byte EC_WORD_MISS + .2byte EC_MOVE(MIST) + .2byte EC_MOVE2(MIST_BALL) + .2byte EC_WORD_MISTAKE + .2byte EC_WORD_MMM + .2byte EC_WORD_MODE + .2byte EC_WORD_MODERN + .2byte EC_POKEMON2(MOLTRES) + .2byte EC_WORD_MOMENTUM + .2byte EC_WORD_MONDAY + .2byte EC_WORD_MONEY + .2byte EC_WORD_MONTH + .2byte EC_WORD_MOOD + .2byte EC_MOVE2(MOONLIGHT) + .2byte EC_WORD_MORE + .2byte EC_WORD_MORNING + .2byte EC_MOVE(MORNING_SUN) + .2byte EC_WORD_MOTHER + .2byte EC_WORD_MOVE + .2byte EC_WORD_MOVIE + .2byte EC_WORD_MR + .2byte EC_POKEMON2(MR_MIME) + .2byte EC_WORD_MRS + .2byte EC_WORD_MUCH + .2byte EC_WORD_MUCH_OBLIGED + .2byte EC_MOVE2(MUD_SHOT) + .2byte EC_MOVE2(MUD_SPORT) + .2byte EC_MOVE2(MUD_SLAP) + .2byte EC_MOVE2(MUDDY_WATER) + .2byte EC_POKEMON(MUDKIP) + .2byte EC_WORD_MUFUFU + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(MUK) + .2byte EC_POKEMON2(MUK) + .2byte EC_POKEMON2(MURKROW) + .2byte EC_WORD_MUSIC + .2byte EC_WORD_MUST_BE + .2byte EC_WORD_MY + .2byte EC_WORD_MYSELF + .2byte EC_WORD_MYSTERY gEasyChatWordsByLetter_N:: @ 859D912 - ec_word NAME - ec_word NAP - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 NATU - ec_pokemon2 NATU - ec_word NATURAL - ec_word NATURAL_CURE - ec_word NATURALLY - ec_word NATURE - ec_move1 NATURE_POWER - ec_word NEAR - ec_word NEARLY - ec_word NEED - ec_move2 NEEDLE_ARM - ec_word NEGATIVE - ec_word NEVER - ec_word NEW - ec_word NEWS - ec_word NEXT - ec_word NICE - ec_pokemon2 NIDOKING - ec_pokemon2 NIDOQUEEN - ec_pokemon2 NIDORAN_F - ec_pokemon2 NIDORAN_M - ec_pokemon2 NIDORINA - ec_pokemon2 NIDORINO - ec_word NIGHT - ec_move2 NIGHT_SHADE - ec_move1 NIGHTMARE - ec_word NIGHTTIME - ec_pokemon1 NINCADA - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 NINETALES - ec_pokemon2 NINETALES - ec_pokemon1 NINJASK - ec_word NITWIT - ec_word NO - ec_word NO_MATCH - ec_word NO_1 - ec_pokemon2 NOCTOWL - ec_word NOISY - ec_word NON_STOP - ec_word NONE - ec_word NOPE - ec_word NORMAL - ec_pokemon1 NOSEPASS - ec_word NOT - ec_word NOT_VERY - ec_word NOTHING - ec_word NOW - ec_pokemon1 NUMEL - ec_pokemon1 NUZLEAF + .2byte EC_WORD_NAME + .2byte EC_WORD_NAP + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(NATU) + .2byte EC_POKEMON2(NATU) + .2byte EC_WORD_NATURAL + .2byte EC_WORD_NATURAL_CURE + .2byte EC_WORD_NATURALLY + .2byte EC_WORD_NATURE + .2byte EC_MOVE(NATURE_POWER) + .2byte EC_WORD_NEAR + .2byte EC_WORD_NEARLY + .2byte EC_WORD_NEED + .2byte EC_MOVE2(NEEDLE_ARM) + .2byte EC_WORD_NEGATIVE + .2byte EC_WORD_NEVER + .2byte EC_WORD_NEW + .2byte EC_WORD_NEWS + .2byte EC_WORD_NEXT + .2byte EC_WORD_NICE + .2byte EC_POKEMON2(NIDOKING) + .2byte EC_POKEMON2(NIDOQUEEN) + .2byte EC_POKEMON2(NIDORAN_F) + .2byte EC_POKEMON2(NIDORAN_M) + .2byte EC_POKEMON2(NIDORINA) + .2byte EC_POKEMON2(NIDORINO) + .2byte EC_WORD_NIGHT + .2byte EC_MOVE2(NIGHT_SHADE) + .2byte EC_MOVE(NIGHTMARE) + .2byte EC_WORD_NIGHTTIME + .2byte EC_POKEMON(NINCADA) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(NINETALES) + .2byte EC_POKEMON2(NINETALES) + .2byte EC_POKEMON(NINJASK) + .2byte EC_WORD_NITWIT + .2byte EC_WORD_NO + .2byte EC_WORD_NO_MATCH + .2byte EC_WORD_NO_1 + .2byte EC_POKEMON2(NOCTOWL) + .2byte EC_WORD_NOISY + .2byte EC_WORD_NON_STOP + .2byte EC_WORD_NONE + .2byte EC_WORD_NOPE + .2byte EC_WORD_NORMAL + .2byte EC_POKEMON(NOSEPASS) + .2byte EC_WORD_NOT + .2byte EC_WORD_NOT_VERY + .2byte EC_WORD_NOTHING + .2byte EC_WORD_NOW + .2byte EC_POKEMON(NUMEL) + .2byte EC_POKEMON(NUZLEAF) gEasyChatWordsByLetter_O:: @ 859D97E - ec_word OBLIVIOUS - ec_move1 OCTAZOOKA - ec_pokemon2 OCTILLERY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 ODDISH - ec_pokemon2 ODDISH - ec_move1 ODOR_SLEUTH - ec_word OF - ec_word OFF - ec_word OFFENSIVE - ec_word OH - ec_word OH_DEAR - ec_word OH_YEAH - ec_word OH_KAY - ec_word OH_QUES - ec_word OI - ec_word OI_OI_OI - ec_word OK_QUES - ec_word OKAY - ec_word OLD - ec_word OLDEN - ec_pokemon2 OMANYTE - ec_pokemon2 OMASTAR - ec_word ON - ec_word ONCE - ec_pokemon2 ONIX - ec_word ONLY - ec_word OOPS - ec_word OPPONENT - ec_word OPPOSITE - ec_word OR - ec_word OTHER - ec_word OUR - ec_word OUT - ec_move1 OUTRAGE - ec_word OUTSIDE - ec_word OVER - ec_word OVERDO - ec_word OVERGROW - ec_move1 OVERHEAT - ec_word OVERWHELMING - ec_word OWN - ec_word OWN_TEMPO + .2byte EC_WORD_OBLIVIOUS + .2byte EC_MOVE(OCTAZOOKA) + .2byte EC_POKEMON2(OCTILLERY) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(ODDISH) + .2byte EC_POKEMON2(ODDISH) + .2byte EC_MOVE(ODOR_SLEUTH) + .2byte EC_WORD_OF + .2byte EC_WORD_OFF + .2byte EC_WORD_OFFENSIVE + .2byte EC_WORD_OH + .2byte EC_WORD_OH_DEAR + .2byte EC_WORD_OH_YEAH + .2byte EC_WORD_OH_KAY + .2byte EC_WORD_OH_QUES + .2byte EC_WORD_OI + .2byte EC_WORD_OI_OI_OI + .2byte EC_WORD_OK_QUES + .2byte EC_WORD_OKAY + .2byte EC_WORD_OLD + .2byte EC_WORD_OLDEN + .2byte EC_POKEMON2(OMANYTE) + .2byte EC_POKEMON2(OMASTAR) + .2byte EC_WORD_ON + .2byte EC_WORD_ONCE + .2byte EC_POKEMON2(ONIX) + .2byte EC_WORD_ONLY + .2byte EC_WORD_OOPS + .2byte EC_WORD_OPPONENT + .2byte EC_WORD_OPPOSITE + .2byte EC_WORD_OR + .2byte EC_WORD_OTHER + .2byte EC_WORD_OUR + .2byte EC_WORD_OUT + .2byte EC_MOVE(OUTRAGE) + .2byte EC_WORD_OUTSIDE + .2byte EC_WORD_OVER + .2byte EC_WORD_OVERDO + .2byte EC_WORD_OVERGROW + .2byte EC_MOVE(OVERHEAT) + .2byte EC_WORD_OVERWHELMING + .2byte EC_WORD_OWN + .2byte EC_WORD_OWN_TEMPO gEasyChatWordsByLetter_P:: @ 859D9D6 - ec_move1 PAIN_SPLIT - ec_pokemon2 PARAS - ec_pokemon2 PARASECT - ec_word PARDON - ec_word PARENT - ec_word PARTNER - ec_word PARTY - ec_word PATTERN - ec_move2 PAY_DAY - ec_word PC - ec_move2 PECK - ec_pokemon1 PELIPPER - ec_word PERFECT - ec_word PERFECTION - ec_move2 PERISH_SONG - ec_pokemon2 PERSIAN - ec_word PERSON - ec_move2 PETAL_DANCE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 PHANPY - ec_pokemon2 PHANPY - ec_word PHONE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 PICHU - ec_pokemon2 PICHU - ec_word PICKUP - ec_pokemon2 PIDGEOT - ec_pokemon2 PIDGEOTTO - ec_pokemon2 PIDGEY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 PIKACHU - ec_pokemon2 PIKACHU - ec_pokemon2 PILOSWINE - ec_move2 PIN_MISSILE - ec_pokemon2 PINECO - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 PINSIR - ec_pokemon2 PINSIR - ec_word PKRS - ec_word PLACE - ec_word PLANS - ec_word PLAY - ec_word PLAYED - ec_word PLAYS - ec_word PLEASE - ec_word PLUS - ec_word PLUSH_DOLL - ec_pokemon1 PLUSLE - ec_word POINTS - ec_word POISON - ec_move2 POISON_FANG - ec_move2 POISON_GAS - ec_word POISON_POINT - ec_move2 POISON_STING - ec_move2 POISON_TAIL - ec_move2 POISON_POWDER - ec_word POKEBLOCK - ec_word POKEDEX - ec_word POKEMON - ec_word POKENAV - ec_pokemon2 POLITOED - ec_pokemon2 POLIWAG - ec_pokemon2 POLIWHIRL - ec_pokemon2 POLIWRATH - ec_pokemon2 PONYTA - ec_pokemon1 POOCHYENA - ec_word POPULAR - ec_pokemon2 PORYGON - ec_pokemon2 PORYGON2 - ec_move2 POUND - ec_move1 POWDER_SNOW - ec_word POWER - ec_word PRAISE - ec_word PREPOSTEROUS - ec_move2 PRESENT - ec_word PRESSURE - ec_word PRETEND - ec_word PRETTY - ec_pokemon2 PRIMEAPE - ec_word PROBABLY - ec_word PROMISE - ec_move2 PROTECT - ec_move1 PSYBEAM - ec_move1 PSYCH_UP - .2byte -1, 2 @ doubled Pokémon species names - ec_word PSYCHIC - ec_move1 PSYCHIC - ec_move1 PSYCHO_BOOST - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 PSYDUCK - ec_pokemon2 PSYDUCK - ec_move1 PSYWAVE - ec_pokemon2 PUPITAR - ec_word PURE_POWER - ec_move1 PURSUIT - ec_word PUSHOVER + .2byte EC_MOVE(PAIN_SPLIT) + .2byte EC_POKEMON2(PARAS) + .2byte EC_POKEMON2(PARASECT) + .2byte EC_WORD_PARDON + .2byte EC_WORD_PARENT + .2byte EC_WORD_PARTNER + .2byte EC_WORD_PARTY + .2byte EC_WORD_PATTERN + .2byte EC_MOVE2(PAY_DAY) + .2byte EC_WORD_PC + .2byte EC_MOVE2(PECK) + .2byte EC_POKEMON(PELIPPER) + .2byte EC_WORD_PERFECT + .2byte EC_WORD_PERFECTION + .2byte EC_MOVE2(PERISH_SONG) + .2byte EC_POKEMON2(PERSIAN) + .2byte EC_WORD_PERSON + .2byte EC_MOVE2(PETAL_DANCE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(PHANPY) + .2byte EC_POKEMON2(PHANPY) + .2byte EC_WORD_PHONE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(PICHU) + .2byte EC_POKEMON2(PICHU) + .2byte EC_WORD_PICKUP + .2byte EC_POKEMON2(PIDGEOT) + .2byte EC_POKEMON2(PIDGEOTTO) + .2byte EC_POKEMON2(PIDGEY) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(PIKACHU) + .2byte EC_POKEMON2(PIKACHU) + .2byte EC_POKEMON2(PILOSWINE) + .2byte EC_MOVE2(PIN_MISSILE) + .2byte EC_POKEMON2(PINECO) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(PINSIR) + .2byte EC_POKEMON2(PINSIR) + .2byte EC_WORD_PKRS + .2byte EC_WORD_PLACE + .2byte EC_WORD_PLANS + .2byte EC_WORD_PLAY + .2byte EC_WORD_PLAYED + .2byte EC_WORD_PLAYS + .2byte EC_WORD_PLEASE + .2byte EC_WORD_PLUS + .2byte EC_WORD_PLUSH_DOLL + .2byte EC_POKEMON(PLUSLE) + .2byte EC_WORD_POINTS + .2byte EC_WORD_POISON + .2byte EC_MOVE2(POISON_FANG) + .2byte EC_MOVE2(POISON_GAS) + .2byte EC_WORD_POISON_POINT + .2byte EC_MOVE2(POISON_STING) + .2byte EC_MOVE2(POISON_TAIL) + .2byte EC_MOVE2(POISON_POWDER) + .2byte EC_WORD_POKEBLOCK + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_POKEMON + .2byte EC_WORD_POKENAV + .2byte EC_POKEMON2(POLITOED) + .2byte EC_POKEMON2(POLIWAG) + .2byte EC_POKEMON2(POLIWHIRL) + .2byte EC_POKEMON2(POLIWRATH) + .2byte EC_POKEMON2(PONYTA) + .2byte EC_POKEMON(POOCHYENA) + .2byte EC_WORD_POPULAR + .2byte EC_POKEMON2(PORYGON) + .2byte EC_POKEMON2(PORYGON2) + .2byte EC_MOVE2(POUND) + .2byte EC_MOVE(POWDER_SNOW) + .2byte EC_WORD_POWER + .2byte EC_WORD_PRAISE + .2byte EC_WORD_PREPOSTEROUS + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_PRESSURE + .2byte EC_WORD_PRETEND + .2byte EC_WORD_PRETTY + .2byte EC_POKEMON2(PRIMEAPE) + .2byte EC_WORD_PROBABLY + .2byte EC_WORD_PROMISE + .2byte EC_MOVE2(PROTECT) + .2byte EC_MOVE(PSYBEAM) + .2byte EC_MOVE(PSYCH_UP) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_WORD_PSYCHIC + .2byte EC_MOVE(PSYCHIC) + .2byte EC_MOVE(PSYCHO_BOOST) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(PSYDUCK) + .2byte EC_POKEMON2(PSYDUCK) + .2byte EC_MOVE(PSYWAVE) + .2byte EC_POKEMON2(PUPITAR) + .2byte EC_WORD_PURE_POWER + .2byte EC_MOVE(PURSUIT) + .2byte EC_WORD_PUSHOVER gEasyChatWordsByLetter_Q:: @ 859DAA2 - ec_pokemon2 QUAGSIRE - ec_word QUESTION - ec_move2 QUICK_ATTACK - ec_pokemon2 QUILAVA - ec_word QUITE - ec_pokemon2 QWILFISH + .2byte EC_POKEMON2(QUAGSIRE) + .2byte EC_WORD_QUESTION + .2byte EC_MOVE2(QUICK_ATTACK) + .2byte EC_POKEMON2(QUILAVA) + .2byte EC_WORD_QUITE + .2byte EC_POKEMON2(QWILFISH) gEasyChatWordsByLetter_R:: @ 859DAAE - ec_word RADIO - ec_move1 RAGE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 RAICHU - ec_pokemon2 RAICHU - ec_pokemon2 RAIKOU - ec_move1 RAIN_DANCE - ec_word RAIN_DISH - ec_pokemon1 RALTS - ec_word RANK - ec_move1 RAPID_SPIN - ec_pokemon2 RAPIDASH - ec_word RARE - ec_word RATHER - ec_pokemon2 RATICATE - ec_pokemon2 RATTATA - ec_pokemon1 RAYQUAZA - ec_move2 RAZOR_LEAF - ec_move1 RAZOR_WIND - ec_word READY - ec_word REALLY - ec_word REAR - ec_word RECEIVED - ec_word RECOMMEND - ec_move1 RECOVER - ec_move2 RECYCLE - ec_word RED - ec_move2 REFLECT - ec_move2 REFRESH - ec_word REFRESHING - ec_word REFUSE - ec_pokemon1 REGICE - ec_pokemon1 REGIROCK - ec_pokemon1 REGISTEEL - ec_word REJECT - ec_word RELEASE - ec_pokemon1 RELICANTH - ec_pokemon2 REMORAID - ec_word RENTAL - ec_move2 REST - ec_word RESUSCITATE - ec_move1 RETURN - ec_move2 REVENGE - ec_move1 REVERSAL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 RHYDON - ec_pokemon2 RHYDON - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 RHYHORN - ec_pokemon2 RHYHORN - ec_word RIBBON - ec_word RICKETY - ec_word RIGHT - ec_word RIPPED - ec_word RIVAL - ec_move2 ROAR - ec_word ROCK - ec_move2 ROCK_BLAST - ec_word ROCK_HEAD - ec_move1 ROCK_SLIDE - ec_move1 ROCK_SMASH - ec_move1 ROCK_THROW - ec_move1 ROCK_TOMB - ec_word ROCK_SOLID - ec_move2 ROLE_PLAY - ec_move2 ROLLING_KICK - ec_move1 ROLLOUT - ec_word ROMANTIC - ec_word ROOM - ec_pokemon1 ROSELIA - ec_word ROUGH_SKIN - ec_word RPG - ec_word RUBY - ec_word RULE - ec_word RUN - ec_word RUN_AWAY - ec_word RUNS + .2byte EC_WORD_RADIO + .2byte EC_MOVE(RAGE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(RAICHU) + .2byte EC_POKEMON2(RAICHU) + .2byte EC_POKEMON2(RAIKOU) + .2byte EC_MOVE(RAIN_DANCE) + .2byte EC_WORD_RAIN_DISH + .2byte EC_POKEMON(RALTS) + .2byte EC_WORD_RANK + .2byte EC_MOVE(RAPID_SPIN) + .2byte EC_POKEMON2(RAPIDASH) + .2byte EC_WORD_RARE + .2byte EC_WORD_RATHER + .2byte EC_POKEMON2(RATICATE) + .2byte EC_POKEMON2(RATTATA) + .2byte EC_POKEMON(RAYQUAZA) + .2byte EC_MOVE2(RAZOR_LEAF) + .2byte EC_MOVE(RAZOR_WIND) + .2byte EC_WORD_READY + .2byte EC_WORD_REALLY + .2byte EC_WORD_REAR + .2byte EC_WORD_RECEIVED + .2byte EC_WORD_RECOMMEND + .2byte EC_MOVE(RECOVER) + .2byte EC_MOVE2(RECYCLE) + .2byte EC_WORD_RED + .2byte EC_MOVE2(REFLECT) + .2byte EC_MOVE2(REFRESH) + .2byte EC_WORD_REFRESHING + .2byte EC_WORD_REFUSE + .2byte EC_POKEMON(REGICE) + .2byte EC_POKEMON(REGIROCK) + .2byte EC_POKEMON(REGISTEEL) + .2byte EC_WORD_REJECT + .2byte EC_WORD_RELEASE + .2byte EC_POKEMON(RELICANTH) + .2byte EC_POKEMON2(REMORAID) + .2byte EC_WORD_RENTAL + .2byte EC_MOVE2(REST) + .2byte EC_WORD_RESUSCITATE + .2byte EC_MOVE(RETURN) + .2byte EC_MOVE2(REVENGE) + .2byte EC_MOVE(REVERSAL) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(RHYDON) + .2byte EC_POKEMON2(RHYDON) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(RHYHORN) + .2byte EC_POKEMON2(RHYHORN) + .2byte EC_WORD_RIBBON + .2byte EC_WORD_RICKETY + .2byte EC_WORD_RIGHT + .2byte EC_WORD_RIPPED + .2byte EC_WORD_RIVAL + .2byte EC_MOVE2(ROAR) + .2byte EC_WORD_ROCK + .2byte EC_MOVE2(ROCK_BLAST) + .2byte EC_WORD_ROCK_HEAD + .2byte EC_MOVE(ROCK_SLIDE) + .2byte EC_MOVE(ROCK_SMASH) + .2byte EC_MOVE(ROCK_THROW) + .2byte EC_MOVE(ROCK_TOMB) + .2byte EC_WORD_ROCK_SOLID + .2byte EC_MOVE2(ROLE_PLAY) + .2byte EC_MOVE2(ROLLING_KICK) + .2byte EC_MOVE(ROLLOUT) + .2byte EC_WORD_ROMANTIC + .2byte EC_WORD_ROOM + .2byte EC_POKEMON(ROSELIA) + .2byte EC_WORD_ROUGH_SKIN + .2byte EC_WORD_RPG + .2byte EC_WORD_RUBY + .2byte EC_WORD_RULE + .2byte EC_WORD_RUN + .2byte EC_WORD_RUN_AWAY + .2byte EC_WORD_RUNS gEasyChatWordsByLetter_S:: @ 859DB4E - ec_pokemon1 SABLEYE - ec_move1 SACRED_FIRE - ec_word SAD - ec_word SADLY - ec_move1 SAFEGUARD - ec_word SAID - ec_pokemon1 SALAMENCE - ec_word SAND_STREAM - ec_move1 SAND_TOMB - ec_word SAND_VEIL - ec_move1 SAND_ATTACK - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SANDSHREW - ec_pokemon2 SANDSHREW - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SANDSLASH - ec_pokemon2 SANDSLASH - ec_move1 SANDSTORM - ec_word SAPPHIRE - ec_word SATISFIED - ec_word SATURDAY - ec_word SAYS - ec_word SCARY - ec_move1 SCARY_FACE - ec_word SCATTER - ec_pokemon1 SCEPTILE - ec_word SCHOOL - ec_pokemon2 SCIZOR - ec_move2 SCRATCH - ec_move1 SCREECH - ec_pokemon2 SCYTHER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SEADRA - ec_pokemon2 SEADRA - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SEAKING - ec_pokemon2 SEAKING - ec_pokemon1 SEALEO - ec_word SEARCH - ec_word SECRET - ec_word SECRET_BASE - ec_move2 SECRET_POWER - ec_word SEE - ec_word SEE_YA - ec_pokemon1 SEEDOT - ec_word SEEK - ec_pokemon2 SEEL - ec_word SEEMS - ec_word SEES - ec_move2 SEISMIC_TOSS - ec_move1 SELF_DESTRUCT - ec_word SENSE - ec_pokemon2 SENTRET - ec_word SERENE_GRACE - ec_word SERIOUS - ec_word SERIOUSLY - ec_word SERVICE - ec_pokemon1 SEVIPER - ec_move1 SHADOW_BALL - ec_move1 SHADOW_PUNCH - ec_word SHADOW_TAG - ec_word SHADY - ec_word SHAKE - ec_word SHAKY - ec_word SHALLOW - ec_pokemon1 SHARPEDO - ec_move1 SHARPEN - ec_word SHE - ec_word SHE_IS - ec_word SHE_WAS - ec_word SHED_SKIN - ec_pokemon1 SHEDINJA - ec_move1 SHEER_COLD - ec_pokemon1 SHELGON - ec_word SHELL_ARMOR - ec_pokemon2 SHELLDER - ec_word SHIELD_DUST - ec_pokemon1 SHIFTRY - ec_word SHINE - ec_move2 SHOCK_WAVE - ec_word SHOCKED - ec_word SHOPPING - ec_word SHOULD - ec_word SHOW - ec_word SHREDDED - ec_pokemon1 SHROOMISH - ec_pokemon2 SHUCKLE - ec_pokemon1 SHUPPET - ec_word SIBLINGS - ec_word SIGH - ec_move1 SIGNAL_BEAM - ec_pokemon1 SILCOON - ec_word SILKY - ec_word SILVER - ec_move1 SILVER_WIND - ec_word SIMPLE - ec_word SINCE - ec_move1 SING - ec_word SINK - ec_word SISTER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SKARMORY - ec_pokemon2 SKARMORY - ec_move1 SKETCH - ec_word SKILL - ec_move1 SKILL_SWAP - ec_word SKILLED - ec_pokemon2 SKIPLOOM - ec_pokemon1 SKITTY - ec_move2 SKULL_BASH - ec_move1 SKY_ATTACK - ec_move1 SKY_UPPERCUT - ec_move2 SLACK_OFF - ec_pokemon1 SLAKING - ec_pokemon1 SLAKOTH - ec_move2 SLAM - ec_move1 SLASH - ec_word SLEEP - ec_move2 SLEEP_POWDER - ec_move2 SLEEP_TALK - ec_word SLEPT - ec_word SLIDE - ec_word SLIMY - ec_pokemon2 SLOWBRO - ec_pokemon2 SLOWKING - ec_pokemon2 SLOWPOKE - ec_move2 SLUDGE - ec_move2 SLUDGE_BOMB - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 SLUGMA - ec_pokemon2 SLUGMA - ec_word SMACK - ec_word SMALL - ec_word SMART - ec_word SMARTNESS - ec_pokemon2 SMEARGLE - ec_word SMELL - ec_word SMELL_YA - ec_move1 SMELLING_SALT - ec_word SMITE - ec_move1 SMOG - ec_move1 SMOKESCREEN - ec_pokemon2 SMOOCHUM - ec_word SMOOTH - ec_move2 SNATCH - ec_pokemon2 SNEASEL - ec_move1 SNORE - ec_pokemon2 SNORLAX - ec_word SNORT - ec_pokemon1 SNORUNT - ec_pokemon2 SNUBBULL - ec_word SO - ec_move2 SOFT_BOILED - ec_word SOFTWARE - ec_move1 SOLAR_BEAM - ec_pokemon1 SOLROCK - ec_word SOME - ec_word SOMEHOW - ec_word SOMEONE - ec_word SOMETHING - ec_word SOMETIME - ec_word SON - ec_word SONG - ec_word SONGS - ec_move1 SONIC_BOOM - ec_word SOON - ec_word SORRY - ec_word SOUNDPROOF - ec_word SP_ABILITY - ec_move1 SPARK - ec_pokemon2 SPEAROW - ec_word SPECTATOR - ec_word SPEED_BOOST - ec_pokemon1 SPHEAL - ec_move1 SPIDER_WEB - ec_move2 SPIKE_CANNON - ec_move2 SPIKES - ec_pokemon2 SPINARAK - ec_pokemon1 SPINDA - ec_word SPIRALING - ec_word SPIRIT - ec_move2 SPIT_UP - ec_move1 SPITE - ec_move2 SPLASH - ec_pokemon1 SPOINK - ec_move1 SPORE - ec_word SPORTS - ec_word SPRING - ec_pokemon2 SQUIRTLE - ec_word STAGE - ec_pokemon2 STANTLER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 STARMIE - ec_pokemon2 STARMIE - ec_word START - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 STARYU - ec_pokemon2 STARYU - ec_word STATIC - ec_word STAY_AT_HOME - ec_word STEEL - ec_move2 STEEL_WING - ec_pokemon2 STEELIX - ec_word STENCH - ec_word STICKY_HOLD - ec_move2 STOCKPILE - ec_move2 STOMP - ec_word STOP - ec_word STORE - ec_word STORES - ec_word STORY - ec_word STRATEGY - ec_move1 STRENGTH - ec_move1 STRING_SHOT - ec_word STRONG - ec_move2 STRUGGLE - ec_word STUDY - ec_move1 STUN_SPORE - ec_word STURDY - ec_move1 SUBMISSION - ec_move2 SUBSTITUTE - ec_word SUCTION_CUPS - ec_pokemon2 SUDOWOODO - ec_pokemon2 SUICUNE - ec_word SUMMER - ec_word SUNDAY - ec_pokemon2 SUNFLORA - ec_pokemon2 SUNKERN - ec_move2 SUNNY_DAY - ec_word SUPER - ec_move1 SUPER_FANG - ec_move2 SUPERPOWER - ec_move2 SUPERSONIC - ec_move2 SURF - ec_word SURPRISE - ec_word SURRENDER - ec_pokemon1 SURSKIT - ec_pokemon1 SWABLU - ec_move1 SWAGGER - ec_move2 SWALLOW - ec_pokemon1 SWALOT - ec_pokemon1 SWAMPERT - ec_word SWARM - ec_move2 SWEET_KISS - ec_move1 SWEET_SCENT - ec_word SWEETS - ec_pokemon1 SWELLOW - ec_move1 SWIFT - ec_word SWIFT_SWIM - ec_pokemon2 SWINUB - ec_move2 SWORDS_DANCE - ec_word SYNCHRONIZE - ec_move1 SYNTHESIS - ec_word SYSTEM + .2byte EC_POKEMON(SABLEYE) + .2byte EC_MOVE(SACRED_FIRE) + .2byte EC_WORD_SAD + .2byte EC_WORD_SADLY + .2byte EC_MOVE(SAFEGUARD) + .2byte EC_WORD_SAID + .2byte EC_POKEMON(SALAMENCE) + .2byte EC_WORD_SAND_STREAM + .2byte EC_MOVE(SAND_TOMB) + .2byte EC_WORD_SAND_VEIL + .2byte EC_MOVE(SAND_ATTACK) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SANDSHREW) + .2byte EC_POKEMON2(SANDSHREW) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SANDSLASH) + .2byte EC_POKEMON2(SANDSLASH) + .2byte EC_MOVE(SANDSTORM) + .2byte EC_WORD_SAPPHIRE + .2byte EC_WORD_SATISFIED + .2byte EC_WORD_SATURDAY + .2byte EC_WORD_SAYS + .2byte EC_WORD_SCARY + .2byte EC_MOVE(SCARY_FACE) + .2byte EC_WORD_SCATTER + .2byte EC_POKEMON(SCEPTILE) + .2byte EC_WORD_SCHOOL + .2byte EC_POKEMON2(SCIZOR) + .2byte EC_MOVE2(SCRATCH) + .2byte EC_MOVE(SCREECH) + .2byte EC_POKEMON2(SCYTHER) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SEADRA) + .2byte EC_POKEMON2(SEADRA) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SEAKING) + .2byte EC_POKEMON2(SEAKING) + .2byte EC_POKEMON(SEALEO) + .2byte EC_WORD_SEARCH + .2byte EC_WORD_SECRET + .2byte EC_WORD_SECRET_BASE + .2byte EC_MOVE2(SECRET_POWER) + .2byte EC_WORD_SEE + .2byte EC_WORD_SEE_YA + .2byte EC_POKEMON(SEEDOT) + .2byte EC_WORD_SEEK + .2byte EC_POKEMON2(SEEL) + .2byte EC_WORD_SEEMS + .2byte EC_WORD_SEES + .2byte EC_MOVE2(SEISMIC_TOSS) + .2byte EC_MOVE(SELF_DESTRUCT) + .2byte EC_WORD_SENSE + .2byte EC_POKEMON2(SENTRET) + .2byte EC_WORD_SERENE_GRACE + .2byte EC_WORD_SERIOUS + .2byte EC_WORD_SERIOUSLY + .2byte EC_WORD_SERVICE + .2byte EC_POKEMON(SEVIPER) + .2byte EC_MOVE(SHADOW_BALL) + .2byte EC_MOVE(SHADOW_PUNCH) + .2byte EC_WORD_SHADOW_TAG + .2byte EC_WORD_SHADY + .2byte EC_WORD_SHAKE + .2byte EC_WORD_SHAKY + .2byte EC_WORD_SHALLOW + .2byte EC_POKEMON(SHARPEDO) + .2byte EC_MOVE(SHARPEN) + .2byte EC_WORD_SHE + .2byte EC_WORD_SHE_IS + .2byte EC_WORD_SHE_WAS + .2byte EC_WORD_SHED_SKIN + .2byte EC_POKEMON(SHEDINJA) + .2byte EC_MOVE(SHEER_COLD) + .2byte EC_POKEMON(SHELGON) + .2byte EC_WORD_SHELL_ARMOR + .2byte EC_POKEMON2(SHELLDER) + .2byte EC_WORD_SHIELD_DUST + .2byte EC_POKEMON(SHIFTRY) + .2byte EC_WORD_SHINE + .2byte EC_MOVE2(SHOCK_WAVE) + .2byte EC_WORD_SHOCKED + .2byte EC_WORD_SHOPPING + .2byte EC_WORD_SHOULD + .2byte EC_WORD_SHOW + .2byte EC_WORD_SHREDDED + .2byte EC_POKEMON(SHROOMISH) + .2byte EC_POKEMON2(SHUCKLE) + .2byte EC_POKEMON(SHUPPET) + .2byte EC_WORD_SIBLINGS + .2byte EC_WORD_SIGH + .2byte EC_MOVE(SIGNAL_BEAM) + .2byte EC_POKEMON(SILCOON) + .2byte EC_WORD_SILKY + .2byte EC_WORD_SILVER + .2byte EC_MOVE(SILVER_WIND) + .2byte EC_WORD_SIMPLE + .2byte EC_WORD_SINCE + .2byte EC_MOVE(SING) + .2byte EC_WORD_SINK + .2byte EC_WORD_SISTER + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SKARMORY) + .2byte EC_POKEMON2(SKARMORY) + .2byte EC_MOVE(SKETCH) + .2byte EC_WORD_SKILL + .2byte EC_MOVE(SKILL_SWAP) + .2byte EC_WORD_SKILLED + .2byte EC_POKEMON2(SKIPLOOM) + .2byte EC_POKEMON(SKITTY) + .2byte EC_MOVE2(SKULL_BASH) + .2byte EC_MOVE(SKY_ATTACK) + .2byte EC_MOVE(SKY_UPPERCUT) + .2byte EC_MOVE2(SLACK_OFF) + .2byte EC_POKEMON(SLAKING) + .2byte EC_POKEMON(SLAKOTH) + .2byte EC_MOVE2(SLAM) + .2byte EC_MOVE(SLASH) + .2byte EC_WORD_SLEEP + .2byte EC_MOVE2(SLEEP_POWDER) + .2byte EC_MOVE2(SLEEP_TALK) + .2byte EC_WORD_SLEPT + .2byte EC_WORD_SLIDE + .2byte EC_WORD_SLIMY + .2byte EC_POKEMON2(SLOWBRO) + .2byte EC_POKEMON2(SLOWKING) + .2byte EC_POKEMON2(SLOWPOKE) + .2byte EC_MOVE2(SLUDGE) + .2byte EC_MOVE2(SLUDGE_BOMB) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(SLUGMA) + .2byte EC_POKEMON2(SLUGMA) + .2byte EC_WORD_SMACK + .2byte EC_WORD_SMALL + .2byte EC_WORD_SMART + .2byte EC_WORD_SMARTNESS + .2byte EC_POKEMON2(SMEARGLE) + .2byte EC_WORD_SMELL + .2byte EC_WORD_SMELL_YA + .2byte EC_MOVE(SMELLING_SALT) + .2byte EC_WORD_SMITE + .2byte EC_MOVE(SMOG) + .2byte EC_MOVE(SMOKESCREEN) + .2byte EC_POKEMON2(SMOOCHUM) + .2byte EC_WORD_SMOOTH + .2byte EC_MOVE2(SNATCH) + .2byte EC_POKEMON2(SNEASEL) + .2byte EC_MOVE(SNORE) + .2byte EC_POKEMON2(SNORLAX) + .2byte EC_WORD_SNORT + .2byte EC_POKEMON(SNORUNT) + .2byte EC_POKEMON2(SNUBBULL) + .2byte EC_WORD_SO + .2byte EC_MOVE2(SOFT_BOILED) + .2byte EC_WORD_SOFTWARE + .2byte EC_MOVE(SOLAR_BEAM) + .2byte EC_POKEMON(SOLROCK) + .2byte EC_WORD_SOME + .2byte EC_WORD_SOMEHOW + .2byte EC_WORD_SOMEONE + .2byte EC_WORD_SOMETHING + .2byte EC_WORD_SOMETIME + .2byte EC_WORD_SON + .2byte EC_WORD_SONG + .2byte EC_WORD_SONGS + .2byte EC_MOVE(SONIC_BOOM) + .2byte EC_WORD_SOON + .2byte EC_WORD_SORRY + .2byte EC_WORD_SOUNDPROOF + .2byte EC_WORD_SP_ABILITY + .2byte EC_MOVE(SPARK) + .2byte EC_POKEMON2(SPEAROW) + .2byte EC_WORD_SPECTATOR + .2byte EC_WORD_SPEED_BOOST + .2byte EC_POKEMON(SPHEAL) + .2byte EC_MOVE(SPIDER_WEB) + .2byte EC_MOVE2(SPIKE_CANNON) + .2byte EC_MOVE2(SPIKES) + .2byte EC_POKEMON2(SPINARAK) + .2byte EC_POKEMON(SPINDA) + .2byte EC_WORD_SPIRALING + .2byte EC_WORD_SPIRIT + .2byte EC_MOVE2(SPIT_UP) + .2byte EC_MOVE(SPITE) + .2byte EC_MOVE2(SPLASH) + .2byte EC_POKEMON(SPOINK) + .2byte EC_MOVE(SPORE) + .2byte EC_WORD_SPORTS + .2byte EC_WORD_SPRING + .2byte EC_POKEMON2(SQUIRTLE) + .2byte EC_WORD_STAGE + .2byte EC_POKEMON2(STANTLER) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(STARMIE) + .2byte EC_POKEMON2(STARMIE) + .2byte EC_WORD_START + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(STARYU) + .2byte EC_POKEMON2(STARYU) + .2byte EC_WORD_STATIC + .2byte EC_WORD_STAY_AT_HOME + .2byte EC_WORD_STEEL + .2byte EC_MOVE2(STEEL_WING) + .2byte EC_POKEMON2(STEELIX) + .2byte EC_WORD_STENCH + .2byte EC_WORD_STICKY_HOLD + .2byte EC_MOVE2(STOCKPILE) + .2byte EC_MOVE2(STOMP) + .2byte EC_WORD_STOP + .2byte EC_WORD_STORE + .2byte EC_WORD_STORES + .2byte EC_WORD_STORY + .2byte EC_WORD_STRATEGY + .2byte EC_MOVE(STRENGTH) + .2byte EC_MOVE(STRING_SHOT) + .2byte EC_WORD_STRONG + .2byte EC_MOVE2(STRUGGLE) + .2byte EC_WORD_STUDY + .2byte EC_MOVE(STUN_SPORE) + .2byte EC_WORD_STURDY + .2byte EC_MOVE(SUBMISSION) + .2byte EC_MOVE2(SUBSTITUTE) + .2byte EC_WORD_SUCTION_CUPS + .2byte EC_POKEMON2(SUDOWOODO) + .2byte EC_POKEMON2(SUICUNE) + .2byte EC_WORD_SUMMER + .2byte EC_WORD_SUNDAY + .2byte EC_POKEMON2(SUNFLORA) + .2byte EC_POKEMON2(SUNKERN) + .2byte EC_MOVE2(SUNNY_DAY) + .2byte EC_WORD_SUPER + .2byte EC_MOVE(SUPER_FANG) + .2byte EC_MOVE2(SUPERPOWER) + .2byte EC_MOVE2(SUPERSONIC) + .2byte EC_MOVE2(SURF) + .2byte EC_WORD_SURPRISE + .2byte EC_WORD_SURRENDER + .2byte EC_POKEMON(SURSKIT) + .2byte EC_POKEMON(SWABLU) + .2byte EC_MOVE(SWAGGER) + .2byte EC_MOVE2(SWALLOW) + .2byte EC_POKEMON(SWALOT) + .2byte EC_POKEMON(SWAMPERT) + .2byte EC_WORD_SWARM + .2byte EC_MOVE2(SWEET_KISS) + .2byte EC_MOVE(SWEET_SCENT) + .2byte EC_WORD_SWEETS + .2byte EC_POKEMON(SWELLOW) + .2byte EC_MOVE(SWIFT) + .2byte EC_WORD_SWIFT_SWIM + .2byte EC_POKEMON2(SWINUB) + .2byte EC_MOVE2(SWORDS_DANCE) + .2byte EC_WORD_SYNCHRONIZE + .2byte EC_MOVE(SYNTHESIS) + .2byte EC_WORD_SYSTEM gEasyChatWordsByLetter_T:: @ 859DD5A - ec_move2 TACKLE - ec_move2 TAIL_GLOW - ec_move1 TAIL_WHIP - ec_pokemon1 TAILLOW - ec_word TAKE - ec_move2 TAKE_DOWN - ec_word TAKE_THAT - ec_word TALENT - ec_word TALK - ec_word TALKING - ec_pokemon2 TANGELA - ec_word TASTY - ec_move2 TAUNT - ec_pokemon2 TAUROS - ec_word TCH - ec_word TEACH - ec_word TEACHER - ec_word TEACHES - ec_pokemon2 TEDDIURSA - ec_move2 TEETER_DANCE - ec_move2 TELEPORT - ec_word TELEVISION - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 TENTACOOL - ec_pokemon2 TENTACOOL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 TENTACRUEL - ec_pokemon2 TENTACRUEL - ec_word TERRIBLE - ec_word TEST - ec_word THAN - ec_word THANK_YOU - ec_word THANKS - ec_word THAT - ec_word THAT_WAS - ec_word THAT_S - ec_word THAT_S_IT_EXCL - ec_word THE - ec_word THEIR - ec_word THERE - ec_word THESE - ec_word THESE_WERE - ec_word THEY - ec_word THEY_WERE - ec_word THEY_RE - ec_word THEY_VE - ec_word THICK - ec_word THICK_FAT - ec_move2 THIEF - ec_word THIN - ec_word THING - ec_word THINGS - ec_word THINK - ec_word THINKS - ec_word THIRSTY - ec_word THIS - ec_word THIS_IS_IT_EXCL - ec_word THOSE - ec_word THOSE_ARE - ec_word THOSE_WERE - ec_move1 THRASH - ec_word THROW - ec_move1 THUNDER - ec_move2 THUNDER_WAVE - ec_move1 THUNDERBOLT - ec_move1 THUNDER_PUNCH - ec_move2 THUNDER_SHOCK - ec_word THURSDAY - ec_move1 TICKLE - ec_word TICKLISH - ec_word TIGHT - ec_word TIME - ec_word TIMES - ec_word TIRED - ec_word TO - ec_word TO_HER - ec_word TO_ME - ec_word TO_THEM - ec_word TO_US - ec_word TO_WHOM - ec_word TODAY - ec_pokemon2 TOGEPI - ec_word TOGETHER - ec_pokemon2 TOGETIC - ec_word TOMORROW - ec_word TOO - ec_word TOO_LATE - ec_word TOO_STRONG - ec_word TOO_WEAK - ec_word TOP - ec_pokemon1 TORCHIC - ec_pokemon1 TORKOAL - ec_move1 TORMENT - ec_word TORRENT - ec_word TOTALLY - ec_pokemon2 TOTODILE - ec_word TOUGH - ec_word TOUGHNESS - ec_word TOURNAMENT - ec_word TOWER - ec_move2 TOXIC - ec_word TOYS - ec_word TRACE - ec_word TRADE - ec_word TRAIN - ec_word TRAINER - ec_word TRAINS - ec_move2 TRANSFORM - ec_pokemon1 TRAPINCH - ec_word TRAVEL - ec_word TREASURE - ec_pokemon1 TREECKO - ec_word TRENDY - ec_move2 TRI_ATTACK - ec_move2 TRICK - ec_word TRIES - ec_move2 TRIPLE_KICK - ec_pokemon1 TROPIUS - ec_word TRUANT - ec_word TRULY - ec_word TRUMP_CARD - ec_word TRUST - ec_word TRY - ec_word TUESDAY - ec_move2 TWINEEDLE - ec_word TWIRLING - ec_move2 TWISTER - ec_word TYPE - ec_pokemon2 TYPHLOSION - ec_pokemon2 TYRANITAR - ec_pokemon2 TYROGUE + .2byte EC_MOVE2(TACKLE) + .2byte EC_MOVE2(TAIL_GLOW) + .2byte EC_MOVE(TAIL_WHIP) + .2byte EC_POKEMON(TAILLOW) + .2byte EC_WORD_TAKE + .2byte EC_MOVE2(TAKE_DOWN) + .2byte EC_WORD_TAKE_THAT + .2byte EC_WORD_TALENT + .2byte EC_WORD_TALK + .2byte EC_WORD_TALKING + .2byte EC_POKEMON2(TANGELA) + .2byte EC_WORD_TASTY + .2byte EC_MOVE2(TAUNT) + .2byte EC_POKEMON2(TAUROS) + .2byte EC_WORD_TCH + .2byte EC_WORD_TEACH + .2byte EC_WORD_TEACHER + .2byte EC_WORD_TEACHES + .2byte EC_POKEMON2(TEDDIURSA) + .2byte EC_MOVE2(TEETER_DANCE) + .2byte EC_MOVE2(TELEPORT) + .2byte EC_WORD_TELEVISION + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(TENTACOOL) + .2byte EC_POKEMON2(TENTACOOL) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(TENTACRUEL) + .2byte EC_POKEMON2(TENTACRUEL) + .2byte EC_WORD_TERRIBLE + .2byte EC_WORD_TEST + .2byte EC_WORD_THAN + .2byte EC_WORD_THANK_YOU + .2byte EC_WORD_THANKS + .2byte EC_WORD_THAT + .2byte EC_WORD_THAT_WAS + .2byte EC_WORD_THAT_S + .2byte EC_WORD_THAT_S_IT_EXCL + .2byte EC_WORD_THE + .2byte EC_WORD_THEIR + .2byte EC_WORD_THERE + .2byte EC_WORD_THESE + .2byte EC_WORD_THESE_WERE + .2byte EC_WORD_THEY + .2byte EC_WORD_THEY_WERE + .2byte EC_WORD_THEY_RE + .2byte EC_WORD_THEY_VE + .2byte EC_WORD_THICK + .2byte EC_WORD_THICK_FAT + .2byte EC_MOVE2(THIEF) + .2byte EC_WORD_THIN + .2byte EC_WORD_THING + .2byte EC_WORD_THINGS + .2byte EC_WORD_THINK + .2byte EC_WORD_THINKS + .2byte EC_WORD_THIRSTY + .2byte EC_WORD_THIS + .2byte EC_WORD_THIS_IS_IT_EXCL + .2byte EC_WORD_THOSE + .2byte EC_WORD_THOSE_ARE + .2byte EC_WORD_THOSE_WERE + .2byte EC_MOVE(THRASH) + .2byte EC_WORD_THROW + .2byte EC_MOVE(THUNDER) + .2byte EC_MOVE2(THUNDER_WAVE) + .2byte EC_MOVE(THUNDERBOLT) + .2byte EC_MOVE(THUNDER_PUNCH) + .2byte EC_MOVE2(THUNDER_SHOCK) + .2byte EC_WORD_THURSDAY + .2byte EC_MOVE(TICKLE) + .2byte EC_WORD_TICKLISH + .2byte EC_WORD_TIGHT + .2byte EC_WORD_TIME + .2byte EC_WORD_TIMES + .2byte EC_WORD_TIRED + .2byte EC_WORD_TO + .2byte EC_WORD_TO_HER + .2byte EC_WORD_TO_ME + .2byte EC_WORD_TO_THEM + .2byte EC_WORD_TO_US + .2byte EC_WORD_TO_WHOM + .2byte EC_WORD_TODAY + .2byte EC_POKEMON2(TOGEPI) + .2byte EC_WORD_TOGETHER + .2byte EC_POKEMON2(TOGETIC) + .2byte EC_WORD_TOMORROW + .2byte EC_WORD_TOO + .2byte EC_WORD_TOO_LATE + .2byte EC_WORD_TOO_STRONG + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_TOP + .2byte EC_POKEMON(TORCHIC) + .2byte EC_POKEMON(TORKOAL) + .2byte EC_MOVE(TORMENT) + .2byte EC_WORD_TORRENT + .2byte EC_WORD_TOTALLY + .2byte EC_POKEMON2(TOTODILE) + .2byte EC_WORD_TOUGH + .2byte EC_WORD_TOUGHNESS + .2byte EC_WORD_TOURNAMENT + .2byte EC_WORD_TOWER + .2byte EC_MOVE2(TOXIC) + .2byte EC_WORD_TOYS + .2byte EC_WORD_TRACE + .2byte EC_WORD_TRADE + .2byte EC_WORD_TRAIN + .2byte EC_WORD_TRAINER + .2byte EC_WORD_TRAINS + .2byte EC_MOVE2(TRANSFORM) + .2byte EC_POKEMON(TRAPINCH) + .2byte EC_WORD_TRAVEL + .2byte EC_WORD_TREASURE + .2byte EC_POKEMON(TREECKO) + .2byte EC_WORD_TRENDY + .2byte EC_MOVE2(TRI_ATTACK) + .2byte EC_MOVE2(TRICK) + .2byte EC_WORD_TRIES + .2byte EC_MOVE2(TRIPLE_KICK) + .2byte EC_POKEMON(TROPIUS) + .2byte EC_WORD_TRUANT + .2byte EC_WORD_TRULY + .2byte EC_WORD_TRUMP_CARD + .2byte EC_WORD_TRUST + .2byte EC_WORD_TRY + .2byte EC_WORD_TUESDAY + .2byte EC_MOVE2(TWINEEDLE) + .2byte EC_WORD_TWIRLING + .2byte EC_MOVE2(TWISTER) + .2byte EC_WORD_TYPE + .2byte EC_POKEMON2(TYPHLOSION) + .2byte EC_POKEMON2(TYRANITAR) + .2byte EC_POKEMON2(TYROGUE) gEasyChatWordsByLetter_U:: @ 859DE64 - ec_word UGLY - ec_word UH_HUH - ec_word UH_OH - ec_word UM - ec_pokemon2 UMBREON - ec_word UNAVOIDABLE - ec_word UNBELIEVABLE - ec_word UNCLE - ec_word UNDERSTAND - ec_word UNDERSTANDS - ec_word UNDERSTOOD - ec_word UNION - ec_pokemon2 UNOWN - ec_word UNTIL - ec_word UP - ec_word UPBEAT - ec_move1 UPROAR - ec_word UPSIDE_DOWN - ec_word URGH - ec_pokemon2 URSARING - ec_word USE - ec_word USELESS - ec_word USES - ec_word USING + .2byte EC_WORD_UGLY + .2byte EC_WORD_UH_HUH + .2byte EC_WORD_UH_OH + .2byte EC_WORD_UM + .2byte EC_POKEMON2(UMBREON) + .2byte EC_WORD_UNAVOIDABLE + .2byte EC_WORD_UNBELIEVABLE + .2byte EC_WORD_UNCLE + .2byte EC_WORD_UNDERSTAND + .2byte EC_WORD_UNDERSTANDS + .2byte EC_WORD_UNDERSTOOD + .2byte EC_WORD_UNION + .2byte EC_POKEMON2(UNOWN) + .2byte EC_WORD_UNTIL + .2byte EC_WORD_UP + .2byte EC_WORD_UPBEAT + .2byte EC_MOVE(UPROAR) + .2byte EC_WORD_UPSIDE_DOWN + .2byte EC_WORD_URGH + .2byte EC_POKEMON2(URSARING) + .2byte EC_WORD_USE + .2byte EC_WORD_USELESS + .2byte EC_WORD_USES + .2byte EC_WORD_USING gEasyChatWordsByLetter_V:: @ 859DE94 - ec_word VACATION - ec_pokemon2 VAPOREON - ec_pokemon2 VENOMOTH - ec_pokemon2 VENONAT - ec_pokemon2 VENUSAUR - ec_word VERSION - ec_word VERSUS - ec_word VERY - ec_pokemon1 VIBRAVA - ec_move2 VICE_GRIP - ec_word VICTORY - ec_pokemon2 VICTREEBEL - ec_word VIEWING - ec_pokemon1 VIGOROTH - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 VILEPLUME - ec_pokemon2 VILEPLUME - ec_move2 VINE_WHIP - ec_word VITAL_SPIRIT - ec_move1 VITAL_THROW - ec_pokemon1 VOLBEAT - ec_word VOLT_ABSORB - ec_move2 VOLT_TACKLE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 VOLTORB - ec_pokemon2 VOLTORB - ec_word VORACIOUS - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 VULPIX - ec_pokemon2 VULPIX + .2byte EC_WORD_VACATION + .2byte EC_POKEMON2(VAPOREON) + .2byte EC_POKEMON2(VENOMOTH) + .2byte EC_POKEMON2(VENONAT) + .2byte EC_POKEMON2(VENUSAUR) + .2byte EC_WORD_VERSION + .2byte EC_WORD_VERSUS + .2byte EC_WORD_VERY + .2byte EC_POKEMON(VIBRAVA) + .2byte EC_MOVE2(VICE_GRIP) + .2byte EC_WORD_VICTORY + .2byte EC_POKEMON2(VICTREEBEL) + .2byte EC_WORD_VIEWING + .2byte EC_POKEMON(VIGOROTH) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(VILEPLUME) + .2byte EC_POKEMON2(VILEPLUME) + .2byte EC_MOVE2(VINE_WHIP) + .2byte EC_WORD_VITAL_SPIRIT + .2byte EC_MOVE(VITAL_THROW) + .2byte EC_POKEMON(VOLBEAT) + .2byte EC_WORD_VOLT_ABSORB + .2byte EC_MOVE2(VOLT_TACKLE) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(VOLTORB) + .2byte EC_POKEMON2(VOLTORB) + .2byte EC_WORD_VORACIOUS + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(VULPIX) + .2byte EC_POKEMON2(VULPIX) gEasyChatWordsByLetter_W:: @ 859DED6 - ec_word WAAAH - ec_word WAHAHAHA - ec_pokemon1 WAILMER - ec_pokemon1 WAILORD - ec_word WAIT - ec_word WAKE_UP - ec_word WAKES_UP - ec_word WALK - ec_word WALKING - ec_word WALKS - ec_pokemon1 WALREIN - ec_word WANDERING - ec_word WANNABE - ec_word WANT - ec_word WANTS - ec_pokemon2 WARTORTLE - ec_word WAS - ec_word WASN_T - ec_word WATER - ec_word WATER_ABSORB - ec_move2 WATER_GUN - ec_move2 WATER_PULSE - ec_move2 WATER_SPORT - ec_move1 WATER_SPOUT - ec_word WATER_VEIL - ec_move2 WATERFALL - ec_word WAY - ec_word WE - ec_word WE_RE - ec_word WE_VE - ec_word WEAK - ec_word WEAKENED - ec_move1 WEATHER_BALL - ec_word WEDNESDAY - ec_pokemon2 WEEDLE - ec_word WEEK - ec_pokemon2 WEEPINBELL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 WEEZING - ec_pokemon2 WEEZING - ec_word WEIRD - ec_word WELCOME - ec_word WELL - ec_word WELL_THEN - ec_word WENT - ec_word WERE - ec_word WEREN_T - ec_word WHAT - ec_word WHAT_S_UP_QUES - ec_word WHEN - ec_word WHEN_I_WIN - ec_word WHERE - ec_word WHICH - ec_word WHILE - ec_move1 WHIRLPOOL - ec_move2 WHIRLWIND - ec_pokemon1 WHISCASH - ec_pokemon1 WHISMUR - ec_word WHITE_SMOKE - ec_word WHO - ec_word WHO_IS - ec_word WHO_WAS - ec_word WHOAH - ec_word WHOM - ec_word WHOSE - ec_word WHY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 WIGGLYTUFF - ec_pokemon2 WIGGLYTUFF - ec_word WILD - ec_word WILL - ec_word WILL_BE_HERE - ec_move1 WILL_O_WISP - ec_word WIMPY - ec_word WIN - ec_move2 WING_ATTACK - ec_pokemon1 WINGULL - ec_word WINNER - ec_word WINS - ec_word WINTER - ec_word WIRELESS - ec_move2 WISH - ec_word WITH - ec_move1 WITHDRAW - ec_word WITHOUT - ec_word WOBBLY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 WOBBUFFET - ec_pokemon2 WOBBUFFET - ec_word WOMAN - ec_word WON - ec_word WON_T - ec_word WONDER - ec_word WONDER_GUARD - ec_pokemon2 WOOPER - ec_word WORD - ec_word WORK - ec_word WORKING - ec_word WORKS - ec_word WORLD - ec_word WORRY - ec_word WOULD - ec_word WOW - ec_word WOWEE - ec_move2 WRAP - ec_word WROOOAAR_EXCL - ec_pokemon1 WURMPLE - ec_pokemon1 WYNAUT + .2byte EC_WORD_WAAAH + .2byte EC_WORD_WAHAHAHA + .2byte EC_POKEMON(WAILMER) + .2byte EC_POKEMON(WAILORD) + .2byte EC_WORD_WAIT + .2byte EC_WORD_WAKE_UP + .2byte EC_WORD_WAKES_UP + .2byte EC_WORD_WALK + .2byte EC_WORD_WALKING + .2byte EC_WORD_WALKS + .2byte EC_POKEMON(WALREIN) + .2byte EC_WORD_WANDERING + .2byte EC_WORD_WANNABE + .2byte EC_WORD_WANT + .2byte EC_WORD_WANTS + .2byte EC_POKEMON2(WARTORTLE) + .2byte EC_WORD_WAS + .2byte EC_WORD_WASN_T + .2byte EC_WORD_WATER + .2byte EC_WORD_WATER_ABSORB + .2byte EC_MOVE2(WATER_GUN) + .2byte EC_MOVE2(WATER_PULSE) + .2byte EC_MOVE2(WATER_SPORT) + .2byte EC_MOVE(WATER_SPOUT) + .2byte EC_WORD_WATER_VEIL + .2byte EC_MOVE2(WATERFALL) + .2byte EC_WORD_WAY + .2byte EC_WORD_WE + .2byte EC_WORD_WE_RE + .2byte EC_WORD_WE_VE + .2byte EC_WORD_WEAK + .2byte EC_WORD_WEAKENED + .2byte EC_MOVE(WEATHER_BALL) + .2byte EC_WORD_WEDNESDAY + .2byte EC_POKEMON2(WEEDLE) + .2byte EC_WORD_WEEK + .2byte EC_POKEMON2(WEEPINBELL) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(WEEZING) + .2byte EC_POKEMON2(WEEZING) + .2byte EC_WORD_WEIRD + .2byte EC_WORD_WELCOME + .2byte EC_WORD_WELL + .2byte EC_WORD_WELL_THEN + .2byte EC_WORD_WENT + .2byte EC_WORD_WERE + .2byte EC_WORD_WEREN_T + .2byte EC_WORD_WHAT + .2byte EC_WORD_WHAT_S_UP_QUES + .2byte EC_WORD_WHEN + .2byte EC_WORD_WHEN_I_WIN + .2byte EC_WORD_WHERE + .2byte EC_WORD_WHICH + .2byte EC_WORD_WHILE + .2byte EC_MOVE(WHIRLPOOL) + .2byte EC_MOVE2(WHIRLWIND) + .2byte EC_POKEMON(WHISCASH) + .2byte EC_POKEMON(WHISMUR) + .2byte EC_WORD_WHITE_SMOKE + .2byte EC_WORD_WHO + .2byte EC_WORD_WHO_IS + .2byte EC_WORD_WHO_WAS + .2byte EC_WORD_WHOAH + .2byte EC_WORD_WHOM + .2byte EC_WORD_WHOSE + .2byte EC_WORD_WHY + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(WIGGLYTUFF) + .2byte EC_POKEMON2(WIGGLYTUFF) + .2byte EC_WORD_WILD + .2byte EC_WORD_WILL + .2byte EC_WORD_WILL_BE_HERE + .2byte EC_MOVE(WILL_O_WISP) + .2byte EC_WORD_WIMPY + .2byte EC_WORD_WIN + .2byte EC_MOVE2(WING_ATTACK) + .2byte EC_POKEMON(WINGULL) + .2byte EC_WORD_WINNER + .2byte EC_WORD_WINS + .2byte EC_WORD_WINTER + .2byte EC_WORD_WIRELESS + .2byte EC_MOVE2(WISH) + .2byte EC_WORD_WITH + .2byte EC_MOVE(WITHDRAW) + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_WOBBLY + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON(WOBBUFFET) + .2byte EC_POKEMON2(WOBBUFFET) + .2byte EC_WORD_WOMAN + .2byte EC_WORD_WON + .2byte EC_WORD_WON_T + .2byte EC_WORD_WONDER + .2byte EC_WORD_WONDER_GUARD + .2byte EC_POKEMON2(WOOPER) + .2byte EC_WORD_WORD + .2byte EC_WORD_WORK + .2byte EC_WORD_WORKING + .2byte EC_WORD_WORKS + .2byte EC_WORD_WORLD + .2byte EC_WORD_WORRY + .2byte EC_WORD_WOULD + .2byte EC_WORD_WOW + .2byte EC_WORD_WOWEE + .2byte EC_MOVE2(WRAP) + .2byte EC_WORD_WROOOAAR_EXCL + .2byte EC_POKEMON(WURMPLE) + .2byte EC_POKEMON(WYNAUT) gEasyChatWordsByLetter_X:: @ 859DFB4 .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 XATU - ec_pokemon2 XATU + .2byte EC_POKEMON(XATU) + .2byte EC_POKEMON2(XATU) gEasyChatWordsByLetter_Y:: @ 859DFBC - ec_word YAHOO - ec_pokemon2 YANMA - ec_move1 YAWN - ec_word YAY - ec_word YEAH - ec_word YEAH_YEAH - ec_word YEEHAW_EXCL - ec_word YES - ec_word YES_SIR_EXCL - ec_word YESTERDAY - ec_word YET - ec_word YO - ec_word YOU - ec_word YOU_RE - ec_word YOU_VE - ec_word YOUNG - ec_word YOUR - ec_word YOURS - ec_word YUP + .2byte EC_WORD_YAHOO + .2byte EC_POKEMON2(YANMA) + .2byte EC_MOVE(YAWN) + .2byte EC_WORD_YAY + .2byte EC_WORD_YEAH + .2byte EC_WORD_YEAH_YEAH + .2byte EC_WORD_YEEHAW_EXCL + .2byte EC_WORD_YES + .2byte EC_WORD_YES_SIR_EXCL + .2byte EC_WORD_YESTERDAY + .2byte EC_WORD_YET + .2byte EC_WORD_YO + .2byte EC_WORD_YOU + .2byte EC_WORD_YOU_RE + .2byte EC_WORD_YOU_VE + .2byte EC_WORD_YOUNG + .2byte EC_WORD_YOUR + .2byte EC_WORD_YOURS + .2byte EC_WORD_YUP gEasyChatWordsByLetter_Z:: @ 859DFE2 - ec_pokemon1 ZANGOOSE - ec_move2 ZAP_CANNON - ec_pokemon2 ZAPDOS - ec_pokemon1 ZIGZAGOON + .2byte EC_POKEMON(ZANGOOSE) + .2byte EC_MOVE2(ZAP_CANNON) + .2byte EC_POKEMON2(ZAPDOS) + .2byte EC_POKEMON(ZIGZAGOON) .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon1 ZUBAT - ec_pokemon2 ZUBAT + .2byte EC_POKEMON(ZUBAT) + .2byte EC_POKEMON2(ZUBAT) gEasyChatWordsByLetter_UnusedJapaneseHi:: @ 859DFF2 - ec_pokemon2 CLEFFA - ec_word AIYEEH - ec_pokemon2 WEEDLE - ec_word HERO - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 PIKACHU - ec_pokemon1 PIKACHU - ec_move2 LIGHT_SCREEN - ec_word SHINE - ec_word LOW - ec_pokemon2 CLEFABLE - ec_word FLYING - ec_pokemon2 PIDGEOT - ec_pokemon2 PIDGEOTTO - ec_word LEFT - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 PICHU - ec_pokemon1 PICHU - ec_move2 SCRATCH - ec_word SURPRISE - ec_move2 HYPER_FANG - ec_pokemon2 CLEFAIRY - ec_word DROUGHT - ec_word HIDDEN - ec_word PERSON - ec_word AWFUL - ec_pokemon2 CHARMANDER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 STARYU - ec_pokemon1 STARYU - ec_word ALONE - ec_pokemon2 CYNDAQUIL - ec_move2 EMBER - ec_pokemon1 VIBRAVA - ec_word BORED - ec_pokemon2 SUNKERN - ec_word SECRET - ec_word SECRET_BASE - ec_move2 SECRET_POWER - ec_pokemon2 TEDDIURSA - ec_word HIYAH - ec_move2 DIZZY_PUNCH - ec_word LIGHTNINGROD - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 VOLTORB - ec_pokemon1 VOLTORB - ec_word DAYTIME - ec_move2 BULK_UP - ec_word NAP - ec_word HEROINE - ec_pokemon1 FEEBAS + .2byte EC_POKEMON2(CLEFFA) + .2byte EC_WORD_AIYEEH + .2byte EC_POKEMON2(WEEDLE) + .2byte EC_WORD_HERO + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(PIKACHU) + .2byte EC_POKEMON(PIKACHU) + .2byte EC_MOVE2(LIGHT_SCREEN) + .2byte EC_WORD_SHINE + .2byte EC_WORD_LOW + .2byte EC_POKEMON2(CLEFABLE) + .2byte EC_WORD_FLYING + .2byte EC_POKEMON2(PIDGEOT) + .2byte EC_POKEMON2(PIDGEOTTO) + .2byte EC_WORD_LEFT + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(PICHU) + .2byte EC_POKEMON(PICHU) + .2byte EC_MOVE2(SCRATCH) + .2byte EC_WORD_SURPRISE + .2byte EC_MOVE2(HYPER_FANG) + .2byte EC_POKEMON2(CLEFAIRY) + .2byte EC_WORD_DROUGHT + .2byte EC_WORD_HIDDEN + .2byte EC_WORD_PERSON + .2byte EC_WORD_AWFUL + .2byte EC_POKEMON2(CHARMANDER) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(STARYU) + .2byte EC_POKEMON(STARYU) + .2byte EC_WORD_ALONE + .2byte EC_POKEMON2(CYNDAQUIL) + .2byte EC_MOVE2(EMBER) + .2byte EC_POKEMON(VIBRAVA) + .2byte EC_WORD_BORED + .2byte EC_POKEMON2(SUNKERN) + .2byte EC_WORD_SECRET + .2byte EC_WORD_SECRET_BASE + .2byte EC_MOVE2(SECRET_POWER) + .2byte EC_POKEMON2(TEDDIURSA) + .2byte EC_WORD_HIYAH + .2byte EC_MOVE2(DIZZY_PUNCH) + .2byte EC_WORD_LIGHTNINGROD + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(VOLTORB) + .2byte EC_POKEMON(VOLTORB) + .2byte EC_WORD_DAYTIME + .2byte EC_MOVE2(BULK_UP) + .2byte EC_WORD_NAP + .2byte EC_WORD_HEROINE + .2byte EC_POKEMON(FEEBAS) gEasyChatWordsByLetter_UnusedJapaneseFu:: @ 859E060 - ec_word FIGHT - ec_pokemon2 MOLTRES - ec_word FASHION - ec_word FEAR - ec_word FEVER - ec_move2 IMPRISON - ec_pokemon2 FLAREON - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 ALAKAZAM - ec_pokemon1 ALAKAZAM - ec_pokemon2 MAGMAR - ec_pokemon1 GRUMPIG - ec_move2 FEATHER_DANCE - ec_pokemon2 FORRETRESS - ec_move2 WHIRLWIND - ec_word COMPOUNDEYES - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 WIGGLYTUFF - ec_pokemon1 WIGGLYTUFF - ec_move2 BEAT_UP - ec_word MYSTERY - ec_pokemon2 IVYSAUR - ec_pokemon2 BULBASAUR - ec_word MARVEL_SCALE - ec_word WONDER_GUARD - ec_pokemon2 VENUSAUR - ec_word LACKS - ec_word RESUSCITATE - ec_word SMACK - ec_word FUFUFU - ec_pokemon2 AERODACTYL - ec_word WIMPY - ec_pokemon2 MAGBY - ec_word LOL - ec_move2 BLIZZARD - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 IGGLYBUFF - ec_pokemon1 IGGLYBUFF - ec_word SNORT - ec_move2 STOMP - ec_word INSOMNIA - ec_word WINTER - ec_word LEVITATE - ec_pokemon1 FLYGON - ec_word PLUS - ec_move2 BLAST_BURN - ec_pokemon1 PLUSLE - ec_pokemon2 UMBREON - ec_move2 FLASH - ec_word WOBBLY - ec_move2 TEETER_DANCE - ec_word PRETEND - ec_pokemon2 ARTICUNO - ec_word WANNABE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 JIGGLYPUFF - ec_pokemon1 JIGGLYPUFF - ec_pokemon2 SNUBBULL - ec_word SHAKY - ec_move2 CRUSH_CLAW - ec_move2 BLAZE_KICK - ec_move2 PRESENT - ec_word PRESSURE - ec_word BLEND - ec_word FRONTIER - ec_word HUMPH - ec_move2 ERUPTION + .2byte EC_WORD_FIGHT + .2byte EC_POKEMON2(MOLTRES) + .2byte EC_WORD_FASHION + .2byte EC_WORD_FEAR + .2byte EC_WORD_FEVER + .2byte EC_MOVE2(IMPRISON) + .2byte EC_POKEMON2(FLAREON) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(ALAKAZAM) + .2byte EC_POKEMON(ALAKAZAM) + .2byte EC_POKEMON2(MAGMAR) + .2byte EC_POKEMON(GRUMPIG) + .2byte EC_MOVE2(FEATHER_DANCE) + .2byte EC_POKEMON2(FORRETRESS) + .2byte EC_MOVE2(WHIRLWIND) + .2byte EC_WORD_COMPOUNDEYES + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(WIGGLYTUFF) + .2byte EC_POKEMON(WIGGLYTUFF) + .2byte EC_MOVE2(BEAT_UP) + .2byte EC_WORD_MYSTERY + .2byte EC_POKEMON2(IVYSAUR) + .2byte EC_POKEMON2(BULBASAUR) + .2byte EC_WORD_MARVEL_SCALE + .2byte EC_WORD_WONDER_GUARD + .2byte EC_POKEMON2(VENUSAUR) + .2byte EC_WORD_LACKS + .2byte EC_WORD_RESUSCITATE + .2byte EC_WORD_SMACK + .2byte EC_WORD_FUFUFU + .2byte EC_POKEMON2(AERODACTYL) + .2byte EC_WORD_WIMPY + .2byte EC_POKEMON2(MAGBY) + .2byte EC_WORD_LOL + .2byte EC_MOVE2(BLIZZARD) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(IGGLYBUFF) + .2byte EC_POKEMON(IGGLYBUFF) + .2byte EC_WORD_SNORT + .2byte EC_MOVE2(STOMP) + .2byte EC_WORD_INSOMNIA + .2byte EC_WORD_WINTER + .2byte EC_WORD_LEVITATE + .2byte EC_POKEMON(FLYGON) + .2byte EC_WORD_PLUS + .2byte EC_MOVE2(BLAST_BURN) + .2byte EC_POKEMON(PLUSLE) + .2byte EC_POKEMON2(UMBREON) + .2byte EC_MOVE2(FLASH) + .2byte EC_WORD_WOBBLY + .2byte EC_MOVE2(TEETER_DANCE) + .2byte EC_WORD_PRETEND + .2byte EC_POKEMON2(ARTICUNO) + .2byte EC_WORD_WANNABE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(JIGGLYPUFF) + .2byte EC_POKEMON(JIGGLYPUFF) + .2byte EC_POKEMON2(SNUBBULL) + .2byte EC_WORD_SHAKY + .2byte EC_MOVE2(CRUSH_CLAW) + .2byte EC_MOVE2(BLAZE_KICK) + .2byte EC_MOVE2(PRESENT) + .2byte EC_WORD_PRESSURE + .2byte EC_WORD_BLEND + .2byte EC_WORD_FRONTIER + .2byte EC_WORD_HUMPH + .2byte EC_MOVE2(ERUPTION) gEasyChatWordsByLetter_UnusedJapaneseHe:: @ 859E0EE - ec_word HEY - ec_pokemon1 CORPHISH - ec_word BABY - ec_pokemon2 BAYLEEF - ec_word BEST - ec_word LOUSY - ec_word HEHEHE - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 GRIMER - ec_pokemon1 GRIMER - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 MUK - ec_pokemon1 MUK - ec_word LIQUID_OOZE - ec_move2 SLUDGE - ec_move2 SLUDGE_BOMB - ec_move2 GLARE - ec_word HEH - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 HERACROSS - ec_pokemon1 HERACROSS - ec_pokemon1 PELIPPER - ec_pokemon2 HOUNDOOM - ec_pokemon2 PERSIAN - ec_word RIPPED - ec_pokemon2 LICKITUNG - ec_word STUDY - ec_word COLOR_CHANGE - ec_move2 TRANSFORM + .2byte EC_WORD_HEY + .2byte EC_POKEMON(CORPHISH) + .2byte EC_WORD_BABY + .2byte EC_POKEMON2(BAYLEEF) + .2byte EC_WORD_BEST + .2byte EC_WORD_LOUSY + .2byte EC_WORD_HEHEHE + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(GRIMER) + .2byte EC_POKEMON(GRIMER) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(MUK) + .2byte EC_POKEMON(MUK) + .2byte EC_WORD_LIQUID_OOZE + .2byte EC_MOVE2(SLUDGE) + .2byte EC_MOVE2(SLUDGE_BOMB) + .2byte EC_MOVE2(GLARE) + .2byte EC_WORD_HEH + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(HERACROSS) + .2byte EC_POKEMON(HERACROSS) + .2byte EC_POKEMON(PELIPPER) + .2byte EC_POKEMON2(HOUNDOOM) + .2byte EC_POKEMON2(PERSIAN) + .2byte EC_WORD_RIPPED + .2byte EC_POKEMON2(LICKITUNG) + .2byte EC_WORD_STUDY + .2byte EC_WORD_COLOR_CHANGE + .2byte EC_MOVE2(TRANSFORM) gEasyChatWordsByLetter_UnusedJapaneseHo:: @ 859E12E - ec_move2 POISON_TAIL - ec_word POINTS - ec_pokemon2 HO_OH - ec_word SOUNDPROOF - ec_word ADVENTURE - ec_word EFFECT_SPORE - ec_move2 ROAR - ec_pokemon1 WAILORD - ec_pokemon1 WAILMER - ec_word DUDE - ec_word BOARD - ec_pokemon2 HOOTHOOT - ec_pokemon1 SALAMENCE - ec_word BALL - ec_move2 BONE_RUSH - ec_word THEY - ec_word THEY_WERE - ec_word TO_THEM - ec_word THEIR - ec_word THEY_RE - ec_word THEY_VE - ec_word POKENAV - ec_word POKEMON - ec_word GET - ec_word POKEDEX - ec_word PKRS - ec_move2 CAMOUFLAGE - ec_word WANT - ec_move2 COVET - ec_pokemon1 AGGRON - ec_move2 TAIL_GLOW - ec_pokemon1 POOCHYENA - ec_pokemon2 PIDGEY - ec_word AS_MUCH_AS - ec_pokemon2 PONYTA - ec_move2 BONE_CLUB - ec_move2 BONEMERANG - ec_word FIRE - ec_move2 FIRE_SPIN - ec_word FLAME_BODY - ec_move2 FIRE_PUNCH - ec_pokemon2 SKIPLOOM - ec_word HOHOHO - ec_word PRAISE - ec_word UH_HUH - ec_pokemon2 PORYGON - ec_pokemon2 PORYGON2 - ec_move2 VOLT_TACKLE - ec_word POKEBLOCK - ec_move2 PERISH_SONG - ec_word SHREDDED - ec_pokemon1 CASTFORM - ec_word BOOK - ec_word SERIOUS - ec_word REALLY + .2byte EC_MOVE2(POISON_TAIL) + .2byte EC_WORD_POINTS + .2byte EC_POKEMON2(HO_OH) + .2byte EC_WORD_SOUNDPROOF + .2byte EC_WORD_ADVENTURE + .2byte EC_WORD_EFFECT_SPORE + .2byte EC_MOVE2(ROAR) + .2byte EC_POKEMON(WAILORD) + .2byte EC_POKEMON(WAILMER) + .2byte EC_WORD_DUDE + .2byte EC_WORD_BOARD + .2byte EC_POKEMON2(HOOTHOOT) + .2byte EC_POKEMON(SALAMENCE) + .2byte EC_WORD_BALL + .2byte EC_MOVE2(BONE_RUSH) + .2byte EC_WORD_THEY + .2byte EC_WORD_THEY_WERE + .2byte EC_WORD_TO_THEM + .2byte EC_WORD_THEIR + .2byte EC_WORD_THEY_RE + .2byte EC_WORD_THEY_VE + .2byte EC_WORD_POKENAV + .2byte EC_WORD_POKEMON + .2byte EC_WORD_GET + .2byte EC_WORD_POKEDEX + .2byte EC_WORD_PKRS + .2byte EC_MOVE2(CAMOUFLAGE) + .2byte EC_WORD_WANT + .2byte EC_MOVE2(COVET) + .2byte EC_POKEMON(AGGRON) + .2byte EC_MOVE2(TAIL_GLOW) + .2byte EC_POKEMON(POOCHYENA) + .2byte EC_POKEMON2(PIDGEY) + .2byte EC_WORD_AS_MUCH_AS + .2byte EC_POKEMON2(PONYTA) + .2byte EC_MOVE2(BONE_CLUB) + .2byte EC_MOVE2(BONEMERANG) + .2byte EC_WORD_FIRE + .2byte EC_MOVE2(FIRE_SPIN) + .2byte EC_WORD_FLAME_BODY + .2byte EC_MOVE2(FIRE_PUNCH) + .2byte EC_POKEMON2(SKIPLOOM) + .2byte EC_WORD_HOHOHO + .2byte EC_WORD_PRAISE + .2byte EC_WORD_UH_HUH + .2byte EC_POKEMON2(PORYGON) + .2byte EC_POKEMON2(PORYGON2) + .2byte EC_MOVE2(VOLT_TACKLE) + .2byte EC_WORD_POKEBLOCK + .2byte EC_MOVE2(PERISH_SONG) + .2byte EC_WORD_SHREDDED + .2byte EC_POKEMON(CASTFORM) + .2byte EC_WORD_BOOK + .2byte EC_WORD_SERIOUS + .2byte EC_WORD_REALLY gEasyChatWordsByLetter_UnusedJapaneseMa:: @ 859E19C - ec_word OH_DEAR - ec_word IN - ec_word GIVE_UP - ec_word MINUS - ec_pokemon1 MINUN - ec_word DAILY - ec_word OWN_TEMPO - ec_move2 WRAP - ec_move2 SPIKES - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 MAGCARGO - ec_pokemon1 MAGCARGO - ec_move2 MAGNITUDE - ec_pokemon1 MAKUHITA - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 SLUGMA - ec_pokemon1 SLUGMA - ec_word MAGMA_ARMOR - ec_pokemon2 QUILAVA - ec_word OVERDO - ec_word LOSS - ec_word IF_I_LOSE - ec_word LOST - ec_word LOSE - ec_word TRULY - ec_word SERIOUSLY - ec_move2 MAGICAL_LEAF - ec_move2 MAGIC_COAT - ec_word MACHINE - ec_word OUT - ec_word MASTER - ec_word INCREASING - ec_word TOO - ec_word LIKE - ec_pokemon2 BELLSPROUT - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 WEEZING - ec_pokemon1 WEEZING - ec_word SMELL - ec_word YET - ec_word MISTAKE - ec_pokemon1 LINOONE - ec_word TOTALLY - ec_move2 MUD_SHOT - ec_move2 MACH_PUNCH - ec_word FESTIVAL - ec_word UNTIL - ec_word WAIT - ec_word GUARD - ec_move2 PROTECT - ec_pokemon1 CASCOON - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 MARILL - ec_pokemon1 MARILL - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 AZUMARILL - ec_pokemon1 AZUMARILL - ec_move2 DEFENSE_CURL - ec_word AS_IF - ec_pokemon1 SWALOT - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 ELECTRODE - ec_pokemon1 ELECTRODE - ec_move2 ROLLING_KICK - ec_word COMICS - ec_pokemon2 MANKEY - ec_word SATISFIED - ec_pokemon2 MANTINE + .2byte EC_WORD_OH_DEAR + .2byte EC_WORD_IN + .2byte EC_WORD_GIVE_UP + .2byte EC_WORD_MINUS + .2byte EC_POKEMON(MINUN) + .2byte EC_WORD_DAILY + .2byte EC_WORD_OWN_TEMPO + .2byte EC_MOVE2(WRAP) + .2byte EC_MOVE2(SPIKES) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(MAGCARGO) + .2byte EC_POKEMON(MAGCARGO) + .2byte EC_MOVE2(MAGNITUDE) + .2byte EC_POKEMON(MAKUHITA) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(SLUGMA) + .2byte EC_POKEMON(SLUGMA) + .2byte EC_WORD_MAGMA_ARMOR + .2byte EC_POKEMON2(QUILAVA) + .2byte EC_WORD_OVERDO + .2byte EC_WORD_LOSS + .2byte EC_WORD_IF_I_LOSE + .2byte EC_WORD_LOST + .2byte EC_WORD_LOSE + .2byte EC_WORD_TRULY + .2byte EC_WORD_SERIOUSLY + .2byte EC_MOVE2(MAGICAL_LEAF) + .2byte EC_MOVE2(MAGIC_COAT) + .2byte EC_WORD_MACHINE + .2byte EC_WORD_OUT + .2byte EC_WORD_MASTER + .2byte EC_WORD_INCREASING + .2byte EC_WORD_TOO + .2byte EC_WORD_LIKE + .2byte EC_POKEMON2(BELLSPROUT) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(WEEZING) + .2byte EC_POKEMON(WEEZING) + .2byte EC_WORD_SMELL + .2byte EC_WORD_YET + .2byte EC_WORD_MISTAKE + .2byte EC_POKEMON(LINOONE) + .2byte EC_WORD_TOTALLY + .2byte EC_MOVE2(MUD_SHOT) + .2byte EC_MOVE2(MACH_PUNCH) + .2byte EC_WORD_FESTIVAL + .2byte EC_WORD_UNTIL + .2byte EC_WORD_WAIT + .2byte EC_WORD_GUARD + .2byte EC_MOVE2(PROTECT) + .2byte EC_POKEMON(CASCOON) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(MARILL) + .2byte EC_POKEMON(MARILL) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(AZUMARILL) + .2byte EC_POKEMON(AZUMARILL) + .2byte EC_MOVE2(DEFENSE_CURL) + .2byte EC_WORD_AS_IF + .2byte EC_POKEMON(SWALOT) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(ELECTRODE) + .2byte EC_POKEMON(ELECTRODE) + .2byte EC_MOVE2(ROLLING_KICK) + .2byte EC_WORD_COMICS + .2byte EC_POKEMON2(MANKEY) + .2byte EC_WORD_SATISFIED + .2byte EC_POKEMON2(MANTINE) gEasyChatWordsByLetter_UnusedJapaneseMi:: @ 859E230 - ec_word PARTNER - ec_move2 SUBSTITUTE - ec_word RIGHT - ec_move2 DETECT - ec_move2 PIN_MISSILE - ec_word WATER - ec_move2 WATER_SPORT - ec_pokemon1 MUDKIP - ec_move2 WATER_GUN - ec_move2 MIST_BALL - ec_move2 WATER_PULSE - ec_word WATER_VEIL - ec_word SHOW - ec_word SEE - ec_word DID - ec_move2 FURY_ATTACK - ec_move2 FURY_SWIPES - ec_move2 DESTINY_BOND - ec_word LOOKS - ec_word REJECT - ec_word ACCEPT - ec_pokemon2 DRATINI - ec_move2 FALSE_SWIPE - ec_move2 FORESIGHT - ec_pokemon2 MEW - ec_pokemon2 MEWTWO - ec_move2 MIRROR_COAT - ec_move2 FUTURE_SIGHT - ec_word SEES - ec_move2 MILK_DRINK - ec_pokemon2 MILTANK - ec_pokemon1 MILOTIC - ec_word WE - ec_word BEEN - ec_word TO_US - ec_word OUR - ec_word WE_RE + .2byte EC_WORD_PARTNER + .2byte EC_MOVE2(SUBSTITUTE) + .2byte EC_WORD_RIGHT + .2byte EC_MOVE2(DETECT) + .2byte EC_MOVE2(PIN_MISSILE) + .2byte EC_WORD_WATER + .2byte EC_MOVE2(WATER_SPORT) + .2byte EC_POKEMON(MUDKIP) + .2byte EC_MOVE2(WATER_GUN) + .2byte EC_MOVE2(MIST_BALL) + .2byte EC_MOVE2(WATER_PULSE) + .2byte EC_WORD_WATER_VEIL + .2byte EC_WORD_SHOW + .2byte EC_WORD_SEE + .2byte EC_WORD_DID + .2byte EC_MOVE2(FURY_ATTACK) + .2byte EC_MOVE2(FURY_SWIPES) + .2byte EC_MOVE2(DESTINY_BOND) + .2byte EC_WORD_LOOKS + .2byte EC_WORD_REJECT + .2byte EC_WORD_ACCEPT + .2byte EC_POKEMON2(DRATINI) + .2byte EC_MOVE2(FALSE_SWIPE) + .2byte EC_MOVE2(FORESIGHT) + .2byte EC_POKEMON2(MEW) + .2byte EC_POKEMON2(MEWTWO) + .2byte EC_MOVE2(MIRROR_COAT) + .2byte EC_MOVE2(FUTURE_SIGHT) + .2byte EC_WORD_SEES + .2byte EC_MOVE2(MILK_DRINK) + .2byte EC_POKEMON2(MILTANK) + .2byte EC_POKEMON(MILOTIC) + .2byte EC_WORD_WE + .2byte EC_WORD_BEEN + .2byte EC_WORD_TO_US + .2byte EC_WORD_OUR + .2byte EC_WORD_WE_RE gEasyChatWordsByLetter_UnusedJapaneseMu:: @ 859E27A - ec_word MOOD - ec_pokemon2 MISDREAVUS - ec_word OLDEN - ec_word ARRGH - ec_word BUG - ec_word SWARM - ec_word RATHER - ec_pokemon2 SMOOCHUM - ec_word INVINCIBLE - ec_word HEART - ec_word MUFUFU - ec_word MMM + .2byte EC_WORD_MOOD + .2byte EC_POKEMON2(MISDREAVUS) + .2byte EC_WORD_OLDEN + .2byte EC_WORD_ARRGH + .2byte EC_WORD_BUG + .2byte EC_WORD_SWARM + .2byte EC_WORD_RATHER + .2byte EC_POKEMON2(SMOOCHUM) + .2byte EC_WORD_INVINCIBLE + .2byte EC_WORD_HEART + .2byte EC_WORD_MUFUFU + .2byte EC_WORD_MMM gEasyChatWordsByLetter_UnusedJapaneseMe:: @ 859E292 - ec_move2 CALM_MIND - ec_word MAIL - ec_move2 MEGA_DRAIN - ec_move2 MEGA_KICK - ec_move2 MEGA_PUNCH - ec_pokemon2 MEGANIUM - ec_move2 MEGAHORN - ec_word SEEK - ec_move2 HIDDEN_POWER - ec_word RARE - ec_pokemon1 METAGROSS - ec_pokemon2 DITTO - ec_move2 METAL_CLAW - ec_pokemon1 METANG - ec_word DESTROYED - ec_word MESSAGE - ec_word AWFULLY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 TENTACOOL - ec_pokemon1 TENTACOOL - ec_word FIERY - ec_pokemon2 MAREEP - ec_move2 ATTRACT - ec_word CUTE_CHARM - ec_word IMMUNITY + .2byte EC_MOVE2(CALM_MIND) + .2byte EC_WORD_MAIL + .2byte EC_MOVE2(MEGA_DRAIN) + .2byte EC_MOVE2(MEGA_KICK) + .2byte EC_MOVE2(MEGA_PUNCH) + .2byte EC_POKEMON2(MEGANIUM) + .2byte EC_MOVE2(MEGAHORN) + .2byte EC_WORD_SEEK + .2byte EC_MOVE2(HIDDEN_POWER) + .2byte EC_WORD_RARE + .2byte EC_POKEMON(METAGROSS) + .2byte EC_POKEMON2(DITTO) + .2byte EC_MOVE2(METAL_CLAW) + .2byte EC_POKEMON(METANG) + .2byte EC_WORD_DESTROYED + .2byte EC_WORD_MESSAGE + .2byte EC_WORD_AWFULLY + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(TENTACOOL) + .2byte EC_POKEMON(TENTACOOL) + .2byte EC_WORD_FIERY + .2byte EC_POKEMON2(MAREEP) + .2byte EC_MOVE2(ATTRACT) + .2byte EC_WORD_CUTE_CHARM + .2byte EC_WORD_IMMUNITY gEasyChatWordsByLetter_UnusedJapaneseMo:: @ 859E2C6 - ec_word ALMOST - ec_word BLAZE - ec_word NEARLY - ec_word MODE - ec_word OLD - ec_word THURSDAY - ec_pokemon2 FLAAFFY - ec_word LISTENING - ec_word OWN - ec_word MORE - ec_word DIDN_T - ec_word PICKUP - ec_move2 MIMIC - ec_word TOO_LATE - ec_word PATTERN - ec_word FLASH_FIRE - ec_word RECEIVED - ec_pokemon2 VENOMOTH - ec_word DOESN_T - ec_pokemon2 TANGELA + .2byte EC_WORD_ALMOST + .2byte EC_WORD_BLAZE + .2byte EC_WORD_NEARLY + .2byte EC_WORD_MODE + .2byte EC_WORD_OLD + .2byte EC_WORD_THURSDAY + .2byte EC_POKEMON2(FLAAFFY) + .2byte EC_WORD_LISTENING + .2byte EC_WORD_OWN + .2byte EC_WORD_MORE + .2byte EC_WORD_DIDN_T + .2byte EC_WORD_PICKUP + .2byte EC_MOVE2(MIMIC) + .2byte EC_WORD_TOO_LATE + .2byte EC_WORD_PATTERN + .2byte EC_WORD_FLASH_FIRE + .2byte EC_WORD_RECEIVED + .2byte EC_POKEMON2(VENOMOTH) + .2byte EC_WORD_DOESN_T + .2byte EC_POKEMON2(TANGELA) gEasyChatWordsByLetter_UnusedJapaneseYa:: @ 859E2EE - ec_word HOO_HAH - ec_word PROMISE - ec_word KIND - ec_pokemon1 BALTOY - ec_word HOLIDAY - ec_word NEGATIVE - ec_move2 FRUSTRATION - ec_word DONE - ec_word FINALLY - ec_word ANY - ec_word YAHOO - ec_pokemon2 SLOWKING - ec_pokemon2 SLOWBRO - ec_move2 LEECH_SEED - ec_pokemon2 SLOWPOKE - ec_word DANGER - ec_pokemon2 MURKROW - ec_pokemon1 SABLEYE - ec_word DEFEATED - ec_word BEAT - ec_word VITAL_SPIRIT - ec_pokemon1 VIGOROTH - ec_word YOUNG - ec_pokemon2 YANMA + .2byte EC_WORD_HOO_HAH + .2byte EC_WORD_PROMISE + .2byte EC_WORD_KIND + .2byte EC_POKEMON(BALTOY) + .2byte EC_WORD_HOLIDAY + .2byte EC_WORD_NEGATIVE + .2byte EC_MOVE2(FRUSTRATION) + .2byte EC_WORD_DONE + .2byte EC_WORD_FINALLY + .2byte EC_WORD_ANY + .2byte EC_WORD_YAHOO + .2byte EC_POKEMON2(SLOWKING) + .2byte EC_POKEMON2(SLOWBRO) + .2byte EC_MOVE2(LEECH_SEED) + .2byte EC_POKEMON2(SLOWPOKE) + .2byte EC_WORD_DANGER + .2byte EC_POKEMON2(MURKROW) + .2byte EC_POKEMON(SABLEYE) + .2byte EC_WORD_DEFEATED + .2byte EC_WORD_BEAT + .2byte EC_WORD_VITAL_SPIRIT + .2byte EC_POKEMON(VIGOROTH) + .2byte EC_WORD_YOUNG + .2byte EC_POKEMON2(YANMA) gEasyChatWordsByLetter_UnusedJapaneseYu:: @ 859E31E - ec_pokemon1 SNORUNT - ec_word TAKE - ec_word UNION - ec_move2 METRONOME - ec_word DREAM - ec_move2 DREAM_EATER - ec_word ALLOW - ec_word FORGET - ec_pokemon1 CRADILY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 KADABRA - ec_pokemon1 KADABRA + .2byte EC_POKEMON(SNORUNT) + .2byte EC_WORD_TAKE + .2byte EC_WORD_UNION + .2byte EC_MOVE2(METRONOME) + .2byte EC_WORD_DREAM + .2byte EC_MOVE2(DREAM_EATER) + .2byte EC_WORD_ALLOW + .2byte EC_WORD_FORGET + .2byte EC_POKEMON(CRADILY) + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(KADABRA) + .2byte EC_POKEMON(KADABRA) gEasyChatWordsByLetter_UnusedJapaneseYo:: @ 859E338 - ec_word WITHOUT - ec_word YO - ec_move2 ACID - ec_word COME_OVER - ec_word KINDERGARTEN - ec_word CHLOROPHYLL - ec_word AFTER - ec_pokemon2 LARVITAR - ec_word OH_KAY - ec_word BEFORE - ec_word GREAT - ec_move2 MEDITATE - ec_word PURE_POWER - ec_word WELL - ec_move2 SNATCH - ec_word OKAY - ec_word PLANS - ec_word NIGHTTIME - ec_word WHILE - ec_pokemon1 DUSKULL - ec_word EASY - ec_word INSTEAD - ec_word NIGHT - ec_pokemon2 NOCTOWL - ec_word COUNT_ON - ec_word WEAK - ec_word TOO_WEAK - ec_word WEAKENED + .2byte EC_WORD_WITHOUT + .2byte EC_WORD_YO + .2byte EC_MOVE2(ACID) + .2byte EC_WORD_COME_OVER + .2byte EC_WORD_KINDERGARTEN + .2byte EC_WORD_CHLOROPHYLL + .2byte EC_WORD_AFTER + .2byte EC_POKEMON2(LARVITAR) + .2byte EC_WORD_OH_KAY + .2byte EC_WORD_BEFORE + .2byte EC_WORD_GREAT + .2byte EC_MOVE2(MEDITATE) + .2byte EC_WORD_PURE_POWER + .2byte EC_WORD_WELL + .2byte EC_MOVE2(SNATCH) + .2byte EC_WORD_OKAY + .2byte EC_WORD_PLANS + .2byte EC_WORD_NIGHTTIME + .2byte EC_WORD_WHILE + .2byte EC_POKEMON(DUSKULL) + .2byte EC_WORD_EASY + .2byte EC_WORD_INSTEAD + .2byte EC_WORD_NIGHT + .2byte EC_POKEMON2(NOCTOWL) + .2byte EC_WORD_COUNT_ON + .2byte EC_WORD_WEAK + .2byte EC_WORD_TOO_WEAK + .2byte EC_WORD_WEAKENED gEasyChatWordsByLetter_UnusedJapaneseRa:: @ 859E370 - ec_pokemon2 RAIKOU - ec_word WEEK - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 RAICHU - ec_pokemon1 RAICHU - ec_word RIVAL - ec_word LIFE - ec_pokemon1 MANECTRIC - ec_word SIMPLE - ec_word PUSHOVER - ec_pokemon1 SWAMPERT - ec_pokemon1 ELECTRIKE - ec_word SEEMS - ec_word RADIO - ec_move2 LUSTER_PURGE - ec_pokemon2 CHANSEY - ec_pokemon2 RATICATE - ec_pokemon1 LATIAS - ec_pokemon1 LATIOS - ec_pokemon1 LUVDISC - ec_pokemon2 LAPRAS - ec_word LOVEY_DOVEY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 VILEPLUME - ec_pokemon1 VILEPLUME - ec_word LALALA - ec_pokemon1 RALTS - ec_word FORGETS - ec_word APPEARS - ec_word RANK - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 LANTURN - ec_pokemon1 LANTURN + .2byte EC_POKEMON2(RAIKOU) + .2byte EC_WORD_WEEK + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(RAICHU) + .2byte EC_POKEMON(RAICHU) + .2byte EC_WORD_RIVAL + .2byte EC_WORD_LIFE + .2byte EC_POKEMON(MANECTRIC) + .2byte EC_WORD_SIMPLE + .2byte EC_WORD_PUSHOVER + .2byte EC_POKEMON(SWAMPERT) + .2byte EC_POKEMON(ELECTRIKE) + .2byte EC_WORD_SEEMS + .2byte EC_WORD_RADIO + .2byte EC_MOVE2(LUSTER_PURGE) + .2byte EC_POKEMON2(CHANSEY) + .2byte EC_POKEMON2(RATICATE) + .2byte EC_POKEMON(LATIAS) + .2byte EC_POKEMON(LATIOS) + .2byte EC_POKEMON(LUVDISC) + .2byte EC_POKEMON2(LAPRAS) + .2byte EC_WORD_LOVEY_DOVEY + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(VILEPLUME) + .2byte EC_POKEMON(VILEPLUME) + .2byte EC_WORD_LALALA + .2byte EC_POKEMON(RALTS) + .2byte EC_WORD_FORGETS + .2byte EC_WORD_APPEARS + .2byte EC_WORD_RANK + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(LANTURN) + .2byte EC_POKEMON(LANTURN) gEasyChatWordsByLetter_UnusedJapaneseRi:: @ 859E3B8 - ec_word LEADER - ec_move2 LEAF_BLADE - ec_pokemon2 CHARMELEON - ec_pokemon2 CHARIZARD - ec_move2 RECYCLE - ec_move2 REFLECT - ec_move2 REFRESH - ec_move2 REVENGE - ec_word RIBBON - ec_word TRENDY - ec_move2 DRAGON_RAGE - ec_move2 DRAGON_BREATH - ec_move2 DRAGON_DANCE - ec_word VACATION - ec_pokemon1 LILEEP - ec_pokemon2 URSARING - ec_word SHIELD_DUST + .2byte EC_WORD_LEADER + .2byte EC_MOVE2(LEAF_BLADE) + .2byte EC_POKEMON2(CHARMELEON) + .2byte EC_POKEMON2(CHARIZARD) + .2byte EC_MOVE2(RECYCLE) + .2byte EC_MOVE2(REFLECT) + .2byte EC_MOVE2(REFRESH) + .2byte EC_MOVE2(REVENGE) + .2byte EC_WORD_RIBBON + .2byte EC_WORD_TRENDY + .2byte EC_MOVE2(DRAGON_RAGE) + .2byte EC_MOVE2(DRAGON_BREATH) + .2byte EC_MOVE2(DRAGON_DANCE) + .2byte EC_WORD_VACATION + .2byte EC_POKEMON(LILEEP) + .2byte EC_POKEMON2(URSARING) + .2byte EC_WORD_SHIELD_DUST gEasyChatWordsByLetter_UnusedJapaneseRu:: @ 859E3DA - ec_pokemon2 JYNX - ec_word ROOM - ec_word RULE - ec_pokemon2 LUGIA - ec_word LOOK - ec_pokemon1 LUNATONE - ec_word RUBY - ec_word THAN - ec_pokemon1 AZURILL - ec_pokemon1 LUDICOLO - ec_word HAPPILY + .2byte EC_POKEMON2(JYNX) + .2byte EC_WORD_ROOM + .2byte EC_WORD_RULE + .2byte EC_POKEMON2(LUGIA) + .2byte EC_WORD_LOOK + .2byte EC_POKEMON(LUNATONE) + .2byte EC_WORD_RUBY + .2byte EC_WORD_THAN + .2byte EC_POKEMON(AZURILL) + .2byte EC_POKEMON(LUDICOLO) + .2byte EC_WORD_HAPPILY gEasyChatWordsByLetter_UnusedJapaneseRe:: @ 859E3F0 .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 MAGNETON - ec_pokemon1 MAGNETON - ec_move2 ICE_PUNCH - ec_move2 ICE_BEAM - ec_pokemon1 REGICE - ec_pokemon1 REGISTEEL - ec_pokemon1 REGIROCK - ec_pokemon1 RAYQUAZA - ec_word UGLY - ec_pokemon2 LEDIAN - ec_pokemon2 LEDYBA - ec_word FANTASTIC - ec_word LEVEL - ec_move2 FURY_CUTTER - ec_move2 COMET_PUNCH - ec_word RENTAL + .2byte EC_POKEMON2(MAGNETON) + .2byte EC_POKEMON(MAGNETON) + .2byte EC_MOVE2(ICE_PUNCH) + .2byte EC_MOVE2(ICE_BEAM) + .2byte EC_POKEMON(REGICE) + .2byte EC_POKEMON(REGISTEEL) + .2byte EC_POKEMON(REGIROCK) + .2byte EC_POKEMON(RAYQUAZA) + .2byte EC_WORD_UGLY + .2byte EC_POKEMON2(LEDIAN) + .2byte EC_POKEMON2(LEDYBA) + .2byte EC_WORD_FANTASTIC + .2byte EC_WORD_LEVEL + .2byte EC_MOVE2(FURY_CUTTER) + .2byte EC_MOVE2(COMET_PUNCH) + .2byte EC_WORD_RENTAL gEasyChatWordsByLetter_UnusedJapaneseRo:: @ 859E414 - ec_move2 SKULL_BASH + .2byte EC_MOVE2(SKULL_BASH) .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 VULPIX - ec_pokemon1 VULPIX - ec_pokemon1 ROSELIA - ec_move2 LOCK_ON - ec_move2 ROCK_BLAST - ec_word ROMANTIC - ec_word QUESTION + .2byte EC_POKEMON2(VULPIX) + .2byte EC_POKEMON(VULPIX) + .2byte EC_POKEMON(ROSELIA) + .2byte EC_MOVE2(LOCK_ON) + .2byte EC_MOVE2(ROCK_BLAST) + .2byte EC_WORD_ROMANTIC + .2byte EC_WORD_QUESTION gEasyChatWordsByLetter_UnusedJapaneseWa:: @ 859E428 - ec_word YAY - ec_word WORLD - ec_word AWW - ec_word WIRELESS - ec_word WOWEE - ec_pokemon1 COMBUSKEN - ec_word UNDERSTAND - ec_word UNDERSTANDS - ec_word FAINT - ec_word ANTICIPATION - ec_word ONCE - ec_word MOVE - ec_word WE_VE - ec_word FAINTED - ec_word WOMAN - ec_word SHE - ec_word SHE_WAS - ec_word TO_HER - ec_word HERS - ec_word SHE_IS - ec_word SOME - ec_pokemon2 JUMPLUFF - ec_move2 COTTON_SPORE - ec_word GWAH - ec_pokemon2 TOTODILE - ec_word WAHAHAHA - ec_word ANYWHERE - ec_move2 STRUGGLE - ec_word BADLY - .2byte -1, 2 @ doubled Pokémon species names - ec_pokemon2 MACHOP - ec_pokemon1 MACHOP + .2byte EC_WORD_YAY + .2byte EC_WORD_WORLD + .2byte EC_WORD_AWW + .2byte EC_WORD_WIRELESS + .2byte EC_WORD_WOWEE + .2byte EC_POKEMON(COMBUSKEN) + .2byte EC_WORD_UNDERSTAND + .2byte EC_WORD_UNDERSTANDS + .2byte EC_WORD_FAINT + .2byte EC_WORD_ANTICIPATION + .2byte EC_WORD_ONCE + .2byte EC_WORD_MOVE + .2byte EC_WORD_WE_VE + .2byte EC_WORD_FAINTED + .2byte EC_WORD_WOMAN + .2byte EC_WORD_SHE + .2byte EC_WORD_SHE_WAS + .2byte EC_WORD_TO_HER + .2byte EC_WORD_HERS + .2byte EC_WORD_SHE_IS + .2byte EC_WORD_SOME + .2byte EC_POKEMON2(JUMPLUFF) + .2byte EC_MOVE2(COTTON_SPORE) + .2byte EC_WORD_GWAH + .2byte EC_POKEMON2(TOTODILE) + .2byte EC_WORD_WAHAHAHA + .2byte EC_WORD_ANYWHERE + .2byte EC_MOVE2(STRUGGLE) + .2byte EC_WORD_BADLY + .2byte -1, 2 @ doubled Pokémon species names + .2byte EC_POKEMON2(MACHOP) + .2byte EC_POKEMON(MACHOP) .align 2 gEasyChatWordsByLetterPointers:: @ 859E46C diff --git a/data/trade.s b/data/trade.s index 3150269b0..b392fbc24 100644 --- a/data/trade.s +++ b/data/trade.s @@ -3,6 +3,9 @@ .section .rodata .align 2, 0 + +gUnknown_0832C6A8:: @ 832C6A8 + .incbin "baserom.gba", 0x32C6A8, 0x18 gUnknown_0832C6C0:: @ 832C6C0 .incbin "baserom.gba", 0x32c6c0, 0x1fe diff --git a/data/wild_encounter.s b/data/wild_encounter.s index e221c2f99..0b46e3d35 100644 --- a/data/wild_encounter.s +++ b/data/wild_encounter.s @@ -1,3 +1,4 @@ +#include "constants/species.h" .include "asm/macros.inc" .include "constants/constants.inc" diff --git a/data/wild_mons.inc b/data/wild_mons.inc index 3361a3975..83b73bc81 100644 --- a/data/wild_mons.inc +++ b/data/wild_mons.inc @@ -1,17 +1,17 @@ .align 2 gRoute101_LandMons:: @ 85507E4 - wild_mon WURMPLE, 2 - wild_mon POOCHYENA, 2 - wild_mon WURMPLE, 2 - wild_mon WURMPLE, 3 - wild_mon POOCHYENA, 3 - wild_mon POOCHYENA, 3 - wild_mon WURMPLE, 3 - wild_mon POOCHYENA, 3 - wild_mon ZIGZAGOON, 2 - wild_mon ZIGZAGOON, 2 - wild_mon ZIGZAGOON, 3 - wild_mon ZIGZAGOON, 3 + wild_mon SPECIES_WURMPLE, 2 + wild_mon SPECIES_POOCHYENA, 2 + wild_mon SPECIES_WURMPLE, 2 + wild_mon SPECIES_WURMPLE, 3 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_WURMPLE, 3 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_ZIGZAGOON, 2 + wild_mon SPECIES_ZIGZAGOON, 2 + wild_mon SPECIES_ZIGZAGOON, 3 + wild_mon SPECIES_ZIGZAGOON, 3 .align 2 gRoute101_LandMonsInfo:: @ 8550814 @@ -20,18 +20,18 @@ gRoute101_LandMonsInfo:: @ 8550814 .align 2 gRoute102_LandMons:: @ 855081C - wild_mon POOCHYENA, 3 - wild_mon WURMPLE, 3 - wild_mon POOCHYENA, 4 - wild_mon WURMPLE, 4 - wild_mon LOTAD, 3 - wild_mon LOTAD, 4 - wild_mon ZIGZAGOON, 3 - wild_mon ZIGZAGOON, 3 - wild_mon ZIGZAGOON, 4 - wild_mon RALTS, 4 - wild_mon ZIGZAGOON, 4 - wild_mon SEEDOT, 3 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_WURMPLE, 3 + wild_mon SPECIES_POOCHYENA, 4 + wild_mon SPECIES_WURMPLE, 4 + wild_mon SPECIES_LOTAD, 3 + wild_mon SPECIES_LOTAD, 4 + wild_mon SPECIES_ZIGZAGOON, 3 + wild_mon SPECIES_ZIGZAGOON, 3 + wild_mon SPECIES_ZIGZAGOON, 4 + wild_mon SPECIES_RALTS, 4 + wild_mon SPECIES_ZIGZAGOON, 4 + wild_mon SPECIES_SEEDOT, 3 .align 2 gRoute102_LandMonsInfo:: @ 855084C @@ -40,11 +40,11 @@ gRoute102_LandMonsInfo:: @ 855084C .align 2 gRoute102_WaterMons:: @ 8550854 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon GOLDEEN, 20, 30 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_GOLDEEN, 20, 30 .align 2 gRoute102_WaterMonsInfo:: @ 8550868 @@ -53,16 +53,16 @@ gRoute102_WaterMonsInfo:: @ 8550868 .align 2 gRoute102_FishingMons:: @ 8550870 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon CORPHISH, 10, 30 - wild_mon CORPHISH, 25, 30 - wild_mon CORPHISH, 30, 35 - wild_mon CORPHISH, 20, 25 - wild_mon CORPHISH, 35, 40 - wild_mon CORPHISH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_CORPHISH, 10, 30 + wild_mon SPECIES_CORPHISH, 25, 30 + wild_mon SPECIES_CORPHISH, 30, 35 + wild_mon SPECIES_CORPHISH, 20, 25 + wild_mon SPECIES_CORPHISH, 35, 40 + wild_mon SPECIES_CORPHISH, 40, 45 .align 2 gRoute102_FishingMonsInfo:: @ 8550898 @@ -71,18 +71,18 @@ gRoute102_FishingMonsInfo:: @ 8550898 .align 2 gRoute103_LandMons:: @ 85508A0 - wild_mon POOCHYENA, 2 - wild_mon POOCHYENA, 3 - wild_mon POOCHYENA, 3 - wild_mon POOCHYENA, 4 - wild_mon WINGULL, 2 - wild_mon ZIGZAGOON, 3 - wild_mon ZIGZAGOON, 3 - wild_mon ZIGZAGOON, 4 - wild_mon WINGULL, 3 - wild_mon WINGULL, 3 - wild_mon WINGULL, 2 - wild_mon WINGULL, 4 + wild_mon SPECIES_POOCHYENA, 2 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_POOCHYENA, 3 + wild_mon SPECIES_POOCHYENA, 4 + wild_mon SPECIES_WINGULL, 2 + wild_mon SPECIES_ZIGZAGOON, 3 + wild_mon SPECIES_ZIGZAGOON, 3 + wild_mon SPECIES_ZIGZAGOON, 4 + wild_mon SPECIES_WINGULL, 3 + wild_mon SPECIES_WINGULL, 3 + wild_mon SPECIES_WINGULL, 2 + wild_mon SPECIES_WINGULL, 4 .align 2 gRoute103_LandMonsInfo:: @ 85508D0 @@ -91,11 +91,11 @@ gRoute103_LandMonsInfo:: @ 85508D0 .align 2 gRoute103_WaterMons:: @ 85508D8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute103_WaterMonsInfo:: @ 85508EC @@ -104,16 +104,16 @@ gRoute103_WaterMonsInfo:: @ 85508EC .align 2 gRoute103_FishingMons:: @ 85508F4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute103_FishingMonsInfo:: @ 855091C @@ -122,18 +122,18 @@ gRoute103_FishingMonsInfo:: @ 855091C .align 2 gRoute104_LandMons:: @ 8550924 - wild_mon POOCHYENA, 4 - wild_mon WURMPLE, 4 - wild_mon POOCHYENA, 5 - wild_mon MARILL, 5 - wild_mon MARILL, 4 - wild_mon POOCHYENA, 5 - wild_mon TAILLOW, 4 - wild_mon TAILLOW, 5 - wild_mon WINGULL, 4 - wild_mon WINGULL, 4 - wild_mon WINGULL, 3 - wild_mon WINGULL, 5 + wild_mon SPECIES_POOCHYENA, 4 + wild_mon SPECIES_WURMPLE, 4 + wild_mon SPECIES_POOCHYENA, 5 + wild_mon SPECIES_MARILL, 5 + wild_mon SPECIES_MARILL, 4 + wild_mon SPECIES_POOCHYENA, 5 + wild_mon SPECIES_TAILLOW, 4 + wild_mon SPECIES_TAILLOW, 5 + wild_mon SPECIES_WINGULL, 4 + wild_mon SPECIES_WINGULL, 4 + wild_mon SPECIES_WINGULL, 3 + wild_mon SPECIES_WINGULL, 5 .align 2 gRoute104_LandMonsInfo:: @ 8550954 @@ -142,11 +142,11 @@ gRoute104_LandMonsInfo:: @ 8550954 .align 2 gRoute104_WaterMons:: @ 855095C - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute104_WaterMonsInfo:: @ 8550970 @@ -155,16 +155,16 @@ gRoute104_WaterMonsInfo:: @ 8550970 .align 2 gRoute104_FishingMons:: @ 8550978 - wild_mon MAGIKARP, 5, 10 - wild_mon MAGIKARP, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 25, 30 - wild_mon MAGIKARP, 30, 35 - wild_mon MAGIKARP, 20, 25 - wild_mon MAGIKARP, 35, 40 - wild_mon MAGIKARP, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 25, 30 + wild_mon SPECIES_MAGIKARP, 30, 35 + wild_mon SPECIES_MAGIKARP, 20, 25 + wild_mon SPECIES_MAGIKARP, 35, 40 + wild_mon SPECIES_MAGIKARP, 40, 45 .align 2 gRoute104_FishingMonsInfo:: @ 85509A0 @@ -173,11 +173,11 @@ gRoute104_FishingMonsInfo:: @ 85509A0 .align 2 gRoute105_WaterMons:: @ 85509A8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute105_WaterMonsInfo:: @ 85509BC @@ -186,16 +186,16 @@ gRoute105_WaterMonsInfo:: @ 85509BC .align 2 gRoute105_FishingMons:: @ 85509C4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute105_FishingMonsInfo:: @ 85509EC @@ -204,18 +204,18 @@ gRoute105_FishingMonsInfo:: @ 85509EC .align 2 gRoute110_LandMons:: @ 85509F4 - wild_mon POOCHYENA, 12 - wild_mon ELECTRIKE, 12 - wild_mon GULPIN, 12 - wild_mon ELECTRIKE, 13 - wild_mon MINUN, 13 - wild_mon ODDISH, 13 - wild_mon MINUN, 13 - wild_mon GULPIN, 13 - wild_mon WINGULL, 12 - wild_mon WINGULL, 12 - wild_mon PLUSLE, 12 - wild_mon PLUSLE, 13 + wild_mon SPECIES_POOCHYENA, 12 + wild_mon SPECIES_ELECTRIKE, 12 + wild_mon SPECIES_GULPIN, 12 + wild_mon SPECIES_ELECTRIKE, 13 + wild_mon SPECIES_MINUN, 13 + wild_mon SPECIES_ODDISH, 13 + wild_mon SPECIES_MINUN, 13 + wild_mon SPECIES_GULPIN, 13 + wild_mon SPECIES_WINGULL, 12 + wild_mon SPECIES_WINGULL, 12 + wild_mon SPECIES_PLUSLE, 12 + wild_mon SPECIES_PLUSLE, 13 .align 2 gRoute110_LandMonsInfo:: @ 8550A24 @@ -224,11 +224,11 @@ gRoute110_LandMonsInfo:: @ 8550A24 .align 2 gRoute110_WaterMons:: @ 8550A2C - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute110_WaterMonsInfo:: @ 8550A40 @@ -237,16 +237,16 @@ gRoute110_WaterMonsInfo:: @ 8550A40 .align 2 gRoute110_FishingMons:: @ 8550A48 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute110_FishingMonsInfo:: @ 8550A70 @@ -255,18 +255,18 @@ gRoute110_FishingMonsInfo:: @ 8550A70 .align 2 gRoute111_LandMons:: @ 8550A78 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 21 - wild_mon TRAPINCH, 21 - wild_mon BALTOY, 19 - wild_mon BALTOY, 21 - wild_mon SANDSHREW, 19 - wild_mon TRAPINCH, 19 - wild_mon BALTOY, 20 - wild_mon CACNEA, 20 - wild_mon CACNEA, 22 - wild_mon CACNEA, 22 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 21 + wild_mon SPECIES_TRAPINCH, 21 + wild_mon SPECIES_BALTOY, 19 + wild_mon SPECIES_BALTOY, 21 + wild_mon SPECIES_SANDSHREW, 19 + wild_mon SPECIES_TRAPINCH, 19 + wild_mon SPECIES_BALTOY, 20 + wild_mon SPECIES_CACNEA, 20 + wild_mon SPECIES_CACNEA, 22 + wild_mon SPECIES_CACNEA, 22 .align 2 gRoute111_LandMonsInfo:: @ 8550AA8 @@ -275,11 +275,11 @@ gRoute111_LandMonsInfo:: @ 8550AA8 .align 2 gRoute111_WaterMons:: @ 8550AB0 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon GOLDEEN, 20, 30 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_GOLDEEN, 20, 30 .align 2 gRoute111_WaterMonsInfo:: @ 8550AC4 @@ -288,11 +288,11 @@ gRoute111_WaterMonsInfo:: @ 8550AC4 .align 2 gRoute111_RockSmashMons:: @ 8550ACC - wild_mon GEODUDE, 10, 15 - wild_mon GEODUDE, 5, 10 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 10, 15 + wild_mon SPECIES_GEODUDE, 5, 10 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 15, 20 .align 2 gRoute111_RockSmashMonsInfo:: @ 8550AE0 @@ -301,16 +301,16 @@ gRoute111_RockSmashMonsInfo:: @ 8550AE0 .align 2 gRoute111_FishingMons:: @ 8550AE8 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon BARBOACH, 20, 25 - wild_mon BARBOACH, 35, 40 - wild_mon BARBOACH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_BARBOACH, 20, 25 + wild_mon SPECIES_BARBOACH, 35, 40 + wild_mon SPECIES_BARBOACH, 40, 45 .align 2 gRoute111_FishingMonsInfo:: @ 8550B10 @@ -319,18 +319,18 @@ gRoute111_FishingMonsInfo:: @ 8550B10 .align 2 gRoute112_LandMons:: @ 8550B18 - wild_mon NUMEL, 15 - wild_mon NUMEL, 15 - wild_mon MARILL, 15 - wild_mon NUMEL, 14 - wild_mon NUMEL, 14 - wild_mon MARILL, 14 - wild_mon NUMEL, 16 - wild_mon MARILL, 16 - wild_mon NUMEL, 16 - wild_mon NUMEL, 16 - wild_mon NUMEL, 16 - wild_mon NUMEL, 16 + wild_mon SPECIES_NUMEL, 15 + wild_mon SPECIES_NUMEL, 15 + wild_mon SPECIES_MARILL, 15 + wild_mon SPECIES_NUMEL, 14 + wild_mon SPECIES_NUMEL, 14 + wild_mon SPECIES_MARILL, 14 + wild_mon SPECIES_NUMEL, 16 + wild_mon SPECIES_MARILL, 16 + wild_mon SPECIES_NUMEL, 16 + wild_mon SPECIES_NUMEL, 16 + wild_mon SPECIES_NUMEL, 16 + wild_mon SPECIES_NUMEL, 16 .align 2 gRoute112_LandMonsInfo:: @ 8550B48 @@ -339,18 +339,18 @@ gRoute112_LandMonsInfo:: @ 8550B48 .align 2 gRoute113_LandMons:: @ 8550B50 - wild_mon SPINDA, 15 - wild_mon SPINDA, 15 - wild_mon SLUGMA, 15 - wild_mon SPINDA, 14 - wild_mon SPINDA, 14 - wild_mon SLUGMA, 14 - wild_mon SPINDA, 16 - wild_mon SLUGMA, 16 - wild_mon SPINDA, 16 - wild_mon SKARMORY, 16 - wild_mon SPINDA, 16 - wild_mon SKARMORY, 16 + wild_mon SPECIES_SPINDA, 15 + wild_mon SPECIES_SPINDA, 15 + wild_mon SPECIES_SLUGMA, 15 + wild_mon SPECIES_SPINDA, 14 + wild_mon SPECIES_SPINDA, 14 + wild_mon SPECIES_SLUGMA, 14 + wild_mon SPECIES_SPINDA, 16 + wild_mon SPECIES_SLUGMA, 16 + wild_mon SPECIES_SPINDA, 16 + wild_mon SPECIES_SKARMORY, 16 + wild_mon SPECIES_SPINDA, 16 + wild_mon SPECIES_SKARMORY, 16 .align 2 gRoute113_LandMonsInfo:: @ 8550B80 @@ -359,18 +359,18 @@ gRoute113_LandMonsInfo:: @ 8550B80 .align 2 gRoute114_LandMons:: @ 8550B88 - wild_mon SWABLU, 16 - wild_mon LOTAD, 16 - wild_mon SWABLU, 17 - wild_mon SWABLU, 15 - wild_mon LOTAD, 15 - wild_mon LOMBRE, 16 - wild_mon LOMBRE, 16 - wild_mon LOMBRE, 18 - wild_mon SEVIPER, 17 - wild_mon SEVIPER, 15 - wild_mon SEVIPER, 17 - wild_mon NUZLEAF, 15 + wild_mon SPECIES_SWABLU, 16 + wild_mon SPECIES_LOTAD, 16 + wild_mon SPECIES_SWABLU, 17 + wild_mon SPECIES_SWABLU, 15 + wild_mon SPECIES_LOTAD, 15 + wild_mon SPECIES_LOMBRE, 16 + wild_mon SPECIES_LOMBRE, 16 + wild_mon SPECIES_LOMBRE, 18 + wild_mon SPECIES_SEVIPER, 17 + wild_mon SPECIES_SEVIPER, 15 + wild_mon SPECIES_SEVIPER, 17 + wild_mon SPECIES_NUZLEAF, 15 .align 2 gRoute114_LandMonsInfo:: @ 8550BB8 @@ -379,11 +379,11 @@ gRoute114_LandMonsInfo:: @ 8550BB8 .align 2 gRoute114_WaterMons:: @ 8550BC0 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon GOLDEEN, 20, 30 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_GOLDEEN, 20, 30 .align 2 gRoute114_WaterMonsInfo:: @ 8550BD4 @@ -392,11 +392,11 @@ gRoute114_WaterMonsInfo:: @ 8550BD4 .align 2 gRoute114_RockSmashMons:: @ 8550BDC - wild_mon GEODUDE, 10, 15 - wild_mon GEODUDE, 5, 10 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 10, 15 + wild_mon SPECIES_GEODUDE, 5, 10 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 15, 20 .align 2 gRoute114_RockSmashMonsInfo:: @ 8550BF0 @@ -405,16 +405,16 @@ gRoute114_RockSmashMonsInfo:: @ 8550BF0 .align 2 gRoute114_FishingMons:: @ 8550BF8 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon BARBOACH, 20, 25 - wild_mon BARBOACH, 35, 40 - wild_mon BARBOACH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_BARBOACH, 20, 25 + wild_mon SPECIES_BARBOACH, 35, 40 + wild_mon SPECIES_BARBOACH, 40, 45 .align 2 gRoute114_FishingMonsInfo:: @ 8550C20 @@ -423,18 +423,18 @@ gRoute114_FishingMonsInfo:: @ 8550C20 .align 2 gRoute116_LandMons:: @ 8550C28 - wild_mon POOCHYENA, 6 - wild_mon WHISMUR, 6 - wild_mon NINCADA, 6 - wild_mon ABRA, 7 - wild_mon NINCADA, 7 - wild_mon TAILLOW, 6 - wild_mon TAILLOW, 7 - wild_mon TAILLOW, 8 - wild_mon POOCHYENA, 7 - wild_mon POOCHYENA, 8 - wild_mon SKITTY, 7 - wild_mon SKITTY, 8 + wild_mon SPECIES_POOCHYENA, 6 + wild_mon SPECIES_WHISMUR, 6 + wild_mon SPECIES_NINCADA, 6 + wild_mon SPECIES_ABRA, 7 + wild_mon SPECIES_NINCADA, 7 + wild_mon SPECIES_TAILLOW, 6 + wild_mon SPECIES_TAILLOW, 7 + wild_mon SPECIES_TAILLOW, 8 + wild_mon SPECIES_POOCHYENA, 7 + wild_mon SPECIES_POOCHYENA, 8 + wild_mon SPECIES_SKITTY, 7 + wild_mon SPECIES_SKITTY, 8 .align 2 gRoute116_LandMonsInfo:: @ 8550C58 @@ -443,18 +443,18 @@ gRoute116_LandMonsInfo:: @ 8550C58 .align 2 gRoute117_LandMons:: @ 8550C60 - wild_mon POOCHYENA, 13 - wild_mon ODDISH, 13 - wild_mon POOCHYENA, 14 - wild_mon ODDISH, 14 - wild_mon MARILL, 13 - wild_mon ODDISH, 13 - wild_mon ILLUMISE, 13 - wild_mon ILLUMISE, 13 - wild_mon ILLUMISE, 14 - wild_mon ILLUMISE, 14 - wild_mon VOLBEAT, 13 - wild_mon SEEDOT, 13 + wild_mon SPECIES_POOCHYENA, 13 + wild_mon SPECIES_ODDISH, 13 + wild_mon SPECIES_POOCHYENA, 14 + wild_mon SPECIES_ODDISH, 14 + wild_mon SPECIES_MARILL, 13 + wild_mon SPECIES_ODDISH, 13 + wild_mon SPECIES_ILLUMISE, 13 + wild_mon SPECIES_ILLUMISE, 13 + wild_mon SPECIES_ILLUMISE, 14 + wild_mon SPECIES_ILLUMISE, 14 + wild_mon SPECIES_VOLBEAT, 13 + wild_mon SPECIES_SEEDOT, 13 .align 2 gRoute117_LandMonsInfo:: @ 8550C90 @@ -463,11 +463,11 @@ gRoute117_LandMonsInfo:: @ 8550C90 .align 2 gRoute117_WaterMons:: @ 8550C98 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon GOLDEEN, 20, 30 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_GOLDEEN, 20, 30 .align 2 gRoute117_WaterMonsInfo:: @ 8550CAC @@ -476,16 +476,16 @@ gRoute117_WaterMonsInfo:: @ 8550CAC .align 2 gRoute117_FishingMons:: @ 8550CB4 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon CORPHISH, 10, 30 - wild_mon CORPHISH, 25, 30 - wild_mon CORPHISH, 30, 35 - wild_mon CORPHISH, 20, 25 - wild_mon CORPHISH, 35, 40 - wild_mon CORPHISH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_CORPHISH, 10, 30 + wild_mon SPECIES_CORPHISH, 25, 30 + wild_mon SPECIES_CORPHISH, 30, 35 + wild_mon SPECIES_CORPHISH, 20, 25 + wild_mon SPECIES_CORPHISH, 35, 40 + wild_mon SPECIES_CORPHISH, 40, 45 .align 2 gRoute117_FishingMonsInfo:: @ 8550CDC @@ -494,18 +494,18 @@ gRoute117_FishingMonsInfo:: @ 8550CDC .align 2 gRoute118_LandMons:: @ 8550CE4 - wild_mon ZIGZAGOON, 24 - wild_mon ELECTRIKE, 24 - wild_mon ZIGZAGOON, 26 - wild_mon ELECTRIKE, 26 - wild_mon LINOONE, 26 - wild_mon MANECTRIC, 26 - wild_mon WINGULL, 25 - wild_mon WINGULL, 25 - wild_mon WINGULL, 26 - wild_mon WINGULL, 26 - wild_mon WINGULL, 27 - wild_mon KECLEON, 25 + wild_mon SPECIES_ZIGZAGOON, 24 + wild_mon SPECIES_ELECTRIKE, 24 + wild_mon SPECIES_ZIGZAGOON, 26 + wild_mon SPECIES_ELECTRIKE, 26 + wild_mon SPECIES_LINOONE, 26 + wild_mon SPECIES_MANECTRIC, 26 + wild_mon SPECIES_WINGULL, 25 + wild_mon SPECIES_WINGULL, 25 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 27 + wild_mon SPECIES_KECLEON, 25 .align 2 gRoute118_LandMonsInfo:: @ 8550D14 @@ -514,11 +514,11 @@ gRoute118_LandMonsInfo:: @ 8550D14 .align 2 gRoute118_WaterMons:: @ 8550D1C - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute118_WaterMonsInfo:: @ 8550D30 @@ -527,16 +527,16 @@ gRoute118_WaterMonsInfo:: @ 8550D30 .align 2 gRoute118_FishingMons:: @ 8550D38 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon CARVANHA, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon CARVANHA, 30, 35 - wild_mon CARVANHA, 20, 25 - wild_mon CARVANHA, 35, 40 - wild_mon CARVANHA, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_CARVANHA, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_CARVANHA, 30, 35 + wild_mon SPECIES_CARVANHA, 20, 25 + wild_mon SPECIES_CARVANHA, 35, 40 + wild_mon SPECIES_CARVANHA, 40, 45 .align 2 gRoute118_FishingMonsInfo:: @ 8550D60 @@ -545,11 +545,11 @@ gRoute118_FishingMonsInfo:: @ 8550D60 .align 2 gRoute124_WaterMons:: @ 8550D68 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute124_WaterMonsInfo:: @ 8550D7C @@ -558,16 +558,16 @@ gRoute124_WaterMonsInfo:: @ 8550D7C .align 2 gRoute124_FishingMons:: @ 8550D84 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute124_FishingMonsInfo:: @ 8550DAC @@ -576,18 +576,18 @@ gRoute124_FishingMonsInfo:: @ 8550DAC .align 2 gPetalburgWoods_LandMons:: @ 8550DB4 - wild_mon POOCHYENA, 5 - wild_mon WURMPLE, 5 - wild_mon SHROOMISH, 5 - wild_mon POOCHYENA, 6 - wild_mon SILCOON, 5 - wild_mon CASCOON, 5 - wild_mon WURMPLE, 6 - wild_mon SHROOMISH, 6 - wild_mon TAILLOW, 5 - wild_mon SLAKOTH, 5 - wild_mon TAILLOW, 6 - wild_mon SLAKOTH, 6 + wild_mon SPECIES_POOCHYENA, 5 + wild_mon SPECIES_WURMPLE, 5 + wild_mon SPECIES_SHROOMISH, 5 + wild_mon SPECIES_POOCHYENA, 6 + wild_mon SPECIES_SILCOON, 5 + wild_mon SPECIES_CASCOON, 5 + wild_mon SPECIES_WURMPLE, 6 + wild_mon SPECIES_SHROOMISH, 6 + wild_mon SPECIES_TAILLOW, 5 + wild_mon SPECIES_SLAKOTH, 5 + wild_mon SPECIES_TAILLOW, 6 + wild_mon SPECIES_SLAKOTH, 6 .align 2 gPetalburgWoods_LandMonsInfo:: @ 8550DE4 @@ -596,18 +596,18 @@ gPetalburgWoods_LandMonsInfo:: @ 8550DE4 .align 2 gRusturfTunnel_LandMons:: @ 8550DEC - wild_mon WHISMUR, 6 - wild_mon WHISMUR, 7 - wild_mon WHISMUR, 6 - wild_mon WHISMUR, 6 - wild_mon WHISMUR, 7 - wild_mon WHISMUR, 7 - wild_mon WHISMUR, 5 - wild_mon WHISMUR, 8 - wild_mon WHISMUR, 5 - wild_mon WHISMUR, 8 - wild_mon WHISMUR, 5 - wild_mon WHISMUR, 8 + wild_mon SPECIES_WHISMUR, 6 + wild_mon SPECIES_WHISMUR, 7 + wild_mon SPECIES_WHISMUR, 6 + wild_mon SPECIES_WHISMUR, 6 + wild_mon SPECIES_WHISMUR, 7 + wild_mon SPECIES_WHISMUR, 7 + wild_mon SPECIES_WHISMUR, 5 + wild_mon SPECIES_WHISMUR, 8 + wild_mon SPECIES_WHISMUR, 5 + wild_mon SPECIES_WHISMUR, 8 + wild_mon SPECIES_WHISMUR, 5 + wild_mon SPECIES_WHISMUR, 8 .align 2 gRusturfTunnel_LandMonsInfo:: @ 8550E1C @@ -616,18 +616,18 @@ gRusturfTunnel_LandMonsInfo:: @ 8550E1C .align 2 gGraniteCave_1F_LandMons:: @ 8550E24 - wild_mon ZUBAT, 7 - wild_mon MAKUHITA, 8 - wild_mon MAKUHITA, 7 - wild_mon ZUBAT, 8 - wild_mon MAKUHITA, 9 - wild_mon ABRA, 8 - wild_mon MAKUHITA, 10 - wild_mon MAKUHITA, 6 - wild_mon GEODUDE, 7 - wild_mon GEODUDE, 8 - wild_mon GEODUDE, 6 - wild_mon GEODUDE, 9 + wild_mon SPECIES_ZUBAT, 7 + wild_mon SPECIES_MAKUHITA, 8 + wild_mon SPECIES_MAKUHITA, 7 + wild_mon SPECIES_ZUBAT, 8 + wild_mon SPECIES_MAKUHITA, 9 + wild_mon SPECIES_ABRA, 8 + wild_mon SPECIES_MAKUHITA, 10 + wild_mon SPECIES_MAKUHITA, 6 + wild_mon SPECIES_GEODUDE, 7 + wild_mon SPECIES_GEODUDE, 8 + wild_mon SPECIES_GEODUDE, 6 + wild_mon SPECIES_GEODUDE, 9 .align 2 gGraniteCave_1F_LandMonsInfo:: @ 8550E54 @@ -636,18 +636,18 @@ gGraniteCave_1F_LandMonsInfo:: @ 8550E54 .align 2 gGraniteCave_B1F_LandMons:: @ 8550E5C - wild_mon ZUBAT, 9 - wild_mon ARON, 10 - wild_mon ARON, 9 - wild_mon ARON, 11 - wild_mon ZUBAT, 10 - wild_mon ABRA, 9 - wild_mon MAKUHITA, 10 - wild_mon MAKUHITA, 11 - wild_mon SABLEYE, 10 - wild_mon SABLEYE, 10 - wild_mon SABLEYE, 9 - wild_mon SABLEYE, 11 + wild_mon SPECIES_ZUBAT, 9 + wild_mon SPECIES_ARON, 10 + wild_mon SPECIES_ARON, 9 + wild_mon SPECIES_ARON, 11 + wild_mon SPECIES_ZUBAT, 10 + wild_mon SPECIES_ABRA, 9 + wild_mon SPECIES_MAKUHITA, 10 + wild_mon SPECIES_MAKUHITA, 11 + wild_mon SPECIES_SABLEYE, 10 + wild_mon SPECIES_SABLEYE, 10 + wild_mon SPECIES_SABLEYE, 9 + wild_mon SPECIES_SABLEYE, 11 .align 2 gGraniteCave_B1F_LandMonsInfo:: @ 8550E8C @@ -656,18 +656,18 @@ gGraniteCave_B1F_LandMonsInfo:: @ 8550E8C .align 2 gMtPyre_1F_LandMons:: @ 8550E94 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 .align 2 gMtPyre_1F_LandMonsInfo:: @ 8550EC4 @@ -676,18 +676,18 @@ gMtPyre_1F_LandMonsInfo:: @ 8550EC4 .align 2 gVictoryRoad_1F_LandMons:: @ 8550ECC - wild_mon GOLBAT, 40 - wild_mon HARIYAMA, 40 - wild_mon LAIRON, 40 - wild_mon LOUDRED, 40 - wild_mon ZUBAT, 36 - wild_mon MAKUHITA, 36 - wild_mon GOLBAT, 38 - wild_mon HARIYAMA, 38 - wild_mon ARON, 36 - wild_mon WHISMUR, 36 - wild_mon ARON, 36 - wild_mon WHISMUR, 36 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_HARIYAMA, 40 + wild_mon SPECIES_LAIRON, 40 + wild_mon SPECIES_LOUDRED, 40 + wild_mon SPECIES_ZUBAT, 36 + wild_mon SPECIES_MAKUHITA, 36 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_HARIYAMA, 38 + wild_mon SPECIES_ARON, 36 + wild_mon SPECIES_WHISMUR, 36 + wild_mon SPECIES_ARON, 36 + wild_mon SPECIES_WHISMUR, 36 .align 2 gVictoryRoad_1F_LandMonsInfo:: @ 8550EFC @@ -696,18 +696,18 @@ gVictoryRoad_1F_LandMonsInfo:: @ 8550EFC .align 2 gSafariZone_South_LandMons:: @ 8550F04 - wild_mon ODDISH, 25 - wild_mon ODDISH, 27 - wild_mon GIRAFARIG, 25 - wild_mon GIRAFARIG, 27 - wild_mon NATU, 25 - wild_mon DODUO, 25 - wild_mon GLOOM, 25 - wild_mon WOBBUFFET, 27 - wild_mon PIKACHU, 25 - wild_mon WOBBUFFET, 27 - wild_mon PIKACHU, 27 - wild_mon WOBBUFFET, 29 + wild_mon SPECIES_ODDISH, 25 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_GIRAFARIG, 25 + wild_mon SPECIES_GIRAFARIG, 27 + wild_mon SPECIES_NATU, 25 + wild_mon SPECIES_DODUO, 25 + wild_mon SPECIES_GLOOM, 25 + wild_mon SPECIES_WOBBUFFET, 27 + wild_mon SPECIES_PIKACHU, 25 + wild_mon SPECIES_WOBBUFFET, 27 + wild_mon SPECIES_PIKACHU, 27 + wild_mon SPECIES_WOBBUFFET, 29 .align 2 gSafariZone_South_LandMonsInfo:: @ 8550F34 @@ -716,11 +716,11 @@ gSafariZone_South_LandMonsInfo:: @ 8550F34 .align 2 gUnderwater2_WaterMons:: @ 8550F3C - wild_mon CLAMPERL, 20, 30 - wild_mon CHINCHOU, 20, 30 - wild_mon CLAMPERL, 30, 35 - wild_mon RELICANTH, 30, 35 - wild_mon RELICANTH, 30, 35 + wild_mon SPECIES_CLAMPERL, 20, 30 + wild_mon SPECIES_CHINCHOU, 20, 30 + wild_mon SPECIES_CLAMPERL, 30, 35 + wild_mon SPECIES_RELICANTH, 30, 35 + wild_mon SPECIES_RELICANTH, 30, 35 .align 2 gUnderwater2_WaterMonsInfo:: @ 8550F50 @@ -729,11 +729,11 @@ gUnderwater2_WaterMonsInfo:: @ 8550F50 .align 2 gAbandonedShip_Rooms_B1F_WaterMons:: @ 8550F58 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACRUEL, 30, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACRUEL, 30, 35 .align 2 gAbandonedShip_Rooms_B1F_WaterMonsInfo:: @ 8550F6C @@ -742,16 +742,16 @@ gAbandonedShip_Rooms_B1F_WaterMonsInfo:: @ 8550F6C .align 2 gAbandonedShip_Rooms_B1F_FishingMons:: @ 8550F74 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon TENTACOOL, 25, 30 - wild_mon TENTACOOL, 30, 35 - wild_mon TENTACRUEL, 30, 35 - wild_mon TENTACRUEL, 25, 30 - wild_mon TENTACRUEL, 20, 25 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_TENTACOOL, 25, 30 + wild_mon SPECIES_TENTACOOL, 30, 35 + wild_mon SPECIES_TENTACRUEL, 30, 35 + wild_mon SPECIES_TENTACRUEL, 25, 30 + wild_mon SPECIES_TENTACRUEL, 20, 25 .align 2 gAbandonedShip_Rooms_B1F_FishingMonsInfo:: @ 8550F9C @@ -760,18 +760,18 @@ gAbandonedShip_Rooms_B1F_FishingMonsInfo:: @ 8550F9C .align 2 gGraniteCave_B2F_LandMons:: @ 8550FA4 - wild_mon ZUBAT, 10 - wild_mon ARON, 11 - wild_mon ARON, 10 - wild_mon ZUBAT, 11 - wild_mon ARON, 12 - wild_mon ABRA, 10 - wild_mon SABLEYE, 10 - wild_mon SABLEYE, 11 - wild_mon SABLEYE, 12 - wild_mon SABLEYE, 10 - wild_mon SABLEYE, 12 - wild_mon SABLEYE, 10 + wild_mon SPECIES_ZUBAT, 10 + wild_mon SPECIES_ARON, 11 + wild_mon SPECIES_ARON, 10 + wild_mon SPECIES_ZUBAT, 11 + wild_mon SPECIES_ARON, 12 + wild_mon SPECIES_ABRA, 10 + wild_mon SPECIES_SABLEYE, 10 + wild_mon SPECIES_SABLEYE, 11 + wild_mon SPECIES_SABLEYE, 12 + wild_mon SPECIES_SABLEYE, 10 + wild_mon SPECIES_SABLEYE, 12 + wild_mon SPECIES_SABLEYE, 10 .align 2 gGraniteCave_B2F_LandMonsInfo:: @ 8550FD4 @@ -780,11 +780,11 @@ gGraniteCave_B2F_LandMonsInfo:: @ 8550FD4 .align 2 gGraniteCave_B2F_RockSmashMons:: @ 8550FDC - wild_mon GEODUDE, 10, 15 - wild_mon NOSEPASS, 10, 20 - wild_mon GEODUDE, 5, 10 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 10, 15 + wild_mon SPECIES_NOSEPASS, 10, 20 + wild_mon SPECIES_GEODUDE, 5, 10 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 15, 20 .align 2 gGraniteCave_B2F_RockSmashMonsInfo:: @ 8550FF0 @@ -793,18 +793,18 @@ gGraniteCave_B2F_RockSmashMonsInfo:: @ 8550FF0 .align 2 gFieryPath_LandMons:: @ 8550FF8 - wild_mon NUMEL, 15 - wild_mon KOFFING, 15 - wild_mon NUMEL, 16 - wild_mon MACHOP, 15 - wild_mon TORKOAL, 15 - wild_mon SLUGMA, 15 - wild_mon KOFFING, 16 - wild_mon MACHOP, 16 - wild_mon TORKOAL, 14 - wild_mon TORKOAL, 16 - wild_mon GRIMER, 14 - wild_mon GRIMER, 14 + wild_mon SPECIES_NUMEL, 15 + wild_mon SPECIES_KOFFING, 15 + wild_mon SPECIES_NUMEL, 16 + wild_mon SPECIES_MACHOP, 15 + wild_mon SPECIES_TORKOAL, 15 + wild_mon SPECIES_SLUGMA, 15 + wild_mon SPECIES_KOFFING, 16 + wild_mon SPECIES_MACHOP, 16 + wild_mon SPECIES_TORKOAL, 14 + wild_mon SPECIES_TORKOAL, 16 + wild_mon SPECIES_GRIMER, 14 + wild_mon SPECIES_GRIMER, 14 .align 2 gFieryPath_LandMonsInfo:: @ 8551028 @@ -813,18 +813,18 @@ gFieryPath_LandMonsInfo:: @ 8551028 .align 2 gMeteorFalls_B1F_2R_LandMons:: @ 8551030 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 35 - wild_mon BAGON, 30 - wild_mon SOLROCK, 35 - wild_mon BAGON, 35 - wild_mon SOLROCK, 37 - wild_mon BAGON, 25 - wild_mon SOLROCK, 39 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_BAGON, 30 + wild_mon SPECIES_SOLROCK, 35 + wild_mon SPECIES_BAGON, 35 + wild_mon SPECIES_SOLROCK, 37 + wild_mon SPECIES_BAGON, 25 + wild_mon SPECIES_SOLROCK, 39 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 .align 2 gMeteorFalls_B1F_2R_LandMonsInfo:: @ 8551060 @@ -833,11 +833,11 @@ gMeteorFalls_B1F_2R_LandMonsInfo:: @ 8551060 .align 2 gMeteorFalls_B1F_2R_WaterMons:: @ 8551068 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon SOLROCK, 25, 35 - wild_mon SOLROCK, 15, 25 - wild_mon SOLROCK, 5, 15 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_SOLROCK, 25, 35 + wild_mon SPECIES_SOLROCK, 15, 25 + wild_mon SPECIES_SOLROCK, 5, 15 .align 2 gMeteorFalls_B1F_2R_WaterMonsInfo:: @ 855107C @@ -846,16 +846,16 @@ gMeteorFalls_B1F_2R_WaterMonsInfo:: @ 855107C .align 2 gMeteorFalls_B1F_2R_FishingMons:: @ 8551084 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon WHISCASH, 30, 35 - wild_mon WHISCASH, 35, 40 - wild_mon WHISCASH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_WHISCASH, 30, 35 + wild_mon SPECIES_WHISCASH, 35, 40 + wild_mon SPECIES_WHISCASH, 40, 45 .align 2 gMeteorFalls_B1F_2R_FishingMonsInfo:: @ 85510AC @@ -864,18 +864,18 @@ gMeteorFalls_B1F_2R_FishingMonsInfo:: @ 85510AC .align 2 gJaggedPass_LandMons:: @ 85510B4 - wild_mon NUMEL, 21 - wild_mon NUMEL, 21 - wild_mon MACHOP, 21 - wild_mon NUMEL, 20 - wild_mon SPOINK, 20 - wild_mon MACHOP, 20 - wild_mon SPOINK, 21 - wild_mon MACHOP, 22 - wild_mon NUMEL, 22 - wild_mon SPOINK, 22 - wild_mon NUMEL, 22 - wild_mon SPOINK, 22 + wild_mon SPECIES_NUMEL, 21 + wild_mon SPECIES_NUMEL, 21 + wild_mon SPECIES_MACHOP, 21 + wild_mon SPECIES_NUMEL, 20 + wild_mon SPECIES_SPOINK, 20 + wild_mon SPECIES_MACHOP, 20 + wild_mon SPECIES_SPOINK, 21 + wild_mon SPECIES_MACHOP, 22 + wild_mon SPECIES_NUMEL, 22 + wild_mon SPECIES_SPOINK, 22 + wild_mon SPECIES_NUMEL, 22 + wild_mon SPECIES_SPOINK, 22 .align 2 gJaggedPass_LandMonsInfo:: @ 85510E4 @@ -884,11 +884,11 @@ gJaggedPass_LandMonsInfo:: @ 85510E4 .align 2 gRoute106_WaterMons:: @ 85510EC - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute106_WaterMonsInfo:: @ 8551100 @@ -897,16 +897,16 @@ gRoute106_WaterMonsInfo:: @ 8551100 .align 2 gRoute106_FishingMons:: @ 8551108 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute106_FishingMonsInfo:: @ 8551130 @@ -915,11 +915,11 @@ gRoute106_FishingMonsInfo:: @ 8551130 .align 2 gRoute107_WaterMons:: @ 8551138 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute107_WaterMonsInfo:: @ 855114C @@ -928,16 +928,16 @@ gRoute107_WaterMonsInfo:: @ 855114C .align 2 gRoute107_FishingMons:: @ 8551154 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute107_FishingMonsInfo:: @ 855117C @@ -946,11 +946,11 @@ gRoute107_FishingMonsInfo:: @ 855117C .align 2 gRoute108_WaterMons:: @ 8551184 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute108_WaterMonsInfo:: @ 8551198 @@ -959,16 +959,16 @@ gRoute108_WaterMonsInfo:: @ 8551198 .align 2 gRoute108_FishingMons:: @ 85511A0 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute108_FishingMonsInfo:: @ 85511C8 @@ -977,11 +977,11 @@ gRoute108_FishingMonsInfo:: @ 85511C8 .align 2 gRoute109_WaterMons:: @ 85511D0 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute109_WaterMonsInfo:: @ 85511E4 @@ -990,16 +990,16 @@ gRoute109_WaterMonsInfo:: @ 85511E4 .align 2 gRoute109_FishingMons:: @ 85511EC - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute109_FishingMonsInfo:: @ 8551214 @@ -1008,18 +1008,18 @@ gRoute109_FishingMonsInfo:: @ 8551214 .align 2 gRoute115_LandMons:: @ 855121C - wild_mon SWABLU, 23 - wild_mon TAILLOW, 23 - wild_mon SWABLU, 25 - wild_mon TAILLOW, 24 - wild_mon TAILLOW, 25 - wild_mon SWELLOW, 25 - wild_mon JIGGLYPUFF, 24 - wild_mon JIGGLYPUFF, 25 - wild_mon WINGULL, 24 - wild_mon WINGULL, 24 - wild_mon WINGULL, 26 - wild_mon WINGULL, 25 + wild_mon SPECIES_SWABLU, 23 + wild_mon SPECIES_TAILLOW, 23 + wild_mon SPECIES_SWABLU, 25 + wild_mon SPECIES_TAILLOW, 24 + wild_mon SPECIES_TAILLOW, 25 + wild_mon SPECIES_SWELLOW, 25 + wild_mon SPECIES_JIGGLYPUFF, 24 + wild_mon SPECIES_JIGGLYPUFF, 25 + wild_mon SPECIES_WINGULL, 24 + wild_mon SPECIES_WINGULL, 24 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 25 .align 2 gRoute115_LandMonsInfo:: @ 855124C @@ -1028,11 +1028,11 @@ gRoute115_LandMonsInfo:: @ 855124C .align 2 gRoute115_WaterMons:: @ 8551254 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute115_WaterMonsInfo:: @ 8551268 @@ -1041,16 +1041,16 @@ gRoute115_WaterMonsInfo:: @ 8551268 .align 2 gRoute115_FishingMons:: @ 8551270 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute115_FishingMonsInfo:: @ 8551298 @@ -1059,18 +1059,18 @@ gRoute115_FishingMonsInfo:: @ 8551298 .align 2 gNewMauville_Inside_LandMons:: @ 85512A0 - wild_mon VOLTORB, 24 - wild_mon MAGNEMITE, 24 - wild_mon VOLTORB, 25 - wild_mon MAGNEMITE, 25 - wild_mon VOLTORB, 23 - wild_mon MAGNEMITE, 23 - wild_mon VOLTORB, 26 - wild_mon MAGNEMITE, 26 - wild_mon VOLTORB, 22 - wild_mon MAGNEMITE, 22 - wild_mon ELECTRODE, 26 - wild_mon MAGNETON, 26 + wild_mon SPECIES_VOLTORB, 24 + wild_mon SPECIES_MAGNEMITE, 24 + wild_mon SPECIES_VOLTORB, 25 + wild_mon SPECIES_MAGNEMITE, 25 + wild_mon SPECIES_VOLTORB, 23 + wild_mon SPECIES_MAGNEMITE, 23 + wild_mon SPECIES_VOLTORB, 26 + wild_mon SPECIES_MAGNEMITE, 26 + wild_mon SPECIES_VOLTORB, 22 + wild_mon SPECIES_MAGNEMITE, 22 + wild_mon SPECIES_ELECTRODE, 26 + wild_mon SPECIES_MAGNETON, 26 .align 2 gNewMauville_Inside_LandMonsInfo:: @ 85512D0 @@ -1079,18 +1079,18 @@ gNewMauville_Inside_LandMonsInfo:: @ 85512D0 .align 2 gRoute119_LandMons:: @ 85512D8 - wild_mon ZIGZAGOON, 25 - wild_mon LINOONE, 25 - wild_mon ZIGZAGOON, 27 - wild_mon ODDISH, 25 - wild_mon LINOONE, 27 - wild_mon ODDISH, 26 - wild_mon ODDISH, 27 - wild_mon ODDISH, 24 - wild_mon TROPIUS, 25 - wild_mon TROPIUS, 26 - wild_mon TROPIUS, 27 - wild_mon KECLEON, 25 + wild_mon SPECIES_ZIGZAGOON, 25 + wild_mon SPECIES_LINOONE, 25 + wild_mon SPECIES_ZIGZAGOON, 27 + wild_mon SPECIES_ODDISH, 25 + wild_mon SPECIES_LINOONE, 27 + wild_mon SPECIES_ODDISH, 26 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_ODDISH, 24 + wild_mon SPECIES_TROPIUS, 25 + wild_mon SPECIES_TROPIUS, 26 + wild_mon SPECIES_TROPIUS, 27 + wild_mon SPECIES_KECLEON, 25 .align 2 gRoute119_LandMonsInfo:: @ 8551308 @@ -1099,11 +1099,11 @@ gRoute119_LandMonsInfo:: @ 8551308 .align 2 gRoute119_WaterMons:: @ 8551310 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute119_WaterMonsInfo:: @ 8551324 @@ -1112,16 +1112,16 @@ gRoute119_WaterMonsInfo:: @ 8551324 .align 2 gRoute119_FishingMons:: @ 855132C - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon CARVANHA, 10, 30 - wild_mon CARVANHA, 25, 30 - wild_mon CARVANHA, 30, 35 - wild_mon CARVANHA, 20, 25 - wild_mon CARVANHA, 35, 40 - wild_mon CARVANHA, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_CARVANHA, 10, 30 + wild_mon SPECIES_CARVANHA, 25, 30 + wild_mon SPECIES_CARVANHA, 30, 35 + wild_mon SPECIES_CARVANHA, 20, 25 + wild_mon SPECIES_CARVANHA, 35, 40 + wild_mon SPECIES_CARVANHA, 40, 45 .align 2 gRoute119_FishingMonsInfo:: @ 8551354 @@ -1130,18 +1130,18 @@ gRoute119_FishingMonsInfo:: @ 8551354 .align 2 gRoute120_LandMons:: @ 855135C - wild_mon POOCHYENA, 25 - wild_mon MIGHTYENA, 25 - wild_mon MIGHTYENA, 27 - wild_mon ODDISH, 25 - wild_mon MARILL, 25 - wild_mon ODDISH, 26 - wild_mon ODDISH, 27 - wild_mon MARILL, 27 - wild_mon ABSOL, 25 - wild_mon ABSOL, 27 - wild_mon KECLEON, 25 - wild_mon SEEDOT, 25 + wild_mon SPECIES_POOCHYENA, 25 + wild_mon SPECIES_MIGHTYENA, 25 + wild_mon SPECIES_MIGHTYENA, 27 + wild_mon SPECIES_ODDISH, 25 + wild_mon SPECIES_MARILL, 25 + wild_mon SPECIES_ODDISH, 26 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_MARILL, 27 + wild_mon SPECIES_ABSOL, 25 + wild_mon SPECIES_ABSOL, 27 + wild_mon SPECIES_KECLEON, 25 + wild_mon SPECIES_SEEDOT, 25 .align 2 gRoute120_LandMonsInfo:: @ 855138C @@ -1150,11 +1150,11 @@ gRoute120_LandMonsInfo:: @ 855138C .align 2 gRoute120_WaterMons:: @ 8551394 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon GOLDEEN, 20, 30 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_GOLDEEN, 20, 30 .align 2 gRoute120_WaterMonsInfo:: @ 85513A8 @@ -1163,16 +1163,16 @@ gRoute120_WaterMonsInfo:: @ 85513A8 .align 2 gRoute120_FishingMons:: @ 85513B0 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon BARBOACH, 20, 25 - wild_mon BARBOACH, 35, 40 - wild_mon BARBOACH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_BARBOACH, 20, 25 + wild_mon SPECIES_BARBOACH, 35, 40 + wild_mon SPECIES_BARBOACH, 40, 45 .align 2 gRoute120_FishingMonsInfo:: @ 85513D8 @@ -1181,18 +1181,18 @@ gRoute120_FishingMonsInfo:: @ 85513D8 .align 2 gRoute121_LandMons:: @ 85513E0 - wild_mon POOCHYENA, 26 - wild_mon SHUPPET, 26 - wild_mon MIGHTYENA, 26 - wild_mon SHUPPET, 28 - wild_mon MIGHTYENA, 28 - wild_mon ODDISH, 26 - wild_mon ODDISH, 28 - wild_mon GLOOM, 28 - wild_mon WINGULL, 26 - wild_mon WINGULL, 27 - wild_mon WINGULL, 28 - wild_mon KECLEON, 25 + wild_mon SPECIES_POOCHYENA, 26 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_MIGHTYENA, 26 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_MIGHTYENA, 28 + wild_mon SPECIES_ODDISH, 26 + wild_mon SPECIES_ODDISH, 28 + wild_mon SPECIES_GLOOM, 28 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 27 + wild_mon SPECIES_WINGULL, 28 + wild_mon SPECIES_KECLEON, 25 .align 2 gRoute121_LandMonsInfo:: @ 8551410 @@ -1201,11 +1201,11 @@ gRoute121_LandMonsInfo:: @ 8551410 .align 2 gRoute121_WaterMons:: @ 8551418 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute121_WaterMonsInfo:: @ 855142C @@ -1214,16 +1214,16 @@ gRoute121_WaterMonsInfo:: @ 855142C .align 2 gRoute121_FishingMons:: @ 8551434 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute121_FishingMonsInfo:: @ 855145C @@ -1232,11 +1232,11 @@ gRoute121_FishingMonsInfo:: @ 855145C .align 2 gRoute122_WaterMons:: @ 8551464 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute122_WaterMonsInfo:: @ 8551478 @@ -1245,16 +1245,16 @@ gRoute122_WaterMonsInfo:: @ 8551478 .align 2 gRoute122_FishingMons:: @ 8551480 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute122_FishingMonsInfo:: @ 85514A8 @@ -1263,18 +1263,18 @@ gRoute122_FishingMonsInfo:: @ 85514A8 .align 2 gRoute123_LandMons:: @ 85514B0 - wild_mon POOCHYENA, 26 - wild_mon SHUPPET, 26 - wild_mon MIGHTYENA, 26 - wild_mon SHUPPET, 28 - wild_mon MIGHTYENA, 28 - wild_mon ODDISH, 26 - wild_mon ODDISH, 28 - wild_mon GLOOM, 28 - wild_mon WINGULL, 26 - wild_mon WINGULL, 27 - wild_mon WINGULL, 28 - wild_mon KECLEON, 25 + wild_mon SPECIES_POOCHYENA, 26 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_MIGHTYENA, 26 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_MIGHTYENA, 28 + wild_mon SPECIES_ODDISH, 26 + wild_mon SPECIES_ODDISH, 28 + wild_mon SPECIES_GLOOM, 28 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 27 + wild_mon SPECIES_WINGULL, 28 + wild_mon SPECIES_KECLEON, 25 .align 2 gRoute123_LandMonsInfo:: @ 85514E0 @@ -1283,11 +1283,11 @@ gRoute123_LandMonsInfo:: @ 85514E0 .align 2 gRoute123_WaterMons:: @ 85514E8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute123_WaterMonsInfo:: @ 85514FC @@ -1296,16 +1296,16 @@ gRoute123_WaterMonsInfo:: @ 85514FC .align 2 gRoute123_FishingMons:: @ 8551504 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute123_FishingMonsInfo:: @ 855152C @@ -1314,18 +1314,18 @@ gRoute123_FishingMonsInfo:: @ 855152C .align 2 gMtPyre_2F_LandMons:: @ 8551534 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 .align 2 gMtPyre_2F_LandMonsInfo:: @ 8551564 @@ -1334,18 +1334,18 @@ gMtPyre_2F_LandMonsInfo:: @ 8551564 .align 2 gMtPyre_3F_LandMons:: @ 855156C - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 .align 2 gMtPyre_3F_LandMonsInfo:: @ 855159C @@ -1354,18 +1354,18 @@ gMtPyre_3F_LandMonsInfo:: @ 855159C .align 2 gMtPyre_4F_LandMons:: @ 85515A4 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 25 - wild_mon DUSKULL, 29 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 25 + wild_mon SPECIES_DUSKULL, 29 .align 2 gMtPyre_4F_LandMonsInfo:: @ 85515D4 @@ -1374,18 +1374,18 @@ gMtPyre_4F_LandMonsInfo:: @ 85515D4 .align 2 gMtPyre_5F_LandMons:: @ 85515DC - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 25 - wild_mon DUSKULL, 29 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 25 + wild_mon SPECIES_DUSKULL, 29 .align 2 gMtPyre_5F_LandMonsInfo:: @ 855160C @@ -1394,18 +1394,18 @@ gMtPyre_5F_LandMonsInfo:: @ 855160C .align 2 gMtPyre_6F_LandMons:: @ 8551614 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 24 - wild_mon SHUPPET, 23 - wild_mon SHUPPET, 22 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 27 - wild_mon DUSKULL, 25 - wild_mon DUSKULL, 29 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_SHUPPET, 23 + wild_mon SPECIES_SHUPPET, 22 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 27 + wild_mon SPECIES_DUSKULL, 25 + wild_mon SPECIES_DUSKULL, 29 .align 2 gMtPyre_6F_LandMonsInfo:: @ 8551644 @@ -1414,18 +1414,18 @@ gMtPyre_6F_LandMonsInfo:: @ 8551644 .align 2 gMtPyre_Exterior_LandMons:: @ 855164C - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 29 - wild_mon VULPIX, 29 - wild_mon VULPIX, 27 - wild_mon VULPIX, 29 - wild_mon VULPIX, 25 - wild_mon WINGULL, 27 - wild_mon WINGULL, 27 - wild_mon WINGULL, 26 - wild_mon WINGULL, 28 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_VULPIX, 29 + wild_mon SPECIES_VULPIX, 27 + wild_mon SPECIES_VULPIX, 29 + wild_mon SPECIES_VULPIX, 25 + wild_mon SPECIES_WINGULL, 27 + wild_mon SPECIES_WINGULL, 27 + wild_mon SPECIES_WINGULL, 26 + wild_mon SPECIES_WINGULL, 28 .align 2 gMtPyre_Exterior_LandMonsInfo:: @ 855167C @@ -1434,18 +1434,18 @@ gMtPyre_Exterior_LandMonsInfo:: @ 855167C .align 2 gMtPyre_Summit_LandMons:: @ 8551684 - wild_mon SHUPPET, 28 - wild_mon SHUPPET, 29 - wild_mon SHUPPET, 27 - wild_mon SHUPPET, 26 - wild_mon SHUPPET, 30 - wild_mon SHUPPET, 25 - wild_mon SHUPPET, 24 - wild_mon DUSKULL, 28 - wild_mon DUSKULL, 26 - wild_mon DUSKULL, 30 - wild_mon CHIMECHO, 28 - wild_mon CHIMECHO, 28 + wild_mon SPECIES_SHUPPET, 28 + wild_mon SPECIES_SHUPPET, 29 + wild_mon SPECIES_SHUPPET, 27 + wild_mon SPECIES_SHUPPET, 26 + wild_mon SPECIES_SHUPPET, 30 + wild_mon SPECIES_SHUPPET, 25 + wild_mon SPECIES_SHUPPET, 24 + wild_mon SPECIES_DUSKULL, 28 + wild_mon SPECIES_DUSKULL, 26 + wild_mon SPECIES_DUSKULL, 30 + wild_mon SPECIES_CHIMECHO, 28 + wild_mon SPECIES_CHIMECHO, 28 .align 2 gMtPyre_Summit_LandMonsInfo:: @ 85516B4 @@ -1454,18 +1454,18 @@ gMtPyre_Summit_LandMonsInfo:: @ 85516B4 .align 2 gGraniteCave_StevensRoom_LandMons:: @ 85516BC - wild_mon ZUBAT, 7 - wild_mon MAKUHITA, 8 - wild_mon MAKUHITA, 7 - wild_mon ZUBAT, 8 - wild_mon MAKUHITA, 9 - wild_mon ABRA, 8 - wild_mon MAKUHITA, 10 - wild_mon MAKUHITA, 6 - wild_mon ARON, 7 - wild_mon ARON, 8 - wild_mon ARON, 7 - wild_mon ARON, 8 + wild_mon SPECIES_ZUBAT, 7 + wild_mon SPECIES_MAKUHITA, 8 + wild_mon SPECIES_MAKUHITA, 7 + wild_mon SPECIES_ZUBAT, 8 + wild_mon SPECIES_MAKUHITA, 9 + wild_mon SPECIES_ABRA, 8 + wild_mon SPECIES_MAKUHITA, 10 + wild_mon SPECIES_MAKUHITA, 6 + wild_mon SPECIES_ARON, 7 + wild_mon SPECIES_ARON, 8 + wild_mon SPECIES_ARON, 7 + wild_mon SPECIES_ARON, 8 .align 2 gGraniteCave_StevensRoom_LandMonsInfo:: @ 85516EC @@ -1474,11 +1474,11 @@ gGraniteCave_StevensRoom_LandMonsInfo:: @ 85516EC .align 2 gRoute125_WaterMons:: @ 85516F4 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute125_WaterMonsInfo:: @ 8551708 @@ -1487,16 +1487,16 @@ gRoute125_WaterMonsInfo:: @ 8551708 .align 2 gRoute125_FishingMons:: @ 8551710 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute125_FishingMonsInfo:: @ 8551738 @@ -1505,11 +1505,11 @@ gRoute125_FishingMonsInfo:: @ 8551738 .align 2 gRoute126_WaterMons:: @ 8551740 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute126_WaterMonsInfo:: @ 8551754 @@ -1518,16 +1518,16 @@ gRoute126_WaterMonsInfo:: @ 8551754 .align 2 gRoute126_FishingMons:: @ 855175C - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute126_FishingMonsInfo:: @ 8551784 @@ -1536,11 +1536,11 @@ gRoute126_FishingMonsInfo:: @ 8551784 .align 2 gRoute127_WaterMons:: @ 855178C - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute127_WaterMonsInfo:: @ 85517A0 @@ -1549,16 +1549,16 @@ gRoute127_WaterMonsInfo:: @ 85517A0 .align 2 gRoute127_FishingMons:: @ 85517A8 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute127_FishingMonsInfo:: @ 85517D0 @@ -1567,11 +1567,11 @@ gRoute127_FishingMonsInfo:: @ 85517D0 .align 2 gRoute128_WaterMons:: @ 85517D8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute128_WaterMonsInfo:: @ 85517EC @@ -1580,16 +1580,16 @@ gRoute128_WaterMonsInfo:: @ 85517EC .align 2 gRoute128_FishingMons:: @ 85517F4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon LUVDISC, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon LUVDISC, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon CORSOLA, 30, 35 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_LUVDISC, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_LUVDISC, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_CORSOLA, 30, 35 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute128_FishingMonsInfo:: @ 855181C @@ -1598,11 +1598,11 @@ gRoute128_FishingMonsInfo:: @ 855181C .align 2 gRoute129_WaterMons:: @ 8551824 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon WAILORD, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_WAILORD, 25, 30 .align 2 gRoute129_WaterMonsInfo:: @ 8551838 @@ -1611,16 +1611,16 @@ gRoute129_WaterMonsInfo:: @ 8551838 .align 2 gRoute129_FishingMons:: @ 8551840 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute129_FishingMonsInfo:: @ 8551868 @@ -1629,18 +1629,18 @@ gRoute129_FishingMonsInfo:: @ 8551868 .align 2 gRoute130_LandMons:: @ 8551870 - wild_mon WYNAUT, 30 - wild_mon WYNAUT, 35 - wild_mon WYNAUT, 25 - wild_mon WYNAUT, 40 - wild_mon WYNAUT, 20 - wild_mon WYNAUT, 45 - wild_mon WYNAUT, 15 - wild_mon WYNAUT, 50 - wild_mon WYNAUT, 10 - wild_mon WYNAUT, 5 - wild_mon WYNAUT, 10 - wild_mon WYNAUT, 5 + wild_mon SPECIES_WYNAUT, 30 + wild_mon SPECIES_WYNAUT, 35 + wild_mon SPECIES_WYNAUT, 25 + wild_mon SPECIES_WYNAUT, 40 + wild_mon SPECIES_WYNAUT, 20 + wild_mon SPECIES_WYNAUT, 45 + wild_mon SPECIES_WYNAUT, 15 + wild_mon SPECIES_WYNAUT, 50 + wild_mon SPECIES_WYNAUT, 10 + wild_mon SPECIES_WYNAUT, 5 + wild_mon SPECIES_WYNAUT, 10 + wild_mon SPECIES_WYNAUT, 5 .align 2 gRoute130_LandMonsInfo:: @ 85518A0 @@ -1649,11 +1649,11 @@ gRoute130_LandMonsInfo:: @ 85518A0 .align 2 gRoute130_WaterMons:: @ 85518A8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute130_WaterMonsInfo:: @ 85518BC @@ -1662,16 +1662,16 @@ gRoute130_WaterMonsInfo:: @ 85518BC .align 2 gRoute130_FishingMons:: @ 85518C4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute130_FishingMonsInfo:: @ 85518EC @@ -1680,11 +1680,11 @@ gRoute130_FishingMonsInfo:: @ 85518EC .align 2 gRoute131_WaterMons:: @ 85518F4 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute131_WaterMonsInfo:: @ 8551908 @@ -1693,16 +1693,16 @@ gRoute131_WaterMonsInfo:: @ 8551908 .align 2 gRoute131_FishingMons:: @ 8551910 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute131_FishingMonsInfo:: @ 8551938 @@ -1711,11 +1711,11 @@ gRoute131_FishingMonsInfo:: @ 8551938 .align 2 gRoute132_WaterMons:: @ 8551940 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute132_WaterMonsInfo:: @ 8551954 @@ -1724,16 +1724,16 @@ gRoute132_WaterMonsInfo:: @ 8551954 .align 2 gRoute132_FishingMons:: @ 855195C - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon HORSEA, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_HORSEA, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute132_FishingMonsInfo:: @ 8551984 @@ -1742,11 +1742,11 @@ gRoute132_FishingMonsInfo:: @ 8551984 .align 2 gRoute133_WaterMons:: @ 855198C - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute133_WaterMonsInfo:: @ 85519A0 @@ -1755,16 +1755,16 @@ gRoute133_WaterMonsInfo:: @ 85519A0 .align 2 gRoute133_FishingMons:: @ 85519A8 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon HORSEA, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_HORSEA, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute133_FishingMonsInfo:: @ 85519D0 @@ -1773,11 +1773,11 @@ gRoute133_FishingMonsInfo:: @ 85519D0 .align 2 gRoute134_WaterMons:: @ 85519D8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gRoute134_WaterMonsInfo:: @ 85519EC @@ -1786,16 +1786,16 @@ gRoute134_WaterMonsInfo:: @ 85519EC .align 2 gRoute134_FishingMons:: @ 85519F4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon HORSEA, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_HORSEA, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gRoute134_FishingMonsInfo:: @ 8551A1C @@ -1804,11 +1804,11 @@ gRoute134_FishingMonsInfo:: @ 8551A1C .align 2 gAbandonedShip_HiddenFloorCorridors_WaterMons:: @ 8551A24 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACOOL, 5, 35 - wild_mon TENTACRUEL, 30, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_TENTACRUEL, 30, 35 .align 2 gAbandonedShip_HiddenFloorCorridors_WaterMonsInfo:: @ 8551A38 @@ -1817,16 +1817,16 @@ gAbandonedShip_HiddenFloorCorridors_WaterMonsInfo:: @ 8551A38 .align 2 gAbandonedShip_HiddenFloorCorridors_FishingMons:: @ 8551A40 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon TENTACOOL, 25, 30 - wild_mon TENTACOOL, 30, 35 - wild_mon TENTACRUEL, 30, 35 - wild_mon TENTACRUEL, 25, 30 - wild_mon TENTACRUEL, 20, 25 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_TENTACOOL, 25, 30 + wild_mon SPECIES_TENTACOOL, 30, 35 + wild_mon SPECIES_TENTACRUEL, 30, 35 + wild_mon SPECIES_TENTACRUEL, 25, 30 + wild_mon SPECIES_TENTACRUEL, 20, 25 .align 2 gAbandonedShip_HiddenFloorCorridors_FishingMonsInfo:: @ 8551A68 @@ -1835,18 +1835,18 @@ gAbandonedShip_HiddenFloorCorridors_FishingMonsInfo:: @ 8551A68 .align 2 gSeafloorCavern_Room1_LandMons:: @ 8551A70 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room1_LandMonsInfo:: @ 8551AA0 @@ -1855,18 +1855,18 @@ gSeafloorCavern_Room1_LandMonsInfo:: @ 8551AA0 .align 2 gSeafloorCavern_Room2_LandMons:: @ 8551AA8 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room2_LandMonsInfo:: @ 8551AD8 @@ -1875,18 +1875,18 @@ gSeafloorCavern_Room2_LandMonsInfo:: @ 8551AD8 .align 2 gSeafloorCavern_Room3_LandMons:: @ 8551AE0 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room3_LandMonsInfo:: @ 8551B10 @@ -1895,18 +1895,18 @@ gSeafloorCavern_Room3_LandMonsInfo:: @ 8551B10 .align 2 gSeafloorCavern_Room4_LandMons:: @ 8551B18 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room4_LandMonsInfo:: @ 8551B48 @@ -1915,18 +1915,18 @@ gSeafloorCavern_Room4_LandMonsInfo:: @ 8551B48 .align 2 gSeafloorCavern_Room5_LandMons:: @ 8551B50 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room5_LandMonsInfo:: @ 8551B80 @@ -1935,18 +1935,18 @@ gSeafloorCavern_Room5_LandMonsInfo:: @ 8551B80 .align 2 gSeafloorCavern_Room6_LandMons:: @ 8551B88 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room6_LandMonsInfo:: @ 8551BB8 @@ -1955,11 +1955,11 @@ gSeafloorCavern_Room6_LandMonsInfo:: @ 8551BB8 .align 2 gSeafloorCavern_Room6_WaterMons:: @ 8551BC0 - wild_mon TENTACOOL, 5, 35 - wild_mon ZUBAT, 5, 35 - wild_mon ZUBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_ZUBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 .align 2 gSeafloorCavern_Room6_WaterMonsInfo:: @ 8551BD4 @@ -1968,16 +1968,16 @@ gSeafloorCavern_Room6_WaterMonsInfo:: @ 8551BD4 .align 2 gSeafloorCavern_Room6_FishingMons:: @ 8551BDC - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gSeafloorCavern_Room6_FishingMonsInfo:: @ 8551C04 @@ -1986,18 +1986,18 @@ gSeafloorCavern_Room6_FishingMonsInfo:: @ 8551C04 .align 2 gSeafloorCavern_Room7_LandMons:: @ 8551C0C - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room7_LandMonsInfo:: @ 8551C3C @@ -2006,11 +2006,11 @@ gSeafloorCavern_Room7_LandMonsInfo:: @ 8551C3C .align 2 gSeafloorCavern_Room7_WaterMons:: @ 8551C44 - wild_mon TENTACOOL, 5, 35 - wild_mon ZUBAT, 5, 35 - wild_mon ZUBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_ZUBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 .align 2 gSeafloorCavern_Room7_WaterMonsInfo:: @ 8551C58 @@ -2019,16 +2019,16 @@ gSeafloorCavern_Room7_WaterMonsInfo:: @ 8551C58 .align 2 gSeafloorCavern_Room7_FishingMons:: @ 8551C60 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gSeafloorCavern_Room7_FishingMonsInfo:: @ 8551C88 @@ -2037,18 +2037,18 @@ gSeafloorCavern_Room7_FishingMonsInfo:: @ 8551C88 .align 2 gSeafloorCavern_Room8_LandMons:: @ 8551C90 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gSeafloorCavern_Room8_LandMonsInfo:: @ 8551CC0 @@ -2057,11 +2057,11 @@ gSeafloorCavern_Room8_LandMonsInfo:: @ 8551CC0 .align 2 gSeafloorCavern_Entrance_WaterMons:: @ 8551CC8 - wild_mon TENTACOOL, 5, 35 - wild_mon ZUBAT, 5, 35 - wild_mon ZUBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_ZUBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 .align 2 gSeafloorCavern_Entrance_WaterMonsInfo:: @ 8551CDC @@ -2070,16 +2070,16 @@ gSeafloorCavern_Entrance_WaterMonsInfo:: @ 8551CDC .align 2 gSeafloorCavern_Entrance_FishingMons:: @ 8551CE4 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gSeafloorCavern_Entrance_FishingMonsInfo:: @ 8551D0C @@ -2088,18 +2088,18 @@ gSeafloorCavern_Entrance_FishingMonsInfo:: @ 8551D0C .align 2 gCaveOfOrigin_Entrance_LandMons:: @ 8551D14 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 28 - wild_mon ZUBAT, 29 - wild_mon ZUBAT, 34 - wild_mon ZUBAT, 35 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_ZUBAT, 29 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_ZUBAT, 35 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gCaveOfOrigin_Entrance_LandMonsInfo:: @ 8551D44 @@ -2108,18 +2108,18 @@ gCaveOfOrigin_Entrance_LandMonsInfo:: @ 8551D44 .align 2 gCaveOfOrigin_1F_LandMons:: @ 8551D4C - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon SABLEYE, 30 - wild_mon SABLEYE, 32 - wild_mon SABLEYE, 34 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 34 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SABLEYE, 30 + wild_mon SPECIES_SABLEYE, 32 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gCaveOfOrigin_1F_LandMonsInfo:: @ 8551D7C @@ -2128,18 +2128,18 @@ gCaveOfOrigin_1F_LandMonsInfo:: @ 8551D7C .align 2 gCaveOfOrigin_UnusedRubySapphireMap1_LandMons:: @ 8551D84 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon SABLEYE, 30 - wild_mon SABLEYE, 32 - wild_mon SABLEYE, 34 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 34 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SABLEYE, 30 + wild_mon SPECIES_SABLEYE, 32 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gCaveOfOrigin_UnusedRubySapphireMap1_LandMonsInfo:: @ 8551DB4 @@ -2148,18 +2148,18 @@ gCaveOfOrigin_UnusedRubySapphireMap1_LandMonsInfo:: @ 8551DB4 .align 2 gCaveOfOrigin_UnusedRubySapphireMap2_LandMons:: @ 8551DBC - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon SABLEYE, 30 - wild_mon SABLEYE, 32 - wild_mon SABLEYE, 34 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 34 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SABLEYE, 30 + wild_mon SPECIES_SABLEYE, 32 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gCaveOfOrigin_UnusedRubySapphireMap2_LandMonsInfo:: @ 8551DEC @@ -2168,18 +2168,18 @@ gCaveOfOrigin_UnusedRubySapphireMap2_LandMonsInfo:: @ 8551DEC .align 2 gCaveOfOrigin_UnusedRubySapphireMap3_LandMons:: @ 8551DF4 - wild_mon ZUBAT, 30 - wild_mon ZUBAT, 31 - wild_mon ZUBAT, 32 - wild_mon SABLEYE, 30 - wild_mon SABLEYE, 32 - wild_mon SABLEYE, 34 - wild_mon ZUBAT, 33 - wild_mon ZUBAT, 34 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 36 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_ZUBAT, 31 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SABLEYE, 30 + wild_mon SPECIES_SABLEYE, 32 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_ZUBAT, 33 + wild_mon SPECIES_ZUBAT, 34 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 36 .align 2 gCaveOfOrigin_UnusedRubySapphireMap3_LandMonsInfo:: @ 8551E24 @@ -2188,18 +2188,18 @@ gCaveOfOrigin_UnusedRubySapphireMap3_LandMonsInfo:: @ 8551E24 .align 2 gNewMauville_Entrance_LandMons:: @ 8551E2C - wild_mon VOLTORB, 24 - wild_mon MAGNEMITE, 24 - wild_mon VOLTORB, 25 - wild_mon MAGNEMITE, 25 - wild_mon VOLTORB, 23 - wild_mon MAGNEMITE, 23 - wild_mon VOLTORB, 26 - wild_mon MAGNEMITE, 26 - wild_mon VOLTORB, 22 - wild_mon MAGNEMITE, 22 - wild_mon VOLTORB, 22 - wild_mon MAGNEMITE, 22 + wild_mon SPECIES_VOLTORB, 24 + wild_mon SPECIES_MAGNEMITE, 24 + wild_mon SPECIES_VOLTORB, 25 + wild_mon SPECIES_MAGNEMITE, 25 + wild_mon SPECIES_VOLTORB, 23 + wild_mon SPECIES_MAGNEMITE, 23 + wild_mon SPECIES_VOLTORB, 26 + wild_mon SPECIES_MAGNEMITE, 26 + wild_mon SPECIES_VOLTORB, 22 + wild_mon SPECIES_MAGNEMITE, 22 + wild_mon SPECIES_VOLTORB, 22 + wild_mon SPECIES_MAGNEMITE, 22 .align 2 gNewMauville_Entrance_LandMonsInfo:: @ 8551E5C @@ -2208,18 +2208,18 @@ gNewMauville_Entrance_LandMonsInfo:: @ 8551E5C .align 2 gSafariZone_Southwest_LandMons:: @ 8551E64 - wild_mon ODDISH, 25 - wild_mon ODDISH, 27 - wild_mon GIRAFARIG, 25 - wild_mon GIRAFARIG, 27 - wild_mon NATU, 25 - wild_mon DODUO, 27 - wild_mon GLOOM, 25 - wild_mon WOBBUFFET, 27 - wild_mon PIKACHU, 25 - wild_mon WOBBUFFET, 27 - wild_mon PIKACHU, 27 - wild_mon WOBBUFFET, 29 + wild_mon SPECIES_ODDISH, 25 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_GIRAFARIG, 25 + wild_mon SPECIES_GIRAFARIG, 27 + wild_mon SPECIES_NATU, 25 + wild_mon SPECIES_DODUO, 27 + wild_mon SPECIES_GLOOM, 25 + wild_mon SPECIES_WOBBUFFET, 27 + wild_mon SPECIES_PIKACHU, 25 + wild_mon SPECIES_WOBBUFFET, 27 + wild_mon SPECIES_PIKACHU, 27 + wild_mon SPECIES_WOBBUFFET, 29 .align 2 gSafariZone_Southwest_LandMonsInfo:: @ 8551E94 @@ -2228,11 +2228,11 @@ gSafariZone_Southwest_LandMonsInfo:: @ 8551E94 .align 2 gSafariZone_Southwest_WaterMons:: @ 8551E9C - wild_mon PSYDUCK, 20, 30 - wild_mon PSYDUCK, 20, 30 - wild_mon PSYDUCK, 30, 35 - wild_mon PSYDUCK, 30, 35 - wild_mon PSYDUCK, 30, 35 + wild_mon SPECIES_PSYDUCK, 20, 30 + wild_mon SPECIES_PSYDUCK, 20, 30 + wild_mon SPECIES_PSYDUCK, 30, 35 + wild_mon SPECIES_PSYDUCK, 30, 35 + wild_mon SPECIES_PSYDUCK, 30, 35 .align 2 gSafariZone_Southwest_WaterMonsInfo:: @ 8551EB0 @@ -2241,16 +2241,16 @@ gSafariZone_Southwest_WaterMonsInfo:: @ 8551EB0 .align 2 gSafariZone_Southwest_FishingMons:: @ 8551EB8 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 25 - wild_mon GOLDEEN, 10, 30 - wild_mon GOLDEEN, 25, 30 - wild_mon GOLDEEN, 30, 35 - wild_mon SEAKING, 30, 35 - wild_mon SEAKING, 35, 40 - wild_mon SEAKING, 25, 30 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 25 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_GOLDEEN, 25, 30 + wild_mon SPECIES_GOLDEEN, 30, 35 + wild_mon SPECIES_SEAKING, 30, 35 + wild_mon SPECIES_SEAKING, 35, 40 + wild_mon SPECIES_SEAKING, 25, 30 .align 2 gSafariZone_Southwest_FishingMonsInfo:: @ 8551EE0 @@ -2259,18 +2259,18 @@ gSafariZone_Southwest_FishingMonsInfo:: @ 8551EE0 .align 2 gSafariZone_North_LandMons:: @ 8551EE8 - wild_mon PHANPY, 27 - wild_mon ODDISH, 27 - wild_mon PHANPY, 29 - wild_mon ODDISH, 29 - wild_mon NATU, 27 - wild_mon GLOOM, 29 - wild_mon GLOOM, 31 - wild_mon NATU, 29 - wild_mon XATU, 29 - wild_mon HERACROSS, 27 - wild_mon XATU, 31 - wild_mon HERACROSS, 29 + wild_mon SPECIES_PHANPY, 27 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_PHANPY, 29 + wild_mon SPECIES_ODDISH, 29 + wild_mon SPECIES_NATU, 27 + wild_mon SPECIES_GLOOM, 29 + wild_mon SPECIES_GLOOM, 31 + wild_mon SPECIES_NATU, 29 + wild_mon SPECIES_XATU, 29 + wild_mon SPECIES_HERACROSS, 27 + wild_mon SPECIES_XATU, 31 + wild_mon SPECIES_HERACROSS, 29 .align 2 gSafariZone_North_LandMonsInfo:: @ 8551F18 @@ -2279,11 +2279,11 @@ gSafariZone_North_LandMonsInfo:: @ 8551F18 .align 2 gSafariZone_North_RockSmashMons:: @ 8551F20 - wild_mon GEODUDE, 10, 15 - wild_mon GEODUDE, 5, 10 - wild_mon GEODUDE, 15, 20 - wild_mon GEODUDE, 20, 25 - wild_mon GEODUDE, 25, 30 + wild_mon SPECIES_GEODUDE, 10, 15 + wild_mon SPECIES_GEODUDE, 5, 10 + wild_mon SPECIES_GEODUDE, 15, 20 + wild_mon SPECIES_GEODUDE, 20, 25 + wild_mon SPECIES_GEODUDE, 25, 30 .align 2 gSafariZone_North_RockSmashMonsInfo:: @ 8551F34 @@ -2292,18 +2292,18 @@ gSafariZone_North_RockSmashMonsInfo:: @ 8551F34 .align 2 gSafariZone_Northwest_LandMons:: @ 8551F3C - wild_mon RHYHORN, 27 - wild_mon ODDISH, 27 - wild_mon RHYHORN, 29 - wild_mon ODDISH, 29 - wild_mon DODUO, 27 - wild_mon GLOOM, 29 - wild_mon GLOOM, 31 - wild_mon DODUO, 29 - wild_mon DODRIO, 29 - wild_mon PINSIR, 27 - wild_mon DODRIO, 31 - wild_mon PINSIR, 29 + wild_mon SPECIES_RHYHORN, 27 + wild_mon SPECIES_ODDISH, 27 + wild_mon SPECIES_RHYHORN, 29 + wild_mon SPECIES_ODDISH, 29 + wild_mon SPECIES_DODUO, 27 + wild_mon SPECIES_GLOOM, 29 + wild_mon SPECIES_GLOOM, 31 + wild_mon SPECIES_DODUO, 29 + wild_mon SPECIES_DODRIO, 29 + wild_mon SPECIES_PINSIR, 27 + wild_mon SPECIES_DODRIO, 31 + wild_mon SPECIES_PINSIR, 29 .align 2 gSafariZone_Northwest_LandMonsInfo:: @ 8551F6C @@ -2312,11 +2312,11 @@ gSafariZone_Northwest_LandMonsInfo:: @ 8551F6C .align 2 gSafariZone_Northwest_WaterMons:: @ 8551F74 - wild_mon PSYDUCK, 20, 30 - wild_mon PSYDUCK, 20, 30 - wild_mon PSYDUCK, 30, 35 - wild_mon GOLDUCK, 30, 35 - wild_mon GOLDUCK, 25, 40 + wild_mon SPECIES_PSYDUCK, 20, 30 + wild_mon SPECIES_PSYDUCK, 20, 30 + wild_mon SPECIES_PSYDUCK, 30, 35 + wild_mon SPECIES_GOLDUCK, 30, 35 + wild_mon SPECIES_GOLDUCK, 25, 40 .align 2 gSafariZone_Northwest_WaterMonsInfo:: @ 8551F88 @@ -2325,16 +2325,16 @@ gSafariZone_Northwest_WaterMonsInfo:: @ 8551F88 .align 2 gSafariZone_Northwest_FishingMons:: @ 8551F90 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 25 - wild_mon GOLDEEN, 10, 30 - wild_mon GOLDEEN, 25, 30 - wild_mon GOLDEEN, 30, 35 - wild_mon SEAKING, 30, 35 - wild_mon SEAKING, 35, 40 - wild_mon SEAKING, 25, 30 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 25 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_GOLDEEN, 25, 30 + wild_mon SPECIES_GOLDEEN, 30, 35 + wild_mon SPECIES_SEAKING, 30, 35 + wild_mon SPECIES_SEAKING, 35, 40 + wild_mon SPECIES_SEAKING, 25, 30 .align 2 gSafariZone_Northwest_FishingMonsInfo:: @ 8551FB8 @@ -2343,18 +2343,18 @@ gSafariZone_Northwest_FishingMonsInfo:: @ 8551FB8 .align 2 gVictoryRoad_B1F_LandMons:: @ 8551FC0 - wild_mon GOLBAT, 40 - wild_mon HARIYAMA, 40 - wild_mon LAIRON, 40 - wild_mon LAIRON, 40 - wild_mon GOLBAT, 38 - wild_mon HARIYAMA, 38 - wild_mon GOLBAT, 42 - wild_mon HARIYAMA, 42 - wild_mon LAIRON, 42 - wild_mon MAWILE, 38 - wild_mon LAIRON, 42 - wild_mon MAWILE, 38 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_HARIYAMA, 40 + wild_mon SPECIES_LAIRON, 40 + wild_mon SPECIES_LAIRON, 40 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_HARIYAMA, 38 + wild_mon SPECIES_GOLBAT, 42 + wild_mon SPECIES_HARIYAMA, 42 + wild_mon SPECIES_LAIRON, 42 + wild_mon SPECIES_MAWILE, 38 + wild_mon SPECIES_LAIRON, 42 + wild_mon SPECIES_MAWILE, 38 .align 2 gVictoryRoad_B1F_LandMonsInfo:: @ 8551FF0 @@ -2363,11 +2363,11 @@ gVictoryRoad_B1F_LandMonsInfo:: @ 8551FF0 .align 2 gVictoryRoad_B1F_RockSmashMons:: @ 8551FF8 - wild_mon GRAVELER, 30, 40 - wild_mon GEODUDE, 30, 40 - wild_mon GRAVELER, 35, 40 - wild_mon GRAVELER, 35, 40 - wild_mon GRAVELER, 35, 40 + wild_mon SPECIES_GRAVELER, 30, 40 + wild_mon SPECIES_GEODUDE, 30, 40 + wild_mon SPECIES_GRAVELER, 35, 40 + wild_mon SPECIES_GRAVELER, 35, 40 + wild_mon SPECIES_GRAVELER, 35, 40 .align 2 gVictoryRoad_B1F_RockSmashMonsInfo:: @ 855200C @@ -2376,18 +2376,18 @@ gVictoryRoad_B1F_RockSmashMonsInfo:: @ 855200C .align 2 gVictoryRoad_B2F_LandMons:: @ 8552014 - wild_mon GOLBAT, 40 - wild_mon SABLEYE, 40 - wild_mon LAIRON, 40 - wild_mon LAIRON, 40 - wild_mon GOLBAT, 42 - wild_mon SABLEYE, 42 - wild_mon GOLBAT, 44 - wild_mon SABLEYE, 44 - wild_mon LAIRON, 42 - wild_mon MAWILE, 42 - wild_mon LAIRON, 44 - wild_mon MAWILE, 44 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_SABLEYE, 40 + wild_mon SPECIES_LAIRON, 40 + wild_mon SPECIES_LAIRON, 40 + wild_mon SPECIES_GOLBAT, 42 + wild_mon SPECIES_SABLEYE, 42 + wild_mon SPECIES_GOLBAT, 44 + wild_mon SPECIES_SABLEYE, 44 + wild_mon SPECIES_LAIRON, 42 + wild_mon SPECIES_MAWILE, 42 + wild_mon SPECIES_LAIRON, 44 + wild_mon SPECIES_MAWILE, 44 .align 2 gVictoryRoad_B2F_LandMonsInfo:: @ 8552044 @@ -2396,11 +2396,11 @@ gVictoryRoad_B2F_LandMonsInfo:: @ 8552044 .align 2 gVictoryRoad_B2F_WaterMons:: @ 855204C - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 25, 30 - wild_mon GOLBAT, 35, 40 - wild_mon GOLBAT, 35, 40 - wild_mon GOLBAT, 35, 40 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 25, 30 + wild_mon SPECIES_GOLBAT, 35, 40 + wild_mon SPECIES_GOLBAT, 35, 40 + wild_mon SPECIES_GOLBAT, 35, 40 .align 2 gVictoryRoad_B2F_WaterMonsInfo:: @ 8552060 @@ -2409,16 +2409,16 @@ gVictoryRoad_B2F_WaterMonsInfo:: @ 8552060 .align 2 gVictoryRoad_B2F_FishingMons:: @ 8552068 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon WHISCASH, 30, 35 - wild_mon WHISCASH, 35, 40 - wild_mon WHISCASH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_WHISCASH, 30, 35 + wild_mon SPECIES_WHISCASH, 35, 40 + wild_mon SPECIES_WHISCASH, 40, 45 .align 2 gVictoryRoad_B2F_FishingMonsInfo:: @ 8552090 @@ -2427,18 +2427,18 @@ gVictoryRoad_B2F_FishingMonsInfo:: @ 8552090 .align 2 gMeteorFalls_1F_1R_LandMons:: @ 8552098 - wild_mon ZUBAT, 16 - wild_mon ZUBAT, 17 - wild_mon ZUBAT, 18 - wild_mon ZUBAT, 15 - wild_mon ZUBAT, 14 - wild_mon SOLROCK, 16 - wild_mon SOLROCK, 18 - wild_mon SOLROCK, 14 - wild_mon ZUBAT, 19 - wild_mon ZUBAT, 20 - wild_mon ZUBAT, 19 - wild_mon ZUBAT, 20 + wild_mon SPECIES_ZUBAT, 16 + wild_mon SPECIES_ZUBAT, 17 + wild_mon SPECIES_ZUBAT, 18 + wild_mon SPECIES_ZUBAT, 15 + wild_mon SPECIES_ZUBAT, 14 + wild_mon SPECIES_SOLROCK, 16 + wild_mon SPECIES_SOLROCK, 18 + wild_mon SPECIES_SOLROCK, 14 + wild_mon SPECIES_ZUBAT, 19 + wild_mon SPECIES_ZUBAT, 20 + wild_mon SPECIES_ZUBAT, 19 + wild_mon SPECIES_ZUBAT, 20 .align 2 gMeteorFalls_1F_1R_LandMonsInfo:: @ 85520C8 @@ -2447,11 +2447,11 @@ gMeteorFalls_1F_1R_LandMonsInfo:: @ 85520C8 .align 2 gMeteorFalls_1F_1R_WaterMons:: @ 85520D0 - wild_mon ZUBAT, 5, 35 - wild_mon ZUBAT, 30, 35 - wild_mon SOLROCK, 25, 35 - wild_mon SOLROCK, 15, 25 - wild_mon SOLROCK, 5, 15 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_ZUBAT, 30, 35 + wild_mon SPECIES_SOLROCK, 25, 35 + wild_mon SPECIES_SOLROCK, 15, 25 + wild_mon SPECIES_SOLROCK, 5, 15 .align 2 gMeteorFalls_1F_1R_WaterMonsInfo:: @ 85520E4 @@ -2460,16 +2460,16 @@ gMeteorFalls_1F_1R_WaterMonsInfo:: @ 85520E4 .align 2 gMeteorFalls_1F_1R_FishingMons:: @ 85520EC - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon BARBOACH, 20, 25 - wild_mon BARBOACH, 35, 40 - wild_mon BARBOACH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_BARBOACH, 20, 25 + wild_mon SPECIES_BARBOACH, 35, 40 + wild_mon SPECIES_BARBOACH, 40, 45 .align 2 gMeteorFalls_1F_1R_FishingMonsInfo:: @ 8552114 @@ -2478,18 +2478,18 @@ gMeteorFalls_1F_1R_FishingMonsInfo:: @ 8552114 .align 2 gMeteorFalls_1F_2R_LandMons:: @ 855211C - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon SOLROCK, 35 - wild_mon SOLROCK, 33 - wild_mon SOLROCK, 37 - wild_mon GOLBAT, 35 - wild_mon SOLROCK, 39 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_SOLROCK, 35 + wild_mon SPECIES_SOLROCK, 33 + wild_mon SPECIES_SOLROCK, 37 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SOLROCK, 39 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 .align 2 gMeteorFalls_1F_2R_LandMonsInfo:: @ 855214C @@ -2498,11 +2498,11 @@ gMeteorFalls_1F_2R_LandMonsInfo:: @ 855214C .align 2 gMeteorFalls_1F_2R_WaterMons:: @ 8552154 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon SOLROCK, 25, 35 - wild_mon SOLROCK, 15, 25 - wild_mon SOLROCK, 5, 15 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_SOLROCK, 25, 35 + wild_mon SPECIES_SOLROCK, 15, 25 + wild_mon SPECIES_SOLROCK, 5, 15 .align 2 gMeteorFalls_1F_2R_WaterMonsInfo:: @ 8552168 @@ -2511,16 +2511,16 @@ gMeteorFalls_1F_2R_WaterMonsInfo:: @ 8552168 .align 2 gMeteorFalls_1F_2R_FishingMons:: @ 8552170 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon WHISCASH, 30, 35 - wild_mon WHISCASH, 35, 40 - wild_mon WHISCASH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_WHISCASH, 30, 35 + wild_mon SPECIES_WHISCASH, 35, 40 + wild_mon SPECIES_WHISCASH, 40, 45 .align 2 gMeteorFalls_1F_2R_FishingMonsInfo:: @ 8552198 @@ -2529,18 +2529,18 @@ gMeteorFalls_1F_2R_FishingMonsInfo:: @ 8552198 .align 2 gMeteorFalls_B1F_1R_LandMons:: @ 85521A0 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon SOLROCK, 35 - wild_mon SOLROCK, 33 - wild_mon SOLROCK, 37 - wild_mon GOLBAT, 35 - wild_mon SOLROCK, 39 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_SOLROCK, 35 + wild_mon SPECIES_SOLROCK, 33 + wild_mon SPECIES_SOLROCK, 37 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SOLROCK, 39 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 .align 2 gMeteorFalls_B1F_1R_LandMonsInfo:: @ 85521D0 @@ -2549,11 +2549,11 @@ gMeteorFalls_B1F_1R_LandMonsInfo:: @ 85521D0 .align 2 gMeteorFalls_B1F_1R_WaterMons:: @ 85521D8 - wild_mon GOLBAT, 30, 35 - wild_mon GOLBAT, 30, 35 - wild_mon SOLROCK, 25, 35 - wild_mon SOLROCK, 15, 25 - wild_mon SOLROCK, 5, 15 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_GOLBAT, 30, 35 + wild_mon SPECIES_SOLROCK, 25, 35 + wild_mon SPECIES_SOLROCK, 15, 25 + wild_mon SPECIES_SOLROCK, 5, 15 .align 2 gMeteorFalls_B1F_1R_WaterMonsInfo:: @ 85521EC @@ -2562,16 +2562,16 @@ gMeteorFalls_B1F_1R_WaterMonsInfo:: @ 85521EC .align 2 gMeteorFalls_B1F_1R_FishingMons:: @ 85521F4 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon BARBOACH, 10, 30 - wild_mon BARBOACH, 25, 30 - wild_mon BARBOACH, 30, 35 - wild_mon WHISCASH, 30, 35 - wild_mon WHISCASH, 35, 40 - wild_mon WHISCASH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_BARBOACH, 10, 30 + wild_mon SPECIES_BARBOACH, 25, 30 + wild_mon SPECIES_BARBOACH, 30, 35 + wild_mon SPECIES_WHISCASH, 30, 35 + wild_mon SPECIES_WHISCASH, 35, 40 + wild_mon SPECIES_WHISCASH, 40, 45 .align 2 gMeteorFalls_B1F_1R_FishingMonsInfo:: @ 855221C @@ -2580,18 +2580,18 @@ gMeteorFalls_B1F_1R_FishingMonsInfo:: @ 855221C .align 2 gShoalCave_LowTideStairsRoom_LandMons:: @ 8552224 - wild_mon ZUBAT, 26 - wild_mon SPHEAL, 26 - wild_mon ZUBAT, 28 - wild_mon SPHEAL, 28 - wild_mon ZUBAT, 30 - wild_mon SPHEAL, 30 - wild_mon ZUBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 + wild_mon SPECIES_ZUBAT, 26 + wild_mon SPECIES_SPHEAL, 26 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_SPHEAL, 28 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_SPHEAL, 30 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 .align 2 gShoalCave_LowTideStairsRoom_LandMonsInfo:: @ 8552254 @@ -2600,18 +2600,18 @@ gShoalCave_LowTideStairsRoom_LandMonsInfo:: @ 8552254 .align 2 gShoalCave_LowTideLowerRoom_LandMons:: @ 855225C - wild_mon ZUBAT, 26 - wild_mon SPHEAL, 26 - wild_mon ZUBAT, 28 - wild_mon SPHEAL, 28 - wild_mon ZUBAT, 30 - wild_mon SPHEAL, 30 - wild_mon ZUBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 + wild_mon SPECIES_ZUBAT, 26 + wild_mon SPECIES_SPHEAL, 26 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_SPHEAL, 28 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_SPHEAL, 30 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 .align 2 gShoalCave_LowTideLowerRoom_LandMonsInfo:: @ 855228C @@ -2620,18 +2620,18 @@ gShoalCave_LowTideLowerRoom_LandMonsInfo:: @ 855228C .align 2 gShoalCave_LowTideInnerRoom_LandMons:: @ 8552294 - wild_mon ZUBAT, 26 - wild_mon SPHEAL, 26 - wild_mon ZUBAT, 28 - wild_mon SPHEAL, 28 - wild_mon ZUBAT, 30 - wild_mon SPHEAL, 30 - wild_mon ZUBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 + wild_mon SPECIES_ZUBAT, 26 + wild_mon SPECIES_SPHEAL, 26 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_SPHEAL, 28 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_SPHEAL, 30 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 .align 2 gShoalCave_LowTideInnerRoom_LandMonsInfo:: @ 85522C4 @@ -2640,11 +2640,11 @@ gShoalCave_LowTideInnerRoom_LandMonsInfo:: @ 85522C4 .align 2 gShoalCave_LowTideInnerRoom_WaterMons:: @ 85522CC - wild_mon TENTACOOL, 5, 35 - wild_mon ZUBAT, 5, 35 - wild_mon SPHEAL, 25, 30 - wild_mon SPHEAL, 25, 30 - wild_mon SPHEAL, 25, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_SPHEAL, 25, 30 + wild_mon SPECIES_SPHEAL, 25, 30 + wild_mon SPECIES_SPHEAL, 25, 35 .align 2 gShoalCave_LowTideInnerRoom_WaterMonsInfo:: @ 85522E0 @@ -2653,16 +2653,16 @@ gShoalCave_LowTideInnerRoom_WaterMonsInfo:: @ 85522E0 .align 2 gShoalCave_LowTideInnerRoom_FishingMons:: @ 85522E8 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gShoalCave_LowTideInnerRoom_FishingMonsInfo:: @ 8552310 @@ -2671,18 +2671,18 @@ gShoalCave_LowTideInnerRoom_FishingMonsInfo:: @ 8552310 .align 2 gShoalCave_LowTideEntranceRoom_LandMons:: @ 8552318 - wild_mon ZUBAT, 26 - wild_mon SPHEAL, 26 - wild_mon ZUBAT, 28 - wild_mon SPHEAL, 28 - wild_mon ZUBAT, 30 - wild_mon SPHEAL, 30 - wild_mon ZUBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 32 - wild_mon SPHEAL, 32 + wild_mon SPECIES_ZUBAT, 26 + wild_mon SPECIES_SPHEAL, 26 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_SPHEAL, 28 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_SPHEAL, 30 + wild_mon SPECIES_ZUBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SPHEAL, 32 .align 2 gShoalCave_LowTideEntranceRoom_LandMonsInfo:: @ 8552348 @@ -2691,11 +2691,11 @@ gShoalCave_LowTideEntranceRoom_LandMonsInfo:: @ 8552348 .align 2 gShoalCave_LowTideEntranceRoom_WaterMons:: @ 8552350 - wild_mon TENTACOOL, 5, 35 - wild_mon ZUBAT, 5, 35 - wild_mon SPHEAL, 25, 30 - wild_mon SPHEAL, 25, 30 - wild_mon SPHEAL, 25, 35 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_ZUBAT, 5, 35 + wild_mon SPECIES_SPHEAL, 25, 30 + wild_mon SPECIES_SPHEAL, 25, 30 + wild_mon SPECIES_SPHEAL, 25, 35 .align 2 gShoalCave_LowTideEntranceRoom_WaterMonsInfo:: @ 8552364 @@ -2704,16 +2704,16 @@ gShoalCave_LowTideEntranceRoom_WaterMonsInfo:: @ 8552364 .align 2 gShoalCave_LowTideEntranceRoom_FishingMons:: @ 855236C - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gShoalCave_LowTideEntranceRoom_FishingMonsInfo:: @ 8552394 @@ -2722,11 +2722,11 @@ gShoalCave_LowTideEntranceRoom_FishingMonsInfo:: @ 8552394 .align 2 gLilycoveCity_WaterMons:: @ 855239C - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gLilycoveCity_WaterMonsInfo:: @ 85523B0 @@ -2735,16 +2735,16 @@ gLilycoveCity_WaterMonsInfo:: @ 85523B0 .align 2 gLilycoveCity_FishingMons:: @ 85523B8 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon STARYU, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_STARYU, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gLilycoveCity_FishingMonsInfo:: @ 85523E0 @@ -2753,11 +2753,11 @@ gLilycoveCity_FishingMonsInfo:: @ 85523E0 .align 2 gDewfordTown_WaterMons:: @ 85523E8 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gDewfordTown_WaterMonsInfo:: @ 85523FC @@ -2766,16 +2766,16 @@ gDewfordTown_WaterMonsInfo:: @ 85523FC .align 2 gDewfordTown_FishingMons:: @ 8552404 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gDewfordTown_FishingMonsInfo:: @ 855242C @@ -2784,11 +2784,11 @@ gDewfordTown_FishingMonsInfo:: @ 855242C .align 2 gSlateportCity_WaterMons:: @ 8552434 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gSlateportCity_WaterMonsInfo:: @ 8552448 @@ -2797,16 +2797,16 @@ gSlateportCity_WaterMonsInfo:: @ 8552448 .align 2 gSlateportCity_FishingMons:: @ 8552450 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 20, 25 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 20, 25 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gSlateportCity_FishingMonsInfo:: @ 8552478 @@ -2815,11 +2815,11 @@ gSlateportCity_FishingMonsInfo:: @ 8552478 .align 2 gMossdeepCity_WaterMons:: @ 8552480 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gMossdeepCity_WaterMonsInfo:: @ 8552494 @@ -2828,16 +2828,16 @@ gMossdeepCity_WaterMonsInfo:: @ 8552494 .align 2 gMossdeepCity_FishingMons:: @ 855249C - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gMossdeepCity_FishingMonsInfo:: @ 85524C4 @@ -2846,11 +2846,11 @@ gMossdeepCity_FishingMonsInfo:: @ 85524C4 .align 2 gPacifidlogTown_WaterMons:: @ 85524CC - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gPacifidlogTown_WaterMonsInfo:: @ 85524E0 @@ -2859,16 +2859,16 @@ gPacifidlogTown_WaterMonsInfo:: @ 85524E0 .align 2 gPacifidlogTown_FishingMons:: @ 85524E8 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon TENTACOOL, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon SHARPEDO, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon WAILMER, 25, 30 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_TENTACOOL, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_SHARPEDO, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_WAILMER, 25, 30 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gPacifidlogTown_FishingMonsInfo:: @ 8552510 @@ -2877,11 +2877,11 @@ gPacifidlogTown_FishingMonsInfo:: @ 8552510 .align 2 gEverGrandeCity_WaterMons:: @ 8552518 - wild_mon TENTACOOL, 5, 35 - wild_mon WINGULL, 10, 30 - wild_mon WINGULL, 15, 25 - wild_mon PELIPPER, 25, 30 - wild_mon PELIPPER, 25, 30 + wild_mon SPECIES_TENTACOOL, 5, 35 + wild_mon SPECIES_WINGULL, 10, 30 + wild_mon SPECIES_WINGULL, 15, 25 + wild_mon SPECIES_PELIPPER, 25, 30 + wild_mon SPECIES_PELIPPER, 25, 30 .align 2 gEverGrandeCity_WaterMonsInfo:: @ 855252C @@ -2890,16 +2890,16 @@ gEverGrandeCity_WaterMonsInfo:: @ 855252C .align 2 gEverGrandeCity_FishingMons:: @ 8552534 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon LUVDISC, 10, 30 - wild_mon WAILMER, 10, 30 - wild_mon LUVDISC, 30, 35 - wild_mon WAILMER, 30, 35 - wild_mon CORSOLA, 30, 35 - wild_mon WAILMER, 35, 40 - wild_mon WAILMER, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_LUVDISC, 10, 30 + wild_mon SPECIES_WAILMER, 10, 30 + wild_mon SPECIES_LUVDISC, 30, 35 + wild_mon SPECIES_WAILMER, 30, 35 + wild_mon SPECIES_CORSOLA, 30, 35 + wild_mon SPECIES_WAILMER, 35, 40 + wild_mon SPECIES_WAILMER, 40, 45 .align 2 gEverGrandeCity_FishingMonsInfo:: @ 855255C @@ -2908,11 +2908,11 @@ gEverGrandeCity_FishingMonsInfo:: @ 855255C .align 2 gPetalburgCity_WaterMons:: @ 8552564 - wild_mon MARILL, 20, 30 - wild_mon MARILL, 10, 20 - wild_mon MARILL, 30, 35 - wild_mon MARILL, 5, 10 - wild_mon MARILL, 5, 10 + wild_mon SPECIES_MARILL, 20, 30 + wild_mon SPECIES_MARILL, 10, 20 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_MARILL, 5, 10 + wild_mon SPECIES_MARILL, 5, 10 .align 2 gPetalburgCity_WaterMonsInfo:: @ 8552578 @@ -2921,16 +2921,16 @@ gPetalburgCity_WaterMonsInfo:: @ 8552578 .align 2 gPetalburgCity_FishingMons:: @ 8552580 - wild_mon MAGIKARP, 5, 10 - wild_mon GOLDEEN, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon GOLDEEN, 10, 30 - wild_mon CORPHISH, 10, 30 - wild_mon CORPHISH, 25, 30 - wild_mon CORPHISH, 30, 35 - wild_mon CORPHISH, 20, 25 - wild_mon CORPHISH, 35, 40 - wild_mon CORPHISH, 40, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_GOLDEEN, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_GOLDEEN, 10, 30 + wild_mon SPECIES_CORPHISH, 10, 30 + wild_mon SPECIES_CORPHISH, 25, 30 + wild_mon SPECIES_CORPHISH, 30, 35 + wild_mon SPECIES_CORPHISH, 20, 25 + wild_mon SPECIES_CORPHISH, 35, 40 + wild_mon SPECIES_CORPHISH, 40, 45 .align 2 gPetalburgCity_FishingMonsInfo:: @ 85525A8 @@ -2939,11 +2939,11 @@ gPetalburgCity_FishingMonsInfo:: @ 85525A8 .align 2 gUnderwater1_WaterMons:: @ 85525B0 - wild_mon CLAMPERL, 20, 30 - wild_mon CHINCHOU, 20, 30 - wild_mon CLAMPERL, 30, 35 - wild_mon RELICANTH, 30, 35 - wild_mon RELICANTH, 30, 35 + wild_mon SPECIES_CLAMPERL, 20, 30 + wild_mon SPECIES_CHINCHOU, 20, 30 + wild_mon SPECIES_CLAMPERL, 30, 35 + wild_mon SPECIES_RELICANTH, 30, 35 + wild_mon SPECIES_RELICANTH, 30, 35 .align 2 gUnderwater1_WaterMonsInfo:: @ 85525C4 @@ -2952,18 +2952,18 @@ gUnderwater1_WaterMonsInfo:: @ 85525C4 .align 2 gShoalCave_LowTideIceRoom_LandMons:: @ 85525CC - wild_mon ZUBAT, 26 - wild_mon SPHEAL, 26 - wild_mon ZUBAT, 28 - wild_mon SPHEAL, 28 - wild_mon ZUBAT, 30 - wild_mon SPHEAL, 30 - wild_mon SNORUNT, 26 - wild_mon SPHEAL, 32 - wild_mon GOLBAT, 30 - wild_mon SNORUNT, 28 - wild_mon GOLBAT, 32 - wild_mon SNORUNT, 30 + wild_mon SPECIES_ZUBAT, 26 + wild_mon SPECIES_SPHEAL, 26 + wild_mon SPECIES_ZUBAT, 28 + wild_mon SPECIES_SPHEAL, 28 + wild_mon SPECIES_ZUBAT, 30 + wild_mon SPECIES_SPHEAL, 30 + wild_mon SPECIES_SNORUNT, 26 + wild_mon SPECIES_SPHEAL, 32 + wild_mon SPECIES_GOLBAT, 30 + wild_mon SPECIES_SNORUNT, 28 + wild_mon SPECIES_GOLBAT, 32 + wild_mon SPECIES_SNORUNT, 30 .align 2 gShoalCave_LowTideIceRoom_LandMonsInfo:: @ 85525FC @@ -2972,18 +2972,18 @@ gShoalCave_LowTideIceRoom_LandMonsInfo:: @ 85525FC .align 2 gSkyPillar_1F_LandMons:: @ 8552604 - wild_mon SABLEYE, 33 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon SABLEYE, 34 - wild_mon CLAYDOL, 36 - wild_mon BANETTE, 37 - wild_mon BANETTE, 38 - wild_mon CLAYDOL, 36 - wild_mon CLAYDOL, 37 - wild_mon CLAYDOL, 38 - wild_mon CLAYDOL, 37 - wild_mon CLAYDOL, 38 + wild_mon SPECIES_SABLEYE, 33 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_BANETTE, 37 + wild_mon SPECIES_BANETTE, 38 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_CLAYDOL, 37 + wild_mon SPECIES_CLAYDOL, 38 + wild_mon SPECIES_CLAYDOL, 37 + wild_mon SPECIES_CLAYDOL, 38 .align 2 gSkyPillar_1F_LandMonsInfo:: @ 8552634 @@ -2992,11 +2992,11 @@ gSkyPillar_1F_LandMonsInfo:: @ 8552634 .align 2 gSootopolisCity_WaterMons:: @ 855263C - wild_mon MAGIKARP, 5, 35 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 15, 25 - wild_mon MAGIKARP, 25, 30 - wild_mon MAGIKARP, 25, 30 + wild_mon SPECIES_MAGIKARP, 5, 35 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 15, 25 + wild_mon SPECIES_MAGIKARP, 25, 30 + wild_mon SPECIES_MAGIKARP, 25, 30 .align 2 gSootopolisCity_WaterMonsInfo:: @ 8552650 @@ -3005,16 +3005,16 @@ gSootopolisCity_WaterMonsInfo:: @ 8552650 .align 2 gSootopolisCity_FishingMons:: @ 8552658 - wild_mon MAGIKARP, 5, 10 - wild_mon TENTACOOL, 5, 10 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 10, 30 - wild_mon MAGIKARP, 30, 35 - wild_mon MAGIKARP, 30, 35 - wild_mon GYARADOS, 35, 40 - wild_mon GYARADOS, 35, 45 - wild_mon GYARADOS, 5, 45 + wild_mon SPECIES_MAGIKARP, 5, 10 + wild_mon SPECIES_TENTACOOL, 5, 10 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 10, 30 + wild_mon SPECIES_MAGIKARP, 30, 35 + wild_mon SPECIES_MAGIKARP, 30, 35 + wild_mon SPECIES_GYARADOS, 35, 40 + wild_mon SPECIES_GYARADOS, 35, 45 + wild_mon SPECIES_GYARADOS, 5, 45 .align 2 gSootopolisCity_FishingMonsInfo:: @ 8552680 @@ -3023,18 +3023,18 @@ gSootopolisCity_FishingMonsInfo:: @ 8552680 .align 2 gSkyPillar_3F_LandMons:: @ 8552688 - wild_mon SABLEYE, 33 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon SABLEYE, 34 - wild_mon CLAYDOL, 36 - wild_mon BANETTE, 37 - wild_mon BANETTE, 38 - wild_mon CLAYDOL, 36 - wild_mon CLAYDOL, 37 - wild_mon CLAYDOL, 38 - wild_mon CLAYDOL, 37 - wild_mon CLAYDOL, 38 + wild_mon SPECIES_SABLEYE, 33 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_BANETTE, 37 + wild_mon SPECIES_BANETTE, 38 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_CLAYDOL, 37 + wild_mon SPECIES_CLAYDOL, 38 + wild_mon SPECIES_CLAYDOL, 37 + wild_mon SPECIES_CLAYDOL, 38 .align 2 gSkyPillar_3F_LandMonsInfo:: @ 85526B8 @@ -3043,18 +3043,18 @@ gSkyPillar_3F_LandMonsInfo:: @ 85526B8 .align 2 gSkyPillar_5F_LandMons:: @ 85526C0 - wild_mon SABLEYE, 33 - wild_mon GOLBAT, 34 - wild_mon GOLBAT, 35 - wild_mon SABLEYE, 34 - wild_mon CLAYDOL, 36 - wild_mon BANETTE, 37 - wild_mon BANETTE, 38 - wild_mon CLAYDOL, 36 - wild_mon CLAYDOL, 37 - wild_mon ALTARIA, 38 - wild_mon ALTARIA, 39 - wild_mon ALTARIA, 39 + wild_mon SPECIES_SABLEYE, 33 + wild_mon SPECIES_GOLBAT, 34 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SABLEYE, 34 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_BANETTE, 37 + wild_mon SPECIES_BANETTE, 38 + wild_mon SPECIES_CLAYDOL, 36 + wild_mon SPECIES_CLAYDOL, 37 + wild_mon SPECIES_ALTARIA, 38 + wild_mon SPECIES_ALTARIA, 39 + wild_mon SPECIES_ALTARIA, 39 .align 2 gSkyPillar_5F_LandMonsInfo:: @ 85526F0 @@ -3063,18 +3063,18 @@ gSkyPillar_5F_LandMonsInfo:: @ 85526F0 .align 2 gSafariZone_Southeast_LandMons:: @ 85526F8 - wild_mon SUNKERN, 33 - wild_mon MAREEP, 34 - wild_mon SUNKERN, 35 - wild_mon MAREEP, 36 - wild_mon AIPOM, 34 - wild_mon SPINARAK, 33 - wild_mon HOOTHOOT, 35 - wild_mon SNUBBULL, 34 - wild_mon STANTLER, 36 - wild_mon GLIGAR, 37 - wild_mon STANTLER, 39 - wild_mon GLIGAR, 40 + wild_mon SPECIES_SUNKERN, 33 + wild_mon SPECIES_MAREEP, 34 + wild_mon SPECIES_SUNKERN, 35 + wild_mon SPECIES_MAREEP, 36 + wild_mon SPECIES_AIPOM, 34 + wild_mon SPECIES_SPINARAK, 33 + wild_mon SPECIES_HOOTHOOT, 35 + wild_mon SPECIES_SNUBBULL, 34 + wild_mon SPECIES_STANTLER, 36 + wild_mon SPECIES_GLIGAR, 37 + wild_mon SPECIES_STANTLER, 39 + wild_mon SPECIES_GLIGAR, 40 .align 2 gSafariZone_Southeast_LandMonsInfo:: @ 8552728 @@ -3083,11 +3083,11 @@ gSafariZone_Southeast_LandMonsInfo:: @ 8552728 .align 2 gSafariZone_Southeast_WaterMons:: @ 8552730 - wild_mon WOOPER, 25, 30 - wild_mon MARILL, 25, 30 - wild_mon MARILL, 25, 30 - wild_mon MARILL, 30, 35 - wild_mon QUAGSIRE, 35, 40 + wild_mon SPECIES_WOOPER, 25, 30 + wild_mon SPECIES_MARILL, 25, 30 + wild_mon SPECIES_MARILL, 25, 30 + wild_mon SPECIES_MARILL, 30, 35 + wild_mon SPECIES_QUAGSIRE, 35, 40 .align 2 gSafariZone_Southeast_WaterMonsInfo:: @ 8552744 @@ -3096,16 +3096,16 @@ gSafariZone_Southeast_WaterMonsInfo:: @ 8552744 .align 2 gSafariZone_Southeast_FishingMons:: @ 855274C - wild_mon MAGIKARP, 25, 30 - wild_mon GOLDEEN, 25, 30 - wild_mon MAGIKARP, 25, 30 - wild_mon GOLDEEN, 25, 30 - wild_mon REMORAID, 30, 35 - wild_mon GOLDEEN, 25, 30 - wild_mon REMORAID, 25, 30 - wild_mon REMORAID, 30, 35 - wild_mon REMORAID, 30, 35 - wild_mon OCTILLERY, 35, 40 + wild_mon SPECIES_MAGIKARP, 25, 30 + wild_mon SPECIES_GOLDEEN, 25, 30 + wild_mon SPECIES_MAGIKARP, 25, 30 + wild_mon SPECIES_GOLDEEN, 25, 30 + wild_mon SPECIES_REMORAID, 30, 35 + wild_mon SPECIES_GOLDEEN, 25, 30 + wild_mon SPECIES_REMORAID, 25, 30 + wild_mon SPECIES_REMORAID, 30, 35 + wild_mon SPECIES_REMORAID, 30, 35 + wild_mon SPECIES_OCTILLERY, 35, 40 .align 2 gSafariZone_Southeast_FishingMonsInfo:: @ 8552774 @@ -3114,18 +3114,18 @@ gSafariZone_Southeast_FishingMonsInfo:: @ 8552774 .align 2 gSafariZone_Northeast_LandMons:: @ 855277C - wild_mon AIPOM, 33 - wild_mon TEDDIURSA, 34 - wild_mon AIPOM, 35 - wild_mon TEDDIURSA, 36 - wild_mon SUNKERN, 34 - wild_mon LEDYBA, 33 - wild_mon HOOTHOOT, 35 - wild_mon PINECO, 34 - wild_mon HOUNDOUR, 36 - wild_mon MILTANK, 37 - wild_mon HOUNDOUR, 39 - wild_mon MILTANK, 40 + wild_mon SPECIES_AIPOM, 33 + wild_mon SPECIES_TEDDIURSA, 34 + wild_mon SPECIES_AIPOM, 35 + wild_mon SPECIES_TEDDIURSA, 36 + wild_mon SPECIES_SUNKERN, 34 + wild_mon SPECIES_LEDYBA, 33 + wild_mon SPECIES_HOOTHOOT, 35 + wild_mon SPECIES_PINECO, 34 + wild_mon SPECIES_HOUNDOUR, 36 + wild_mon SPECIES_MILTANK, 37 + wild_mon SPECIES_HOUNDOUR, 39 + wild_mon SPECIES_MILTANK, 40 .align 2 gSafariZone_Northeast_LandMonsInfo:: @ 85527AC @@ -3134,11 +3134,11 @@ gSafariZone_Northeast_LandMonsInfo:: @ 85527AC .align 2 gSafariZone_Northeast_RockSmashMons:: @ 85527B4 - wild_mon SHUCKLE, 25, 30 - wild_mon SHUCKLE, 20, 25 - wild_mon SHUCKLE, 30, 35 - wild_mon SHUCKLE, 30, 35 - wild_mon SHUCKLE, 35, 40 + wild_mon SPECIES_SHUCKLE, 25, 30 + wild_mon SPECIES_SHUCKLE, 20, 25 + wild_mon SPECIES_SHUCKLE, 30, 35 + wild_mon SPECIES_SHUCKLE, 30, 35 + wild_mon SPECIES_SHUCKLE, 35, 40 .align 2 gSafariZone_Northeast_RockSmashMonsInfo:: @ 85527C8 @@ -3147,18 +3147,18 @@ gSafariZone_Northeast_RockSmashMonsInfo:: @ 85527C8 .align 2 gMagmaHideout_1F_LandMons:: @ 85527D0 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_1F_LandMonsInfo:: @ 8552800 @@ -3167,18 +3167,18 @@ gMagmaHideout_1F_LandMonsInfo:: @ 8552800 .align 2 gMagmaHideout_2F_1R_LandMons:: @ 8552808 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_2F_1R_LandMonsInfo:: @ 8552838 @@ -3187,18 +3187,18 @@ gMagmaHideout_2F_1R_LandMonsInfo:: @ 8552838 .align 2 gMagmaHideout_2F_2R_LandMons:: @ 8552840 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_2F_2R_LandMonsInfo:: @ 8552870 @@ -3207,18 +3207,18 @@ gMagmaHideout_2F_2R_LandMonsInfo:: @ 8552870 .align 2 gMagmaHideout_3F_1R_LandMons:: @ 8552878 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_3F_1R_LandMonsInfo:: @ 85528A8 @@ -3227,18 +3227,18 @@ gMagmaHideout_3F_1R_LandMonsInfo:: @ 85528A8 .align 2 gMagmaHideout_3F_2R_LandMons:: @ 85528B0 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_3F_2R_LandMonsInfo:: @ 85528E0 @@ -3247,18 +3247,18 @@ gMagmaHideout_3F_2R_LandMonsInfo:: @ 85528E0 .align 2 gMagmaHideout_4F_LandMons:: @ 85528E8 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_4F_LandMonsInfo:: @ 8552918 @@ -3267,18 +3267,18 @@ gMagmaHideout_4F_LandMonsInfo:: @ 8552918 .align 2 gMagmaHideout_3F_3R_LandMons:: @ 8552920 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_3F_3R_LandMonsInfo:: @ 8552950 @@ -3287,18 +3287,18 @@ gMagmaHideout_3F_3R_LandMonsInfo:: @ 8552950 .align 2 gMagmaHideout_2F_3R_LandMons:: @ 8552958 - wild_mon GEODUDE, 27 - wild_mon TORKOAL, 28 - wild_mon GEODUDE, 28 - wild_mon TORKOAL, 30 - wild_mon GEODUDE, 29 - wild_mon GEODUDE, 30 - wild_mon GEODUDE, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 30 - wild_mon GRAVELER, 31 - wild_mon GRAVELER, 32 - wild_mon GRAVELER, 33 + wild_mon SPECIES_GEODUDE, 27 + wild_mon SPECIES_TORKOAL, 28 + wild_mon SPECIES_GEODUDE, 28 + wild_mon SPECIES_TORKOAL, 30 + wild_mon SPECIES_GEODUDE, 29 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GEODUDE, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 30 + wild_mon SPECIES_GRAVELER, 31 + wild_mon SPECIES_GRAVELER, 32 + wild_mon SPECIES_GRAVELER, 33 .align 2 gMagmaHideout_2F_3R_LandMonsInfo:: @ 8552988 @@ -3307,18 +3307,18 @@ gMagmaHideout_2F_3R_LandMonsInfo:: @ 8552988 .align 2 gMirageTower_1F_LandMons:: @ 8552990 - wild_mon SANDSHREW, 21 - wild_mon TRAPINCH, 21 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 22 - wild_mon TRAPINCH, 22 - wild_mon SANDSHREW, 23 - wild_mon TRAPINCH, 23 - wild_mon SANDSHREW, 24 - wild_mon TRAPINCH, 24 + wild_mon SPECIES_SANDSHREW, 21 + wild_mon SPECIES_TRAPINCH, 21 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 22 + wild_mon SPECIES_TRAPINCH, 22 + wild_mon SPECIES_SANDSHREW, 23 + wild_mon SPECIES_TRAPINCH, 23 + wild_mon SPECIES_SANDSHREW, 24 + wild_mon SPECIES_TRAPINCH, 24 .align 2 gMirageTower_1F_LandMonsInfo:: @ 85529C0 @@ -3327,18 +3327,18 @@ gMirageTower_1F_LandMonsInfo:: @ 85529C0 .align 2 gMirageTower_2F_LandMons:: @ 85529C8 - wild_mon SANDSHREW, 21 - wild_mon TRAPINCH, 21 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 22 - wild_mon TRAPINCH, 22 - wild_mon SANDSHREW, 23 - wild_mon TRAPINCH, 23 - wild_mon SANDSHREW, 24 - wild_mon TRAPINCH, 24 + wild_mon SPECIES_SANDSHREW, 21 + wild_mon SPECIES_TRAPINCH, 21 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 22 + wild_mon SPECIES_TRAPINCH, 22 + wild_mon SPECIES_SANDSHREW, 23 + wild_mon SPECIES_TRAPINCH, 23 + wild_mon SPECIES_SANDSHREW, 24 + wild_mon SPECIES_TRAPINCH, 24 .align 2 gMirageTower_2F_LandMonsInfo:: @ 85529F8 @@ -3347,18 +3347,18 @@ gMirageTower_2F_LandMonsInfo:: @ 85529F8 .align 2 gMirageTower_3F_LandMons:: @ 8552A00 - wild_mon SANDSHREW, 21 - wild_mon TRAPINCH, 21 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 22 - wild_mon TRAPINCH, 22 - wild_mon SANDSHREW, 23 - wild_mon TRAPINCH, 23 - wild_mon SANDSHREW, 24 - wild_mon TRAPINCH, 24 + wild_mon SPECIES_SANDSHREW, 21 + wild_mon SPECIES_TRAPINCH, 21 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 22 + wild_mon SPECIES_TRAPINCH, 22 + wild_mon SPECIES_SANDSHREW, 23 + wild_mon SPECIES_TRAPINCH, 23 + wild_mon SPECIES_SANDSHREW, 24 + wild_mon SPECIES_TRAPINCH, 24 .align 2 gMirageTower_3F_LandMonsInfo:: @ 8552A30 @@ -3367,18 +3367,18 @@ gMirageTower_3F_LandMonsInfo:: @ 8552A30 .align 2 gMirageTower_4F_LandMons:: @ 8552A38 - wild_mon SANDSHREW, 21 - wild_mon TRAPINCH, 21 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 20 - wild_mon TRAPINCH, 20 - wild_mon SANDSHREW, 22 - wild_mon TRAPINCH, 22 - wild_mon SANDSHREW, 23 - wild_mon TRAPINCH, 23 - wild_mon SANDSHREW, 24 - wild_mon TRAPINCH, 24 + wild_mon SPECIES_SANDSHREW, 21 + wild_mon SPECIES_TRAPINCH, 21 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 20 + wild_mon SPECIES_TRAPINCH, 20 + wild_mon SPECIES_SANDSHREW, 22 + wild_mon SPECIES_TRAPINCH, 22 + wild_mon SPECIES_SANDSHREW, 23 + wild_mon SPECIES_TRAPINCH, 23 + wild_mon SPECIES_SANDSHREW, 24 + wild_mon SPECIES_TRAPINCH, 24 .align 2 gMirageTower_4F_LandMonsInfo:: @ 8552A68 @@ -3387,18 +3387,18 @@ gMirageTower_4F_LandMonsInfo:: @ 8552A68 .align 2 gDesertUnderpass_LandMons:: @ 8552A70 - wild_mon DITTO, 38 - wild_mon WHISMUR, 35 - wild_mon DITTO, 40 - wild_mon LOUDRED, 40 - wild_mon DITTO, 41 - wild_mon WHISMUR, 36 - wild_mon LOUDRED, 38 - wild_mon DITTO, 42 - wild_mon WHISMUR, 38 - wild_mon DITTO, 43 - wild_mon LOUDRED, 44 - wild_mon DITTO, 45 + wild_mon SPECIES_DITTO, 38 + wild_mon SPECIES_WHISMUR, 35 + wild_mon SPECIES_DITTO, 40 + wild_mon SPECIES_LOUDRED, 40 + wild_mon SPECIES_DITTO, 41 + wild_mon SPECIES_WHISMUR, 36 + wild_mon SPECIES_LOUDRED, 38 + wild_mon SPECIES_DITTO, 42 + wild_mon SPECIES_WHISMUR, 38 + wild_mon SPECIES_DITTO, 43 + wild_mon SPECIES_LOUDRED, 44 + wild_mon SPECIES_DITTO, 45 .align 2 gDesertUnderpass_LandMonsInfo:: @ 8552AA0 @@ -3407,18 +3407,18 @@ gDesertUnderpass_LandMonsInfo:: @ 8552AA0 .align 2 gArtisanCave_B1F_LandMons:: @ 8552AA8 - wild_mon SMEARGLE, 40 - wild_mon SMEARGLE, 41 - wild_mon SMEARGLE, 42 - wild_mon SMEARGLE, 43 - wild_mon SMEARGLE, 44 - wild_mon SMEARGLE, 45 - wild_mon SMEARGLE, 46 - wild_mon SMEARGLE, 47 - wild_mon SMEARGLE, 48 - wild_mon SMEARGLE, 49 - wild_mon SMEARGLE, 50 - wild_mon SMEARGLE, 50 + wild_mon SPECIES_SMEARGLE, 40 + wild_mon SPECIES_SMEARGLE, 41 + wild_mon SPECIES_SMEARGLE, 42 + wild_mon SPECIES_SMEARGLE, 43 + wild_mon SPECIES_SMEARGLE, 44 + wild_mon SPECIES_SMEARGLE, 45 + wild_mon SPECIES_SMEARGLE, 46 + wild_mon SPECIES_SMEARGLE, 47 + wild_mon SPECIES_SMEARGLE, 48 + wild_mon SPECIES_SMEARGLE, 49 + wild_mon SPECIES_SMEARGLE, 50 + wild_mon SPECIES_SMEARGLE, 50 .align 2 gArtisanCave_B1F_LandMonsInfo:: @ 8552AD8 @@ -3427,18 +3427,18 @@ gArtisanCave_B1F_LandMonsInfo:: @ 8552AD8 .align 2 gArtisanCave_1F_LandMons:: @ 8552AE0 - wild_mon SMEARGLE, 40 - wild_mon SMEARGLE, 41 - wild_mon SMEARGLE, 42 - wild_mon SMEARGLE, 43 - wild_mon SMEARGLE, 44 - wild_mon SMEARGLE, 45 - wild_mon SMEARGLE, 46 - wild_mon SMEARGLE, 47 - wild_mon SMEARGLE, 48 - wild_mon SMEARGLE, 49 - wild_mon SMEARGLE, 50 - wild_mon SMEARGLE, 50 + wild_mon SPECIES_SMEARGLE, 40 + wild_mon SPECIES_SMEARGLE, 41 + wild_mon SPECIES_SMEARGLE, 42 + wild_mon SPECIES_SMEARGLE, 43 + wild_mon SPECIES_SMEARGLE, 44 + wild_mon SPECIES_SMEARGLE, 45 + wild_mon SPECIES_SMEARGLE, 46 + wild_mon SPECIES_SMEARGLE, 47 + wild_mon SPECIES_SMEARGLE, 48 + wild_mon SPECIES_SMEARGLE, 49 + wild_mon SPECIES_SMEARGLE, 50 + wild_mon SPECIES_SMEARGLE, 50 .align 2 gArtisanCave_1F_LandMonsInfo:: @ 8552B10 @@ -3447,18 +3447,18 @@ gArtisanCave_1F_LandMonsInfo:: @ 8552B10 .align 2 gAlteringCave1_LandMons:: @ 8552B18 - wild_mon ZUBAT, 10 - wild_mon ZUBAT, 12 - wild_mon ZUBAT, 8 - wild_mon ZUBAT, 14 - wild_mon ZUBAT, 10 - wild_mon ZUBAT, 12 - wild_mon ZUBAT, 16 - wild_mon ZUBAT, 6 - wild_mon ZUBAT, 8 - wild_mon ZUBAT, 14 - wild_mon ZUBAT, 8 - wild_mon ZUBAT, 14 + wild_mon SPECIES_ZUBAT, 10 + wild_mon SPECIES_ZUBAT, 12 + wild_mon SPECIES_ZUBAT, 8 + wild_mon SPECIES_ZUBAT, 14 + wild_mon SPECIES_ZUBAT, 10 + wild_mon SPECIES_ZUBAT, 12 + wild_mon SPECIES_ZUBAT, 16 + wild_mon SPECIES_ZUBAT, 6 + wild_mon SPECIES_ZUBAT, 8 + wild_mon SPECIES_ZUBAT, 14 + wild_mon SPECIES_ZUBAT, 8 + wild_mon SPECIES_ZUBAT, 14 .align 2 gAlteringCave1_LandMonsInfo:: @ 8552B48 @@ -3467,18 +3467,18 @@ gAlteringCave1_LandMonsInfo:: @ 8552B48 .align 2 gAlteringCave2_LandMons:: @ 8552B50 - wild_mon MAREEP, 7 - wild_mon MAREEP, 9 - wild_mon MAREEP, 5 - wild_mon MAREEP, 11 - wild_mon MAREEP, 7 - wild_mon MAREEP, 9 - wild_mon MAREEP, 13 - wild_mon MAREEP, 3 - wild_mon MAREEP, 5 - wild_mon MAREEP, 11 - wild_mon MAREEP, 5 - wild_mon MAREEP, 11 + wild_mon SPECIES_MAREEP, 7 + wild_mon SPECIES_MAREEP, 9 + wild_mon SPECIES_MAREEP, 5 + wild_mon SPECIES_MAREEP, 11 + wild_mon SPECIES_MAREEP, 7 + wild_mon SPECIES_MAREEP, 9 + wild_mon SPECIES_MAREEP, 13 + wild_mon SPECIES_MAREEP, 3 + wild_mon SPECIES_MAREEP, 5 + wild_mon SPECIES_MAREEP, 11 + wild_mon SPECIES_MAREEP, 5 + wild_mon SPECIES_MAREEP, 11 .align 2 gAlteringCave2_LandMonsInfo:: @ 8552B80 @@ -3487,18 +3487,18 @@ gAlteringCave2_LandMonsInfo:: @ 8552B80 .align 2 gAlteringCave3_LandMons:: @ 8552B88 - wild_mon PINECO, 23 - wild_mon PINECO, 25 - wild_mon PINECO, 22 - wild_mon PINECO, 27 - wild_mon PINECO, 23 - wild_mon PINECO, 25 - wild_mon PINECO, 29 - wild_mon PINECO, 19 - wild_mon PINECO, 21 - wild_mon PINECO, 27 - wild_mon PINECO, 21 - wild_mon PINECO, 27 + wild_mon SPECIES_PINECO, 23 + wild_mon SPECIES_PINECO, 25 + wild_mon SPECIES_PINECO, 22 + wild_mon SPECIES_PINECO, 27 + wild_mon SPECIES_PINECO, 23 + wild_mon SPECIES_PINECO, 25 + wild_mon SPECIES_PINECO, 29 + wild_mon SPECIES_PINECO, 19 + wild_mon SPECIES_PINECO, 21 + wild_mon SPECIES_PINECO, 27 + wild_mon SPECIES_PINECO, 21 + wild_mon SPECIES_PINECO, 27 .align 2 gAlteringCave3_LandMonsInfo:: @ 8552BB8 @@ -3507,18 +3507,18 @@ gAlteringCave3_LandMonsInfo:: @ 8552BB8 .align 2 gAlteringCave4_LandMons:: @ 8552BC0 - wild_mon HOUNDOUR, 16 - wild_mon HOUNDOUR, 18 - wild_mon HOUNDOUR, 14 - wild_mon HOUNDOUR, 20 - wild_mon HOUNDOUR, 16 - wild_mon HOUNDOUR, 18 - wild_mon HOUNDOUR, 22 - wild_mon HOUNDOUR, 12 - wild_mon HOUNDOUR, 14 - wild_mon HOUNDOUR, 20 - wild_mon HOUNDOUR, 14 - wild_mon HOUNDOUR, 20 + wild_mon SPECIES_HOUNDOUR, 16 + wild_mon SPECIES_HOUNDOUR, 18 + wild_mon SPECIES_HOUNDOUR, 14 + wild_mon SPECIES_HOUNDOUR, 20 + wild_mon SPECIES_HOUNDOUR, 16 + wild_mon SPECIES_HOUNDOUR, 18 + wild_mon SPECIES_HOUNDOUR, 22 + wild_mon SPECIES_HOUNDOUR, 12 + wild_mon SPECIES_HOUNDOUR, 14 + wild_mon SPECIES_HOUNDOUR, 20 + wild_mon SPECIES_HOUNDOUR, 14 + wild_mon SPECIES_HOUNDOUR, 20 .align 2 gAlteringCave4_LandMonsInfo:: @ 8552BF0 @@ -3527,18 +3527,18 @@ gAlteringCave4_LandMonsInfo:: @ 8552BF0 .align 2 gAlteringCave5_LandMons:: @ 8552BF8 - wild_mon TEDDIURSA, 10 - wild_mon TEDDIURSA, 12 - wild_mon TEDDIURSA, 8 - wild_mon TEDDIURSA, 14 - wild_mon TEDDIURSA, 10 - wild_mon TEDDIURSA, 12 - wild_mon TEDDIURSA, 16 - wild_mon TEDDIURSA, 6 - wild_mon TEDDIURSA, 8 - wild_mon TEDDIURSA, 14 - wild_mon TEDDIURSA, 8 - wild_mon TEDDIURSA, 14 + wild_mon SPECIES_TEDDIURSA, 10 + wild_mon SPECIES_TEDDIURSA, 12 + wild_mon SPECIES_TEDDIURSA, 8 + wild_mon SPECIES_TEDDIURSA, 14 + wild_mon SPECIES_TEDDIURSA, 10 + wild_mon SPECIES_TEDDIURSA, 12 + wild_mon SPECIES_TEDDIURSA, 16 + wild_mon SPECIES_TEDDIURSA, 6 + wild_mon SPECIES_TEDDIURSA, 8 + wild_mon SPECIES_TEDDIURSA, 14 + wild_mon SPECIES_TEDDIURSA, 8 + wild_mon SPECIES_TEDDIURSA, 14 .align 2 gAlteringCave5_LandMonsInfo:: @ 8552C28 @@ -3547,18 +3547,18 @@ gAlteringCave5_LandMonsInfo:: @ 8552C28 .align 2 gAlteringCave6_LandMons:: @ 8552C30 - wild_mon AIPOM, 22 - wild_mon AIPOM, 24 - wild_mon AIPOM, 20 - wild_mon AIPOM, 26 - wild_mon AIPOM, 22 - wild_mon AIPOM, 24 - wild_mon AIPOM, 28 - wild_mon AIPOM, 18 - wild_mon AIPOM, 20 - wild_mon AIPOM, 26 - wild_mon AIPOM, 20 - wild_mon AIPOM, 26 + wild_mon SPECIES_AIPOM, 22 + wild_mon SPECIES_AIPOM, 24 + wild_mon SPECIES_AIPOM, 20 + wild_mon SPECIES_AIPOM, 26 + wild_mon SPECIES_AIPOM, 22 + wild_mon SPECIES_AIPOM, 24 + wild_mon SPECIES_AIPOM, 28 + wild_mon SPECIES_AIPOM, 18 + wild_mon SPECIES_AIPOM, 20 + wild_mon SPECIES_AIPOM, 26 + wild_mon SPECIES_AIPOM, 20 + wild_mon SPECIES_AIPOM, 26 .align 2 gAlteringCave6_LandMonsInfo:: @ 8552C60 @@ -3567,18 +3567,18 @@ gAlteringCave6_LandMonsInfo:: @ 8552C60 .align 2 gAlteringCave7_LandMons:: @ 8552C68 - wild_mon SHUCKLE, 22 - wild_mon SHUCKLE, 24 - wild_mon SHUCKLE, 20 - wild_mon SHUCKLE, 26 - wild_mon SHUCKLE, 22 - wild_mon SHUCKLE, 24 - wild_mon SHUCKLE, 28 - wild_mon SHUCKLE, 18 - wild_mon SHUCKLE, 20 - wild_mon SHUCKLE, 26 - wild_mon SHUCKLE, 20 - wild_mon SHUCKLE, 26 + wild_mon SPECIES_SHUCKLE, 22 + wild_mon SPECIES_SHUCKLE, 24 + wild_mon SPECIES_SHUCKLE, 20 + wild_mon SPECIES_SHUCKLE, 26 + wild_mon SPECIES_SHUCKLE, 22 + wild_mon SPECIES_SHUCKLE, 24 + wild_mon SPECIES_SHUCKLE, 28 + wild_mon SPECIES_SHUCKLE, 18 + wild_mon SPECIES_SHUCKLE, 20 + wild_mon SPECIES_SHUCKLE, 26 + wild_mon SPECIES_SHUCKLE, 20 + wild_mon SPECIES_SHUCKLE, 26 .align 2 gAlteringCave7_LandMonsInfo:: @ 8552C98 @@ -3587,18 +3587,18 @@ gAlteringCave7_LandMonsInfo:: @ 8552C98 .align 2 gAlteringCave8_LandMons:: @ 8552CA0 - wild_mon STANTLER, 22 - wild_mon STANTLER, 24 - wild_mon STANTLER, 20 - wild_mon STANTLER, 26 - wild_mon STANTLER, 22 - wild_mon STANTLER, 24 - wild_mon STANTLER, 28 - wild_mon STANTLER, 18 - wild_mon STANTLER, 20 - wild_mon STANTLER, 26 - wild_mon STANTLER, 20 - wild_mon STANTLER, 26 + wild_mon SPECIES_STANTLER, 22 + wild_mon SPECIES_STANTLER, 24 + wild_mon SPECIES_STANTLER, 20 + wild_mon SPECIES_STANTLER, 26 + wild_mon SPECIES_STANTLER, 22 + wild_mon SPECIES_STANTLER, 24 + wild_mon SPECIES_STANTLER, 28 + wild_mon SPECIES_STANTLER, 18 + wild_mon SPECIES_STANTLER, 20 + wild_mon SPECIES_STANTLER, 26 + wild_mon SPECIES_STANTLER, 20 + wild_mon SPECIES_STANTLER, 26 .align 2 gAlteringCave8_LandMonsInfo:: @ 8552CD0 @@ -3607,18 +3607,18 @@ gAlteringCave8_LandMonsInfo:: @ 8552CD0 .align 2 gAlteringCave9_LandMons:: @ 8552CD8 - wild_mon SMEARGLE, 22 - wild_mon SMEARGLE, 24 - wild_mon SMEARGLE, 20 - wild_mon SMEARGLE, 26 - wild_mon SMEARGLE, 22 - wild_mon SMEARGLE, 24 - wild_mon SMEARGLE, 28 - wild_mon SMEARGLE, 18 - wild_mon SMEARGLE, 20 - wild_mon SMEARGLE, 26 - wild_mon SMEARGLE, 20 - wild_mon SMEARGLE, 26 + wild_mon SPECIES_SMEARGLE, 22 + wild_mon SPECIES_SMEARGLE, 24 + wild_mon SPECIES_SMEARGLE, 20 + wild_mon SPECIES_SMEARGLE, 26 + wild_mon SPECIES_SMEARGLE, 22 + wild_mon SPECIES_SMEARGLE, 24 + wild_mon SPECIES_SMEARGLE, 28 + wild_mon SPECIES_SMEARGLE, 18 + wild_mon SPECIES_SMEARGLE, 20 + wild_mon SPECIES_SMEARGLE, 26 + wild_mon SPECIES_SMEARGLE, 20 + wild_mon SPECIES_SMEARGLE, 26 .align 2 gAlteringCave9_LandMonsInfo:: @ 8552D08 @@ -3627,18 +3627,18 @@ gAlteringCave9_LandMonsInfo:: @ 8552D08 .align 2 gMeteorFalls_StevensCave_LandMons:: @ 8552D10 - wild_mon GOLBAT, 33 - wild_mon GOLBAT, 35 - wild_mon GOLBAT, 33 - wild_mon SOLROCK, 35 - wild_mon SOLROCK, 33 - wild_mon SOLROCK, 37 - wild_mon GOLBAT, 35 - wild_mon SOLROCK, 39 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 - wild_mon GOLBAT, 38 - wild_mon GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_GOLBAT, 33 + wild_mon SPECIES_SOLROCK, 35 + wild_mon SPECIES_SOLROCK, 33 + wild_mon SPECIES_SOLROCK, 37 + wild_mon SPECIES_GOLBAT, 35 + wild_mon SPECIES_SOLROCK, 39 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 + wild_mon SPECIES_GOLBAT, 38 + wild_mon SPECIES_GOLBAT, 40 .align 2 gMeteorFalls_StevensCave_LandMonsInfo:: @ 8552D40 diff --git a/graphics/interface/ball/dive.png b/graphics/interface/ball/dive.png Binary files differnew file mode 100644 index 000000000..5be9b1ed6 --- /dev/null +++ b/graphics/interface/ball/dive.png diff --git a/graphics/interface/ball/great.png b/graphics/interface/ball/great.png Binary files differnew file mode 100644 index 000000000..0c054d7d3 --- /dev/null +++ b/graphics/interface/ball/great.png diff --git a/graphics/interface/ball/luxury.png b/graphics/interface/ball/luxury.png Binary files differnew file mode 100644 index 000000000..8056416b2 --- /dev/null +++ b/graphics/interface/ball/luxury.png diff --git a/graphics/interface/ball/master.png b/graphics/interface/ball/master.png Binary files differnew file mode 100644 index 000000000..9787a8896 --- /dev/null +++ b/graphics/interface/ball/master.png diff --git a/graphics/interface/ball/nest.png b/graphics/interface/ball/nest.png Binary files differnew file mode 100644 index 000000000..a2fa81c1e --- /dev/null +++ b/graphics/interface/ball/nest.png diff --git a/graphics/interface/ball/net.png b/graphics/interface/ball/net.png Binary files differnew file mode 100644 index 000000000..6fef48101 --- /dev/null +++ b/graphics/interface/ball/net.png diff --git a/graphics/interface/ball/poke.png b/graphics/interface/ball/poke.png Binary files differnew file mode 100644 index 000000000..1e4aba669 --- /dev/null +++ b/graphics/interface/ball/poke.png diff --git a/graphics/interface/ball/premier.png b/graphics/interface/ball/premier.png Binary files differnew file mode 100644 index 000000000..f5aaadbaf --- /dev/null +++ b/graphics/interface/ball/premier.png diff --git a/graphics/interface/ball/repeat.png b/graphics/interface/ball/repeat.png Binary files differnew file mode 100644 index 000000000..5abe789a2 --- /dev/null +++ b/graphics/interface/ball/repeat.png diff --git a/graphics/interface/ball/safari.png b/graphics/interface/ball/safari.png Binary files differnew file mode 100644 index 000000000..0dd49aef9 --- /dev/null +++ b/graphics/interface/ball/safari.png diff --git a/graphics/interface/ball/timer.png b/graphics/interface/ball/timer.png Binary files differnew file mode 100644 index 000000000..2b63f6795 --- /dev/null +++ b/graphics/interface/ball/timer.png diff --git a/include/abilities.h b/include/abilities.h deleted file mode 100644 index 4c47025f8..000000000 --- a/include/abilities.h +++ /dev/null @@ -1,81 +0,0 @@ -enum -{ - ABILITY_NONE, - ABILITY_STENCH, - ABILITY_DRIZZLE, - ABILITY_SPEED_BOOST, - ABILITY_BATTLE_ARMOR, - ABILITY_STURDY, - ABILITY_DAMP, - ABILITY_LIMBER, - ABILITY_SAND_VEIL, - ABILITY_STATIC, - ABILITY_VOLT_ABSORB, - ABILITY_WATER_ABSORB, - ABILITY_OBLIVIOUS, - ABILITY_CLOUD_NINE, - ABILITY_COMPOUND_EYES, - ABILITY_INSOMNIA, - ABILITY_COLOR_CHANGE, - ABILITY_IMMUNITY, - ABILITY_FLASH_FIRE, - ABILITY_SHIELD_DUST, - ABILITY_OWN_TEMPO, - ABILITY_SUCTION_CUPS, - ABILITY_INTIMIDATE, - ABILITY_SHADOW_TAG, - ABILITY_ROUGH_SKIN, - ABILITY_WONDER_GUARD, - ABILITY_LEVITATE, - ABILITY_EFFECT_SPORE, - ABILITY_SYNCHRONIZE, - ABILITY_CLEAR_BODY, - ABILITY_NATURAL_CURE, - ABILITY_LIGHTNING_ROD, - ABILITY_SERENE_GRACE, - ABILITY_SWIFT_SWIM, - ABILITY_CHLOROPHYLL, - ABILITY_ILLUMINATE, - ABILITY_TRACE, - ABILITY_HUGE_POWER, - ABILITY_POISON_POINT, - ABILITY_INNER_FOCUS, - ABILITY_MAGMA_ARMOR, - ABILITY_WATER_VEIL, - ABILITY_MAGNET_PULL, - ABILITY_SOUNDPROOF, - ABILITY_RAIN_DISH, - ABILITY_SAND_STREAM, - ABILITY_PRESSURE, - ABILITY_THICK_FAT, - ABILITY_EARLY_BIRD, - ABILITY_FLAME_BODY, - ABILITY_RUN_AWAY, - ABILITY_KEEN_EYE, - ABILITY_HYPER_CUTTER, - ABILITY_PICKUP, - ABILITY_TRUANT, - ABILITY_HUSTLE, - ABILITY_CUTE_CHARM, - ABILITY_PLUS, - ABILITY_MINUS, - ABILITY_FORECAST, - ABILITY_STICKY_HOLD, - ABILITY_SHED_SKIN, - ABILITY_GUTS, - ABILITY_MARVEL_SCALE, - ABILITY_LIQUID_OOZE, - ABILITY_OVERGROW, - ABILITY_BLAZE, - ABILITY_TORRENT, - ABILITY_SWARM, - ABILITY_ROCK_HEAD, - ABILITY_DROUGHT, - ABILITY_ARENA_TRAP, - ABILITY_VITAL_SPIRIT, - ABILITY_WHITE_SMOKE, - ABILITY_PURE_POWER, - ABILITY_SHELL_ARMOR, - ABILITY_CACOPHONY, - ABILITY_AIR_LOCK -};
\ No newline at end of file diff --git a/include/battle.h b/include/battle.h index c172cb0f6..7c8c81f52 100644 --- a/include/battle.h +++ b/include/battle.h @@ -86,8 +86,9 @@ #define BATTLE_FORFEITED 0x9 #define BATTLE_OPPONENT_TELEPORTED 0xA -#define BATTLE_OUTCOME_BIT_x80 0x80 +#define OUTCOME_LINK_BATTLE_RUN 0x80 +#define STATUS_NONE 0x0 #define STATUS_SLEEP 0x7 #define STATUS_POISON 0x8 #define STATUS_BURN 0x10 @@ -615,10 +616,10 @@ struct BattleStruct u8 focusPunchBank; u8 field_49; u8 moneyMultiplier; - u8 field_4B; + u8 savedTurnActionNumber; u8 switchInAbilitiesCounter; - u8 field_4D; - u8 field_4E; + u8 faintedActionsState; + u8 faintedActionsBank; u8 field_4F; u16 expValue; u8 field_52; @@ -690,8 +691,8 @@ struct BattleStruct u8 field_182; u8 field_183; struct BattleEnigmaBerry battleEnigmaBerry; - u8 field_1A0; - u8 field_1A1; + u8 wishPerishSongState; + u8 wishPerishSongBank; bool8 overworldWeatherDone; u8 atkCancellerTracker; u8 field_1A4[96]; @@ -800,7 +801,7 @@ extern struct BattleStruct* gBattleStruct; #define B_ANIM_ITEM_STEAL 0x10 #define B_ANIM_SNATCH_MOVE 0x11 #define B_ANIM_FUTURE_SIGHT_HIT 0x12 -#define B_ANIM_x13 0x13 +#define B_ANIM_DOOM_DESIRE_HIT 0x13 #define B_ANIM_x14 0x14 #define B_ANIM_INGRAIN_HEAL 0x15 #define B_ANIM_WISH_HEAL 0x16 @@ -845,8 +846,8 @@ struct BattleScripting u8 animArg2; u16 tripleKickPower; u8 atk49_state; - u8 field_15; - u8 field_16; + u8 bankWithAbility; + u8 multihitMoveEffect; u8 bank; u8 animTurn; u8 animTargetsHit; @@ -932,7 +933,7 @@ struct BattleHealthboxInfo u8 flag_x1 : 1; u8 flag_x2 : 1; u8 flag_x4 : 1; - u8 flag_x8 : 1; + u8 ballAnimActive : 1; // 0x8 u8 statusAnimActive : 1; // x10 u8 animFromTableActive : 1; // x20 u8 specialAnimActive : 1; //x40 diff --git a/include/battle_anim.h b/include/battle_anim.h index c055e94fa..9fb7ccd53 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -79,11 +79,22 @@ void HandleIntroSlide(u8 terrainId); // battle_anim_80A5C6C.s void sub_80A6EEC(struct Sprite *sprite); +void sub_80A68D4(struct Sprite *sprite); +void sub_80A6F3C(struct Sprite *sprite); void sub_80A8278(void); void sub_80A6B30(struct UnknownAnimStruct2*); void sub_80A6B90(struct UnknownAnimStruct2*, u32 arg1); u8 sub_80A82E4(u8 bank); -u8 sub_80A5C6C(u8 bank, u8 attributeId); +bool8 AnimateBallThrow(struct Sprite *sprite); + +enum +{ + BANK_X_POS, + BANK_Y_POS, +}; + +u8 GetBankPosition(u8 bank, u8 attributeId); + bool8 IsBankSpritePresent(u8 bank); void sub_80A6C68(u8 arg0); u8 GetAnimBankSpriteId(u8 wantedBank); @@ -99,4 +110,9 @@ u8 GetSubstituteSpriteDefault_Y(u8 bank); // battle_anim_80A9C70.s void LaunchStatusAnimation(u8 bank, u8 statusAnimId); +// battle_anim_8170478.s +u8 ItemIdToBallId(u16 itemId); +u8 LaunchBallStarsTask(u8 x, u8 y, u8 kindOfStars, u8 arg3, u8 ballId); +u8 LaunchBallFadeMonTask(bool8 unFadeLater, u8 bank, u32 arg2, u8 ballId); + #endif // GUARD_BATTLE_ANIM_H diff --git a/include/battle_frontier_2.h b/include/battle_frontier_2.h index 4f37248cc..801c3f3ec 100644 --- a/include/battle_frontier_2.h +++ b/include/battle_frontier_2.h @@ -5,5 +5,6 @@ void sub_81A8934(u8); void sub_81A895C(void); u16 sub_81A89A0(u8); void sub_81A8AF8(void); +bool8 InBattlePike(void); #endif // GUARD_BATTLE_FRONTIER_2_H diff --git a/include/battle_move_effects.h b/include/battle_move_effects.h deleted file mode 100644 index 23c19ded7..000000000 --- a/include/battle_move_effects.h +++ /dev/null @@ -1,222 +0,0 @@ -#ifndef GUARD_BATTLE_MOVE_EFFECTS_H -#define GUARD_BATTLE_MOVE_EFFECTS_H - -enum -{ - EFFECT_HIT, - EFFECT_SLEEP, - EFFECT_POISON_HIT, - EFFECT_ABSORB, - EFFECT_BURN_HIT, - EFFECT_FREEZE_HIT, - EFFECT_PARALYZE_HIT, - EFFECT_EXPLOSION, - EFFECT_DREAM_EATER, - EFFECT_MIRROR_MOVE, - EFFECT_ATTACK_UP, - EFFECT_DEFENSE_UP, - EFFECT_SPEED_UP, - EFFECT_SPECIAL_ATTACK_UP, - EFFECT_SPECIAL_DEFENSE_UP, - EFFECT_ACCURACY_UP, - EFFECT_EVASION_UP, - EFFECT_ALWAYS_HIT, - EFFECT_ATTACK_DOWN, - EFFECT_DEFENSE_DOWN, - EFFECT_SPEED_DOWN, - EFFECT_SPECIAL_ATTACK_DOWN, // unused - EFFECT_SPECIAL_DEFENSE_DOWN, // unused - EFFECT_ACCURACY_DOWN, - EFFECT_EVASION_DOWN, - EFFECT_HAZE, - EFFECT_BIDE, - EFFECT_RAMPAGE, - EFFECT_ROAR, - EFFECT_MULTI_HIT, - EFFECT_CONVERSION, - EFFECT_FLINCH_HIT, - EFFECT_RESTORE_HP, - EFFECT_TOXIC, - EFFECT_PAY_DAY, - EFFECT_LIGHT_SCREEN, - EFFECT_TRI_ATTACK, - EFFECT_REST, - EFFECT_OHKO, - EFFECT_RAZOR_WIND, - EFFECT_SUPER_FANG, - EFFECT_DRAGON_RAGE, - EFFECT_TRAP, - EFFECT_HIGH_CRITICAL, - EFFECT_DOUBLE_HIT, - EFFECT_RECOIL_IF_MISS, - EFFECT_MIST, - EFFECT_FOCUS_ENERGY, - EFFECT_RECOIL, - EFFECT_CONFUSE, - EFFECT_ATTACK_UP_2, - EFFECT_DEFENSE_UP_2, - EFFECT_SPEED_UP_2, - EFFECT_SPECIAL_ATTACK_UP_2, - EFFECT_SPECIAL_DEFENSE_UP_2, - EFFECT_ACCURACY_UP_2, - EFFECT_EVASION_UP_2, - EFFECT_TRANSFORM, - EFFECT_ATTACK_DOWN_2, - EFFECT_DEFENSE_DOWN_2, - EFFECT_SPEED_DOWN_2, - EFFECT_SPECIAL_ATTACK_DOWN_2, - EFFECT_SPECIAL_DEFENSE_DOWN_2, - EFFECT_ACCURACY_DOWN_2, - EFFECT_EVASION_DOWN_2, - EFFECT_REFLECT, - EFFECT_POISON, - EFFECT_PARALYZE, - EFFECT_ATTACK_DOWN_HIT, - EFFECT_DEFENSE_DOWN_HIT, - EFFECT_SPEED_DOWN_HIT, - EFFECT_SPECIAL_ATTACK_DOWN_HIT, - EFFECT_SPECIAL_DEFENSE_DOWN_HIT, - EFFECT_ACCURACY_DOWN_HIT, - EFFECT_EVASION_DOWN_HIT, - EFFECT_SKY_ATTACK, - EFFECT_CONFUSE_HIT, - EFFECT_TWINEEDLE, - EFFECT_VITAL_THROW, - EFFECT_SUBSTITUTE, - EFFECT_RECHARGE, - EFFECT_RAGE, - EFFECT_MIMIC, - EFFECT_METRONOME, - EFFECT_LEECH_SEED, - EFFECT_SPLASH, - EFFECT_DISABLE, - EFFECT_LEVEL_DAMAGE, - EFFECT_PSYWAVE, - EFFECT_COUNTER, - EFFECT_ENCORE, - EFFECT_PAIN_SPLIT, - EFFECT_SNORE, - EFFECT_CONVERSION_2, - EFFECT_LOCK_ON, - EFFECT_SKETCH, - EFFECT_UNUSED_60, // thaw - EFFECT_SLEEP_TALK, - EFFECT_DESTINY_BOND, - EFFECT_FLAIL, - EFFECT_SPITE, - EFFECT_FALSE_SWIPE, - EFFECT_HEAL_BELL, - EFFECT_QUICK_ATTACK, - EFFECT_TRIPLE_KICK, - EFFECT_THIEF, - EFFECT_MEAN_LOOK, - EFFECT_NIGHTMARE, - EFFECT_MINIMIZE, - EFFECT_CURSE, - EFFECT_UNUSED_6E, - EFFECT_PROTECT, - EFFECT_SPIKES, - EFFECT_FORESIGHT, - EFFECT_PERISH_SONG, - EFFECT_SANDSTORM, - EFFECT_ENDURE, - EFFECT_ROLLOUT, - EFFECT_SWAGGER, - EFFECT_FURY_CUTTER, - EFFECT_ATTRACT, - EFFECT_RETURN, - EFFECT_PRESENT, - EFFECT_FRUSTRATION, - EFFECT_SAFEGUARD, - EFFECT_THAW_HIT, - EFFECT_MAGNITUDE, - EFFECT_BATON_PASS, - EFFECT_PURSUIT, - EFFECT_RAPID_SPIN, - EFFECT_SONICBOOM, - EFFECT_UNUSED_83, - EFFECT_MORNING_SUN, - EFFECT_SYNTHESIS, - EFFECT_MOONLIGHT, - EFFECT_HIDDEN_POWER, - EFFECT_RAIN_DANCE, - EFFECT_SUNNY_DAY, - EFFECT_DEFENSE_UP_HIT, - EFFECT_ATTACK_UP_HIT, - EFFECT_ALL_STATS_UP_HIT, - EFFECT_UNUSED_8D, // incomplete fake out in gen 2 - EFFECT_BELLY_DRUM, - EFFECT_PSYCH_UP, - EFFECT_MIRROR_COAT, - EFFECT_SKULL_BASH, - EFFECT_TWISTER, - EFFECT_EARTHQUAKE, - EFFECT_FUTURE_SIGHT, - EFFECT_GUST, - EFFECT_STOMP, // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM - EFFECT_SOLARBEAM, - EFFECT_THUNDER, - EFFECT_TELEPORT, - EFFECT_BEAT_UP, - EFFECT_SEMI_INVULNERABLE, - EFFECT_DEFENSE_CURL, - EFFECT_SOFTBOILED, - EFFECT_FAKE_OUT, - EFFECT_UPROAR, - EFFECT_STOCKPILE, - EFFECT_SPIT_UP, - EFFECT_SWALLOW, - EFFECT_UNUSED_A3, - EFFECT_HAIL, - EFFECT_TORMENT, - EFFECT_FLATTER, - EFFECT_WILL_O_WISP, - EFFECT_MEMENTO, - EFFECT_FACADE, - EFFECT_FOCUS_PUNCH, - EFFECT_SMELLINGSALT, - EFFECT_FOLLOW_ME, - EFFECT_NATURE_POWER, - EFFECT_CHARGE, - EFFECT_TAUNT, - EFFECT_HELPING_HAND, - EFFECT_TRICK, - EFFECT_ROLE_PLAY, - EFFECT_WISH, - EFFECT_ASSIST, - EFFECT_INGRAIN, - EFFECT_SUPERPOWER, - EFFECT_MAGIC_COAT, - EFFECT_RECYCLE, - EFFECT_REVENGE, - EFFECT_BRICK_BREAK, - EFFECT_YAWN, - EFFECT_KNOCK_OFF, - EFFECT_ENDEAVOR, - EFFECT_ERUPTION, - EFFECT_SKILL_SWAP, - EFFECT_IMPRISON, - EFFECT_REFRESH, - EFFECT_GRUDGE, - EFFECT_SNATCH, - EFFECT_LOW_KICK, - EFFECT_SECRET_POWER, - EFFECT_DOUBLE_EDGE, - EFFECT_TEETER_DANCE, - EFFECT_BLAZE_KICK, - EFFECT_MUD_SPORT, - EFFECT_POISON_FANG, - EFFECT_WEATHER_BALL, - EFFECT_OVERHEAT, - EFFECT_TICKLE, - EFFECT_COSMIC_POWER, - EFFECT_SKY_UPPERCUT, - EFFECT_BULK_UP, - EFFECT_POISON_TAIL, - EFFECT_WATER_SPORT, - EFFECT_CALM_MIND, - EFFECT_DRAGON_DANCE, - EFFECT_CAMOUFLAGE, -}; - -#endif // GUARD_BATTLE_MOVE_EFFECTS_H diff --git a/include/battle_scripts.h b/include/battle_scripts.h index 5131778a8..2e31a37c5 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -1,356 +1,22 @@ #ifndef GUARD_BATTLE_SCRIPTS_H #define GUARD_BATTLE_SCRIPTS_H -extern const u8 BattleScript_EffectHit[]; -extern const u8 BattleScript_HitFromAtkCanceler[]; -extern const u8 BattleScript_HitFromAccCheck[]; -extern const u8 BattleScript_HitFromAtkString[]; extern const u8 BattleScript_HitFromCritCalc[]; -extern const u8 BattleScript_HitFromAtkAnimation[]; extern const u8 BattleScript_MoveEnd[]; extern const u8 BattleScript_MakeMoveMissed[]; extern const u8 BattleScript_PrintMoveMissed[]; extern const u8 BattleScript_MoveMissedPause[]; extern const u8 BattleScript_MoveMissed[]; -extern const u8 BattleScript_EffectSleep[]; -extern const u8 BattleScript_AlreadyAsleep[]; -extern const u8 BattleScript_WasntAffected[]; -extern const u8 BattleScript_CantMakeAsleep[]; -extern const u8 BattleScript_EffectPoisonHit[]; -extern const u8 BattleScript_EffectAbsorb[]; -extern const u8 BattleScript_82D8B26[]; -extern const u8 BattleScript_82D8B2E[]; -extern const u8 BattleScript_82D8B45[]; -extern const u8 BattleScript_EffectBurnHit[]; -extern const u8 BattleScript_EffectFreezeHit[]; -extern const u8 BattleScript_EffectParalyzeHit[]; -extern const u8 BattleScript_EffectExplosion[]; -extern const u8 BattleScript_82D8B94[]; -extern const u8 BattleScript_82D8B96[]; -extern const u8 BattleScript_82D8BCF[]; -extern const u8 BattleScript_82D8BEA[]; -extern const u8 BattleScript_EffectDreamEater[]; -extern const u8 BattleScript_82D8C0E[]; -extern const u8 BattleScript_82D8C18[]; -extern const u8 BattleScript_82D8C56[]; -extern const u8 BattleScript_EffectMirrorMove[]; -extern const u8 BattleScript_EffectAttackUp[]; -extern const u8 BattleScript_EffectDefenseUp[]; -extern const u8 BattleScript_EffectSpecialAttackUp[]; -extern const u8 BattleScript_EffectEvasionUp[]; -extern const u8 BattleScript_EffectStatUp[]; -extern const u8 BattleScript_EffectStatUpAfterAtkCanceler[]; -extern const u8 BattleScript_StatUpAttackAnim[]; -extern const u8 BattleScript_StatUpDoAnim[]; -extern const u8 BattleScript_StatUpPrintString[]; -extern const u8 BattleScript_StatUpEnd[]; +extern const u8 BattleScript_ButItFailed[]; extern const u8 BattleScript_StatUp[]; -extern const u8 BattleScript_EffectAttackDown[]; -extern const u8 BattleScript_EffectDefenseDown[]; -extern const u8 BattleScript_EffectSpeedDown[]; -extern const u8 BattleScript_EffectAccuracyDown[]; -extern const u8 BattleScript_EffectEvasionDown[]; -extern const u8 BattleScript_EffectStatDown[]; -extern const u8 BattleScript_StatDownDoAnim[]; -extern const u8 BattleScript_StatDownPrintString[]; -extern const u8 BattleScript_82D8D60[]; extern const u8 BattleScript_StatDown[]; -extern const u8 BattleScript_EffectHaze[]; -extern const u8 BattleScript_EffectBide[]; -extern const u8 BattleScript_EffectRampage[]; -extern const u8 BattleScript_82D8DAE[]; -extern const u8 BattleScript_EffectRoar[]; -extern const u8 BattleScript_EffectMultiHit[]; -extern const u8 BattleScript_82D8DFD[]; -extern const u8 BattleScript_82D8E1F[]; -extern const u8 BattleScript_82D8E71[]; -extern const u8 BattleScript_82D8E74[]; -extern const u8 BattleScript_82D8E93[]; -extern const u8 BattleScript_EffectConversion[]; -extern const u8 BattleScript_EffectFlinchHit[]; -extern const u8 BattleScript_EffectRestoreHp[]; -extern const u8 BattleScript_EffectToxic[]; -extern const u8 BattleScript_AlreadyPoisoned[]; -extern const u8 BattleScript_ImmunityProtected[]; -extern const u8 BattleScript_EffectPayDay[]; -extern const u8 BattleScript_EffectLightScreen[]; -extern const u8 BattleScript_EffectTriAttack[]; -extern const u8 BattleScript_EffectRest[]; -extern const u8 BattleScript_RestCantSleep[]; -extern const u8 BattleScript_RestIsAlreadyAsleep[]; -extern const u8 BattleScript_EffectOHKO[]; -extern const u8 BattleScript_KOFail[]; -extern const u8 BattleScript_EffectRazorWind[]; -extern const u8 BattleScript_TwoTurnMovesSecondTurn[]; -extern const u8 BattleScriptFirstChargingTurn[]; -extern const u8 BattleScript_EffectSuperFang[]; -extern const u8 BattleScript_EffectDragonRage[]; -extern const u8 BattleScript_EffectTrap[]; -extern const u8 BattleScript_DoWrapEffect[]; -extern const u8 BattleScript_EffectDoubleHit[]; -extern const u8 BattleScript_EffectRecoilIfMiss[]; -extern const u8 BattleScript_82D9135[]; -extern const u8 BattleScript_EffectMist[]; -extern const u8 BattleScript_EffectFocusEnergy[]; -extern const u8 BattleScript_EffectRecoil[]; -extern const u8 BattleScript_EffectConfuse[]; -extern const u8 BattleScript_AlreadyConfused[]; -extern const u8 BattleScript_EffectAttackUp2[]; -extern const u8 BattleScript_EffectDefenseUp2[]; -extern const u8 BattleScript_EffectSpeedUp2[]; -extern const u8 BattleScript_EffectSpecialAttackUp2[]; -extern const u8 BattleScript_EffectSpecialDefenseUp2[]; -extern const u8 BattleScript_EffectTransform[]; -extern const u8 BattleScript_EffectAttackDown2[]; -extern const u8 BattleScript_EffectDefenseDown2[]; -extern const u8 BattleScript_EffectSpeedDown2[]; -extern const u8 BattleScript_EffectSpecialDefenseDown2[]; -extern const u8 BattleScript_EffectReflect[]; -extern const u8 BattleScript_PrintReflectLightScreenSafeguardString[]; -extern const u8 BattleScript_EffectPoison[]; -extern const u8 BattleScript_EffectParalyze[]; -extern const u8 BattleScript_AlreadyParalyzed[]; -extern const u8 BattleScript_LimberProtected[]; -extern const u8 BattleScript_EffectAttackDownHit[]; -extern const u8 BattleScript_EffectDefenseDownHit[]; -extern const u8 BattleScript_EffectSpeedDownHit[]; -extern const u8 BattleScript_EffectSpecialAttackDownHit[]; -extern const u8 BattleScript_EffectSpecialDefenseDownHit[]; -extern const u8 BattleScript_EffectAccuracyDownHit[]; -extern const u8 BattleScript_EffectSkyAttack[]; -extern const u8 BattleScript_EffectConfuseHit[]; -extern const u8 BattleScript_EffectTwineedle[]; -extern const u8 BattleScript_EffectSubstitute[]; -extern const u8 BattleScript_SubstituteAnim[]; -extern const u8 BattleScript_SubstituteString[]; -extern const u8 BattleScript_AlreadyHasSubstitute[]; -extern const u8 BattleScript_EffectRecharge[]; -extern const u8 BattleScript_MoveUsedMustRecharge[]; -extern const u8 BattleScript_EffectRage[]; -extern const u8 BattleScript_RageMiss[]; -extern const u8 BattleScript_EffectMimic[]; -extern const u8 BattleScript_EffectMetronome[]; -extern const u8 BattleScript_EffectLeechSeed[]; -extern const u8 BattleScript_DoLeechSeed[]; -extern const u8 BattleScript_EffectSplash[]; -extern const u8 BattleScript_EffectDisable[]; -extern const u8 BattleScript_EffectLevelDamage[]; -extern const u8 BattleScript_EffectPsywave[]; -extern const u8 BattleScript_EffectCounter[]; -extern const u8 BattleScript_EffectEncore[]; -extern const u8 BattleScript_EffectPainSplit[]; -extern const u8 BattleScript_EffectSnore[]; -extern const u8 BattleScript_SnoreIsAsleep[]; -extern const u8 BattleScript_DoSnore[]; -extern const u8 BattleScript_EffectConversion2[]; -extern const u8 BattleScript_EffectLockOn[]; -extern const u8 BattleScript_EffectSketch[]; -extern const u8 BattleScript_EffectSleepTalk[]; -extern const u8 BattleScript_SleepTalkIsAsleep[]; -extern const u8 BattleScript_SleepTalkUsingMove[]; -extern const u8 BattleScript_EffectDestinyBond[]; -extern const u8 BattleScript_EffectFlail[]; -extern const u8 BattleScript_EffectSpite[]; -extern const u8 BattleScript_EffectHealBell[]; -extern const u8 BattleScript_CheckHealBellMon2Unaffected[]; -extern const u8 BattleScript_PartyHealEnd[]; -extern const u8 BattleScript_EffectTripleKick[]; -extern const u8 BattleScript_TripleKickLoop[]; -extern const u8 BattleScript_DoTripleKickAttack[]; -extern const u8 BattleScript_TripleKickNoMoreHits[]; -extern const u8 BattleScript_TripleKickPrintStrings[]; -extern const u8 BattleScript_TripleKickEnd[]; -extern const u8 BattleScript_EffectThief[]; -extern const u8 BattleScript_EffectMeanLook[]; -extern const u8 BattleScript_EffectNightmare[]; -extern const u8 BattleScript_NightmareWorked[]; -extern const u8 BattleScript_EffectMinimize[]; -extern const u8 BattleScript_EffectCurse[]; -extern const u8 BattleScript_CurseTrySpeed[]; -extern const u8 BattleScript_CurseTryAttack[]; -extern const u8 BattleScript_CurseTryDefence[]; -extern const u8 BattleScript_CurseEnd[]; -extern const u8 BattleScript_GhostCurse[]; -extern const u8 BattleScript_DoGhostCurse[]; -extern const u8 BattleScript_EffectProtect[]; -extern const u8 BattleScript_EffectSpikes[]; -extern const u8 BattleScript_EffectForesight[]; -extern const u8 BattleScript_EffectPerishSong[]; -extern const u8 BattleScript_PerishSongLoop[]; -extern const u8 BattleScript_PerishSongLoopIncrement[]; -extern const u8 BattleScript_PerishSongNotAffected[]; -extern const u8 BattleScript_EffectSandstorm[]; -extern const u8 BattleScript_EffectRollout[]; -extern const u8 BattleScript_RolloutCheckAccuracy[]; -extern const u8 BattleScript_RolloutHit[]; -extern const u8 BattleScript_EffectSwagger[]; -extern const u8 BattleScript_SwaggerTryConfuse[]; -extern const u8 BattleScript_EffectFuryCutter[]; -extern const u8 BattleScript_FuryCutterHit[]; -extern const u8 BattleScript_EffectAttract[]; -extern const u8 BattleScript_EffectReturn[]; -extern const u8 BattleScript_EffectPresent[]; -extern const u8 BattleScript_EffectSafeguard[]; -extern const u8 BattleScript_EffectThawHit[]; -extern const u8 BattleScript_EffectMagnitude[]; -extern const u8 BattleScript_EffectBatonPass[]; -extern const u8 BattleScript_EffectRapidSpin[]; -extern const u8 BattleScript_EffectSonicboom[]; -extern const u8 BattleScript_EffectMorningSun[]; -extern const u8 BattleScript_EffectHiddenPower[]; -extern const u8 BattleScript_EffectRainDance[]; -extern const u8 BattleScript_MoveWeatherChange[]; -extern const u8 BattleScript_EffectSunnyDay[]; -extern const u8 BattleScript_EffectDefenseUpHit[]; -extern const u8 BattleScript_EffectAttackUpHit[]; -extern const u8 BattleScript_EffectAllStatsUpHit[]; -extern const u8 BattleScript_EffectBellyDrum[]; -extern const u8 BattleScript_EffectPsychUp[]; -extern const u8 BattleScript_EffectMirrorCoat[]; -extern const u8 BattleScript_EffectSkullBash[]; -extern const u8 BattleScript_SkullBashEnd[]; -extern const u8 BattleScript_EffectTwister[]; -extern const u8 BattleScript_FlinchEffect[]; -extern const u8 BattleScript_EffectEarthquake[]; -extern const u8 BattleScript_82D9C44[]; -extern const u8 BattleScript_82D9C64[]; -extern const u8 BattleScript_82D9C73[]; -extern const u8 BattleScript_82D9CAC[]; -extern const u8 BattleScript_EffectFutureSight[]; -extern const u8 BattleScript_EffectGust[]; -extern const u8 BattleScript_EffectStomp[]; -extern const u8 BattleScript_EffectSolarbeam[]; -extern const u8 BattleScript_SolarbeamDecideTurn[]; -extern const u8 BattleScript_SolarbeamOnFirstTurn[]; -extern const u8 BattleScript_EffectThunder[]; -extern const u8 BattleScript_EffectTeleport[]; -extern const u8 BattleScript_EffectBeatUp[]; -extern const u8 BattleScript_BeatUpLoop[]; -extern const u8 BattleScript_BeatUpAttack[]; -extern const u8 BattleScript_BeatUpEnd[]; -extern const u8 BattleScript_EffectSemiInvulnerable[]; -extern const u8 BattleScript_FirstTurnBounce[]; -extern const u8 BattleScript_FirstTurnDive[]; -extern const u8 BattleScript_FirstTurnFly[]; -extern const u8 BattleScript_FirstTurnSemiInvulnerable[]; -extern const u8 BattleScript_SecondTurnSemiInvulnerable[]; -extern const u8 BattleScript_SemiInvulnerableTryHit[]; -extern const u8 BattleScript_SemiInvulnerableMiss[]; -extern const u8 BattleScript_EffectDefenseCurl[]; -extern const u8 BattleScript_DefenseCurlDoStatUpAnim[]; -extern const u8 BattleScript_EffectSoftboiled[]; -extern const u8 BattleScript_PresentHealTarget[]; extern const u8 BattleScript_AlreadyAtFullHp[]; -extern const u8 BattleScript_EffectFakeOut[]; -extern const u8 BattleScript_ButItFailedAtkStringPpReduce[]; -extern const u8 BattleScript_ButItFailedPpReduce[]; -extern const u8 BattleScript_ButItFailed[]; -extern const u8 BattleScript_NotAffected[]; -extern const u8 BattleScript_EffectUproar[]; -extern const u8 BattleScript_UproarHit[]; -extern const u8 BattleScript_EffectStockpile[]; -extern const u8 BattleScript_EffectSpitUp[]; -extern const u8 BattleScript_SpitUpFail[]; -extern const u8 BattleScript_82D9FA2[]; -extern const u8 BattleScript_EffectSwallow[]; -extern const u8 BattleScript_SwallowFail[]; -extern const u8 BattleScript_EffectHail[]; -extern const u8 BattleScript_EffectTorment[]; -extern const u8 BattleScript_EffectFlatter[]; -extern const u8 BattleScript_FlatterTryConfuse[]; -extern const u8 BattleScript_EffectWillOWisp[]; -extern const u8 BattleScript_WaterVeilPrevents[]; -extern const u8 BattleScript_AlreadyBurned[]; -extern const u8 BattleScript_EffectMemento[]; -extern const u8 BattleScript_82DA119[]; -extern const u8 BattleScript_82DA13C[]; -extern const u8 BattleScript_82DA148[]; -extern const u8 BattleScript_82DA153[]; -extern const u8 BattleScript_82DA15A[]; -extern const u8 BattleScript_EffectFacade[]; -extern const u8 BattleScript_FacadeDoubleDmg[]; -extern const u8 BattleScript_EffectFocusPunch[]; -extern const u8 BattleScript_EffectSmellingsalt[]; -extern const u8 BattleScript_82DA1BA[]; -extern const u8 BattleScript_EffectFollowMe[]; -extern const u8 BattleScript_EffectNaturePower[]; -extern const u8 BattleScript_EffectCharge[]; -extern const u8 BattleScript_EffectTaunt[]; -extern const u8 BattleScript_EffectHelpingHand[]; -extern const u8 BattleScript_EffectTrick[]; -extern const u8 BattleScript_EffectRolePlay[]; -extern const u8 BattleScript_EffectWish[]; -extern const u8 BattleScript_EffectAssist[]; -extern const u8 BattleScript_EffectIngrain[]; -extern const u8 BattleScript_EffectSuperpower[]; -extern const u8 BattleScript_EffectMagicCoat[]; -extern const u8 BattleScript_EffectRecycle[]; -extern const u8 BattleScript_EffectRevenge[]; -extern const u8 BattleScript_EffectBrickBreak[]; -extern const u8 BattleScript_82DA306[]; -extern const u8 BattleScript_82DA319[]; -extern const u8 BattleScript_EffectYawn[]; -extern const u8 BattleScript_82DA378[]; -extern const u8 BattleScript_82DA382[]; -extern const u8 BattleScript_EffectKnockOff[]; -extern const u8 BattleScript_EffectEndeavor[]; -extern const u8 BattleScript_EffectEruption[]; -extern const u8 BattleScript_EffectSkillSwap[]; -extern const u8 BattleScript_EffectImprison[]; -extern const u8 BattleScript_EffectRefresh[]; -extern const u8 BattleScript_EffectGrudge[]; -extern const u8 BattleScript_EffectSnatch[]; -extern const u8 BattleScript_EffectLowKick[]; -extern const u8 BattleScript_EffectSecretPower[]; -extern const u8 BattleScript_EffectDoubleEdge[]; -extern const u8 BattleScript_EffectTeeterDance[]; -extern const u8 BattleScript_82DA47B[]; -extern const u8 BattleScript_82DA4C7[]; -extern const u8 BattleScript_82DA4D0[]; -extern const u8 BattleScript_82DA4E5[]; -extern const u8 BattleScript_82DA4F3[]; -extern const u8 BattleScript_82DA501[]; -extern const u8 BattleScript_82DA50F[]; -extern const u8 BattleScript_82DA520[]; -extern const u8 BattleScript_EffectMudSport[]; -extern const u8 BattleScript_EffectPoisonFang[]; -extern const u8 BattleScript_EffectWeatherBall[]; -extern const u8 BattleScript_EffectOverheat[]; -extern const u8 BattleScript_EffectTickle[]; -extern const u8 BattleScript_TickleDoMoveAnim[]; -extern const u8 BattleScript_TickleTryLowerDef[]; -extern const u8 BattleScript_TickleEnd[]; -extern const u8 BattleScript_CantLowerMultipleStats[]; -extern const u8 BattleScript_EffectCosmicPower[]; -extern const u8 BattleScript_CosmicPowerDoMoveAnim[]; -extern const u8 BattleScript_CosmicPowerTrySpDef[]; -extern const u8 BattleScript_CosmicPowerEnd[]; -extern const u8 BattleScript_EffectSkyUppercut[]; -extern const u8 BattleScript_EffectBulkUp[]; -extern const u8 BattleScript_BulkUpDoMoveAnim[]; -extern const u8 BattleScript_BulkUpTryDef[]; -extern const u8 BattleScript_BulkUpEnd[]; -extern const u8 BattleScript_EffectCalmMind[]; -extern const u8 BattleScript_CalmMindDoMoveAnim[]; -extern const u8 BattleScript_CalmMindTrySpDef[]; -extern const u8 BattleScript_CalmMindEnd[]; -extern const u8 BattleScript_CantRaiseMultipleStats[]; -extern const u8 BattleScript_EffectDragonDance[]; -extern const u8 BattleScript_DragonDanceDoMoveAnim[]; -extern const u8 BattleScript_DragonDanceTrySpeed[]; -extern const u8 BattleScript_DragonDanceEnd[]; -extern const u8 BattleScript_EffectCamouflage[]; +extern const u8 BattleScript_PresentHealTarget[]; +extern const u8 BattleScript_MoveUsedMustRecharge[]; extern const u8 BattleScript_FaintAttacker[]; extern const u8 BattleScript_FaintTarget[]; -extern const u8 BattleScript_82DA7C4[]; -extern const u8 BattleScript_82DA7CD[]; -extern const u8 BattleScript_82DA816[]; -extern const u8 BattleScript_82DA8D0[]; -extern const u8 BattleScript_82DA8F5[]; -extern const u8 BattleScript_82DA8F6[]; -extern const u8 BattleScript_82DA8FC[]; -extern const u8 BattleScript_82DA908[]; -extern const u8 BattleScript_82DA92C[]; +extern const u8 BattleScript_GiveExp[]; +extern const u8 BattleScript_HandleFaintedMon[]; extern const u8 BattleScript_LocalTrainerBattleWon[]; extern const u8 BattleScript_LocalTwoTrainersDefeated[]; extern const u8 BattleScript_LocalBattleWonLoseTexts[]; @@ -360,13 +26,9 @@ extern const u8 BattleScript_LocalBattleLost[]; extern const u8 BattleScript_LocalBattleLostPrintWhiteOut[]; extern const u8 BattleScript_LocalBattleLostEnd[]; extern const u8 BattleScript_CheckDomeDrew[]; -extern const u8 BattleScript_LocalBattleLostPrintTrainersWinText[]; -extern const u8 BattleScript_LocalBattleLostDoTrainer2WinText[]; -extern const u8 BattleScript_LocalBattleLostEnd_[]; extern const u8 BattleScript_82DAA0B[]; extern const u8 BattleScript_82DAA31[]; extern const u8 BattleScript_LinkBattleWonOrLost[]; -extern const u8 BattleScript_LinkBattleWonOrLostWaitEnd[]; extern const u8 BattleScript_82DAA5C[]; extern const u8 BattleScript_82DAA83[]; extern const u8 BattleScript_FrontierTrainerBattleWon[]; @@ -390,17 +52,8 @@ extern const u8 BattleScript_82DAB77[]; extern const u8 BattleScript_82DABB8[]; extern const u8 BattleScript_Pausex20[]; extern const u8 BattleScript_LevelUp[]; -extern const u8 BattleScript_TryLearnMoveLoop[]; -extern const u8 BattleScript_AskToLearnMove[]; -extern const u8 BattleScript_ForgotAndLearnedNewMove[]; -extern const u8 BattleScript_LearnedNewMove[]; -extern const u8 BattleScript_LearnMoveReturn[]; extern const u8 BattleScript_RainContinuesOrEnds[]; -extern const u8 BattleScript_RainContinuesOrEndsEnd[]; extern const u8 BattleScript_DamagingWeatherContinues[]; -extern const u8 BattleScript_DamagingWeatherLoop[]; -extern const u8 BattleScript_DamagingWeatherLoopIncrement[]; -extern const u8 BattleScript_DamagingWeatherContinuesEnd[]; extern const u8 BattleScript_SandStormHailEnds[]; extern const u8 BattleScript_SunlightContinues[]; extern const u8 BattleScript_SunlightFaded[]; @@ -414,15 +67,15 @@ extern const u8 BattleScript_82DAD4D[]; extern const u8 BattleScript_BideStoringEnergy[]; extern const u8 BattleScript_BideAttack[]; extern const u8 BattleScript_BideNoEnergyToAttack[]; -extern const u8 BattleScript_82DADD8[]; +extern const u8 BattleScript_SuccessForceOut[]; extern const u8 BattleScript_82DADF1[]; extern const u8 BattleScript_MistProtected[]; extern const u8 BattleScript_RageIsBuilding[]; extern const u8 BattleScript_MoveUsedIsDisabled[]; extern const u8 BattleScript_SelectingDisabledMove[]; extern const u8 BattleScript_DisabledNoMore[]; -extern const u8 BattleScript_82DAE2A[]; -extern const u8 BattleScript_82DAE2D[]; +extern const u8 BattleScript_SelectingDisabledMoveInPalace[]; +extern const u8 BattleScript_SelectingUnusableMoveInPalace[]; extern const u8 BattleScript_EncoredNoMore[]; extern const u8 BattleScript_DestinyBondTakesLife[]; extern const u8 BattleScript_SpikesOnAttacker[]; @@ -456,22 +109,20 @@ extern const u8 BattleScript_NoMovesLeft[]; extern const u8 BattleScript_SelectingMoveWithNoPP[]; extern const u8 BattleScript_NoPPForMove[]; extern const u8 BattleScript_SelectingTormentedMove[]; -extern const u8 BattleScript_82DB08D[]; -extern const u8 BattleScript_82DB098[]; +extern const u8 BattleScript_MoveUsedIsTormented[]; +extern const u8 BattleScript_SelectingTormentedMoveInPalace[]; extern const u8 BattleScript_SelectingNotAllowedMoveTaunt[]; extern const u8 BattleScript_MoveUsedIsTaunted[]; -extern const u8 BattleScript_82DB0AF[]; +extern const u8 BattleScript_SelectingNotAllowedMoveTauntInPalace[]; extern const u8 BattleScript_WishComesTrue[]; -extern const u8 BattleScript_82DB0DE[]; extern const u8 BattleScript_IngrainTurnHeal[]; -extern const u8 BattleScript_82DB109[]; extern const u8 BattleScript_AtkDefDown[]; extern const u8 BattleScript_82DB144[]; extern const u8 BattleScript_82DB167[]; extern const u8 BattleScript_KnockedOff[]; extern const u8 BattleScript_MoveUsedIsImprisoned[]; extern const u8 BattleScript_SelectingImprisionedMove[]; -extern const u8 BattleScript_82DB185[]; +extern const u8 BattleScript_SelectingImprisionedMoveInPalace[]; extern const u8 BattleScript_GrudgeTakesPp[]; extern const u8 BattleScript_MagicCoatBounce[]; extern const u8 BattleScript_SnatchedMove[]; @@ -550,7 +201,6 @@ extern const u8 BattleScript_MonMadeMoveUseless_PPLoss[]; extern const u8 BattleScript_MonMadeMoveUseless[]; extern const u8 BattleScript_FlashFireBoost_PPLoss[]; extern const u8 BattleScript_FlashFireBoost[]; -extern const u8 BattleScript_82DB5B9[]; extern const u8 BattleScript_AbilityNoStatLoss[]; extern const u8 BattleScript_BRNPrevention[]; extern const u8 BattleScript_PRLZPrevention[]; @@ -612,8 +262,8 @@ extern const u8 BattleScript_82DB8F3[]; extern const u8 BattleScript_82DB973[]; extern const u8 BattleScript_82DB992[]; extern const u8 BattleScript_AskIfWantsToForfeitMatch[]; -extern const u8 BattleScript_82DB9C1[]; -extern const u8 BattleScript_82DB9C8[]; +extern const u8 BattleScript_PrintPlayerForfeited[]; +extern const u8 BattleScript_PrintPlayerForfeitedLinkBattle[]; extern const u8 BattleScript_BallThrow[]; extern const u8 BattleScript_BallThrowByWally[]; extern const u8 BattleScript_SafariBallThrow[]; diff --git a/include/battle_util.h b/include/battle_util.h index b21b250c4..81eb85dc7 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -66,8 +66,8 @@ bool8 AreAllMovesUnusable(void); u8 GetImprisonedMovesCount(u8 bank, u16 move); u8 UpdateTurnCounters(void); u8 TurnBasedEffects(void); -bool8 sub_8041364(void); -bool8 sub_8041728(void); +bool8 HandleWishPerishSongOnTurnEnd(void); +bool8 HandleFaintedMonActions(void); void TryClearRageStatuses(void); u8 AtkCanceller_UnableToUseMove(void); bool8 sub_80423F4(u8 bank, u8 r1, u8 r2); @@ -79,6 +79,6 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn); void ClearFuryCutterDestinyBondGrudge(u8 bank); void HandleAction_RunBattleScript(void); u8 GetMoveTarget(u16 move, u8 useMoveTarget); -u8 IsPokeDisobedient(void); +u8 IsMonDisobedient(void); #endif // GUARD_BATTLE_UTIL_H diff --git a/include/constants/abilities.h b/include/constants/abilities.h new file mode 100644 index 000000000..4e2c4056c --- /dev/null +++ b/include/constants/abilities.h @@ -0,0 +1,83 @@ +#ifndef GUARD_CONSTANTS_ABILITIES_H +#define GUARD_CONSTANTS_ABILITIES_H + +#define ABILITY_NONE 0 +#define ABILITY_STENCH 1 +#define ABILITY_DRIZZLE 2 +#define ABILITY_SPEED_BOOST 3 +#define ABILITY_BATTLE_ARMOR 4 +#define ABILITY_STURDY 5 +#define ABILITY_DAMP 6 +#define ABILITY_LIMBER 7 +#define ABILITY_SAND_VEIL 8 +#define ABILITY_STATIC 9 +#define ABILITY_VOLT_ABSORB 10 +#define ABILITY_WATER_ABSORB 11 +#define ABILITY_OBLIVIOUS 12 +#define ABILITY_CLOUD_NINE 13 +#define ABILITY_COMPOUND_EYES 14 +#define ABILITY_INSOMNIA 15 +#define ABILITY_COLOR_CHANGE 16 +#define ABILITY_IMMUNITY 17 +#define ABILITY_FLASH_FIRE 18 +#define ABILITY_SHIELD_DUST 19 +#define ABILITY_OWN_TEMPO 20 +#define ABILITY_SUCTION_CUPS 21 +#define ABILITY_INTIMIDATE 22 +#define ABILITY_SHADOW_TAG 23 +#define ABILITY_ROUGH_SKIN 24 +#define ABILITY_WONDER_GUARD 25 +#define ABILITY_LEVITATE 26 +#define ABILITY_EFFECT_SPORE 27 +#define ABILITY_SYNCHRONIZE 28 +#define ABILITY_CLEAR_BODY 29 +#define ABILITY_NATURAL_CURE 30 +#define ABILITY_LIGHTNING_ROD 31 +#define ABILITY_SERENE_GRACE 32 +#define ABILITY_SWIFT_SWIM 33 +#define ABILITY_CHLOROPHYLL 34 +#define ABILITY_ILLUMINATE 35 +#define ABILITY_TRACE 36 +#define ABILITY_HUGE_POWER 37 +#define ABILITY_POISON_POINT 38 +#define ABILITY_INNER_FOCUS 39 +#define ABILITY_MAGMA_ARMOR 40 +#define ABILITY_WATER_VEIL 41 +#define ABILITY_MAGNET_PULL 42 +#define ABILITY_SOUNDPROOF 43 +#define ABILITY_RAIN_DISH 44 +#define ABILITY_SAND_STREAM 45 +#define ABILITY_PRESSURE 46 +#define ABILITY_THICK_FAT 47 +#define ABILITY_EARLY_BIRD 48 +#define ABILITY_FLAME_BODY 49 +#define ABILITY_RUN_AWAY 50 +#define ABILITY_KEEN_EYE 51 +#define ABILITY_HYPER_CUTTER 52 +#define ABILITY_PICKUP 53 +#define ABILITY_TRUANT 54 +#define ABILITY_HUSTLE 55 +#define ABILITY_CUTE_CHARM 56 +#define ABILITY_PLUS 57 +#define ABILITY_MINUS 58 +#define ABILITY_FORECAST 59 +#define ABILITY_STICKY_HOLD 60 +#define ABILITY_SHED_SKIN 61 +#define ABILITY_GUTS 62 +#define ABILITY_MARVEL_SCALE 63 +#define ABILITY_LIQUID_OOZE 64 +#define ABILITY_OVERGROW 65 +#define ABILITY_BLAZE 66 +#define ABILITY_TORRENT 67 +#define ABILITY_SWARM 68 +#define ABILITY_ROCK_HEAD 69 +#define ABILITY_DROUGHT 70 +#define ABILITY_ARENA_TRAP 71 +#define ABILITY_VITAL_SPIRIT 72 +#define ABILITY_WHITE_SMOKE 73 +#define ABILITY_PURE_POWER 74 +#define ABILITY_SHELL_ARMOR 75 +#define ABILITY_CACOPHONY 76 +#define ABILITY_AIR_LOCK 77 + +#endif // GUARD_CONSTANTS_ABILITIES_H diff --git a/include/constants/battle_move_effects.h b/include/constants/battle_move_effects.h new file mode 100644 index 000000000..1b59f2f64 --- /dev/null +++ b/include/constants/battle_move_effects.h @@ -0,0 +1,219 @@ +#ifndef GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H +#define GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H + +#define EFFECT_HIT 0 +#define EFFECT_SLEEP 1 +#define EFFECT_POISON_HIT 2 +#define EFFECT_ABSORB 3 +#define EFFECT_BURN_HIT 4 +#define EFFECT_FREEZE_HIT 5 +#define EFFECT_PARALYZE_HIT 6 +#define EFFECT_EXPLOSION 7 +#define EFFECT_DREAM_EATER 8 +#define EFFECT_MIRROR_MOVE 9 +#define EFFECT_ATTACK_UP 10 +#define EFFECT_DEFENSE_UP 11 +#define EFFECT_SPEED_UP 12 +#define EFFECT_SPECIAL_ATTACK_UP 13 +#define EFFECT_SPECIAL_DEFENSE_UP 14 +#define EFFECT_ACCURACY_UP 15 +#define EFFECT_EVASION_UP 16 +#define EFFECT_ALWAYS_HIT 17 +#define EFFECT_ATTACK_DOWN 18 +#define EFFECT_DEFENSE_DOWN 19 +#define EFFECT_SPEED_DOWN 20 +#define EFFECT_SPECIAL_ATTACK_DOWN 21 // unused +#define EFFECT_SPECIAL_DEFENSE_DOWN 22 // unused +#define EFFECT_ACCURACY_DOWN 23 +#define EFFECT_EVASION_DOWN 24 +#define EFFECT_HAZE 25 +#define EFFECT_BIDE 26 +#define EFFECT_RAMPAGE 27 +#define EFFECT_ROAR 28 +#define EFFECT_MULTI_HIT 29 +#define EFFECT_CONVERSION 30 +#define EFFECT_FLINCH_HIT 31 +#define EFFECT_RESTORE_HP 32 +#define EFFECT_TOXIC 33 +#define EFFECT_PAY_DAY 34 +#define EFFECT_LIGHT_SCREEN 35 +#define EFFECT_TRI_ATTACK 36 +#define EFFECT_REST 37 +#define EFFECT_OHKO 38 +#define EFFECT_RAZOR_WIND 39 +#define EFFECT_SUPER_FANG 40 +#define EFFECT_DRAGON_RAGE 41 +#define EFFECT_TRAP 42 +#define EFFECT_HIGH_CRITICAL 43 +#define EFFECT_DOUBLE_HIT 44 +#define EFFECT_RECOIL_IF_MISS 45 +#define EFFECT_MIST 46 +#define EFFECT_FOCUS_ENERGY 47 +#define EFFECT_RECOIL 48 +#define EFFECT_CONFUSE 49 +#define EFFECT_ATTACK_UP_2 50 +#define EFFECT_DEFENSE_UP_2 51 +#define EFFECT_SPEED_UP_2 52 +#define EFFECT_SPECIAL_ATTACK_UP_2 53 +#define EFFECT_SPECIAL_DEFENSE_UP_2 54 +#define EFFECT_ACCURACY_UP_2 55 +#define EFFECT_EVASION_UP_2 56 +#define EFFECT_TRANSFORM 57 +#define EFFECT_ATTACK_DOWN_2 58 +#define EFFECT_DEFENSE_DOWN_2 59 +#define EFFECT_SPEED_DOWN_2 60 +#define EFFECT_SPECIAL_ATTACK_DOWN_2 61 +#define EFFECT_SPECIAL_DEFENSE_DOWN_2 62 +#define EFFECT_ACCURACY_DOWN_2 63 +#define EFFECT_EVASION_DOWN_2 64 +#define EFFECT_REFLECT 65 +#define EFFECT_POISON 66 +#define EFFECT_PARALYZE 67 +#define EFFECT_ATTACK_DOWN_HIT 68 +#define EFFECT_DEFENSE_DOWN_HIT 69 +#define EFFECT_SPEED_DOWN_HIT 70 +#define EFFECT_SPECIAL_ATTACK_DOWN_HIT 71 +#define EFFECT_SPECIAL_DEFENSE_DOWN_HIT 72 +#define EFFECT_ACCURACY_DOWN_HIT 73 +#define EFFECT_EVASION_DOWN_HIT 74 +#define EFFECT_SKY_ATTACK 75 +#define EFFECT_CONFUSE_HIT 76 +#define EFFECT_TWINEEDLE 77 +#define EFFECT_VITAL_THROW 78 +#define EFFECT_SUBSTITUTE 79 +#define EFFECT_RECHARGE 80 +#define EFFECT_RAGE 81 +#define EFFECT_MIMIC 82 +#define EFFECT_METRONOME 83 +#define EFFECT_LEECH_SEED 84 +#define EFFECT_SPLASH 85 +#define EFFECT_DISABLE 86 +#define EFFECT_LEVEL_DAMAGE 87 +#define EFFECT_PSYWAVE 88 +#define EFFECT_COUNTER 89 +#define EFFECT_ENCORE 90 +#define EFFECT_PAIN_SPLIT 91 +#define EFFECT_SNORE 92 +#define EFFECT_CONVERSION_2 93 +#define EFFECT_LOCK_ON 94 +#define EFFECT_SKETCH 95 +#define EFFECT_UNUSED_60 96 // thaw +#define EFFECT_SLEEP_TALK 97 +#define EFFECT_DESTINY_BOND 98 +#define EFFECT_FLAIL 99 +#define EFFECT_SPITE 100 +#define EFFECT_FALSE_SWIPE 101 +#define EFFECT_HEAL_BELL 102 +#define EFFECT_QUICK_ATTACK 103 +#define EFFECT_TRIPLE_KICK 104 +#define EFFECT_THIEF 105 +#define EFFECT_MEAN_LOOK 106 +#define EFFECT_NIGHTMARE 107 +#define EFFECT_MINIMIZE 108 +#define EFFECT_CURSE 109 +#define EFFECT_UNUSED_6E 110 +#define EFFECT_PROTECT 111 +#define EFFECT_SPIKES 112 +#define EFFECT_FORESIGHT 113 +#define EFFECT_PERISH_SONG 114 +#define EFFECT_SANDSTORM 115 +#define EFFECT_ENDURE 116 +#define EFFECT_ROLLOUT 117 +#define EFFECT_SWAGGER 118 +#define EFFECT_FURY_CUTTER 119 +#define EFFECT_ATTRACT 120 +#define EFFECT_RETURN 121 +#define EFFECT_PRESENT 122 +#define EFFECT_FRUSTRATION 123 +#define EFFECT_SAFEGUARD 124 +#define EFFECT_THAW_HIT 125 +#define EFFECT_MAGNITUDE 126 +#define EFFECT_BATON_PASS 127 +#define EFFECT_PURSUIT 128 +#define EFFECT_RAPID_SPIN 129 +#define EFFECT_SONICBOOM 130 +#define EFFECT_UNUSED_83 131 +#define EFFECT_MORNING_SUN 132 +#define EFFECT_SYNTHESIS 133 +#define EFFECT_MOONLIGHT 134 +#define EFFECT_HIDDEN_POWER 135 +#define EFFECT_RAIN_DANCE 136 +#define EFFECT_SUNNY_DAY 137 +#define EFFECT_DEFENSE_UP_HIT 138 +#define EFFECT_ATTACK_UP_HIT 139 +#define EFFECT_ALL_STATS_UP_HIT 140 +#define EFFECT_UNUSED_8D 141 // incomplete fake out in gen 2 +#define EFFECT_BELLY_DRUM 142 +#define EFFECT_PSYCH_UP 143 +#define EFFECT_MIRROR_COAT 144 +#define EFFECT_SKULL_BASH 145 +#define EFFECT_TWISTER 146 +#define EFFECT_EARTHQUAKE 147 +#define EFFECT_FUTURE_SIGHT 148 +#define EFFECT_GUST 149 +#define EFFECT_FLINCH_HIT_2 150 // STOMP ASTONISH EXTRASENSORY NEEDLE_ARM +#define EFFECT_SOLARBEAM 151 +#define EFFECT_THUNDER 152 +#define EFFECT_TELEPORT 153 +#define EFFECT_BEAT_UP 154 +#define EFFECT_SEMI_INVULNERABLE 155 +#define EFFECT_DEFENSE_CURL 156 +#define EFFECT_SOFTBOILED 157 +#define EFFECT_FAKE_OUT 158 +#define EFFECT_UPROAR 159 +#define EFFECT_STOCKPILE 160 +#define EFFECT_SPIT_UP 161 +#define EFFECT_SWALLOW 162 +#define EFFECT_UNUSED_A3 163 +#define EFFECT_HAIL 164 +#define EFFECT_TORMENT 165 +#define EFFECT_FLATTER 166 +#define EFFECT_WILL_O_WISP 167 +#define EFFECT_MEMENTO 168 +#define EFFECT_FACADE 169 +#define EFFECT_FOCUS_PUNCH 170 +#define EFFECT_SMELLINGSALT 171 +#define EFFECT_FOLLOW_ME 172 +#define EFFECT_NATURE_POWER 173 +#define EFFECT_CHARGE 174 +#define EFFECT_TAUNT 175 +#define EFFECT_HELPING_HAND 176 +#define EFFECT_TRICK 177 +#define EFFECT_ROLE_PLAY 178 +#define EFFECT_WISH 179 +#define EFFECT_ASSIST 180 +#define EFFECT_INGRAIN 181 +#define EFFECT_SUPERPOWER 182 +#define EFFECT_MAGIC_COAT 183 +#define EFFECT_RECYCLE 184 +#define EFFECT_REVENGE 185 +#define EFFECT_BRICK_BREAK 186 +#define EFFECT_YAWN 187 +#define EFFECT_KNOCK_OFF 188 +#define EFFECT_ENDEAVOR 189 +#define EFFECT_ERUPTION 190 +#define EFFECT_SKILL_SWAP 191 +#define EFFECT_IMPRISON 192 +#define EFFECT_REFRESH 193 +#define EFFECT_GRUDGE 194 +#define EFFECT_SNATCH 195 +#define EFFECT_LOW_KICK 196 +#define EFFECT_SECRET_POWER 197 +#define EFFECT_DOUBLE_EDGE 198 +#define EFFECT_TEETER_DANCE 199 +#define EFFECT_BLAZE_KICK 200 +#define EFFECT_MUD_SPORT 201 +#define EFFECT_POISON_FANG 202 +#define EFFECT_WEATHER_BALL 203 +#define EFFECT_OVERHEAT 204 +#define EFFECT_TICKLE 205 +#define EFFECT_COSMIC_POWER 206 +#define EFFECT_SKY_UPPERCUT 207 +#define EFFECT_BULK_UP 208 +#define EFFECT_POISON_TAIL 209 +#define EFFECT_WATER_SPORT 210 +#define EFFECT_CALM_MIND 211 +#define EFFECT_DRAGON_DANCE 212 +#define EFFECT_CAMOUFLAGE 213 + +#endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H diff --git a/include/constants/decorations.h b/include/constants/decorations.h new file mode 100644 index 000000000..2e3558721 --- /dev/null +++ b/include/constants/decorations.h @@ -0,0 +1,126 @@ +#ifndef GUARD_CONSTANTS_DECORATIONS_H +#define GUARD_CONSTANTS_DECORATIONS_H + +#define DECOR_NONE 0 +#define DECOR_SMALL_DESK 1 +#define DECOR_POKEMON_DESK 2 +#define DECOR_HEAVY_DESK 3 +#define DECOR_RAGGED_DESK 4 +#define DECOR_COMFORT_DESK 5 +#define DECOR_PRETTY_DESK 6 +#define DECOR_BRICK_DESK 7 +#define DECOR_CAMP_DESK 8 +#define DECOR_HARD_DESK 9 +#define DECOR_SMALL_CHAIR 10 +#define DECOR_POKEMON_CHAIR 11 +#define DECOR_HEAVY_CHAIR 12 +#define DECOR_PRETTY_CHAIR 13 +#define DECOR_COMFORT_CHAIR 14 +#define DECOR_RAGGED_CHAIR 15 +#define DECOR_BRICK_CHAIR 16 +#define DECOR_CAMP_CHAIR 17 +#define DECOR_HARD_CHAIR 18 +#define DECOR_RED_PLANT 19 +#define DECOR_TROPICAL_PLANT 20 +#define DECOR_PRETTY_FLOWERS 21 +#define DECOR_COLORFUL_PLANT 22 +#define DECOR_BIG_PLANT 23 +#define DECOR_GORGEOUS_PLANT 24 +#define DECOR_RED_BRICK 25 +#define DECOR_YELLOW_BRICK 26 +#define DECOR_BLUE_BRICK 27 +#define DECOR_RED_BALLOON 28 +#define DECOR_BLUE_BALLOON 29 +#define DECOR_YELLOW_BALLOON 30 +#define DECOR_RED_TENT 31 +#define DECOR_BLUE_TENT 32 +#define DECOR_SOLID_BOARD 33 +#define DECOR_SLIDE 34 +#define DECOR_FENCE_LENGTH 35 +#define DECOR_FENCE_WIDTH 36 +#define DECOR_TIRE 37 +#define DECOR_STAND 38 +#define DECOR_MUD_BALL 39 +#define DECOR_BREAKABLE_DOOR 40 +#define DECOR_SAND_ORNAMENT 41 +#define DECOR_SILVER_SHIELD 42 +#define DECOR_GOLD_SHIELD 43 +#define DECOR_GLASS_ORNAMENT 44 +#define DECOR_TV 45 +#define DECOR_ROUND_TV 46 +#define DECOR_CUTE_TV 47 +#define DECOR_GLITTER_MAT 48 +#define DECOR_JUMP_MAT 49 +#define DECOR_SPIN_MAT 50 +#define DECOR_C_LOW_NOTE_MAT 51 +#define DECOR_D_NOTE_MAT 52 +#define DECOR_E_NOTE_MAT 53 +#define DECOR_F_NOTE_MAT 54 +#define DECOR_G_NOTE_MAT 55 +#define DECOR_A_NOTE_MAT 56 +#define DECOR_B_NOTE_MAT 57 +#define DECOR_C_HIGH_NOTE_MAT 58 +#define DECOR_SURF_MAT 59 +#define DECOR_THUNDER_MAT 60 +#define DECOR_FIRE_BLAST_MAT 61 +#define DECOR_POWDER_SNOW_MAT 62 +#define DECOR_ATTRACT_MAT 63 +#define DECOR_FISSURE_MAT 64 +#define DECOR_SPIKES_MAT 65 +#define DECOR_BALL_POSTER 66 +#define DECOR_GREEN_POSTER 67 +#define DECOR_RED_POSTER 68 +#define DECOR_BLUE_POSTER 69 +#define DECOR_CUTE_POSTER 70 +#define DECOR_PIKA_POSTER 71 +#define DECOR_LONG_POSTER 72 +#define DECOR_SEA_POSTER 73 +#define DECOR_SKY_POSTER 74 +#define DECOR_KISS_POSTER 75 +#define DECOR_PICHU_DOLL 76 +#define DECOR_PIKACHU_DOLL 77 +#define DECOR_MARILL_DOLL 78 +#define DECOR_TOGEPI_DOLL 79 +#define DECOR_CYNDAQUIL_DOLL 80 +#define DECOR_CHIKORITA_DOLL 81 +#define DECOR_TOTODILE_DOLL 82 +#define DECOR_JIGGLYPUFF_DOLL 83 +#define DECOR_MEOWTH_DOLL 84 +#define DECOR_CLEFAIRY_DOLL 85 +#define DECOR_DITTO_DOLL 86 +#define DECOR_SMOOCHUM_DOLL 87 +#define DECOR_TREECKO_DOLL 88 +#define DECOR_TORCHIC_DOLL 89 +#define DECOR_MUDKIP_DOLL 90 +#define DECOR_DUSKULL_DOLL 91 +#define DECOR_WYNAUT_DOLL 92 +#define DECOR_BALTOY_DOLL 93 +#define DECOR_KECLEON_DOLL 94 +#define DECOR_AZURILL_DOLL 95 +#define DECOR_SKITTY_DOLL 96 +#define DECOR_SWABLU_DOLL 97 +#define DECOR_GULPIN_DOLL 98 +#define DECOR_LOTAD_DOLL 99 +#define DECOR_SEEDOT_DOLL 100 +#define DECOR_PIKA_CUSHION 101 +#define DECOR_ROUND_CUSHION 102 +#define DECOR_KISS_CUSHION 103 +#define DECOR_ZIGZAG_CUSHION 104 +#define DECOR_SPIN_CUSHION 105 +#define DECOR_DIAMOND_CUSHION 106 +#define DECOR_BALL_CUSHION 107 +#define DECOR_GRASS_CUSHION 108 +#define DECOR_FIRE_CUSHION 109 +#define DECOR_WATER_CUSHION 110 +#define DECOR_SNORLAX_DOLL 111 +#define DECOR_RHYDON_DOLL 112 +#define DECOR_LAPRAS_DOLL 113 +#define DECOR_VENUSAUR_DOLL 114 +#define DECOR_CHARIZARD_DOLL 115 +#define DECOR_BLASTOISE_DOLL 116 +#define DECOR_WAILMER_DOLL 117 +#define DECOR_REGIROCK_DOLL 118 +#define DECOR_REGICE_DOLL 119 +#define DECOR_REGISTEEL_DOLL 120 + +#endif // GUARD_CONSTANTS_DECORATIONS_H diff --git a/include/constants/easy_chat.h b/include/constants/easy_chat.h new file mode 100644 index 000000000..2c437c88e --- /dev/null +++ b/include/constants/easy_chat.h @@ -0,0 +1,1079 @@ +#ifndef GUARD_CONSTANTS_EASY_CHAT_H +#define GUARD_CONSTANTS_EASY_CHAT_H + +#define EC_GROUP_POKEMON 0x0 +#define EC_GROUP_TRAINER 0x1 +#define EC_GROUP_STATUS 0x2 +#define EC_GROUP_BATTLE 0x3 +#define EC_GROUP_GREETINGS 0x4 +#define EC_GROUP_PEOPLE 0x5 +#define EC_GROUP_VOICES 0x6 +#define EC_GROUP_SPEECH 0x7 +#define EC_GROUP_ENDINGS 0x8 +#define EC_GROUP_FEELINGS 0x9 +#define EC_GROUP_CONDITIONS 0xa +#define EC_GROUP_ACTIONS 0xb +#define EC_GROUP_LIFESTYLE 0xc +#define EC_GROUP_HOBBIES 0xd +#define EC_GROUP_TIME 0xe +#define EC_GROUP_MISC 0xf +#define EC_GROUP_ADJECTIVES 0x10 +#define EC_GROUP_EVENTS 0x11 +#define EC_GROUP_MOVE_1 0x12 +#define EC_GROUP_MOVE_2 0x13 +#define EC_GROUP_TRENDY_SAYING 0x14 +#define EC_GROUP_POKEMON_2 0x15 + +// TRAINER +#define EC_WORD_I_CHOOSE_YOU (EC_GROUP_TRAINER << 9) | 0x0 +#define EC_WORD_GOTCHA (EC_GROUP_TRAINER << 9) | 0x1 +#define EC_WORD_TRADE (EC_GROUP_TRAINER << 9) | 0x2 +#define EC_WORD_SAPPHIRE (EC_GROUP_TRAINER << 9) | 0x3 +#define EC_WORD_EVOLVE (EC_GROUP_TRAINER << 9) | 0x4 +#define EC_WORD_ENCYCLOPEDIA (EC_GROUP_TRAINER << 9) | 0x5 +#define EC_WORD_NATURE (EC_GROUP_TRAINER << 9) | 0x6 +#define EC_WORD_CENTER (EC_GROUP_TRAINER << 9) | 0x7 +#define EC_WORD_EGG (EC_GROUP_TRAINER << 9) | 0x8 +#define EC_WORD_LINK (EC_GROUP_TRAINER << 9) | 0x9 +#define EC_WORD_SP_ABILITY (EC_GROUP_TRAINER << 9) | 0xa +#define EC_WORD_TRAINER (EC_GROUP_TRAINER << 9) | 0xb +#define EC_WORD_VERSION (EC_GROUP_TRAINER << 9) | 0xc +#define EC_WORD_POKENAV (EC_GROUP_TRAINER << 9) | 0xd +#define EC_WORD_POKEMON (EC_GROUP_TRAINER << 9) | 0xe +#define EC_WORD_GET (EC_GROUP_TRAINER << 9) | 0xf +#define EC_WORD_POKEDEX (EC_GROUP_TRAINER << 9) | 0x10 +#define EC_WORD_RUBY (EC_GROUP_TRAINER << 9) | 0x11 +#define EC_WORD_LEVEL (EC_GROUP_TRAINER << 9) | 0x12 +#define EC_WORD_RED (EC_GROUP_TRAINER << 9) | 0x13 +#define EC_WORD_GREEN (EC_GROUP_TRAINER << 9) | 0x14 +#define EC_WORD_BAG (EC_GROUP_TRAINER << 9) | 0x15 +#define EC_WORD_FLAME (EC_GROUP_TRAINER << 9) | 0x16 +#define EC_WORD_GOLD (EC_GROUP_TRAINER << 9) | 0x17 +#define EC_WORD_LEAF (EC_GROUP_TRAINER << 9) | 0x18 +#define EC_WORD_SILVER (EC_GROUP_TRAINER << 9) | 0x19 +#define EC_WORD_EMERALD (EC_GROUP_TRAINER << 9) | 0x1a + +// STATUS +#define EC_WORD_DARK (EC_GROUP_STATUS << 9) | 0x0 +#define EC_WORD_STENCH (EC_GROUP_STATUS << 9) | 0x1 +#define EC_WORD_THICK_FAT (EC_GROUP_STATUS << 9) | 0x2 +#define EC_WORD_RAIN_DISH (EC_GROUP_STATUS << 9) | 0x3 +#define EC_WORD_DRIZZLE (EC_GROUP_STATUS << 9) | 0x4 +#define EC_WORD_ARENA_TRAP (EC_GROUP_STATUS << 9) | 0x5 +#define EC_WORD_INTIMIDATE (EC_GROUP_STATUS << 9) | 0x6 +#define EC_WORD_ROCK_HEAD (EC_GROUP_STATUS << 9) | 0x7 +#define EC_WORD_COLOR (EC_GROUP_STATUS << 9) | 0x8 +#define EC_WORD_ALT_COLOR (EC_GROUP_STATUS << 9) | 0x9 +#define EC_WORD_ROCK (EC_GROUP_STATUS << 9) | 0xa +#define EC_WORD_BEAUTIFUL (EC_GROUP_STATUS << 9) | 0xb +#define EC_WORD_BEAUTY (EC_GROUP_STATUS << 9) | 0xc +#define EC_WORD_AIR_LOCK (EC_GROUP_STATUS << 9) | 0xd +#define EC_WORD_PSYCHIC (EC_GROUP_STATUS << 9) | 0xe +#define EC_WORD_HYPER_CUTTER (EC_GROUP_STATUS << 9) | 0xf +#define EC_WORD_FIGHTING (EC_GROUP_STATUS << 9) | 0x10 +#define EC_WORD_SHADOW_TAG (EC_GROUP_STATUS << 9) | 0x11 +#define EC_WORD_SMART (EC_GROUP_STATUS << 9) | 0x12 +#define EC_WORD_SMARTNESS (EC_GROUP_STATUS << 9) | 0x13 +#define EC_WORD_SPEED_BOOST (EC_GROUP_STATUS << 9) | 0x14 +#define EC_WORD_COOL (EC_GROUP_STATUS << 9) | 0x15 +#define EC_WORD_COOLNESS (EC_GROUP_STATUS << 9) | 0x16 +#define EC_WORD_BATTLE_ARMOR (EC_GROUP_STATUS << 9) | 0x17 +#define EC_WORD_CUTE (EC_GROUP_STATUS << 9) | 0x18 +#define EC_WORD_CUTENESS (EC_GROUP_STATUS << 9) | 0x19 +#define EC_WORD_STURDY (EC_GROUP_STATUS << 9) | 0x1a +#define EC_WORD_SUCTION_CUPS (EC_GROUP_STATUS << 9) | 0x1b +#define EC_WORD_GRASS (EC_GROUP_STATUS << 9) | 0x1c +#define EC_WORD_CLEAR_BODY (EC_GROUP_STATUS << 9) | 0x1d +#define EC_WORD_TORRENT (EC_GROUP_STATUS << 9) | 0x1e +#define EC_WORD_GHOST (EC_GROUP_STATUS << 9) | 0x1f +#define EC_WORD_ICE (EC_GROUP_STATUS << 9) | 0x20 +#define EC_WORD_GUTS (EC_GROUP_STATUS << 9) | 0x21 +#define EC_WORD_ROUGH_SKIN (EC_GROUP_STATUS << 9) | 0x22 +#define EC_WORD_SHELL_ARMOR (EC_GROUP_STATUS << 9) | 0x23 +#define EC_WORD_NATURAL_CURE (EC_GROUP_STATUS << 9) | 0x24 +#define EC_WORD_DAMP (EC_GROUP_STATUS << 9) | 0x25 +#define EC_WORD_GROUND (EC_GROUP_STATUS << 9) | 0x26 +#define EC_WORD_LIMBER (EC_GROUP_STATUS << 9) | 0x27 +#define EC_WORD_MAGNET_PULL (EC_GROUP_STATUS << 9) | 0x28 +#define EC_WORD_WHITE_SMOKE (EC_GROUP_STATUS << 9) | 0x29 +#define EC_WORD_SYNCHRONIZE (EC_GROUP_STATUS << 9) | 0x2a +#define EC_WORD_OVERGROW (EC_GROUP_STATUS << 9) | 0x2b +#define EC_WORD_SWIFT_SWIM (EC_GROUP_STATUS << 9) | 0x2c +#define EC_WORD_SAND_STREAM (EC_GROUP_STATUS << 9) | 0x2d +#define EC_WORD_SAND_VEIL (EC_GROUP_STATUS << 9) | 0x2e +#define EC_WORD_KEEN_EYE (EC_GROUP_STATUS << 9) | 0x2f +#define EC_WORD_INNER_FOCUS (EC_GROUP_STATUS << 9) | 0x30 +#define EC_WORD_STATIC (EC_GROUP_STATUS << 9) | 0x31 +#define EC_WORD_TYPE (EC_GROUP_STATUS << 9) | 0x32 +#define EC_WORD_TOUGH (EC_GROUP_STATUS << 9) | 0x33 +#define EC_WORD_TOUGHNESS (EC_GROUP_STATUS << 9) | 0x34 +#define EC_WORD_SHED_SKIN (EC_GROUP_STATUS << 9) | 0x35 +#define EC_WORD_HUGE_POWER (EC_GROUP_STATUS << 9) | 0x36 +#define EC_WORD_VOLT_ABSORB (EC_GROUP_STATUS << 9) | 0x37 +#define EC_WORD_WATER_ABSORB (EC_GROUP_STATUS << 9) | 0x38 +#define EC_WORD_ELECTRIC (EC_GROUP_STATUS << 9) | 0x39 +#define EC_WORD_FORECAST (EC_GROUP_STATUS << 9) | 0x3a +#define EC_WORD_SERENE_GRACE (EC_GROUP_STATUS << 9) | 0x3b +#define EC_WORD_POISON (EC_GROUP_STATUS << 9) | 0x3c +#define EC_WORD_POISON_POINT (EC_GROUP_STATUS << 9) | 0x3d +#define EC_WORD_DRAGON (EC_GROUP_STATUS << 9) | 0x3e +#define EC_WORD_TRACE (EC_GROUP_STATUS << 9) | 0x3f +#define EC_WORD_OBLIVIOUS (EC_GROUP_STATUS << 9) | 0x40 +#define EC_WORD_TRUANT (EC_GROUP_STATUS << 9) | 0x41 +#define EC_WORD_RUN_AWAY (EC_GROUP_STATUS << 9) | 0x42 +#define EC_WORD_STICKY_HOLD (EC_GROUP_STATUS << 9) | 0x43 +#define EC_WORD_CLOUD_NINE (EC_GROUP_STATUS << 9) | 0x44 +#define EC_WORD_NORMAL (EC_GROUP_STATUS << 9) | 0x45 +#define EC_WORD_STEEL (EC_GROUP_STATUS << 9) | 0x46 +#define EC_WORD_ILLUMINATE (EC_GROUP_STATUS << 9) | 0x47 +#define EC_WORD_EARLY_BIRD (EC_GROUP_STATUS << 9) | 0x48 +#define EC_WORD_HUSTLE (EC_GROUP_STATUS << 9) | 0x49 +#define EC_WORD_SHINE (EC_GROUP_STATUS << 9) | 0x4a +#define EC_WORD_FLYING (EC_GROUP_STATUS << 9) | 0x4b +#define EC_WORD_DROUGHT (EC_GROUP_STATUS << 9) | 0x4c +#define EC_WORD_LIGHTNINGROD (EC_GROUP_STATUS << 9) | 0x4d +#define EC_WORD_COMPOUNDEYES (EC_GROUP_STATUS << 9) | 0x4e +#define EC_WORD_MARVEL_SCALE (EC_GROUP_STATUS << 9) | 0x4f +#define EC_WORD_WONDER_GUARD (EC_GROUP_STATUS << 9) | 0x50 +#define EC_WORD_INSOMNIA (EC_GROUP_STATUS << 9) | 0x51 +#define EC_WORD_LEVITATE (EC_GROUP_STATUS << 9) | 0x52 +#define EC_WORD_PLUS (EC_GROUP_STATUS << 9) | 0x53 +#define EC_WORD_PRESSURE (EC_GROUP_STATUS << 9) | 0x54 +#define EC_WORD_LIQUID_OOZE (EC_GROUP_STATUS << 9) | 0x55 +#define EC_WORD_COLOR_CHANGE (EC_GROUP_STATUS << 9) | 0x56 +#define EC_WORD_SOUNDPROOF (EC_GROUP_STATUS << 9) | 0x57 +#define EC_WORD_EFFECT_SPORE (EC_GROUP_STATUS << 9) | 0x58 +#define EC_WORD_PKRS (EC_GROUP_STATUS << 9) | 0x59 +#define EC_WORD_FIRE (EC_GROUP_STATUS << 9) | 0x5a +#define EC_WORD_FLAME_BODY (EC_GROUP_STATUS << 9) | 0x5b +#define EC_WORD_MINUS (EC_GROUP_STATUS << 9) | 0x5c +#define EC_WORD_OWN_TEMPO (EC_GROUP_STATUS << 9) | 0x5d +#define EC_WORD_MAGMA_ARMOR (EC_GROUP_STATUS << 9) | 0x5e +#define EC_WORD_WATER (EC_GROUP_STATUS << 9) | 0x5f +#define EC_WORD_WATER_VEIL (EC_GROUP_STATUS << 9) | 0x60 +#define EC_WORD_BUG (EC_GROUP_STATUS << 9) | 0x61 +#define EC_WORD_SWARM (EC_GROUP_STATUS << 9) | 0x62 +#define EC_WORD_CUTE_CHARM (EC_GROUP_STATUS << 9) | 0x63 +#define EC_WORD_IMMUNITY (EC_GROUP_STATUS << 9) | 0x64 +#define EC_WORD_BLAZE (EC_GROUP_STATUS << 9) | 0x65 +#define EC_WORD_PICKUP (EC_GROUP_STATUS << 9) | 0x66 +#define EC_WORD_PATTERN (EC_GROUP_STATUS << 9) | 0x67 +#define EC_WORD_FLASH_FIRE (EC_GROUP_STATUS << 9) | 0x68 +#define EC_WORD_VITAL_SPIRIT (EC_GROUP_STATUS << 9) | 0x69 +#define EC_WORD_CHLOROPHYLL (EC_GROUP_STATUS << 9) | 0x6a +#define EC_WORD_PURE_POWER (EC_GROUP_STATUS << 9) | 0x6b +#define EC_WORD_SHIELD_DUST (EC_GROUP_STATUS << 9) | 0x6c + +// BATTLE +#define EC_WORD_MATCH_UP (EC_GROUP_BATTLE << 9) | 0x0 +#define EC_WORD_GO (EC_GROUP_BATTLE << 9) | 0x1 +#define EC_WORD_NO_1 (EC_GROUP_BATTLE << 9) | 0x2 +#define EC_WORD_DECIDE (EC_GROUP_BATTLE << 9) | 0x3 +#define EC_WORD_LET_ME_WIN (EC_GROUP_BATTLE << 9) | 0x4 +#define EC_WORD_WINS (EC_GROUP_BATTLE << 9) | 0x5 +#define EC_WORD_WIN (EC_GROUP_BATTLE << 9) | 0x6 +#define EC_WORD_WON (EC_GROUP_BATTLE << 9) | 0x7 +#define EC_WORD_IF_I_WIN (EC_GROUP_BATTLE << 9) | 0x8 +#define EC_WORD_WHEN_I_WIN (EC_GROUP_BATTLE << 9) | 0x9 +#define EC_WORD_CAN_T_WIN (EC_GROUP_BATTLE << 9) | 0xa +#define EC_WORD_CAN_WIN (EC_GROUP_BATTLE << 9) | 0xb +#define EC_WORD_NO_MATCH (EC_GROUP_BATTLE << 9) | 0xc +#define EC_WORD_SPIRIT (EC_GROUP_BATTLE << 9) | 0xd +#define EC_WORD_DECIDED (EC_GROUP_BATTLE << 9) | 0xe +#define EC_WORD_TRUMP_CARD (EC_GROUP_BATTLE << 9) | 0xf +#define EC_WORD_TAKE_THAT (EC_GROUP_BATTLE << 9) | 0x10 +#define EC_WORD_COME_ON (EC_GROUP_BATTLE << 9) | 0x11 +#define EC_WORD_ATTACK (EC_GROUP_BATTLE << 9) | 0x12 +#define EC_WORD_SURRENDER (EC_GROUP_BATTLE << 9) | 0x13 +#define EC_WORD_GUTSY (EC_GROUP_BATTLE << 9) | 0x14 +#define EC_WORD_TALENT (EC_GROUP_BATTLE << 9) | 0x15 +#define EC_WORD_STRATEGY (EC_GROUP_BATTLE << 9) | 0x16 +#define EC_WORD_SMITE (EC_GROUP_BATTLE << 9) | 0x17 +#define EC_WORD_MATCH (EC_GROUP_BATTLE << 9) | 0x18 +#define EC_WORD_VICTORY (EC_GROUP_BATTLE << 9) | 0x19 +#define EC_WORD_OFFENSIVE (EC_GROUP_BATTLE << 9) | 0x1a +#define EC_WORD_SENSE (EC_GROUP_BATTLE << 9) | 0x1b +#define EC_WORD_VERSUS (EC_GROUP_BATTLE << 9) | 0x1c +#define EC_WORD_FIGHTS (EC_GROUP_BATTLE << 9) | 0x1d +#define EC_WORD_POWER (EC_GROUP_BATTLE << 9) | 0x1e +#define EC_WORD_CHALLENGE (EC_GROUP_BATTLE << 9) | 0x1f +#define EC_WORD_STRONG (EC_GROUP_BATTLE << 9) | 0x20 +#define EC_WORD_TOO_STRONG (EC_GROUP_BATTLE << 9) | 0x21 +#define EC_WORD_GO_EASY (EC_GROUP_BATTLE << 9) | 0x22 +#define EC_WORD_FOE (EC_GROUP_BATTLE << 9) | 0x23 +#define EC_WORD_GENIUS (EC_GROUP_BATTLE << 9) | 0x24 +#define EC_WORD_LEGEND (EC_GROUP_BATTLE << 9) | 0x25 +#define EC_WORD_ESCAPE (EC_GROUP_BATTLE << 9) | 0x26 +#define EC_WORD_AIM (EC_GROUP_BATTLE << 9) | 0x27 +#define EC_WORD_BATTLE (EC_GROUP_BATTLE << 9) | 0x28 +#define EC_WORD_FIGHT (EC_GROUP_BATTLE << 9) | 0x29 +#define EC_WORD_RESUSCITATE (EC_GROUP_BATTLE << 9) | 0x2a +#define EC_WORD_POINTS (EC_GROUP_BATTLE << 9) | 0x2b +#define EC_WORD_SERIOUS (EC_GROUP_BATTLE << 9) | 0x2c +#define EC_WORD_GIVE_UP (EC_GROUP_BATTLE << 9) | 0x2d +#define EC_WORD_LOSS (EC_GROUP_BATTLE << 9) | 0x2e +#define EC_WORD_IF_I_LOSE (EC_GROUP_BATTLE << 9) | 0x2f +#define EC_WORD_LOST (EC_GROUP_BATTLE << 9) | 0x30 +#define EC_WORD_LOSE (EC_GROUP_BATTLE << 9) | 0x31 +#define EC_WORD_GUARD (EC_GROUP_BATTLE << 9) | 0x32 +#define EC_WORD_PARTNER (EC_GROUP_BATTLE << 9) | 0x33 +#define EC_WORD_REJECT (EC_GROUP_BATTLE << 9) | 0x34 +#define EC_WORD_ACCEPT (EC_GROUP_BATTLE << 9) | 0x35 +#define EC_WORD_INVINCIBLE (EC_GROUP_BATTLE << 9) | 0x36 +#define EC_WORD_RECEIVED (EC_GROUP_BATTLE << 9) | 0x37 +#define EC_WORD_EASY (EC_GROUP_BATTLE << 9) | 0x38 +#define EC_WORD_WEAK (EC_GROUP_BATTLE << 9) | 0x39 +#define EC_WORD_TOO_WEAK (EC_GROUP_BATTLE << 9) | 0x3a +#define EC_WORD_PUSHOVER (EC_GROUP_BATTLE << 9) | 0x3b +#define EC_WORD_LEADER (EC_GROUP_BATTLE << 9) | 0x3c +#define EC_WORD_RULE (EC_GROUP_BATTLE << 9) | 0x3d +#define EC_WORD_MOVE (EC_GROUP_BATTLE << 9) | 0x3e + +// GREETINGS +#define EC_WORD_THANKS (EC_GROUP_GREETINGS << 9) | 0x0 +#define EC_WORD_YES (EC_GROUP_GREETINGS << 9) | 0x1 +#define EC_WORD_HERE_GOES (EC_GROUP_GREETINGS << 9) | 0x2 +#define EC_WORD_HERE_I_COME (EC_GROUP_GREETINGS << 9) | 0x3 +#define EC_WORD_HERE_IT_IS (EC_GROUP_GREETINGS << 9) | 0x4 +#define EC_WORD_YEAH (EC_GROUP_GREETINGS << 9) | 0x5 +#define EC_WORD_WELCOME (EC_GROUP_GREETINGS << 9) | 0x6 +#define EC_WORD_OI (EC_GROUP_GREETINGS << 9) | 0x7 +#define EC_WORD_HOW_DO (EC_GROUP_GREETINGS << 9) | 0x8 +#define EC_WORD_CONGRATS (EC_GROUP_GREETINGS << 9) | 0x9 +#define EC_WORD_GIVE_ME (EC_GROUP_GREETINGS << 9) | 0xa +#define EC_WORD_SORRY (EC_GROUP_GREETINGS << 9) | 0xb +#define EC_WORD_APOLOGIZE (EC_GROUP_GREETINGS << 9) | 0xc +#define EC_WORD_FORGIVE (EC_GROUP_GREETINGS << 9) | 0xd +#define EC_WORD_HEY_THERE (EC_GROUP_GREETINGS << 9) | 0xe +#define EC_WORD_HELLO (EC_GROUP_GREETINGS << 9) | 0xf +#define EC_WORD_GOOD_BYE (EC_GROUP_GREETINGS << 9) | 0x10 +#define EC_WORD_THANK_YOU (EC_GROUP_GREETINGS << 9) | 0x11 +#define EC_WORD_I_VE_ARRIVED (EC_GROUP_GREETINGS << 9) | 0x12 +#define EC_WORD_PARDON (EC_GROUP_GREETINGS << 9) | 0x13 +#define EC_WORD_EXCUSE (EC_GROUP_GREETINGS << 9) | 0x14 +#define EC_WORD_SEE_YA (EC_GROUP_GREETINGS << 9) | 0x15 +#define EC_WORD_EXCUSE_ME (EC_GROUP_GREETINGS << 9) | 0x16 +#define EC_WORD_WELL_THEN (EC_GROUP_GREETINGS << 9) | 0x17 +#define EC_WORD_GO_AHEAD (EC_GROUP_GREETINGS << 9) | 0x18 +#define EC_WORD_APPRECIATE (EC_GROUP_GREETINGS << 9) | 0x19 +#define EC_WORD_HEY_QUES (EC_GROUP_GREETINGS << 9) | 0x1a +#define EC_WORD_WHAT_S_UP_QUES (EC_GROUP_GREETINGS << 9) | 0x1b +#define EC_WORD_HUH_QUES (EC_GROUP_GREETINGS << 9) | 0x1c +#define EC_WORD_NO (EC_GROUP_GREETINGS << 9) | 0x1d +#define EC_WORD_HI (EC_GROUP_GREETINGS << 9) | 0x1e +#define EC_WORD_YEAH_YEAH (EC_GROUP_GREETINGS << 9) | 0x1f +#define EC_WORD_BYE_BYE (EC_GROUP_GREETINGS << 9) | 0x20 +#define EC_WORD_MEET_YOU (EC_GROUP_GREETINGS << 9) | 0x21 +#define EC_WORD_HEY (EC_GROUP_GREETINGS << 9) | 0x22 +#define EC_WORD_SMELL (EC_GROUP_GREETINGS << 9) | 0x23 +#define EC_WORD_LISTENING (EC_GROUP_GREETINGS << 9) | 0x24 +#define EC_WORD_HOO_HAH (EC_GROUP_GREETINGS << 9) | 0x25 +#define EC_WORD_YAHOO (EC_GROUP_GREETINGS << 9) | 0x26 +#define EC_WORD_YO (EC_GROUP_GREETINGS << 9) | 0x27 +#define EC_WORD_COME_OVER (EC_GROUP_GREETINGS << 9) | 0x28 +#define EC_WORD_COUNT_ON (EC_GROUP_GREETINGS << 9) | 0x29 + +// PEOPLE +#define EC_WORD_OPPONENT (EC_GROUP_PEOPLE << 9) | 0x0 +#define EC_WORD_I (EC_GROUP_PEOPLE << 9) | 0x1 +#define EC_WORD_YOU (EC_GROUP_PEOPLE << 9) | 0x2 +#define EC_WORD_YOURS (EC_GROUP_PEOPLE << 9) | 0x3 +#define EC_WORD_SON (EC_GROUP_PEOPLE << 9) | 0x4 +#define EC_WORD_YOUR (EC_GROUP_PEOPLE << 9) | 0x5 +#define EC_WORD_YOU_RE (EC_GROUP_PEOPLE << 9) | 0x6 +#define EC_WORD_YOU_VE (EC_GROUP_PEOPLE << 9) | 0x7 +#define EC_WORD_MOTHER (EC_GROUP_PEOPLE << 9) | 0x8 +#define EC_WORD_GRANDFATHER (EC_GROUP_PEOPLE << 9) | 0x9 +#define EC_WORD_UNCLE (EC_GROUP_PEOPLE << 9) | 0xa +#define EC_WORD_FATHER (EC_GROUP_PEOPLE << 9) | 0xb +#define EC_WORD_BOY (EC_GROUP_PEOPLE << 9) | 0xc +#define EC_WORD_ADULT (EC_GROUP_PEOPLE << 9) | 0xd +#define EC_WORD_BROTHER (EC_GROUP_PEOPLE << 9) | 0xe +#define EC_WORD_SISTER (EC_GROUP_PEOPLE << 9) | 0xf +#define EC_WORD_GRANDMOTHER (EC_GROUP_PEOPLE << 9) | 0x10 +#define EC_WORD_AUNT (EC_GROUP_PEOPLE << 9) | 0x11 +#define EC_WORD_PARENT (EC_GROUP_PEOPLE << 9) | 0x12 +#define EC_WORD_MAN (EC_GROUP_PEOPLE << 9) | 0x13 +#define EC_WORD_ME (EC_GROUP_PEOPLE << 9) | 0x14 +#define EC_WORD_GIRL (EC_GROUP_PEOPLE << 9) | 0x15 +#define EC_WORD_BABE (EC_GROUP_PEOPLE << 9) | 0x16 +#define EC_WORD_FAMILY (EC_GROUP_PEOPLE << 9) | 0x17 +#define EC_WORD_HER (EC_GROUP_PEOPLE << 9) | 0x18 +#define EC_WORD_HIM (EC_GROUP_PEOPLE << 9) | 0x19 +#define EC_WORD_HE (EC_GROUP_PEOPLE << 9) | 0x1a +#define EC_WORD_PLACE (EC_GROUP_PEOPLE << 9) | 0x1b +#define EC_WORD_DAUGHTER (EC_GROUP_PEOPLE << 9) | 0x1c +#define EC_WORD_HIS (EC_GROUP_PEOPLE << 9) | 0x1d +#define EC_WORD_HE_S (EC_GROUP_PEOPLE << 9) | 0x1e +#define EC_WORD_AREN_T (EC_GROUP_PEOPLE << 9) | 0x1f +#define EC_WORD_SIBLINGS (EC_GROUP_PEOPLE << 9) | 0x20 +#define EC_WORD_KID (EC_GROUP_PEOPLE << 9) | 0x21 +#define EC_WORD_CHILDREN (EC_GROUP_PEOPLE << 9) | 0x22 +#define EC_WORD_MR (EC_GROUP_PEOPLE << 9) | 0x23 +#define EC_WORD_MRS (EC_GROUP_PEOPLE << 9) | 0x24 +#define EC_WORD_MYSELF (EC_GROUP_PEOPLE << 9) | 0x25 +#define EC_WORD_I_WAS (EC_GROUP_PEOPLE << 9) | 0x26 +#define EC_WORD_TO_ME (EC_GROUP_PEOPLE << 9) | 0x27 +#define EC_WORD_MY (EC_GROUP_PEOPLE << 9) | 0x28 +#define EC_WORD_I_AM (EC_GROUP_PEOPLE << 9) | 0x29 +#define EC_WORD_I_VE (EC_GROUP_PEOPLE << 9) | 0x2a +#define EC_WORD_WHO (EC_GROUP_PEOPLE << 9) | 0x2b +#define EC_WORD_SOMEONE (EC_GROUP_PEOPLE << 9) | 0x2c +#define EC_WORD_WHO_WAS (EC_GROUP_PEOPLE << 9) | 0x2d +#define EC_WORD_TO_WHOM (EC_GROUP_PEOPLE << 9) | 0x2e +#define EC_WORD_WHOSE (EC_GROUP_PEOPLE << 9) | 0x2f +#define EC_WORD_WHO_IS (EC_GROUP_PEOPLE << 9) | 0x30 +#define EC_WORD_IT_S (EC_GROUP_PEOPLE << 9) | 0x31 +#define EC_WORD_LADY (EC_GROUP_PEOPLE << 9) | 0x32 +#define EC_WORD_FRIEND (EC_GROUP_PEOPLE << 9) | 0x33 +#define EC_WORD_ALLY (EC_GROUP_PEOPLE << 9) | 0x34 +#define EC_WORD_PERSON (EC_GROUP_PEOPLE << 9) | 0x35 +#define EC_WORD_DUDE (EC_GROUP_PEOPLE << 9) | 0x36 +#define EC_WORD_THEY (EC_GROUP_PEOPLE << 9) | 0x37 +#define EC_WORD_THEY_WERE (EC_GROUP_PEOPLE << 9) | 0x38 +#define EC_WORD_TO_THEM (EC_GROUP_PEOPLE << 9) | 0x39 +#define EC_WORD_THEIR (EC_GROUP_PEOPLE << 9) | 0x3a +#define EC_WORD_THEY_RE (EC_GROUP_PEOPLE << 9) | 0x3b +#define EC_WORD_THEY_VE (EC_GROUP_PEOPLE << 9) | 0x3c +#define EC_WORD_WE (EC_GROUP_PEOPLE << 9) | 0x3d +#define EC_WORD_BEEN (EC_GROUP_PEOPLE << 9) | 0x3e +#define EC_WORD_TO_US (EC_GROUP_PEOPLE << 9) | 0x3f +#define EC_WORD_OUR (EC_GROUP_PEOPLE << 9) | 0x40 +#define EC_WORD_WE_RE (EC_GROUP_PEOPLE << 9) | 0x41 +#define EC_WORD_RIVAL (EC_GROUP_PEOPLE << 9) | 0x42 +#define EC_WORD_WE_VE (EC_GROUP_PEOPLE << 9) | 0x43 +#define EC_WORD_WOMAN (EC_GROUP_PEOPLE << 9) | 0x44 +#define EC_WORD_SHE (EC_GROUP_PEOPLE << 9) | 0x45 +#define EC_WORD_SHE_WAS (EC_GROUP_PEOPLE << 9) | 0x46 +#define EC_WORD_TO_HER (EC_GROUP_PEOPLE << 9) | 0x47 +#define EC_WORD_HERS (EC_GROUP_PEOPLE << 9) | 0x48 +#define EC_WORD_SHE_IS (EC_GROUP_PEOPLE << 9) | 0x49 +#define EC_WORD_SOME (EC_GROUP_PEOPLE << 9) | 0x4a + +// VOICES +#define EC_WORD_EXCL (EC_GROUP_VOICES << 9) | 0x0 +#define EC_WORD_EXCL_EXCL (EC_GROUP_VOICES << 9) | 0x1 +#define EC_WORD_QUES_EXCL (EC_GROUP_VOICES << 9) | 0x2 +#define EC_WORD_QUES (EC_GROUP_VOICES << 9) | 0x3 +#define EC_WORD_ELLIPSIS (EC_GROUP_VOICES << 9) | 0x4 +#define EC_WORD_ELLIPSIS_EXCL (EC_GROUP_VOICES << 9) | 0x5 +#define EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS (EC_GROUP_VOICES << 9) | 0x6 +#define EC_WORD_DASH (EC_GROUP_VOICES << 9) | 0x7 +#define EC_WORD_DASH_DASH_DASH (EC_GROUP_VOICES << 9) | 0x8 +#define EC_WORD_UH_OH (EC_GROUP_VOICES << 9) | 0x9 +#define EC_WORD_WAAAH (EC_GROUP_VOICES << 9) | 0xa +#define EC_WORD_AHAHA (EC_GROUP_VOICES << 9) | 0xb +#define EC_WORD_OH_QUES (EC_GROUP_VOICES << 9) | 0xc +#define EC_WORD_NOPE (EC_GROUP_VOICES << 9) | 0xd +#define EC_WORD_URGH (EC_GROUP_VOICES << 9) | 0xe +#define EC_WORD_HMM (EC_GROUP_VOICES << 9) | 0xf +#define EC_WORD_WHOAH (EC_GROUP_VOICES << 9) | 0x10 +#define EC_WORD_WROOOAAR_EXCL (EC_GROUP_VOICES << 9) | 0x11 +#define EC_WORD_WOW (EC_GROUP_VOICES << 9) | 0x12 +#define EC_WORD_GIGGLE (EC_GROUP_VOICES << 9) | 0x13 +#define EC_WORD_SIGH (EC_GROUP_VOICES << 9) | 0x14 +#define EC_WORD_UNBELIEVABLE (EC_GROUP_VOICES << 9) | 0x15 +#define EC_WORD_CRIES (EC_GROUP_VOICES << 9) | 0x16 +#define EC_WORD_AGREE (EC_GROUP_VOICES << 9) | 0x17 +#define EC_WORD_EH_QUES (EC_GROUP_VOICES << 9) | 0x18 +#define EC_WORD_CRY (EC_GROUP_VOICES << 9) | 0x19 +#define EC_WORD_EHEHE (EC_GROUP_VOICES << 9) | 0x1a +#define EC_WORD_OI_OI_OI (EC_GROUP_VOICES << 9) | 0x1b +#define EC_WORD_OH_YEAH (EC_GROUP_VOICES << 9) | 0x1c +#define EC_WORD_OH (EC_GROUP_VOICES << 9) | 0x1d +#define EC_WORD_OOPS (EC_GROUP_VOICES << 9) | 0x1e +#define EC_WORD_SHOCKED (EC_GROUP_VOICES << 9) | 0x1f +#define EC_WORD_EEK (EC_GROUP_VOICES << 9) | 0x20 +#define EC_WORD_GRAAAH (EC_GROUP_VOICES << 9) | 0x21 +#define EC_WORD_GWAHAHAHA (EC_GROUP_VOICES << 9) | 0x22 +#define EC_WORD_WAY (EC_GROUP_VOICES << 9) | 0x23 +#define EC_WORD_TCH (EC_GROUP_VOICES << 9) | 0x24 +#define EC_WORD_HEHE (EC_GROUP_VOICES << 9) | 0x25 +#define EC_WORD_HAH (EC_GROUP_VOICES << 9) | 0x26 +#define EC_WORD_YUP (EC_GROUP_VOICES << 9) | 0x27 +#define EC_WORD_HAHAHA (EC_GROUP_VOICES << 9) | 0x28 +#define EC_WORD_AIYEEH (EC_GROUP_VOICES << 9) | 0x29 +#define EC_WORD_HIYAH (EC_GROUP_VOICES << 9) | 0x2a +#define EC_WORD_FUFUFU (EC_GROUP_VOICES << 9) | 0x2b +#define EC_WORD_LOL (EC_GROUP_VOICES << 9) | 0x2c +#define EC_WORD_SNORT (EC_GROUP_VOICES << 9) | 0x2d +#define EC_WORD_HUMPH (EC_GROUP_VOICES << 9) | 0x2e +#define EC_WORD_HEHEHE (EC_GROUP_VOICES << 9) | 0x2f +#define EC_WORD_HEH (EC_GROUP_VOICES << 9) | 0x30 +#define EC_WORD_HOHOHO (EC_GROUP_VOICES << 9) | 0x31 +#define EC_WORD_UH_HUH (EC_GROUP_VOICES << 9) | 0x32 +#define EC_WORD_OH_DEAR (EC_GROUP_VOICES << 9) | 0x33 +#define EC_WORD_ARRGH (EC_GROUP_VOICES << 9) | 0x34 +#define EC_WORD_MUFUFU (EC_GROUP_VOICES << 9) | 0x35 +#define EC_WORD_MMM (EC_GROUP_VOICES << 9) | 0x36 +#define EC_WORD_OH_KAY (EC_GROUP_VOICES << 9) | 0x37 +#define EC_WORD_OKAY (EC_GROUP_VOICES << 9) | 0x38 +#define EC_WORD_LALALA (EC_GROUP_VOICES << 9) | 0x39 +#define EC_WORD_YAY (EC_GROUP_VOICES << 9) | 0x3a +#define EC_WORD_AWW (EC_GROUP_VOICES << 9) | 0x3b +#define EC_WORD_WOWEE (EC_GROUP_VOICES << 9) | 0x3c +#define EC_WORD_GWAH (EC_GROUP_VOICES << 9) | 0x3d +#define EC_WORD_WAHAHAHA (EC_GROUP_VOICES << 9) | 0x3e + +// SPEECH +#define EC_WORD_LISTEN (EC_GROUP_SPEECH << 9) | 0x0 +#define EC_WORD_NOT_VERY (EC_GROUP_SPEECH << 9) | 0x1 +#define EC_WORD_MEAN (EC_GROUP_SPEECH << 9) | 0x2 +#define EC_WORD_LIE (EC_GROUP_SPEECH << 9) | 0x3 +#define EC_WORD_LAY (EC_GROUP_SPEECH << 9) | 0x4 +#define EC_WORD_RECOMMEND (EC_GROUP_SPEECH << 9) | 0x5 +#define EC_WORD_NITWIT (EC_GROUP_SPEECH << 9) | 0x6 +#define EC_WORD_QUITE (EC_GROUP_SPEECH << 9) | 0x7 +#define EC_WORD_FROM (EC_GROUP_SPEECH << 9) | 0x8 +#define EC_WORD_FEELING (EC_GROUP_SPEECH << 9) | 0x9 +#define EC_WORD_BUT (EC_GROUP_SPEECH << 9) | 0xa +#define EC_WORD_HOWEVER (EC_GROUP_SPEECH << 9) | 0xb +#define EC_WORD_CASE (EC_GROUP_SPEECH << 9) | 0xc +#define EC_WORD_THE (EC_GROUP_SPEECH << 9) | 0xd +#define EC_WORD_MISS (EC_GROUP_SPEECH << 9) | 0xe +#define EC_WORD_HOW (EC_GROUP_SPEECH << 9) | 0xf +#define EC_WORD_HIT (EC_GROUP_SPEECH << 9) | 0x10 +#define EC_WORD_ENOUGH (EC_GROUP_SPEECH << 9) | 0x11 +#define EC_WORD_A_LOT (EC_GROUP_SPEECH << 9) | 0x12 +#define EC_WORD_A_LITTLE (EC_GROUP_SPEECH << 9) | 0x13 +#define EC_WORD_ABSOLUTELY (EC_GROUP_SPEECH << 9) | 0x14 +#define EC_WORD_AND (EC_GROUP_SPEECH << 9) | 0x15 +#define EC_WORD_ONLY (EC_GROUP_SPEECH << 9) | 0x16 +#define EC_WORD_AROUND (EC_GROUP_SPEECH << 9) | 0x17 +#define EC_WORD_PROBABLY (EC_GROUP_SPEECH << 9) | 0x18 +#define EC_WORD_IF (EC_GROUP_SPEECH << 9) | 0x19 +#define EC_WORD_VERY (EC_GROUP_SPEECH << 9) | 0x1a +#define EC_WORD_A_TINY_BIT (EC_GROUP_SPEECH << 9) | 0x1b +#define EC_WORD_WILD (EC_GROUP_SPEECH << 9) | 0x1c +#define EC_WORD_THAT_S (EC_GROUP_SPEECH << 9) | 0x1d +#define EC_WORD_JUST (EC_GROUP_SPEECH << 9) | 0x1e +#define EC_WORD_EVEN_SO (EC_GROUP_SPEECH << 9) | 0x1f +#define EC_WORD_MUST_BE (EC_GROUP_SPEECH << 9) | 0x20 +#define EC_WORD_NATURALLY (EC_GROUP_SPEECH << 9) | 0x21 +#define EC_WORD_FOR_NOW (EC_GROUP_SPEECH << 9) | 0x22 +#define EC_WORD_UNDERSTOOD (EC_GROUP_SPEECH << 9) | 0x23 +#define EC_WORD_JOKING (EC_GROUP_SPEECH << 9) | 0x24 +#define EC_WORD_READY (EC_GROUP_SPEECH << 9) | 0x25 +#define EC_WORD_SOMETHING (EC_GROUP_SPEECH << 9) | 0x26 +#define EC_WORD_SOMEHOW (EC_GROUP_SPEECH << 9) | 0x27 +#define EC_WORD_ALTHOUGH (EC_GROUP_SPEECH << 9) | 0x28 +#define EC_WORD_ALSO (EC_GROUP_SPEECH << 9) | 0x29 +#define EC_WORD_PERFECT (EC_GROUP_SPEECH << 9) | 0x2a +#define EC_WORD_AS_MUCH_AS (EC_GROUP_SPEECH << 9) | 0x2b +#define EC_WORD_REALLY (EC_GROUP_SPEECH << 9) | 0x2c +#define EC_WORD_TRULY (EC_GROUP_SPEECH << 9) | 0x2d +#define EC_WORD_SERIOUSLY (EC_GROUP_SPEECH << 9) | 0x2e +#define EC_WORD_TOTALLY (EC_GROUP_SPEECH << 9) | 0x2f +#define EC_WORD_UNTIL (EC_GROUP_SPEECH << 9) | 0x30 +#define EC_WORD_AS_IF (EC_GROUP_SPEECH << 9) | 0x31 +#define EC_WORD_MOOD (EC_GROUP_SPEECH << 9) | 0x32 +#define EC_WORD_RATHER (EC_GROUP_SPEECH << 9) | 0x33 +#define EC_WORD_AWFULLY (EC_GROUP_SPEECH << 9) | 0x34 +#define EC_WORD_MODE (EC_GROUP_SPEECH << 9) | 0x35 +#define EC_WORD_MORE (EC_GROUP_SPEECH << 9) | 0x36 +#define EC_WORD_TOO_LATE (EC_GROUP_SPEECH << 9) | 0x37 +#define EC_WORD_FINALLY (EC_GROUP_SPEECH << 9) | 0x38 +#define EC_WORD_ANY (EC_GROUP_SPEECH << 9) | 0x39 +#define EC_WORD_INSTEAD (EC_GROUP_SPEECH << 9) | 0x3a +#define EC_WORD_FANTASTIC (EC_GROUP_SPEECH << 9) | 0x3b + +// ENDINGS +#define EC_WORD_WILL (EC_GROUP_ENDINGS << 9) | 0x0 +#define EC_WORD_WILL_BE_HERE (EC_GROUP_ENDINGS << 9) | 0x1 +#define EC_WORD_OR (EC_GROUP_ENDINGS << 9) | 0x2 +#define EC_WORD_TIMES (EC_GROUP_ENDINGS << 9) | 0x3 +#define EC_WORD_WONDER (EC_GROUP_ENDINGS << 9) | 0x4 +#define EC_WORD_IS_IT_QUES (EC_GROUP_ENDINGS << 9) | 0x5 +#define EC_WORD_BE (EC_GROUP_ENDINGS << 9) | 0x6 +#define EC_WORD_GIMME (EC_GROUP_ENDINGS << 9) | 0x7 +#define EC_WORD_COULD (EC_GROUP_ENDINGS << 9) | 0x8 +#define EC_WORD_LIKELY_TO (EC_GROUP_ENDINGS << 9) | 0x9 +#define EC_WORD_WOULD (EC_GROUP_ENDINGS << 9) | 0xa +#define EC_WORD_IS (EC_GROUP_ENDINGS << 9) | 0xb +#define EC_WORD_ISN_T_IT_QUES (EC_GROUP_ENDINGS << 9) | 0xc +#define EC_WORD_LET_S (EC_GROUP_ENDINGS << 9) | 0xd +#define EC_WORD_OTHER (EC_GROUP_ENDINGS << 9) | 0xe +#define EC_WORD_ARE (EC_GROUP_ENDINGS << 9) | 0xf +#define EC_WORD_WAS (EC_GROUP_ENDINGS << 9) | 0x10 +#define EC_WORD_WERE (EC_GROUP_ENDINGS << 9) | 0x11 +#define EC_WORD_THOSE (EC_GROUP_ENDINGS << 9) | 0x12 +#define EC_WORD_ISN_T (EC_GROUP_ENDINGS << 9) | 0x13 +#define EC_WORD_WON_T (EC_GROUP_ENDINGS << 9) | 0x14 +#define EC_WORD_CAN_T (EC_GROUP_ENDINGS << 9) | 0x15 +#define EC_WORD_CAN (EC_GROUP_ENDINGS << 9) | 0x16 +#define EC_WORD_DON_T (EC_GROUP_ENDINGS << 9) | 0x17 +#define EC_WORD_DO (EC_GROUP_ENDINGS << 9) | 0x18 +#define EC_WORD_DOES (EC_GROUP_ENDINGS << 9) | 0x19 +#define EC_WORD_WHOM (EC_GROUP_ENDINGS << 9) | 0x1a +#define EC_WORD_WHICH (EC_GROUP_ENDINGS << 9) | 0x1b +#define EC_WORD_WASN_T (EC_GROUP_ENDINGS << 9) | 0x1c +#define EC_WORD_WEREN_T (EC_GROUP_ENDINGS << 9) | 0x1d +#define EC_WORD_HAVE (EC_GROUP_ENDINGS << 9) | 0x1e +#define EC_WORD_HAVEN_T (EC_GROUP_ENDINGS << 9) | 0x1f +#define EC_WORD_A (EC_GROUP_ENDINGS << 9) | 0x20 +#define EC_WORD_AN (EC_GROUP_ENDINGS << 9) | 0x21 +#define EC_WORD_NOT (EC_GROUP_ENDINGS << 9) | 0x22 +#define EC_WORD_THERE (EC_GROUP_ENDINGS << 9) | 0x23 +#define EC_WORD_OK_QUES (EC_GROUP_ENDINGS << 9) | 0x24 +#define EC_WORD_SO (EC_GROUP_ENDINGS << 9) | 0x25 +#define EC_WORD_MAYBE (EC_GROUP_ENDINGS << 9) | 0x26 +#define EC_WORD_ABOUT (EC_GROUP_ENDINGS << 9) | 0x27 +#define EC_WORD_OVER (EC_GROUP_ENDINGS << 9) | 0x28 +#define EC_WORD_IT (EC_GROUP_ENDINGS << 9) | 0x29 +#define EC_WORD_ALL (EC_GROUP_ENDINGS << 9) | 0x2a +#define EC_WORD_FOR (EC_GROUP_ENDINGS << 9) | 0x2b +#define EC_WORD_ON (EC_GROUP_ENDINGS << 9) | 0x2c +#define EC_WORD_OFF (EC_GROUP_ENDINGS << 9) | 0x2d +#define EC_WORD_AS (EC_GROUP_ENDINGS << 9) | 0x2e +#define EC_WORD_TO (EC_GROUP_ENDINGS << 9) | 0x2f +#define EC_WORD_WITH (EC_GROUP_ENDINGS << 9) | 0x30 +#define EC_WORD_BETTER (EC_GROUP_ENDINGS << 9) | 0x31 +#define EC_WORD_EVER (EC_GROUP_ENDINGS << 9) | 0x32 +#define EC_WORD_SINCE (EC_GROUP_ENDINGS << 9) | 0x33 +#define EC_WORD_OF (EC_GROUP_ENDINGS << 9) | 0x34 +#define EC_WORD_BELONGS_TO (EC_GROUP_ENDINGS << 9) | 0x35 +#define EC_WORD_AT (EC_GROUP_ENDINGS << 9) | 0x36 +#define EC_WORD_IN (EC_GROUP_ENDINGS << 9) | 0x37 +#define EC_WORD_OUT (EC_GROUP_ENDINGS << 9) | 0x38 +#define EC_WORD_TOO (EC_GROUP_ENDINGS << 9) | 0x39 +#define EC_WORD_LIKE (EC_GROUP_ENDINGS << 9) | 0x3a +#define EC_WORD_DID (EC_GROUP_ENDINGS << 9) | 0x3b +#define EC_WORD_DIDN_T (EC_GROUP_ENDINGS << 9) | 0x3c +#define EC_WORD_DOESN_T (EC_GROUP_ENDINGS << 9) | 0x3d +#define EC_WORD_WITHOUT (EC_GROUP_ENDINGS << 9) | 0x3e +#define EC_WORD_AFTER (EC_GROUP_ENDINGS << 9) | 0x3f +#define EC_WORD_BEFORE (EC_GROUP_ENDINGS << 9) | 0x40 +#define EC_WORD_WHILE (EC_GROUP_ENDINGS << 9) | 0x41 +#define EC_WORD_THAN (EC_GROUP_ENDINGS << 9) | 0x42 +#define EC_WORD_ONCE (EC_GROUP_ENDINGS << 9) | 0x43 +#define EC_WORD_ANYWHERE (EC_GROUP_ENDINGS << 9) | 0x44 + +// FEELINGS +#define EC_WORD_MEET (EC_GROUP_FEELINGS << 9) | 0x0 +#define EC_WORD_PLAY (EC_GROUP_FEELINGS << 9) | 0x1 +#define EC_WORD_HURRIED (EC_GROUP_FEELINGS << 9) | 0x2 +#define EC_WORD_GOES (EC_GROUP_FEELINGS << 9) | 0x3 +#define EC_WORD_GIDDY (EC_GROUP_FEELINGS << 9) | 0x4 +#define EC_WORD_HAPPY (EC_GROUP_FEELINGS << 9) | 0x5 +#define EC_WORD_HAPPINESS (EC_GROUP_FEELINGS << 9) | 0x6 +#define EC_WORD_EXCITE (EC_GROUP_FEELINGS << 9) | 0x7 +#define EC_WORD_IMPORTANT (EC_GROUP_FEELINGS << 9) | 0x8 +#define EC_WORD_FUNNY (EC_GROUP_FEELINGS << 9) | 0x9 +#define EC_WORD_GOT (EC_GROUP_FEELINGS << 9) | 0xa +#define EC_WORD_GO_HOME (EC_GROUP_FEELINGS << 9) | 0xb +#define EC_WORD_DISAPPOINTED (EC_GROUP_FEELINGS << 9) | 0xc +#define EC_WORD_DISAPPOINTS (EC_GROUP_FEELINGS << 9) | 0xd +#define EC_WORD_SAD (EC_GROUP_FEELINGS << 9) | 0xe +#define EC_WORD_TRY (EC_GROUP_FEELINGS << 9) | 0xf +#define EC_WORD_TRIES (EC_GROUP_FEELINGS << 9) | 0x10 +#define EC_WORD_HEARS (EC_GROUP_FEELINGS << 9) | 0x11 +#define EC_WORD_THINK (EC_GROUP_FEELINGS << 9) | 0x12 +#define EC_WORD_HEAR (EC_GROUP_FEELINGS << 9) | 0x13 +#define EC_WORD_WANTS (EC_GROUP_FEELINGS << 9) | 0x14 +#define EC_WORD_MISHEARD (EC_GROUP_FEELINGS << 9) | 0x15 +#define EC_WORD_DISLIKE (EC_GROUP_FEELINGS << 9) | 0x16 +#define EC_WORD_ANGRY (EC_GROUP_FEELINGS << 9) | 0x17 +#define EC_WORD_ANGER (EC_GROUP_FEELINGS << 9) | 0x18 +#define EC_WORD_SCARY (EC_GROUP_FEELINGS << 9) | 0x19 +#define EC_WORD_LONESOME (EC_GROUP_FEELINGS << 9) | 0x1a +#define EC_WORD_DISAPPOINT (EC_GROUP_FEELINGS << 9) | 0x1b +#define EC_WORD_JOY (EC_GROUP_FEELINGS << 9) | 0x1c +#define EC_WORD_GETS (EC_GROUP_FEELINGS << 9) | 0x1d +#define EC_WORD_NEVER (EC_GROUP_FEELINGS << 9) | 0x1e +#define EC_WORD_DARN (EC_GROUP_FEELINGS << 9) | 0x1f +#define EC_WORD_DOWNCAST (EC_GROUP_FEELINGS << 9) | 0x20 +#define EC_WORD_INCREDIBLE (EC_GROUP_FEELINGS << 9) | 0x21 +#define EC_WORD_LIKES (EC_GROUP_FEELINGS << 9) | 0x22 +#define EC_WORD_DISLIKES (EC_GROUP_FEELINGS << 9) | 0x23 +#define EC_WORD_BORING (EC_GROUP_FEELINGS << 9) | 0x24 +#define EC_WORD_CARE (EC_GROUP_FEELINGS << 9) | 0x25 +#define EC_WORD_CARES (EC_GROUP_FEELINGS << 9) | 0x26 +#define EC_WORD_ALL_RIGHT (EC_GROUP_FEELINGS << 9) | 0x27 +#define EC_WORD_ADORE (EC_GROUP_FEELINGS << 9) | 0x28 +#define EC_WORD_DISASTER (EC_GROUP_FEELINGS << 9) | 0x29 +#define EC_WORD_ENJOY (EC_GROUP_FEELINGS << 9) | 0x2a +#define EC_WORD_ENJOYS (EC_GROUP_FEELINGS << 9) | 0x2b +#define EC_WORD_EAT (EC_GROUP_FEELINGS << 9) | 0x2c +#define EC_WORD_LACKING (EC_GROUP_FEELINGS << 9) | 0x2d +#define EC_WORD_BAD (EC_GROUP_FEELINGS << 9) | 0x2e +#define EC_WORD_HARD (EC_GROUP_FEELINGS << 9) | 0x2f +#define EC_WORD_TERRIBLE (EC_GROUP_FEELINGS << 9) | 0x30 +#define EC_WORD_SHOULD (EC_GROUP_FEELINGS << 9) | 0x31 +#define EC_WORD_NICE (EC_GROUP_FEELINGS << 9) | 0x32 +#define EC_WORD_DRINK (EC_GROUP_FEELINGS << 9) | 0x33 +#define EC_WORD_SURPRISE (EC_GROUP_FEELINGS << 9) | 0x34 +#define EC_WORD_FEAR (EC_GROUP_FEELINGS << 9) | 0x35 +#define EC_WORD_WANT (EC_GROUP_FEELINGS << 9) | 0x36 +#define EC_WORD_WAIT (EC_GROUP_FEELINGS << 9) | 0x37 +#define EC_WORD_SATISFIED (EC_GROUP_FEELINGS << 9) | 0x38 +#define EC_WORD_SEE (EC_GROUP_FEELINGS << 9) | 0x39 +#define EC_WORD_RARE (EC_GROUP_FEELINGS << 9) | 0x3a +#define EC_WORD_NEGATIVE (EC_GROUP_FEELINGS << 9) | 0x3b +#define EC_WORD_DONE (EC_GROUP_FEELINGS << 9) | 0x3c +#define EC_WORD_DANGER (EC_GROUP_FEELINGS << 9) | 0x3d +#define EC_WORD_DEFEATED (EC_GROUP_FEELINGS << 9) | 0x3e +#define EC_WORD_BEAT (EC_GROUP_FEELINGS << 9) | 0x3f +#define EC_WORD_GREAT (EC_GROUP_FEELINGS << 9) | 0x40 +#define EC_WORD_ROMANTIC (EC_GROUP_FEELINGS << 9) | 0x41 +#define EC_WORD_QUESTION (EC_GROUP_FEELINGS << 9) | 0x42 +#define EC_WORD_UNDERSTAND (EC_GROUP_FEELINGS << 9) | 0x43 +#define EC_WORD_UNDERSTANDS (EC_GROUP_FEELINGS << 9) | 0x44 + +// CONDITIONS +#define EC_WORD_HOT (EC_GROUP_CONDITIONS << 9) | 0x0 +#define EC_WORD_EXISTS (EC_GROUP_CONDITIONS << 9) | 0x1 +#define EC_WORD_EXCESS (EC_GROUP_CONDITIONS << 9) | 0x2 +#define EC_WORD_APPROVED (EC_GROUP_CONDITIONS << 9) | 0x3 +#define EC_WORD_HAS (EC_GROUP_CONDITIONS << 9) | 0x4 +#define EC_WORD_GOOD (EC_GROUP_CONDITIONS << 9) | 0x5 +#define EC_WORD_LESS (EC_GROUP_CONDITIONS << 9) | 0x6 +#define EC_WORD_MOMENTUM (EC_GROUP_CONDITIONS << 9) | 0x7 +#define EC_WORD_GOING (EC_GROUP_CONDITIONS << 9) | 0x8 +#define EC_WORD_WEIRD (EC_GROUP_CONDITIONS << 9) | 0x9 +#define EC_WORD_BUSY (EC_GROUP_CONDITIONS << 9) | 0xa +#define EC_WORD_TOGETHER (EC_GROUP_CONDITIONS << 9) | 0xb +#define EC_WORD_FULL (EC_GROUP_CONDITIONS << 9) | 0xc +#define EC_WORD_ABSENT (EC_GROUP_CONDITIONS << 9) | 0xd +#define EC_WORD_BEING (EC_GROUP_CONDITIONS << 9) | 0xe +#define EC_WORD_NEED (EC_GROUP_CONDITIONS << 9) | 0xf +#define EC_WORD_TASTY (EC_GROUP_CONDITIONS << 9) | 0x10 +#define EC_WORD_SKILLED (EC_GROUP_CONDITIONS << 9) | 0x11 +#define EC_WORD_NOISY (EC_GROUP_CONDITIONS << 9) | 0x12 +#define EC_WORD_BIG (EC_GROUP_CONDITIONS << 9) | 0x13 +#define EC_WORD_LATE (EC_GROUP_CONDITIONS << 9) | 0x14 +#define EC_WORD_CLOSE (EC_GROUP_CONDITIONS << 9) | 0x15 +#define EC_WORD_DOCILE (EC_GROUP_CONDITIONS << 9) | 0x16 +#define EC_WORD_AMUSING (EC_GROUP_CONDITIONS << 9) | 0x17 +#define EC_WORD_ENTERTAINING (EC_GROUP_CONDITIONS << 9) | 0x18 +#define EC_WORD_PERFECTION (EC_GROUP_CONDITIONS << 9) | 0x19 +#define EC_WORD_PRETTY (EC_GROUP_CONDITIONS << 9) | 0x1a +#define EC_WORD_HEALTHY (EC_GROUP_CONDITIONS << 9) | 0x1b +#define EC_WORD_EXCELLENT (EC_GROUP_CONDITIONS << 9) | 0x1c +#define EC_WORD_UPSIDE_DOWN (EC_GROUP_CONDITIONS << 9) | 0x1d +#define EC_WORD_COLD (EC_GROUP_CONDITIONS << 9) | 0x1e +#define EC_WORD_REFRESHING (EC_GROUP_CONDITIONS << 9) | 0x1f +#define EC_WORD_UNAVOIDABLE (EC_GROUP_CONDITIONS << 9) | 0x20 +#define EC_WORD_MUCH (EC_GROUP_CONDITIONS << 9) | 0x21 +#define EC_WORD_OVERWHELMING (EC_GROUP_CONDITIONS << 9) | 0x22 +#define EC_WORD_FABULOUS (EC_GROUP_CONDITIONS << 9) | 0x23 +#define EC_WORD_ELSE (EC_GROUP_CONDITIONS << 9) | 0x24 +#define EC_WORD_EXPENSIVE (EC_GROUP_CONDITIONS << 9) | 0x25 +#define EC_WORD_CORRECT (EC_GROUP_CONDITIONS << 9) | 0x26 +#define EC_WORD_IMPOSSIBLE (EC_GROUP_CONDITIONS << 9) | 0x27 +#define EC_WORD_SMALL (EC_GROUP_CONDITIONS << 9) | 0x28 +#define EC_WORD_DIFFERENT (EC_GROUP_CONDITIONS << 9) | 0x29 +#define EC_WORD_TIRED (EC_GROUP_CONDITIONS << 9) | 0x2a +#define EC_WORD_SKILL (EC_GROUP_CONDITIONS << 9) | 0x2b +#define EC_WORD_TOP (EC_GROUP_CONDITIONS << 9) | 0x2c +#define EC_WORD_NON_STOP (EC_GROUP_CONDITIONS << 9) | 0x2d +#define EC_WORD_PREPOSTEROUS (EC_GROUP_CONDITIONS << 9) | 0x2e +#define EC_WORD_NONE (EC_GROUP_CONDITIONS << 9) | 0x2f +#define EC_WORD_NOTHING (EC_GROUP_CONDITIONS << 9) | 0x30 +#define EC_WORD_NATURAL (EC_GROUP_CONDITIONS << 9) | 0x31 +#define EC_WORD_BECOMES (EC_GROUP_CONDITIONS << 9) | 0x32 +#define EC_WORD_LUKEWARM (EC_GROUP_CONDITIONS << 9) | 0x33 +#define EC_WORD_FAST (EC_GROUP_CONDITIONS << 9) | 0x34 +#define EC_WORD_LOW (EC_GROUP_CONDITIONS << 9) | 0x35 +#define EC_WORD_AWFUL (EC_GROUP_CONDITIONS << 9) | 0x36 +#define EC_WORD_ALONE (EC_GROUP_CONDITIONS << 9) | 0x37 +#define EC_WORD_BORED (EC_GROUP_CONDITIONS << 9) | 0x38 +#define EC_WORD_SECRET (EC_GROUP_CONDITIONS << 9) | 0x39 +#define EC_WORD_MYSTERY (EC_GROUP_CONDITIONS << 9) | 0x3a +#define EC_WORD_LACKS (EC_GROUP_CONDITIONS << 9) | 0x3b +#define EC_WORD_BEST (EC_GROUP_CONDITIONS << 9) | 0x3c +#define EC_WORD_LOUSY (EC_GROUP_CONDITIONS << 9) | 0x3d +#define EC_WORD_MISTAKE (EC_GROUP_CONDITIONS << 9) | 0x3e +#define EC_WORD_KIND (EC_GROUP_CONDITIONS << 9) | 0x3f +#define EC_WORD_WELL (EC_GROUP_CONDITIONS << 9) | 0x40 +#define EC_WORD_WEAKENED (EC_GROUP_CONDITIONS << 9) | 0x41 +#define EC_WORD_SIMPLE (EC_GROUP_CONDITIONS << 9) | 0x42 +#define EC_WORD_SEEMS (EC_GROUP_CONDITIONS << 9) | 0x43 +#define EC_WORD_BADLY (EC_GROUP_CONDITIONS << 9) | 0x44 + +// ACTIONS +#define EC_WORD_MEETS (EC_GROUP_ACTIONS << 9) | 0x0 +#define EC_WORD_CONCEDE (EC_GROUP_ACTIONS << 9) | 0x1 +#define EC_WORD_GIVE (EC_GROUP_ACTIONS << 9) | 0x2 +#define EC_WORD_GIVES (EC_GROUP_ACTIONS << 9) | 0x3 +#define EC_WORD_PLAYED (EC_GROUP_ACTIONS << 9) | 0x4 +#define EC_WORD_PLAYS (EC_GROUP_ACTIONS << 9) | 0x5 +#define EC_WORD_COLLECT (EC_GROUP_ACTIONS << 9) | 0x6 +#define EC_WORD_WALKING (EC_GROUP_ACTIONS << 9) | 0x7 +#define EC_WORD_WALKS (EC_GROUP_ACTIONS << 9) | 0x8 +#define EC_WORD_SAYS (EC_GROUP_ACTIONS << 9) | 0x9 +#define EC_WORD_WENT (EC_GROUP_ACTIONS << 9) | 0xa +#define EC_WORD_SAID (EC_GROUP_ACTIONS << 9) | 0xb +#define EC_WORD_WAKE_UP (EC_GROUP_ACTIONS << 9) | 0xc +#define EC_WORD_WAKES_UP (EC_GROUP_ACTIONS << 9) | 0xd +#define EC_WORD_ANGERS (EC_GROUP_ACTIONS << 9) | 0xe +#define EC_WORD_TEACH (EC_GROUP_ACTIONS << 9) | 0xf +#define EC_WORD_TEACHES (EC_GROUP_ACTIONS << 9) | 0x10 +#define EC_WORD_PLEASE (EC_GROUP_ACTIONS << 9) | 0x11 +#define EC_WORD_LEARN (EC_GROUP_ACTIONS << 9) | 0x12 +#define EC_WORD_CHANGE (EC_GROUP_ACTIONS << 9) | 0x13 +#define EC_WORD_STORY (EC_GROUP_ACTIONS << 9) | 0x14 +#define EC_WORD_TRUST (EC_GROUP_ACTIONS << 9) | 0x15 +#define EC_WORD_LAVISH (EC_GROUP_ACTIONS << 9) | 0x16 +#define EC_WORD_LISTENS (EC_GROUP_ACTIONS << 9) | 0x17 +#define EC_WORD_HEARING (EC_GROUP_ACTIONS << 9) | 0x18 +#define EC_WORD_TRAINS (EC_GROUP_ACTIONS << 9) | 0x19 +#define EC_WORD_CHOOSE (EC_GROUP_ACTIONS << 9) | 0x1a +#define EC_WORD_COME (EC_GROUP_ACTIONS << 9) | 0x1b +#define EC_WORD_CAME (EC_GROUP_ACTIONS << 9) | 0x1c +#define EC_WORD_SEARCH (EC_GROUP_ACTIONS << 9) | 0x1d +#define EC_WORD_MAKE (EC_GROUP_ACTIONS << 9) | 0x1e +#define EC_WORD_CAUSE (EC_GROUP_ACTIONS << 9) | 0x1f +#define EC_WORD_KNOW (EC_GROUP_ACTIONS << 9) | 0x20 +#define EC_WORD_KNOWS (EC_GROUP_ACTIONS << 9) | 0x21 +#define EC_WORD_REFUSE (EC_GROUP_ACTIONS << 9) | 0x22 +#define EC_WORD_STORES (EC_GROUP_ACTIONS << 9) | 0x23 +#define EC_WORD_BRAG (EC_GROUP_ACTIONS << 9) | 0x24 +#define EC_WORD_IGNORANT (EC_GROUP_ACTIONS << 9) | 0x25 +#define EC_WORD_THINKS (EC_GROUP_ACTIONS << 9) | 0x26 +#define EC_WORD_BELIEVE (EC_GROUP_ACTIONS << 9) | 0x27 +#define EC_WORD_SLIDE (EC_GROUP_ACTIONS << 9) | 0x28 +#define EC_WORD_EATS (EC_GROUP_ACTIONS << 9) | 0x29 +#define EC_WORD_USE (EC_GROUP_ACTIONS << 9) | 0x2a +#define EC_WORD_USES (EC_GROUP_ACTIONS << 9) | 0x2b +#define EC_WORD_USING (EC_GROUP_ACTIONS << 9) | 0x2c +#define EC_WORD_COULDN_T (EC_GROUP_ACTIONS << 9) | 0x2d +#define EC_WORD_CAPABLE (EC_GROUP_ACTIONS << 9) | 0x2e +#define EC_WORD_DISAPPEAR (EC_GROUP_ACTIONS << 9) | 0x2f +#define EC_WORD_APPEAR (EC_GROUP_ACTIONS << 9) | 0x30 +#define EC_WORD_THROW (EC_GROUP_ACTIONS << 9) | 0x31 +#define EC_WORD_WORRY (EC_GROUP_ACTIONS << 9) | 0x32 +#define EC_WORD_SLEPT (EC_GROUP_ACTIONS << 9) | 0x33 +#define EC_WORD_SLEEP (EC_GROUP_ACTIONS << 9) | 0x34 +#define EC_WORD_RELEASE (EC_GROUP_ACTIONS << 9) | 0x35 +#define EC_WORD_DRINKS (EC_GROUP_ACTIONS << 9) | 0x36 +#define EC_WORD_RUNS (EC_GROUP_ACTIONS << 9) | 0x37 +#define EC_WORD_RUN (EC_GROUP_ACTIONS << 9) | 0x38 +#define EC_WORD_WORKS (EC_GROUP_ACTIONS << 9) | 0x39 +#define EC_WORD_WORKING (EC_GROUP_ACTIONS << 9) | 0x3a +#define EC_WORD_TALKING (EC_GROUP_ACTIONS << 9) | 0x3b +#define EC_WORD_TALK (EC_GROUP_ACTIONS << 9) | 0x3c +#define EC_WORD_SINK (EC_GROUP_ACTIONS << 9) | 0x3d +#define EC_WORD_SMACK (EC_GROUP_ACTIONS << 9) | 0x3e +#define EC_WORD_PRETEND (EC_GROUP_ACTIONS << 9) | 0x3f +#define EC_WORD_PRAISE (EC_GROUP_ACTIONS << 9) | 0x40 +#define EC_WORD_OVERDO (EC_GROUP_ACTIONS << 9) | 0x41 +#define EC_WORD_SHOW (EC_GROUP_ACTIONS << 9) | 0x42 +#define EC_WORD_LOOKS (EC_GROUP_ACTIONS << 9) | 0x43 +#define EC_WORD_SEES (EC_GROUP_ACTIONS << 9) | 0x44 +#define EC_WORD_SEEK (EC_GROUP_ACTIONS << 9) | 0x45 +#define EC_WORD_OWN (EC_GROUP_ACTIONS << 9) | 0x46 +#define EC_WORD_TAKE (EC_GROUP_ACTIONS << 9) | 0x47 +#define EC_WORD_ALLOW (EC_GROUP_ACTIONS << 9) | 0x48 +#define EC_WORD_FORGET (EC_GROUP_ACTIONS << 9) | 0x49 +#define EC_WORD_FORGETS (EC_GROUP_ACTIONS << 9) | 0x4a +#define EC_WORD_APPEARS (EC_GROUP_ACTIONS << 9) | 0x4b +#define EC_WORD_FAINT (EC_GROUP_ACTIONS << 9) | 0x4c +#define EC_WORD_FAINTED (EC_GROUP_ACTIONS << 9) | 0x4d + +// LIFESTYLE +#define EC_WORD_CHORES (EC_GROUP_LIFESTYLE << 9) | 0x0 +#define EC_WORD_HOME (EC_GROUP_LIFESTYLE << 9) | 0x1 +#define EC_WORD_MONEY (EC_GROUP_LIFESTYLE << 9) | 0x2 +#define EC_WORD_ALLOWANCE (EC_GROUP_LIFESTYLE << 9) | 0x3 +#define EC_WORD_BATH (EC_GROUP_LIFESTYLE << 9) | 0x4 +#define EC_WORD_CONVERSATION (EC_GROUP_LIFESTYLE << 9) | 0x5 +#define EC_WORD_SCHOOL (EC_GROUP_LIFESTYLE << 9) | 0x6 +#define EC_WORD_COMMEMORATE (EC_GROUP_LIFESTYLE << 9) | 0x7 +#define EC_WORD_HABIT (EC_GROUP_LIFESTYLE << 9) | 0x8 +#define EC_WORD_GROUP (EC_GROUP_LIFESTYLE << 9) | 0x9 +#define EC_WORD_WORD (EC_GROUP_LIFESTYLE << 9) | 0xa +#define EC_WORD_STORE (EC_GROUP_LIFESTYLE << 9) | 0xb +#define EC_WORD_SERVICE (EC_GROUP_LIFESTYLE << 9) | 0xc +#define EC_WORD_WORK (EC_GROUP_LIFESTYLE << 9) | 0xd +#define EC_WORD_SYSTEM (EC_GROUP_LIFESTYLE << 9) | 0xe +#define EC_WORD_TRAIN (EC_GROUP_LIFESTYLE << 9) | 0xf +#define EC_WORD_CLASS (EC_GROUP_LIFESTYLE << 9) | 0x10 +#define EC_WORD_LESSONS (EC_GROUP_LIFESTYLE << 9) | 0x11 +#define EC_WORD_INFORMATION (EC_GROUP_LIFESTYLE << 9) | 0x12 +#define EC_WORD_LIVING (EC_GROUP_LIFESTYLE << 9) | 0x13 +#define EC_WORD_TEACHER (EC_GROUP_LIFESTYLE << 9) | 0x14 +#define EC_WORD_TOURNAMENT (EC_GROUP_LIFESTYLE << 9) | 0x15 +#define EC_WORD_LETTER (EC_GROUP_LIFESTYLE << 9) | 0x16 +#define EC_WORD_EVENT (EC_GROUP_LIFESTYLE << 9) | 0x17 +#define EC_WORD_DIGITAL (EC_GROUP_LIFESTYLE << 9) | 0x18 +#define EC_WORD_TEST (EC_GROUP_LIFESTYLE << 9) | 0x19 +#define EC_WORD_DEPT_STORE (EC_GROUP_LIFESTYLE << 9) | 0x1a +#define EC_WORD_TELEVISION (EC_GROUP_LIFESTYLE << 9) | 0x1b +#define EC_WORD_PHONE (EC_GROUP_LIFESTYLE << 9) | 0x1c +#define EC_WORD_ITEM (EC_GROUP_LIFESTYLE << 9) | 0x1d +#define EC_WORD_NAME (EC_GROUP_LIFESTYLE << 9) | 0x1e +#define EC_WORD_NEWS (EC_GROUP_LIFESTYLE << 9) | 0x1f +#define EC_WORD_POPULAR (EC_GROUP_LIFESTYLE << 9) | 0x20 +#define EC_WORD_PARTY (EC_GROUP_LIFESTYLE << 9) | 0x21 +#define EC_WORD_STUDY (EC_GROUP_LIFESTYLE << 9) | 0x22 +#define EC_WORD_MACHINE (EC_GROUP_LIFESTYLE << 9) | 0x23 +#define EC_WORD_MAIL (EC_GROUP_LIFESTYLE << 9) | 0x24 +#define EC_WORD_MESSAGE (EC_GROUP_LIFESTYLE << 9) | 0x25 +#define EC_WORD_PROMISE (EC_GROUP_LIFESTYLE << 9) | 0x26 +#define EC_WORD_DREAM (EC_GROUP_LIFESTYLE << 9) | 0x27 +#define EC_WORD_KINDERGARTEN (EC_GROUP_LIFESTYLE << 9) | 0x28 +#define EC_WORD_LIFE (EC_GROUP_LIFESTYLE << 9) | 0x29 +#define EC_WORD_RADIO (EC_GROUP_LIFESTYLE << 9) | 0x2a +#define EC_WORD_RENTAL (EC_GROUP_LIFESTYLE << 9) | 0x2b +#define EC_WORD_WORLD (EC_GROUP_LIFESTYLE << 9) | 0x2c + +// HOBBIES +#define EC_WORD_IDOL (EC_GROUP_HOBBIES << 9) | 0x0 +#define EC_WORD_ANIME (EC_GROUP_HOBBIES << 9) | 0x1 +#define EC_WORD_SONG (EC_GROUP_HOBBIES << 9) | 0x2 +#define EC_WORD_MOVIE (EC_GROUP_HOBBIES << 9) | 0x3 +#define EC_WORD_SWEETS (EC_GROUP_HOBBIES << 9) | 0x4 +#define EC_WORD_CHAT (EC_GROUP_HOBBIES << 9) | 0x5 +#define EC_WORD_CHILD_S_PLAY (EC_GROUP_HOBBIES << 9) | 0x6 +#define EC_WORD_TOYS (EC_GROUP_HOBBIES << 9) | 0x7 +#define EC_WORD_MUSIC (EC_GROUP_HOBBIES << 9) | 0x8 +#define EC_WORD_CARDS (EC_GROUP_HOBBIES << 9) | 0x9 +#define EC_WORD_SHOPPING (EC_GROUP_HOBBIES << 9) | 0xa +#define EC_WORD_CAMERA (EC_GROUP_HOBBIES << 9) | 0xb +#define EC_WORD_VIEWING (EC_GROUP_HOBBIES << 9) | 0xc +#define EC_WORD_SPECTATOR (EC_GROUP_HOBBIES << 9) | 0xd +#define EC_WORD_GOURMET (EC_GROUP_HOBBIES << 9) | 0xe +#define EC_WORD_GAME (EC_GROUP_HOBBIES << 9) | 0xf +#define EC_WORD_RPG (EC_GROUP_HOBBIES << 9) | 0x10 +#define EC_WORD_COLLECTION (EC_GROUP_HOBBIES << 9) | 0x11 +#define EC_WORD_COMPLETE (EC_GROUP_HOBBIES << 9) | 0x12 +#define EC_WORD_MAGAZINE (EC_GROUP_HOBBIES << 9) | 0x13 +#define EC_WORD_WALK (EC_GROUP_HOBBIES << 9) | 0x14 +#define EC_WORD_BIKE (EC_GROUP_HOBBIES << 9) | 0x15 +#define EC_WORD_HOBBY (EC_GROUP_HOBBIES << 9) | 0x16 +#define EC_WORD_SPORTS (EC_GROUP_HOBBIES << 9) | 0x17 +#define EC_WORD_SOFTWARE (EC_GROUP_HOBBIES << 9) | 0x18 +#define EC_WORD_SONGS (EC_GROUP_HOBBIES << 9) | 0x19 +#define EC_WORD_DIET (EC_GROUP_HOBBIES << 9) | 0x1a +#define EC_WORD_TREASURE (EC_GROUP_HOBBIES << 9) | 0x1b +#define EC_WORD_TRAVEL (EC_GROUP_HOBBIES << 9) | 0x1c +#define EC_WORD_DANCE (EC_GROUP_HOBBIES << 9) | 0x1d +#define EC_WORD_CHANNEL (EC_GROUP_HOBBIES << 9) | 0x1e +#define EC_WORD_MAKING (EC_GROUP_HOBBIES << 9) | 0x1f +#define EC_WORD_FISHING (EC_GROUP_HOBBIES << 9) | 0x20 +#define EC_WORD_DATE (EC_GROUP_HOBBIES << 9) | 0x21 +#define EC_WORD_DESIGN (EC_GROUP_HOBBIES << 9) | 0x22 +#define EC_WORD_LOCOMOTIVE (EC_GROUP_HOBBIES << 9) | 0x23 +#define EC_WORD_PLUSH_DOLL (EC_GROUP_HOBBIES << 9) | 0x24 +#define EC_WORD_PC (EC_GROUP_HOBBIES << 9) | 0x25 +#define EC_WORD_FLOWERS (EC_GROUP_HOBBIES << 9) | 0x26 +#define EC_WORD_HERO (EC_GROUP_HOBBIES << 9) | 0x27 +#define EC_WORD_NAP (EC_GROUP_HOBBIES << 9) | 0x28 +#define EC_WORD_HEROINE (EC_GROUP_HOBBIES << 9) | 0x29 +#define EC_WORD_FASHION (EC_GROUP_HOBBIES << 9) | 0x2a +#define EC_WORD_ADVENTURE (EC_GROUP_HOBBIES << 9) | 0x2b +#define EC_WORD_BOARD (EC_GROUP_HOBBIES << 9) | 0x2c +#define EC_WORD_BALL (EC_GROUP_HOBBIES << 9) | 0x2d +#define EC_WORD_BOOK (EC_GROUP_HOBBIES << 9) | 0x2e +#define EC_WORD_FESTIVAL (EC_GROUP_HOBBIES << 9) | 0x2f +#define EC_WORD_COMICS (EC_GROUP_HOBBIES << 9) | 0x30 +#define EC_WORD_HOLIDAY (EC_GROUP_HOBBIES << 9) | 0x31 +#define EC_WORD_PLANS (EC_GROUP_HOBBIES << 9) | 0x32 +#define EC_WORD_TRENDY (EC_GROUP_HOBBIES << 9) | 0x33 +#define EC_WORD_VACATION (EC_GROUP_HOBBIES << 9) | 0x34 +#define EC_WORD_LOOK (EC_GROUP_HOBBIES << 9) | 0x35 + +// TIME +#define EC_WORD_FALL (EC_GROUP_TIME << 9) | 0x0 +#define EC_WORD_MORNING (EC_GROUP_TIME << 9) | 0x1 +#define EC_WORD_TOMORROW (EC_GROUP_TIME << 9) | 0x2 +#define EC_WORD_LAST (EC_GROUP_TIME << 9) | 0x3 +#define EC_WORD_DAY (EC_GROUP_TIME << 9) | 0x4 +#define EC_WORD_SOMETIME (EC_GROUP_TIME << 9) | 0x5 +#define EC_WORD_ALWAYS (EC_GROUP_TIME << 9) | 0x6 +#define EC_WORD_CURRENT (EC_GROUP_TIME << 9) | 0x7 +#define EC_WORD_FOREVER (EC_GROUP_TIME << 9) | 0x8 +#define EC_WORD_DAYS (EC_GROUP_TIME << 9) | 0x9 +#define EC_WORD_END (EC_GROUP_TIME << 9) | 0xa +#define EC_WORD_TUESDAY (EC_GROUP_TIME << 9) | 0xb +#define EC_WORD_YESTERDAY (EC_GROUP_TIME << 9) | 0xc +#define EC_WORD_TODAY (EC_GROUP_TIME << 9) | 0xd +#define EC_WORD_FRIDAY (EC_GROUP_TIME << 9) | 0xe +#define EC_WORD_MONDAY (EC_GROUP_TIME << 9) | 0xf +#define EC_WORD_LATER (EC_GROUP_TIME << 9) | 0x10 +#define EC_WORD_EARLIER (EC_GROUP_TIME << 9) | 0x11 +#define EC_WORD_ANOTHER (EC_GROUP_TIME << 9) | 0x12 +#define EC_WORD_TIME (EC_GROUP_TIME << 9) | 0x13 +#define EC_WORD_FINISH (EC_GROUP_TIME << 9) | 0x14 +#define EC_WORD_WEDNESDAY (EC_GROUP_TIME << 9) | 0x15 +#define EC_WORD_SOON (EC_GROUP_TIME << 9) | 0x16 +#define EC_WORD_START (EC_GROUP_TIME << 9) | 0x17 +#define EC_WORD_MONTH (EC_GROUP_TIME << 9) | 0x18 +#define EC_WORD_STOP (EC_GROUP_TIME << 9) | 0x19 +#define EC_WORD_NOW (EC_GROUP_TIME << 9) | 0x1a +#define EC_WORD_FINAL (EC_GROUP_TIME << 9) | 0x1b +#define EC_WORD_NEXT (EC_GROUP_TIME << 9) | 0x1c +#define EC_WORD_AGE (EC_GROUP_TIME << 9) | 0x1d +#define EC_WORD_SATURDAY (EC_GROUP_TIME << 9) | 0x1e +#define EC_WORD_SUMMER (EC_GROUP_TIME << 9) | 0x1f +#define EC_WORD_SUNDAY (EC_GROUP_TIME << 9) | 0x20 +#define EC_WORD_BEGINNING (EC_GROUP_TIME << 9) | 0x21 +#define EC_WORD_SPRING (EC_GROUP_TIME << 9) | 0x22 +#define EC_WORD_DAYTIME (EC_GROUP_TIME << 9) | 0x23 +#define EC_WORD_WINTER (EC_GROUP_TIME << 9) | 0x24 +#define EC_WORD_DAILY (EC_GROUP_TIME << 9) | 0x25 +#define EC_WORD_OLDEN (EC_GROUP_TIME << 9) | 0x26 +#define EC_WORD_ALMOST (EC_GROUP_TIME << 9) | 0x27 +#define EC_WORD_NEARLY (EC_GROUP_TIME << 9) | 0x28 +#define EC_WORD_THURSDAY (EC_GROUP_TIME << 9) | 0x29 +#define EC_WORD_NIGHTTIME (EC_GROUP_TIME << 9) | 0x2a +#define EC_WORD_NIGHT (EC_GROUP_TIME << 9) | 0x2b +#define EC_WORD_WEEK (EC_GROUP_TIME << 9) | 0x2c + +// MISC +#define EC_WORD_HIGHS (EC_GROUP_MISC << 9) | 0x0 +#define EC_WORD_LOWS (EC_GROUP_MISC << 9) | 0x1 +#define EC_WORD_UM (EC_GROUP_MISC << 9) | 0x2 +#define EC_WORD_REAR (EC_GROUP_MISC << 9) | 0x3 +#define EC_WORD_THINGS (EC_GROUP_MISC << 9) | 0x4 +#define EC_WORD_THING (EC_GROUP_MISC << 9) | 0x5 +#define EC_WORD_BELOW (EC_GROUP_MISC << 9) | 0x6 +#define EC_WORD_ABOVE (EC_GROUP_MISC << 9) | 0x7 +#define EC_WORD_BACK (EC_GROUP_MISC << 9) | 0x8 +#define EC_WORD_HIGH (EC_GROUP_MISC << 9) | 0x9 +#define EC_WORD_HERE (EC_GROUP_MISC << 9) | 0xa +#define EC_WORD_INSIDE (EC_GROUP_MISC << 9) | 0xb +#define EC_WORD_OUTSIDE (EC_GROUP_MISC << 9) | 0xc +#define EC_WORD_BESIDE (EC_GROUP_MISC << 9) | 0xd +#define EC_WORD_THIS_IS_IT_EXCL (EC_GROUP_MISC << 9) | 0xe +#define EC_WORD_THIS (EC_GROUP_MISC << 9) | 0xf +#define EC_WORD_EVERY (EC_GROUP_MISC << 9) | 0x10 +#define EC_WORD_THESE (EC_GROUP_MISC << 9) | 0x11 +#define EC_WORD_THESE_WERE (EC_GROUP_MISC << 9) | 0x12 +#define EC_WORD_DOWN (EC_GROUP_MISC << 9) | 0x13 +#define EC_WORD_THAT (EC_GROUP_MISC << 9) | 0x14 +#define EC_WORD_THOSE_ARE (EC_GROUP_MISC << 9) | 0x15 +#define EC_WORD_THOSE_WERE (EC_GROUP_MISC << 9) | 0x16 +#define EC_WORD_THAT_S_IT_EXCL (EC_GROUP_MISC << 9) | 0x17 +#define EC_WORD_AM (EC_GROUP_MISC << 9) | 0x18 +#define EC_WORD_THAT_WAS (EC_GROUP_MISC << 9) | 0x19 +#define EC_WORD_FRONT (EC_GROUP_MISC << 9) | 0x1a +#define EC_WORD_UP (EC_GROUP_MISC << 9) | 0x1b +#define EC_WORD_CHOICE (EC_GROUP_MISC << 9) | 0x1c +#define EC_WORD_FAR (EC_GROUP_MISC << 9) | 0x1d +#define EC_WORD_AWAY (EC_GROUP_MISC << 9) | 0x1e +#define EC_WORD_NEAR (EC_GROUP_MISC << 9) | 0x1f +#define EC_WORD_WHERE (EC_GROUP_MISC << 9) | 0x20 +#define EC_WORD_WHEN (EC_GROUP_MISC << 9) | 0x21 +#define EC_WORD_WHAT (EC_GROUP_MISC << 9) | 0x22 +#define EC_WORD_DEEP (EC_GROUP_MISC << 9) | 0x23 +#define EC_WORD_SHALLOW (EC_GROUP_MISC << 9) | 0x24 +#define EC_WORD_WHY (EC_GROUP_MISC << 9) | 0x25 +#define EC_WORD_CONFUSED (EC_GROUP_MISC << 9) | 0x26 +#define EC_WORD_OPPOSITE (EC_GROUP_MISC << 9) | 0x27 +#define EC_WORD_LEFT (EC_GROUP_MISC << 9) | 0x28 +#define EC_WORD_RIGHT (EC_GROUP_MISC << 9) | 0x29 + +// ADJECTIVES +#define EC_WORD_WANDERING (EC_GROUP_ADJECTIVES << 9) | 0x0 +#define EC_WORD_RICKETY (EC_GROUP_ADJECTIVES << 9) | 0x1 +#define EC_WORD_ROCK_SOLID (EC_GROUP_ADJECTIVES << 9) | 0x2 +#define EC_WORD_HUNGRY (EC_GROUP_ADJECTIVES << 9) | 0x3 +#define EC_WORD_TIGHT (EC_GROUP_ADJECTIVES << 9) | 0x4 +#define EC_WORD_TICKLISH (EC_GROUP_ADJECTIVES << 9) | 0x5 +#define EC_WORD_TWIRLING (EC_GROUP_ADJECTIVES << 9) | 0x6 +#define EC_WORD_SPIRALING (EC_GROUP_ADJECTIVES << 9) | 0x7 +#define EC_WORD_THIRSTY (EC_GROUP_ADJECTIVES << 9) | 0x8 +#define EC_WORD_LOLLING (EC_GROUP_ADJECTIVES << 9) | 0x9 +#define EC_WORD_SILKY (EC_GROUP_ADJECTIVES << 9) | 0xa +#define EC_WORD_SADLY (EC_GROUP_ADJECTIVES << 9) | 0xb +#define EC_WORD_HOPELESS (EC_GROUP_ADJECTIVES << 9) | 0xc +#define EC_WORD_USELESS (EC_GROUP_ADJECTIVES << 9) | 0xd +#define EC_WORD_DROOLING (EC_GROUP_ADJECTIVES << 9) | 0xe +#define EC_WORD_EXCITING (EC_GROUP_ADJECTIVES << 9) | 0xf +#define EC_WORD_THICK (EC_GROUP_ADJECTIVES << 9) | 0x10 +#define EC_WORD_SMOOTH (EC_GROUP_ADJECTIVES << 9) | 0x11 +#define EC_WORD_SLIMY (EC_GROUP_ADJECTIVES << 9) | 0x12 +#define EC_WORD_THIN (EC_GROUP_ADJECTIVES << 9) | 0x13 +#define EC_WORD_BREAK (EC_GROUP_ADJECTIVES << 9) | 0x14 +#define EC_WORD_VORACIOUS (EC_GROUP_ADJECTIVES << 9) | 0x15 +#define EC_WORD_SCATTER (EC_GROUP_ADJECTIVES << 9) | 0x16 +#define EC_WORD_AWESOME (EC_GROUP_ADJECTIVES << 9) | 0x17 +#define EC_WORD_WIMPY (EC_GROUP_ADJECTIVES << 9) | 0x18 +#define EC_WORD_WOBBLY (EC_GROUP_ADJECTIVES << 9) | 0x19 +#define EC_WORD_SHAKY (EC_GROUP_ADJECTIVES << 9) | 0x1a +#define EC_WORD_RIPPED (EC_GROUP_ADJECTIVES << 9) | 0x1b +#define EC_WORD_SHREDDED (EC_GROUP_ADJECTIVES << 9) | 0x1c +#define EC_WORD_INCREASING (EC_GROUP_ADJECTIVES << 9) | 0x1d +#define EC_WORD_YET (EC_GROUP_ADJECTIVES << 9) | 0x1e +#define EC_WORD_DESTROYED (EC_GROUP_ADJECTIVES << 9) | 0x1f +#define EC_WORD_FIERY (EC_GROUP_ADJECTIVES << 9) | 0x20 +#define EC_WORD_LOVEY_DOVEY (EC_GROUP_ADJECTIVES << 9) | 0x21 +#define EC_WORD_HAPPILY (EC_GROUP_ADJECTIVES << 9) | 0x22 +#define EC_WORD_ANTICIPATION (EC_GROUP_ADJECTIVES << 9) | 0x23 + +// EVENTS +#define EC_WORD_APPEAL (EC_GROUP_EVENTS << 9) | 0x0 +#define EC_WORD_EVENTS (EC_GROUP_EVENTS << 9) | 0x1 +#define EC_WORD_STAY_AT_HOME (EC_GROUP_EVENTS << 9) | 0x2 +#define EC_WORD_BERRY (EC_GROUP_EVENTS << 9) | 0x3 +#define EC_WORD_CONTEST (EC_GROUP_EVENTS << 9) | 0x4 +#define EC_WORD_MC (EC_GROUP_EVENTS << 9) | 0x5 +#define EC_WORD_JUDGE (EC_GROUP_EVENTS << 9) | 0x6 +#define EC_WORD_SUPER (EC_GROUP_EVENTS << 9) | 0x7 +#define EC_WORD_STAGE (EC_GROUP_EVENTS << 9) | 0x8 +#define EC_WORD_HALL_OF_FAME (EC_GROUP_EVENTS << 9) | 0x9 +#define EC_WORD_EVOLUTION (EC_GROUP_EVENTS << 9) | 0xa +#define EC_WORD_HYPER (EC_GROUP_EVENTS << 9) | 0xb +#define EC_WORD_BATTLE_TOWER (EC_GROUP_EVENTS << 9) | 0xc +#define EC_WORD_LEADERS (EC_GROUP_EVENTS << 9) | 0xd +#define EC_WORD_BATTLE_ROOM (EC_GROUP_EVENTS << 9) | 0xe +#define EC_WORD_HIDDEN (EC_GROUP_EVENTS << 9) | 0xf +#define EC_WORD_SECRET_BASE (EC_GROUP_EVENTS << 9) | 0x10 +#define EC_WORD_BLEND (EC_GROUP_EVENTS << 9) | 0x11 +#define EC_WORD_POKEBLOCK (EC_GROUP_EVENTS << 9) | 0x12 +#define EC_WORD_MASTER (EC_GROUP_EVENTS << 9) | 0x13 +#define EC_WORD_RANK (EC_GROUP_EVENTS << 9) | 0x14 +#define EC_WORD_RIBBON (EC_GROUP_EVENTS << 9) | 0x15 +#define EC_WORD_CRUSH (EC_GROUP_EVENTS << 9) | 0x16 +#define EC_WORD_DIRECT (EC_GROUP_EVENTS << 9) | 0x17 +#define EC_WORD_TOWER (EC_GROUP_EVENTS << 9) | 0x18 +#define EC_WORD_UNION (EC_GROUP_EVENTS << 9) | 0x19 +#define EC_WORD_ROOM (EC_GROUP_EVENTS << 9) | 0x1a +#define EC_WORD_WIRELESS (EC_GROUP_EVENTS << 9) | 0x1b +#define EC_WORD_FRONTIER (EC_GROUP_EVENTS << 9) | 0x1c + +// TRENDY_SAYING +#define EC_WORD_KTHX_BYE (EC_GROUP_TRENDY_SAYING << 9) | 0x0 +#define EC_WORD_YES_SIR_EXCL (EC_GROUP_TRENDY_SAYING << 9) | 0x1 +#define EC_WORD_AVANT_GARDE (EC_GROUP_TRENDY_SAYING << 9) | 0x2 +#define EC_WORD_COUPLE (EC_GROUP_TRENDY_SAYING << 9) | 0x3 +#define EC_WORD_MUCH_OBLIGED (EC_GROUP_TRENDY_SAYING << 9) | 0x4 +#define EC_WORD_YEEHAW_EXCL (EC_GROUP_TRENDY_SAYING << 9) | 0x5 +#define EC_WORD_MEGA (EC_GROUP_TRENDY_SAYING << 9) | 0x6 +#define EC_WORD_1_HIT_KO_EXCL (EC_GROUP_TRENDY_SAYING << 9) | 0x7 +#define EC_WORD_DESTINY (EC_GROUP_TRENDY_SAYING << 9) | 0x8 +#define EC_WORD_CANCEL (EC_GROUP_TRENDY_SAYING << 9) | 0x9 +#define EC_WORD_NEW (EC_GROUP_TRENDY_SAYING << 9) | 0xa +#define EC_WORD_FLATTEN (EC_GROUP_TRENDY_SAYING << 9) | 0xb +#define EC_WORD_KIDDING (EC_GROUP_TRENDY_SAYING << 9) | 0xc +#define EC_WORD_LOSER (EC_GROUP_TRENDY_SAYING << 9) | 0xd +#define EC_WORD_LOSING (EC_GROUP_TRENDY_SAYING << 9) | 0xe +#define EC_WORD_HAPPENING (EC_GROUP_TRENDY_SAYING << 9) | 0xf +#define EC_WORD_HIP_AND (EC_GROUP_TRENDY_SAYING << 9) | 0x10 +#define EC_WORD_SHAKE (EC_GROUP_TRENDY_SAYING << 9) | 0x11 +#define EC_WORD_SHADY (EC_GROUP_TRENDY_SAYING << 9) | 0x12 +#define EC_WORD_UPBEAT (EC_GROUP_TRENDY_SAYING << 9) | 0x13 +#define EC_WORD_MODERN (EC_GROUP_TRENDY_SAYING << 9) | 0x14 +#define EC_WORD_SMELL_YA (EC_GROUP_TRENDY_SAYING << 9) | 0x15 +#define EC_WORD_BANG (EC_GROUP_TRENDY_SAYING << 9) | 0x16 +#define EC_WORD_KNOCKOUT (EC_GROUP_TRENDY_SAYING << 9) | 0x17 +#define EC_WORD_HASSLE (EC_GROUP_TRENDY_SAYING << 9) | 0x18 +#define EC_WORD_WINNER (EC_GROUP_TRENDY_SAYING << 9) | 0x19 +#define EC_WORD_FEVER (EC_GROUP_TRENDY_SAYING << 9) | 0x1a +#define EC_WORD_WANNABE (EC_GROUP_TRENDY_SAYING << 9) | 0x1b +#define EC_WORD_BABY (EC_GROUP_TRENDY_SAYING << 9) | 0x1c +#define EC_WORD_HEART (EC_GROUP_TRENDY_SAYING << 9) | 0x1d +#define EC_WORD_OLD (EC_GROUP_TRENDY_SAYING << 9) | 0x1e +#define EC_WORD_YOUNG (EC_GROUP_TRENDY_SAYING << 9) | 0x1f +#define EC_WORD_UGLY (EC_GROUP_TRENDY_SAYING << 9) | 0x20 + +#define EC_POKEMON(mon) ((EC_GROUP_POKEMON << 9) | SPECIES_##mon) +#define EC_POKEMON2(mon) ((EC_GROUP_POKEMON_2 << 9) | SPECIES_##mon) +#define EC_MOVE(move) ((EC_GROUP_MOVE_1 << 9) | MOVE_##move) +#define EC_MOVE2(move) ((EC_GROUP_MOVE_2 << 9) | MOVE_##move) + +#define EC_GROUP(word) ((word) >> 9) +#define EC_INDEX(word) ((word) & 0x1FF) + +#endif // GUARD_CONSTANTS_EASY_CHAT_H diff --git a/include/constants/flags.h b/include/constants/flags.h new file mode 100644 index 000000000..e74ef1ef0 --- /dev/null +++ b/include/constants/flags.h @@ -0,0 +1,1578 @@ +#ifndef GUARD_CONSTANTS_FLAGS_H +#define GUARD_CONSTANTS_FLAGS_H + +#define FLAG_0x001 0x1 +#define FLAG_0x002 0x2 +#define FLAG_0x003 0x3 +#define FLAG_0x004 0x4 +#define FLAG_0x005 0x5 +#define FLAG_0x006 0x6 +#define FLAG_0x007 0x7 +#define FLAG_0x008 0x8 +#define FLAG_0x009 0x9 +#define FLAG_0x00A 0xA +#define FLAG_0x00B 0xB +#define FLAG_0x00C 0xC +#define FLAG_0x00D 0xD +#define FLAG_0x00E 0xE +#define FLAG_0x00F 0xF +#define FLAG_0x010 0x10 +#define FLAG_0x011 0x11 +#define FLAG_0x012 0x12 +#define FLAG_0x013 0x13 +#define FLAG_0x014 0x14 +#define FLAG_0x015 0x15 +#define FLAG_0x016 0x16 +#define FLAG_0x017 0x17 +#define FLAG_0x018 0x18 +#define FLAG_0x019 0x19 +#define FLAG_0x01A 0x1A +#define FLAG_0x01B 0x1B +#define FLAG_0x01C 0x1C +#define FLAG_0x01D 0x1D +#define FLAG_0x01E 0x1E +#define FLAG_0x01F 0x1F +#define FLAG_0x020 0x20 +#define FLAG_0x021 0x21 +#define FLAG_0x022 0x22 +#define FLAG_0x023 0x23 +#define FLAG_0x024 0x24 +#define FLAG_0x025 0x25 +#define FLAG_0x026 0x26 +#define FLAG_0x027 0x27 +#define FLAG_0x028 0x28 +#define FLAG_0x029 0x29 +#define FLAG_0x02A 0x2A +#define FLAG_0x02B 0x2B +#define FLAG_0x02C 0x2C +#define FLAG_0x02D 0x2D +#define FLAG_0x02E 0x2E +#define FLAG_0x02F 0x2F +#define FLAG_0x030 0x30 +#define FLAG_0x031 0x31 +#define FLAG_0x032 0x32 +#define FLAG_0x033 0x33 +#define FLAG_0x034 0x34 +#define FLAG_0x035 0x35 +#define FLAG_0x036 0x36 +#define FLAG_0x037 0x37 +#define FLAG_0x038 0x38 +#define FLAG_0x039 0x39 +#define FLAG_0x03A 0x3A +#define FLAG_0x03B 0x3B +#define FLAG_0x03C 0x3C +#define FLAG_0x03D 0x3D +#define FLAG_0x03E 0x3E +#define FLAG_0x03F 0x3F +#define FLAG_0x040 0x40 +#define FLAG_0x041 0x41 +#define FLAG_0x042 0x42 +#define FLAG_0x043 0x43 +#define FLAG_0x044 0x44 +#define FLAG_0x045 0x45 +#define FLAG_0x046 0x46 +#define FLAG_0x047 0x47 +#define FLAG_0x048 0x48 +#define FLAG_0x049 0x49 +#define FLAG_0x04A 0x4A +#define FLAG_0x04B 0x4B +#define FLAG_0x04C 0x4C +#define FLAG_0x04D 0x4D +#define FLAG_0x04E 0x4E +#define FLAG_0x04F 0x4F +#define FLAG_0x050 0x50 +#define FLAG_0x051 0x51 +#define FLAG_0x052 0x52 +#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53 +#define FLAG_0x054 0x54 +#define FLAG_0x055 0x55 +#define FLAG_0x056 0x56 +#define FLAG_0x057 0x57 +#define FLAG_0x058 0x58 +#define FLAG_0x059 0x59 +#define FLAG_0x05A 0x5A +#define FLAG_0x05B 0x5B +#define FLAG_0x05C 0x5C +#define FLAG_0x05D 0x5D +#define FLAG_0x05E 0x5E +#define FLAG_0x05F 0x5F +#define FLAG_0x060 0x60 +#define FLAG_0x061 0x61 +#define FLAG_0x062 0x62 +#define FLAG_0x063 0x63 +#define FLAG_0x064 0x64 +#define FLAG_0x065 0x65 +#define FLAG_0x066 0x66 +#define FLAG_0x067 0x67 +#define FLAG_0x068 0x68 +#define FLAG_0x069 0x69 +#define FLAG_0x06A 0x6A +#define FLAG_0x06B 0x6B +#define FLAG_0x06C 0x6C +#define FLAG_0x06D 0x6D +#define FLAG_0x06E 0x6E +#define FLAG_0x06F 0x6F +#define FLAG_0x070 0x70 +#define FLAG_0x071 0x71 +#define FLAG_0x072 0x72 +#define FLAG_0x073 0x73 +#define FLAG_0x074 0x74 +#define FLAG_0x075 0x75 +#define FLAG_0x076 0x76 +#define FLAG_0x077 0x77 +#define FLAG_0x078 0x78 +#define FLAG_0x079 0x79 +#define FLAG_0x07A 0x7A +#define FLAG_0x07B 0x7B +#define FLAG_0x07C 0x7C +#define FLAG_0x07D 0x7D +#define FLAG_0x07E 0x7E +#define FLAG_0x07F 0x7F +#define FLAG_0x080 0x80 +#define FLAG_0x081 0x81 +#define FLAG_0x082 0x82 +#define FLAG_0x083 0x83 +#define FLAG_0x084 0x84 +#define FLAG_0x085 0x85 +#define FLAG_PENDING_DAYCARE_EGG 0x86 +#define FLAG_0x087 0x87 +#define FLAG_0x088 0x88 +#define FLAG_0x089 0x89 +#define FLAG_0x08A 0x8A +#define FLAG_0x08B 0x8B +#define FLAG_0x08C 0x8C +#define FLAG_0x08D 0x8D +#define FLAG_0x08E 0x8E +#define FLAG_0x08F 0x8F +#define FLAG_0x090 0x90 +#define FLAG_0x091 0x91 +#define FLAG_0x092 0x92 +#define FLAG_0x093 0x93 +#define FLAG_0x094 0x94 +#define FLAG_0x095 0x95 +#define FLAG_0x096 0x96 +#define FLAG_0x097 0x97 +#define FLAG_0x098 0x98 +#define FLAG_0x099 0x99 +#define FLAG_0x09A 0x9A +#define FLAG_0x09B 0x9B +#define FLAG_0x09C 0x9C +#define FLAG_0x09D 0x9D +#define FLAG_0x09E 0x9E +#define FLAG_0x09F 0x9F +#define FLAG_0x0A0 0xA0 +#define FLAG_0x0A1 0xA1 +#define FLAG_0x0A2 0xA2 +#define FLAG_0x0A3 0xA3 +#define FLAG_0x0A4 0xA4 +#define FLAG_0x0A5 0xA5 +#define FLAG_0x0A6 0xA6 +#define FLAG_0x0A7 0xA7 +#define FLAG_0x0A8 0xA8 +#define FLAG_0x0A9 0xA9 +#define FLAG_0x0AA 0xAA +#define FLAG_0x0AB 0xAB +#define FLAG_0x0AC 0xAC +#define FLAG_0x0AD 0xAD +#define FLAG_0x0AE 0xAE +#define FLAG_0x0AF 0xAF +#define FLAG_0x0B0 0xB0 +#define FLAG_0x0B1 0xB1 +#define FLAG_0x0B2 0xB2 +#define FLAG_0x0B3 0xB3 +#define FLAG_0x0B4 0xB4 +#define FLAG_0x0B5 0xB5 +#define FLAG_0x0B6 0xB6 +#define FLAG_0x0B7 0xB7 +#define FLAG_0x0B8 0xB8 +#define FLAG_0x0B9 0xB9 +#define FLAG_0x0BA 0xBA +#define FLAG_0x0BB 0xBB +#define FLAG_0x0BC 0xBC +#define FLAG_0x0BD 0xBD +#define FLAG_0x0BE 0xBE +#define FLAG_0x0BF 0xBF +#define FLAG_0x0C0 0xC0 +#define FLAG_0x0C1 0xC1 +#define FLAG_0x0C2 0xC2 +#define FLAG_0x0C3 0xC3 +#define FLAG_0x0C4 0xC4 +#define FLAG_0x0C5 0xC5 +#define FLAG_0x0C6 0xC6 +#define FLAG_0x0C7 0xC7 +#define FLAG_0x0C8 0xC8 +#define FLAG_0x0C9 0xC9 +#define FLAG_0x0CA 0xCA +#define FLAG_0x0CB 0xCB +#define FLAG_0x0CC 0xCC +#define FLAG_0x0CD 0xCD +#define FLAG_0x0CE 0xCE +#define FLAG_0x0CF 0xCF +#define FLAG_0x0D0 0xD0 +#define FLAG_0x0D1 0xD1 +#define FLAG_0x0D2 0xD2 +#define FLAG_0x0D3 0xD3 +#define FLAG_0x0D4 0xD4 +#define FLAG_0x0D5 0xD5 +#define FLAG_0x0D6 0xD6 +#define FLAG_0x0D7 0xD7 +#define FLAG_0x0D8 0xD8 +#define FLAG_0x0D9 0xD9 +#define FLAG_0x0DA 0xDA +#define FLAG_0x0DB 0xDB +#define FLAG_0x0DC 0xDC +#define FLAG_0x0DD 0xDD +#define FLAG_0x0DE 0xDE +#define FLAG_0x0DF 0xDF +#define FLAG_0x0E0 0xE0 +#define FLAG_0x0E1 0xE1 +#define FLAG_0x0E2 0xE2 +#define FLAG_0x0E3 0xE3 +#define FLAG_0x0E4 0xE4 +#define FLAG_0x0E5 0xE5 +#define FLAG_0x0E6 0xE6 +#define FLAG_0x0E7 0xE7 +#define FLAG_0x0E8 0xE8 +#define FLAG_0x0E9 0xE9 +#define FLAG_0x0EA 0xEA +#define FLAG_0x0EB 0xEB +#define FLAG_0x0EC 0xEC +#define FLAG_0x0ED 0xED +#define FLAG_0x0EE 0xEE +#define FLAG_0x0EF 0xEF +#define FLAG_0x0F0 0xF0 +#define FLAG_0x0F1 0xF1 +#define FLAG_0x0F2 0xF2 +#define FLAG_0x0F3 0xF3 +#define FLAG_0x0F4 0xF4 +#define FLAG_0x0F5 0xF5 +#define FLAG_0x0F6 0xF6 +#define FLAG_0x0F7 0xF7 +#define FLAG_0x0F8 0xF8 +#define FLAG_0x0F9 0xF9 +#define FLAG_0x0FA 0xFA +#define FLAG_0x0FB 0xFB +#define FLAG_0x0FC 0xFC +#define FLAG_0x0FD 0xFD +#define FLAG_0x0FE 0xFE +#define FLAG_0x0FF 0xFF +#define FLAG_0x100 0x100 +#define FLAG_0x101 0x101 +#define FLAG_0x102 0x102 +#define FLAG_0x103 0x103 +#define FLAG_0x104 0x104 +#define FLAG_0x105 0x105 +#define FLAG_0x106 0x106 +#define FLAG_0x107 0x107 +#define FLAG_0x108 0x108 +#define FLAG_0x109 0x109 +#define FLAG_0x10A 0x10A +#define FLAG_0x10B 0x10B +#define FLAG_0x10C 0x10C +#define FLAG_0x10D 0x10D +#define FLAG_0x10E 0x10E +#define FLAG_0x10F 0x10F +#define FLAG_0x110 0x110 +#define FLAG_0x111 0x111 +#define FLAG_0x112 0x112 +#define FLAG_0x113 0x113 +#define FLAG_0x114 0x114 +#define FLAG_0x115 0x115 +#define FLAG_0x116 0x116 +#define FLAG_0x117 0x117 +#define FLAG_0x118 0x118 +#define FLAG_0x119 0x119 +#define FLAG_0x11A 0x11A +#define FLAG_0x11B 0x11B +#define FLAG_0x11C 0x11C +#define FLAG_0x11D 0x11D +#define FLAG_0x11E 0x11E +#define FLAG_0x11F 0x11F +#define FLAG_0x120 0x120 +#define FLAG_0x121 0x121 +#define FLAG_0x122 0x122 +#define FLAG_0x123 0x123 +#define FLAG_0x124 0x124 +#define FLAG_0x125 0x125 +#define FLAG_0x126 0x126 +#define FLAG_0x127 0x127 +#define FLAG_0x128 0x128 +#define FLAG_0x129 0x129 +#define FLAG_0x12A 0x12A +#define FLAG_0x12B 0x12B +#define FLAG_0x12C 0x12C +#define FLAG_0x12D 0x12D +#define FLAG_0x12E 0x12E +#define FLAG_0x12F 0x12F +#define FLAG_0x130 0x130 +#define FLAG_0x131 0x131 +#define FLAG_0x132 0x132 +#define FLAG_0x133 0x133 +#define FLAG_0x134 0x134 +#define FLAG_0x135 0x135 +#define FLAG_0x136 0x136 +#define FLAG_0x137 0x137 +#define FLAG_0x138 0x138 +#define FLAG_0x139 0x139 +#define FLAG_0x13A 0x13A +#define FLAG_0x13B 0x13B +#define FLAG_0x13C 0x13C +#define FLAG_0x13D 0x13D +#define FLAG_0x13E 0x13E +#define FLAG_0x13F 0x13F +#define FLAG_0x140 0x140 +#define FLAG_0x141 0x141 +#define FLAG_0x142 0x142 +#define FLAG_0x143 0x143 +#define FLAG_0x144 0x144 +#define FLAG_0x145 0x145 +#define FLAG_0x146 0x146 +#define FLAG_0x147 0x147 +#define FLAG_0x148 0x148 +#define FLAG_0x149 0x149 +#define FLAG_0x14A 0x14A +#define FLAG_0x14B 0x14B +#define FLAG_0x14C 0x14C +#define FLAG_0x14D 0x14D +#define FLAG_0x14E 0x14E +#define FLAG_0x14F 0x14F +#define FLAG_0x150 0x150 +#define FLAG_0x151 0x151 +#define FLAG_0x152 0x152 +#define FLAG_0x153 0x153 +#define FLAG_0x154 0x154 +#define FLAG_0x155 0x155 +#define FLAG_0x156 0x156 +#define FLAG_0x157 0x157 +#define FLAG_0x158 0x158 +#define FLAG_0x159 0x159 +#define FLAG_0x15A 0x15A +#define FLAG_0x15B 0x15B +#define FLAG_0x15C 0x15C +#define FLAG_0x15D 0x15D +#define FLAG_0x15E 0x15E +#define FLAG_0x15F 0x15F +#define FLAG_0x160 0x160 +#define FLAG_0x161 0x161 +#define FLAG_0x162 0x162 +#define FLAG_0x163 0x163 +#define FLAG_0x164 0x164 +#define FLAG_0x165 0x165 +#define FLAG_0x166 0x166 +#define FLAG_0x167 0x167 +#define FLAG_0x168 0x168 +#define FLAG_0x169 0x169 +#define FLAG_0x16A 0x16A +#define FLAG_0x16B 0x16B +#define FLAG_0x16C 0x16C +#define FLAG_0x16D 0x16D +#define FLAG_0x16E 0x16E +#define FLAG_0x16F 0x16F +#define FLAG_0x170 0x170 +#define FLAG_0x171 0x171 +#define FLAG_0x172 0x172 +#define FLAG_0x173 0x173 +#define FLAG_0x174 0x174 +#define FLAG_0x175 0x175 +#define FLAG_0x176 0x176 +#define FLAG_0x177 0x177 +#define FLAG_0x178 0x178 +#define FLAG_0x179 0x179 +#define FLAG_0x17A 0x17A +#define FLAG_0x17B 0x17B +#define FLAG_0x17C 0x17C +#define FLAG_0x17D 0x17D +#define FLAG_0x17E 0x17E +#define FLAG_0x17F 0x17F +#define FLAG_0x180 0x180 +#define FLAG_0x181 0x181 +#define FLAG_0x182 0x182 +#define FLAG_0x183 0x183 +#define FLAG_0x184 0x184 +#define FLAG_0x185 0x185 +#define FLAG_0x186 0x186 +#define FLAG_0x187 0x187 +#define FLAG_0x188 0x188 +#define FLAG_0x189 0x189 +#define FLAG_0x18A 0x18A +#define FLAG_0x18B 0x18B +#define FLAG_0x18C 0x18C +#define FLAG_0x18D 0x18D +#define FLAG_0x18E 0x18E +#define FLAG_0x18F 0x18F +#define FLAG_0x190 0x190 +#define FLAG_0x191 0x191 +#define FLAG_0x192 0x192 +#define FLAG_0x193 0x193 +#define FLAG_0x194 0x194 +#define FLAG_0x195 0x195 +#define FLAG_0x196 0x196 +#define FLAG_0x197 0x197 +#define FLAG_0x198 0x198 +#define FLAG_0x199 0x199 +#define FLAG_0x19A 0x19A +#define FLAG_0x19B 0x19B +#define FLAG_0x19C 0x19C +#define FLAG_0x19D 0x19D +#define FLAG_0x19E 0x19E +#define FLAG_0x19F 0x19F +#define FLAG_0x1A0 0x1A0 +#define FLAG_0x1A1 0x1A1 +#define FLAG_0x1A2 0x1A2 +#define FLAG_0x1A3 0x1A3 +#define FLAG_0x1A4 0x1A4 +#define FLAG_0x1A5 0x1A5 +#define FLAG_0x1A6 0x1A6 +#define FLAG_0x1A7 0x1A7 +#define FLAG_0x1A8 0x1A8 +#define FLAG_0x1A9 0x1A9 +#define FLAG_0x1AA 0x1AA +#define FLAG_0x1AB 0x1AB +#define FLAG_0x1AC 0x1AC +#define FLAG_0x1AD 0x1AD +#define FLAG_0x1AE 0x1AE +#define FLAG_0x1AF 0x1AF +#define FLAG_0x1B0 0x1B0 +#define FLAG_0x1B1 0x1B1 +#define FLAG_0x1B2 0x1B2 +#define FLAG_0x1B3 0x1B3 +#define FLAG_0x1B4 0x1B4 +#define FLAG_0x1B5 0x1B5 +#define FLAG_0x1B6 0x1B6 +#define FLAG_0x1B7 0x1B7 +#define FLAG_0x1B8 0x1B8 +#define FLAG_0x1B9 0x1B9 +#define FLAG_0x1BA 0x1BA +#define FLAG_0x1BB 0x1BB +#define FLAG_0x1BC 0x1BC +#define FLAG_0x1BD 0x1BD +#define FLAG_0x1BE 0x1BE +#define FLAG_0x1BF 0x1BF +#define FLAG_0x1C0 0x1C0 +#define FLAG_0x1C1 0x1C1 +#define FLAG_0x1C2 0x1C2 +#define FLAG_0x1C3 0x1C3 +#define FLAG_0x1C4 0x1C4 +#define FLAG_0x1C5 0x1C5 +#define FLAG_0x1C6 0x1C6 +#define FLAG_0x1C7 0x1C7 +#define FLAG_0x1C8 0x1C8 +#define FLAG_0x1C9 0x1C9 +#define FLAG_0x1CA 0x1CA +#define FLAG_0x1CB 0x1CB +#define FLAG_0x1CC 0x1CC +#define FLAG_0x1CD 0x1CD +#define FLAG_0x1CE 0x1CE +#define FLAG_0x1CF 0x1CF +#define FLAG_0x1D0 0x1D0 +#define FLAG_0x1D1 0x1D1 +#define FLAG_0x1D2 0x1D2 +#define FLAG_0x1D3 0x1D3 +#define FLAG_0x1D4 0x1D4 +#define FLAG_0x1D5 0x1D5 +#define FLAG_0x1D6 0x1D6 +#define FLAG_0x1D7 0x1D7 +#define FLAG_0x1D8 0x1D8 +#define FLAG_0x1D9 0x1D9 +#define FLAG_0x1DA 0x1DA +#define FLAG_0x1DB 0x1DB +#define FLAG_0x1DC 0x1DC +#define FLAG_0x1DD 0x1DD +#define FLAG_0x1DE 0x1DE +#define FLAG_0x1DF 0x1DF +#define FLAG_0x1E0 0x1E0 +#define FLAG_0x1E1 0x1E1 +#define FLAG_0x1E2 0x1E2 +#define FLAG_0x1E3 0x1E3 +#define FLAG_0x1E4 0x1E4 +#define FLAG_0x1E5 0x1E5 +#define FLAG_0x1E6 0x1E6 +#define FLAG_0x1E7 0x1E7 +#define FLAG_0x1E8 0x1E8 +#define FLAG_0x1E9 0x1E9 +#define FLAG_0x1EA 0x1EA +#define FLAG_0x1EB 0x1EB +#define FLAG_0x1EC 0x1EC +#define FLAG_0x1ED 0x1ED +#define FLAG_0x1EE 0x1EE +#define FLAG_0x1EF 0x1EF +#define FLAG_0x1F0 0x1F0 +#define FLAG_0x1F1 0x1F1 +#define FLAG_0x1F2 0x1F2 +#define FLAG_0x1F3 0x1F3 +#define FLAG_0x1F4 0x1F4 +#define FLAG_0x1F5 0x1F5 +#define FLAG_0x1F6 0x1F6 +#define FLAG_0x1F7 0x1F7 +#define FLAG_0x1F8 0x1F8 +#define FLAG_0x1F9 0x1F9 +#define FLAG_0x1FA 0x1FA +#define FLAG_0x1FB 0x1FB +#define FLAG_0x1FC 0x1FC +#define FLAG_0x1FD 0x1FD +#define FLAG_0x1FE 0x1FE +#define FLAG_0x1FF 0x1FF +#define FLAG_0x200 0x200 +#define FLAG_0x201 0x201 +#define FLAG_0x202 0x202 +#define FLAG_0x203 0x203 +#define FLAG_0x204 0x204 +#define FLAG_0x205 0x205 +#define FLAG_0x206 0x206 +#define FLAG_0x207 0x207 +#define FLAG_0x208 0x208 +#define FLAG_0x209 0x209 +#define FLAG_0x20A 0x20A +#define FLAG_0x20B 0x20B +#define FLAG_0x20C 0x20C +#define FLAG_0x20D 0x20D +#define FLAG_0x20E 0x20E +#define FLAG_0x20F 0x20F +#define FLAG_0x210 0x210 +#define FLAG_0x211 0x211 +#define FLAG_0x212 0x212 +#define FLAG_0x213 0x213 +#define FLAG_0x214 0x214 +#define FLAG_0x215 0x215 +#define FLAG_0x216 0x216 +#define FLAG_0x217 0x217 +#define FLAG_0x218 0x218 +#define FLAG_0x219 0x219 +#define FLAG_0x21A 0x21A +#define FLAG_0x21B 0x21B +#define FLAG_0x21C 0x21C +#define FLAG_0x21D 0x21D +#define FLAG_0x21E 0x21E +#define FLAG_0x21F 0x21F +#define FLAG_0x220 0x220 +#define FLAG_0x221 0x221 +#define FLAG_0x222 0x222 +#define FLAG_0x223 0x223 +#define FLAG_0x224 0x224 +#define FLAG_0x225 0x225 +#define FLAG_0x226 0x226 +#define FLAG_0x227 0x227 +#define FLAG_0x228 0x228 +#define FLAG_0x229 0x229 +#define FLAG_0x22A 0x22A +#define FLAG_0x22B 0x22B +#define FLAG_0x22C 0x22C +#define FLAG_0x22D 0x22D +#define FLAG_0x22E 0x22E +#define FLAG_0x22F 0x22F +#define FLAG_0x230 0x230 +#define FLAG_0x231 0x231 +#define FLAG_0x232 0x232 +#define FLAG_0x233 0x233 +#define FLAG_0x234 0x234 +#define FLAG_0x235 0x235 +#define FLAG_0x236 0x236 +#define FLAG_0x237 0x237 +#define FLAG_0x238 0x238 +#define FLAG_0x239 0x239 +#define FLAG_0x23A 0x23A +#define FLAG_0x23B 0x23B +#define FLAG_0x23C 0x23C +#define FLAG_0x23D 0x23D +#define FLAG_0x23E 0x23E +#define FLAG_0x23F 0x23F +#define FLAG_0x240 0x240 +#define FLAG_0x241 0x241 +#define FLAG_0x242 0x242 +#define FLAG_0x243 0x243 +#define FLAG_0x244 0x244 +#define FLAG_0x245 0x245 +#define FLAG_0x246 0x246 +#define FLAG_0x247 0x247 +#define FLAG_0x248 0x248 +#define FLAG_0x249 0x249 +#define FLAG_0x24A 0x24A +#define FLAG_0x24B 0x24B +#define FLAG_0x24C 0x24C +#define FLAG_0x24D 0x24D +#define FLAG_0x24E 0x24E +#define FLAG_0x24F 0x24F +#define FLAG_0x250 0x250 +#define FLAG_0x251 0x251 +#define FLAG_0x252 0x252 +#define FLAG_0x253 0x253 +#define FLAG_0x254 0x254 +#define FLAG_0x255 0x255 +#define FLAG_0x256 0x256 +#define FLAG_0x257 0x257 +#define FLAG_0x258 0x258 +#define FLAG_0x259 0x259 +#define FLAG_0x25A 0x25A +#define FLAG_0x25B 0x25B +#define FLAG_0x25C 0x25C +#define FLAG_0x25D 0x25D +#define FLAG_0x25E 0x25E +#define FLAG_0x25F 0x25F +#define FLAG_0x260 0x260 +#define FLAG_0x261 0x261 +#define FLAG_0x262 0x262 +#define FLAG_0x263 0x263 +#define FLAG_0x264 0x264 +#define FLAG_0x265 0x265 +#define FLAG_0x266 0x266 +#define FLAG_0x267 0x267 +#define FLAG_0x268 0x268 +#define FLAG_0x269 0x269 +#define FLAG_0x26A 0x26A +#define FLAG_0x26B 0x26B +#define FLAG_0x26C 0x26C +#define FLAG_0x26D 0x26D +#define FLAG_0x26E 0x26E +#define FLAG_0x26F 0x26F +#define FLAG_0x270 0x270 +#define FLAG_0x271 0x271 +#define FLAG_0x272 0x272 +#define FLAG_0x273 0x273 +#define FLAG_0x274 0x274 +#define FLAG_0x275 0x275 +#define FLAG_0x276 0x276 +#define FLAG_0x277 0x277 +#define FLAG_0x278 0x278 +#define FLAG_0x279 0x279 +#define FLAG_0x27A 0x27A +#define FLAG_0x27B 0x27B +#define FLAG_0x27C 0x27C +#define FLAG_0x27D 0x27D +#define FLAG_0x27E 0x27E +#define FLAG_0x27F 0x27F +#define FLAG_0x280 0x280 +#define FLAG_0x281 0x281 +#define FLAG_0x282 0x282 +#define FLAG_0x283 0x283 +#define FLAG_0x284 0x284 +#define FLAG_0x285 0x285 +#define FLAG_0x286 0x286 +#define FLAG_0x287 0x287 +#define FLAG_0x288 0x288 +#define FLAG_0x289 0x289 +#define FLAG_0x28A 0x28A +#define FLAG_0x28B 0x28B +#define FLAG_0x28C 0x28C +#define FLAG_0x28D 0x28D +#define FLAG_0x28E 0x28E +#define FLAG_0x28F 0x28F +#define FLAG_0x290 0x290 +#define FLAG_0x291 0x291 +#define FLAG_0x292 0x292 +#define FLAG_0x293 0x293 +#define FLAG_0x294 0x294 +#define FLAG_0x295 0x295 +#define FLAG_0x296 0x296 +#define FLAG_0x297 0x297 +#define FLAG_0x298 0x298 +#define FLAG_0x299 0x299 +#define FLAG_0x29A 0x29A +#define FLAG_0x29B 0x29B +#define FLAG_0x29C 0x29C +#define FLAG_0x29D 0x29D +#define FLAG_0x29E 0x29E +#define FLAG_0x29F 0x29F +#define FLAG_0x2A0 0x2A0 +#define FLAG_0x2A1 0x2A1 +#define FLAG_0x2A2 0x2A2 +#define FLAG_0x2A3 0x2A3 +#define FLAG_0x2A4 0x2A4 +#define FLAG_0x2A5 0x2A5 +#define FLAG_0x2A6 0x2A6 +#define FLAG_0x2A7 0x2A7 +#define FLAG_0x2A8 0x2A8 +#define FLAG_0x2A9 0x2A9 +#define FLAG_0x2AA 0x2AA +#define FLAG_0x2AB 0x2AB +#define FLAG_0x2AC 0x2AC +#define FLAG_0x2AD 0x2AD +#define FLAG_0x2AE 0x2AE +#define FLAG_0x2AF 0x2AF +#define FLAG_0x2B0 0x2B0 +#define FLAG_0x2B1 0x2B1 +#define FLAG_0x2B2 0x2B2 +#define FLAG_0x2B3 0x2B3 +#define FLAG_0x2B4 0x2B4 +#define FLAG_0x2B5 0x2B5 +#define FLAG_0x2B6 0x2B6 +#define FLAG_0x2B7 0x2B7 +#define FLAG_0x2B8 0x2B8 +#define FLAG_0x2B9 0x2B9 +#define FLAG_0x2BA 0x2BA +#define FLAG_0x2BB 0x2BB +#define FLAG_0x2BC 0x2BC +#define FLAG_0x2BD 0x2BD +#define FLAG_0x2BE 0x2BE +#define FLAG_0x2BF 0x2BF +#define FLAG_0x2C0 0x2C0 +#define FLAG_0x2C1 0x2C1 +#define FLAG_0x2C2 0x2C2 +#define FLAG_0x2C3 0x2C3 +#define FLAG_0x2C4 0x2C4 +#define FLAG_0x2C5 0x2C5 +#define FLAG_0x2C6 0x2C6 +#define FLAG_0x2C7 0x2C7 +#define FLAG_0x2C8 0x2C8 +#define FLAG_0x2C9 0x2C9 +#define FLAG_0x2CA 0x2CA +#define FLAG_0x2CB 0x2CB +#define FLAG_0x2CC 0x2CC +#define FLAG_0x2CD 0x2CD +#define FLAG_0x2CE 0x2CE +#define FLAG_0x2CF 0x2CF +#define FLAG_0x2D0 0x2D0 +#define FLAG_0x2D1 0x2D1 +#define FLAG_0x2D2 0x2D2 +#define FLAG_0x2D3 0x2D3 +#define FLAG_0x2D4 0x2D4 +#define FLAG_0x2D5 0x2D5 +#define FLAG_0x2D6 0x2D6 +#define FLAG_0x2D7 0x2D7 +#define FLAG_0x2D8 0x2D8 +#define FLAG_0x2D9 0x2D9 +#define FLAG_0x2DA 0x2DA +#define FLAG_0x2DB 0x2DB +#define FLAG_0x2DC 0x2DC +#define FLAG_0x2DD 0x2DD +#define FLAG_0x2DE 0x2DE +#define FLAG_0x2DF 0x2DF +#define FLAG_0x2E0 0x2E0 +#define FLAG_0x2E1 0x2E1 +#define FLAG_0x2E2 0x2E2 +#define FLAG_0x2E3 0x2E3 +#define FLAG_0x2E4 0x2E4 +#define FLAG_0x2E5 0x2E5 +#define FLAG_0x2E6 0x2E6 +#define FLAG_0x2E7 0x2E7 +#define FLAG_0x2E8 0x2E8 +#define FLAG_0x2E9 0x2E9 +#define FLAG_0x2EA 0x2EA +#define FLAG_0x2EB 0x2EB +#define FLAG_0x2EC 0x2EC +#define FLAG_0x2ED 0x2ED +#define FLAG_0x2EE 0x2EE +#define FLAG_0x2EF 0x2EF +#define FLAG_0x2F0 0x2F0 +#define FLAG_0x2F1 0x2F1 +#define FLAG_0x2F2 0x2F2 +#define FLAG_0x2F3 0x2F3 +#define FLAG_0x2F4 0x2F4 +#define FLAG_0x2F5 0x2F5 +#define FLAG_0x2F6 0x2F6 +#define FLAG_0x2F7 0x2F7 +#define FLAG_0x2F8 0x2F8 +#define FLAG_0x2F9 0x2F9 +#define FLAG_0x2FA 0x2FA +#define FLAG_0x2FB 0x2FB +#define FLAG_0x2FC 0x2FC +#define FLAG_0x2FD 0x2FD +#define FLAG_0x2FE 0x2FE +#define FLAG_0x2FF 0x2FF +#define FLAG_0x300 0x300 +#define FLAG_0x301 0x301 +#define FLAG_0x302 0x302 +#define FLAG_0x303 0x303 +#define FLAG_0x304 0x304 +#define FLAG_0x305 0x305 +#define FLAG_0x306 0x306 +#define FLAG_0x307 0x307 +#define FLAG_0x308 0x308 +#define FLAG_0x309 0x309 +#define FLAG_0x30A 0x30A +#define FLAG_0x30B 0x30B +#define FLAG_0x30C 0x30C +#define FLAG_0x30D 0x30D +#define FLAG_0x30E 0x30E +#define FLAG_0x30F 0x30F +#define FLAG_0x310 0x310 +#define FLAG_0x311 0x311 +#define FLAG_0x312 0x312 +#define FLAG_0x313 0x313 +#define FLAG_0x314 0x314 +#define FLAG_0x315 0x315 +#define FLAG_0x316 0x316 +#define FLAG_0x317 0x317 +#define FLAG_0x318 0x318 +#define FLAG_0x319 0x319 +#define FLAG_0x31A 0x31A +#define FLAG_0x31B 0x31B +#define FLAG_0x31C 0x31C +#define FLAG_0x31D 0x31D +#define FLAG_0x31E 0x31E +#define FLAG_0x31F 0x31F +#define FLAG_0x320 0x320 +#define FLAG_0x321 0x321 +#define FLAG_0x322 0x322 +#define FLAG_0x323 0x323 +#define FLAG_0x324 0x324 +#define FLAG_0x325 0x325 +#define FLAG_0x326 0x326 +#define FLAG_0x327 0x327 +#define FLAG_0x328 0x328 +#define FLAG_0x329 0x329 +#define FLAG_0x32A 0x32A +#define FLAG_0x32B 0x32B +#define FLAG_0x32C 0x32C +#define FLAG_0x32D 0x32D +#define FLAG_0x32E 0x32E +#define FLAG_0x32F 0x32F +#define FLAG_0x330 0x330 +#define FLAG_0x331 0x331 +#define FLAG_0x332 0x332 +#define FLAG_0x333 0x333 +#define FLAG_0x334 0x334 +#define FLAG_0x335 0x335 +#define FLAG_0x336 0x336 +#define FLAG_0x337 0x337 +#define FLAG_0x338 0x338 +#define FLAG_0x339 0x339 +#define FLAG_0x33A 0x33A +#define FLAG_0x33B 0x33B +#define FLAG_0x33C 0x33C +#define FLAG_0x33D 0x33D +#define FLAG_0x33E 0x33E +#define FLAG_0x33F 0x33F +#define FLAG_0x340 0x340 +#define FLAG_0x341 0x341 +#define FLAG_0x342 0x342 +#define FLAG_0x343 0x343 +#define FLAG_0x344 0x344 +#define FLAG_0x345 0x345 +#define FLAG_0x346 0x346 +#define FLAG_0x347 0x347 +#define FLAG_0x348 0x348 +#define FLAG_0x349 0x349 +#define FLAG_0x34A 0x34A +#define FLAG_0x34B 0x34B +#define FLAG_0x34C 0x34C +#define FLAG_0x34D 0x34D +#define FLAG_0x34E 0x34E +#define FLAG_0x34F 0x34F +#define FLAG_0x350 0x350 +#define FLAG_0x351 0x351 +#define FLAG_0x352 0x352 +#define FLAG_0x353 0x353 +#define FLAG_0x354 0x354 +#define FLAG_0x355 0x355 +#define FLAG_0x356 0x356 +#define FLAG_0x357 0x357 +#define FLAG_0x358 0x358 +#define FLAG_0x359 0x359 +#define FLAG_0x35A 0x35A +#define FLAG_0x35B 0x35B +#define FLAG_0x35C 0x35C +#define FLAG_0x35D 0x35D +#define FLAG_0x35E 0x35E +#define FLAG_0x35F 0x35F +#define FLAG_0x360 0x360 +#define FLAG_0x361 0x361 +#define FLAG_0x362 0x362 +#define FLAG_0x363 0x363 +#define FLAG_0x364 0x364 +#define FLAG_0x365 0x365 +#define FLAG_0x366 0x366 +#define FLAG_0x367 0x367 +#define FLAG_0x368 0x368 +#define FLAG_0x369 0x369 +#define FLAG_0x36A 0x36A +#define FLAG_0x36B 0x36B +#define FLAG_0x36C 0x36C +#define FLAG_0x36D 0x36D +#define FLAG_0x36E 0x36E +#define FLAG_0x36F 0x36F +#define FLAG_0x370 0x370 +#define FLAG_0x371 0x371 +#define FLAG_0x372 0x372 +#define FLAG_0x373 0x373 +#define FLAG_0x374 0x374 +#define FLAG_0x375 0x375 +#define FLAG_0x376 0x376 +#define FLAG_0x377 0x377 +#define FLAG_0x378 0x378 +#define FLAG_0x379 0x379 +#define FLAG_0x37A 0x37A +#define FLAG_0x37B 0x37B +#define FLAG_0x37C 0x37C +#define FLAG_0x37D 0x37D +#define FLAG_0x37E 0x37E +#define FLAG_0x37F 0x37F +#define FLAG_0x380 0x380 +#define FLAG_0x381 0x381 +#define FLAG_0x382 0x382 +#define FLAG_0x383 0x383 +#define FLAG_0x384 0x384 +#define FLAG_0x385 0x385 +#define FLAG_0x386 0x386 +#define FLAG_0x387 0x387 +#define FLAG_0x388 0x388 +#define FLAG_0x389 0x389 +#define FLAG_0x38A 0x38A +#define FLAG_0x38B 0x38B +#define FLAG_0x38C 0x38C +#define FLAG_0x38D 0x38D +#define FLAG_0x38E 0x38E +#define FLAG_0x38F 0x38F +#define FLAG_0x390 0x390 +#define FLAG_0x391 0x391 +#define FLAG_0x392 0x392 +#define FLAG_0x393 0x393 +#define FLAG_0x394 0x394 +#define FLAG_0x395 0x395 +#define FLAG_0x396 0x396 +#define FLAG_0x397 0x397 +#define FLAG_0x398 0x398 +#define FLAG_0x399 0x399 +#define FLAG_0x39A 0x39A +#define FLAG_0x39B 0x39B +#define FLAG_0x39C 0x39C +#define FLAG_0x39D 0x39D +#define FLAG_0x39E 0x39E +#define FLAG_0x39F 0x39F +#define FLAG_0x3A0 0x3A0 +#define FLAG_0x3A1 0x3A1 +#define FLAG_0x3A2 0x3A2 +#define FLAG_0x3A3 0x3A3 +#define FLAG_0x3A4 0x3A4 +#define FLAG_0x3A5 0x3A5 +#define FLAG_0x3A6 0x3A6 +#define FLAG_0x3A7 0x3A7 +#define FLAG_0x3A8 0x3A8 +#define FLAG_0x3A9 0x3A9 +#define FLAG_0x3AA 0x3AA +#define FLAG_0x3AB 0x3AB +#define FLAG_0x3AC 0x3AC +#define FLAG_0x3AD 0x3AD +#define FLAG_0x3AE 0x3AE +#define FLAG_0x3AF 0x3AF +#define FLAG_0x3B0 0x3B0 +#define FLAG_0x3B1 0x3B1 +#define FLAG_0x3B2 0x3B2 +#define FLAG_0x3B3 0x3B3 +#define FLAG_0x3B4 0x3B4 +#define FLAG_0x3B5 0x3B5 +#define FLAG_0x3B6 0x3B6 +#define FLAG_0x3B7 0x3B7 +#define FLAG_0x3B8 0x3B8 +#define FLAG_0x3B9 0x3B9 +#define FLAG_0x3BA 0x3BA +#define FLAG_0x3BB 0x3BB +#define FLAG_0x3BC 0x3BC +#define FLAG_0x3BD 0x3BD +#define FLAG_0x3BE 0x3BE +#define FLAG_0x3BF 0x3BF +#define FLAG_0x3C0 0x3C0 +#define FLAG_0x3C1 0x3C1 +#define FLAG_0x3C2 0x3C2 +#define FLAG_0x3C3 0x3C3 +#define FLAG_0x3C4 0x3C4 +#define FLAG_0x3C5 0x3C5 +#define FLAG_0x3C6 0x3C6 +#define FLAG_0x3C7 0x3C7 +#define FLAG_0x3C8 0x3C8 +#define FLAG_0x3C9 0x3C9 +#define FLAG_0x3CA 0x3CA +#define FLAG_0x3CB 0x3CB +#define FLAG_0x3CC 0x3CC +#define FLAG_0x3CD 0x3CD +#define FLAG_0x3CE 0x3CE +#define FLAG_0x3CF 0x3CF +#define FLAG_0x3D0 0x3D0 +#define FLAG_0x3D1 0x3D1 +#define FLAG_0x3D2 0x3D2 +#define FLAG_0x3D3 0x3D3 +#define FLAG_0x3D4 0x3D4 +#define FLAG_0x3D5 0x3D5 +#define FLAG_0x3D6 0x3D6 +#define FLAG_0x3D7 0x3D7 +#define FLAG_0x3D8 0x3D8 +#define FLAG_0x3D9 0x3D9 +#define FLAG_0x3DA 0x3DA +#define FLAG_0x3DB 0x3DB +#define FLAG_0x3DC 0x3DC +#define FLAG_0x3DD 0x3DD +#define FLAG_0x3DE 0x3DE +#define FLAG_0x3DF 0x3DF +#define FLAG_0x3E0 0x3E0 +#define FLAG_0x3E1 0x3E1 +#define FLAG_0x3E2 0x3E2 +#define FLAG_0x3E3 0x3E3 +#define FLAG_0x3E4 0x3E4 +#define FLAG_0x3E5 0x3E5 +#define FLAG_0x3E6 0x3E6 +#define FLAG_0x3E7 0x3E7 +#define FLAG_0x3E8 0x3E8 +#define FLAG_0x3E9 0x3E9 +#define FLAG_0x3EA 0x3EA +#define FLAG_0x3EB 0x3EB +#define FLAG_0x3EC 0x3EC +#define FLAG_0x3ED 0x3ED +#define FLAG_0x3EE 0x3EE +#define FLAG_0x3EF 0x3EF +#define FLAG_0x3F0 0x3F0 +#define FLAG_0x3F1 0x3F1 +#define FLAG_0x3F2 0x3F2 +#define FLAG_0x3F3 0x3F3 +#define FLAG_0x3F4 0x3F4 +#define FLAG_0x3F5 0x3F5 +#define FLAG_0x3F6 0x3F6 +#define FLAG_0x3F7 0x3F7 +#define FLAG_0x3F8 0x3F8 +#define FLAG_0x3F9 0x3F9 +#define FLAG_0x3FA 0x3FA +#define FLAG_0x3FB 0x3FB +#define FLAG_0x3FC 0x3FC +#define FLAG_0x3FD 0x3FD +#define FLAG_0x3FE 0x3FE +#define FLAG_0x3FF 0x3FF +#define FLAG_0x400 0x400 +#define FLAG_0x401 0x401 +#define FLAG_0x402 0x402 +#define FLAG_0x403 0x403 +#define FLAG_0x404 0x404 +#define FLAG_0x405 0x405 +#define FLAG_0x406 0x406 +#define FLAG_0x407 0x407 +#define FLAG_0x408 0x408 +#define FLAG_0x409 0x409 +#define FLAG_0x40A 0x40A +#define FLAG_0x40B 0x40B +#define FLAG_0x40C 0x40C +#define FLAG_0x40D 0x40D +#define FLAG_0x40E 0x40E +#define FLAG_0x40F 0x40F +#define FLAG_0x410 0x410 +#define FLAG_0x411 0x411 +#define FLAG_0x412 0x412 +#define FLAG_0x413 0x413 +#define FLAG_0x414 0x414 +#define FLAG_0x415 0x415 +#define FLAG_0x416 0x416 +#define FLAG_0x417 0x417 +#define FLAG_0x418 0x418 +#define FLAG_0x419 0x419 +#define FLAG_0x41A 0x41A +#define FLAG_0x41B 0x41B +#define FLAG_0x41C 0x41C +#define FLAG_0x41D 0x41D +#define FLAG_0x41E 0x41E +#define FLAG_0x41F 0x41F +#define FLAG_0x420 0x420 +#define FLAG_0x421 0x421 +#define FLAG_0x422 0x422 +#define FLAG_0x423 0x423 +#define FLAG_0x424 0x424 +#define FLAG_0x425 0x425 +#define FLAG_0x426 0x426 +#define FLAG_0x427 0x427 +#define FLAG_0x428 0x428 +#define FLAG_0x429 0x429 +#define FLAG_0x42A 0x42A +#define FLAG_0x42B 0x42B +#define FLAG_0x42C 0x42C +#define FLAG_0x42D 0x42D +#define FLAG_0x42E 0x42E +#define FLAG_0x42F 0x42F +#define FLAG_0x430 0x430 +#define FLAG_0x431 0x431 +#define FLAG_0x432 0x432 +#define FLAG_0x433 0x433 +#define FLAG_0x434 0x434 +#define FLAG_0x435 0x435 +#define FLAG_0x436 0x436 +#define FLAG_0x437 0x437 +#define FLAG_0x438 0x438 +#define FLAG_0x439 0x439 +#define FLAG_0x43A 0x43A +#define FLAG_0x43B 0x43B +#define FLAG_0x43C 0x43C +#define FLAG_0x43D 0x43D +#define FLAG_0x43E 0x43E +#define FLAG_0x43F 0x43F +#define FLAG_0x440 0x440 +#define FLAG_0x441 0x441 +#define FLAG_0x442 0x442 +#define FLAG_0x443 0x443 +#define FLAG_0x444 0x444 +#define FLAG_0x445 0x445 +#define FLAG_0x446 0x446 +#define FLAG_0x447 0x447 +#define FLAG_0x448 0x448 +#define FLAG_0x449 0x449 +#define FLAG_0x44A 0x44A +#define FLAG_0x44B 0x44B +#define FLAG_0x44C 0x44C +#define FLAG_0x44D 0x44D +#define FLAG_0x44E 0x44E +#define FLAG_0x44F 0x44F +#define FLAG_0x450 0x450 +#define FLAG_0x451 0x451 +#define FLAG_0x452 0x452 +#define FLAG_0x453 0x453 +#define FLAG_0x454 0x454 +#define FLAG_0x455 0x455 +#define FLAG_0x456 0x456 +#define FLAG_0x457 0x457 +#define FLAG_0x458 0x458 +#define FLAG_0x459 0x459 +#define FLAG_0x45A 0x45A +#define FLAG_0x45B 0x45B +#define FLAG_0x45C 0x45C +#define FLAG_0x45D 0x45D +#define FLAG_0x45E 0x45E +#define FLAG_0x45F 0x45F +#define FLAG_0x460 0x460 +#define FLAG_0x461 0x461 +#define FLAG_0x462 0x462 +#define FLAG_0x463 0x463 +#define FLAG_0x464 0x464 +#define FLAG_0x465 0x465 +#define FLAG_0x466 0x466 +#define FLAG_0x467 0x467 +#define FLAG_0x468 0x468 +#define FLAG_0x469 0x469 +#define FLAG_0x46A 0x46A +#define FLAG_0x46B 0x46B +#define FLAG_0x46C 0x46C +#define FLAG_0x46D 0x46D +#define FLAG_0x46E 0x46E +#define FLAG_0x46F 0x46F +#define FLAG_0x470 0x470 +#define FLAG_0x471 0x471 +#define FLAG_0x472 0x472 +#define FLAG_0x473 0x473 +#define FLAG_0x474 0x474 +#define FLAG_0x475 0x475 +#define FLAG_0x476 0x476 +#define FLAG_0x477 0x477 +#define FLAG_0x478 0x478 +#define FLAG_0x479 0x479 +#define FLAG_0x47A 0x47A +#define FLAG_0x47B 0x47B +#define FLAG_0x47C 0x47C +#define FLAG_0x47D 0x47D +#define FLAG_0x47E 0x47E +#define FLAG_0x47F 0x47F +#define FLAG_0x480 0x480 +#define FLAG_0x481 0x481 +#define FLAG_0x482 0x482 +#define FLAG_0x483 0x483 +#define FLAG_0x484 0x484 +#define FLAG_0x485 0x485 +#define FLAG_0x486 0x486 +#define FLAG_0x487 0x487 +#define FLAG_0x488 0x488 +#define FLAG_0x489 0x489 +#define FLAG_0x48A 0x48A +#define FLAG_0x48B 0x48B +#define FLAG_0x48C 0x48C +#define FLAG_0x48D 0x48D +#define FLAG_0x48E 0x48E +#define FLAG_0x48F 0x48F +#define FLAG_0x490 0x490 +#define FLAG_0x491 0x491 +#define FLAG_0x492 0x492 +#define FLAG_0x493 0x493 +#define FLAG_0x494 0x494 +#define FLAG_0x495 0x495 +#define FLAG_0x496 0x496 +#define FLAG_0x497 0x497 +#define FLAG_0x498 0x498 +#define FLAG_0x499 0x499 +#define FLAG_0x49A 0x49A +#define FLAG_0x49B 0x49B +#define FLAG_0x49C 0x49C +#define FLAG_0x49D 0x49D +#define FLAG_0x49E 0x49E +#define FLAG_0x49F 0x49F +#define FLAG_0x4A0 0x4A0 +#define FLAG_0x4A1 0x4A1 +#define FLAG_0x4A2 0x4A2 +#define FLAG_0x4A3 0x4A3 +#define FLAG_0x4A4 0x4A4 +#define FLAG_0x4A5 0x4A5 +#define FLAG_0x4A6 0x4A6 +#define FLAG_0x4A7 0x4A7 +#define FLAG_0x4A8 0x4A8 +#define FLAG_0x4A9 0x4A9 +#define FLAG_0x4AA 0x4AA +#define FLAG_0x4AB 0x4AB +#define FLAG_0x4AC 0x4AC +#define FLAG_0x4AD 0x4AD +#define FLAG_0x4AE 0x4AE +#define FLAG_0x4AF 0x4AF +#define FLAG_0x4B0 0x4B0 +#define FLAG_0x4B1 0x4B1 +#define FLAG_0x4B2 0x4B2 +#define FLAG_0x4B3 0x4B3 +#define FLAG_0x4B4 0x4B4 +#define FLAG_0x4B5 0x4B5 +#define FLAG_0x4B6 0x4B6 +#define FLAG_0x4B7 0x4B7 +#define FLAG_0x4B8 0x4B8 +#define FLAG_0x4B9 0x4B9 +#define FLAG_0x4BA 0x4BA +#define FLAG_0x4BB 0x4BB +#define FLAG_0x4BC 0x4BC +#define FLAG_0x4BD 0x4BD +#define FLAG_0x4BE 0x4BE +#define FLAG_0x4BF 0x4BF +#define FLAG_0x4C0 0x4C0 +#define FLAG_0x4C1 0x4C1 +#define FLAG_0x4C2 0x4C2 +#define FLAG_0x4C3 0x4C3 +#define FLAG_0x4C4 0x4C4 +#define FLAG_0x4C5 0x4C5 +#define FLAG_0x4C6 0x4C6 +#define FLAG_0x4C7 0x4C7 +#define FLAG_0x4C8 0x4C8 +#define FLAG_0x4C9 0x4C9 +#define FLAG_0x4CA 0x4CA +#define FLAG_0x4CB 0x4CB +#define FLAG_0x4CC 0x4CC +#define FLAG_0x4CD 0x4CD +#define FLAG_0x4CE 0x4CE +#define FLAG_0x4CF 0x4CF +#define FLAG_0x4D0 0x4D0 +#define FLAG_0x4D1 0x4D1 +#define FLAG_0x4D2 0x4D2 +#define FLAG_0x4D3 0x4D3 +#define FLAG_0x4D4 0x4D4 +#define FLAG_0x4D5 0x4D5 +#define FLAG_0x4D6 0x4D6 +#define FLAG_0x4D7 0x4D7 +#define FLAG_0x4D8 0x4D8 +#define FLAG_0x4D9 0x4D9 +#define FLAG_0x4DA 0x4DA +#define FLAG_0x4DB 0x4DB +#define FLAG_0x4DC 0x4DC +#define FLAG_0x4DD 0x4DD +#define FLAG_0x4DE 0x4DE +#define FLAG_0x4DF 0x4DF +#define FLAG_0x4E0 0x4E0 +#define FLAG_0x4E1 0x4E1 +#define FLAG_0x4E2 0x4E2 +#define FLAG_0x4E3 0x4E3 +#define FLAG_0x4E4 0x4E4 +#define FLAG_0x4E5 0x4E5 +#define FLAG_0x4E6 0x4E6 +#define FLAG_0x4E7 0x4E7 +#define FLAG_0x4E8 0x4E8 +#define FLAG_0x4E9 0x4E9 +#define FLAG_0x4EA 0x4EA +#define FLAG_0x4EB 0x4EB +#define FLAG_0x4EC 0x4EC +#define FLAG_0x4ED 0x4ED +#define FLAG_0x4EE 0x4EE +#define FLAG_0x4EF 0x4EF +#define FLAG_0x4F0 0x4F0 +#define FLAG_0x4F1 0x4F1 +#define FLAG_0x4F2 0x4F2 +#define FLAG_0x4F3 0x4F3 +#define FLAG_0x4F4 0x4F4 +#define FLAG_0x4F5 0x4F5 +#define FLAG_0x4F6 0x4F6 +#define FLAG_0x4F7 0x4F7 +#define FLAG_0x4F8 0x4F8 +#define FLAG_0x4F9 0x4F9 +#define FLAG_0x4FA 0x4FA +#define FLAG_0x4FB 0x4FB +#define FLAG_0x4FC 0x4FC +#define FLAG_0x4FD 0x4FD +#define FLAG_0x4FE 0x4FE +#define FLAG_0x4FF 0x4FF + +#define FLAG_TRAINER_FLAG_START 0x500 + +#define TRAINERS_FLAG_NO 0x356 +#define CODE_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860 + +// SYSTEM FLAGS + +// 0x860 +#define FLAG_SYS_POKEMON_GET (CODE_FLAGS + 0) +#define FLAG_SYS_POKEDEX_GET (CODE_FLAGS + 1) +#define FLAG_SYS_POKENAV_GET (CODE_FLAGS + 2) +// third one appears unused +#define FLAG_SYS_GAME_CLEAR (CODE_FLAGS + 4) +#define FLAG_SYS_CHAT_USED (CODE_FLAGS + 5) +#define FLAG_SYS_HIPSTER_MEET (CODE_FLAGS + 6) + +// badges +#define FLAG_BADGE01_GET (CODE_FLAGS + 7) +#define FLAG_BADGE02_GET (CODE_FLAGS + 8) +#define FLAG_BADGE03_GET (CODE_FLAGS + 9) +#define FLAG_BADGE04_GET (CODE_FLAGS + 0xA) +#define FLAG_BADGE05_GET (CODE_FLAGS + 0xB) +#define FLAG_BADGE06_GET (CODE_FLAGS + 0xC) +#define FLAG_BADGE07_GET (CODE_FLAGS + 0xD) +#define FLAG_BADGE08_GET (CODE_FLAGS + 0xE) + +// cities and towns +#define FLAG_VISITED_LITTLEROOT_TOWN (CODE_FLAGS + 0xF) +#define FLAG_VISITED_OLDALE_TOWN (CODE_FLAGS + 0x10) +#define FLAG_VISITED_DEWFORD_TOWN (CODE_FLAGS + 0x11) +#define FLAG_VISITED_LAVARIDGE_TOWN (CODE_FLAGS + 0x12) +#define FLAG_VISITED_FALLARBOR_TOWN (CODE_FLAGS + 0x13) +#define FLAG_VISITED_VERDANTURF_TOWN (CODE_FLAGS + 0x14) +#define FLAG_VISITED_PACIFIDLOG_TOWN (CODE_FLAGS + 0x15) +#define FLAG_VISITED_PETALBURG_CITY (CODE_FLAGS + 0x16) +#define FLAG_VISITED_SLATEPORT_CITY (CODE_FLAGS + 0x17) +#define FLAG_VISITED_MAUVILLE_CITY (CODE_FLAGS + 0x18) +#define FLAG_VISITED_RUSTBORO_CITY (CODE_FLAGS + 0x19) +#define FLAG_VISITED_FORTREE_CITY (CODE_FLAGS + 0x1A) +#define FLAG_VISITED_LILYCOVE_CITY (CODE_FLAGS + 0x1B) +#define FLAG_VISITED_MOSSDEEP_CITY (CODE_FLAGS + 0x1C) +#define FLAG_VISITED_SOOTOPOLIS_CITY (CODE_FLAGS + 0x1D) +#define FLAG_VISITED_EVER_GRANDE_CITY (CODE_FLAGS + 0x1E) + +#define FLAG_0x87F (CODE_FLAGS + 0x1F) +#define FLAG_0x880 (CODE_FLAGS + 0x20) +#define FLAG_0x881 (CODE_FLAGS + 0x21) +#define FLAG_0x882 (CODE_FLAGS + 0x22) +#define FLAG_0x883 (CODE_FLAGS + 0x23) +#define FLAG_0x884 (CODE_FLAGS + 0x24) +#define FLAG_0x885 (CODE_FLAGS + 0x25) +#define FLAG_0x886 (CODE_FLAGS + 0x26) +#define FLAG_0x887 (CODE_FLAGS + 0x27) + +#define FLAG_SYS_USE_FLASH (CODE_FLAGS + 0x28) +#define FLAG_SYS_USE_STRENGTH (CODE_FLAGS + 0x29) +#define FLAG_SYS_WEATHER_CTRL (CODE_FLAGS + 0x2A) +#define FLAG_SYS_CYCLING_ROAD (CODE_FLAGS + 0x2B) +#define FLAG_SYS_SAFARI_MODE (CODE_FLAGS + 0x2C) +#define FLAG_SYS_CRUISE_MODE (CODE_FLAGS + 0x2D) + +#define FLAG_0x88E (CODE_FLAGS + 0x2E) +#define FLAG_0x88F (CODE_FLAGS + 0x2F) + +#define FLAG_SYS_TV_HOME (CODE_FLAGS + 0x30) +#define FLAG_SYS_TV_WATCH (CODE_FLAGS + 0x31) +#define FLAG_SYS_TV_START (CODE_FLAGS + 0x32) +#define FLAG_SYS_POPWORD_INPUT (CODE_FLAGS + 0x33) +#define FLAG_SYS_MIX_RECORD (CODE_FLAGS + 0x34) +#define FLAG_SYS_CLOCK_SET (CODE_FLAGS + 0x35) +#define FLAG_SYS_NATIONAL_DEX (CODE_FLAGS + 0x36) +#define FLAG_SYS_CAVE_SHIP (CODE_FLAGS + 0x37) +#define FLAG_SYS_CAVE_WONDER (CODE_FLAGS + 0x38) +#define FLAG_SYS_CAVE_BATTLE (CODE_FLAGS + 0x39) +#define FLAG_SYS_SHOAL_TIDE (CODE_FLAGS + 0x3A) +#define FLAG_SYS_RIBBON_GET (CODE_FLAGS + 0x3B) + +#define FLAG_0x89C (CODE_FLAGS + 0x3C) +#define FLAG_0x89D (CODE_FLAGS + 0x3D) +#define FLAG_0x89E (CODE_FLAGS + 0x3E) +#define FLAG_0x89F (CODE_FLAGS + 0x3F) +#define FLAG_0x8A0 (CODE_FLAGS + 0x40) +#define FLAG_0x8A1 (CODE_FLAGS + 0x41) +#define FLAG_0x8A2 (CODE_FLAGS + 0x42) +#define FLAG_0x8A3 (CODE_FLAGS + 0x43) +#define FLAG_0x8A4 (CODE_FLAGS + 0x44) +#define FLAG_0x8A5 (CODE_FLAGS + 0x45) +#define FLAG_0x8A6 (CODE_FLAGS + 0x46) +#define FLAG_0x8A7 (CODE_FLAGS + 0x47) +#define FLAG_UNLOCK_BATTLE_FRONTIER (CODE_FLAGS + 0x48) +#define FLAG_UNLOCK_SOUTHERN_ISLAND (CODE_FLAGS + 0x49) +#define FLAG_0x8AA (CODE_FLAGS + 0x4A) + +#define FLAG_SYS_PC_LANETTE (CODE_FLAGS + 0x4B) +#define FLAG_SYS_MYSTERY_EVENT_ENABLE (CODE_FLAGS + 0x4C) +#define FLAG_SYS_ENC_UP_ITEM (CODE_FLAGS + 0x4D) +#define FLAG_SYS_ENC_DOWN_ITEM (CODE_FLAGS + 0x4E) +#define FLAG_SYS_BRAILLE_DIG (CODE_FLAGS + 0x4F) +#define FLAG_SYS_BRAILLE_STRENGTH (CODE_FLAGS + 0x50) +#define FLAG_SYS_BRAILLE_WAIT (CODE_FLAGS + 0x51) +#define FLAG_SYS_BRAILLE_FLY (CODE_FLAGS + 0x52) +#define FLAG_SYS_HAS_EON_TICKET (CODE_FLAGS + 0x53) + +#define FLAG_SYS_POKEMON_LEAGUE_FLY (CODE_FLAGS + 0x54) + +#define FLAG_0x8B5 (CODE_FLAGS + 0x55) +#define FLAG_0x8B6 (CODE_FLAGS + 0x56) +#define FLAG_0x8B7 (CODE_FLAGS + 0x57) +#define FLAG_0x8B8 (CODE_FLAGS + 0x58) +#define FLAG_0x8B9 (CODE_FLAGS + 0x59) +#define FLAG_0x8BA (CODE_FLAGS + 0x5A) +#define FLAG_0x8BB (CODE_FLAGS + 0x5B) +#define FLAG_0x8BC (CODE_FLAGS + 0x5C) + +#define FLAG_SYS_TV_LATI (CODE_FLAGS + 0x5D) + +#define FLAG_0x8BE (CODE_FLAGS + 0x5E) + +#define FLAG_SYS_SHOAL_ITEM (CODE_FLAGS + 0x5F) +#define FLAG_SYS_B_DASH (CODE_FLAGS + 0x60) // got Running Shoes +#define FLAG_SYS_CTRL_OBJ_DELETE (CODE_FLAGS + 0x61) +#define FLAG_SYS_RESET_RTC_ENABLE (CODE_FLAGS + 0x62) + +#define FLAG_0x8C3 (CODE_FLAGS + 0x63) + +#define FLAG_SYS_TOWER_SILVER (CODE_FLAGS + 0x64) +#define FLAG_SYS_TOWER_GOLD (CODE_FLAGS + 0x65) +#define FLAG_SYS_DOME_SILVER (CODE_FLAGS + 0x66) +#define FLAG_SYS_DOME_GOLD (CODE_FLAGS + 0x67) +#define FLAG_SYS_PALACE_SILVER (CODE_FLAGS + 0x68) +#define FLAG_SYS_PALACE_GOLD (CODE_FLAGS + 0x69) +#define FLAG_SYS_ARENA_SILVER (CODE_FLAGS + 0x6A) +#define FLAG_SYS_ARENA_GOLD (CODE_FLAGS + 0x6B) +#define FLAG_SYS_FACTORY_SILVER (CODE_FLAGS + 0x6C) +#define FLAG_SYS_FACTORY_GOLD (CODE_FLAGS + 0x6D) +#define FLAG_SYS_PIKE_SILVER (CODE_FLAGS + 0x6E) +#define FLAG_SYS_PIKE_GOLD (CODE_FLAGS + 0x6F) +#define FLAG_SYS_PYRAMID_SILVER (CODE_FLAGS + 0x70) +#define FLAG_SYS_PYRAMID_GOLD (CODE_FLAGS + 0x71) +#define FLAG_SYS_FRONTIER_PASS (CODE_FLAGS + 0x72) + +#define FLAG_0x8D3 (CODE_FLAGS + 0x73) +#define FLAG_0x8D4 (CODE_FLAGS + 0x74) +#define FLAG_0x8D5 (CODE_FLAGS + 0x75) +#define FLAG_0x8D6 (CODE_FLAGS + 0x76) + +#define FLAG_SYS_STORAGE_UNKNOWN_FLAG (CODE_FLAGS + 0x77) + +#define FLAG_0x8D8 (CODE_FLAGS + 0x78) +#define FLAG_0x8D9 (CODE_FLAGS + 0x79) +#define FLAG_0x8DA (CODE_FLAGS + 0x7A) + +#define FLAG_SYS_MYSTERY_GIFT_ENABLE (CODE_FLAGS + 0x7B) + +#define FLAG_0x8DC (CODE_FLAGS + 0x7C) +#define FLAG_0x8DD (CODE_FLAGS + 0x7D) +#define FLAG_0x8DE (CODE_FLAGS + 0x7E) +#define FLAG_0x8DF (CODE_FLAGS + 0x7F) +#define FLAG_0x8E0 (CODE_FLAGS + 0x80) +#define FLAG_0x8E1 (CODE_FLAGS + 0x81) +#define FLAG_0x8E2 (CODE_FLAGS + 0x82) +#define FLAG_0x8E3 (CODE_FLAGS + 0x83) +#define FLAG_0x8E4 (CODE_FLAGS + 0x84) +#define FLAG_0x8E5 (CODE_FLAGS + 0x85) +#define FLAG_0x8E6 (CODE_FLAGS + 0x86) +#define FLAG_0x8E7 (CODE_FLAGS + 0x87) +#define FLAG_0x8E8 (CODE_FLAGS + 0x88) +#define FLAG_0x8E9 (CODE_FLAGS + 0x89) +#define FLAG_0x8EA (CODE_FLAGS + 0x8A) +#define FLAG_0x8EB (CODE_FLAGS + 0x8B) +#define FLAG_0x8EC (CODE_FLAGS + 0x8C) +#define FLAG_0x8ED (CODE_FLAGS + 0x8D) +#define FLAG_0x8EE (CODE_FLAGS + 0x8E) +#define FLAG_0x8EF (CODE_FLAGS + 0x8F) +#define FLAG_0x8F0 (CODE_FLAGS + 0x90) +#define FLAG_0x8F1 (CODE_FLAGS + 0x91) +#define FLAG_0x8F2 (CODE_FLAGS + 0x92) +#define FLAG_0x8F3 (CODE_FLAGS + 0x93) +#define FLAG_0x8F4 (CODE_FLAGS + 0x94) +#define FLAG_0x8F5 (CODE_FLAGS + 0x95) +#define FLAG_0x8F6 (CODE_FLAGS + 0x96) +#define FLAG_0x8F7 (CODE_FLAGS + 0x97) +#define FLAG_0x8F8 (CODE_FLAGS + 0x98) +#define FLAG_0x8F9 (CODE_FLAGS + 0x99) +#define FLAG_0x8FA (CODE_FLAGS + 0x9A) +#define FLAG_0x8FB (CODE_FLAGS + 0x9B) +#define FLAG_0x8FC (CODE_FLAGS + 0x9C) +#define FLAG_0x8FD (CODE_FLAGS + 0x9D) +#define FLAG_0x8FE (CODE_FLAGS + 0x9E) +#define FLAG_0x8FF (CODE_FLAGS + 0x9F) +#define FLAG_0x900 (CODE_FLAGS + 0xA0) +#define FLAG_0x901 (CODE_FLAGS + 0xA1) +#define FLAG_0x902 (CODE_FLAGS + 0xA2) +#define FLAG_0x903 (CODE_FLAGS + 0xA3) +#define FLAG_0x904 (CODE_FLAGS + 0xA4) +#define FLAG_0x905 (CODE_FLAGS + 0xA5) +#define FLAG_0x906 (CODE_FLAGS + 0xA6) +#define FLAG_0x907 (CODE_FLAGS + 0xA7) +#define FLAG_0x908 (CODE_FLAGS + 0xA8) +#define FLAG_0x909 (CODE_FLAGS + 0xA9) +#define FLAG_0x90A (CODE_FLAGS + 0xAA) +#define FLAG_0x90B (CODE_FLAGS + 0xAB) +#define FLAG_0x90C (CODE_FLAGS + 0xAC) +#define FLAG_0x90D (CODE_FLAGS + 0xAD) +#define FLAG_0x90E (CODE_FLAGS + 0xAE) +#define FLAG_0x90F (CODE_FLAGS + 0xAF) +#define FLAG_0x910 (CODE_FLAGS + 0xB0) +#define FLAG_0x911 (CODE_FLAGS + 0xB1) +#define FLAG_0x912 (CODE_FLAGS + 0xB2) +#define FLAG_0x913 (CODE_FLAGS + 0xB3) +#define FLAG_0x914 (CODE_FLAGS + 0xB4) +#define FLAG_0x915 (CODE_FLAGS + 0xB5) +#define FLAG_0x916 (CODE_FLAGS + 0xB6) +#define FLAG_0x917 (CODE_FLAGS + 0xB7) +#define FLAG_0x918 (CODE_FLAGS + 0xB8) +#define FLAG_0x919 (CODE_FLAGS + 0xB9) +#define FLAG_0x91A (CODE_FLAGS + 0xBA) +#define FLAG_0x91B (CODE_FLAGS + 0xBB) +#define FLAG_0x91C (CODE_FLAGS + 0xBC) +#define FLAG_0x91D (CODE_FLAGS + 0xBD) +#define FLAG_0x91E (CODE_FLAGS + 0xBE) +#define FLAG_0x91F (CODE_FLAGS + 0xBF) +#define FLAG_0x920 (CODE_FLAGS + 0xC0) +#define FLAG_0x921 (CODE_FLAGS + 0xC1) +#define FLAG_0x922 (CODE_FLAGS + 0xC2) +#define FLAG_0x923 (CODE_FLAGS + 0xC3) +#define FLAG_0x924 (CODE_FLAGS + 0xC4) +#define FLAG_0x925 (CODE_FLAGS + 0xC5) +#define FLAG_0x926 (CODE_FLAGS + 0xC6) +#define FLAG_0x927 (CODE_FLAGS + 0xC7) +#define FLAG_0x928 (CODE_FLAGS + 0xC8) +#define FLAG_0x929 (CODE_FLAGS + 0xC9) +#define FLAG_0x92A (CODE_FLAGS + 0xCA) +#define FLAG_0x92B (CODE_FLAGS + 0xCB) +#define FLAG_0x92C (CODE_FLAGS + 0xCC) +#define FLAG_0x92D (CODE_FLAGS + 0xCD) +#define FLAG_0x92E (CODE_FLAGS + 0xCE) +#define FLAG_0x92F (CODE_FLAGS + 0xCF) +#define FLAG_0x930 (CODE_FLAGS + 0xD0) +#define FLAG_0x931 (CODE_FLAGS + 0xD1) +#define FLAG_0x932 (CODE_FLAGS + 0xD2) +#define FLAG_0x933 (CODE_FLAGS + 0xD3) +#define FLAG_0x934 (CODE_FLAGS + 0xD4) +#define FLAG_0x935 (CODE_FLAGS + 0xD5) +#define FLAG_0x936 (CODE_FLAGS + 0xD6) +#define FLAG_0x937 (CODE_FLAGS + 0xD7) +#define FLAG_0x938 (CODE_FLAGS + 0xD8) +#define FLAG_0x939 (CODE_FLAGS + 0xD9) +#define FLAG_0x93A (CODE_FLAGS + 0xDA) +#define FLAG_0x93B (CODE_FLAGS + 0xDB) +#define FLAG_0x93C (CODE_FLAGS + 0xDC) +#define FLAG_0x93D (CODE_FLAGS + 0xDD) +#define FLAG_0x93E (CODE_FLAGS + 0xDE) +#define FLAG_0x93F (CODE_FLAGS + 0xDF) +#define FLAG_0x940 (CODE_FLAGS + 0xE0) +#define FLAG_0x941 (CODE_FLAGS + 0xE1) +#define FLAG_0x942 (CODE_FLAGS + 0xE2) +#define FLAG_0x943 (CODE_FLAGS + 0xE3) +#define FLAG_0x944 (CODE_FLAGS + 0xE4) +#define FLAG_0x945 (CODE_FLAGS + 0xE5) +#define FLAG_0x946 (CODE_FLAGS + 0xE6) +#define FLAG_0x947 (CODE_FLAGS + 0xE7) +#define FLAG_0x948 (CODE_FLAGS + 0xE8) +#define FLAG_0x949 (CODE_FLAGS + 0xE9) +#define FLAG_0x94A (CODE_FLAGS + 0xEA) +#define FLAG_0x94B (CODE_FLAGS + 0xEB) +#define FLAG_0x94C (CODE_FLAGS + 0xEC) +#define FLAG_0x94D (CODE_FLAGS + 0xED) +#define FLAG_0x94E (CODE_FLAGS + 0xEE) +#define FLAG_0x94F (CODE_FLAGS + 0xEF) +#define FLAG_0x950 (CODE_FLAGS + 0xF0) +#define FLAG_0x951 (CODE_FLAGS + 0xF1) +#define FLAG_0x952 (CODE_FLAGS + 0xF2) +#define FLAG_0x953 (CODE_FLAGS + 0xF3) +#define FLAG_0x954 (CODE_FLAGS + 0xF4) +#define FLAG_0x955 (CODE_FLAGS + 0xF5) +#define FLAG_0x956 (CODE_FLAGS + 0xF6) +#define FLAG_0x957 (CODE_FLAGS + 0xF7) +#define FLAG_0x958 (CODE_FLAGS + 0xF8) +#define FLAG_0x959 (CODE_FLAGS + 0xF9) +#define FLAG_0x95A (CODE_FLAGS + 0xFA) +#define FLAG_0x95B (CODE_FLAGS + 0xFB) +#define FLAG_0x95C (CODE_FLAGS + 0xFC) +#define FLAG_0x95D (CODE_FLAGS + 0xFD) +#define FLAG_0x95E (CODE_FLAGS + 0xFE) +#define FLAG_0x95F (CODE_FLAGS + 0xFF) + +// SPECIAL FLAGS (unknown purpose) +#define FLAG_SPECIAL_FLAG_0x4000 0x4000 +#define FLAG_SPECIAL_FLAG_0x4001 0x4001 +#define FLAG_SPECIAL_FLAG_0x4002 0x4002 +#define FLAG_SPECIAL_FLAG_0x4003 0x4003 +#define FLAG_SPECIAL_FLAG_0x4004 0x4004 + +#endif // GUARD_CONSTANTS_FLAGS_H diff --git a/include/game_stat.h b/include/constants/game_stat.h index 5979c531c..b1f3d4197 100644 --- a/include/game_stat.h +++ b/include/constants/game_stat.h @@ -1,5 +1,5 @@ -#ifndef GUARD_GAME_STAT_H -#define GUARD_GAME_STAT_H +#ifndef GUARD_CONSTANTS_GAME_STAT_H +#define GUARD_CONSTANTS_GAME_STAT_H #define GAME_STAT_SAVED_GAME 0 #define GAME_STAT_FIRST_HOF_PLAY_TIME 1 @@ -56,7 +56,4 @@ #define NUM_GAME_STATS 64 -void IncrementGameStat(u8); -u32 GetGameStat(u8); - -#endif // GUARD_GAME_STAT_H +#endif // GUARD_CONSTANTS_GAME_STAT_H diff --git a/include/hold_effects.h b/include/constants/hold_effects.h index b653f5a92..b653f5a92 100644 --- a/include/hold_effects.h +++ b/include/constants/hold_effects.h diff --git a/include/constants/items.h b/include/constants/items.h new file mode 100644 index 000000000..6135b8d6f --- /dev/null +++ b/include/constants/items.h @@ -0,0 +1,393 @@ +#ifndef GUARD_CONSTANTS_ITEMS_H +#define GUARD_CONSTANTS_ITEMS_H + +#define ITEM_NONE 0 +#define ITEM_MASTER_BALL 1 +#define ITEM_ULTRA_BALL 2 +#define ITEM_GREAT_BALL 3 +#define ITEM_POKE_BALL 4 +#define ITEM_SAFARI_BALL 5 +#define ITEM_NET_BALL 6 +#define ITEM_DIVE_BALL 7 +#define ITEM_NEST_BALL 8 +#define ITEM_REPEAT_BALL 9 +#define ITEM_TIMER_BALL 10 +#define ITEM_LUXURY_BALL 11 +#define ITEM_PREMIER_BALL 12 +#define ITEM_POTION 13 +#define ITEM_ANTIDOTE 14 +#define ITEM_BURN_HEAL 15 +#define ITEM_ICE_HEAL 16 +#define ITEM_AWAKENING 17 +#define ITEM_PARALYZE_HEAL 18 +#define ITEM_FULL_RESTORE 19 +#define ITEM_MAX_POTION 20 +#define ITEM_HYPER_POTION 21 +#define ITEM_SUPER_POTION 22 +#define ITEM_FULL_HEAL 23 +#define ITEM_REVIVE 24 +#define ITEM_MAX_REVIVE 25 +#define ITEM_FRESH_WATER 26 +#define ITEM_SODA_POP 27 +#define ITEM_LEMONADE 28 +#define ITEM_MOOMOO_MILK 29 +#define ITEM_ENERGY_POWDER 30 +#define ITEM_ENERGY_ROOT 31 +#define ITEM_HEAL_POWDER 32 +#define ITEM_REVIVAL_HERB 33 +#define ITEM_ETHER 34 +#define ITEM_MAX_ETHER 35 +#define ITEM_ELIXIR 36 +#define ITEM_MAX_ELIXIR 37 +#define ITEM_LAVA_COOKIE 38 +#define ITEM_BLUE_FLUTE 39 +#define ITEM_YELLOW_FLUTE 40 +#define ITEM_RED_FLUTE 41 +#define ITEM_BLACK_FLUTE 42 +#define ITEM_WHITE_FLUTE 43 +#define ITEM_BERRY_JUICE 44 +#define ITEM_SACRED_ASH 45 +#define ITEM_SHOAL_SALT 46 +#define ITEM_SHOAL_SHELL 47 +#define ITEM_RED_SHARD 48 +#define ITEM_BLUE_SHARD 49 +#define ITEM_YELLOW_SHARD 50 +#define ITEM_GREEN_SHARD 51 +#define ITEM_034 52 +#define ITEM_035 53 +#define ITEM_036 54 +#define ITEM_037 55 +#define ITEM_038 56 +#define ITEM_039 57 +#define ITEM_03A 58 +#define ITEM_03B 59 +#define ITEM_03C 60 +#define ITEM_03D 61 +#define ITEM_03E 62 +#define ITEM_HP_UP 63 +#define ITEM_PROTEIN 64 +#define ITEM_IRON 65 +#define ITEM_CARBOS 66 +#define ITEM_CALCIUM 67 +#define ITEM_RARE_CANDY 68 +#define ITEM_PP_UP 69 +#define ITEM_ZINC 70 +#define ITEM_PP_MAX 71 +#define ITEM_048 72 +#define ITEM_GUARD_SPEC 73 +#define ITEM_DIRE_HIT 74 +#define ITEM_X_ATTACK 75 +#define ITEM_X_DEFEND 76 +#define ITEM_X_SPEED 77 +#define ITEM_X_ACCURACY 78 +#define ITEM_X_SPECIAL 79 +#define ITEM_POKE_DOLL 80 +#define ITEM_FLUFFY_TAIL 81 +#define ITEM_052 82 +#define ITEM_SUPER_REPEL 83 +#define ITEM_MAX_REPEL 84 +#define ITEM_ESCAPE_ROPE 85 +#define ITEM_REPEL 86 +#define ITEM_057 87 +#define ITEM_058 88 +#define ITEM_059 89 +#define ITEM_05A 90 +#define ITEM_05B 91 +#define ITEM_05C 92 +#define ITEM_SUN_STONE 93 +#define ITEM_MOON_STONE 94 +#define ITEM_FIRE_STONE 95 +#define ITEM_THUNDER_STONE 96 +#define ITEM_WATER_STONE 97 +#define ITEM_LEAF_STONE 98 +#define ITEM_063 99 +#define ITEM_064 100 +#define ITEM_065 101 +#define ITEM_066 102 +#define ITEM_TINY_MUSHROOM 103 +#define ITEM_BIG_MUSHROOM 104 +#define ITEM_069 105 +#define ITEM_PEARL 106 +#define ITEM_BIG_PEARL 107 +#define ITEM_STARDUST 108 +#define ITEM_STAR_PIECE 109 +#define ITEM_NUGGET 110 +#define ITEM_HEART_SCALE 111 +#define ITEM_070 112 +#define ITEM_071 113 +#define ITEM_072 114 +#define ITEM_073 115 +#define ITEM_074 116 +#define ITEM_075 117 +#define ITEM_076 118 +#define ITEM_077 119 +#define ITEM_078 120 +#define ITEM_ORANGE_MAIL 121 +#define ITEM_HARBOR_MAIL 122 +#define ITEM_GLITTER_MAIL 123 +#define ITEM_MECH_MAIL 124 +#define ITEM_WOOD_MAIL 125 +#define ITEM_WAVE_MAIL 126 +#define ITEM_BEAD_MAIL 127 +#define ITEM_SHADOW_MAIL 128 +#define ITEM_TROPIC_MAIL 129 +#define ITEM_DREAM_MAIL 130 +#define ITEM_FAB_MAIL 131 +#define ITEM_RETRO_MAIL 132 +#define ITEM_CHERI_BERRY 133 +#define ITEM_CHESTO_BERRY 134 +#define ITEM_PECHA_BERRY 135 +#define ITEM_RAWST_BERRY 136 +#define ITEM_ASPEAR_BERRY 137 +#define ITEM_LEPPA_BERRY 138 +#define ITEM_ORAN_BERRY 139 +#define ITEM_PERSIM_BERRY 140 +#define ITEM_LUM_BERRY 141 +#define ITEM_SITRUS_BERRY 142 +#define ITEM_FIGY_BERRY 143 +#define ITEM_WIKI_BERRY 144 +#define ITEM_MAGO_BERRY 145 +#define ITEM_AGUAV_BERRY 146 +#define ITEM_IAPAPA_BERRY 147 +#define ITEM_RAZZ_BERRY 148 +#define ITEM_BLUK_BERRY 149 +#define ITEM_NANAB_BERRY 150 +#define ITEM_WEPEAR_BERRY 151 +#define ITEM_PINAP_BERRY 152 +#define ITEM_POMEG_BERRY 153 +#define ITEM_KELPSY_BERRY 154 +#define ITEM_QUALOT_BERRY 155 +#define ITEM_HONDEW_BERRY 156 +#define ITEM_GREPA_BERRY 157 +#define ITEM_TAMATO_BERRY 158 +#define ITEM_CORNN_BERRY 159 +#define ITEM_MAGOST_BERRY 160 +#define ITEM_RABUTA_BERRY 161 +#define ITEM_NOMEL_BERRY 162 +#define ITEM_SPELON_BERRY 163 +#define ITEM_PAMTRE_BERRY 164 +#define ITEM_WATMEL_BERRY 165 +#define ITEM_DURIN_BERRY 166 +#define ITEM_BELUE_BERRY 167 +#define ITEM_LIECHI_BERRY 168 +#define ITEM_GANLON_BERRY 169 +#define ITEM_SALAC_BERRY 170 +#define ITEM_PETAYA_BERRY 171 +#define ITEM_APICOT_BERRY 172 +#define ITEM_LANSAT_BERRY 173 +#define ITEM_STARF_BERRY 174 +#define ITEM_ENIGMA_BERRY 175 +#define ITEM_0B0 176 +#define ITEM_0B1 177 +#define ITEM_0B2 178 +#define ITEM_BRIGHT_POWDER 179 +#define ITEM_WHITE_HERB 180 +#define ITEM_MACHO_BRACE 181 +#define ITEM_EXP_SHARE 182 +#define ITEM_QUICK_CLAW 183 +#define ITEM_SOOTHE_BELL 184 +#define ITEM_MENTAL_HERB 185 +#define ITEM_CHOICE_BAND 186 +#define ITEM_KINGS_ROCK 187 +#define ITEM_SILVER_POWDER 188 +#define ITEM_AMULET_COIN 189 +#define ITEM_CLEANSE_TAG 190 +#define ITEM_SOUL_DEW 191 +#define ITEM_DEEP_SEA_TOOTH 192 +#define ITEM_DEEP_SEA_SCALE 193 +#define ITEM_SMOKE_BALL 194 +#define ITEM_EVERSTONE 195 +#define ITEM_FOCUS_BAND 196 +#define ITEM_LUCKY_EGG 197 +#define ITEM_SCOPE_LENS 198 +#define ITEM_METAL_COAT 199 +#define ITEM_LEFTOVERS 200 +#define ITEM_DRAGON_SCALE 201 +#define ITEM_LIGHT_BALL 202 +#define ITEM_SOFT_SAND 203 +#define ITEM_HARD_STONE 204 +#define ITEM_MIRACLE_SEED 205 +#define ITEM_BLACK_GLASSES 206 +#define ITEM_BLACK_BELT 207 +#define ITEM_MAGNET 208 +#define ITEM_MYSTIC_WATER 209 +#define ITEM_SHARP_BEAK 210 +#define ITEM_POISON_BARB 211 +#define ITEM_NEVER_MELT_ICE 212 +#define ITEM_SPELL_TAG 213 +#define ITEM_TWISTED_SPOON 214 +#define ITEM_CHARCOAL 215 +#define ITEM_DRAGON_FANG 216 +#define ITEM_SILK_SCARF 217 +#define ITEM_UP_GRADE 218 +#define ITEM_SHELL_BELL 219 +#define ITEM_SEA_INCENSE 220 +#define ITEM_LAX_INCENSE 221 +#define ITEM_LUCKY_PUNCH 222 +#define ITEM_METAL_POWDER 223 +#define ITEM_THICK_CLUB 224 +#define ITEM_STICK 225 +#define ITEM_0E2 226 +#define ITEM_0E3 227 +#define ITEM_0E4 228 +#define ITEM_0E5 229 +#define ITEM_0E6 230 +#define ITEM_0E7 231 +#define ITEM_0E8 232 +#define ITEM_0E9 233 +#define ITEM_0EA 234 +#define ITEM_0EB 235 +#define ITEM_0EC 236 +#define ITEM_0ED 237 +#define ITEM_0EE 238 +#define ITEM_0EF 239 +#define ITEM_0F0 240 +#define ITEM_0F1 241 +#define ITEM_0F2 242 +#define ITEM_0F3 243 +#define ITEM_0F4 244 +#define ITEM_0F5 245 +#define ITEM_0F6 246 +#define ITEM_0F7 247 +#define ITEM_0F8 248 +#define ITEM_0F9 249 +#define ITEM_0FA 250 +#define ITEM_0FB 251 +#define ITEM_0FC 252 +#define ITEM_0FD 253 +#define ITEM_RED_SCARF 254 +#define ITEM_BLUE_SCARF 255 +#define ITEM_PINK_SCARF 256 +#define ITEM_GREEN_SCARF 257 +#define ITEM_YELLOW_SCARF 258 +#define ITEM_MACH_BIKE 259 +#define ITEM_COIN_CASE 260 +#define ITEM_ITEMFINDER 261 +#define ITEM_OLD_ROD 262 +#define ITEM_GOOD_ROD 263 +#define ITEM_SUPER_ROD 264 +#define ITEM_SS_TICKET 265 +#define ITEM_CONTEST_PASS 266 +#define ITEM_10B 267 +#define ITEM_WAILMER_PAIL 268 +#define ITEM_DEVON_GOODS 269 +#define ITEM_SOOT_SACK 270 +#define ITEM_BASEMENT_KEY 271 +#define ITEM_ACRO_BIKE 272 +#define ITEM_POKEBLOCK_CASE 273 +#define ITEM_LETTER 274 +#define ITEM_EON_TICKET 275 +#define ITEM_RED_ORB 276 +#define ITEM_BLUE_ORB 277 +#define ITEM_SCANNER 278 +#define ITEM_GO_GOGGLES 279 +#define ITEM_METEORITE 280 +#define ITEM_ROOM_1_KEY 281 +#define ITEM_ROOM_2_KEY 282 +#define ITEM_ROOM_4_KEY 283 +#define ITEM_ROOM_6_KEY 284 +#define ITEM_STORAGE_KEY 285 +#define ITEM_ROOT_FOSSIL 286 +#define ITEM_CLAW_FOSSIL 287 +#define ITEM_DEVON_SCOPE 288 +#define ITEM_TM01 289 +#define ITEM_TM02 290 +#define ITEM_TM03 291 +#define ITEM_TM04 292 +#define ITEM_TM05 293 +#define ITEM_TM06 294 +#define ITEM_TM07 295 +#define ITEM_TM08 296 +#define ITEM_TM09 297 +#define ITEM_TM10 298 +#define ITEM_TM11 299 +#define ITEM_TM12 300 +#define ITEM_TM13 301 +#define ITEM_TM14 302 +#define ITEM_TM15 303 +#define ITEM_TM16 304 +#define ITEM_TM17 305 +#define ITEM_TM18 306 +#define ITEM_TM19 307 +#define ITEM_TM20 308 +#define ITEM_TM21 309 +#define ITEM_TM22 310 +#define ITEM_TM23 311 +#define ITEM_TM24 312 +#define ITEM_TM25 313 +#define ITEM_TM26 314 +#define ITEM_TM27 315 +#define ITEM_TM28 316 +#define ITEM_TM29 317 +#define ITEM_TM30 318 +#define ITEM_TM31 319 +#define ITEM_TM32 320 +#define ITEM_TM33 321 +#define ITEM_TM34 322 +#define ITEM_TM35 323 +#define ITEM_TM36 324 +#define ITEM_TM37 325 +#define ITEM_TM38 326 +#define ITEM_TM39 327 +#define ITEM_TM40 328 +#define ITEM_TM41 329 +#define ITEM_TM42 330 +#define ITEM_TM43 331 +#define ITEM_TM44 332 +#define ITEM_TM45 333 +#define ITEM_TM46 334 +#define ITEM_TM47 335 +#define ITEM_TM48 336 +#define ITEM_TM49 337 +#define ITEM_TM50 338 +#define ITEM_HM01 339 +#define ITEM_HM02 340 +#define ITEM_HM03 341 +#define ITEM_HM04 342 +#define ITEM_HM05 343 +#define ITEM_HM06 344 +#define ITEM_HM07 345 +#define ITEM_HM08 346 +#define ITEM_15B 347 +#define ITEM_15C 348 + +// FireRed/LeafGreen +#define ITEM_OAKS_PARCEL 349 +#define ITEM_POKE_FLUTE 350 +#define ITEM_SECRET_KEY 351 +#define ITEM_BIKE_VOUCHER 352 +#define ITEM_GOLD_TEETH 353 +#define ITEM_OLD_AMBER 354 +#define ITEM_CARD_KEY 355 +#define ITEM_LIFT_KEY 356 +#define ITEM_HELIX_FOSSIL 357 +#define ITEM_DOME_FOSSIL 358 +#define ITEM_SILPH_SCOPE 359 +#define ITEM_BICYCLE 360 +#define ITEM_TOWN_MAP 361 +#define ITEM_VS_SEEKER 362 +#define ITEM_FAME_CHECKER 363 +#define ITEM_TM_CASE 364 +#define ITEM_BERRY_POUCH 365 +#define ITEM_TEACHY_TV 366 +#define ITEM_TRI_PASS 367 +#define ITEM_RAINBOW_PASS 368 +#define ITEM_TEA 369 +#define ITEM_MYSTIC_TICKET 370 +#define ITEM_AURORA_TICKET 371 +#define ITEM_POWDER_JAR 372 +#define ITEM_RUBY 373 +#define ITEM_SAPPHIRE 374 + +// Emerald +#define ITEM_MAGMA_EMBLEM 375 +#define ITEM_OLD_SEA_MAP 376 + +#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY +#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY +#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1)) + +#define NUM_TECHNICAL_MACHINES 50 +#define NUM_HIDDEN_MACHINES 8 + +#endif // GUARD_CONSTANTS_ITEMS_H diff --git a/include/constants/map_objects.h b/include/constants/map_objects.h new file mode 100644 index 000000000..d5b983005 --- /dev/null +++ b/include/constants/map_objects.h @@ -0,0 +1,263 @@ +#ifndef GUARD_CONSTANTS_MAP_OBJECTS_H +#define GUARD_CONSTANTS_MAP_OBJECTS_H + +#define MAP_OBJ_GFX_BRENDAN_NORMAL 0 +#define MAP_OBJ_GFX_BRENDAN_MACH_BIKE 1 +#define MAP_OBJ_GFX_BRENDAN_SURFING 2 +#define MAP_OBJ_GFX_BRENDAN_FIELD_MOVE 3 +#define MAP_OBJ_GFX_QUINTY_PLUMP 4 +#define MAP_OBJ_GFX_LITTLE_BOY_1 5 +#define MAP_OBJ_GFX_LITTLE_GIRL_1 6 +#define MAP_OBJ_GFX_BOY_1 7 +#define MAP_OBJ_GFX_GIRL_1 8 +#define MAP_OBJ_GFX_BOY_2 9 +#define MAP_OBJ_GFX_GIRL_2 10 +#define MAP_OBJ_GFX_LITTLE_BOY_2 11 +#define MAP_OBJ_GFX_LITTLE_GIRL_2 12 +#define MAP_OBJ_GFX_BOY_3 13 +#define MAP_OBJ_GFX_GIRL_3 14 +#define MAP_OBJ_GFX_BOY_4 15 +#define MAP_OBJ_GFX_WOMAN_1 16 +#define MAP_OBJ_GFX_FAT_MAN 17 +#define MAP_OBJ_GFX_WOMAN_2 18 +#define MAP_OBJ_GFX_MAN_1 19 +#define MAP_OBJ_GFX_WOMAN_3 20 +#define MAP_OBJ_GFX_OLD_MAN_1 21 +#define MAP_OBJ_GFX_OLD_WOMAN_1 22 +#define MAP_OBJ_GFX_MAN_2 23 +#define MAP_OBJ_GFX_WOMAN_4 24 +#define MAP_OBJ_GFX_MAN_3 25 +#define MAP_OBJ_GFX_WOMAN_5 26 +#define MAP_OBJ_GFX_COOK 27 +#define MAP_OBJ_GFX_WOMAN_6 28 +#define MAP_OBJ_GFX_OLD_MAN_2 29 +#define MAP_OBJ_GFX_OLD_WOMAN_2 30 +#define MAP_OBJ_GFX_CAMPER 31 +#define MAP_OBJ_GFX_PICNICKER 32 +#define MAP_OBJ_GFX_MAN_4 33 +#define MAP_OBJ_GFX_WOMAN_7 34 +#define MAP_OBJ_GFX_YOUNGSTER 35 +#define MAP_OBJ_GFX_BUG_CATCHER 36 +#define MAP_OBJ_GFX_PSYCHIC_M 37 +#define MAP_OBJ_GFX_SCHOOL_KID_M 38 +#define MAP_OBJ_GFX_MANIAC 39 +#define MAP_OBJ_GFX_HEX_MANIAC 40 +#define MAP_OBJ_GFX_RAYQUAZA_1 41 +#define MAP_OBJ_GFX_SWIMMER_M 42 +#define MAP_OBJ_GFX_SWIMMER_F 43 +#define MAP_OBJ_GFX_BLACK_BELT 44 +#define MAP_OBJ_GFX_BEAUTY 45 +#define MAP_OBJ_GFX_SCIENTIST_1 46 +#define MAP_OBJ_GFX_LASS 47 +#define MAP_OBJ_GFX_GENTLEMAN 48 +#define MAP_OBJ_GFX_SAILOR 49 +#define MAP_OBJ_GFX_FISHERMAN 50 +#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_M 51 +#define MAP_OBJ_GFX_RUNNING_TRIATHLETE_F 52 +#define MAP_OBJ_GFX_TUBER_F 53 +#define MAP_OBJ_GFX_TUBER_M 54 +#define MAP_OBJ_GFX_HIKER 55 +#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_M 56 +#define MAP_OBJ_GFX_CYCLING_TRIATHLETE_F 57 +#define MAP_OBJ_GFX_NURSE 58 +#define MAP_OBJ_GFX_ITEM_BALL 59 +#define MAP_OBJ_GFX_BERRY_TREE 60 +#define MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES 61 +#define MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES 62 +#define MAP_OBJ_GFX_BRENDAN_ACRO_BIKE 63 +#define MAP_OBJ_GFX_PROF_BIRCH 64 +#define MAP_OBJ_GFX_MAN_5 65 +#define MAP_OBJ_GFX_MAN_6 66 +#define MAP_OBJ_GFX_REPORTER_M 67 +#define MAP_OBJ_GFX_REPORTER_F 68 +#define MAP_OBJ_GFX_BARD 69 +#define MAP_OBJ_GFX_ANABEL 70 +#define MAP_OBJ_GFX_TUCKER 71 +#define MAP_OBJ_GFX_GRETA 72 +#define MAP_OBJ_GFX_SPENSER 73 +#define MAP_OBJ_GFX_NOLAND 74 +#define MAP_OBJ_GFX_LUCY 75 +#define MAP_OBJ_GFX_UNUSED_NATU_DOLL 76 +#define MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL 77 +#define MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL 78 +#define MAP_OBJ_GFX_UNUSED_WOOPER_DOLL 79 +#define MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL 80 +#define MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL 81 +#define MAP_OBJ_GFX_CUTTABLE_TREE 82 +#define MAP_OBJ_GFX_MART_EMPLOYEE 83 +#define MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN 84 +#define MAP_OBJ_GFX_TEALA 85 +#define MAP_OBJ_GFX_BREAKABLE_ROCK 86 +#define MAP_OBJ_GFX_PUSHABLE_BOULDER 87 +#define MAP_OBJ_GFX_MR_BRINEYS_BOAT 88 +#define MAP_OBJ_GFX_MAY_NORMAL 89 +#define MAP_OBJ_GFX_MAY_MACH_BIKE 90 +#define MAP_OBJ_GFX_MAY_ACRO_BIKE 91 +#define MAP_OBJ_GFX_MAY_SURFING 92 +#define MAP_OBJ_GFX_MAY_FIELD_MOVE 93 +#define MAP_OBJ_GFX_TRUCK 94 +#define MAP_OBJ_GFX_VIGAROTH_CARRYING_BOX 95 +#define MAP_OBJ_GFX_VIGAROTH_FACING_AWAY 96 +#define MAP_OBJ_GFX_BIRCHS_BAG 97 +#define MAP_OBJ_GFX_ZIGZAGOON_1 98 +#define MAP_OBJ_GFX_ARTIST 99 +#define MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL 100 +#define MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE 101 +#define MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE 102 +#define MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING 103 +#define MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE 104 +#define MAP_OBJ_GFX_RIVAL_MAY_NORMAL 105 +#define MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE 106 +#define MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE 107 +#define MAP_OBJ_GFX_RIVAL_MAY_SURFING 108 +#define MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE 109 +#define MAP_OBJ_GFX_CAMERAMAN 110 +#define MAP_OBJ_GFX_BRENDAN_UNDERWATER 111 +#define MAP_OBJ_GFX_MAY_UNDERWATER 112 +#define MAP_OBJ_GFX_MOVING_BOX 113 +#define MAP_OBJ_GFX_CABLE_CAR 114 +#define MAP_OBJ_GFX_SCIENTIST_2 115 +#define MAP_OBJ_GFX_MAN_7 116 +#define MAP_OBJ_GFX_AQUA_MEMBER_M 117 +#define MAP_OBJ_GFX_AQUA_MEMBER_F 118 +#define MAP_OBJ_GFX_MAGMA_MEMBER_M 119 +#define MAP_OBJ_GFX_MAGMA_MEMBER_F 120 +#define MAP_OBJ_GFX_SIDNEY 121 +#define MAP_OBJ_GFX_PHOEBE 122 +#define MAP_OBJ_GFX_GLACIA 123 +#define MAP_OBJ_GFX_DRAKE 124 +#define MAP_OBJ_GFX_ROXANNE 125 +#define MAP_OBJ_GFX_BRAWLY 126 +#define MAP_OBJ_GFX_WATTSON 127 +#define MAP_OBJ_GFX_FLANNERY 128 +#define MAP_OBJ_GFX_NORMAN 129 +#define MAP_OBJ_GFX_WINONA 130 +#define MAP_OBJ_GFX_LIZA 131 +#define MAP_OBJ_GFX_TATE 132 +#define MAP_OBJ_GFX_WALLACE 133 +#define MAP_OBJ_GFX_STEVEN 134 +#define MAP_OBJ_GFX_WALLY 135 +#define MAP_OBJ_GFX_LITTLE_BOY_3 136 +#define MAP_OBJ_GFX_BRENDAN_FISHING 137 +#define MAP_OBJ_GFX_MAY_FISHING 138 +#define MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN 139 +#define MAP_OBJ_GFX_SS_TIDAL 140 +#define MAP_OBJ_GFX_SUBMARINE_SHADOW 141 +#define MAP_OBJ_GFX_PICHU_DOLL 142 +#define MAP_OBJ_GFX_PIKACHU_DOLL 143 +#define MAP_OBJ_GFX_MARILL_DOLL 144 +#define MAP_OBJ_GFX_TOGEPI_DOLL 145 +#define MAP_OBJ_GFX_CYNDAQUIL_DOLL 146 +#define MAP_OBJ_GFX_CHIKORITA_DOLL 147 +#define MAP_OBJ_GFX_TOTODILE_DOLL 148 +#define MAP_OBJ_GFX_JIGGLYPUFF_DOLL 149 +#define MAP_OBJ_GFX_MEOWTH_DOLL 150 +#define MAP_OBJ_GFX_CLEFAIRY_DOLL 151 +#define MAP_OBJ_GFX_DITTO_DOLL 152 +#define MAP_OBJ_GFX_SMOOCHUM_DOLL 153 +#define MAP_OBJ_GFX_TREECKO_DOLL 154 +#define MAP_OBJ_GFX_TORCHIC_DOLL 155 +#define MAP_OBJ_GFX_MUDKIP_DOLL 156 +#define MAP_OBJ_GFX_DUSKULL_DOLL 157 +#define MAP_OBJ_GFX_WYNAUT_DOLL 158 +#define MAP_OBJ_GFX_BALTOY_DOLL 159 +#define MAP_OBJ_GFX_KECLEON_DOLL 160 +#define MAP_OBJ_GFX_AZURILL_DOLL 161 +#define MAP_OBJ_GFX_SKITTY_DOLL 162 +#define MAP_OBJ_GFX_SWABLU_DOLL 163 +#define MAP_OBJ_GFX_GULPIN_DOLL 164 +#define MAP_OBJ_GFX_LOTAD_DOLL 165 +#define MAP_OBJ_GFX_SEEDOT_DOLL 166 +#define MAP_OBJ_GFX_PIKA_CUSHION 167 +#define MAP_OBJ_GFX_ROUND_CUSHION 168 +#define MAP_OBJ_GFX_KISS_CUSHION 169 +#define MAP_OBJ_GFX_ZIGZAG_CUSHION 170 +#define MAP_OBJ_GFX_SPIN_CUSHION 171 +#define MAP_OBJ_GFX_DIAMOND_CUSHION 172 +#define MAP_OBJ_GFX_BALL_CUSHION 173 +#define MAP_OBJ_GFX_GRASS_CUSHION 174 +#define MAP_OBJ_GFX_FIRE_CUSHION 175 +#define MAP_OBJ_GFX_WATER_CUSHION 176 +#define MAP_OBJ_GFX_BIG_SNORLAX_DOLL 177 +#define MAP_OBJ_GFX_BIG_RHYDON_DOLL 178 +#define MAP_OBJ_GFX_BIG_LAPRAS_DOLL 179 +#define MAP_OBJ_GFX_BIG_VENUSAUR_DOLL 180 +#define MAP_OBJ_GFX_BIG_CHARIZARD_DOLL 181 +#define MAP_OBJ_GFX_BIG_BLASTOISE_DOLL 182 +#define MAP_OBJ_GFX_BIG_WAILMER_DOLL 183 +#define MAP_OBJ_GFX_BIG_REGIROCK_DOLL 184 +#define MAP_OBJ_GFX_BIG_REGICE_DOLL 185 +#define MAP_OBJ_GFX_BIG_REGISTEEL_DOLL 186 +#define MAP_OBJ_GFX_LATIAS 187 +#define MAP_OBJ_GFX_LATIOS 188 +#define MAP_OBJ_GFX_BOY_5 189 +#define MAP_OBJ_GFX_CONTEST_JUDGE 190 +#define MAP_OBJ_GFX_BRENDAN_WATERING 191 +#define MAP_OBJ_GFX_MAY_WATERING 192 +#define MAP_OBJ_GFX_BRENDAN_DECORATING 193 +#define MAP_OBJ_GFX_MAY_DECORATING 194 +#define MAP_OBJ_GFX_ARCHIE 195 +#define MAP_OBJ_GFX_MAXIE 196 +#define MAP_OBJ_GFX_KYOGRE_1 197 +#define MAP_OBJ_GFX_GROUDON_1 198 +#define MAP_OBJ_GFX_FOSSIL 199 +#define MAP_OBJ_GFX_REGIROCK 200 +#define MAP_OBJ_GFX_REGICE 201 +#define MAP_OBJ_GFX_REGISTEEL 202 +#define MAP_OBJ_GFX_SKITTY 203 +#define MAP_OBJ_GFX_KECLEON_1 204 +#define MAP_OBJ_GFX_KYOGRE_2 205 +#define MAP_OBJ_GFX_GROUDON_2 206 +#define MAP_OBJ_GFX_RAYQUAZA_2 207 +#define MAP_OBJ_GFX_ZIGZAGOON_2 208 +#define MAP_OBJ_GFX_PIKACHU 209 +#define MAP_OBJ_GFX_AZUMARILL 210 +#define MAP_OBJ_GFX_WINGULL 211 +#define MAP_OBJ_GFX_KECLEON_2 212 +#define MAP_OBJ_GFX_TUBER_M_SWIMMING 213 +#define MAP_OBJ_GFX_AZURILL 214 +#define MAP_OBJ_GFX_MOM 215 +#define MAP_OBJ_GFX_LINK_BRENDAN 216 +#define MAP_OBJ_GFX_LINK_MAY 217 +#define MAP_OBJ_GFX_JUAN 218 +#define MAP_OBJ_GFX_SCOTT 219 +#define MAP_OBJ_GFX_POOCHYENA 220 +#define MAP_OBJ_GFX_KYOGRE_3 221 +#define MAP_OBJ_GFX_GROUDON_3 222 +#define MAP_OBJ_GFX_MYSTERY_GIFT_MAN 223 +#define MAP_OBJ_GFX_TRICK_HOUSE_STATUE 224 +#define MAP_OBJ_GFX_KIRLIA 225 +#define MAP_OBJ_GFX_DUSCLOPS 226 +#define MAP_OBJ_GFX_UNION_ROOM_NURSE 227 +#define MAP_OBJ_GFX_SUDOWOODO 228 +#define MAP_OBJ_GFX_MEW 229 +#define MAP_OBJ_GFX_RED 230 +#define MAP_OBJ_GFX_LEAF 231 +#define MAP_OBJ_GFX_DEOXYS 232 +#define MAP_OBJ_GFX_DEOXYS_TRIANGLE 233 +#define MAP_OBJ_GFX_BRANDON 234 +#define MAP_OBJ_GFX_LINK_RS_BRENDAN 235 +#define MAP_OBJ_GFX_LINK_RS_MAY 236 +#define MAP_OBJ_GFX_LUGIA 237 +#define MAP_OBJ_GFX_HOOH 238 +#define MAP_OBJ_GFX_BARD_2 239 +#define MAP_OBJ_GFX_HIPSTER 240 +#define MAP_OBJ_GFX_TRADER 241 +#define MAP_OBJ_GFX_STORYTELLER 242 +#define MAP_OBJ_GFX_GIDDY 243 +#define MAP_OBJ_GFX_PLACEHOLDER_1 244 +#define MAP_OBJ_GFX_PLACEHOLDER_2 245 + +#define SHADOW_SIZE_S 0 +#define SHADOW_SIZE_M 1 +#define SHADOW_SIZE_L 2 +#define SHADOW_SIZE_XL 3 + +#define F_INANIMATE (1 << 6) +#define F_DISABLE_REFLECTION_PALETTE_LOAD (1 << 7) + +#define TRACKS_NONE 0 +#define TRACKS_FOOT 1 +#define TRACKS_BIKE_TIRE 2 + +#endif // GUARD_CONSTANTS_MAP_OBJECTS_H diff --git a/include/constants/maps.h b/include/constants/maps.h new file mode 100644 index 000000000..737edd7de --- /dev/null +++ b/include/constants/maps.h @@ -0,0 +1,595 @@ +#ifndef GUARD_CONSTANTS_MAPS_H +#define GUARD_CONSTANTS_MAPS_H + +// Map Group 0 +#define MAP_PETALBURG_CITY (0 | (0 << 8)) +#define MAP_SLATEPORT_CITY (1 | (0 << 8)) +#define MAP_MAUVILLE_CITY (2 | (0 << 8)) +#define MAP_RUSTBORO_CITY (3 | (0 << 8)) +#define MAP_FORTREE_CITY (4 | (0 << 8)) +#define MAP_LILYCOVE_CITY (5 | (0 << 8)) +#define MAP_MOSSDEEP_CITY (6 | (0 << 8)) +#define MAP_SOOTOPOLIS_CITY (7 | (0 << 8)) +#define MAP_EVER_GRANDE_CITY (8 | (0 << 8)) +#define MAP_LITTLEROOT_TOWN (9 | (0 << 8)) +#define MAP_OLDALE_TOWN (10 | (0 << 8)) +#define MAP_DEWFORD_TOWN (11 | (0 << 8)) +#define MAP_LAVARIDGE_TOWN (12 | (0 << 8)) +#define MAP_FALLARBOR_TOWN (13 | (0 << 8)) +#define MAP_VERDANTURF_TOWN (14 | (0 << 8)) +#define MAP_PACIFIDLOG_TOWN (15 | (0 << 8)) +#define MAP_ROUTE101 (16 | (0 << 8)) +#define MAP_ROUTE102 (17 | (0 << 8)) +#define MAP_ROUTE103 (18 | (0 << 8)) +#define MAP_ROUTE104 (19 | (0 << 8)) +#define MAP_ROUTE105 (20 | (0 << 8)) +#define MAP_ROUTE106 (21 | (0 << 8)) +#define MAP_ROUTE107 (22 | (0 << 8)) +#define MAP_ROUTE108 (23 | (0 << 8)) +#define MAP_ROUTE109 (24 | (0 << 8)) +#define MAP_ROUTE110 (25 | (0 << 8)) +#define MAP_ROUTE111 (26 | (0 << 8)) +#define MAP_ROUTE112 (27 | (0 << 8)) +#define MAP_ROUTE113 (28 | (0 << 8)) +#define MAP_ROUTE114 (29 | (0 << 8)) +#define MAP_ROUTE115 (30 | (0 << 8)) +#define MAP_ROUTE116 (31 | (0 << 8)) +#define MAP_ROUTE117 (32 | (0 << 8)) +#define MAP_ROUTE118 (33 | (0 << 8)) +#define MAP_ROUTE119 (34 | (0 << 8)) +#define MAP_ROUTE120 (35 | (0 << 8)) +#define MAP_ROUTE121 (36 | (0 << 8)) +#define MAP_ROUTE122 (37 | (0 << 8)) +#define MAP_ROUTE123 (38 | (0 << 8)) +#define MAP_ROUTE124 (39 | (0 << 8)) +#define MAP_ROUTE125 (40 | (0 << 8)) +#define MAP_ROUTE126 (41 | (0 << 8)) +#define MAP_ROUTE127 (42 | (0 << 8)) +#define MAP_ROUTE128 (43 | (0 << 8)) +#define MAP_ROUTE129 (44 | (0 << 8)) +#define MAP_ROUTE130 (45 | (0 << 8)) +#define MAP_ROUTE131 (46 | (0 << 8)) +#define MAP_ROUTE132 (47 | (0 << 8)) +#define MAP_ROUTE133 (48 | (0 << 8)) +#define MAP_ROUTE134 (49 | (0 << 8)) +#define MAP_UNDERWATER1 (50 | (0 << 8)) +#define MAP_UNDERWATER2 (51 | (0 << 8)) +#define MAP_UNDERWATER3 (52 | (0 << 8)) +#define MAP_UNDERWATER4 (53 | (0 << 8)) + +// Map Group 1 +#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F (0 | (1 << 8)) +#define MAP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F (1 | (1 << 8)) +#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_1F (2 | (1 << 8)) +#define MAP_LITTLEROOT_TOWN_MAYS_HOUSE_2F (3 | (1 << 8)) +#define MAP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB (4 | (1 << 8)) + +// Map Group 2 +#define MAP_OLDALE_TOWN_HOUSE1 (0 | (2 << 8)) +#define MAP_OLDALE_TOWN_HOUSE2 (1 | (2 << 8)) +#define MAP_OLDALE_TOWN_POKEMON_CENTER_1F (2 | (2 << 8)) +#define MAP_OLDALE_TOWN_POKEMON_CENTER_2F (3 | (2 << 8)) +#define MAP_OLDALE_TOWN_MART (4 | (2 << 8)) + +// Map Group 3 +#define MAP_DEWFORD_TOWN_HOUSE1 (0 | (3 << 8)) +#define MAP_DEWFORD_TOWN_POKEMON_CENTER_1F (1 | (3 << 8)) +#define MAP_DEWFORD_TOWN_POKEMON_CENTER_2F (2 | (3 << 8)) +#define MAP_DEWFORD_TOWN_GYM (3 | (3 << 8)) +#define MAP_DEWFORD_TOWN_HALL (4 | (3 << 8)) +#define MAP_DEWFORD_TOWN_HOUSE2 (5 | (3 << 8)) + +// Map Group 4 +#define MAP_LAVARIDGE_TOWN_HERB_SHOP (0 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_GYM_1F (1 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_GYM_B1F (2 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_HOUSE (3 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_MART (4 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F (5 | (4 << 8)) +#define MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F (6 | (4 << 8)) + +// Map Group 5 +#define MAP_FALLARBOR_TOWN_MART (0 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_BATTLE_TENT_LOBBY (1 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_BATTLE_TENT_CORRIDOR (2 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_BATTLE_TENT_BATTLE_ROOM (3 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F (4 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F (5 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_HOUSE1 (6 | (5 << 8)) +#define MAP_FALLARBOR_TOWN_HOUSE2 (7 | (5 << 8)) + +// Map Group 6 +#define MAP_VERDANTURF_TOWN_BATTLE_TENT_LOBBY (0 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_BATTLE_TENT_CORRIDOR (1 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_BATTLE_TENT_BATTLE_ROOM (2 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_MART (3 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F (4 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F (5 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_WANDAS_HOUSE (6 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE (7 | (6 << 8)) +#define MAP_VERDANTURF_TOWN_HOUSE (8 | (6 << 8)) + +// Map Group 7 +#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F (0 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F (1 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_HOUSE1 (2 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_HOUSE2 (3 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_HOUSE3 (4 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_HOUSE4 (5 | (7 << 8)) +#define MAP_PACIFIDLOG_TOWN_HOUSE5 (6 | (7 << 8)) + +// Map Group 8 +#define MAP_PETALBURG_CITY_WALLYS_HOUSE (0 | (8 << 8)) +#define MAP_PETALBURG_CITY_GYM (1 | (8 << 8)) +#define MAP_PETALBURG_CITY_HOUSE1 (2 | (8 << 8)) +#define MAP_PETALBURG_CITY_HOUSE2 (3 | (8 << 8)) +#define MAP_PETALBURG_CITY_POKEMON_CENTER_1F (4 | (8 << 8)) +#define MAP_PETALBURG_CITY_POKEMON_CENTER_2F (5 | (8 << 8)) +#define MAP_PETALBURG_CITY_MART (6 | (8 << 8)) + +// Map Group 9 +#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_1F (0 | (9 << 8)) +#define MAP_SLATEPORT_CITY_STERNS_SHIPYARD_2F (1 | (9 << 8)) +#define MAP_SLATEPORT_CITY_BATTLE_TENT_LOBBY (2 | (9 << 8)) +#define MAP_SLATEPORT_CITY_BATTLE_TENT_CORRIDOR (3 | (9 << 8)) +#define MAP_SLATEPORT_CITY_BATTLE_TENT_BATTLE_ROOM (4 | (9 << 8)) +#define MAP_SLATEPORT_CITY_HOUSE1 (5 | (9 << 8)) +#define MAP_SLATEPORT_CITY_POKEMON_FAN_CLUB (6 | (9 << 8)) +#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F (7 | (9 << 8)) +#define MAP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F (8 | (9 << 8)) +#define MAP_SLATEPORT_CITY_HARBOR (9 | (9 << 8)) +#define MAP_SLATEPORT_CITY_HOUSE2 (10 | (9 << 8)) +#define MAP_SLATEPORT_CITY_POKEMON_CENTER_1F (11 | (9 << 8)) +#define MAP_SLATEPORT_CITY_POKEMON_CENTER_2F (12 | (9 << 8)) +#define MAP_SLATEPORT_CITY_MART (13 | (9 << 8)) + +// Map Group 10 +#define MAP_MAUVILLE_CITY_GYM (0 | (10 << 8)) +#define MAP_MAUVILLE_CITY_BIKE_SHOP (1 | (10 << 8)) +#define MAP_MAUVILLE_CITY_HOUSE1 (2 | (10 << 8)) +#define MAP_MAUVILLE_CITY_GAME_CORNER (3 | (10 << 8)) +#define MAP_MAUVILLE_CITY_HOUSE2 (4 | (10 << 8)) +#define MAP_MAUVILLE_CITY_POKEMON_CENTER_1F (5 | (10 << 8)) +#define MAP_MAUVILLE_CITY_POKEMON_CENTER_2F (6 | (10 << 8)) +#define MAP_MAUVILLE_CITY_MART (7 | (10 << 8)) + +// Map Group 11 +#define MAP_RUSTBORO_CITY_DEVON_CORP_1F (0 | (11 << 8)) +#define MAP_RUSTBORO_CITY_DEVON_CORP_2F (1 | (11 << 8)) +#define MAP_RUSTBORO_CITY_DEVON_CORP_3F (2 | (11 << 8)) +#define MAP_RUSTBORO_CITY_GYM (3 | (11 << 8)) +#define MAP_RUSTBORO_CITY_POKEMON_SCHOOL (4 | (11 << 8)) +#define MAP_RUSTBORO_CITY_POKEMON_CENTER_1F (5 | (11 << 8)) +#define MAP_RUSTBORO_CITY_POKEMON_CENTER_2F (6 | (11 << 8)) +#define MAP_RUSTBORO_CITY_MART (7 | (11 << 8)) +#define MAP_RUSTBORO_CITY_FLAT1_1F (8 | (11 << 8)) +#define MAP_RUSTBORO_CITY_FLAT1_2F (9 | (11 << 8)) +#define MAP_RUSTBORO_CITY_HOUSE1 (10 | (11 << 8)) +#define MAP_RUSTBORO_CITY_CUTTERS_HOUSE (11 | (11 << 8)) +#define MAP_RUSTBORO_CITY_HOUSE2 (12 | (11 << 8)) +#define MAP_RUSTBORO_CITY_FLAT2_1F (13 | (11 << 8)) +#define MAP_RUSTBORO_CITY_FLAT2_2F (14 | (11 << 8)) +#define MAP_RUSTBORO_CITY_FLAT2_3F (15 | (11 << 8)) +#define MAP_RUSTBORO_CITY_HOUSE3 (16 | (11 << 8)) + +// Map Group 12 +#define MAP_FORTREE_CITY_HOUSE1 (0 | (12 << 8)) +#define MAP_FORTREE_CITY_GYM (1 | (12 << 8)) +#define MAP_FORTREE_CITY_POKEMON_CENTER_1F (2 | (12 << 8)) +#define MAP_FORTREE_CITY_POKEMON_CENTER_2F (3 | (12 << 8)) +#define MAP_FORTREE_CITY_MART (4 | (12 << 8)) +#define MAP_FORTREE_CITY_HOUSE2 (5 | (12 << 8)) +#define MAP_FORTREE_CITY_HOUSE3 (6 | (12 << 8)) +#define MAP_FORTREE_CITY_HOUSE4 (7 | (12 << 8)) +#define MAP_FORTREE_CITY_HOUSE5 (8 | (12 << 8)) +#define MAP_FORTREE_CITY_DECORATION_SHOP (9 | (12 << 8)) + +// Map Group 13 +#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F (0 | (13 << 8)) +#define MAP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F (1 | (13 << 8)) +#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F (2 | (13 << 8)) +#define MAP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F (3 | (13 << 8)) +#define MAP_LILYCOVE_CITY_CONTEST_LOBBY (4 | (13 << 8)) +#define MAP_LILYCOVE_CITY_CONTEST_HALL (5 | (13 << 8)) +#define MAP_LILYCOVE_CITY_POKEMON_CENTER_1F (6 | (13 << 8)) +#define MAP_LILYCOVE_CITY_POKEMON_CENTER_2F (7 | (13 << 8)) +#define MAP_LILYCOVE_CITY_UNUSED_MART (8 | (13 << 8)) +#define MAP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB (9 | (13 << 8)) +#define MAP_LILYCOVE_CITY_HARBOR (10 | (13 << 8)) +#define MAP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE (11 | (13 << 8)) +#define MAP_LILYCOVE_CITY_HOUSE1 (12 | (13 << 8)) +#define MAP_LILYCOVE_CITY_HOUSE2 (13 | (13 << 8)) +#define MAP_LILYCOVE_CITY_HOUSE3 (14 | (13 << 8)) +#define MAP_LILYCOVE_CITY_HOUSE4 (15 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_1F (16 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_2F (17 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_3F (18 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_4F (19 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_5F (20 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP (21 | (13 << 8)) +#define MAP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR (22 | (13 << 8)) + +// Map Group 14 +#define MAP_MOSSDEEP_CITY_GYM (0 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_HOUSE1 (1 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_HOUSE2 (2 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F (3 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F (4 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_MART (5 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_HOUSE3 (6 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_STEVENS_HOUSE (7 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_HOUSE4 (8 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_SPACE_CENTER_1F (9 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_SPACE_CENTER_2F (10 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_GAME_CORNER_1F (11 | (14 << 8)) +#define MAP_MOSSDEEP_CITY_GAME_CORNER_B1F (12 | (14 << 8)) + +// Map Group 15 +#define MAP_SOOTOPOLIS_CITY_GYM_1F (0 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_GYM_B1F (1 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F (2 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F (3 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_MART (4 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE1 (5 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE2 (6 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE3 (7 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE4 (8 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE5 (9 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE6 (10 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE7 (11 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE8 (12 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE9_1F (13 | (15 << 8)) +#define MAP_SOOTOPOLIS_CITY_HOUSE9_B1F (14 | (15 << 8)) + +// Map Group 16 +#define MAP_EVER_GRANDE_CITY_SIDNEYS_ROOM (0 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_PHOEBES_ROOM (1 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_GLACIAS_ROOM (2 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_DRAKES_ROOM (3 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CHAMPIONS_ROOM (4 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CORRIDOR1 (5 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CORRIDOR2 (6 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CORRIDOR3 (7 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CORRIDOR4 (8 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_CORRIDOR5 (9 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F (10 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_HALL_OF_FAME (11 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F (12 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F (13 | (16 << 8)) +#define MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F (14 | (16 << 8)) + +// Map Group 17 +#define MAP_ROUTE104_MR_BRINEYS_HOUSE (0 | (17 << 8)) +#define MAP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP (1 | (17 << 8)) + +// Map Group 18 +#define MAP_ROUTE111_WINSTRATE_FAMILYS_HOUSE (0 | (18 << 8)) +#define MAP_ROUTE111_OLD_LADYS_REST_STOP (1 | (18 << 8)) + +// Map Group 19 +#define MAP_ROUTE112_CABLE_CAR_STATION (0 | (19 << 8)) +#define MAP_MT_CHIMNEY_CABLE_CAR_STATION (1 | (19 << 8)) + +// Map Group 20 +#define MAP_ROUTE114_FOSSIL_MANIACS_HOUSE (0 | (20 << 8)) +#define MAP_ROUTE114_FOSSIL_MANIACS_TUNNEL (1 | (20 << 8)) +#define MAP_ROUTE114_LANETTES_HOUSE (2 | (20 << 8)) + +// Map Group 21 +#define MAP_ROUTE116_TUNNELERS_REST_HOUSE (0 | (21 << 8)) + +// Map Group 22 +#define MAP_ROUTE117_POKEMON_DAY_CARE (0 | (22 << 8)) + +// Map Group 23 +#define MAP_ROUTE121_SAFARI_ZONE_ENTRANCE (0 | (23 << 8)) + +// Map Group 24 +#define MAP_METEOR_FALLS_1F_1R (0 | (24 << 8)) +#define MAP_METEOR_FALLS_1F_2R (1 | (24 << 8)) +#define MAP_METEOR_FALLS_B1F_1R (2 | (24 << 8)) +#define MAP_METEOR_FALLS_B1F_2R (3 | (24 << 8)) +#define MAP_RUSTURF_TUNNEL (4 | (24 << 8)) +#define MAP_UNDERWATER_SOOTOPOLIS_CITY (5 | (24 << 8)) +#define MAP_DESERT_RUINS (6 | (24 << 8)) +#define MAP_GRANITE_CAVE_1F (7 | (24 << 8)) +#define MAP_GRANITE_CAVE_B1F (8 | (24 << 8)) +#define MAP_GRANITE_CAVE_B2F (9 | (24 << 8)) +#define MAP_GRANITE_CAVE_STEVENS_ROOM (10 | (24 << 8)) +#define MAP_PETALBURG_WOODS (11 | (24 << 8)) +#define MAP_MT_CHIMNEY (12 | (24 << 8)) +#define MAP_JAGGED_PASS (13 | (24 << 8)) +#define MAP_FIERY_PATH (14 | (24 << 8)) +#define MAP_MT_PYRE_1F (15 | (24 << 8)) +#define MAP_MT_PYRE_2F (16 | (24 << 8)) +#define MAP_MT_PYRE_3F (17 | (24 << 8)) +#define MAP_MT_PYRE_4F (18 | (24 << 8)) +#define MAP_MT_PYRE_5F (19 | (24 << 8)) +#define MAP_MT_PYRE_6F (20 | (24 << 8)) +#define MAP_MT_PYRE_EXTERIOR (21 | (24 << 8)) +#define MAP_MT_PYRE_SUMMIT (22 | (24 << 8)) +#define MAP_AQUA_HIDEOUT_1F (23 | (24 << 8)) +#define MAP_AQUA_HIDEOUT_B1F (24 | (24 << 8)) +#define MAP_AQUA_HIDEOUT_B2F (25 | (24 << 8)) +#define MAP_UNDERWATER_SEAFLOOR_CAVERN (26 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ENTRANCE (27 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM1 (28 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM2 (29 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM3 (30 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM4 (31 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM5 (32 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM6 (33 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM7 (34 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM8 (35 | (24 << 8)) +#define MAP_SEAFLOOR_CAVERN_ROOM9 (36 | (24 << 8)) +#define MAP_CAVE_OF_ORIGIN_ENTRANCE (37 | (24 << 8)) +#define MAP_CAVE_OF_ORIGIN_1F (38 | (24 << 8)) +#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B1F (39 | (24 << 8)) // +#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B2F (40 | (24 << 8)) // Ruby/Sapphire leftovers +#define MAP_CAVE_OF_ORIGIN_UNUSED_RS_B3F (41 | (24 << 8)) // +#define MAP_CAVE_OF_ORIGIN_B1F (42 | (24 << 8)) +#define MAP_VICTORY_ROAD_1F (43 | (24 << 8)) +#define MAP_VICTORY_ROAD_B1F (44 | (24 << 8)) +#define MAP_VICTORY_ROAD_B2F (45 | (24 << 8)) +#define MAP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM (46 | (24 << 8)) +#define MAP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM (47 | (24 << 8)) +#define MAP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM (48 | (24 << 8)) +#define MAP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM (49 | (24 << 8)) +#define MAP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM (50 | (24 << 8)) +#define MAP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM (51 | (24 << 8)) +#define MAP_NEW_MAUVILLE_ENTRANCE (52 | (24 << 8)) +#define MAP_NEW_MAUVILLE_INSIDE (53 | (24 << 8)) +#define MAP_ABANDONED_SHIP_DECK (54 | (24 << 8)) +#define MAP_ABANDONED_SHIP_CORRIDORS_1F (55 | (24 << 8)) +#define MAP_ABANDONED_SHIP_ROOMS_1F (56 | (24 << 8)) +#define MAP_ABANDONED_SHIP_CORRIDORS_B1F (57 | (24 << 8)) +#define MAP_ABANDONED_SHIP_ROOMS_B1F (58 | (24 << 8)) +#define MAP_ABANDONED_SHIP_ROOMS2_B1F (59 | (24 << 8)) +#define MAP_ABANDONED_SHIP_UNDERWATER1 (60 | (24 << 8)) +#define MAP_ABANDONED_SHIP_ROOM_B1F (61 | (24 << 8)) +#define MAP_ABANDONED_SHIP_ROOMS2_1F (62 | (24 << 8)) +#define MAP_ABANDONED_SHIP_CAPTAINS_OFFICE (63 | (24 << 8)) +#define MAP_ABANDONED_SHIP_UNDERWATER2 (64 | (24 << 8)) +#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS (65 | (24 << 8)) +#define MAP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS (66 | (24 << 8)) +#define MAP_ISLAND_CAVE (67 | (24 << 8)) +#define MAP_ANCIENT_TOMB (68 | (24 << 8)) +#define MAP_UNDERWATER_ROUTE134 (69 | (24 << 8)) +#define MAP_UNDERWATER_SEALED_CHAMBER (70 | (24 << 8)) +#define MAP_SEALED_CHAMBER_OUTER_ROOM (71 | (24 << 8)) +#define MAP_SEALED_CHAMBER_INNER_ROOM (72 | (24 << 8)) +#define MAP_SCORCHED_SLAB (73 | (24 << 8)) +#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_1F (74 | (24 << 8)) // +#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_B1F (75 | (24 << 8)) // Ruby/Sapphire leftovers +#define MAP_UNUSED_RUBY_MAGMA_HIDEOUT_B2F (76 | (24 << 8)) // +#define MAP_SKY_PILLAR_ENTRANCE (77 | (24 << 8)) +#define MAP_SKY_PILLAR_OUTSIDE (78 | (24 << 8)) +#define MAP_SKY_PILLAR_1F (79 | (24 << 8)) +#define MAP_SKY_PILLAR_2F (80 | (24 << 8)) +#define MAP_SKY_PILLAR_3F (81 | (24 << 8)) +#define MAP_SKY_PILLAR_4F (82 | (24 << 8)) +#define MAP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM (83 | (24 << 8)) +#define MAP_SKY_PILLAR_5F (84 | (24 << 8)) +#define MAP_SKY_PILLAR_TOP (85 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_1F (86 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_2F_1R (87 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_2F_2R (88 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_3F_1R (89 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_3F_2R (90 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_4F (91 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_3F_3R (92 | (24 << 8)) +#define MAP_MAGMA_HIDEOUT_2F_3R (93 | (24 << 8)) +#define MAP_MIRAGE_TOWER_1F (94 | (24 << 8)) +#define MAP_MIRAGE_TOWER_2F (95 | (24 << 8)) +#define MAP_MIRAGE_TOWER_3F (96 | (24 << 8)) +#define MAP_MIRAGE_TOWER_4F (97 | (24 << 8)) +#define MAP_DESERT_UNDERPASS (98 | (24 << 8)) +#define MAP_ARTISAN_CAVE_B1F (99 | (24 << 8)) +#define MAP_ARTISAN_CAVE_1F (100 | (24 << 8)) +#define MAP_UNDERWATER_MARINE_CAVE (101 | (24 << 8)) +#define MAP_MARINE_CAVE_ENTRANCE (102 | (24 << 8)) +#define MAP_MARINE_CAVE_END (103 | (24 << 8)) +#define MAP_TERRA_CAVE_ENTRANCE (104 | (24 << 8)) +#define MAP_TERRA_CAVE_END (105 | (24 << 8)) +#define MAP_ALTERING_CAVE (106 | (24 << 8)) +#define MAP_METEOR_FALLS_STEVENS_CAVE (107 | (24 << 8)) + +// Map Group 25 +#define MAP_SECRET_BASE_RED_CAVE1 (0 | (25 << 8)) +#define MAP_SECRET_BASE_BROWN_CAVE1 (1 | (25 << 8)) +#define MAP_SECRET_BASE_BLUE_CAVE1 (2 | (25 << 8)) +#define MAP_SECRET_BASE_YELLOW_CAVE1 (3 | (25 << 8)) +#define MAP_SECRET_BASE_TREE1 (4 | (25 << 8)) +#define MAP_SECRET_BASE_SHRUB1 (5 | (25 << 8)) +#define MAP_SECRET_BASE_RED_CAVE2 (6 | (25 << 8)) +#define MAP_SECRET_BASE_BROWN_CAVE2 (7 | (25 << 8)) +#define MAP_SECRET_BASE_BLUE_CAVE2 (8 | (25 << 8)) +#define MAP_SECRET_BASE_YELLOW_CAVE2 (9 | (25 << 8)) +#define MAP_SECRET_BASE_TREE2 (10 | (25 << 8)) +#define MAP_SECRET_BASE_SHRUB2 (11 | (25 << 8)) +#define MAP_SECRET_BASE_RED_CAVE3 (12 | (25 << 8)) +#define MAP_SECRET_BASE_BROWN_CAVE3 (13 | (25 << 8)) +#define MAP_SECRET_BASE_BLUE_CAVE3 (14 | (25 << 8)) +#define MAP_SECRET_BASE_YELLOW_CAVE3 (15 | (25 << 8)) +#define MAP_SECRET_BASE_TREE3 (16 | (25 << 8)) +#define MAP_SECRET_BASE_SHRUB3 (17 | (25 << 8)) +#define MAP_SECRET_BASE_RED_CAVE4 (18 | (25 << 8)) +#define MAP_SECRET_BASE_BROWN_CAVE4 (19 | (25 << 8)) +#define MAP_SECRET_BASE_BLUE_CAVE4 (20 | (25 << 8)) +#define MAP_SECRET_BASE_YELLOW_CAVE4 (21 | (25 << 8)) +#define MAP_SECRET_BASE_TREE4 (22 | (25 << 8)) +#define MAP_SECRET_BASE_SHRUB4 (23 | (25 << 8)) +#define MAP_SINGLE_BATTLE_COLOSSEUM (24 | (25 << 8)) +#define MAP_TRADE_CENTER (25 | (25 << 8)) +#define MAP_RECORD_CORNER (26 | (25 << 8)) +#define MAP_DOUBLE_BATTLE_COLOSSEUM (27 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM1 (28 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_29 (29 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_30 (30 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_31 (31 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_32 (32 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_33 (33 | (25 << 8)) +#define MAP_UNKNOWN_MAP_25_34 (34 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM2 (35 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM3 (36 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM4 (37 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM5 (38 | (25 << 8)) +#define MAP_LINK_CONTEST_ROOM6 (39 | (25 << 8)) +#define MAP_INSIDE_OF_TRUCK (40 | (25 << 8)) +#define MAP_SS_TIDAL_CORRIDOR (41 | (25 << 8)) +#define MAP_SS_TIDAL_LOWER_DECK (42 | (25 << 8)) +#define MAP_SS_TIDAL_ROOMS (43 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_01 (44 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_02 (45 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_03 (46 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_04 (47 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_05 (48 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_06 (49 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_07 (50 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_08 (51 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_09 (52 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_10 (53 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_11 (54 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_12 (55 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_13 (56 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_14 (57 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_15 (58 | (25 << 8)) +#define MAP_BATTLE_PYRAMID_SQUARE_16 (59 | (25 << 8)) +#define MAP_UNION_ROOM (60 | (25 << 8)) + +// Map Group 26 +#define MAP_SAFARI_ZONE_NORTHWEST (0 | (26 << 8)) +#define MAP_SAFARI_ZONE_NORTHEAST (1 | (26 << 8)) +#define MAP_SAFARI_ZONE_SOUTHWEST (2 | (26 << 8)) +#define MAP_SAFARI_ZONE_SOUTHEAST (3 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_OUTSIDE_WEST (4 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY (5 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_ELEVATOR (6 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR (7 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM (8 | (26 << 8)) +#define MAP_SOUTHERN_ISLAND_EXTERIOR (9 | (26 << 8)) +#define MAP_SOUTHERN_ISLAND_INTERIOR (10 | (26 << 8)) +#define MAP_SAFARI_ZONE_REST_HOUSE (11 | (26 << 8)) +#define MAP_SAFARI_ZONE_EM_1 (12 | (26 << 8)) +#define MAP_SAFARI_ZONE_EM_2 (13 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_OUTSIDE_EAST (14 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_MULTI_BATTLE_ROOM (15 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_CORRIDOR_2 (16 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_TOWER_BATTLE_ROOM_2 (17 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_DOME_LOBBY (18 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_DOME_CORRIDOR (19 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_DOME_PRE_BATTLE_ROOM (20 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_DOME_BATTLE_ROOM (21 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_LOBBY (22 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_CORRIDOR (23 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PALACE_BATTLE_ROOM (24 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_LOBBY (25 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_EMPTY_SQUARE (26 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PYRAMID_TOP (27 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_LOBBY (28 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_CORRIDOR (29 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_ARENA_BATTLE_ROOM (30 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_LOBBY (31 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_PRE_BATTLE_ROOM (32 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_FACTORY_BATTLE_ROOM (33 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_LOBBY (34 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_CORRIDOR (35 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_THREE_PATH_ROOM (36 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_1 (37 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_2 (38 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_PIKE_RANDOM_ROOM_3 (39 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_RANKING_HALL (40 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_1 (41 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_BATTLE_POINT_EXCHANGE_SERVICE_CORNER (42 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_2 (43 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_3 (44 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_4 (45 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_SCOTTS_HOUSE (46 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_5 (47 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_6 (48 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_7 (49 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_RECEPTION_GATE (50 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_8 (51 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_LOUNGE_9 (52 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F (53 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F (54 | (26 << 8)) +#define MAP_BATTLE_FRONTIER_MART (55 | (26 << 8)) +#define MAP_FARAWAY_ISLAND_ENTRANCE (56 | (26 << 8)) +#define MAP_FARAWAY_ISLAND_INTERIOR (57 | (26 << 8)) +#define MAP_BIRTH_ISLAND_EXTERIOR (58 | (26 << 8)) +#define MAP_BIRTH_ISLAND_HARBOR (59 | (26 << 8)) +#define MAP_TRAINER_HILL_ENTRANCE (60 | (26 << 8)) +#define MAP_TRAINER_HILL_1F (61 | (26 << 8)) +#define MAP_TRAINER_HILL_2F (62 | (26 << 8)) +#define MAP_TRAINER_HILL_3F (63 | (26 << 8)) +#define MAP_TRAINER_HILL_4F (64 | (26 << 8)) +#define MAP_TRAINER_HILL_ROOF (65 | (26 << 8)) +#define MAP_NAVEL_ROCK_EXTERIOR (66 | (26 << 8)) +#define MAP_NAVEL_ROCK_HARBOR (67 | (26 << 8)) +#define MAP_NAVEL_ROCK_ENTRANCE (68 | (26 << 8)) +#define MAP_NAVEL_ROCK_B1F (69 | (26 << 8)) +#define MAP_NAVEL_ROCK_FORK (70 | (26 << 8)) +#define MAP_NAVEL_ROCK_UP_1 (71 | (26 << 8)) +#define MAP_NAVEL_ROCK_UP_2 (72 | (26 << 8)) +#define MAP_NAVEL_ROCK_UP_3 (73 | (26 << 8)) +#define MAP_NAVEL_ROCK_UP_4 (74 | (26 << 8)) +#define MAP_NAVEL_ROCK_TOP (75 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_01 (76 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_02 (77 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_03 (78 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_04 (79 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_05 (80 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_06 (81 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_07 (82 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_08 (83 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_09 (84 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_10 (85 | (26 << 8)) +#define MAP_NAVEL_ROCK_DOWN_11 (86 | (26 << 8)) +#define MAP_NAVEL_ROCK_BOTTOM (87 | (26 << 8)) +#define MAP_TRAINER_HILL_ELEVATOR (88 | (26 << 8)) + +// Map Group 27 +#define MAP_ROUTE104_PROTOTYPE (0 | (27 << 8)) +#define MAP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP (1 | (27 << 8)) + +// Map Group 28 +#define MAP_ROUTE109_SEASHORE_HOUSE (0 | (28 << 8)) + +// Map Group 29 +#define MAP_ROUTE110_TRICK_HOUSE_ENTRANCE (0 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_END (1 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_CORRIDOR (2 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE1 (3 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE2 (4 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE3 (5 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE4 (6 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE5 (7 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE6 (8 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE7 (9 | (29 << 8)) +#define MAP_ROUTE110_TRICK_HOUSE_PUZZLE8 (10 | (29 << 8)) +#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE (11 | (29 << 8)) +#define MAP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE (12 | (29 << 8)) + +// Map Group 30 +#define MAP_ROUTE113_GLASS_WORKSHOP (0 | (30 << 8)) + +// Map Group 31 +#define MAP_ROUTE123_BERRY_MASTERS_HOUSE (0 | (31 << 8)) + +// Map Group 32 +#define MAP_ROUTE119_WEATHER_INSTITUTE_1F (0 | (32 << 8)) +#define MAP_ROUTE119_WEATHER_INSTITUTE_2F (1 | (32 << 8)) +#define MAP_ROUTE119_HOUSE (2 | (32 << 8)) + +// Map Group 33 +#define MAP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE (0 | (33 << 8)) + + +#define MAP_NONE (0x7F | (0x7F << 8)) +#define MAP_UNDEFINED (0xFF | (0xFF << 8)) + + +#define MAP_GROUP(map) (MAP_##map >> 8) +#define MAP_NUM(map) (MAP_##map & 0xFF) + +#endif // GUARD_CONSTANTS_MAPS_H diff --git a/include/constants/mauville_man.h b/include/constants/mauville_man.h new file mode 100644 index 000000000..b00e3a291 --- /dev/null +++ b/include/constants/mauville_man.h @@ -0,0 +1,10 @@ +#ifndef GUARD_CONSTANTS_MAUVILLE_MAN_H +#define GUARD_CONSTANTS_MAUVILLE_MAN_H + +#define MAUVILLE_MAN_BARD 0 +#define MAUVILLE_MAN_HIPSTER 1 +#define MAUVILLE_MAN_TRADER 2 +#define MAUVILLE_MAN_STORYTELLER 3 +#define MAUVILLE_MAN_GIDDY 4 + +#endif // GUARD_CONSTANTS_MAUVILLE_MAN_H diff --git a/include/constants/moves.h b/include/constants/moves.h new file mode 100644 index 000000000..f3a3acb90 --- /dev/null +++ b/include/constants/moves.h @@ -0,0 +1,362 @@ +#ifndef GUARD_CONSTANTS_MOVES_H +#define GUARD_CONSTANTS_MOVES_H + +#define MOVE_NONE 0 +#define MOVE_POUND 1 +#define MOVE_KARATE_CHOP 2 +#define MOVE_DOUBLE_SLAP 3 +#define MOVE_COMET_PUNCH 4 +#define MOVE_MEGA_PUNCH 5 +#define MOVE_PAY_DAY 6 +#define MOVE_FIRE_PUNCH 7 +#define MOVE_ICE_PUNCH 8 +#define MOVE_THUNDER_PUNCH 9 +#define MOVE_SCRATCH 10 +#define MOVE_VICE_GRIP 11 +#define MOVE_GUILLOTINE 12 +#define MOVE_RAZOR_WIND 13 +#define MOVE_SWORDS_DANCE 14 +#define MOVE_CUT 15 +#define MOVE_GUST 16 +#define MOVE_WING_ATTACK 17 +#define MOVE_WHIRLWIND 18 +#define MOVE_FLY 19 +#define MOVE_BIND 20 +#define MOVE_SLAM 21 +#define MOVE_VINE_WHIP 22 +#define MOVE_STOMP 23 +#define MOVE_DOUBLE_KICK 24 +#define MOVE_MEGA_KICK 25 +#define MOVE_JUMP_KICK 26 +#define MOVE_ROLLING_KICK 27 +#define MOVE_SAND_ATTACK 28 +#define MOVE_HEADBUTT 29 +#define MOVE_HORN_ATTACK 30 +#define MOVE_FURY_ATTACK 31 +#define MOVE_HORN_DRILL 32 +#define MOVE_TACKLE 33 +#define MOVE_BODY_SLAM 34 +#define MOVE_WRAP 35 +#define MOVE_TAKE_DOWN 36 +#define MOVE_THRASH 37 +#define MOVE_DOUBLE_EDGE 38 +#define MOVE_TAIL_WHIP 39 +#define MOVE_POISON_STING 40 +#define MOVE_TWINEEDLE 41 +#define MOVE_PIN_MISSILE 42 +#define MOVE_LEER 43 +#define MOVE_BITE 44 +#define MOVE_GROWL 45 +#define MOVE_ROAR 46 +#define MOVE_SING 47 +#define MOVE_SUPERSONIC 48 +#define MOVE_SONIC_BOOM 49 +#define MOVE_DISABLE 50 +#define MOVE_ACID 51 +#define MOVE_EMBER 52 +#define MOVE_FLAMETHROWER 53 +#define MOVE_MIST 54 +#define MOVE_WATER_GUN 55 +#define MOVE_HYDRO_PUMP 56 +#define MOVE_SURF 57 +#define MOVE_ICE_BEAM 58 +#define MOVE_BLIZZARD 59 +#define MOVE_PSYBEAM 60 +#define MOVE_BUBBLE_BEAM 61 +#define MOVE_AURORA_BEAM 62 +#define MOVE_HYPER_BEAM 63 +#define MOVE_PECK 64 +#define MOVE_DRILL_PECK 65 +#define MOVE_SUBMISSION 66 +#define MOVE_LOW_KICK 67 +#define MOVE_COUNTER 68 +#define MOVE_SEISMIC_TOSS 69 +#define MOVE_STRENGTH 70 +#define MOVE_ABSORB 71 +#define MOVE_MEGA_DRAIN 72 +#define MOVE_LEECH_SEED 73 +#define MOVE_GROWTH 74 +#define MOVE_RAZOR_LEAF 75 +#define MOVE_SOLAR_BEAM 76 +#define MOVE_POISON_POWDER 77 +#define MOVE_STUN_SPORE 78 +#define MOVE_SLEEP_POWDER 79 +#define MOVE_PETAL_DANCE 80 +#define MOVE_STRING_SHOT 81 +#define MOVE_DRAGON_RAGE 82 +#define MOVE_FIRE_SPIN 83 +#define MOVE_THUNDER_SHOCK 84 +#define MOVE_THUNDERBOLT 85 +#define MOVE_THUNDER_WAVE 86 +#define MOVE_THUNDER 87 +#define MOVE_ROCK_THROW 88 +#define MOVE_EARTHQUAKE 89 +#define MOVE_FISSURE 90 +#define MOVE_DIG 91 +#define MOVE_TOXIC 92 +#define MOVE_CONFUSION 93 +#define MOVE_PSYCHIC 94 +#define MOVE_HYPNOSIS 95 +#define MOVE_MEDITATE 96 +#define MOVE_AGILITY 97 +#define MOVE_QUICK_ATTACK 98 +#define MOVE_RAGE 99 +#define MOVE_TELEPORT 100 +#define MOVE_NIGHT_SHADE 101 +#define MOVE_MIMIC 102 +#define MOVE_SCREECH 103 +#define MOVE_DOUBLE_TEAM 104 +#define MOVE_RECOVER 105 +#define MOVE_HARDEN 106 +#define MOVE_MINIMIZE 107 +#define MOVE_SMOKESCREEN 108 +#define MOVE_CONFUSE_RAY 109 +#define MOVE_WITHDRAW 110 +#define MOVE_DEFENSE_CURL 111 +#define MOVE_BARRIER 112 +#define MOVE_LIGHT_SCREEN 113 +#define MOVE_HAZE 114 +#define MOVE_REFLECT 115 +#define MOVE_FOCUS_ENERGY 116 +#define MOVE_BIDE 117 +#define MOVE_METRONOME 118 +#define MOVE_MIRROR_MOVE 119 +#define MOVE_SELF_DESTRUCT 120 +#define MOVE_EGG_BOMB 121 +#define MOVE_LICK 122 +#define MOVE_SMOG 123 +#define MOVE_SLUDGE 124 +#define MOVE_BONE_CLUB 125 +#define MOVE_FIRE_BLAST 126 +#define MOVE_WATERFALL 127 +#define MOVE_CLAMP 128 +#define MOVE_SWIFT 129 +#define MOVE_SKULL_BASH 130 +#define MOVE_SPIKE_CANNON 131 +#define MOVE_CONSTRICT 132 +#define MOVE_AMNESIA 133 +#define MOVE_KINESIS 134 +#define MOVE_SOFT_BOILED 135 +#define MOVE_HI_JUMP_KICK 136 +#define MOVE_GLARE 137 +#define MOVE_DREAM_EATER 138 +#define MOVE_POISON_GAS 139 +#define MOVE_BARRAGE 140 +#define MOVE_LEECH_LIFE 141 +#define MOVE_LOVELY_KISS 142 +#define MOVE_SKY_ATTACK 143 +#define MOVE_TRANSFORM 144 +#define MOVE_BUBBLE 145 +#define MOVE_DIZZY_PUNCH 146 +#define MOVE_SPORE 147 +#define MOVE_FLASH 148 +#define MOVE_PSYWAVE 149 +#define MOVE_SPLASH 150 +#define MOVE_ACID_ARMOR 151 +#define MOVE_CRABHAMMER 152 +#define MOVE_EXPLOSION 153 +#define MOVE_FURY_SWIPES 154 +#define MOVE_BONEMERANG 155 +#define MOVE_REST 156 +#define MOVE_ROCK_SLIDE 157 +#define MOVE_HYPER_FANG 158 +#define MOVE_SHARPEN 159 +#define MOVE_CONVERSION 160 +#define MOVE_TRI_ATTACK 161 +#define MOVE_SUPER_FANG 162 +#define MOVE_SLASH 163 +#define MOVE_SUBSTITUTE 164 +#define MOVE_STRUGGLE 165 +#define MOVE_SKETCH 166 +#define MOVE_TRIPLE_KICK 167 +#define MOVE_THIEF 168 +#define MOVE_SPIDER_WEB 169 +#define MOVE_MIND_READER 170 +#define MOVE_NIGHTMARE 171 +#define MOVE_FLAME_WHEEL 172 +#define MOVE_SNORE 173 +#define MOVE_CURSE 174 +#define MOVE_FLAIL 175 +#define MOVE_CONVERSION_2 176 +#define MOVE_AEROBLAST 177 +#define MOVE_COTTON_SPORE 178 +#define MOVE_REVERSAL 179 +#define MOVE_SPITE 180 +#define MOVE_POWDER_SNOW 181 +#define MOVE_PROTECT 182 +#define MOVE_MACH_PUNCH 183 +#define MOVE_SCARY_FACE 184 +#define MOVE_FAINT_ATTACK 185 +#define MOVE_SWEET_KISS 186 +#define MOVE_BELLY_DRUM 187 +#define MOVE_SLUDGE_BOMB 188 +#define MOVE_MUD_SLAP 189 +#define MOVE_OCTAZOOKA 190 +#define MOVE_SPIKES 191 +#define MOVE_ZAP_CANNON 192 +#define MOVE_FORESIGHT 193 +#define MOVE_DESTINY_BOND 194 +#define MOVE_PERISH_SONG 195 +#define MOVE_ICY_WIND 196 +#define MOVE_DETECT 197 +#define MOVE_BONE_RUSH 198 +#define MOVE_LOCK_ON 199 +#define MOVE_OUTRAGE 200 +#define MOVE_SANDSTORM 201 +#define MOVE_GIGA_DRAIN 202 +#define MOVE_ENDURE 203 +#define MOVE_CHARM 204 +#define MOVE_ROLLOUT 205 +#define MOVE_FALSE_SWIPE 206 +#define MOVE_SWAGGER 207 +#define MOVE_MILK_DRINK 208 +#define MOVE_SPARK 209 +#define MOVE_FURY_CUTTER 210 +#define MOVE_STEEL_WING 211 +#define MOVE_MEAN_LOOK 212 +#define MOVE_ATTRACT 213 +#define MOVE_SLEEP_TALK 214 +#define MOVE_HEAL_BELL 215 +#define MOVE_RETURN 216 +#define MOVE_PRESENT 217 +#define MOVE_FRUSTRATION 218 +#define MOVE_SAFEGUARD 219 +#define MOVE_PAIN_SPLIT 220 +#define MOVE_SACRED_FIRE 221 +#define MOVE_MAGNITUDE 222 +#define MOVE_DYNAMIC_PUNCH 223 +#define MOVE_MEGAHORN 224 +#define MOVE_DRAGON_BREATH 225 +#define MOVE_BATON_PASS 226 +#define MOVE_ENCORE 227 +#define MOVE_PURSUIT 228 +#define MOVE_RAPID_SPIN 229 +#define MOVE_SWEET_SCENT 230 +#define MOVE_IRON_TAIL 231 +#define MOVE_METAL_CLAW 232 +#define MOVE_VITAL_THROW 233 +#define MOVE_MORNING_SUN 234 +#define MOVE_SYNTHESIS 235 +#define MOVE_MOONLIGHT 236 +#define MOVE_HIDDEN_POWER 237 +#define MOVE_CROSS_CHOP 238 +#define MOVE_TWISTER 239 +#define MOVE_RAIN_DANCE 240 +#define MOVE_SUNNY_DAY 241 +#define MOVE_CRUNCH 242 +#define MOVE_MIRROR_COAT 243 +#define MOVE_PSYCH_UP 244 +#define MOVE_EXTREME_SPEED 245 +#define MOVE_ANCIENT_POWER 246 +#define MOVE_SHADOW_BALL 247 +#define MOVE_FUTURE_SIGHT 248 +#define MOVE_ROCK_SMASH 249 +#define MOVE_WHIRLPOOL 250 +#define MOVE_BEAT_UP 251 +#define MOVE_FAKE_OUT 252 +#define MOVE_UPROAR 253 +#define MOVE_STOCKPILE 254 +#define MOVE_SPIT_UP 255 +#define MOVE_SWALLOW 256 +#define MOVE_HEAT_WAVE 257 +#define MOVE_HAIL 258 +#define MOVE_TORMENT 259 +#define MOVE_FLATTER 260 +#define MOVE_WILL_O_WISP 261 +#define MOVE_MEMENTO 262 +#define MOVE_FACADE 263 +#define MOVE_FOCUS_PUNCH 264 +#define MOVE_SMELLING_SALT 265 +#define MOVE_FOLLOW_ME 266 +#define MOVE_NATURE_POWER 267 +#define MOVE_CHARGE 268 +#define MOVE_TAUNT 269 +#define MOVE_HELPING_HAND 270 +#define MOVE_TRICK 271 +#define MOVE_ROLE_PLAY 272 +#define MOVE_WISH 273 +#define MOVE_ASSIST 274 +#define MOVE_INGRAIN 275 +#define MOVE_SUPERPOWER 276 +#define MOVE_MAGIC_COAT 277 +#define MOVE_RECYCLE 278 +#define MOVE_REVENGE 279 +#define MOVE_BRICK_BREAK 280 +#define MOVE_YAWN 281 +#define MOVE_KNOCK_OFF 282 +#define MOVE_ENDEAVOR 283 +#define MOVE_ERUPTION 284 +#define MOVE_SKILL_SWAP 285 +#define MOVE_IMPRISON 286 +#define MOVE_REFRESH 287 +#define MOVE_GRUDGE 288 +#define MOVE_SNATCH 289 +#define MOVE_SECRET_POWER 290 +#define MOVE_DIVE 291 +#define MOVE_ARM_THRUST 292 +#define MOVE_CAMOUFLAGE 293 +#define MOVE_TAIL_GLOW 294 +#define MOVE_LUSTER_PURGE 295 +#define MOVE_MIST_BALL 296 +#define MOVE_FEATHER_DANCE 297 +#define MOVE_TEETER_DANCE 298 +#define MOVE_BLAZE_KICK 299 +#define MOVE_MUD_SPORT 300 +#define MOVE_ICE_BALL 301 +#define MOVE_NEEDLE_ARM 302 +#define MOVE_SLACK_OFF 303 +#define MOVE_HYPER_VOICE 304 +#define MOVE_POISON_FANG 305 +#define MOVE_CRUSH_CLAW 306 +#define MOVE_BLAST_BURN 307 +#define MOVE_HYDRO_CANNON 308 +#define MOVE_METEOR_MASH 309 +#define MOVE_ASTONISH 310 +#define MOVE_WEATHER_BALL 311 +#define MOVE_AROMATHERAPY 312 +#define MOVE_FAKE_TEARS 313 +#define MOVE_AIR_CUTTER 314 +#define MOVE_OVERHEAT 315 +#define MOVE_ODOR_SLEUTH 316 +#define MOVE_ROCK_TOMB 317 +#define MOVE_SILVER_WIND 318 +#define MOVE_METAL_SOUND 319 +#define MOVE_GRASS_WHISTLE 320 +#define MOVE_TICKLE 321 +#define MOVE_COSMIC_POWER 322 +#define MOVE_WATER_SPOUT 323 +#define MOVE_SIGNAL_BEAM 324 +#define MOVE_SHADOW_PUNCH 325 +#define MOVE_EXTRASENSORY 326 +#define MOVE_SKY_UPPERCUT 327 +#define MOVE_SAND_TOMB 328 +#define MOVE_SHEER_COLD 329 +#define MOVE_MUDDY_WATER 330 +#define MOVE_BULLET_SEED 331 +#define MOVE_AERIAL_ACE 332 +#define MOVE_ICICLE_SPEAR 333 +#define MOVE_IRON_DEFENSE 334 +#define MOVE_BLOCK 335 +#define MOVE_HOWL 336 +#define MOVE_DRAGON_CLAW 337 +#define MOVE_FRENZY_PLANT 338 +#define MOVE_BULK_UP 339 +#define MOVE_BOUNCE 340 +#define MOVE_MUD_SHOT 341 +#define MOVE_POISON_TAIL 342 +#define MOVE_COVET 343 +#define MOVE_VOLT_TACKLE 344 +#define MOVE_MAGICAL_LEAF 345 +#define MOVE_WATER_SPORT 346 +#define MOVE_CALM_MIND 347 +#define MOVE_LEAF_BLADE 348 +#define MOVE_DRAGON_DANCE 349 +#define MOVE_ROCK_BLAST 350 +#define MOVE_SHOCK_WAVE 351 +#define MOVE_WATER_PULSE 352 +#define MOVE_DOOM_DESIRE 353 +#define MOVE_PSYCHO_BOOST 354 + +#define LAST_MOVE_INDEX MOVE_PSYCHO_BOOST + +#endif // GUARD_CONSTANTS_MOVES_H diff --git a/include/constants/songs.h b/include/constants/songs.h new file mode 100644 index 000000000..2e3adcbbf --- /dev/null +++ b/include/constants/songs.h @@ -0,0 +1,465 @@ +#ifndef GUARD_CONSTANTS_SONGS_H +#define GUARD_CONSTANTS_SONGS_H + +#define SE_STOP 0 +#define SE_KAIFUKU 1 +#define SE_PC_LOGON 2 +#define SE_PC_OFF 3 +#define SE_PC_ON 4 +#define SE_SELECT 5 +#define SE_WIN_OPEN 6 +#define SE_WALL_HIT 7 +#define SE_DOOR 8 +#define SE_KAIDAN 9 +#define SE_DANSA 10 +#define SE_JITENSYA 11 +#define SE_KOUKA_L 12 +#define SE_KOUKA_M 13 +#define SE_KOUKA_H 14 +#define SE_BOWA2 15 +#define SE_POKE_DEAD 16 +#define SE_NIGERU 17 +#define SE_JIDO_DOA 18 +#define SE_NAMINORI 19 +#define SE_BAN 20 +#define SE_PIN 21 +#define SE_BOO 22 +#define SE_BOWA 23 +#define SE_JYUNI 24 +#define SE_A 25 +#define SE_I 26 +#define SE_U 27 +#define SE_E 28 +#define SE_O 29 +#define SE_N 30 +#define SE_SEIKAI 31 +#define SE_HAZURE 32 +#define SE_EXP 33 +#define SE_JITE_PYOKO 34 +#define SE_MU_PACHI 35 +#define SE_TK_KASYA 36 +#define SE_FU_ZAKU 37 +#define SE_FU_ZAKU2 38 +#define SE_FU_ZUZUZU 39 +#define SE_RU_GASHIN 40 +#define SE_RU_GASYAN 41 +#define SE_RU_BARI 42 +#define SE_RU_HYUU 43 +#define SE_KI_GASYAN 44 +#define SE_TK_WARPIN 45 +#define SE_TK_WARPOUT 46 +#define SE_TU_SAA 47 +#define SE_HI_TURUN 48 +#define SE_TRACK_MOVE 49 +#define SE_TRACK_STOP 50 +#define SE_TRACK_HAIK 51 +#define SE_TRACK_DOOR 52 +#define SE_MOTER 53 +#define SE_CARD 54 +#define SE_SAVE 55 +#define SE_KON 56 +#define SE_KON2 57 +#define SE_KON3 58 +#define SE_KON4 59 +#define SE_SUIKOMU 60 +#define SE_NAGERU 61 +#define SE_TOY_C 62 +#define SE_TOY_D 63 +#define SE_TOY_E 64 +#define SE_TOY_F 65 +#define SE_TOY_G 66 +#define SE_TOY_A 67 +#define SE_TOY_B 68 +#define SE_TOY_C1 69 +#define SE_MIZU 70 +#define SE_HASHI 71 +#define SE_DAUGI 72 +#define SE_PINPON 73 +#define SE_FUUSEN1 74 +#define SE_FUUSEN2 75 +#define SE_FUUSEN3 76 +#define SE_TOY_KABE 77 +#define SE_TOY_DANGO 78 +#define SE_DOKU 79 +#define SE_ESUKA 80 +#define SE_T_AME 81 +#define SE_T_AME_E 82 +#define SE_T_OOAME 83 +#define SE_T_OOAME_E 84 +#define SE_T_KOAME 85 +#define SE_T_KOAME_E 86 +#define SE_T_KAMI 87 +#define SE_T_KAMI2 88 +#define SE_ELEBETA 89 +#define SE_HINSI 90 +#define SE_EXPMAX 91 +#define SE_TAMAKORO 92 +#define SE_TAMAKORO_E 93 +#define SE_BASABASA 94 +#define SE_REGI 95 +#define SE_C_GAJI 96 +#define SE_C_MAKU_U 97 +#define SE_C_MAKU_D 98 +#define SE_C_PASI 99 +#define SE_C_SYU 100 +#define SE_C_PIKON 101 +#define SE_REAPOKE 102 +#define SE_OP_BASYU 103 +#define SE_BT_START 104 +#define SE_DENDOU 105 +#define SE_JIHANKI 106 +#define SE_TAMA 107 +#define SE_Z_SCROLL 108 +#define SE_Z_PAGE 109 +#define SE_PN_ON 110 +#define SE_PN_OFF 111 +#define SE_Z_SEARCH 112 +#define SE_TAMAGO 113 +#define SE_TB_START 114 +#define SE_TB_KON 115 +#define SE_TB_KARA 116 +#define SE_BIDORO 117 +#define SE_W085 118 +#define SE_W085B 119 +#define SE_W231 120 +#define SE_W171 121 +#define SE_W233 122 +#define SE_W233B 123 +#define SE_W145 124 +#define SE_W145B 125 +#define SE_W145C 126 +#define SE_W240 127 +#define SE_W015 128 +#define SE_W081 129 +#define SE_W081B 130 +#define SE_W088 131 +#define SE_W016 132 +#define SE_W016B 133 +#define SE_W003 134 +#define SE_W104 135 +#define SE_W013 136 +#define SE_W196 137 +#define SE_W086 138 +#define SE_W004 139 +#define SE_W025 140 +#define SE_W025B 141 +#define SE_W152 142 +#define SE_W026 143 +#define SE_W172 144 +#define SE_W172B 145 +#define SE_W053 146 +#define SE_W007 147 +#define SE_W092 148 +#define SE_W221 149 +#define SE_W221B 150 +#define SE_W052 151 +#define SE_W036 152 +#define SE_W059 153 +#define SE_W059B 154 +#define SE_W010 155 +#define SE_W011 156 +#define SE_W017 157 +#define SE_W019 158 +#define SE_W028 159 +#define SE_W013B 160 +#define SE_W044 161 +#define SE_W029 162 +#define SE_W057 163 +#define SE_W056 164 +#define SE_W250 165 +#define SE_W030 166 +#define SE_W039 167 +#define SE_W054 168 +#define SE_W077 169 +#define SE_W020 170 +#define SE_W082 171 +#define SE_W047 172 +#define SE_W195 173 +#define SE_W006 174 +#define SE_W091 175 +#define SE_W146 176 +#define SE_W120 177 +#define SE_W153 178 +#define SE_W071B 179 +#define SE_W071 180 +#define SE_W103 181 +#define SE_W062 182 +#define SE_W062B 183 +#define SE_W048 184 +#define SE_W187 185 +#define SE_W118 186 +#define SE_W155 187 +#define SE_W122 188 +#define SE_W060 189 +#define SE_W185 190 +#define SE_W014 191 +#define SE_W043 192 +#define SE_W207 193 +#define SE_W207B 194 +#define SE_W215 195 +#define SE_W109 196 +#define SE_W173 197 +#define SE_W280 198 +#define SE_W202 199 +#define SE_W060B 200 +#define SE_W076 201 +#define SE_W080 202 +#define SE_W100 203 +#define SE_W107 204 +#define SE_W166 205 +#define SE_W129 206 +#define SE_W115 207 +#define SE_W112 208 +#define SE_W197 209 +#define SE_W199 210 +#define SE_W236 211 +#define SE_W204 212 +#define SE_W268 213 +#define SE_W070 214 +#define SE_W063 215 +#define SE_W127 216 +#define SE_W179 217 +#define SE_W151 218 +#define SE_W201 219 +#define SE_W161 220 +#define SE_W161B 221 +#define SE_W227 222 +#define SE_W227B 223 +#define SE_W226 224 +#define SE_W208 225 +#define SE_W213 226 +#define SE_W213B 227 +#define SE_W234 228 +#define SE_W260 229 +#define SE_W328 230 +#define SE_W320 231 +#define SE_W255 232 +#define SE_W291 233 +#define SE_W089 234 +#define SE_W239 235 +#define SE_W230 236 +#define SE_W281 237 +#define SE_W327 238 +#define SE_W287 239 +#define SE_W257 240 +#define SE_W253 241 +#define SE_W258 242 +#define SE_W322 243 +#define SE_W298 244 +#define SE_W287B 245 +#define SE_W114 246 +#define SE_W063B 247 +#define BGM_STOP 349 +#define BGM_TETSUJI 350 +#define BGM_FIELD13 351 +#define BGM_KACHI22 352 +#define BGM_KACHI2 353 +#define BGM_KACHI3 354 +#define BGM_KACHI5 355 +#define BGM_PCC 356 +#define BGM_NIBI 357 +#define BGM_SUIKUN 358 +#define BGM_DOORO1 359 +#define BGM_DOORO_X1 360 +#define BGM_DOORO_X3 361 +#define BGM_MACHI_S2 362 +#define BGM_MACHI_S4 363 +#define BGM_GIM 364 +#define BGM_NAMINORI 365 +#define BGM_DAN01 366 +#define BGM_FANFA1 367 +#define BGM_ME_ASA 368 +#define BGM_ME_BACHI 369 +#define BGM_FANFA4 370 +#define BGM_FANFA5 371 +#define BGM_ME_WAZA 372 +#define BGM_BIJYUTU 373 +#define BGM_DOORO_X4 374 +#define BGM_FUNE_KAN 375 +#define BGM_ME_SHINKA 376 +#define BGM_SHINKA 377 +#define BGM_ME_WASURE 378 +#define BGM_SYOUJOEYE 379 +#define BGM_BOYEYE 380 +#define BGM_DAN02 381 +#define BGM_MACHI_S3 382 +#define BGM_ODAMAKI 383 +#define BGM_B_TOWER 384 +#define BGM_SWIMEYE 385 +#define BGM_DAN03 386 +#define BGM_ME_KINOMI 387 +#define BGM_ME_TAMA 388 +#define BGM_ME_B_BIG 389 +#define BGM_ME_B_SMALL 390 +#define BGM_ME_ZANNEN 391 +#define BGM_BD_TIME 392 +#define BGM_TEST1 393 +#define BGM_TEST2 394 +#define BGM_TEST3 395 +#define BGM_TEST4 396 +#define BGM_TEST 397 +#define BGM_GOMACHI0 398 +#define BGM_GOTOWN 399 +#define BGM_POKECEN 400 +#define BGM_NEXTROAD 401 +#define BGM_GRANROAD 402 +#define BGM_CYCLING 403 +#define BGM_FRIENDLY 404 +#define BGM_MISHIRO 405 +#define BGM_TOZAN 406 +#define BGM_GIRLEYE 407 +#define BGM_MINAMO 408 +#define BGM_ASHROAD 409 +#define BGM_EVENT0 410 +#define BGM_DEEPDEEP 411 +#define BGM_KACHI1 412 +#define BGM_TITLE3 413 +#define BGM_DEMO1 414 +#define BGM_GIRL_SUP 415 +#define BGM_HAGESHII 416 +#define BGM_KAKKOII 417 +#define BGM_KAZANBAI 418 +#define BGM_AQA_0 419 +#define BGM_TSURETEK 420 +#define BGM_BOY_SUP 421 +#define BGM_RAINBOW 422 +#define BGM_AYASII 423 +#define BGM_KACHI4 424 +#define BGM_ROPEWAY 425 +#define BGM_CASINO 426 +#define BGM_HIGHTOWN 427 +#define BGM_SAFARI 428 +#define BGM_C_ROAD 429 +#define BGM_AJITO 430 +#define BGM_M_BOAT 431 +#define BGM_M_DUNGON 432 +#define BGM_FINECITY 433 +#define BGM_MACHUPI 434 +#define BGM_P_SCHOOL 435 +#define BGM_DENDOU 436 +#define BGM_TONEKUSA 437 +#define BGM_MABOROSI 438 +#define BGM_CON_FAN 439 +#define BGM_CONTEST0 440 +#define BGM_MGM0 441 +#define BGM_T_BATTLE 442 +#define BGM_OOAME 443 +#define BGM_HIDERI 444 +#define BGM_RUNECITY 445 +#define BGM_CON_K 446 +#define BGM_EIKOU_R 447 +#define BGM_KARAKURI 448 +#define BGM_HUTAGO 449 +#define BGM_SITENNOU 450 +#define BGM_YAMA_EYE 451 +#define BGM_CONLOBBY 452 +#define BGM_INTER_V 453 +#define BGM_DAIGO 454 +#define BGM_THANKFOR 455 +#define BGM_END 456 +#define BGM_BATTLE_FRONTIER 457 +#define BGM_BATTLE_ARENA 458 +#define BGM_ME_BATTLE_POINTS 459 +#define BGM_ME_MATCH_CALL 460 +#define BGM_BATTLE_PYRAMID 461 +#define BGM_BATTLE_PYRAMID_SUMMIT 462 +#define BGM_BATTLE_PALACE 463 +#define BGM_FANFA_RAYQUAZA 464 +#define BGM_BATTLE_TOWER 465 +#define BGM_ME_BATTLE_SYMBOL 466 +#define BGM_BATTLE_DOME_TOURNAMENT 467 +#define BGM_BATTLE_PIKE 468 +#define BGM_BATTLE_FACTORY 469 +#define BGM_BATTLE_LEGENDARY 470 +#define BGM_BATTLE_FRONTIER_BRAIN 471 +#define BGM_BATTLE_MEW 472 +#define BGM_BATTLE_DOME 473 +#define BGM_BATTLE27 474 +#define BGM_BATTLE31 475 +#define BGM_BATTLE20 476 +#define BGM_BATTLE32 477 +#define BGM_BATTLE33 478 +#define BGM_BATTLE36 479 +#define BGM_BATTLE34 480 +#define BGM_BATTLE35 481 +#define BGM_BATTLE38 482 +#define BGM_BATTLE30 483 +#define BGM_FRLG_FOLLOW_ME 484 +#define BGM_FRLG_GAMECORNER 485 +#define BGM_FRLG_ROCKET_HIDEOUT 486 +#define BGM_FRLG_GYM 487 +#define BGM_FRLG_JIGGLYPUFF 488 +#define BGM_FRLG_OPENING 489 +#define BGM_FRLG_TITLE 490 +#define BGM_FRLG_CINNABAR_ISLAND 491 +#define BGM_FRLG_LAVENDER_TOWN 492 +#define BGM_FRLG_HEALING_TEST 493 +#define BGM_FRLG_BICYCLE 494 +#define BGM_FRLG_SUSPICIOUS_EYE 495 +#define BGM_FRLG_GIRL_EYE 496 +#define BGM_FRLG_BOY_EYE 497 +#define BGM_FRLG_CONGRATULATIONS_HALL_OF_FAME 498 +#define BGM_FRLG_VIRIDIAN_FOREST 499 +#define BGM_FRLG_MT_MOON 500 +#define BGM_FRLG_POKEMON_MANSION 501 +#define BGM_FRLG_CREDITS 502 +#define BGM_FRLG_ROUTE_1 503 +#define BGM_FRLG_ROUTE_24 504 +#define BGM_FRLG_ROUTE_3 505 +#define BGM_FRLG_ROUTE_11 506 +#define BGM_FRLG_INDIGO_PLATEAU 507 +#define BGM_FRLG_BATTLE_LEADER 508 +#define BGM_FRLG_BATTLE_TRAINER 509 +#define BGM_FRLG_BATTLE_WILD_POKEMON 510 +#define BGM_FRLG_BATTLE_CHAMPION 511 +#define BGM_FRLG_PALLET_TOWN 512 +#define BGM_FRLG_OAK_LAB 513 +#define BGM_FRLG_PROF_OAK 514 +#define BGM_FRLG_POKEMON_CENTER 515 +#define BGM_FRLG_SS_ANNE 516 +#define BGM_FRLG_SURF 517 +#define BGM_FRLG_POKEMON_TOWER 518 +#define BGM_FRLG_SILPH 519 +#define BGM_FRLG_CERULEAN_CITY 520 +#define BGM_FRLG_CELADON_CITY 521 +#define BGM_FRLG_KACHI_TRAINER 522 +#define BGM_FRLG_KACHI_WILD_POKEMON 523 +#define BGM_FRLG_KACHI_LEADER 524 +#define BGM_FRLG_VERMILION_CITY 525 +#define BGM_FRLG_VIRIDIAN_CITY 526 +#define BGM_FRLG_RIVAL 527 +#define BGM_FRLG_RIVAL_POSTBATTLE 528 +#define BGM_FRLG_ME_POKEDEX_EVAL 529 +#define BGM_FRLG_ME_KEYITEM 530 +#define BGM_FRLG_FANFA_POKEMON_CAUGHT 531 +#define BGM_FRLG_FANFA_TRAINERCARD_PHOTO 532 +#define BGM_FRLG_GAMEFREAK_LOGO 533 +#define BGM_FRLG_CAUGHT_POKEMON 534 +#define BGM_FRLG_GAME_EXPLANATION_START 535 +#define BGM_FRLG_GAME_EXPLANATION_MIDDLE 536 +#define BGM_FRLG_GAME_EXPLANATION_END 537 +#define BGM_FRLG_POKEMON_JUMP 538 +#define BGM_FRLG_UNION_ROOM 539 +#define BGM_FRLG_POKEMON_NETWORK_CENTER 540 +#define BGM_FRLG_MYSTERY_GIFT 541 +#define BGM_FRLG_DODRIO_BERRY_PICK 542 +#define BGM_FRLG_MT_EMBER 543 +#define BGM_FRLG_TEACHY_TV_EPISODE 544 +#define BGM_FRLG_SEVII_ISLANDS 545 +#define BGM_FRLG_TANOBY_RUINS 546 +#define BGM_FRLG_ISLAND_ONE 547 +#define BGM_FRLG_ISLAND_FOUR 548 +#define BGM_FRLG_ISLAND_SIX 549 +#define BGM_FRLG_FLUTE 550 +#define BGM_FRLG_BATTLE_DEOXYS 551 +#define BGM_FRLG_BATTLE_MEWTWO 552 +#define BGM_FRLG_BATTLE_LEGENDARY 553 +#define BGM_FRLG_LEADER_EYE 554 +#define BGM_FRLG_DEOXYS_EYE 555 +#define BGM_FRLG_TRAINER_TOWER 556 +#define BGM_FRLG_HALL_OF_FAME_PALLET_TOWN 557 +#define BGM_FRLG_TEACHY_TV 558 + +#define BGM_ROUTE_118 0x7FFF // What is this for? + +#endif // GUARD_CONSTANTS_SONGS_H diff --git a/include/constants/species.h b/include/constants/species.h new file mode 100644 index 000000000..f698ada14 --- /dev/null +++ b/include/constants/species.h @@ -0,0 +1,450 @@ +#ifndef GUARD_CONSTANTS_SPECIES_H +#define GUARD_CONSTANTS_SPECIES_H + +#define SPECIES_NONE 0 +#define SPECIES_BULBASAUR 1 +#define SPECIES_IVYSAUR 2 +#define SPECIES_VENUSAUR 3 +#define SPECIES_CHARMANDER 4 +#define SPECIES_CHARMELEON 5 +#define SPECIES_CHARIZARD 6 +#define SPECIES_SQUIRTLE 7 +#define SPECIES_WARTORTLE 8 +#define SPECIES_BLASTOISE 9 +#define SPECIES_CATERPIE 10 +#define SPECIES_METAPOD 11 +#define SPECIES_BUTTERFREE 12 +#define SPECIES_WEEDLE 13 +#define SPECIES_KAKUNA 14 +#define SPECIES_BEEDRILL 15 +#define SPECIES_PIDGEY 16 +#define SPECIES_PIDGEOTTO 17 +#define SPECIES_PIDGEOT 18 +#define SPECIES_RATTATA 19 +#define SPECIES_RATICATE 20 +#define SPECIES_SPEAROW 21 +#define SPECIES_FEAROW 22 +#define SPECIES_EKANS 23 +#define SPECIES_ARBOK 24 +#define SPECIES_PIKACHU 25 +#define SPECIES_RAICHU 26 +#define SPECIES_SANDSHREW 27 +#define SPECIES_SANDSLASH 28 +#define SPECIES_NIDORAN_F 29 +#define SPECIES_NIDORINA 30 +#define SPECIES_NIDOQUEEN 31 +#define SPECIES_NIDORAN_M 32 +#define SPECIES_NIDORINO 33 +#define SPECIES_NIDOKING 34 +#define SPECIES_CLEFAIRY 35 +#define SPECIES_CLEFABLE 36 +#define SPECIES_VULPIX 37 +#define SPECIES_NINETALES 38 +#define SPECIES_JIGGLYPUFF 39 +#define SPECIES_WIGGLYTUFF 40 +#define SPECIES_ZUBAT 41 +#define SPECIES_GOLBAT 42 +#define SPECIES_ODDISH 43 +#define SPECIES_GLOOM 44 +#define SPECIES_VILEPLUME 45 +#define SPECIES_PARAS 46 +#define SPECIES_PARASECT 47 +#define SPECIES_VENONAT 48 +#define SPECIES_VENOMOTH 49 +#define SPECIES_DIGLETT 50 +#define SPECIES_DUGTRIO 51 +#define SPECIES_MEOWTH 52 +#define SPECIES_PERSIAN 53 +#define SPECIES_PSYDUCK 54 +#define SPECIES_GOLDUCK 55 +#define SPECIES_MANKEY 56 +#define SPECIES_PRIMEAPE 57 +#define SPECIES_GROWLITHE 58 +#define SPECIES_ARCANINE 59 +#define SPECIES_POLIWAG 60 +#define SPECIES_POLIWHIRL 61 +#define SPECIES_POLIWRATH 62 +#define SPECIES_ABRA 63 +#define SPECIES_KADABRA 64 +#define SPECIES_ALAKAZAM 65 +#define SPECIES_MACHOP 66 +#define SPECIES_MACHOKE 67 +#define SPECIES_MACHAMP 68 +#define SPECIES_BELLSPROUT 69 +#define SPECIES_WEEPINBELL 70 +#define SPECIES_VICTREEBEL 71 +#define SPECIES_TENTACOOL 72 +#define SPECIES_TENTACRUEL 73 +#define SPECIES_GEODUDE 74 +#define SPECIES_GRAVELER 75 +#define SPECIES_GOLEM 76 +#define SPECIES_PONYTA 77 +#define SPECIES_RAPIDASH 78 +#define SPECIES_SLOWPOKE 79 +#define SPECIES_SLOWBRO 80 +#define SPECIES_MAGNEMITE 81 +#define SPECIES_MAGNETON 82 +#define SPECIES_FARFETCHD 83 +#define SPECIES_DODUO 84 +#define SPECIES_DODRIO 85 +#define SPECIES_SEEL 86 +#define SPECIES_DEWGONG 87 +#define SPECIES_GRIMER 88 +#define SPECIES_MUK 89 +#define SPECIES_SHELLDER 90 +#define SPECIES_CLOYSTER 91 +#define SPECIES_GASTLY 92 +#define SPECIES_HAUNTER 93 +#define SPECIES_GENGAR 94 +#define SPECIES_ONIX 95 +#define SPECIES_DROWZEE 96 +#define SPECIES_HYPNO 97 +#define SPECIES_KRABBY 98 +#define SPECIES_KINGLER 99 +#define SPECIES_VOLTORB 100 +#define SPECIES_ELECTRODE 101 +#define SPECIES_EXEGGCUTE 102 +#define SPECIES_EXEGGUTOR 103 +#define SPECIES_CUBONE 104 +#define SPECIES_MAROWAK 105 +#define SPECIES_HITMONLEE 106 +#define SPECIES_HITMONCHAN 107 +#define SPECIES_LICKITUNG 108 +#define SPECIES_KOFFING 109 +#define SPECIES_WEEZING 110 +#define SPECIES_RHYHORN 111 +#define SPECIES_RHYDON 112 +#define SPECIES_CHANSEY 113 +#define SPECIES_TANGELA 114 +#define SPECIES_KANGASKHAN 115 +#define SPECIES_HORSEA 116 +#define SPECIES_SEADRA 117 +#define SPECIES_GOLDEEN 118 +#define SPECIES_SEAKING 119 +#define SPECIES_STARYU 120 +#define SPECIES_STARMIE 121 +#define SPECIES_MR_MIME 122 +#define SPECIES_SCYTHER 123 +#define SPECIES_JYNX 124 +#define SPECIES_ELECTABUZZ 125 +#define SPECIES_MAGMAR 126 +#define SPECIES_PINSIR 127 +#define SPECIES_TAUROS 128 +#define SPECIES_MAGIKARP 129 +#define SPECIES_GYARADOS 130 +#define SPECIES_LAPRAS 131 +#define SPECIES_DITTO 132 +#define SPECIES_EEVEE 133 +#define SPECIES_VAPOREON 134 +#define SPECIES_JOLTEON 135 +#define SPECIES_FLAREON 136 +#define SPECIES_PORYGON 137 +#define SPECIES_OMANYTE 138 +#define SPECIES_OMASTAR 139 +#define SPECIES_KABUTO 140 +#define SPECIES_KABUTOPS 141 +#define SPECIES_AERODACTYL 142 +#define SPECIES_SNORLAX 143 +#define SPECIES_ARTICUNO 144 +#define SPECIES_ZAPDOS 145 +#define SPECIES_MOLTRES 146 +#define SPECIES_DRATINI 147 +#define SPECIES_DRAGONAIR 148 +#define SPECIES_DRAGONITE 149 +#define SPECIES_MEWTWO 150 +#define SPECIES_MEW 151 +#define SPECIES_CHIKORITA 152 +#define SPECIES_BAYLEEF 153 +#define SPECIES_MEGANIUM 154 +#define SPECIES_CYNDAQUIL 155 +#define SPECIES_QUILAVA 156 +#define SPECIES_TYPHLOSION 157 +#define SPECIES_TOTODILE 158 +#define SPECIES_CROCONAW 159 +#define SPECIES_FERALIGATR 160 +#define SPECIES_SENTRET 161 +#define SPECIES_FURRET 162 +#define SPECIES_HOOTHOOT 163 +#define SPECIES_NOCTOWL 164 +#define SPECIES_LEDYBA 165 +#define SPECIES_LEDIAN 166 +#define SPECIES_SPINARAK 167 +#define SPECIES_ARIADOS 168 +#define SPECIES_CROBAT 169 +#define SPECIES_CHINCHOU 170 +#define SPECIES_LANTURN 171 +#define SPECIES_PICHU 172 +#define SPECIES_CLEFFA 173 +#define SPECIES_IGGLYBUFF 174 +#define SPECIES_TOGEPI 175 +#define SPECIES_TOGETIC 176 +#define SPECIES_NATU 177 +#define SPECIES_XATU 178 +#define SPECIES_MAREEP 179 +#define SPECIES_FLAAFFY 180 +#define SPECIES_AMPHAROS 181 +#define SPECIES_BELLOSSOM 182 +#define SPECIES_MARILL 183 +#define SPECIES_AZUMARILL 184 +#define SPECIES_SUDOWOODO 185 +#define SPECIES_POLITOED 186 +#define SPECIES_HOPPIP 187 +#define SPECIES_SKIPLOOM 188 +#define SPECIES_JUMPLUFF 189 +#define SPECIES_AIPOM 190 +#define SPECIES_SUNKERN 191 +#define SPECIES_SUNFLORA 192 +#define SPECIES_YANMA 193 +#define SPECIES_WOOPER 194 +#define SPECIES_QUAGSIRE 195 +#define SPECIES_ESPEON 196 +#define SPECIES_UMBREON 197 +#define SPECIES_MURKROW 198 +#define SPECIES_SLOWKING 199 +#define SPECIES_MISDREAVUS 200 +#define SPECIES_UNOWN 201 +#define SPECIES_WOBBUFFET 202 +#define SPECIES_GIRAFARIG 203 +#define SPECIES_PINECO 204 +#define SPECIES_FORRETRESS 205 +#define SPECIES_DUNSPARCE 206 +#define SPECIES_GLIGAR 207 +#define SPECIES_STEELIX 208 +#define SPECIES_SNUBBULL 209 +#define SPECIES_GRANBULL 210 +#define SPECIES_QWILFISH 211 +#define SPECIES_SCIZOR 212 +#define SPECIES_SHUCKLE 213 +#define SPECIES_HERACROSS 214 +#define SPECIES_SNEASEL 215 +#define SPECIES_TEDDIURSA 216 +#define SPECIES_URSARING 217 +#define SPECIES_SLUGMA 218 +#define SPECIES_MAGCARGO 219 +#define SPECIES_SWINUB 220 +#define SPECIES_PILOSWINE 221 +#define SPECIES_CORSOLA 222 +#define SPECIES_REMORAID 223 +#define SPECIES_OCTILLERY 224 +#define SPECIES_DELIBIRD 225 +#define SPECIES_MANTINE 226 +#define SPECIES_SKARMORY 227 +#define SPECIES_HOUNDOUR 228 +#define SPECIES_HOUNDOOM 229 +#define SPECIES_KINGDRA 230 +#define SPECIES_PHANPY 231 +#define SPECIES_DONPHAN 232 +#define SPECIES_PORYGON2 233 +#define SPECIES_STANTLER 234 +#define SPECIES_SMEARGLE 235 +#define SPECIES_TYROGUE 236 +#define SPECIES_HITMONTOP 237 +#define SPECIES_SMOOCHUM 238 +#define SPECIES_ELEKID 239 +#define SPECIES_MAGBY 240 +#define SPECIES_MILTANK 241 +#define SPECIES_BLISSEY 242 +#define SPECIES_RAIKOU 243 +#define SPECIES_ENTEI 244 +#define SPECIES_SUICUNE 245 +#define SPECIES_LARVITAR 246 +#define SPECIES_PUPITAR 247 +#define SPECIES_TYRANITAR 248 +#define SPECIES_LUGIA 249 +#define SPECIES_HO_OH 250 +#define SPECIES_CELEBI 251 + +#define SPECIES_OLD_UNOWN_B 252 +#define SPECIES_OLD_UNOWN_C 253 +#define SPECIES_OLD_UNOWN_D 254 +#define SPECIES_OLD_UNOWN_E 255 +#define SPECIES_OLD_UNOWN_F 256 +#define SPECIES_OLD_UNOWN_G 257 +#define SPECIES_OLD_UNOWN_H 258 +#define SPECIES_OLD_UNOWN_I 259 +#define SPECIES_OLD_UNOWN_J 260 +#define SPECIES_OLD_UNOWN_K 261 +#define SPECIES_OLD_UNOWN_L 262 +#define SPECIES_OLD_UNOWN_M 263 +#define SPECIES_OLD_UNOWN_N 264 +#define SPECIES_OLD_UNOWN_O 265 +#define SPECIES_OLD_UNOWN_P 266 +#define SPECIES_OLD_UNOWN_Q 267 +#define SPECIES_OLD_UNOWN_R 268 +#define SPECIES_OLD_UNOWN_S 269 +#define SPECIES_OLD_UNOWN_T 270 +#define SPECIES_OLD_UNOWN_U 271 +#define SPECIES_OLD_UNOWN_V 272 +#define SPECIES_OLD_UNOWN_W 273 +#define SPECIES_OLD_UNOWN_X 274 +#define SPECIES_OLD_UNOWN_Y 275 +#define SPECIES_OLD_UNOWN_Z 276 + +#define SPECIES_TREECKO 277 +#define SPECIES_GROVYLE 278 +#define SPECIES_SCEPTILE 279 +#define SPECIES_TORCHIC 280 +#define SPECIES_COMBUSKEN 281 +#define SPECIES_BLAZIKEN 282 +#define SPECIES_MUDKIP 283 +#define SPECIES_MARSHTOMP 284 +#define SPECIES_SWAMPERT 285 +#define SPECIES_POOCHYENA 286 +#define SPECIES_MIGHTYENA 287 +#define SPECIES_ZIGZAGOON 288 +#define SPECIES_LINOONE 289 +#define SPECIES_WURMPLE 290 +#define SPECIES_SILCOON 291 +#define SPECIES_BEAUTIFLY 292 +#define SPECIES_CASCOON 293 +#define SPECIES_DUSTOX 294 +#define SPECIES_LOTAD 295 +#define SPECIES_LOMBRE 296 +#define SPECIES_LUDICOLO 297 +#define SPECIES_SEEDOT 298 +#define SPECIES_NUZLEAF 299 +#define SPECIES_SHIFTRY 300 +#define SPECIES_NINCADA 301 +#define SPECIES_NINJASK 302 +#define SPECIES_SHEDINJA 303 +#define SPECIES_TAILLOW 304 +#define SPECIES_SWELLOW 305 +#define SPECIES_SHROOMISH 306 +#define SPECIES_BRELOOM 307 +#define SPECIES_SPINDA 308 +#define SPECIES_WINGULL 309 +#define SPECIES_PELIPPER 310 +#define SPECIES_SURSKIT 311 +#define SPECIES_MASQUERAIN 312 +#define SPECIES_WAILMER 313 +#define SPECIES_WAILORD 314 +#define SPECIES_SKITTY 315 +#define SPECIES_DELCATTY 316 +#define SPECIES_KECLEON 317 +#define SPECIES_BALTOY 318 +#define SPECIES_CLAYDOL 319 +#define SPECIES_NOSEPASS 320 +#define SPECIES_TORKOAL 321 +#define SPECIES_SABLEYE 322 +#define SPECIES_BARBOACH 323 +#define SPECIES_WHISCASH 324 +#define SPECIES_LUVDISC 325 +#define SPECIES_CORPHISH 326 +#define SPECIES_CRAWDAUNT 327 +#define SPECIES_FEEBAS 328 +#define SPECIES_MILOTIC 329 +#define SPECIES_CARVANHA 330 +#define SPECIES_SHARPEDO 331 +#define SPECIES_TRAPINCH 332 +#define SPECIES_VIBRAVA 333 +#define SPECIES_FLYGON 334 +#define SPECIES_MAKUHITA 335 +#define SPECIES_HARIYAMA 336 +#define SPECIES_ELECTRIKE 337 +#define SPECIES_MANECTRIC 338 +#define SPECIES_NUMEL 339 +#define SPECIES_CAMERUPT 340 +#define SPECIES_SPHEAL 341 +#define SPECIES_SEALEO 342 +#define SPECIES_WALREIN 343 +#define SPECIES_CACNEA 344 +#define SPECIES_CACTURNE 345 +#define SPECIES_SNORUNT 346 +#define SPECIES_GLALIE 347 +#define SPECIES_LUNATONE 348 +#define SPECIES_SOLROCK 349 +#define SPECIES_AZURILL 350 +#define SPECIES_SPOINK 351 +#define SPECIES_GRUMPIG 352 +#define SPECIES_PLUSLE 353 +#define SPECIES_MINUN 354 +#define SPECIES_MAWILE 355 +#define SPECIES_MEDITITE 356 +#define SPECIES_MEDICHAM 357 +#define SPECIES_SWABLU 358 +#define SPECIES_ALTARIA 359 +#define SPECIES_WYNAUT 360 +#define SPECIES_DUSKULL 361 +#define SPECIES_DUSCLOPS 362 +#define SPECIES_ROSELIA 363 +#define SPECIES_SLAKOTH 364 +#define SPECIES_VIGOROTH 365 +#define SPECIES_SLAKING 366 +#define SPECIES_GULPIN 367 +#define SPECIES_SWALOT 368 +#define SPECIES_TROPIUS 369 +#define SPECIES_WHISMUR 370 +#define SPECIES_LOUDRED 371 +#define SPECIES_EXPLOUD 372 +#define SPECIES_CLAMPERL 373 +#define SPECIES_HUNTAIL 374 +#define SPECIES_GOREBYSS 375 +#define SPECIES_ABSOL 376 +#define SPECIES_SHUPPET 377 +#define SPECIES_BANETTE 378 +#define SPECIES_SEVIPER 379 +#define SPECIES_ZANGOOSE 380 +#define SPECIES_RELICANTH 381 +#define SPECIES_ARON 382 +#define SPECIES_LAIRON 383 +#define SPECIES_AGGRON 384 +#define SPECIES_CASTFORM 385 +#define SPECIES_VOLBEAT 386 +#define SPECIES_ILLUMISE 387 +#define SPECIES_LILEEP 388 +#define SPECIES_CRADILY 389 +#define SPECIES_ANORITH 390 +#define SPECIES_ARMALDO 391 +#define SPECIES_RALTS 392 +#define SPECIES_KIRLIA 393 +#define SPECIES_GARDEVOIR 394 +#define SPECIES_BAGON 395 +#define SPECIES_SHELGON 396 +#define SPECIES_SALAMENCE 397 +#define SPECIES_BELDUM 398 +#define SPECIES_METANG 399 +#define SPECIES_METAGROSS 400 +#define SPECIES_REGIROCK 401 +#define SPECIES_REGICE 402 +#define SPECIES_REGISTEEL 403 +#define SPECIES_KYOGRE 404 +#define SPECIES_GROUDON 405 +#define SPECIES_RAYQUAZA 406 +#define SPECIES_LATIAS 407 +#define SPECIES_LATIOS 408 +#define SPECIES_JIRACHI 409 +#define SPECIES_DEOXYS 410 +#define SPECIES_CHIMECHO 411 +#define SPECIES_EGG 412 + +#define SPECIES_UNOWN_B 413 +#define SPECIES_UNOWN_C 414 +#define SPECIES_UNOWN_D 415 +#define SPECIES_UNOWN_E 416 +#define SPECIES_UNOWN_F 417 +#define SPECIES_UNOWN_G 418 +#define SPECIES_UNOWN_H 419 +#define SPECIES_UNOWN_I 420 +#define SPECIES_UNOWN_J 421 +#define SPECIES_UNOWN_K 422 +#define SPECIES_UNOWN_L 423 +#define SPECIES_UNOWN_M 424 +#define SPECIES_UNOWN_N 425 +#define SPECIES_UNOWN_O 426 +#define SPECIES_UNOWN_P 427 +#define SPECIES_UNOWN_Q 428 +#define SPECIES_UNOWN_R 429 +#define SPECIES_UNOWN_S 430 +#define SPECIES_UNOWN_T 431 +#define SPECIES_UNOWN_U 432 +#define SPECIES_UNOWN_V 433 +#define SPECIES_UNOWN_W 434 +#define SPECIES_UNOWN_X 435 +#define SPECIES_UNOWN_Y 436 +#define SPECIES_UNOWN_Z 437 +#define SPECIES_UNOWN_EMARK 438 +#define SPECIES_UNOWN_QMARK 439 + +#define NUM_SPECIES SPECIES_EGG + +#endif // GUARD_CONSTANTS_SPECIES_H diff --git a/include/constants/vars.h b/include/constants/vars.h new file mode 100644 index 000000000..6828614bf --- /dev/null +++ b/include/constants/vars.h @@ -0,0 +1,285 @@ +#ifndef GUARD_CONSTANTS_VARS_H +#define GUARD_CONSTANTS_VARS_H + +#define VAR_0x3F20 0x3F20 + +#define VAR_0x4000 0x4000 +#define VAR_0x4001 0x4001 +#define VAR_0x4002 0x4002 +#define VAR_0x4003 0x4003 +#define VAR_0x4004 0x4004 +#define VAR_0x4005 0x4005 +#define VAR_0x4006 0x4006 +#define VAR_0x4007 0x4007 +#define VAR_0x4008 0x4008 +#define VAR_0x4009 0x4009 +#define VAR_0x400A 0x400A +#define VAR_0x400B 0x400B +#define VAR_0x400C 0x400C +#define VAR_0x400D 0x400D +#define VAR_0x400E 0x400E +#define VAR_0x400F 0x400F +#define VAR_0x4010 0x4010 +#define VAR_0x4011 0x4011 +#define VAR_0x4012 0x4012 +#define VAR_0x4013 0x4013 +#define VAR_0x4014 0x4014 +#define VAR_0x4015 0x4015 +#define VAR_0x4016 0x4016 +#define VAR_0x4017 0x4017 +#define VAR_0x4018 0x4018 +#define VAR_0x4019 0x4019 +#define VAR_0x401A 0x401A +#define VAR_0x401B 0x401B +#define VAR_0x401C 0x401C +#define VAR_0x401D 0x401D +#define VAR_0x401E 0x401E +#define VAR_0x401F 0x401F +#define VAR_RECYCLE_GOODS 0x4020 +#define VAR_REPEL_STEP_COUNT 0x4021 +#define VAR_ICE_STEP_COUNT 0x4022 +#define VAR_FIRST_POKE 0x4023 +#define VAR_MIRAGE_RND_H 0x4024 +#define VAR_MIRAGE_RND_L 0x4025 +#define VAR_SECRET_BASE_MAP 0x4026 +#define VAR_0x4027 0x4027 +#define VAR_0x4028 0x4028 +#define VAR_0x4029 0x4029 +#define VAR_HAPPINESS_STEP_COUNTER 0x402A +#define VAR_POISON_STEP_COUNTER 0x402B +#define VAR_RESET_RTC_ENABLE 0x402C +#define VAR_0x402D 0x402D +#define VAR_0x402E 0x402E +#define VAR_0x402F 0x402F +#define VAR_0x4030 0x4030 +#define VAR_0x4031 0x4031 +#define VAR_0x4032 0x4032 +#define VAR_0x4033 0x4033 +#define VAR_0x4034 0x4034 +#define VAR_0x4035 0x4035 +#define VAR_STORAGE_UNKNOWN 0x4036 +#define VAR_0x4037 0x4037 +#define VAR_0x4038 0x4038 +#define VAR_0x4039 0x4039 +#define VAR_0x403A 0x403A +#define VAR_0x403B 0x403B +#define VAR_0x403C 0x403C +#define VAR_0x403D 0x403D +#define VAR_ALTERING_CAVE_WILD_SET 0x403E +#define VAR_0x403F 0x403F +#define VAR_DAYS 0x4040 +#define VAR_0x4041 0x4041 +#define VAR_0x4042 0x4042 +#define VAR_DEPT_STORE_FLOOR 0x4043 +#define VAR_0x4044 0x4044 +#define VAR_POKELOT_PRIZE 0x4045 +#define VAR_NATIONAL_DEX 0x4046 +#define VAR_SEEDOT_SIZE_RECORD 0x4047 +#define VAR_ASH_GATHER_COUNT 0x4048 +#define VAR_BIRCH_STATE 0x4049 +#define VAR_CRUISE_STEP_COUNT 0x404A +#define VAR_POKELOT_RND1 0x404B +#define VAR_POKELOT_RND2 0x404C +#define VAR_0x404D 0x404D +#define VAR_0x404E 0x404E +#define VAR_LOTAD_SIZE_RECORD 0x404F +#define VAR_0x4050 0x4050 +#define VAR_0x4051 0x4051 +#define VAR_0x4052 0x4052 +#define VAR_0x4053 0x4053 +#define VAR_0x4054 0x4054 +#define VAR_0x4055 0x4055 +#define VAR_0x4056 0x4056 +#define VAR_0x4057 0x4057 +#define VAR_0x4058 0x4058 +#define VAR_0x4059 0x4059 +#define VAR_0x405A 0x405A +#define VAR_0x405B 0x405B +#define VAR_0x405C 0x405C +#define VAR_0x405D 0x405D +#define VAR_0x405E 0x405E +#define VAR_0x405F 0x405F +#define VAR_0x4060 0x4060 +#define VAR_0x4061 0x4061 +#define VAR_0x4062 0x4062 +#define VAR_0x4063 0x4063 +#define VAR_0x4064 0x4064 +#define VAR_0x4065 0x4065 +#define VAR_0x4066 0x4066 +#define VAR_0x4067 0x4067 +#define VAR_0x4068 0x4068 +#define VAR_0x4069 0x4069 +#define VAR_0x406A 0x406A +#define VAR_0x406B 0x406B +#define VAR_0x406C 0x406C +#define VAR_0x406D 0x406D +#define VAR_0x406E 0x406E +#define VAR_0x406F 0x406F +#define VAR_0x4070 0x4070 +#define VAR_0x4071 0x4071 +#define VAR_0x4072 0x4072 +#define VAR_0x4073 0x4073 +#define VAR_0x4074 0x4074 +#define VAR_0x4075 0x4075 +#define VAR_0x4076 0x4076 +#define VAR_0x4077 0x4077 +#define VAR_0x4078 0x4078 +#define VAR_0x4079 0x4079 +#define VAR_0x407A 0x407A +#define VAR_0x407B 0x407B +#define VAR_0x407C 0x407C +#define VAR_0x407D 0x407D +#define VAR_0x407E 0x407E +#define VAR_0x407F 0x407F +#define VAR_0x4080 0x4080 +#define VAR_0x4081 0x4081 +#define VAR_0x4082 0x4082 +#define VAR_0x4083 0x4083 +#define VAR_0x4084 0x4084 +#define VAR_0x4085 0x4085 +#define VAR_0x4086 0x4086 +#define VAR_0x4087 0x4087 +#define VAR_0x4088 0x4088 +#define VAR_0x4089 0x4089 +#define VAR_0x408A 0x408A +#define VAR_0x408B 0x408B +#define VAR_0x408C 0x408C +#define VAR_0x408D 0x408D +#define VAR_0x408E 0x408E +#define VAR_0x408F 0x408F +#define VAR_0x4090 0x4090 +#define VAR_0x4091 0x4091 +#define VAR_0x4092 0x4092 +#define VAR_0x4093 0x4093 +#define VAR_0x4094 0x4094 +#define VAR_0x4095 0x4095 +#define VAR_0x4096 0x4096 +#define VAR_0x4097 0x4097 +#define VAR_0x4098 0x4098 +#define VAR_0x4099 0x4099 +#define VAR_0x409A 0x409A +#define VAR_0x409B 0x409B +#define VAR_0x409C 0x409C +#define VAR_0x409D 0x409D +#define VAR_0x409E 0x409E +#define VAR_0x409F 0x409F +#define VAR_0x40A0 0x40A0 +#define VAR_0x40A1 0x40A1 +#define VAR_0x40A2 0x40A2 +#define VAR_0x40A3 0x40A3 +#define VAR_0x40A4 0x40A4 +#define VAR_0x40A5 0x40A5 +#define VAR_0x40A6 0x40A6 +#define VAR_0x40A7 0x40A7 +#define VAR_0x40A8 0x40A8 +#define VAR_0x40A9 0x40A9 +#define VAR_0x40AA 0x40AA +#define VAR_0x40AB 0x40AB +#define VAR_0x40AC 0x40AC +#define VAR_0x40AD 0x40AD +#define VAR_0x40AE 0x40AE +#define VAR_0x40AF 0x40AF +#define VAR_0x40B0 0x40B0 +#define VAR_0x40B1 0x40B1 +#define VAR_0x40B2 0x40B2 +#define VAR_0x40B3 0x40B3 +#define VAR_PORTHOLE 0x40B4 +#define VAR_0x40B5 0x40B5 +#define VAR_0x40B6 0x40B6 +#define VAR_0x40B7 0x40B7 +#define VAR_0x40B8 0x40B8 +#define VAR_0x40B9 0x40B9 +#define VAR_0x40BA 0x40BA +#define VAR_0x40BB 0x40BB +#define VAR_0x40BC 0x40BC +#define VAR_0x40BD 0x40BD +#define VAR_0x40BE 0x40BE +#define VAR_0x40BF 0x40BF +#define VAR_0x40C0 0x40C0 +#define VAR_0x40C1 0x40C1 +#define VAR_0x40C2 0x40C2 +#define VAR_0x40C3 0x40C3 +#define VAR_0x40C4 0x40C4 +#define VAR_0x40C5 0x40C5 +#define VAR_0x40C6 0x40C6 +#define VAR_0x40C7 0x40C7 +#define VAR_0x40C8 0x40C8 +#define VAR_0x40C9 0x40C9 +#define VAR_0x40CA 0x40CA +#define VAR_0x40CB 0x40CB +#define VAR_0x40CC 0x40CC +#define VAR_0x40CD 0x40CD +#define VAR_0x40CE 0x40CE +#define VAR_FRONTIER_FACILITY 0x40CF +#define VAR_0x40D0 0x40D0 +#define VAR_0x40D1 0x40D1 +#define VAR_0x40D2 0x40D2 +#define VAR_0x40D3 0x40D3 +#define VAR_0x40D4 0x40D4 +#define VAR_0x40D5 0x40D5 +#define VAR_0x40D6 0x40D6 +#define VAR_0x40D7 0x40D7 +#define VAR_0x40D8 0x40D8 +#define VAR_0x40D9 0x40D9 +#define VAR_0x40DA 0x40DA +#define VAR_0x40DB 0x40DB +#define VAR_0x40DC 0x40DC +#define VAR_0x40DD 0x40DD +#define VAR_0x40DE 0x40DE +#define VAR_0x40DF 0x40DF +#define VAR_0x40E0 0x40E0 +#define VAR_0x40E1 0x40E1 +#define VAR_0x40E2 0x40E2 +#define VAR_0x40E3 0x40E3 +#define VAR_0x40E4 0x40E4 +#define VAR_0x40E5 0x40E5 +#define VAR_DAILY_SLOTS 0x40E6 +#define VAR_DAILY_WILDS 0x40E7 +#define VAR_DAILY_BLENDER 0x40E8 +#define VAR_DAILY_PLANTED_BERRIES 0x40E9 +#define VAR_DAILY_PICKED_BERRIES 0x40EA +#define VAR_DAILY_ROULETTE 0x40EB +#define VAR_0x40EC 0x40EC +#define VAR_0x40ED 0x40ED +#define VAR_0x40EE 0x40EE +#define VAR_0x40EF 0x40EF +#define VAR_0x40F0 0x40F0 +#define VAR_DAILY_BP 0x40F1 +#define VAR_0x40F2 0x40F2 +#define VAR_0x40F3 0x40F3 +#define VAR_0x40F4 0x40F4 +#define VAR_0x40F5 0x40F5 +#define VAR_0x40F6 0x40F6 +#define VAR_0x40F7 0x40F7 +#define VAR_0x40F8 0x40F8 +#define VAR_0x40F9 0x40F9 +#define VAR_0x40FA 0x40FA +#define VAR_0x40FB 0x40FB +#define VAR_0x40FC 0x40FC +#define VAR_0x40FD 0x40FD +#define VAR_0x40FE 0x40FE +#define VAR_0x40FF 0x40FF + +#define VAR_0x8000 0x8000 +#define VAR_0x8001 0x8001 +#define VAR_0x8002 0x8002 +#define VAR_0x8003 0x8003 +#define VAR_0x8004 0x8004 +#define VAR_0x8005 0x8005 +#define VAR_0x8006 0x8006 +#define VAR_0x8007 0x8007 +#define VAR_0x8008 0x8008 +#define VAR_0x8009 0x8009 +#define VAR_0x800A 0x800A +#define VAR_0x800B 0x800B +#define VAR_FACING 0x800C +#define VAR_RESULT 0x800D +#define VAR_ITEM_ID 0x800E +#define VAR_LAST_TALKED 0x800F +#define VAR_CONTEST_RANK 0x8010 +#define VAR_CONTEST_CATEGORY 0x8011 +#define VAR_MON_BOX_ID 0x8012 +#define VAR_MON_BOX_POS 0x8013 +#define VAR_0x8014 0x8014 + +#endif // GUARD_CONSTANTS_VARS_H diff --git a/include/data/bard_music/pokemon.h b/include/data/bard_music/pokemon.h index 7b4081a3c..693005360 100644 --- a/include/data/bard_music/pokemon.h +++ b/include/data/bard_music/pokemon.h @@ -1,6 +1,6 @@ #ifndef GUARD_DATA_BARD_MUSIC_POKEMON_H #define GUARD_DATA_BARD_MUSIC_POKEMON_H -#include "species.h" +#include "constants/species.h" const u16 gUnknown_085F5490 = NUM_SPECIES; diff --git a/include/decoration.h b/include/decoration.h index ead621c5f..c841bbfc1 100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -1,130 +1,6 @@ #ifndef GUARD_DECORATION_H #define GUARD_DECORATION_H -enum DecoId { - /*000*/ DECOR_NONE, - /*001*/ DECOR_SMALL_DESK, - /*002*/ DECOR_POKEMON_DESK, - /*003*/ DECOR_HEAVY_DESK, - /*004*/ DECOR_RAGGED_DESK, - /*005*/ DECOR_COMFORT_DESK, - /*006*/ DECOR_PRETTY_DESK, - /*007*/ DECOR_BRICK_DESK, - /*008*/ DECOR_CAMP_DESK, - /*009*/ DECOR_HARD_DESK, - /*010*/ DECOR_SMALL_CHAIR, - /*011*/ DECOR_POKEMON_CHAIR, - /*012*/ DECOR_HEAVY_CHAIR, - /*013*/ DECOR_PRETTY_CHAIR, - /*014*/ DECOR_COMFORT_CHAIR, - /*015*/ DECOR_RAGGED_CHAIR, - /*016*/ DECOR_BRICK_CHAIR, - /*017*/ DECOR_CAMP_CHAIR, - /*018*/ DECOR_HARD_CHAIR, - /*019*/ DECOR_RED_PLANT, - /*020*/ DECOR_TROPICAL_PLANT, - /*021*/ DECOR_PRETTY_FLOWERS, - /*022*/ DECOR_COLORFUL_PLANT, - /*023*/ DECOR_BIG_PLANT, - /*024*/ DECOR_GORGEOUS_PLANT, - /*025*/ DECOR_RED_BRICK, - /*026*/ DECOR_YELLOW_BRICK, - /*027*/ DECOR_BLUE_BRICK, - /*028*/ DECOR_RED_BALLOON, - /*029*/ DECOR_BLUE_BALLOON, - /*030*/ DECOR_YELLOW_BALLOON, - /*031*/ DECOR_RED_TENT, - /*032*/ DECOR_BLUE_TENT, - /*033*/ DECOR_SOLID_BOARD, - /*034*/ DECOR_SLIDE, - /*035*/ DECOR_FENCE_LENGTH, - /*036*/ DECOR_FENCE_WIDTH, - /*037*/ DECOR_TIRE, - /*038*/ DECOR_STAND, - /*039*/ DECOR_MUD_BALL, - /*040*/ DECOR_BREAKABLE_DOOR, - /*041*/ DECOR_SAND_ORNAMENT, - /*042*/ DECOR_SILVER_SHIELD, - /*043*/ DECOR_GOLD_SHIELD, - /*044*/ DECOR_GLASS_ORNAMENT, - /*045*/ DECOR_TV, - /*046*/ DECOR_ROUND_TV, - /*047*/ DECOR_CUTE_TV, - /*048*/ DECOR_GLITTER_MAT, - /*049*/ DECOR_JUMP_MAT, - /*050*/ DECOR_SPIN_MAT, - /*051*/ DECOR_C_LOW_NOTE_MAT, - /*052*/ DECOR_D_NOTE_MAT, - /*053*/ DECOR_E_NOTE_MAT, - /*054*/ DECOR_F_NOTE_MAT, - /*055*/ DECOR_G_NOTE_MAT, - /*056*/ DECOR_A_NOTE_MAT, - /*057*/ DECOR_B_NOTE_MAT, - /*058*/ DECOR_C_HIGH_NOTE_MAT, - /*059*/ DECOR_SURF_MAT, - /*060*/ DECOR_THUNDER_MAT, - /*061*/ DECOR_FIRE_BLAST_MAT, - /*062*/ DECOR_POWDER_SNOW_MAT, - /*063*/ DECOR_ATTRACT_MAT, - /*064*/ DECOR_FISSURE_MAT, - /*065*/ DECOR_SPIKES_MAT, - /*066*/ DECOR_BALL_POSTER, - /*067*/ DECOR_GREEN_POSTER, - /*068*/ DECOR_RED_POSTER, - /*069*/ DECOR_BLUE_POSTER, - /*070*/ DECOR_CUTE_POSTER, - /*071*/ DECOR_PIKA_POSTER, - /*072*/ DECOR_LONG_POSTER, - /*073*/ DECOR_SEA_POSTER, - /*074*/ DECOR_SKY_POSTER, - /*075*/ DECOR_KISS_POSTER, - /*076*/ DECOR_PICHU_DOLL, - /*077*/ DECOR_PIKACHU_DOLL, - /*078*/ DECOR_MARILL_DOLL, - /*079*/ DECOR_TOGEPI_DOLL, - /*080*/ DECOR_CYNDAQUIL_DOLL, - /*081*/ DECOR_CHIKORITA_DOLL, - /*082*/ DECOR_TOTODILE_DOLL, - /*083*/ DECOR_JIGGLYPUFF_DOLL, - /*084*/ DECOR_MEOWTH_DOLL, - /*085*/ DECOR_CLEFAIRY_DOLL, - /*086*/ DECOR_DITTO_DOLL, - /*087*/ DECOR_SMOOCHUM_DOLL, - /*088*/ DECOR_TREECKO_DOLL, - /*089*/ DECOR_TORCHIC_DOLL, - /*090*/ DECOR_MUDKIP_DOLL, - /*091*/ DECOR_DUSKULL_DOLL, - /*092*/ DECOR_WYNAUT_DOLL, - /*093*/ DECOR_BALTOY_DOLL, - /*094*/ DECOR_KECLEON_DOLL, - /*095*/ DECOR_AZURILL_DOLL, - /*096*/ DECOR_SKITTY_DOLL, - /*097*/ DECOR_SWABLU_DOLL, - /*098*/ DECOR_GULPIN_DOLL, - /*099*/ DECOR_LOTAD_DOLL, - /*100*/ DECOR_SEEDOT_DOLL, - /*101*/ DECOR_PIKA_CUSHION, - /*102*/ DECOR_ROUND_CUSHION, - /*103*/ DECOR_KISS_CUSHION, - /*104*/ DECOR_ZIGZAG_CUSHION, - /*105*/ DECOR_SPIN_CUSHION, - /*106*/ DECOR_DIAMOND_CUSHION, - /*107*/ DECOR_BALL_CUSHION, - /*108*/ DECOR_GRASS_CUSHION, - /*109*/ DECOR_FIRE_CUSHION, - /*110*/ DECOR_WATER_CUSHION, - /*111*/ DECOR_SNORLAX_DOLL, - /*112*/ DECOR_RHYDON_DOLL, - /*113*/ DECOR_LAPRAS_DOLL, - /*114*/ DECOR_VENUSAUR_DOLL, - /*115*/ DECOR_CHARIZARD_DOLL, - /*116*/ DECOR_BLASTOISE_DOLL, - /*117*/ DECOR_WAILMER_DOLL, - /*118*/ DECOR_REGIROCK_DOLL, - /*119*/ DECOR_REGICE_DOLL, - /*120*/ DECOR_REGISTEEL_DOLL -}; - enum DecorPerm { /* * The nomenclature here describes collision and placement permissions, in that order. diff --git a/include/event_data.h b/include/event_data.h index f0ab90ae4..f829d3b87 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -1,8 +1,8 @@ #ifndef GUARD_EVENT_DATA_H #define GUARD_EVENT_DATA_H -#include "flags.h" -#include "vars.h" +#include "constants/flags.h" +#include "constants/vars.h" void InitEventData(void); void ClearTempFieldEventData(void); diff --git a/include/field_poison.h b/include/field_poison.h new file mode 100644 index 000000000..d1a4c823b --- /dev/null +++ b/include/field_poison.h @@ -0,0 +1,19 @@ +#ifndef GUARD_FIELD_POISON_H +#define GUARD_FIELD_POISON_H + +// Exported type declarations + +// Exported RAM declarations + +// Exported ROM declarations + +enum { + FLDPSN_NONE, + FLDPSN_PSN, + FLDPSN_FNT +}; + +void sub_80F972C(void); +unsigned int overworld_poison(void); + +#endif //GUARD_FIELD_POISON_H diff --git a/include/flags.h b/include/flags.h deleted file mode 100644 index 31d634c59..000000000 --- a/include/flags.h +++ /dev/null @@ -1,119 +0,0 @@ -#ifndef GUARD_FLAGS_H -#define GUARD_FLAGS_H - -#define FLAG_340 0x340 -#define FLAG_LEGENDARIES_IN_SOOTOPOLIS 0x53 -#define FLAG_PENDING_DAYCARE_EGG 0x86 - -#define FLAG_TRAINER_FLAG_START 0x500 - -#define TRAINERS_FLAG_NO 0x356 -#define CODE_FLAGS (FLAG_TRAINER_FLAG_START + TRAINERS_FLAG_NO + 0xA) // 0x860 - -// SYSTEM FLAGS - -#define FLAG_SYS_POKEMON_GET (CODE_FLAGS + 0) -#define FLAG_SYS_POKEDEX_GET (CODE_FLAGS + 1) -#define FLAG_SYS_POKENAV_GET (CODE_FLAGS + 2) -// third one appears unused -#define FLAG_SYS_GAME_CLEAR (CODE_FLAGS + 4) -#define FLAG_SYS_CHAT_USED (CODE_FLAGS + 5) -#define FLAG_SYS_HIPSTER_MEET (CODE_FLAGS + 6) - -// badges -#define FLAG_BADGE01_GET (CODE_FLAGS + 7) -#define FLAG_BADGE02_GET (CODE_FLAGS + 8) -#define FLAG_BADGE03_GET (CODE_FLAGS + 9) -#define FLAG_BADGE04_GET (CODE_FLAGS + 0xA) -#define FLAG_BADGE05_GET (CODE_FLAGS + 0xB) -#define FLAG_BADGE06_GET (CODE_FLAGS + 0xC) -#define FLAG_BADGE07_GET (CODE_FLAGS + 0xD) -#define FLAG_BADGE08_GET (CODE_FLAGS + 0xE) - -// cities and towns -#define FLAG_VISITED_LITTLEROOT_TOWN (CODE_FLAGS + 0xF) -#define FLAG_VISITED_OLDALE_TOWN (CODE_FLAGS + 0x10) -#define FLAG_VISITED_DEWFORD_TOWN (CODE_FLAGS + 0x11) -#define FLAG_VISITED_LAVARIDGE_TOWN (CODE_FLAGS + 0x12) -#define FLAG_VISITED_FALLARBOR_TOWN (CODE_FLAGS + 0x13) -#define FLAG_VISITED_VERDANTURF_TOWN (CODE_FLAGS + 0x14) -#define FLAG_VISITED_PACIFIDLOG_TOWN (CODE_FLAGS + 0x15) -#define FLAG_VISITED_PETALBURG_CITY (CODE_FLAGS + 0x16) -#define FLAG_VISITED_SLATEPORT_CITY (CODE_FLAGS + 0x17) -#define FLAG_VISITED_MAUVILLE_CITY (CODE_FLAGS + 0x18) -#define FLAG_VISITED_RUSTBORO_CITY (CODE_FLAGS + 0x19) -#define FLAG_VISITED_FORTREE_CITY (CODE_FLAGS + 0x1A) -#define FLAG_VISITED_LILYCOVE_CITY (CODE_FLAGS + 0x1B) -#define FLAG_VISITED_MOSSDEEP_CITY (CODE_FLAGS + 0x1C) -#define FLAG_VISITED_SOOTOPOLIS_CITY (CODE_FLAGS + 0x1D) -#define FLAG_VISITED_EVER_GRANDE_CITY (CODE_FLAGS + 0x1E) - -#define FLAG_SYS_UNKNOWN_880 (CODE_FLAGS + 0x20) - -#define FLAG_SYS_USE_FLASH (CODE_FLAGS + 0x28) -#define FLAG_SYS_USE_STRENGTH (CODE_FLAGS + 0x29) -#define FLAG_SYS_WEATHER_CTRL (CODE_FLAGS + 0x2A) -#define FLAG_SYS_CYCLING_ROAD (CODE_FLAGS + 0x2B) -#define FLAG_SYS_SAFARI_MODE (CODE_FLAGS + 0x2C) -#define FLAG_SYS_CRUISE_MODE (CODE_FLAGS + 0x2D) - -#define FLAG_SYS_TV_HOME (CODE_FLAGS + 0x30) -#define FLAG_SYS_TV_WATCH (CODE_FLAGS + 0x31) -#define FLAG_SYS_TV_START (CODE_FLAGS + 0x32) -#define FLAG_SYS_POPWORD_INPUT (CODE_FLAGS + 0x33) -#define FLAG_SYS_MIX_RECORD (CODE_FLAGS + 0x34) -#define FLAG_SYS_CLOCK_SET (CODE_FLAGS + 0x35) -#define FLAG_SYS_NATIONAL_DEX (CODE_FLAGS + 0x36) -#define FLAG_SYS_CAVE_SHIP (CODE_FLAGS + 0x37) -#define FLAG_SYS_CAVE_WONDER (CODE_FLAGS + 0x38) -#define FLAG_SYS_CAVE_BATTLE (CODE_FLAGS + 0x39) -#define FLAG_SYS_SHOAL_TIDE (CODE_FLAGS + 0x3A) -#define FLAG_SYS_RIBBON_GET (CODE_FLAGS + 0x3B) - -#define FLAG_UNLOCK_BATTLE_FRONTIER (CODE_FLAGS + 0x48) -#define FLAG_UNLOCK_SOUTHERN_ISLAND (CODE_FLAGS + 0x49) - -#define FLAG_SYS_PC_LANETTE (CODE_FLAGS + 0x4B) -#define FLAG_SYS_MYSTERY_EVENT_ENABLE (CODE_FLAGS + 0x4C) -#define FLAG_SYS_ENC_UP_ITEM (CODE_FLAGS + 0x4D) -#define FLAG_SYS_ENC_DOWN_ITEM (CODE_FLAGS + 0x4E) -#define FLAG_SYS_BRAILLE_DIG (CODE_FLAGS + 0x4F) -#define FLAG_SYS_BRAILLE_STRENGTH (CODE_FLAGS + 0x50) -#define FLAG_SYS_BRAILLE_WAIT (CODE_FLAGS + 0x51) -#define FLAG_SYS_BRAILLE_FLY (CODE_FLAGS + 0x52) -#define FLAG_SYS_HAS_EON_TICKET (CODE_FLAGS + 0x53) - -#define FLAG_SYS_POKEMON_LEAGUE_FLY (CODE_FLAGS + 0x54) - -#define FLAG_SYS_TV_LATI (CODE_FLAGS + 0x5D) - -#define FLAG_SYS_SHOAL_ITEM (CODE_FLAGS + 0x5F) -#define FLAG_SYS_B_DASH (CODE_FLAGS + 0x60) // got Running Shoes -#define FLAG_SYS_CTRL_OBJ_DELETE (CODE_FLAGS + 0x61) -#define FLAG_SYS_RESET_RTC_ENABLE (CODE_FLAGS + 0x62) - -#define FLAG_SYS_TOWER_SILVER (CODE_FLAGS + 0x64) -#define FLAG_SYS_TOWER_GOLD (CODE_FLAGS + 0x65) -#define FLAG_SYS_DOME_SILVER (CODE_FLAGS + 0x66) -#define FLAG_SYS_DOME_GOLD (CODE_FLAGS + 0x67) -#define FLAG_SYS_PALACE_SILVER (CODE_FLAGS + 0x68) -#define FLAG_SYS_PALACE_GOLD (CODE_FLAGS + 0x69) -#define FLAG_SYS_ARENA_SILVER (CODE_FLAGS + 0x6A) -#define FLAG_SYS_ARENA_GOLD (CODE_FLAGS + 0x6B) -#define FLAG_SYS_FACTORY_SILVER (CODE_FLAGS + 0x6C) -#define FLAG_SYS_FACTORY_GOLD (CODE_FLAGS + 0x6D) -#define FLAG_SYS_PIKE_SILVER (CODE_FLAGS + 0x6E) -#define FLAG_SYS_PIKE_GOLD (CODE_FLAGS + 0x6F) -#define FLAG_SYS_PYRAMID_SILVER (CODE_FLAGS + 0x70) -#define FLAG_SYS_PYRAMID_GOLD (CODE_FLAGS + 0x71) -#define FLAG_SYS_FRONTIER_PASS (CODE_FLAGS + 0x72) - -#define FLAG_SYS_STORAGE_UNKNOWN_FLAG (CODE_FLAGS + 0x77) - -#define FLAG_SYS_MYSTERY_GIFT_ENABLE (CODE_FLAGS + 0x7B) - -// SPECIAL FLAGS (unknown purpose) - -#define SPECIAL_FLAG_1 0x4001 - -#endif // GUARD_FLAGS_H diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h index ecce04943..d57665c68 100644 --- a/include/fldeff_80F9BCC.h +++ b/include/fldeff_80F9BCC.h @@ -9,5 +9,6 @@ void sub_80FA5E4(s16 id, s16 x, s16 y); void sub_80FA794(s16 x, s16 y); +void overworld_poison_effect(void); #endif //GUARD_FLDEFF_80F9BCC_H diff --git a/include/global.h b/include/global.h index 25fecdc52..0f486c235 100644 --- a/include/global.h +++ b/include/global.h @@ -288,7 +288,7 @@ struct SecretBaseRecord /*0x1B34*/ u8 partyEVs[6]; }; -#include "game_stat.h" +#include "constants/game_stat.h" #include "global.fieldmap.h" #include "global.berry.h" #include "global.tv.h" diff --git a/include/graphics.h b/include/graphics.h index 4c5a0952b..4a522a429 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -5,6 +5,32 @@ #ifndef GUARD_GRAPHICS_H #define GUARD_GRAPHICS_H +extern const u8 gInterfaceGfx_PokeBall[]; +extern const u8 gInterfacePal_PokeBall[]; +extern const u8 gInterfaceGfx_GreatBall[]; +extern const u8 gInterfacePal_GreatBall[]; +extern const u8 gInterfaceGfx_SafariBall[]; +extern const u8 gInterfacePal_SafariBall[]; +extern const u8 gInterfaceGfx_UltraBall[]; +extern const u8 gInterfacePal_UltraBall[]; +extern const u8 gInterfaceGfx_MasterBall[]; +extern const u8 gInterfacePal_MasterBall[]; +extern const u8 gInterfaceGfx_NetBall[]; +extern const u8 gInterfacePal_NetBall[]; +extern const u8 gInterfaceGfx_DiveBall[]; +extern const u8 gInterfacePal_DiveBall[]; +extern const u8 gInterfaceGfx_NestBall[]; +extern const u8 gInterfacePal_NestBall[]; +extern const u8 gInterfaceGfx_RepeatBall[]; +extern const u8 gInterfacePal_RepeatBall[]; +extern const u8 gInterfaceGfx_TimerBall[]; +extern const u8 gInterfacePal_TimerBall[]; +extern const u8 gInterfaceGfx_LuxuryBall[]; +extern const u8 gInterfacePal_LuxuryBall[]; +extern const u8 gInterfaceGfx_PremierBall[]; +extern const u8 gInterfacePal_PremierBall[]; +extern const u8 gOpenPokeballGfx[]; + extern const u8 gItemIcon_QuestionMark[]; extern const u8 gItemIconPalette_QuestionMark[]; extern const u8 gUnknown_08DB7AA0[]; diff --git a/include/items.h b/include/items.h deleted file mode 100644 index 1a6df42db..000000000 --- a/include/items.h +++ /dev/null @@ -1,396 +0,0 @@ -#ifndef GUARD_ITEMS_H -#define GUARD_ITEMS_H - -enum -{ - ITEM_NONE, // 0x000 - ITEM_MASTER_BALL, // 0x001 - ITEM_ULTRA_BALL, // 0x002 - ITEM_GREAT_BALL, // 0x003 - ITEM_POKE_BALL, // 0x004 - ITEM_SAFARI_BALL, // 0x005 - ITEM_NET_BALL, // 0x006 - ITEM_DIVE_BALL, // 0x007 - ITEM_NEST_BALL, // 0x008 - ITEM_REPEAT_BALL, // 0x009 - ITEM_TIMER_BALL, // 0x00a - ITEM_LUXURY_BALL, // 0x00b - ITEM_PREMIER_BALL, // 0x00c - ITEM_POTION, // 0x00d - ITEM_ANTIDOTE, // 0x00e - ITEM_BURN_HEAL, // 0x00f - ITEM_ICE_HEAL, // 0x010 - ITEM_AWAKENING, // 0x011 - ITEM_PARALYZE_HEAL, // 0x012 - ITEM_FULL_RESTORE, // 0x013 - ITEM_MAX_POTION, // 0x014 - ITEM_HYPER_POTION, // 0x015 - ITEM_SUPER_POTION, // 0x016 - ITEM_FULL_HEAL, // 0x017 - ITEM_REVIVE, // 0x018 - ITEM_MAX_REVIVE, // 0x019 - ITEM_FRESH_WATER, // 0x01a - ITEM_SODA_POP, // 0x01b - ITEM_LEMONADE, // 0x01c - ITEM_MOOMOO_MILK, // 0x01d - ITEM_ENERGY_POWDER, // 0x01e - ITEM_ENERGY_ROOT, // 0x01f - ITEM_HEAL_POWDER, // 0x020 - ITEM_REVIVAL_HERB, // 0x021 - ITEM_ETHER, // 0x022 - ITEM_MAX_ETHER, // 0x023 - ITEM_ELIXIR, // 0x024 - ITEM_MAX_ELIXIR, // 0x025 - ITEM_LAVA_COOKIE, // 0x026 - ITEM_BLUE_FLUTE, // 0x027 - ITEM_YELLOW_FLUTE, // 0x028 - ITEM_RED_FLUTE, // 0x029 - ITEM_BLACK_FLUTE, // 0x02a - ITEM_WHITE_FLUTE, // 0x02b - ITEM_BERRY_JUICE, // 0x02c - ITEM_SACRED_ASH, // 0x02d - ITEM_SHOAL_SALT, // 0x02e - ITEM_SHOAL_SHELL, // 0x02f - ITEM_RED_SHARD, // 0x030 - ITEM_BLUE_SHARD, // 0x031 - ITEM_YELLOW_SHARD, // 0x032 - ITEM_GREEN_SHARD, // 0x033 - ITEM_034, - ITEM_035, - ITEM_036, - ITEM_037, - ITEM_038, - ITEM_039, - ITEM_03A, - ITEM_03B, - ITEM_03C, - ITEM_03D, - ITEM_03E, - ITEM_HP_UP, // 0x03f - ITEM_PROTEIN, // 0x040 - ITEM_IRON, // 0x041 - ITEM_CARBOS, // 0x042 - ITEM_CALCIUM, // 0x043 - ITEM_RARE_CANDY, // 0x044 - ITEM_PP_UP, // 0x045 - ITEM_ZINC, // 0x046 - ITEM_PP_MAX, // 0x047 - ITEM_048, - ITEM_GUARD_SPEC, // 0x049 - ITEM_DIRE_HIT, // 0x04a - ITEM_X_ATTACK, // 0x04b - ITEM_X_DEFEND, // 0x04c - ITEM_X_SPEED, // 0x04d - ITEM_X_ACCURACY, // 0x04e - ITEM_X_SPECIAL, // 0x04f - ITEM_POKE_DOLL, // 0x050 - ITEM_FLUFFY_TAIL, // 0x051 - ITEM_052, - ITEM_SUPER_REPEL, // 0x053 - ITEM_MAX_REPEL, // 0x054 - ITEM_ESCAPE_ROPE, // 0x055 - ITEM_REPEL, // 0x056 - ITEM_057, - ITEM_058, - ITEM_059, - ITEM_05A, - ITEM_05B, - ITEM_05C, - ITEM_SUN_STONE, // 0x05d - ITEM_MOON_STONE, // 0x05e - ITEM_FIRE_STONE, // 0x05f - ITEM_THUNDER_STONE, // 0x060 - ITEM_WATER_STONE, // 0x061 - ITEM_LEAF_STONE, // 0x062 - ITEM_063, - ITEM_064, - ITEM_065, - ITEM_066, - ITEM_TINY_MUSHROOM, // 0x067 - ITEM_BIG_MUSHROOM, // 0x068 - ITEM_069, - ITEM_PEARL, // 0x06a - ITEM_BIG_PEARL, // 0x06b - ITEM_STARDUST, // 0x06c - ITEM_STAR_PIECE, // 0x06d - ITEM_NUGGET, // 0x06e - ITEM_HEART_SCALE, // 0x06f - ITEM_070, - ITEM_071, - ITEM_072, - ITEM_073, - ITEM_074, - ITEM_075, - ITEM_076, - ITEM_077, - ITEM_078, - ITEM_ORANGE_MAIL, // 0x079 - ITEM_HARBOR_MAIL, // 0x07a - ITEM_GLITTER_MAIL, // 0x07b - ITEM_MECH_MAIL, // 0x07c - ITEM_WOOD_MAIL, // 0x07d - ITEM_WAVE_MAIL, // 0x07e - ITEM_BEAD_MAIL, // 0x07f - ITEM_SHADOW_MAIL, // 0x080 - ITEM_TROPIC_MAIL, // 0x081 - ITEM_DREAM_MAIL, // 0x082 - ITEM_FAB_MAIL, // 0x083 - ITEM_RETRO_MAIL, // 0x084 - ITEM_CHERI_BERRY, // 0x085 - ITEM_CHESTO_BERRY, // 0x086 - ITEM_PECHA_BERRY, // 0x087 - ITEM_RAWST_BERRY, // 0x088 - ITEM_ASPEAR_BERRY, // 0x089 - ITEM_LEPPA_BERRY, // 0x08a - ITEM_ORAN_BERRY, // 0x08b - ITEM_PERSIM_BERRY, // 0x08c - ITEM_LUM_BERRY, // 0x08d - ITEM_SITRUS_BERRY, // 0x08e - ITEM_FIGY_BERRY, // 0x08f - ITEM_WIKI_BERRY, // 0x090 - ITEM_MAGO_BERRY, // 0x091 - ITEM_AGUAV_BERRY, // 0x092 - ITEM_IAPAPA_BERRY, // 0x093 - ITEM_RAZZ_BERRY, // 0x094 - ITEM_BLUK_BERRY, // 0x095 - ITEM_NANAB_BERRY, // 0x096 - ITEM_WEPEAR_BERRY, // 0x097 - ITEM_PINAP_BERRY, // 0x098 - ITEM_POMEG_BERRY, // 0x099 - ITEM_KELPSY_BERRY, // 0x09a - ITEM_QUALOT_BERRY, // 0x09b - ITEM_HONDEW_BERRY, // 0x09c - ITEM_GREPA_BERRY, // 0x09d - ITEM_TAMATO_BERRY, // 0x09e - ITEM_CORNN_BERRY, // 0x09f - ITEM_MAGOST_BERRY, // 0x0a0 - ITEM_RABUTA_BERRY, // 0x0a1 - ITEM_NOMEL_BERRY, // 0x0a2 - ITEM_SPELON_BERRY, // 0x0a3 - ITEM_PAMTRE_BERRY, // 0x0a4 - ITEM_WATMEL_BERRY, // 0x0a5 - ITEM_DURIN_BERRY, // 0x0a6 - ITEM_BELUE_BERRY, // 0x0a7 - ITEM_LIECHI_BERRY, // 0x0a8 - ITEM_GANLON_BERRY, // 0x0a9 - ITEM_SALAC_BERRY, // 0x0aa - ITEM_PETAYA_BERRY, // 0x0ab - ITEM_APICOT_BERRY, // 0x0ac - ITEM_LANSAT_BERRY, // 0x0ad - ITEM_STARF_BERRY, // 0x0ae - ITEM_ENIGMA_BERRY, // 0x0af - ITEM_0B0, - ITEM_0B1, - ITEM_0B2, - ITEM_BRIGHT_POWDER, // 0x0b3 - ITEM_WHITE_HERB, // 0x0b4 - ITEM_MACHO_BRACE, // 0x0b5 - ITEM_EXP_SHARE, // 0x0b6 - ITEM_QUICK_CLAW, // 0x0b7 - ITEM_SOOTHE_BELL, // 0x0b8 - ITEM_MENTAL_HERB, // 0x0b9 - ITEM_CHOICE_BAND, // 0x0ba - ITEM_KINGS_ROCK, // 0x0bb - ITEM_SILVER_POWDER, // 0x0bc - ITEM_AMULET_COIN, // 0x0bd - ITEM_CLEANSE_TAG, // 0x0be - ITEM_SOUL_DEW, // 0x0bf - ITEM_DEEP_SEA_TOOTH, // 0x0c0 - ITEM_DEEP_SEA_SCALE, // 0x0c1 - ITEM_SMOKE_BALL, // 0x0c2 - ITEM_EVERSTONE, // 0x0c3 - ITEM_FOCUS_BAND, // 0x0c4 - ITEM_LUCKY_EGG, // 0x0c5 - ITEM_SCOPE_LENS, // 0x0c6 - ITEM_METAL_COAT, // 0x0c7 - ITEM_LEFTOVERS, // 0x0c8 - ITEM_DRAGON_SCALE, // 0x0c9 - ITEM_LIGHT_BALL, // 0x0ca - ITEM_SOFT_SAND, // 0x0cb - ITEM_HARD_STONE, // 0x0cc - ITEM_MIRACLE_SEED, // 0x0cd - ITEM_BLACK_GLASSES, // 0x0ce - ITEM_BLACK_BELT, // 0x0cf - ITEM_MAGNET, // 0x0d0 - ITEM_MYSTIC_WATER, // 0x0d1 - ITEM_SHARP_BEAK, // 0x0d2 - ITEM_POISON_BARB, // 0x0d3 - ITEM_NEVER_MELT_ICE, // 0x0d4 - ITEM_SPELL_TAG, // 0x0d5 - ITEM_TWISTED_SPOON, // 0x0d6 - ITEM_CHARCOAL, // 0x0d7 - ITEM_DRAGON_FANG, // 0x0d8 - ITEM_SILK_SCARF, // 0x0d9 - ITEM_UP_GRADE, // 0x0da - ITEM_SHELL_BELL, // 0x0db - ITEM_SEA_INCENSE, // 0x0dc - ITEM_LAX_INCENSE, // 0x0dd - ITEM_LUCKY_PUNCH, // 0x0de - ITEM_METAL_POWDER, // 0x0df - ITEM_THICK_CLUB, // 0x0e0 - ITEM_STICK, // 0x0e1 - ITEM_0E2, - ITEM_0E3, - ITEM_0E4, - ITEM_0E5, - ITEM_0E6, - ITEM_0E7, - ITEM_0E8, - ITEM_0E9, - ITEM_0EA, - ITEM_0EB, - ITEM_0EC, - ITEM_0ED, - ITEM_0EE, - ITEM_0EF, - ITEM_0F0, - ITEM_0F1, - ITEM_0F2, - ITEM_0F3, - ITEM_0F4, - ITEM_0F5, - ITEM_0F6, - ITEM_0F7, - ITEM_0F8, - ITEM_0F9, - ITEM_0FA, - ITEM_0FB, - ITEM_0FC, - ITEM_0FD, - ITEM_RED_SCARF, // 0x0fe - ITEM_BLUE_SCARF, // 0x0ff - ITEM_PINK_SCARF, // 0x100 - ITEM_GREEN_SCARF, // 0x101 - ITEM_YELLOW_SCARF, // 0x102 - ITEM_MACH_BIKE, // 0x103 - ITEM_COIN_CASE, // 0x104 - ITEM_ITEMFINDER, // 0x105 - ITEM_OLD_ROD, // 0x106 - ITEM_GOOD_ROD, // 0x107 - ITEM_SUPER_ROD, // 0x108 - ITEM_SS_TICKET, // 0x109 - ITEM_CONTEST_PASS, // 0x10a - ITEM_10B, - ITEM_WAILMER_PAIL, // 0x10c - ITEM_DEVON_GOODS, // 0x10d - ITEM_SOOT_SACK, // 0x10e - ITEM_BASEMENT_KEY, // 0x10f - ITEM_ACRO_BIKE, // 0x110 - ITEM_POKEBLOCK_CASE, // 0x111 - ITEM_LETTER, // 0x112 - ITEM_EON_TICKET, // 0x113 - ITEM_RED_ORB, // 0x114 - ITEM_BLUE_ORB, // 0x115 - ITEM_SCANNER, // 0x116 - ITEM_GO_GOGGLES, // 0x117 - ITEM_METEORITE, // 0x118 - ITEM_ROOM_1_KEY, // 0x119 - ITEM_ROOM_2_KEY, // 0x11a - ITEM_ROOM_4_KEY, // 0x11b - ITEM_ROOM_6_KEY, // 0x11c - ITEM_STORAGE_KEY, // 0x11d - ITEM_ROOT_FOSSIL, // 0x11e - ITEM_CLAW_FOSSIL, // 0x11f - ITEM_DEVON_SCOPE, // 0x120 - ITEM_TM01, // 0x121 - ITEM_TM02, // 0x122 - ITEM_TM03, // 0x123 - ITEM_TM04, // 0x124 - ITEM_TM05, // 0x125 - ITEM_TM06, // 0x126 - ITEM_TM07, // 0x127 - ITEM_TM08, // 0x128 - ITEM_TM09, // 0x129 - ITEM_TM10, // 0x12a - ITEM_TM11, // 0x12b - ITEM_TM12, // 0x12c - ITEM_TM13, // 0x12d - ITEM_TM14, // 0x12e - ITEM_TM15, // 0x12f - ITEM_TM16, // 0x130 - ITEM_TM17, // 0x131 - ITEM_TM18, // 0x132 - ITEM_TM19, // 0x133 - ITEM_TM20, // 0x134 - ITEM_TM21, // 0x135 - ITEM_TM22, // 0x136 - ITEM_TM23, // 0x137 - ITEM_TM24, // 0x138 - ITEM_TM25, // 0x139 - ITEM_TM26, // 0x13a - ITEM_TM27, // 0x13b - ITEM_TM28, // 0x13c - ITEM_TM29, // 0x13d - ITEM_TM30, // 0x13e - ITEM_TM31, // 0x13f - ITEM_TM32, // 0x140 - ITEM_TM33, // 0x141 - ITEM_TM34, // 0x142 - ITEM_TM35, // 0x143 - ITEM_TM36, // 0x144 - ITEM_TM37, // 0x145 - ITEM_TM38, // 0x146 - ITEM_TM39, // 0x147 - ITEM_TM40, // 0x148 - ITEM_TM41, // 0x149 - ITEM_TM42, // 0x14a - ITEM_TM43, // 0x14b - ITEM_TM44, // 0x14c - ITEM_TM45, // 0x14d - ITEM_TM46, // 0x14e - ITEM_TM47, // 0x14f - ITEM_TM48, // 0x150 - ITEM_TM49, // 0x151 - ITEM_TM50, // 0x152 - ITEM_HM01, // 0x153 - ITEM_HM02, // 0x154 - ITEM_HM03, // 0x155 - ITEM_HM04, // 0x156 - ITEM_HM05, // 0x157 - ITEM_HM06, // 0x158 - ITEM_HM07, // 0x159 - ITEM_HM08, // 0x15a - ITEM_15B, - ITEM_15C, - - // FireRed/LeafGreen - ITEM_OAKS_PARCEL, // 0x15d - ITEM_POKE_FLUTE, // 0x15e - ITEM_SECRET_KEY, // 0x15f - ITEM_BIKE_VOUCHER, // 0x160 - ITEM_GOLD_TEETH, // 0x161 - ITEM_OLD_AMBER, // 0x162 - ITEM_CARD_KEY, // 0x163 - ITEM_LIFT_KEY, // 0x164 - ITEM_HELIX_FOSSIL, // 0x165 - ITEM_DOME_FOSSIL, // 0x166 - ITEM_SILPH_SCOPE, // 0x167 - ITEM_BICYCLE, // 0x168 - ITEM_TOWN_MAP, // 0x169 - ITEM_VS_SEEKER, // 0x16a - ITEM_FAME_CHECKER, // 0x16b - ITEM_TM_CASE, // 0x16c - ITEM_BERRY_POUCH, // 0x16d - ITEM_TEACHY_TV, // 0x16e - ITEM_TRI_PASS, // 0x16f - ITEM_RAINBOW_PASS, // 0x170 - ITEM_TEA, // 0x171 - ITEM_MYSTIC_TICKET, // 0x172 - ITEM_AURORA_TICKET, // 0x173 - ITEM_POWDER_JAR, // 0x174 - ITEM_RUBY, // 0x175 - ITEM_SAPPHIRE, // 0x176 - - // Emerald - ITEM_MAGMA_EMBLEM, // 0x177 - ITEM_OLD_SEA_MAP, // 0x178 -}; - -#define FIRST_BERRY_INDEX ITEM_CHERI_BERRY -#define LAST_BERRY_INDEX ITEM_ENIGMA_BERRY -#define ITEM_TO_BERRY(itemId)(((itemId - FIRST_BERRY_INDEX) + 1)) - -#define NUM_TECHNICAL_MACHINES 50 -#define NUM_HIDDEN_MACHINES 8 - -#endif // GUARD_ITEMS_H diff --git a/include/mail.h b/include/mail.h index 1a29d73b5..0a70237bf 100644 --- a/include/mail.h +++ b/include/mail.h @@ -1,8 +1,6 @@ #ifndef GUARD_MAIL_H #define GUARD_MAIL_H -#include "items.h" - #define IS_ITEM_MAIL(itemId)((itemId == ITEM_ORANGE_MAIL \ || itemId == ITEM_HARBOR_MAIL \ || itemId == ITEM_GLITTER_MAIL \ diff --git a/include/map_constants.h b/include/map_constants.h deleted file mode 100644 index 6199793c8..000000000 --- a/include/map_constants.h +++ /dev/null @@ -1,1342 +0,0 @@ -#ifndef GUARD_MAP_CONSTANTS_H -#define GUARD_MAP_CONSTANTS_H - -//-------------------------------------------------- -// Map Group 0 -//-------------------------------------------------- - -enum -{ - MAP_ID_PETALBURG_CITY, - MAP_ID_SLATEPORT_CITY, - MAP_ID_MAUVILLE_CITY, - MAP_ID_RUSTBORO_CITY, - MAP_ID_FORTREE_CITY, - MAP_ID_LILYCOVE_CITY, - MAP_ID_MOSSDEEP_CITY, - MAP_ID_SOOTOPOLIS_CITY, - MAP_ID_EVER_GRANDE_CITY, - MAP_ID_LITTLEROOT_TOWN, - MAP_ID_OLDALE_TOWN, - MAP_ID_DEWFORD_TOWN, - MAP_ID_LAVARIDGE_TOWN, - MAP_ID_FALLARBOR_TOWN, - MAP_ID_VERDANTURF_TOWN, - MAP_ID_PACIFIDLOG_TOWN, - MAP_ID_ROUTE101, - MAP_ID_ROUTE102, - MAP_ID_ROUTE103, - MAP_ID_ROUTE104, - MAP_ID_ROUTE105, - MAP_ID_ROUTE106, - MAP_ID_ROUTE107, - MAP_ID_ROUTE108, - MAP_ID_ROUTE109, - MAP_ID_ROUTE110, - MAP_ID_ROUTE111, - MAP_ID_ROUTE112, - MAP_ID_ROUTE113, - MAP_ID_ROUTE114, - MAP_ID_ROUTE115, - MAP_ID_ROUTE116, - MAP_ID_ROUTE117, - MAP_ID_ROUTE118, - MAP_ID_ROUTE119, - MAP_ID_ROUTE120, - MAP_ID_ROUTE121, - MAP_ID_ROUTE122, - MAP_ID_ROUTE123, - MAP_ID_ROUTE124, - MAP_ID_ROUTE125, - MAP_ID_ROUTE126, - MAP_ID_ROUTE127, - MAP_ID_ROUTE128, - MAP_ID_ROUTE129, - MAP_ID_ROUTE130, - MAP_ID_ROUTE131, - MAP_ID_ROUTE132, - MAP_ID_ROUTE133, - MAP_ID_ROUTE134, - MAP_ID_UNDERWATER1, - MAP_ID_UNDERWATER2, - MAP_ID_UNDERWATER3, - MAP_ID_UNDERWATER4, - MAP_ID_UNDERWATER5, - MAP_ID_UNDERWATER6, - MAP_ID_UNDERWATER7, -}; - -#define MAP_GROUP_PETALBURG_CITY 0 -#define MAP_GROUP_SLATEPORT_CITY 0 -#define MAP_GROUP_MAUVILLE_CITY 0 -#define MAP_GROUP_RUSTBORO_CITY 0 -#define MAP_GROUP_FORTREE_CITY 0 -#define MAP_GROUP_LILYCOVE_CITY 0 -#define MAP_GROUP_MOSSDEEP_CITY 0 -#define MAP_GROUP_SOOTOPOLIS_CITY 0 -#define MAP_GROUP_EVER_GRANDE_CITY 0 -#define MAP_GROUP_LITTLEROOT_TOWN 0 -#define MAP_GROUP_OLDALE_TOWN 0 -#define MAP_GROUP_DEWFORD_TOWN 0 -#define MAP_GROUP_LAVARIDGE_TOWN 0 -#define MAP_GROUP_FALLARBOR_TOWN 0 -#define MAP_GROUP_VERDANTURF_TOWN 0 -#define MAP_GROUP_PACIFIDLOG_TOWN 0 -#define MAP_GROUP_ROUTE101 0 -#define MAP_GROUP_ROUTE102 0 -#define MAP_GROUP_ROUTE103 0 -#define MAP_GROUP_ROUTE104 0 -#define MAP_GROUP_ROUTE105 0 -#define MAP_GROUP_ROUTE106 0 -#define MAP_GROUP_ROUTE107 0 -#define MAP_GROUP_ROUTE108 0 -#define MAP_GROUP_ROUTE109 0 -#define MAP_GROUP_ROUTE110 0 -#define MAP_GROUP_ROUTE111 0 -#define MAP_GROUP_ROUTE112 0 -#define MAP_GROUP_ROUTE113 0 -#define MAP_GROUP_ROUTE114 0 -#define MAP_GROUP_ROUTE115 0 -#define MAP_GROUP_ROUTE116 0 -#define MAP_GROUP_ROUTE117 0 -#define MAP_GROUP_ROUTE118 0 -#define MAP_GROUP_ROUTE119 0 -#define MAP_GROUP_ROUTE120 0 -#define MAP_GROUP_ROUTE121 0 -#define MAP_GROUP_ROUTE122 0 -#define MAP_GROUP_ROUTE123 0 -#define MAP_GROUP_ROUTE124 0 -#define MAP_GROUP_ROUTE125 0 -#define MAP_GROUP_ROUTE126 0 -#define MAP_GROUP_ROUTE127 0 -#define MAP_GROUP_ROUTE128 0 -#define MAP_GROUP_ROUTE129 0 -#define MAP_GROUP_ROUTE130 0 -#define MAP_GROUP_ROUTE131 0 -#define MAP_GROUP_ROUTE132 0 -#define MAP_GROUP_ROUTE133 0 -#define MAP_GROUP_ROUTE134 0 -#define MAP_GROUP_UNDERWATER1 0 -#define MAP_GROUP_UNDERWATER2 0 -#define MAP_GROUP_UNDERWATER3 0 -#define MAP_GROUP_UNDERWATER4 0 -#define MAP_GROUP_UNDERWATER5 0 -#define MAP_GROUP_UNDERWATER6 0 -#define MAP_GROUP_UNDERWATER7 0 -//-------------------------------------------------- -// Map Group 1 -//-------------------------------------------------- - -enum -{ - MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F, - MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F, - MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_1F, - MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_2F, - MAP_ID_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB, -}; - -#define MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F 1 -#define MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_2F 1 -#define MAP_GROUP_LITTLEROOT_TOWN_MAYS_HOUSE_1F 1 -#define MAP_GROUP_LITTLEROOT_TOWN_MAYS_HOUSE_2F 1 -#define MAP_GROUP_LITTLEROOT_TOWN_PROFESSOR_BIRCHS_LAB 1 - -//-------------------------------------------------- -// Map Group 2 -//-------------------------------------------------- - -enum -{ - MAP_ID_OLDALE_TOWN_HOUSE1, - MAP_ID_OLDALE_TOWN_HOUSE2, - MAP_ID_OLDALE_TOWN_POKEMON_CENTER_1F, - MAP_ID_OLDALE_TOWN_POKEMON_CENTER_2F, - MAP_ID_OLDALE_TOWN_MART, -}; - -#define MAP_GROUP_OLDALE_TOWN_HOUSE1 2 -#define MAP_GROUP_OLDALE_TOWN_HOUSE2 2 -#define MAP_GROUP_OLDALE_TOWN_POKEMON_CENTER_1F 2 -#define MAP_GROUP_OLDALE_TOWN_POKEMON_CENTER_2F 2 -#define MAP_GROUP_OLDALE_TOWN_MART 2 - -//-------------------------------------------------- -// Map Group 3 -//-------------------------------------------------- - -enum -{ - MAP_ID_DEWFORD_TOWN_HOUSE1, - MAP_ID_DEWFORD_TOWN_POKEMON_CENTER_1F, - MAP_ID_DEWFORD_TOWN_POKEMON_CENTER_2F, - MAP_ID_DEWFORD_TOWN_GYM, - MAP_ID_DEWFORD_TOWN_HALL, - MAP_ID_DEWFORD_TOWN_HOUSE2, -}; - -#define MAP_GROUP_DEWFORD_TOWN_HOUSE1 3 -#define MAP_GROUP_DEWFORD_TOWN_POKEMON_CENTER_1F 3 -#define MAP_GROUP_DEWFORD_TOWN_POKEMON_CENTER_2F 3 -#define MAP_GROUP_DEWFORD_TOWN_GYM 3 -#define MAP_GROUP_DEWFORD_TOWN_HALL 3 -#define MAP_GROUP_DEWFORD_TOWN_HOUSE2 3 - -//-------------------------------------------------- -// Map Group 4 -//-------------------------------------------------- - -enum -{ - MAP_ID_LAVARIDGE_TOWN_HERB_SHOP, - MAP_ID_LAVARIDGE_TOWN_GYM_1F, - MAP_ID_LAVARIDGE_TOWN_GYM_B1F, - MAP_ID_LAVARIDGE_TOWN_HOUSE, - MAP_ID_LAVARIDGE_TOWN_MART, - MAP_ID_LAVARIDGE_TOWN_POKEMON_CENTER_1F, - MAP_ID_LAVARIDGE_TOWN_POKEMON_CENTER_2F, -}; - -#define MAP_GROUP_LAVARIDGE_TOWN_HERB_SHOP 4 -#define MAP_GROUP_LAVARIDGE_TOWN_GYM_1F 4 -#define MAP_GROUP_LAVARIDGE_TOWN_GYM_B1F 4 -#define MAP_GROUP_LAVARIDGE_TOWN_HOUSE 4 -#define MAP_GROUP_LAVARIDGE_TOWN_MART 4 -#define MAP_GROUP_LAVARIDGE_TOWN_POKEMON_CENTER_1F 4 -#define MAP_GROUP_LAVARIDGE_TOWN_POKEMON_CENTER_2F 4 - -//-------------------------------------------------- -// Map Group 5 -//-------------------------------------------------- - -enum -{ - MAP_ID_FALLARBOR_TOWN_MART, - MAP_ID_FALLARBOR_TOWN_TENT_LOBBY, - MAP_ID_FALLARBOR_TOWN_TENT_HALL, - MAP_ID_FALLARBOR_TOWN_TENT_ARENA, - MAP_ID_FALLARBOR_TOWN_POKEMON_CENTER_1F, - MAP_ID_FALLARBOR_TOWN_POKEMON_CENTER_2F, - MAP_ID_FALLARBOR_TOWN_HOUSE1, - MAP_ID_FALLARBOR_TOWN_HOUSE2, -}; - -#define MAP_GROUP_FALLARBOR_TOWN_MART 5 -#define MAP_GROUP_FALLARBOR_TOWN_TENT_LOBBY 5 -#define MAP_GROUP_FALLARBOR_TOWN_TENT_HALL 5 -#define MAP_GROUP_FALLARBOR_TOWN_TENT_ARENA 5 -#define MAP_GROUP_FALLARBOR_TOWN_POKEMON_CENTER_1F 5 -#define MAP_GROUP_FALLARBOR_TOWN_POKEMON_CENTER_2F 5 -#define MAP_GROUP_FALLARBOR_TOWN_HOUSE1 5 -#define MAP_GROUP_FALLARBOR_TOWN_HOUSE2 5 - -//-------------------------------------------------- -// Map Group 6 -//-------------------------------------------------- - -enum -{ - MAP_ID_VERDANTURF_TOWN_TENT_LOBBY, - MAP_ID_VERDANTURF_TOWN_TENT_HALL, - MAP_ID_VERDANTURF_TOWN_TENT_ARENA, - MAP_ID_VERDANTURF_TOWN_MART, - MAP_ID_VERDANTURF_TOWN_POKEMON_CENTER_1F, - MAP_ID_VERDANTURF_TOWN_POKEMON_CENTER_2F, - MAP_ID_VERDANTURF_TOWN_WANDAS_HOUSE, - MAP_ID_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE, - MAP_ID_VERDANTURF_TOWN_HOUSE, -}; - -#define MAP_GROUP_VERDANTURF_TOWN_TENT_LOBBY 6 -#define MAP_GROUP_VERDANTURF_TOWN_TENT_HALL 6 -#define MAP_GROUP_VERDANTURF_TOWN_TENT_ARENA 6 -#define MAP_GROUP_VERDANTURF_TOWN_MART 6 -#define MAP_GROUP_VERDANTURF_TOWN_POKEMON_CENTER_1F 6 -#define MAP_GROUP_VERDANTURF_TOWN_POKEMON_CENTER_2F 6 -#define MAP_GROUP_VERDANTURF_TOWN_WANDAS_HOUSE 6 -#define MAP_GROUP_VERDANTURF_TOWN_FRIENDSHIP_RATERS_HOUSE 6 -#define MAP_GROUP_VERDANTURF_TOWN_HOUSE 6 - -//-------------------------------------------------- -// Map Group 7 -//-------------------------------------------------- - -enum -{ - MAP_ID_PACIFIDLOG_TOWN_POKEMON_CENTER_1F, - MAP_ID_PACIFIDLOG_TOWN_POKEMON_CENTER_2F, - MAP_ID_PACIFIDLOG_TOWN_HOUSE1, - MAP_ID_PACIFIDLOG_TOWN_HOUSE2, - MAP_ID_PACIFIDLOG_TOWN_HOUSE3, - MAP_ID_PACIFIDLOG_TOWN_HOUSE4, - MAP_ID_PACIFIDLOG_TOWN_HOUSE5, -}; - -#define MAP_GROUP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE1 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE2 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE3 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE4 7 -#define MAP_GROUP_PACIFIDLOG_TOWN_HOUSE5 7 - -//-------------------------------------------------- -// Map Group 8 -//-------------------------------------------------- - -enum -{ - MAP_ID_PETALBURG_CITY_WALLYS_HOUSE, - MAP_ID_PETALBURG_CITY_GYM, - MAP_ID_PETALBURG_CITY_HOUSE1, - MAP_ID_PETALBURG_CITY_HOUSE2, - MAP_ID_PETALBURG_CITY_POKEMON_CENTER_1F, - MAP_ID_PETALBURG_CITY_POKEMON_CENTER_2F, - MAP_ID_PETALBURG_CITY_MART, -}; - -#define MAP_GROUP_PETALBURG_CITY_WALLYS_HOUSE 8 -#define MAP_GROUP_PETALBURG_CITY_GYM 8 -#define MAP_GROUP_PETALBURG_CITY_HOUSE1 8 -#define MAP_GROUP_PETALBURG_CITY_HOUSE2 8 -#define MAP_GROUP_PETALBURG_CITY_POKEMON_CENTER_1F 8 -#define MAP_GROUP_PETALBURG_CITY_POKEMON_CENTER_2F 8 -#define MAP_GROUP_PETALBURG_CITY_MART 8 - -//-------------------------------------------------- -// Map Group 9 -//-------------------------------------------------- - -enum -{ - MAP_ID_SLATEPORT_CITY_STERNS_SHIPYARD_1F, - MAP_ID_SLATEPORT_CITY_STERNS_SHIPYARD_2F, - MAP_ID_SLATEPORT_CITY_TENT_LOBBY, - MAP_ID_SLATEPORT_CITY_TENT_HALL, - MAP_ID_SLATEPORT_CITY_TENT_ARENA, - MAP_ID_SLATEPORT_CITY_HOUSE1, - MAP_ID_SLATEPORT_CITY_POKEMON_FAN_CLUB, - MAP_ID_SLATEPORT_CITY_OCEANIC_MUSEUM_1F, - MAP_ID_SLATEPORT_CITY_OCEANIC_MUSEUM_2F, - MAP_ID_SLATEPORT_CITY_HARBOR, - MAP_ID_SLATEPORT_CITY_HOUSE2, - MAP_ID_SLATEPORT_CITY_POKEMON_CENTER_1F, - MAP_ID_SLATEPORT_CITY_POKEMON_CENTER_2F, - MAP_ID_SLATEPORT_CITY_MART, -}; - -#define MAP_GROUP_SLATEPORT_CITY_STERNS_SHIPYARD_1F 9 -#define MAP_GROUP_SLATEPORT_CITY_STERNS_SHIPYARD_2F 9 -#define MAP_GROUP_SLATEPORT_CITY_TENT_LOBBY 9 -#define MAP_GROUP_SLATEPORT_CITY_TENT_HALL 9 -#define MAP_GROUP_SLATEPORT_CITY_TENT_ARENA 9 -#define MAP_GROUP_SLATEPORT_CITY_HOUSE1 9 -#define MAP_GROUP_SLATEPORT_CITY_POKEMON_FAN_CLUB 9 -#define MAP_GROUP_SLATEPORT_CITY_OCEANIC_MUSEUM_1F 9 -#define MAP_GROUP_SLATEPORT_CITY_OCEANIC_MUSEUM_2F 9 -#define MAP_GROUP_SLATEPORT_CITY_HARBOR 9 -#define MAP_GROUP_SLATEPORT_CITY_HOUSE2 9 -#define MAP_GROUP_SLATEPORT_CITY_POKEMON_CENTER_1F 9 -#define MAP_GROUP_SLATEPORT_CITY_POKEMON_CENTER_2F 9 -#define MAP_GROUP_SLATEPORT_CITY_MART 9 - -//-------------------------------------------------- -// Map Group 10 -//-------------------------------------------------- - -enum -{ - MAP_ID_MAUVILLE_CITY_GYM, - MAP_ID_MAUVILLE_CITY_BIKE_SHOP, - MAP_ID_MAUVILLE_CITY_HOUSE1, - MAP_ID_MAUVILLE_CITY_GAME_CORNER, - MAP_ID_MAUVILLE_CITY_HOUSE2, - MAP_ID_MAUVILLE_CITY_POKEMON_CENTER_1F, - MAP_ID_MAUVILLE_CITY_POKEMON_CENTER_2F, - MAP_ID_MAUVILLE_CITY_MART, -}; - -#define MAP_GROUP_MAUVILLE_CITY_GYM 10 -#define MAP_GROUP_MAUVILLE_CITY_BIKE_SHOP 10 -#define MAP_GROUP_MAUVILLE_CITY_HOUSE1 10 -#define MAP_GROUP_MAUVILLE_CITY_GAME_CORNER 10 -#define MAP_GROUP_MAUVILLE_CITY_HOUSE2 10 -#define MAP_GROUP_MAUVILLE_CITY_POKEMON_CENTER_1F 10 -#define MAP_GROUP_MAUVILLE_CITY_POKEMON_CENTER_2F 10 -#define MAP_GROUP_MAUVILLE_CITY_MART 10 - -//-------------------------------------------------- -// Map Group 11 -//-------------------------------------------------- - -enum -{ - MAP_ID_RUSTBORO_CITY_DEVON_CORP_1F, - MAP_ID_RUSTBORO_CITY_DEVON_CORP_2F, - MAP_ID_RUSTBORO_CITY_DEVON_CORP_3F, - MAP_ID_RUSTBORO_CITY_GYM, - MAP_ID_RUSTBORO_CITY_POKEMON_SCHOOL, - MAP_ID_RUSTBORO_CITY_POKEMON_CENTER_1F, - MAP_ID_RUSTBORO_CITY_POKEMON_CENTER_2F, - MAP_ID_RUSTBORO_CITY_MART, - MAP_ID_RUSTBORO_CITY_FLAT1_1F, - MAP_ID_RUSTBORO_CITY_FLAT1_2F, - MAP_ID_RUSTBORO_CITY_HOUSE1, - MAP_ID_RUSTBORO_CITY_CUTTERS_HOUSE, - MAP_ID_RUSTBORO_CITY_HOUSE2, - MAP_ID_RUSTBORO_CITY_FLAT2_1F, - MAP_ID_RUSTBORO_CITY_FLAT2_2F, - MAP_ID_RUSTBORO_CITY_FLAT2_3F, - MAP_ID_RUSTBORO_CITY_HOUSE3, -}; - -#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_1F 11 -#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_2F 11 -#define MAP_GROUP_RUSTBORO_CITY_DEVON_CORP_3F 11 -#define MAP_GROUP_RUSTBORO_CITY_GYM 11 -#define MAP_GROUP_RUSTBORO_CITY_POKEMON_SCHOOL 11 -#define MAP_GROUP_RUSTBORO_CITY_POKEMON_CENTER_1F 11 -#define MAP_GROUP_RUSTBORO_CITY_POKEMON_CENTER_2F 11 -#define MAP_GROUP_RUSTBORO_CITY_MART 11 -#define MAP_GROUP_RUSTBORO_CITY_FLAT1_1F 11 -#define MAP_GROUP_RUSTBORO_CITY_FLAT1_2F 11 -#define MAP_GROUP_RUSTBORO_CITY_HOUSE1 11 -#define MAP_GROUP_RUSTBORO_CITY_CUTTERS_HOUSE 11 -#define MAP_GROUP_RUSTBORO_CITY_HOUSE2 11 -#define MAP_GROUP_RUSTBORO_CITY_FLAT2_1F 11 -#define MAP_GROUP_RUSTBORO_CITY_FLAT2_2F 11 -#define MAP_GROUP_RUSTBORO_CITY_FLAT2_3F 11 -#define MAP_GROUP_RUSTBORO_CITY_HOUSE3 11 - -//-------------------------------------------------- -// Map Group 12 -//-------------------------------------------------- - -enum -{ - MAP_ID_FORTREE_CITY_HOUSE1, - MAP_ID_FORTREE_CITY_GYM, - MAP_ID_FORTREE_CITY_POKEMON_CENTER_1F, - MAP_ID_FORTREE_CITY_POKEMON_CENTER_2F, - MAP_ID_FORTREE_CITY_MART, - MAP_ID_FORTREE_CITY_HOUSE2, - MAP_ID_FORTREE_CITY_HOUSE3, - MAP_ID_FORTREE_CITY_HOUSE4, - MAP_ID_FORTREE_CITY_HOUSE5, - MAP_ID_FORTREE_CITY_DECORATION_SHOP, -}; - -#define MAP_GROUP_FORTREE_CITY_HOUSE1 12 -#define MAP_GROUP_FORTREE_CITY_GYM 12 -#define MAP_GROUP_FORTREE_CITY_POKEMON_CENTER_1F 12 -#define MAP_GROUP_FORTREE_CITY_POKEMON_CENTER_2F 12 -#define MAP_GROUP_FORTREE_CITY_MART 12 -#define MAP_GROUP_FORTREE_CITY_HOUSE2 12 -#define MAP_GROUP_FORTREE_CITY_HOUSE3 12 -#define MAP_GROUP_FORTREE_CITY_HOUSE4 12 -#define MAP_GROUP_FORTREE_CITY_HOUSE5 12 -#define MAP_GROUP_FORTREE_CITY_DECORATION_SHOP 12 - -//-------------------------------------------------- -// Map Group 13 -//-------------------------------------------------- - -enum -{ - MAP_ID_LILYCOVE_CITY_COVE_LILY_MOTEL_1F, - MAP_ID_LILYCOVE_CITY_COVE_LILY_MOTEL_2F, - MAP_ID_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F, - MAP_ID_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F, - MAP_ID_LILYCOVE_CITY_CONTEST_LOBBY, - MAP_ID_LILYCOVE_CITY_CONTEST_HALL, - MAP_ID_LILYCOVE_CITY_POKEMON_CENTER_1F, - MAP_ID_LILYCOVE_CITY_POKEMON_CENTER_2F, - MAP_ID_LILYCOVE_CITY_UNUSED_MART, - MAP_ID_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB, - MAP_ID_LILYCOVE_CITY_HARBOR, - MAP_ID_LILYCOVE_CITY_MOVE_DELETERS_HOUSE, - MAP_ID_LILYCOVE_CITY_HOUSE1, - MAP_ID_LILYCOVE_CITY_HOUSE2, - MAP_ID_LILYCOVE_CITY_HOUSE3, - MAP_ID_LILYCOVE_CITY_HOUSE4, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_1F, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_2F, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_3F, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_4F, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_5F, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP, - MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR, -}; - -#define MAP_GROUP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F 13 -#define MAP_GROUP_LILYCOVE_CITY_COVE_LILY_MOTEL_2F 13 -#define MAP_GROUP_LILYCOVE_CITY_LILYCOVE_MUSEUM_1F 13 -#define MAP_GROUP_LILYCOVE_CITY_LILYCOVE_MUSEUM_2F 13 -#define MAP_GROUP_LILYCOVE_CITY_CONTEST_LOBBY 13 -#define MAP_GROUP_LILYCOVE_CITY_CONTEST_HALL 13 -#define MAP_GROUP_LILYCOVE_CITY_POKEMON_CENTER_1F 13 -#define MAP_GROUP_LILYCOVE_CITY_POKEMON_CENTER_2F 13 -#define MAP_GROUP_LILYCOVE_CITY_UNUSED_MART 13 -#define MAP_GROUP_LILYCOVE_CITY_POKEMON_TRAINER_FAN_CLUB 13 -#define MAP_GROUP_LILYCOVE_CITY_HARBOR 13 -#define MAP_GROUP_LILYCOVE_CITY_MOVE_DELETERS_HOUSE 13 -#define MAP_GROUP_LILYCOVE_CITY_HOUSE1 13 -#define MAP_GROUP_LILYCOVE_CITY_HOUSE2 13 -#define MAP_GROUP_LILYCOVE_CITY_HOUSE3 13 -#define MAP_GROUP_LILYCOVE_CITY_HOUSE4 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_1F 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_2F 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_3F 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_4F 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_5F 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP 13 -#define MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_ELEVATOR 13 - -//-------------------------------------------------- -// Map Group 14 -//-------------------------------------------------- - -enum -{ - MAP_ID_MOSSDEEP_CITY_GYM, - MAP_ID_MOSSDEEP_CITY_HOUSE1, - MAP_ID_MOSSDEEP_CITY_HOUSE2, - MAP_ID_MOSSDEEP_CITY_POKEMON_CENTER_1F, - MAP_ID_MOSSDEEP_CITY_POKEMON_CENTER_2F, - MAP_ID_MOSSDEEP_CITY_MART, - MAP_ID_MOSSDEEP_CITY_HOUSE3, - MAP_ID_MOSSDEEP_CITY_STEVENS_HOUSE, - MAP_ID_MOSSDEEP_CITY_HOUSE4, - MAP_ID_MOSSDEEP_CITY_SPACE_CENTER_1F, - MAP_ID_MOSSDEEP_CITY_SPACE_CENTER_2F, - MAP_ID_MOSSDEEP_CITY_GAME_CORNER_1F, - MAP_ID_MOSSDEEP_CITY_GAME_CORNER_B1F, -}; - -#define MAP_GROUP_MOSSDEEP_CITY_GYM 14 -#define MAP_GROUP_MOSSDEEP_CITY_HOUSE1 14 -#define MAP_GROUP_MOSSDEEP_CITY_HOUSE2 14 -#define MAP_GROUP_MOSSDEEP_CITY_POKEMON_CENTER_1F 14 -#define MAP_GROUP_MOSSDEEP_CITY_POKEMON_CENTER_2F 14 -#define MAP_GROUP_MOSSDEEP_CITY_MART 14 -#define MAP_GROUP_MOSSDEEP_CITY_HOUSE3 14 -#define MAP_GROUP_MOSSDEEP_CITY_STEVENS_HOUSE 14 -#define MAP_GROUP_MOSSDEEP_CITY_HOUSE4 14 -#define MAP_GROUP_MOSSDEEP_CITY_SPACE_CENTER_1F 14 -#define MAP_GROUP_MOSSDEEP_CITY_SPACE_CENTER_2F 14 -#define MAP_GROUP_MOSSDEEP_CITY_GAME_CORNER_1F 14 -#define MAP_GROUP_MOSSDEEP_CITY_GAME_CORNER_B1F 14 - -//-------------------------------------------------- -// Map Group 15 -//-------------------------------------------------- - -enum -{ - MAP_ID_SOOTOPOLIS_CITY_GYM_1F, - MAP_ID_SOOTOPOLIS_CITY_GYM_B1F, - MAP_ID_SOOTOPOLIS_CITY_POKEMON_CENTER_1F, - MAP_ID_SOOTOPOLIS_CITY_POKEMON_CENTER_2F, - MAP_ID_SOOTOPOLIS_CITY_MART, - MAP_ID_SOOTOPOLIS_CITY_HOUSE1, - MAP_ID_SOOTOPOLIS_CITY_HOUSE2, - MAP_ID_SOOTOPOLIS_CITY_HOUSE3, - MAP_ID_SOOTOPOLIS_CITY_HOUSE4, - MAP_ID_SOOTOPOLIS_CITY_HOUSE5, - MAP_ID_SOOTOPOLIS_CITY_HOUSE6, - MAP_ID_SOOTOPOLIS_CITY_HOUSE7, - MAP_ID_SOOTOPOLIS_CITY_HOUSE8, - MAP_ID_SOOTOPOLIS_CITY_BATTLEHOUSE_1, - MAP_ID_SOOTOPOLIS_CITY_BATTLEHOUSE_2, -}; - -#define MAP_GROUP_SOOTOPOLIS_CITY_GYM_1F 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_GYM_B1F 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_MART 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE1 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE2 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE3 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE4 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE5 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE6 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE7 15 -#define MAP_GROUP_SOOTOPOLIS_CITY_HOUSE8 15 -#define MAP_ID_SOOTOPOLIS_CITY_BATTLEHOUSE_1 15 -#define MAP_ID_SOOTOPOLIS_CITY_BATTLEHOUSE_2 15 -//-------------------------------------------------- -// Map Group 16 -//-------------------------------------------------- - -enum -{ - MAP_ID_EVER_GRANDE_CITY_SIDNEYS_ROOM, - MAP_ID_EVER_GRANDE_CITY_PHOEBES_ROOM, - MAP_ID_EVER_GRANDE_CITY_GLACIAS_ROOM, - MAP_ID_EVER_GRANDE_CITY_DRAKES_ROOM, - MAP_ID_EVER_GRANDE_CITY_CHAMPIONS_ROOM, - MAP_ID_EVER_GRANDE_CITY_CORRIDOR1, - MAP_ID_EVER_GRANDE_CITY_CORRIDOR2, - MAP_ID_EVER_GRANDE_CITY_CORRIDOR3, - MAP_ID_EVER_GRANDE_CITY_CORRIDOR4, - MAP_ID_EVER_GRANDE_CITY_CORRIDOR5, - MAP_ID_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F, - MAP_ID_EVER_GRANDE_CITY_HALL_OF_FAME, - MAP_ID_EVER_GRANDE_CITY_POKEMON_CENTER_1F, - MAP_ID_EVER_GRANDE_CITY_POKEMON_CENTER_2F, - MAP_ID_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F, -}; - -#define MAP_GROUP_EVER_GRANDE_CITY_SIDNEYS_ROOM 16 -#define MAP_GROUP_EVER_GRANDE_CITY_PHOEBES_ROOM 16 -#define MAP_GROUP_EVER_GRANDE_CITY_GLACIAS_ROOM 16 -#define MAP_GROUP_EVER_GRANDE_CITY_DRAKES_ROOM 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CHAMPIONS_ROOM 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR1 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR2 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR3 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR4 16 -#define MAP_GROUP_EVER_GRANDE_CITY_CORRIDOR5 16 -#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F 16 -#define MAP_GROUP_EVER_GRANDE_CITY_HALL_OF_FAME 16 -#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_CENTER_1F 16 -#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_CENTER_2F 16 -#define MAP_GROUP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F 16 - -//-------------------------------------------------- -// Map Group 17 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE104_MR_BRINEYS_HOUSE, - MAP_ID_ROUTE104_PRETTY_PETAL_FLOWER_SHOP, -}; - -#define MAP_GROUP_ROUTE104_MR_BRINEYS_HOUSE 17 -#define MAP_GROUP_ROUTE104_PRETTY_PETAL_FLOWER_SHOP 17 - -//-------------------------------------------------- -// Map Group 18 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE111_WINSTRATE_FAMILYS_HOUSE, - MAP_ID_ROUTE111_OLD_LADYS_REST_STOP, -}; - -#define MAP_GROUP_ROUTE111_WINSTRATE_FAMILYS_HOUSE 18 -#define MAP_GROUP_ROUTE111_OLD_LADYS_REST_STOP 18 - -//-------------------------------------------------- -// Map Group 19 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE112_CABLE_CAR_STATION, - MAP_ID_MT_CHIMNEY_CABLE_CAR_STATION, -}; - -#define MAP_GROUP_ROUTE112_CABLE_CAR_STATION 19 -#define MAP_GROUP_MT_CHIMNEY_CABLE_CAR_STATION 19 - -//-------------------------------------------------- -// Map Group 20 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE114_FOSSIL_MANIACS_HOUSE, - MAP_ID_ROUTE114_FOSSIL_MANIACS_TUNNEL, - MAP_ID_ROUTE114_LANETTES_HOUSE, -}; - -#define MAP_GROUP_ROUTE114_FOSSIL_MANIACS_HOUSE 20 -#define MAP_GROUP_ROUTE114_FOSSIL_MANIACS_TUNNEL 20 -#define MAP_GROUP_ROUTE114_LANETTES_HOUSE 20 - -//-------------------------------------------------- -// Map Group 21 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE116_TUNNELERS_REST_HOUSE, -}; - -#define MAP_GROUP_ROUTE116_TUNNELERS_REST_HOUSE 21 - -//-------------------------------------------------- -// Map Group 22 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE117_POKEMON_DAY_CARE, -}; - -#define MAP_GROUP_ROUTE117_POKEMON_DAY_CARE 22 - -//-------------------------------------------------- -// Map Group 23 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE121_SAFARI_ZONE_ENTRANCE, -}; - -#define MAP_GROUP_ROUTE121_SAFARI_ZONE_ENTRANCE 23 - -//-------------------------------------------------- -// Map Group 24 -//-------------------------------------------------- - -enum -{ - MAP_ID_METEOR_FALLS_1F_1R, - MAP_ID_METEOR_FALLS_1F_2R, - MAP_ID_METEOR_FALLS_B1F_1R, - MAP_ID_METEOR_FALLS_B1F_2R, - MAP_ID_RUSTURF_TUNNEL, - MAP_ID_UNDERWATER_SOOTOPOLIS_CITY, - MAP_ID_DESERT_RUINS, - MAP_ID_GRANITE_CAVE_1F, - MAP_ID_GRANITE_CAVE_B1F, - MAP_ID_GRANITE_CAVE_B2F, - MAP_ID_GRANITE_CAVE_STEVENS_ROOM, - MAP_ID_PETALBURG_WOODS, - MAP_ID_MT_CHIMNEY, - MAP_ID_JAGGED_PASS, - MAP_ID_FIERY_PATH, - MAP_ID_MT_PYRE_1F, - MAP_ID_MT_PYRE_2F, - MAP_ID_MT_PYRE_3F, - MAP_ID_MT_PYRE_4F, - MAP_ID_MT_PYRE_5F, - MAP_ID_MT_PYRE_6F, - MAP_ID_MT_PYRE_EXTERIOR, - MAP_ID_MT_PYRE_SUMMIT, - MAP_ID_AQUA_HIDEOUT_1F, - MAP_ID_AQUA_HIDEOUT_B1F, - MAP_ID_AQUA_HIDEOUT_B2F, - MAP_ID_UNDERWATER_SEAFLOOR_CAVERN, - MAP_ID_SEAFLOOR_CAVERN_ENTRANCE, - MAP_ID_SEAFLOOR_CAVERN_ROOM1, - MAP_ID_SEAFLOOR_CAVERN_ROOM2, - MAP_ID_SEAFLOOR_CAVERN_ROOM3, - MAP_ID_SEAFLOOR_CAVERN_ROOM4, - MAP_ID_SEAFLOOR_CAVERN_ROOM5, - MAP_ID_SEAFLOOR_CAVERN_ROOM6, - MAP_ID_SEAFLOOR_CAVERN_ROOM7, - MAP_ID_SEAFLOOR_CAVERN_ROOM8, - MAP_ID_SEAFLOOR_CAVERN_ROOM9, - MAP_ID_CAVE_OF_ORIGIN_ENTRANCE, - MAP_ID_CAVE_OF_ORIGIN_1F, - MAP_ID_CAVE_OF_ORIGIN_B1F, - MAP_ID_CAVE_OF_ORIGIN_B2F, - MAP_ID_CAVE_OF_ORIGIN_B3F, - MAP_ID_CAVE_OF_ORIGIN_B4F, - MAP_ID_VICTORY_ROAD_1F, - MAP_ID_VICTORY_ROAD_B1F, - MAP_ID_VICTORY_ROAD_B2F, - MAP_ID_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM, - MAP_ID_SHOAL_CAVE_LOW_TIDE_INNER_ROOM, - MAP_ID_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM, - MAP_ID_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM, - MAP_ID_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM, - MAP_ID_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM, - MAP_ID_NEW_MAUVILLE_ENTRANCE, - MAP_ID_NEW_MAUVILLE_INSIDE, - MAP_ID_ABANDONED_SHIP_DECK, - MAP_ID_ABANDONED_SHIP_CORRIDORS_1F, - MAP_ID_ABANDONED_SHIP_ROOMS_1F, - MAP_ID_ABANDONED_SHIP_CORRIDORS_B1F, - MAP_ID_ABANDONED_SHIP_ROOMS_B1F, - MAP_ID_ABANDONED_SHIP_ROOMS2_B1F, - MAP_ID_ABANDONED_SHIP_UNDERWATER1, - MAP_ID_ABANDONED_SHIP_ROOM_B1F, - MAP_ID_ABANDONED_SHIP_ROOMS2_1F, - MAP_ID_ABANDONED_SHIP_CAPTAINS_OFFICE, - MAP_ID_ABANDONED_SHIP_UNDERWATER2, - MAP_ID_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS, - MAP_ID_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS, - MAP_ID_ISLAND_CAVE, - MAP_ID_ANCIENT_TOMB, - MAP_ID_UNDERWATER_ROUTE134, - MAP_ID_UNDERWATER_SEALED_CHAMBER, - MAP_ID_SEALED_CHAMBER_OUTER_ROOM, - MAP_ID_SEALED_CHAMBER_INNER_ROOM, - MAP_ID_SCORCHED_SLAB, - MAP_ID_UNUSED_AQUA_HIDEOUT_1F, - MAP_ID_UNUSED_AQUA_HIDEOUT_B1F, - MAP_ID_UNUSED_AQUA_HIDEOUT_B2F, - MAP_ID_SKY_PILLAR_ENTRANCE, - MAP_ID_SKY_PILLAR_OUTSIDE, - MAP_ID_SKY_PILLAR_1F, - MAP_ID_SKY_PILLAR_2F, - MAP_ID_SKY_PILLAR_3F, - MAP_ID_SKY_PILLAR_4F, - MAP_ID_SHOAL_CAVE_LOW_TIDE_ICE_ROOM, - MAP_ID_SKY_PILLAR_5F, - MAP_ID_SKY_PILLAR_TOP, - MAP_ID_MAGMA_HIDEOUT_ENTRANCE, - MAP_ID_MAGMA_HIDEOUT_B1F, - MAP_ID_MAGMA_HIDEOUT_B2F, - MAP_ID_MAGMA_HIDEOUT_B3F, - MAP_ID_MAGMA_HIDEOUT_B4F, - MAP_ID_MAGMA_HIDEOUT_B5F, - MAP_ID_MAGMA_HIDEOUT_B6F, - MAP_ID_MAGMA_HIDEOUT_B7F, - MAP_ID_MIRAGE_TOWER_1F, - MAP_ID_MIRAGE_TOWER_2F, - MAP_ID_MIRAGE_TOWER_3F, - MAP_ID_MIRAGE_TOWER_4F, - MAP_ID_DESERT_UNDERPASS, - MAP_ID_ARTISAN_CAVE_1F, - MAP_ID_ARTISAN_CAVE_2F, - MAP_ID_UNKNOWN_UNDERWATER, - MAP_ID_MARINE_CAVE_1F, - MAP_ID_MARINE_CAVE_2F, - MAP_ID_TERRA_CAVE_1F, - MAP_ID_TERRA_CAVE_2F, - MAP_ID_ALTERING_CAVE, - MAP_ID_METEOR_FALLS_B1F_3R, -}; - -#define MAP_GROUP_METEOR_FALLS_1F_1R 24 -#define MAP_GROUP_METEOR_FALLS_1F_2R 24 -#define MAP_GROUP_METEOR_FALLS_B1F_1R 24 -#define MAP_GROUP_METEOR_FALLS_B1F_2R 24 -#define MAP_GROUP_RUSTURF_TUNNEL 24 -#define MAP_GROUP_UNDERWATER_SOOTOPOLIS_CITY 24 -#define MAP_GROUP_DESERT_RUINS 24 -#define MAP_GROUP_GRANITE_CAVE_1F 24 -#define MAP_GROUP_GRANITE_CAVE_B1F 24 -#define MAP_GROUP_GRANITE_CAVE_B2F 24 -#define MAP_GROUP_GRANITE_CAVE_STEVENS_ROOM 24 -#define MAP_GROUP_PETALBURG_WOODS 24 -#define MAP_GROUP_MT_CHIMNEY 24 -#define MAP_GROUP_JAGGED_PASS 24 -#define MAP_GROUP_FIERY_PATH 24 -#define MAP_GROUP_MT_PYRE_1F 24 -#define MAP_GROUP_MT_PYRE_2F 24 -#define MAP_GROUP_MT_PYRE_3F 24 -#define MAP_GROUP_MT_PYRE_4F 24 -#define MAP_GROUP_MT_PYRE_5F 24 -#define MAP_GROUP_MT_PYRE_6F 24 -#define MAP_GROUP_MT_PYRE_EXTERIOR 24 -#define MAP_GROUP_MT_PYRE_SUMMIT 24 -#define MAP_GROUP_AQUA_HIDEOUT_1F 24 -#define MAP_GROUP_AQUA_HIDEOUT_B1F 24 -#define MAP_GROUP_AQUA_HIDEOUT_B2F 24 -#define MAP_GROUP_UNDERWATER_SEAFLOOR_CAVERN 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ENTRANCE 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM1 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM2 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM3 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM4 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM5 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM6 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM7 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM8 24 -#define MAP_GROUP_SEAFLOOR_CAVERN_ROOM9 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_ENTRANCE 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_1F 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_B1F 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_B2F 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_B3F 24 -#define MAP_GROUP_CAVE_OF_ORIGIN_B4F 24 -#define MAP_GROUP_VICTORY_ROAD_1F 24 -#define MAP_GROUP_VICTORY_ROAD_B1F 24 -#define MAP_GROUP_VICTORY_ROAD_B2F 24 -#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_ENTRANCE_ROOM 24 -#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_INNER_ROOM 24 -#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_STAIRS_ROOM 24 -#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_LOWER_ROOM 24 -#define MAP_GROUP_SHOAL_CAVE_HIGH_TIDE_ENTRANCE_ROOM 24 -#define MAP_GROUP_SHOAL_CAVE_HIGH_TIDE_INNER_ROOM 24 -#define MAP_GROUP_NEW_MAUVILLE_ENTRANCE 24 -#define MAP_GROUP_NEW_MAUVILLE_INSIDE 24 -#define MAP_GROUP_ABANDONED_SHIP_DECK 24 -#define MAP_GROUP_ABANDONED_SHIP_CORRIDORS_1F 24 -#define MAP_GROUP_ABANDONED_SHIP_ROOMS_1F 24 -#define MAP_GROUP_ABANDONED_SHIP_CORRIDORS_B1F 24 -#define MAP_GROUP_ABANDONED_SHIP_ROOMS_B1F 24 -#define MAP_GROUP_ABANDONED_SHIP_ROOMS2_B1F 24 -#define MAP_GROUP_ABANDONED_SHIP_UNDERWATER1 24 -#define MAP_GROUP_ABANDONED_SHIP_ROOM_B1F 24 -#define MAP_GROUP_ABANDONED_SHIP_ROOMS2_1F 24 -#define MAP_GROUP_ABANDONED_SHIP_CAPTAINS_OFFICE 24 -#define MAP_GROUP_ABANDONED_SHIP_UNDERWATER2 24 -#define MAP_GROUP_ABANDONED_SHIP_HIDDEN_FLOOR_CORRIDORS 24 -#define MAP_GROUP_ABANDONED_SHIP_HIDDEN_FLOOR_ROOMS 24 -#define MAP_GROUP_ISLAND_CAVE 24 -#define MAP_GROUP_ANCIENT_TOMB 24 -#define MAP_GROUP_UNDERWATER_ROUTE134 24 -#define MAP_GROUP_UNDERWATER_SEALED_CHAMBER 24 -#define MAP_GROUP_SEALED_CHAMBER_OUTER_ROOM 24 -#define MAP_GROUP_SEALED_CHAMBER_INNER_ROOM 24 -#define MAP_GROUP_SCORCHED_SLAB 24 -#define MAP_GROUP_UNUSED_AQUA_HIDEOUT_1F 24 -#define MAP_GROUP_UNUSED_AQUA_HIDEOUT_B1F 24 -#define MAP_GROUP_UNUSED_AQUA_HIDEOUT_B2F 24 -#define MAP_GROUP_SKY_PILLAR_ENTRANCE 24 -#define MAP_GROUP_SKY_PILLAR_OUTSIDE 24 -#define MAP_GROUP_SKY_PILLAR_1F 24 -#define MAP_GROUP_SKY_PILLAR_2F 24 -#define MAP_GROUP_SKY_PILLAR_3F 24 -#define MAP_GROUP_SKY_PILLAR_4F 24 -#define MAP_GROUP_SHOAL_CAVE_LOW_TIDE_ICE_ROOM 24 -#define MAP_GROUP_SKY_PILLAR_5F 24 -#define MAP_GROUP_SKY_PILLAR_TOP 24 -#define MAP_GROUP_MAGMA_HIDEOUT_ENTRANCE 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B1F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B2F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B3F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B4F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B5F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B6F 24 -#define MAP_GROUP_MAGMA_HIDEOUT_B7F 24 -#define MAP_GROUP_MIRAGE_TOWER_1F 24 -#define MAP_GROUP_MIRAGE_TOWER_2F 24 -#define MAP_GROUP_MIRAGE_TOWER_3F 24 -#define MAP_GROUP_MIRAGE_TOWER_4F 24 -#define MAP_GROUP_DESERT_UNDERPASS 24 -#define MAP_GROUP_ARTISAN_CAVE_1F 24 -#define MAP_GROUP_ARTISAN_CAVE_2F 24 -#define MAP_GROUP_UNKNOWN_UNDERWATER 24 -#define MAP_GROUP_MARINE_CAVE_1F 24 -#define MAP_GROUP_MARINE_CAVE_2F 24 -#define MAP_GROUP_TERRA_CAVE_1F 24 -#define MAP_GROUP_TERRA_CAVE_2F 24 -#define MAP_GROUP_ALTERING_CAVE 24 -#define MAP_GROUP_METEOR_FALLS_B1F_3R 24 - -//-------------------------------------------------- -// Map Group 25 -//-------------------------------------------------- - -enum -{ - MAP_ID_SECRET_BASE_RED_CAVE1, - MAP_ID_SECRET_BASE_BROWN_CAVE1, - MAP_ID_SECRET_BASE_BLUE_CAVE1, - MAP_ID_SECRET_BASE_YELLOW_CAVE1, - MAP_ID_SECRET_BASE_TREE1, - MAP_ID_SECRET_BASE_SHRUB1, - MAP_ID_SECRET_BASE_RED_CAVE2, - MAP_ID_SECRET_BASE_BROWN_CAVE2, - MAP_ID_SECRET_BASE_BLUE_CAVE2, - MAP_ID_SECRET_BASE_YELLOW_CAVE2, - MAP_ID_SECRET_BASE_TREE2, - MAP_ID_SECRET_BASE_SHRUB2, - MAP_ID_SECRET_BASE_RED_CAVE3, - MAP_ID_SECRET_BASE_BROWN_CAVE3, - MAP_ID_SECRET_BASE_BLUE_CAVE3, - MAP_ID_SECRET_BASE_YELLOW_CAVE3, - MAP_ID_SECRET_BASE_TREE3, - MAP_ID_SECRET_BASE_SHRUB3, - MAP_ID_SECRET_BASE_RED_CAVE4, - MAP_ID_SECRET_BASE_BROWN_CAVE4, - MAP_ID_SECRET_BASE_BLUE_CAVE4, - MAP_ID_SECRET_BASE_YELLOW_CAVE4, - MAP_ID_SECRET_BASE_TREE4, - MAP_ID_SECRET_BASE_SHRUB4, - MAP_ID_SINGLE_BATTLE_COLOSSEUM, - MAP_ID_TRADE_CENTER, - MAP_ID_RECORD_CORNER, - MAP_ID_DOUBLE_BATTLE_COLOSSEUM, - MAP_ID_LINK_CONTEST_ROOM1, - MAP_ID_UNKNOWN_MAP_25_29, - MAP_ID_UNKNOWN_MAP_25_30, - MAP_ID_UNKNOWN_MAP_25_31, - MAP_ID_UNKNOWN_MAP_25_32, - MAP_ID_UNKNOWN_MAP_25_33, - MAP_ID_UNKNOWN_MAP_25_34, - MAP_ID_LINK_CONTEST_ROOM2, - MAP_ID_LINK_CONTEST_ROOM3, - MAP_ID_LINK_CONTEST_ROOM4, - MAP_ID_LINK_CONTEST_ROOM5, - MAP_ID_LINK_CONTEST_ROOM6, - MAP_ID_INSIDE_OF_TRUCK, - MAP_ID_SS_TIDAL_CORRIDOR, - MAP_ID_SS_TIDAL_LOWER_DECK, - MAP_ID_SS_TIDAL_ROOMS, - MAP_ID_TEST_ROOM_1, - MAP_ID_TEST_ROOM_2, - MAP_ID_TEST_ROOM_3, - MAP_ID_TEST_ROOM_4, - MAP_ID_TEST_ROOM_5, - MAP_ID_TEST_ROOM_6, - MAP_ID_TEST_ROOM_7, - MAP_ID_TEST_ROOM_8, - MAP_ID_TEST_ROOM_9, - MAP_ID_TEST_ROOM_10, - MAP_ID_TEST_ROOM_11, - MAP_ID_TEST_ROOM_12, - MAP_ID_TEST_ROOM_13, - MAP_ID_TEST_ROOM_14, - MAP_ID_TEST_ROOM_15, - MAP_ID_TEST_ROOM_16, - MAP_ID_UNION_ROOM, -}; - -#define MAP_GROUP_SECRET_BASE_RED_CAVE1 25 -#define MAP_GROUP_SECRET_BASE_BROWN_CAVE1 25 -#define MAP_GROUP_SECRET_BASE_BLUE_CAVE1 25 -#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE1 25 -#define MAP_GROUP_SECRET_BASE_TREE1 25 -#define MAP_GROUP_SECRET_BASE_SHRUB1 25 -#define MAP_GROUP_SECRET_BASE_RED_CAVE2 25 -#define MAP_GROUP_SECRET_BASE_BROWN_CAVE2 25 -#define MAP_GROUP_SECRET_BASE_BLUE_CAVE2 25 -#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE2 25 -#define MAP_GROUP_SECRET_BASE_TREE2 25 -#define MAP_GROUP_SECRET_BASE_SHRUB2 25 -#define MAP_GROUP_SECRET_BASE_RED_CAVE3 25 -#define MAP_GROUP_SECRET_BASE_BROWN_CAVE3 25 -#define MAP_GROUP_SECRET_BASE_BLUE_CAVE3 25 -#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE3 25 -#define MAP_GROUP_SECRET_BASE_TREE3 25 -#define MAP_GROUP_SECRET_BASE_SHRUB3 25 -#define MAP_GROUP_SECRET_BASE_RED_CAVE4 25 -#define MAP_GROUP_SECRET_BASE_BROWN_CAVE4 25 -#define MAP_GROUP_SECRET_BASE_BLUE_CAVE4 25 -#define MAP_GROUP_SECRET_BASE_YELLOW_CAVE4 25 -#define MAP_GROUP_SECRET_BASE_TREE4 25 -#define MAP_GROUP_SECRET_BASE_SHRUB4 25 -#define MAP_GROUP_SINGLE_BATTLE_COLOSSEUM 25 -#define MAP_GROUP_TRADE_CENTER 25 -#define MAP_GROUP_RECORD_CORNER 25 -#define MAP_GROUP_DOUBLE_BATTLE_COLOSSEUM 25 -#define MAP_GROUP_LINK_CONTEST_ROOM1 25 -#define MAP_GROUP_UNKNOWN_MAP_25_29 25 -#define MAP_GROUP_UNKNOWN_MAP_25_30 25 -#define MAP_GROUP_UNKNOWN_MAP_25_31 25 -#define MAP_GROUP_UNKNOWN_MAP_25_32 25 -#define MAP_GROUP_UNKNOWN_MAP_25_33 25 -#define MAP_GROUP_UNKNOWN_MAP_25_34 25 -#define MAP_GROUP_LINK_CONTEST_ROOM2 25 -#define MAP_GROUP_LINK_CONTEST_ROOM3 25 -#define MAP_GROUP_LINK_CONTEST_ROOM4 25 -#define MAP_GROUP_LINK_CONTEST_ROOM5 25 -#define MAP_GROUP_LINK_CONTEST_ROOM6 25 -#define MAP_GROUP_INSIDE_OF_TRUCK 25 -#define MAP_GROUP_SS_TIDAL_CORRIDOR 25 -#define MAP_GROUP_SS_TIDAL_LOWER_DECK 25 -#define MAP_GROUP_SS_TIDAL_ROOMS 25 -#define MAP_GROUP_TEST_ROOM_1 25 -#define MAP_GROUP_TEST_ROOM_2 25 -#define MAP_GROUP_TEST_ROOM_3 25 -#define MAP_GROUP_TEST_ROOM_4 25 -#define MAP_GROUP_TEST_ROOM_5 25 -#define MAP_GROUP_TEST_ROOM_6 25 -#define MAP_GROUP_TEST_ROOM_7 25 -#define MAP_GROUP_TEST_ROOM_8 25 -#define MAP_GROUP_TEST_ROOM_9 25 -#define MAP_GROUP_TEST_ROOM_10 25 -#define MAP_GROUP_TEST_ROOM_11 25 -#define MAP_GROUP_TEST_ROOM_12 25 -#define MAP_GROUP_TEST_ROOM_13 25 -#define MAP_GROUP_TEST_ROOM_14 25 -#define MAP_GROUP_TEST_ROOM_15 25 -#define MAP_GROUP_TEST_ROOM_16 25 -#define MAP_GROUP_UNION_ROOM 25 -//-------------------------------------------------- -// Map Group 26 -//-------------------------------------------------- - -enum -{ - MAP_ID_SAFARI_ZONE_NORTHWEST, - MAP_ID_SAFARI_ZONE_NORTHEAST, - MAP_ID_SAFARI_ZONE_SOUTHWEST, - MAP_ID_SAFARI_ZONE_SOUTHEAST, - MAP_ID_BATTLE_FRONTIER_OUTSIDE_WEST, - MAP_ID_BATTLE_TOWER_LOBBY, - MAP_ID_BATTLE_TOWER_ELEVATOR, - MAP_ID_BATTLE_TOWER_CORRIDOR, - MAP_ID_BATTLE_TOWER_BATTLE_ROOM, - MAP_ID_SOUTHERN_ISLAND_EXTERIOR, - MAP_ID_SOUTHERN_ISLAND_INTERIOR, - MAP_ID_SAFARI_ZONE_REST_HOUSE, - MAP_ID_SAFARI_ZONE_EM_1, - MAP_ID_SAFARI_ZONE_EM_2, - MAP_ID_BATTLE_FRONTIER_OUTSIDE_EAST, - MAP_ID_BATTLE_FRONTIER_TAG_LINK, - MAP_ID_BATTLE_FRONTIER_TAG_LINK_CORRIDOR, - MAP_ID_BATTLE_FRONTIER_TAG_LINK_ARENA, - MAP_ID_BATTLE_DOME_LOBBY, - MAP_ID_BATTLE_DOME_CORRIDOR, - MAP_ID_BATTLE_DOME_ROOM, - MAP_ID_BATTLE_DOME_ARENA, - MAP_ID_BATTLE_PALACE_LOBBY, - MAP_ID_BATTLE_PALACE_CORRIDOR, - MAP_ID_BATTLE_PALACE_1F, - MAP_ID_BATTLE_PYRAMID_LOBBY, - MAP_ID_BATTLE_PYRAMID_UNKNOWN, - MAP_ID_BATTLE_PYRAMID_PEAK, - MAP_ID_BATTLE_ARENA_LOBBY, - MAP_ID_BATTLE_ARENA_CORRIDOR, - MAP_ID_BATTLE_ARENA_ARENA, - MAP_ID_BATTLE_FACTORY_LOBBY, - MAP_ID_BATTLE_FACTORY_CORRIDOR, - MAP_ID_BATTLE_FACTORY_ARENA, - MAP_ID_BATTLE_PALACE_2F, - MAP_ID_BATTLE_PALACE_3F, - MAP_ID_BATTLE_PALACE_4F, - MAP_ID_BATTLE_PALACE_5F, - MAP_ID_BATTLE_PALACE_6F, - MAP_ID_BATTLE_PALACE_TEST_ROOM, - MAP_ID_RANKING_HALL, - MAP_ID_STAT_RATER_HOUSE, - MAP_ID_BATTLE_FRONTIER_EXCHANGE, - MAP_ID_BATTLE_FRONTIER_MANIAC_HOUSE, - MAP_ID_BATTLE_FRONTIER_GAMBLING_HOUSE, - MAP_ID_BATTLE_FRONTIER_HOUSE1, - MAP_ID_BATTLE_FRONTIER_SCOTTS_HOUSE, - MAP_ID_BATTLE_FRONTIER_HOUSE2, - MAP_ID_BATTLE_FRONTIER_HOUSE3, - MAP_ID_BATTLE_FRONTIER_HOUSE4, - MAP_ID_BATTLE_FRONTIER_ENTRANCE_HALL, - MAP_ID_BATTLE_FRONTIER_HOUSE5, - MAP_ID_BATTLE_FRONTIER_UNUSED_HOUSE, - MAP_ID_BATTLE_FRONTIER_POKEMON_CENTER_1F, - MAP_ID_BATTLE_FRONTIER_POKEMON_CENTER_2F, - MAP_ID_BATTLE_FRONTIER_MART, - MAP_ID_FARAWAY_ISLAND_OUTSIDE, - MAP_ID_FARAWAY_ISLAND_FOREST, - MAP_ID_BIRTH_ISLAND_OUTSIDE, - MAP_ID_BIRTH_ISLAND_DOCKS, - MAP_ID_TRAINER_HILL_LOBBY, - MAP_ID_TRAINER_HILL_1F, - MAP_ID_TRAINER_HILL_2F, - MAP_ID_TRAINER_HILL_3F, - MAP_ID_TRAINER_HILL_4F, - MAP_ID_TRAINER_HILL_5F, - MAP_ID_NAVEL_ROCK_OUTSIDE, - MAP_ID_NAVEL_ROCK_DOCKS, - MAP_ID_NAVEL_ROCK_1F, - MAP_ID_NAVEL_ROCK_2F, - MAP_ID_NAVEL_ROCK_3F, - MAP_ID_NAVEL_ROCK_4F, - MAP_ID_NAVEL_ROCK_5F, - MAP_ID_NAVEL_ROCK_6F, - MAP_ID_NAVEL_ROCK_7F, - MAP_ID_NAVEL_ROCK_PEAK, - MAP_ID_NAVEL_ROCK_B1F, - MAP_ID_NAVEL_ROCK_B2F, - MAP_ID_NAVEL_ROCK_B3F, - MAP_ID_NAVEL_ROCK_B4F, - MAP_ID_NAVEL_ROCK_B5F, - MAP_ID_NAVEL_ROCK_B6F, - MAP_ID_NAVEL_ROCK_B7F, - MAP_ID_NAVEL_ROCK_B8F, - MAP_ID_NAVEL_ROCK_B9F, - MAP_ID_NAVEL_ROCK_B10F, - MAP_ID_NAVEL_ROCK_B11F, - MAP_ID_NAVEL_ROCK_INNER, - MAP_ID_TRAINER_HILL_ELEVATOR, -}; - -#define MAP_GROUP_SAFARI_ZONE_NORTHWEST 26 -#define MAP_GROUP_SAFARI_ZONE_NORTHEAST 26 -#define MAP_GROUP_SAFARI_ZONE_SOUTHWEST 26 -#define MAP_GROUP_SAFARI_ZONE_SOUTHEAST 26 -#define MAP_GROUP_BATTLE_FRONTIER_OUTSIDE_WEST 26 -#define MAP_GROUP_BATTLE_TOWER_LOBBY 26 -#define MAP_GROUP_BATTLE_TOWER_ELEVATOR 26 -#define MAP_GROUP_BATTLE_TOWER_CORRIDOR 26 -#define MAP_GROUP_BATTLE_TOWER_BATTLE_ROOM 26 -#define MAP_GROUP_SOUTHERN_ISLAND_EXTERIOR 26 -#define MAP_GROUP_SOUTHERN_ISLAND_INTERIOR 26 -#define MAP_GROUP_SAFARI_ZONE_REST_HOUSE 26 -#define MAP_GROUP_SAFARI_ZONE_EM_1 26 -#define MAP_GROUP_SAFARI_ZONE_EM_2 26 -#define MAP_GROUP_BATTLE_FRONTIER_OUTSIDE_EAST 26 -#define MAP_GROUP_BATTLE_FRONTIER_TAG_LINK 26 -#define MAP_GROUP_BATTLE_FRONTIER_TAG_LINK_CORRIDOR 26 -#define MAP_GROUP_BATTLE_FRONTIER_TAG_LINK_ARENA 26 -#define MAP_GROUP_BATTLE_DOME_LOBBY 26 -#define MAP_GROUP_BATTLE_DOME_CORRIDOR 26 -#define MAP_GROUP_BATTLE_DOME_ROOM 26 -#define MAP_GROUP_BATTLE_DOME_ARENA 26 -#define MAP_GROUP_BATTLE_PALACE_LOBBY 26 -#define MAP_GROUP_BATTLE_PALACE_CORRIDOR 26 -#define MAP_GROUP_BATTLE_PALACE_1F 26 -#define MAP_GROUP_BATTLE_PYRAMID_LOBBY 26 -#define MAP_GROUP_BATTLE_PYRAMID_UNKNOWN 26 -#define MAP_GROUP_BATTLE_PYRAMID_PEAK 26 -#define MAP_GROUP_BATTLE_ARENA_LOBBY 26 -#define MAP_GROUP_BATTLE_ARENA_CORRIDOR 26 -#define MAP_GROUP_BATTLE_ARENA_ARENA 26 // rename -#define MAP_GROUP_BATTLE_FACTORY_LOBBY 26 -#define MAP_GROUP_BATTLE_FACTORY_CORRIDOR 26 -#define MAP_GROUP_BATTLE_FACTORY_ARENA 26 -#define MAP_GROUP_BATTLE_PALACE_2F 26 -#define MAP_GROUP_BATTLE_PALACE_3F 26 -#define MAP_GROUP_BATTLE_PALACE_4F 26 -#define MAP_GROUP_BATTLE_PALACE_5F 26 -#define MAP_GROUP_BATTLE_PALACE_6F 26 -#define MAP_GROUP_BATTLE_PALACE_TEST_ROOM 26 -#define MAP_GROUP_RANKING_HALL 26 -#define MAP_GROUP_STAT_RATER_HOUSE 26 -#define MAP_GROUP_BATTLE_FRONTIER_EXCHANGE 26 -#define MAP_GROUP_BATTLE_FRONTIER_MANIAC_HOUSE 26 -#define MAP_GROUP_BATTLE_FRONTIER_GAMBLING_HOUSE 26 -#define MAP_GROUP_BATTLE_FRONTIER_HOUSE1 26 -#define MAP_GROUP_BATTLE_FRONTIER_SCOTTS_HOUSE 26 -#define MAP_GROUP_BATTLE_FRONTIER_HOUSE2 26 -#define MAP_GROUP_BATTLE_FRONTIER_HOUSE3 26 -#define MAP_GROUP_BATTLE_FRONTIER_HOUSE4 26 -#define MAP_GROUP_BATTLE_FRONTIER_ENTRANCE_HALL 26 -#define MAP_GROUP_BATTLE_FRONTIER_HOUSE5 26 -#define MAP_GROUP_BATTLE_FRONTIER_UNUSED_HOUSE 26 -#define MAP_GROUP_BATTLE_FRONTIER_POKEMON_CENTER_1F 26 -#define MAP_GROUP_BATTLE_FRONTIER_POKEMON_CENTER_2F 26 -#define MAP_GROUP_BATTLE_FRONTIER_MART 26 -#define MAP_GROUP_FARAWAY_ISLAND_OUTSIDE 26 -#define MAP_GROUP_FARAWAY_ISLAND_FOREST 26 -#define MAP_GROUP_BIRTH_ISLAND_OUTSIDE 26 -#define MAP_GROUP_BIRTH_ISLAND_DOCKS 26 -#define MAP_GROUP_TRAINER_HILL_LOBBY 26 -#define MAP_GROUP_TRAINER_HILL_1F 26 -#define MAP_GROUP_TRAINER_HILL_2F 26 -#define MAP_GROUP_TRAINER_HILL_3F 26 -#define MAP_GROUP_TRAINER_HILL_4F 26 -#define MAP_GROUP_TRAINER_HILL_5F 26 -#define MAP_GROUP_NAVEL_ROCK_OUTSIDE 26 -#define MAP_GROUP_NAVEL_ROCK_DOCKS 26 -#define MAP_GROUP_NAVEL_ROCK_1F 26 -#define MAP_GROUP_NAVEL_ROCK_2F 26 -#define MAP_GROUP_NAVEL_ROCK_3F 26 -#define MAP_GROUP_NAVEL_ROCK_4F 26 -#define MAP_GROUP_NAVEL_ROCK_5F 26 -#define MAP_GROUP_NAVEL_ROCK_6F 26 -#define MAP_GROUP_NAVEL_ROCK_7F 26 -#define MAP_GROUP_NAVEL_ROCK_PEAK 26 -#define MAP_GROUP_NAVEL_ROCK_B1F 26 -#define MAP_GROUP_NAVEL_ROCK_B2F 26 -#define MAP_GROUP_NAVEL_ROCK_B3F 26 -#define MAP_GROUP_NAVEL_ROCK_B4F 26 -#define MAP_GROUP_NAVEL_ROCK_B5F 26 -#define MAP_GROUP_NAVEL_ROCK_B6F 26 -#define MAP_GROUP_NAVEL_ROCK_B7F 26 -#define MAP_GROUP_NAVEL_ROCK_B8F 26 -#define MAP_GROUP_NAVEL_ROCK_B9F 26 -#define MAP_GROUP_NAVEL_ROCK_B10F 26 -#define MAP_GROUP_NAVEL_ROCK_B11F 26 -#define MAP_GROUP_NAVEL_ROCK_INNER 26 -#define MAP_GROUP_TRAINER_HILL_ELEVATOR 26 -//-------------------------------------------------- -// Map Group 27 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE104_PROTOTYPE, - MAP_ID_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP, -}; - -#define MAP_GROUP_ROUTE104_PROTOTYPE 27 -#define MAP_GROUP_ROUTE104_PROTOTYPE_PRETTY_PETAL_FLOWER_SHOP 27 - -//-------------------------------------------------- -// Map Group 28 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE109_SEASHORE_HOUSE, -}; - -#define MAP_GROUP_ROUTE109_SEASHORE_HOUSE 28 - -//-------------------------------------------------- -// Map Group 29 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE110_TRICK_HOUSE_ENTRANCE, - MAP_ID_ROUTE110_TRICK_HOUSE_END, - MAP_ID_ROUTE110_TRICK_HOUSE_CORRIDOR, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE1, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE2, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE3, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE4, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE5, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE6, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE7, - MAP_ID_ROUTE110_TRICK_HOUSE_PUZZLE8, - MAP_ID_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE, - MAP_ID_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE, -}; - -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_ENTRANCE 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_END 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_CORRIDOR 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE1 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE2 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE3 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE4 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE5 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE6 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE7 29 -#define MAP_GROUP_ROUTE110_TRICK_HOUSE_PUZZLE8 29 -#define MAP_GROUP_ROUTE110_SEASIDE_CYCLING_ROAD_SOUTH_ENTRANCE 29 -#define MAP_GROUP_ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE 29 - -//-------------------------------------------------- -// Map Group 30 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE113_GLASS_WORKSHOP, -}; - -#define MAP_GROUP_ROUTE113_GLASS_WORKSHOP 30 - -//-------------------------------------------------- -// Map Group 31 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE123_BERRY_MASTERS_HOUSE, -}; - -#define MAP_GROUP_ROUTE123_BERRY_MASTERS_HOUSE 31 - -//-------------------------------------------------- -// Map Group 32 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE119_WEATHER_INSTITUTE_1F, - MAP_ID_ROUTE119_WEATHER_INSTITUTE_2F, - MAP_ID_ROUTE119_HOUSE, -}; - -#define MAP_GROUP_ROUTE119_WEATHER_INSTITUTE_1F 32 -#define MAP_GROUP_ROUTE119_WEATHER_INSTITUTE_2F 32 -#define MAP_GROUP_ROUTE119_HOUSE 32 - -//-------------------------------------------------- -// Map Group 33 -//-------------------------------------------------- - -enum -{ - MAP_ID_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE, -}; - -#define MAP_GROUP_ROUTE124_DIVING_TREASURE_HUNTERS_HOUSE 33 - -#endif // GUARD_MAP_CONSTANTS_H
\ No newline at end of file diff --git a/include/map_object_constants.h b/include/map_object_constants.h deleted file mode 100644 index 79482b54a..000000000 --- a/include/map_object_constants.h +++ /dev/null @@ -1,239 +0,0 @@ -#ifndef GUARD_MAP_OBJECT_CONSTANTS_H -#define GUARD_MAP_OBJECT_CONSTANTS_H - -enum -{ - MAP_OBJ_GFX_BRENDAN_NORMAL, - MAP_OBJ_GFX_BRENDAN_MACH_BIKE, - MAP_OBJ_GFX_BRENDAN_SURFING, - MAP_OBJ_GFX_BRENDAN_FIELD_MOVE, - MAP_OBJ_GFX_QUINTY_PLUMP, - MAP_OBJ_GFX_LITTLE_BOY_1, - MAP_OBJ_GFX_LITTLE_GIRL_1, - MAP_OBJ_GFX_BOY_1, - MAP_OBJ_GFX_GIRL_1, - MAP_OBJ_GFX_BOY_2, - MAP_OBJ_GFX_GIRL_2, - MAP_OBJ_GFX_LITTLE_BOY_2, - MAP_OBJ_GFX_LITTLE_GIRL_2, - MAP_OBJ_GFX_BOY_3, - MAP_OBJ_GFX_GIRL_3, - MAP_OBJ_GFX_BOY_4, - MAP_OBJ_GFX_WOMAN_1, - MAP_OBJ_GFX_FAT_MAN, - MAP_OBJ_GFX_WOMAN_2, - MAP_OBJ_GFX_MAN_1, - MAP_OBJ_GFX_WOMAN_3, - MAP_OBJ_GFX_OLD_MAN_1, - MAP_OBJ_GFX_OLD_WOMAN_1, - MAP_OBJ_GFX_MAN_2, - MAP_OBJ_GFX_WOMAN_4, - MAP_OBJ_GFX_MAN_3, - MAP_OBJ_GFX_WOMAN_5, - MAP_OBJ_GFX_COOK, - MAP_OBJ_GFX_WOMAN_6, - MAP_OBJ_GFX_OLD_MAN_2, - MAP_OBJ_GFX_OLD_WOMAN_2, - MAP_OBJ_GFX_CAMPER, - MAP_OBJ_GFX_PICNICKER, - MAP_OBJ_GFX_MAN_4, - MAP_OBJ_GFX_WOMAN_7, - MAP_OBJ_GFX_YOUNGSTER, - MAP_OBJ_GFX_BUG_CATCHER, - MAP_OBJ_GFX_PSYCHIC_M, - MAP_OBJ_GFX_SCHOOL_KID_M, - MAP_OBJ_GFX_MANIAC, - MAP_OBJ_GFX_HEX_MANIAC, - MAP_OBJ_GFX_WOMAN_8, - MAP_OBJ_GFX_SWIMMER_M, - MAP_OBJ_GFX_SWIMMER_F, - MAP_OBJ_GFX_BLACK_BELT, - MAP_OBJ_GFX_BEAUTY, - MAP_OBJ_GFX_SCIENTIST_1, - MAP_OBJ_GFX_LASS, - MAP_OBJ_GFX_GENTLEMAN, - MAP_OBJ_GFX_SAILOR, - MAP_OBJ_GFX_FISHERMAN, - MAP_OBJ_GFX_RUNNING_TRIATHLETE_M, - MAP_OBJ_GFX_RUNNING_TRIATHLETE_F, - MAP_OBJ_GFX_TUBER_F, - MAP_OBJ_GFX_TUBER_M, - MAP_OBJ_GFX_HIKER, - MAP_OBJ_GFX_CYCLING_TRIATHLETE_M, - MAP_OBJ_GFX_CYCLING_TRIATHLETE_F, - MAP_OBJ_GFX_NURSE, - MAP_OBJ_GFX_ITEM_BALL, - MAP_OBJ_GFX_BERRY_TREE, - MAP_OBJ_GFX_BERRY_TREE_EARLY_STAGES, - MAP_OBJ_GFX_BERRY_TREE_LATE_STAGES, - MAP_OBJ_GFX_BRENDAN_ACRO_BIKE, - MAP_OBJ_GFX_PROF_BIRCH, - MAP_OBJ_GFX_MAN_5, - MAP_OBJ_GFX_MAN_6, - MAP_OBJ_GFX_REPORTER_M, - MAP_OBJ_GFX_REPORTER_F, - MAP_OBJ_GFX_BARD, - MAP_OBJ_GFX_HIPSTER, - MAP_OBJ_GFX_TRADER, - MAP_OBJ_GFX_STORYTELLER, - MAP_OBJ_GFX_GIDDY, - MAP_OBJ_GFX_UNUSED_MAUVILLE_OLD_MAN_1, - MAP_OBJ_GFX_UNUSED_MAUVILLE_OLD_MAN_2, - MAP_OBJ_GFX_UNUSED_NATU_DOLL, - MAP_OBJ_GFX_UNUSED_MAGNEMITE_DOLL, - MAP_OBJ_GFX_UNUSED_SQUIRTLE_DOLL, - MAP_OBJ_GFX_UNUSED_WOOPER_DOLL, - MAP_OBJ_GFX_UNUSED_PIKACHU_DOLL, - MAP_OBJ_GFX_UNUSED_PORYGON2_DOLL, - MAP_OBJ_GFX_CUTTABLE_TREE, - MAP_OBJ_GFX_MART_EMPLOYEE, - MAP_OBJ_GFX_ROOFTOP_SALE_WOMAN, - MAP_OBJ_GFX_TEALA, - MAP_OBJ_GFX_BREAKABLE_ROCK, - MAP_OBJ_GFX_PUSHABLE_BOULDER, - MAP_OBJ_GFX_MR_BRINEYS_BOAT, - MAP_OBJ_GFX_MAY_NORMAL, - MAP_OBJ_GFX_MAY_MACH_BIKE, - MAP_OBJ_GFX_MAY_ACRO_BIKE, - MAP_OBJ_GFX_MAY_SURFING, - MAP_OBJ_GFX_MAY_FIELD_MOVE, - MAP_OBJ_GFX_TRUCK, - MAP_OBJ_GFX_MACHOKE_CARRYING_BOX, - MAP_OBJ_GFX_MACHOKE_FACING_AWAY, - MAP_OBJ_GFX_BIRCHS_BAG, - MAP_OBJ_GFX_POOCHYENA, - MAP_OBJ_GFX_ARTIST, - MAP_OBJ_GFX_RIVAL_BRENDAN_NORMAL, - MAP_OBJ_GFX_RIVAL_BRENDAN_MACH_BIKE, - MAP_OBJ_GFX_RIVAL_BRENDAN_ACRO_BIKE, - MAP_OBJ_GFX_RIVAL_BRENDAN_SURFING, - MAP_OBJ_GFX_RIVAL_BRENDAN_FIELD_MOVE, - MAP_OBJ_GFX_RIVAL_MAY_NORMAL, - MAP_OBJ_GFX_RIVAL_MAY_MACH_BIKE, - MAP_OBJ_GFX_RIVAL_MAY_ACRO_BIKE, - MAP_OBJ_GFX_RIVAL_MAY_SURFING, - MAP_OBJ_GFX_RIVAL_MAY_FIELD_MOVE, - MAP_OBJ_GFX_CAMERAMAN, - MAP_OBJ_GFX_BRENDAN_UNDERWATER, - MAP_OBJ_GFX_MAY_UNDERWATER, - MAP_OBJ_GFX_MOVING_BOX, - MAP_OBJ_GFX_CABLE_CAR, - MAP_OBJ_GFX_SCIENTIST_2, - MAP_OBJ_GFX_MAN_7, - MAP_OBJ_GFX_AQUA_MEMBER_M, - MAP_OBJ_GFX_AQUA_MEMBER_F, - MAP_OBJ_GFX_MAGMA_MEMBER_M, - MAP_OBJ_GFX_MAGMA_MEMBER_F, - MAP_OBJ_GFX_SIDNEY, - MAP_OBJ_GFX_PHOEBE, - MAP_OBJ_GFX_GLACIA, - MAP_OBJ_GFX_DRAKE, - MAP_OBJ_GFX_ROXANNE, - MAP_OBJ_GFX_BRAWLY, - MAP_OBJ_GFX_WATTSON, - MAP_OBJ_GFX_FLANNERY, - MAP_OBJ_GFX_NORMAN, - MAP_OBJ_GFX_WINONA, - MAP_OBJ_GFX_LIZA, - MAP_OBJ_GFX_TATE, - MAP_OBJ_GFX_WALLACE, - MAP_OBJ_GFX_STEVEN, - MAP_OBJ_GFX_WALLY, - MAP_OBJ_GFX_LITTLE_BOY_3, - MAP_OBJ_GFX_BRENDAN_FISHING, - MAP_OBJ_GFX_MAY_FISHING, - MAP_OBJ_GFX_HOT_SPRINGS_OLD_WOMAN, - MAP_OBJ_GFX_SS_TIDAL, - MAP_OBJ_GFX_SUBMARINE_SHADOW, - MAP_OBJ_GFX_PICHU_DOLL, - MAP_OBJ_GFX_PIKACHU_DOLL, - MAP_OBJ_GFX_MARILL_DOLL, - MAP_OBJ_GFX_TOGEPI_DOLL, - MAP_OBJ_GFX_CYNDAQUIL_DOLL, - MAP_OBJ_GFX_CHIKORITA_DOLL, - MAP_OBJ_GFX_TOTODILE_DOLL, - MAP_OBJ_GFX_JIGGLYPUFF_DOLL, - MAP_OBJ_GFX_MEOWTH_DOLL, - MAP_OBJ_GFX_CLEFAIRY_DOLL, - MAP_OBJ_GFX_DITTO_DOLL, - MAP_OBJ_GFX_SMOOCHUM_DOLL, - MAP_OBJ_GFX_TREECKO_DOLL, - MAP_OBJ_GFX_TORCHIC_DOLL, - MAP_OBJ_GFX_MUDKIP_DOLL, - MAP_OBJ_GFX_DUSKULL_DOLL, - MAP_OBJ_GFX_WYNAUT_DOLL, - MAP_OBJ_GFX_BALTOY_DOLL, - MAP_OBJ_GFX_KECLEON_DOLL, - MAP_OBJ_GFX_AZURILL_DOLL, - MAP_OBJ_GFX_SKITTY_DOLL, - MAP_OBJ_GFX_SWABLU_DOLL, - MAP_OBJ_GFX_GULPIN_DOLL, - MAP_OBJ_GFX_LOTAD_DOLL, - MAP_OBJ_GFX_SEEDOT_DOLL, - MAP_OBJ_GFX_PIKA_CUSHION, - MAP_OBJ_GFX_ROUND_CUSHION, - MAP_OBJ_GFX_KISS_CUSHION, - MAP_OBJ_GFX_ZIGZAG_CUSHION, - MAP_OBJ_GFX_SPIN_CUSHION, - MAP_OBJ_GFX_DIAMOND_CUSHION, - MAP_OBJ_GFX_BALL_CUSHION, - MAP_OBJ_GFX_GRASS_CUSHION, - MAP_OBJ_GFX_FIRE_CUSHION, - MAP_OBJ_GFX_WATER_CUSHION, - MAP_OBJ_GFX_BIG_SNORLAX_DOLL, - MAP_OBJ_GFX_BIG_RHYDON_DOLL, - MAP_OBJ_GFX_BIG_LAPRAS_DOLL, - MAP_OBJ_GFX_BIG_VENUSAUR_DOLL, - MAP_OBJ_GFX_BIG_CHARIZARD_DOLL, - MAP_OBJ_GFX_BIG_BLASTOISE_DOLL, - MAP_OBJ_GFX_BIG_WAILMER_DOLL, - MAP_OBJ_GFX_BIG_REGIROCK_DOLL, - MAP_OBJ_GFX_BIG_REGICE_DOLL, - MAP_OBJ_GFX_BIG_REGISTEEL_DOLL, - MAP_OBJ_GFX_LATIAS, - MAP_OBJ_GFX_LATIOS, - MAP_OBJ_GFX_BOY_5, - MAP_OBJ_GFX_CONTEST_JUDGE, - MAP_OBJ_GFX_BRENDAN_WATERING, - MAP_OBJ_GFX_MAY_WATERING, - MAP_OBJ_GFX_BRENDAN_DECORATING, - MAP_OBJ_GFX_MAY_DECORATING, - MAP_OBJ_GFX_ARCHIE, - MAP_OBJ_GFX_MAXIE, - MAP_OBJ_GFX_KYOGRE_1, - MAP_OBJ_GFX_GROUDON_1, - MAP_OBJ_GFX_FOSSIL, - MAP_OBJ_GFX_REGIROCK, - MAP_OBJ_GFX_REGICE, - MAP_OBJ_GFX_REGISTEEL, - MAP_OBJ_GFX_SKITTY, - MAP_OBJ_GFX_KECLEON_1, - MAP_OBJ_GFX_KYOGRE_2, - MAP_OBJ_GFX_GROUDON_2, - MAP_OBJ_GFX_RAYQUAZA, - MAP_OBJ_GFX_ZIGZAGOON, - MAP_OBJ_GFX_PIKACHU, - MAP_OBJ_GFX_AZUMARILL, - MAP_OBJ_GFX_WINGULL, - MAP_OBJ_GFX_KECLEON_2, - MAP_OBJ_GFX_TUBER_M_SWIMMING, - MAP_OBJ_GFX_AZURILL, - MAP_OBJ_GFX_MOM, - MAP_OBJ_GFX_LINK_BRENDAN, - MAP_OBJ_GFX_LINK_MAY, -}; - -enum { - SHADOW_SIZE_S, - SHADOW_SIZE_M, - SHADOW_SIZE_L, - SHADOW_SIZE_XL -}; - -enum { - TRACKS_NONE, - TRACKS_FOOT, - TRACKS_BIKE_TIRE -}; - -#endif // GUARD_MAP_OBJECT_CONSTANTS_H diff --git a/include/moves.h b/include/moves.h deleted file mode 100644 index 682f59506..000000000 --- a/include/moves.h +++ /dev/null @@ -1,366 +0,0 @@ -#ifndef GUARD_MOVES_H -#define GUARD_MOVES_H - -enum -{ - MOVE_NONE, - MOVE_POUND, - MOVE_KARATE_CHOP, - MOVE_DOUBLE_SLAP, - MOVE_COMET_PUNCH, - MOVE_MEGA_PUNCH, - MOVE_PAY_DAY, - MOVE_FIRE_PUNCH, - MOVE_ICE_PUNCH, - MOVE_THUNDER_PUNCH, - MOVE_SCRATCH, - MOVE_VICE_GRIP, - MOVE_GUILLOTINE, - MOVE_RAZOR_WIND, - MOVE_SWORDS_DANCE, - MOVE_CUT, - MOVE_GUST, - MOVE_WING_ATTACK, - MOVE_WHIRLWIND, - MOVE_FLY, - MOVE_BIND, - MOVE_SLAM, - MOVE_VINE_WHIP, - MOVE_STOMP, - MOVE_DOUBLE_KICK, - MOVE_MEGA_KICK, - MOVE_JUMP_KICK, - MOVE_ROLLING_KICK, - MOVE_SAND_ATTACK, - MOVE_HEADBUTT, - MOVE_HORN_ATTACK, - MOVE_FURY_ATTACK, - MOVE_HORN_DRILL, - MOVE_TACKLE, - MOVE_BODY_SLAM, - MOVE_WRAP, - MOVE_TAKE_DOWN, - MOVE_THRASH, - MOVE_DOUBLE_EDGE, - MOVE_TAIL_WHIP, - MOVE_POISON_STING, - MOVE_TWINEEDLE, - MOVE_PIN_MISSILE, - MOVE_LEER, - MOVE_BITE, - MOVE_GROWL, - MOVE_ROAR, - MOVE_SING, - MOVE_SUPERSONIC, - MOVE_SONIC_BOOM, - MOVE_DISABLE, - MOVE_ACID, - MOVE_EMBER, - MOVE_FLAMETHROWER, - MOVE_MIST, - MOVE_WATER_GUN, - MOVE_HYDRO_PUMP, - MOVE_SURF, - MOVE_ICE_BEAM, - MOVE_BLIZZARD, - MOVE_PSYBEAM, - MOVE_BUBBLE_BEAM, - MOVE_AURORA_BEAM, - MOVE_HYPER_BEAM, - MOVE_PECK, - MOVE_DRILL_PECK, - MOVE_SUBMISSION, - MOVE_LOW_KICK, - MOVE_COUNTER, - MOVE_SEISMIC_TOSS, - MOVE_STRENGTH, - MOVE_ABSORB, - MOVE_MEGA_DRAIN, - MOVE_LEECH_SEED, - MOVE_GROWTH, - MOVE_RAZOR_LEAF, - MOVE_SOLAR_BEAM, - MOVE_POISON_POWDER, - MOVE_STUN_SPORE, - MOVE_SLEEP_POWDER, - MOVE_PETAL_DANCE, - MOVE_STRING_SHOT, - MOVE_DRAGON_RAGE, - MOVE_FIRE_SPIN, - MOVE_THUNDER_SHOCK, - MOVE_THUNDERBOLT, - MOVE_THUNDER_WAVE, - MOVE_THUNDER, - MOVE_ROCK_THROW, - MOVE_EARTHQUAKE, - MOVE_FISSURE, - MOVE_DIG, - MOVE_TOXIC, - MOVE_CONFUSION, - MOVE_PSYCHIC, - MOVE_HYPNOSIS, - MOVE_MEDITATE, - MOVE_AGILITY, - MOVE_QUICK_ATTACK, - MOVE_RAGE, - MOVE_TELEPORT, - MOVE_NIGHT_SHADE, - MOVE_MIMIC, - MOVE_SCREECH, - MOVE_DOUBLE_TEAM, - MOVE_RECOVER, - MOVE_HARDEN, - MOVE_MINIMIZE, - MOVE_SMOKESCREEN, - MOVE_CONFUSE_RAY, - MOVE_WITHDRAW, - MOVE_DEFENSE_CURL, - MOVE_BARRIER, - MOVE_LIGHT_SCREEN, - MOVE_HAZE, - MOVE_REFLECT, - MOVE_FOCUS_ENERGY, - MOVE_BIDE, - MOVE_METRONOME, - MOVE_MIRROR_MOVE, - MOVE_SELF_DESTRUCT, - MOVE_EGG_BOMB, - MOVE_LICK, - MOVE_SMOG, - MOVE_SLUDGE, - MOVE_BONE_CLUB, - MOVE_FIRE_BLAST, - MOVE_WATERFALL, - MOVE_CLAMP, - MOVE_SWIFT, - MOVE_SKULL_BASH, - MOVE_SPIKE_CANNON, - MOVE_CONSTRICT, - MOVE_AMNESIA, - MOVE_KINESIS, - MOVE_SOFT_BOILED, - MOVE_HI_JUMP_KICK, - MOVE_GLARE, - MOVE_DREAM_EATER, - MOVE_POISON_GAS, - MOVE_BARRAGE, - MOVE_LEECH_LIFE, - MOVE_LOVELY_KISS, - MOVE_SKY_ATTACK, - MOVE_TRANSFORM, - MOVE_BUBBLE, - MOVE_DIZZY_PUNCH, - MOVE_SPORE, - MOVE_FLASH, - MOVE_PSYWAVE, - MOVE_SPLASH, - MOVE_ACID_ARMOR, - MOVE_CRABHAMMER, - MOVE_EXPLOSION, - MOVE_FURY_SWIPES, - MOVE_BONEMERANG, - MOVE_REST, - MOVE_ROCK_SLIDE, - MOVE_HYPER_FANG, - MOVE_SHARPEN, - MOVE_CONVERSION, - MOVE_TRI_ATTACK, - MOVE_SUPER_FANG, - MOVE_SLASH, - MOVE_SUBSTITUTE, - MOVE_STRUGGLE, - MOVE_SKETCH, - MOVE_TRIPLE_KICK, - MOVE_THIEF, - MOVE_SPIDER_WEB, - MOVE_MIND_READER, - MOVE_NIGHTMARE, - MOVE_FLAME_WHEEL, - MOVE_SNORE, - MOVE_CURSE, - MOVE_FLAIL, - MOVE_CONVERSION_2, - MOVE_AEROBLAST, - MOVE_COTTON_SPORE, - MOVE_REVERSAL, - MOVE_SPITE, - MOVE_POWDER_SNOW, - MOVE_PROTECT, - MOVE_MACH_PUNCH, - MOVE_SCARY_FACE, - MOVE_FAINT_ATTACK, - MOVE_SWEET_KISS, - MOVE_BELLY_DRUM, - MOVE_SLUDGE_BOMB, - MOVE_MUD_SLAP, - MOVE_OCTAZOOKA, - MOVE_SPIKES, - MOVE_ZAP_CANNON, - MOVE_FORESIGHT, - MOVE_DESTINY_BOND, - MOVE_PERISH_SONG, - MOVE_ICY_WIND, - MOVE_DETECT, - MOVE_BONE_RUSH, - MOVE_LOCK_ON, - MOVE_OUTRAGE, - MOVE_SANDSTORM, - MOVE_GIGA_DRAIN, - MOVE_ENDURE, - MOVE_CHARM, - MOVE_ROLLOUT, - MOVE_FALSE_SWIPE, - MOVE_SWAGGER, - MOVE_MILK_DRINK, - MOVE_SPARK, - MOVE_FURY_CUTTER, - MOVE_STEEL_WING, - MOVE_MEAN_LOOK, - MOVE_ATTRACT, - MOVE_SLEEP_TALK, - MOVE_HEAL_BELL, - MOVE_RETURN, - MOVE_PRESENT, - MOVE_FRUSTRATION, - MOVE_SAFEGUARD, - MOVE_PAIN_SPLIT, - MOVE_SACRED_FIRE, - MOVE_MAGNITUDE, - MOVE_DYNAMIC_PUNCH, - MOVE_MEGAHORN, - MOVE_DRAGON_BREATH, - MOVE_BATON_PASS, - MOVE_ENCORE, - MOVE_PURSUIT, - MOVE_RAPID_SPIN, - MOVE_SWEET_SCENT, - MOVE_IRON_TAIL, - MOVE_METAL_CLAW, - MOVE_VITAL_THROW, - MOVE_MORNING_SUN, - MOVE_SYNTHESIS, - MOVE_MOONLIGHT, - MOVE_HIDDEN_POWER, - MOVE_CROSS_CHOP, - MOVE_TWISTER, - MOVE_RAIN_DANCE, - MOVE_SUNNY_DAY, - MOVE_CRUNCH, - MOVE_MIRROR_COAT, - MOVE_PSYCH_UP, - MOVE_EXTREME_SPEED, - MOVE_ANCIENT_POWER, - MOVE_SHADOW_BALL, - MOVE_FUTURE_SIGHT, - MOVE_ROCK_SMASH, - MOVE_WHIRLPOOL, - MOVE_BEAT_UP, - MOVE_FAKE_OUT, - MOVE_UPROAR, - MOVE_STOCKPILE, - MOVE_SPIT_UP, - MOVE_SWALLOW, - MOVE_HEAT_WAVE, - MOVE_HAIL, - MOVE_TORMENT, - MOVE_FLATTER, - MOVE_WILL_O_WISP, - MOVE_MEMENTO, - MOVE_FACADE, - MOVE_FOCUS_PUNCH, - MOVE_SMELLING_SALT, - MOVE_FOLLOW_ME, - MOVE_NATURE_POWER, - MOVE_CHARGE, - MOVE_TAUNT, - MOVE_HELPING_HAND, - MOVE_TRICK, - MOVE_ROLE_PLAY, - MOVE_WISH, - MOVE_ASSIST, - MOVE_INGRAIN, - MOVE_SUPERPOWER, - MOVE_MAGIC_COAT, - MOVE_RECYCLE, - MOVE_REVENGE, - MOVE_BRICK_BREAK, - MOVE_YAWN, - MOVE_KNOCK_OFF, - MOVE_ENDEAVOR, - MOVE_ERUPTION, - MOVE_SKILL_SWAP, - MOVE_IMPRISON, - MOVE_REFRESH, - MOVE_GRUDGE, - MOVE_SNATCH, - MOVE_SECRET_POWER, - MOVE_DIVE, - MOVE_ARM_THRUST, - MOVE_CAMOUFLAGE, - MOVE_TAIL_GLOW, - MOVE_LUSTER_PURGE, - MOVE_MIST_BALL, - MOVE_FEATHER_DANCE, - MOVE_TEETER_DANCE, - MOVE_BLAZE_KICK, - MOVE_MUD_SPORT, - MOVE_ICE_BALL, - MOVE_NEEDLE_ARM, - MOVE_SLACK_OFF, - MOVE_HYPER_VOICE, - MOVE_POISON_FANG, - MOVE_CRUSH_CLAW, - MOVE_BLAST_BURN, - MOVE_HYDRO_CANNON, - MOVE_METEOR_MASH, - MOVE_ASTONISH, - MOVE_WEATHER_BALL, - MOVE_AROMATHERAPY, - MOVE_FAKE_TEARS, - MOVE_AIR_CUTTER, - MOVE_OVERHEAT, - MOVE_ODOR_SLEUTH, - MOVE_ROCK_TOMB, - MOVE_SILVER_WIND, - MOVE_METAL_SOUND, - MOVE_GRASS_WHISTLE, - MOVE_TICKLE, - MOVE_COSMIC_POWER, - MOVE_WATER_SPOUT, - MOVE_SIGNAL_BEAM, - MOVE_SHADOW_PUNCH, - MOVE_EXTRASENSORY, - MOVE_SKY_UPPERCUT, - MOVE_SAND_TOMB, - MOVE_SHEER_COLD, - MOVE_MUDDY_WATER, - MOVE_BULLET_SEED, - MOVE_AERIAL_ACE, - MOVE_ICICLE_SPEAR, - MOVE_IRON_DEFENSE, - MOVE_BLOCK, - MOVE_HOWL, - MOVE_DRAGON_CLAW, - MOVE_FRENZY_PLANT, - MOVE_BULK_UP, - MOVE_BOUNCE, - MOVE_MUD_SHOT, - MOVE_POISON_TAIL, - MOVE_COVET, - MOVE_VOLT_TACKLE, - MOVE_MAGICAL_LEAF, - MOVE_WATER_SPORT, - MOVE_CALM_MIND, - MOVE_LEAF_BLADE, - MOVE_DRAGON_DANCE, - MOVE_ROCK_BLAST, - MOVE_SHOCK_WAVE, - MOVE_WATER_PULSE, - MOVE_DOOM_DESIRE, - MOVE_PSYCHO_BOOST, -}; -extern const u8 gMoveNames[][13]; - -#define LAST_MOVE_INDEX MOVE_PSYCHO_BOOST - -#endif // GUARD_MOVES_H diff --git a/include/overworld.h b/include/overworld.h index ea3d27319..a5fba0c10 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -68,4 +68,7 @@ void c2_load_new_map(void); void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused); void mapldr_default(void); +void IncrementGameStat(u8); +u32 GetGameStat(u8); + #endif //GUARD_ROM4_H diff --git a/include/party_menu.h b/include/party_menu.h index 7a7d59cd0..c787bafb1 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -1,8 +1,18 @@ #ifndef GUARD_PARTY_MENU_H #define GUARD_PARTY_MENU_H +enum { + AILMENT_NONE, + AILMENT_PSN, + AILMENT_PRZ, + AILMENT_SLP, + AILMENT_FRZ, + AILMENT_BRN +}; + bool8 pokemon_has_move(struct Pokemon *, u16); void sub_81B58A8(void); void DoWallyTutorialBagMenu(void); +u8 pokemon_ailments_get_primary(u32 status); #endif // GUARD_PARTY_MENU_H diff --git a/include/pokeball.h b/include/pokeball.h index 76f084465..84178b5b2 100644 --- a/include/pokeball.h +++ b/include/pokeball.h @@ -1,8 +1,32 @@ #ifndef GUARD_POKEBALL_H #define GUARD_POKEBALL_H -u8 sub_80753E8(u16, u8); +enum +{ + BALL_POKE, + BALL_GREAT, + BALL_SAFARI, + BALL_ULTRA, + BALL_MASTER, + BALL_NET, + BALL_DIVE, + BALL_NEST, + BALL_REPEAT, + BALL_TIMER, + BALL_LUXURY, + BALL_PREMIER, + POKEBALL_COUNT +}; + +#define POKEBALL_PLAYER_SENDOUT 0xFF +#define POKEBALL_OPPONENT_SENDOUT 0xFE + +u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow); +void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 bank, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 g, u32 h, u16 species); +u8 sub_807671C(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h); void sub_8076918(u8 bank); void DoHitAnimHealthboxEffect(u8 bank); +void LoadBallGfx(u8 ballId); +void FreeBallGfx(u8 ballId); #endif // GUARD_POKEBALL_H diff --git a/include/pokenav.h b/include/pokenav.h new file mode 100644 index 000000000..06676610a --- /dev/null +++ b/include/pokenav.h @@ -0,0 +1,6 @@ +#ifndef GUARD_POKENAV_H +#define GUARD_POKENAV_H + +bool8 sub_81D5C18(void); + +#endif //GUARD_POKENAV_H diff --git a/include/rng.h b/include/random.h index ae98e575f..79a9d71dc 100644 --- a/include/rng.h +++ b/include/random.h @@ -1,5 +1,5 @@ -#ifndef GUARD_RNG_H -#define GUARD_RNG_H +#ifndef GUARD_RANDOM_H +#define GUARD_RANDOM_H extern u32 gRngValue; extern u32 gRng2Value; @@ -15,4 +15,4 @@ u16 Random2(void); void SeedRng(u16 seed); void SeedRng2(u16 seed); -#endif // GUARD_RNG_H +#endif // GUARD_RANDOM_H diff --git a/include/species.h b/include/species.h deleted file mode 100644 index ac0797418..000000000 --- a/include/species.h +++ /dev/null @@ -1,454 +0,0 @@ -#ifndef GUARD_SPECIES_H -#define GUARD_SPECIES_H - -enum -{ - SPECIES_NONE, // 0x000 - SPECIES_BULBASAUR, // 0x001 - SPECIES_IVYSAUR, // 0x002 - SPECIES_VENUSAUR, // 0x003 - SPECIES_CHARMANDER, // 0x004 - SPECIES_CHARMELEON, // 0x005 - SPECIES_CHARIZARD, // 0x006 - SPECIES_SQUIRTLE, // 0x007 - SPECIES_WARTORTLE, // 0x008 - SPECIES_BLASTOISE, // 0x009 - SPECIES_CATERPIE, // 0x00a - SPECIES_METAPOD, // 0x00b - SPECIES_BUTTERFREE, // 0x00c - SPECIES_WEEDLE, // 0x00d - SPECIES_KAKUNA, // 0x00e - SPECIES_BEEDRILL, // 0x00f - SPECIES_PIDGEY, // 0x010 - SPECIES_PIDGEOTTO, // 0x011 - SPECIES_PIDGEOT, // 0x012 - SPECIES_RATTATA, // 0x013 - SPECIES_RATICATE, // 0x014 - SPECIES_SPEAROW, // 0x015 - SPECIES_FEAROW, // 0x016 - SPECIES_EKANS, // 0x017 - SPECIES_ARBOK, // 0x018 - SPECIES_PIKACHU, // 0x019 - SPECIES_RAICHU, // 0x01a - SPECIES_SANDSHREW, // 0x01b - SPECIES_SANDSLASH, // 0x01c - SPECIES_NIDORAN_F, // 0x01d - SPECIES_NIDORINA, // 0x01e - SPECIES_NIDOQUEEN, // 0x01f - SPECIES_NIDORAN_M, // 0x020 - SPECIES_NIDORINO, // 0x021 - SPECIES_NIDOKING, // 0x022 - SPECIES_CLEFAIRY, // 0x023 - SPECIES_CLEFABLE, // 0x024 - SPECIES_VULPIX, // 0x025 - SPECIES_NINETALES, // 0x026 - SPECIES_JIGGLYPUFF, // 0x027 - SPECIES_WIGGLYTUFF, // 0x028 - SPECIES_ZUBAT, // 0x029 - SPECIES_GOLBAT, // 0x02a - SPECIES_ODDISH, // 0x02b - SPECIES_GLOOM, // 0x02c - SPECIES_VILEPLUME, // 0x02d - SPECIES_PARAS, // 0x02e - SPECIES_PARASECT, // 0x02f - SPECIES_VENONAT, // 0x030 - SPECIES_VENOMOTH, // 0x031 - SPECIES_DIGLETT, // 0x032 - SPECIES_DUGTRIO, // 0x033 - SPECIES_MEOWTH, // 0x034 - SPECIES_PERSIAN, // 0x035 - SPECIES_PSYDUCK, // 0x036 - SPECIES_GOLDUCK, // 0x037 - SPECIES_MANKEY, // 0x038 - SPECIES_PRIMEAPE, // 0x039 - SPECIES_GROWLITHE, // 0x03a - SPECIES_ARCANINE, // 0x03b - SPECIES_POLIWAG, // 0x03c - SPECIES_POLIWHIRL, // 0x03d - SPECIES_POLIWRATH, // 0x03e - SPECIES_ABRA, // 0x03f - SPECIES_KADABRA, // 0x040 - SPECIES_ALAKAZAM, // 0x041 - SPECIES_MACHOP, // 0x042 - SPECIES_MACHOKE, // 0x043 - SPECIES_MACHAMP, // 0x044 - SPECIES_BELLSPROUT, // 0x045 - SPECIES_WEEPINBELL, // 0x046 - SPECIES_VICTREEBEL, // 0x047 - SPECIES_TENTACOOL, // 0x048 - SPECIES_TENTACRUEL, // 0x049 - SPECIES_GEODUDE, // 0x04a - SPECIES_GRAVELER, // 0x04b - SPECIES_GOLEM, // 0x04c - SPECIES_PONYTA, // 0x04d - SPECIES_RAPIDASH, // 0x04e - SPECIES_SLOWPOKE, // 0x04f - SPECIES_SLOWBRO, // 0x050 - SPECIES_MAGNEMITE, // 0x051 - SPECIES_MAGNETON, // 0x052 - SPECIES_FARFETCHD, // 0x053 - SPECIES_DODUO, // 0x054 - SPECIES_DODRIO, // 0x055 - SPECIES_SEEL, // 0x056 - SPECIES_DEWGONG, // 0x057 - SPECIES_GRIMER, // 0x058 - SPECIES_MUK, // 0x059 - SPECIES_SHELLDER, // 0x05a - SPECIES_CLOYSTER, // 0x05b - SPECIES_GASTLY, // 0x05c - SPECIES_HAUNTER, // 0x05d - SPECIES_GENGAR, // 0x05e - SPECIES_ONIX, // 0x05f - SPECIES_DROWZEE, // 0x060 - SPECIES_HYPNO, // 0x061 - SPECIES_KRABBY, // 0x062 - SPECIES_KINGLER, // 0x063 - SPECIES_VOLTORB, // 0x064 - SPECIES_ELECTRODE, // 0x065 - SPECIES_EXEGGCUTE, // 0x066 - SPECIES_EXEGGUTOR, // 0x067 - SPECIES_CUBONE, // 0x068 - SPECIES_MAROWAK, // 0x069 - SPECIES_HITMONLEE, // 0x06a - SPECIES_HITMONCHAN, // 0x06b - SPECIES_LICKITUNG, // 0x06c - SPECIES_KOFFING, // 0x06d - SPECIES_WEEZING, // 0x06e - SPECIES_RHYHORN, // 0x06f - SPECIES_RHYDON, // 0x070 - SPECIES_CHANSEY, // 0x071 - SPECIES_TANGELA, // 0x072 - SPECIES_KANGASKHAN, // 0x073 - SPECIES_HORSEA, // 0x074 - SPECIES_SEADRA, // 0x075 - SPECIES_GOLDEEN, // 0x076 - SPECIES_SEAKING, // 0x077 - SPECIES_STARYU, // 0x078 - SPECIES_STARMIE, // 0x079 - SPECIES_MR_MIME, // 0x07a - SPECIES_SCYTHER, // 0x07b - SPECIES_JYNX, // 0x07c - SPECIES_ELECTABUZZ, // 0x07d - SPECIES_MAGMAR, // 0x07e - SPECIES_PINSIR, // 0x07f - SPECIES_TAUROS, // 0x080 - SPECIES_MAGIKARP, // 0x081 - SPECIES_GYARADOS, // 0x082 - SPECIES_LAPRAS, // 0x083 - SPECIES_DITTO, // 0x084 - SPECIES_EEVEE, // 0x085 - SPECIES_VAPOREON, // 0x086 - SPECIES_JOLTEON, // 0x087 - SPECIES_FLAREON, // 0x088 - SPECIES_PORYGON, // 0x089 - SPECIES_OMANYTE, // 0x08a - SPECIES_OMASTAR, // 0x08b - SPECIES_KABUTO, // 0x08c - SPECIES_KABUTOPS, // 0x08d - SPECIES_AERODACTYL, // 0x08e - SPECIES_SNORLAX, // 0x08f - SPECIES_ARTICUNO, // 0x090 - SPECIES_ZAPDOS, // 0x091 - SPECIES_MOLTRES, // 0x092 - SPECIES_DRATINI, // 0x093 - SPECIES_DRAGONAIR, // 0x094 - SPECIES_DRAGONITE, // 0x095 - SPECIES_MEWTWO, // 0x096 - SPECIES_MEW, // 0x097 - SPECIES_CHIKORITA, // 0x098 - SPECIES_BAYLEEF, // 0x099 - SPECIES_MEGANIUM, // 0x09a - SPECIES_CYNDAQUIL, // 0x09b - SPECIES_QUILAVA, // 0x09c - SPECIES_TYPHLOSION, // 0x09d - SPECIES_TOTODILE, // 0x09e - SPECIES_CROCONAW, // 0x09f - SPECIES_FERALIGATR, // 0x0a0 - SPECIES_SENTRET, // 0x0a1 - SPECIES_FURRET, // 0x0a2 - SPECIES_HOOTHOOT, // 0x0a3 - SPECIES_NOCTOWL, // 0x0a4 - SPECIES_LEDYBA, // 0x0a5 - SPECIES_LEDIAN, // 0x0a6 - SPECIES_SPINARAK, // 0x0a7 - SPECIES_ARIADOS, // 0x0a8 - SPECIES_CROBAT, // 0x0a9 - SPECIES_CHINCHOU, // 0x0aa - SPECIES_LANTURN, // 0x0ab - SPECIES_PICHU, // 0x0ac - SPECIES_CLEFFA, // 0x0ad - SPECIES_IGGLYBUFF, // 0x0ae - SPECIES_TOGEPI, // 0x0af - SPECIES_TOGETIC, // 0x0b0 - SPECIES_NATU, // 0x0b1 - SPECIES_XATU, // 0x0b2 - SPECIES_MAREEP, // 0x0b3 - SPECIES_FLAAFFY, // 0x0b4 - SPECIES_AMPHAROS, // 0x0b5 - SPECIES_BELLOSSOM, // 0x0b6 - SPECIES_MARILL, // 0x0b7 - SPECIES_AZUMARILL, // 0x0b8 - SPECIES_SUDOWOODO, // 0x0b9 - SPECIES_POLITOED, // 0x0ba - SPECIES_HOPPIP, // 0x0bb - SPECIES_SKIPLOOM, // 0x0bc - SPECIES_JUMPLUFF, // 0x0bd - SPECIES_AIPOM, // 0x0be - SPECIES_SUNKERN, // 0x0bf - SPECIES_SUNFLORA, // 0x0c0 - SPECIES_YANMA, // 0x0c1 - SPECIES_WOOPER, // 0x0c2 - SPECIES_QUAGSIRE, // 0x0c3 - SPECIES_ESPEON, // 0x0c4 - SPECIES_UMBREON, // 0x0c5 - SPECIES_MURKROW, // 0x0c6 - SPECIES_SLOWKING, // 0x0c7 - SPECIES_MISDREAVUS, // 0x0c8 - SPECIES_UNOWN, // 0x0c9 - SPECIES_WOBBUFFET, // 0x0ca - SPECIES_GIRAFARIG, // 0x0cb - SPECIES_PINECO, // 0x0cc - SPECIES_FORRETRESS, // 0x0cd - SPECIES_DUNSPARCE, // 0x0ce - SPECIES_GLIGAR, // 0x0cf - SPECIES_STEELIX, // 0x0d0 - SPECIES_SNUBBULL, // 0x0d1 - SPECIES_GRANBULL, // 0x0d2 - SPECIES_QWILFISH, // 0x0d3 - SPECIES_SCIZOR, // 0x0d4 - SPECIES_SHUCKLE, // 0x0d5 - SPECIES_HERACROSS, // 0x0d6 - SPECIES_SNEASEL, // 0x0d7 - SPECIES_TEDDIURSA, // 0x0d8 - SPECIES_URSARING, // 0x0d9 - SPECIES_SLUGMA, // 0x0da - SPECIES_MAGCARGO, // 0x0db - SPECIES_SWINUB, // 0x0dc - SPECIES_PILOSWINE, // 0x0dd - SPECIES_CORSOLA, // 0x0de - SPECIES_REMORAID, // 0x0df - SPECIES_OCTILLERY, // 0x0e0 - SPECIES_DELIBIRD, // 0x0e1 - SPECIES_MANTINE, // 0x0e2 - SPECIES_SKARMORY, // 0x0e3 - SPECIES_HOUNDOUR, // 0x0e4 - SPECIES_HOUNDOOM, // 0x0e5 - SPECIES_KINGDRA, // 0x0e6 - SPECIES_PHANPY, // 0x0e7 - SPECIES_DONPHAN, // 0x0e8 - SPECIES_PORYGON2, // 0x0e9 - SPECIES_STANTLER, // 0x0ea - SPECIES_SMEARGLE, // 0x0eb - SPECIES_TYROGUE, // 0x0ec - SPECIES_HITMONTOP, // 0x0ed - SPECIES_SMOOCHUM, // 0x0ee - SPECIES_ELEKID, // 0x0ef - SPECIES_MAGBY, // 0x0f0 - SPECIES_MILTANK, // 0x0f1 - SPECIES_BLISSEY, // 0x0f2 - SPECIES_RAIKOU, // 0x0f3 - SPECIES_ENTEI, // 0x0f4 - SPECIES_SUICUNE, // 0x0f5 - SPECIES_LARVITAR, // 0x0f6 - SPECIES_PUPITAR, // 0x0f7 - SPECIES_TYRANITAR, // 0x0f8 - SPECIES_LUGIA, // 0x0f9 - SPECIES_HO_OH, // 0x0fa - SPECIES_CELEBI, // 0x0fb - - SPECIES_OLD_UNOWN_B, - SPECIES_OLD_UNOWN_C, - SPECIES_OLD_UNOWN_D, - SPECIES_OLD_UNOWN_E, - SPECIES_OLD_UNOWN_F, - SPECIES_OLD_UNOWN_G, - SPECIES_OLD_UNOWN_H, - SPECIES_OLD_UNOWN_I, - SPECIES_OLD_UNOWN_J, - SPECIES_OLD_UNOWN_K, - SPECIES_OLD_UNOWN_L, - SPECIES_OLD_UNOWN_M, - SPECIES_OLD_UNOWN_N, - SPECIES_OLD_UNOWN_O, - SPECIES_OLD_UNOWN_P, - SPECIES_OLD_UNOWN_Q, - SPECIES_OLD_UNOWN_R, - SPECIES_OLD_UNOWN_S, - SPECIES_OLD_UNOWN_T, - SPECIES_OLD_UNOWN_U, - SPECIES_OLD_UNOWN_V, - SPECIES_OLD_UNOWN_W, - SPECIES_OLD_UNOWN_X, - SPECIES_OLD_UNOWN_Y, - SPECIES_OLD_UNOWN_Z, - - SPECIES_TREECKO, // 0x115 - SPECIES_GROVYLE, // 0x116 - SPECIES_SCEPTILE, // 0x117 - SPECIES_TORCHIC, // 0x118 - SPECIES_COMBUSKEN, // 0x119 - SPECIES_BLAZIKEN, // 0x11a - SPECIES_MUDKIP, // 0x11b - SPECIES_MARSHTOMP, // 0x11c - SPECIES_SWAMPERT, // 0x11d - SPECIES_POOCHYENA, // 0x11e - SPECIES_MIGHTYENA, // 0x11f - SPECIES_ZIGZAGOON, // 0x120 - SPECIES_LINOONE, // 0x121 - SPECIES_WURMPLE, // 0x122 - SPECIES_SILCOON, // 0x123 - SPECIES_BEAUTIFLY, // 0x124 - SPECIES_CASCOON, // 0x125 - SPECIES_DUSTOX, // 0x126 - SPECIES_LOTAD, // 0x127 - SPECIES_LOMBRE, // 0x128 - SPECIES_LUDICOLO, // 0x129 - SPECIES_SEEDOT, // 0x12a - SPECIES_NUZLEAF, // 0x12b - SPECIES_SHIFTRY, // 0x12c - SPECIES_NINCADA, // 0x12d - SPECIES_NINJASK, // 0x12e - SPECIES_SHEDINJA, // 0x12f - SPECIES_TAILLOW, // 0x130 - SPECIES_SWELLOW, // 0x131 - SPECIES_SHROOMISH, // 0x132 - SPECIES_BRELOOM, // 0x133 - SPECIES_SPINDA, // 0x134 - SPECIES_WINGULL, // 0x135 - SPECIES_PELIPPER, // 0x136 - SPECIES_SURSKIT, // 0x137 - SPECIES_MASQUERAIN, // 0x138 - SPECIES_WAILMER, // 0x139 - SPECIES_WAILORD, // 0x13a - SPECIES_SKITTY, // 0x13b - SPECIES_DELCATTY, // 0x13c - SPECIES_KECLEON, // 0x13d - SPECIES_BALTOY, // 0x13e - SPECIES_CLAYDOL, // 0x13f - SPECIES_NOSEPASS, // 0x140 - SPECIES_TORKOAL, // 0x141 - SPECIES_SABLEYE, // 0x142 - SPECIES_BARBOACH, // 0x143 - SPECIES_WHISCASH, // 0x144 - SPECIES_LUVDISC, // 0x145 - SPECIES_CORPHISH, // 0x146 - SPECIES_CRAWDAUNT, // 0x147 - SPECIES_FEEBAS, // 0x148 - SPECIES_MILOTIC, // 0x149 - SPECIES_CARVANHA, // 0x14a - SPECIES_SHARPEDO, // 0x14b - SPECIES_TRAPINCH, // 0x14c - SPECIES_VIBRAVA, // 0x14d - SPECIES_FLYGON, // 0x14e - SPECIES_MAKUHITA, // 0x14f - SPECIES_HARIYAMA, // 0x150 - SPECIES_ELECTRIKE, // 0x151 - SPECIES_MANECTRIC, // 0x152 - SPECIES_NUMEL, // 0x153 - SPECIES_CAMERUPT, // 0x154 - SPECIES_SPHEAL, // 0x155 - SPECIES_SEALEO, // 0x156 - SPECIES_WALREIN, // 0x157 - SPECIES_CACNEA, // 0x158 - SPECIES_CACTURNE, // 0x159 - SPECIES_SNORUNT, // 0x15a - SPECIES_GLALIE, // 0x15b - SPECIES_LUNATONE, // 0x15c - SPECIES_SOLROCK, // 0x15d - SPECIES_AZURILL, // 0x15e - SPECIES_SPOINK, // 0x15f - SPECIES_GRUMPIG, // 0x160 - SPECIES_PLUSLE, // 0x161 - SPECIES_MINUN, // 0x162 - SPECIES_MAWILE, // 0x163 - SPECIES_MEDITITE, // 0x164 - SPECIES_MEDICHAM, // 0x165 - SPECIES_SWABLU, // 0x166 - SPECIES_ALTARIA, // 0x167 - SPECIES_WYNAUT, // 0x168 - SPECIES_DUSKULL, // 0x169 - SPECIES_DUSCLOPS, // 0x16a - SPECIES_ROSELIA, // 0x16b - SPECIES_SLAKOTH, // 0x16c - SPECIES_VIGOROTH, // 0x16d - SPECIES_SLAKING, // 0x16e - SPECIES_GULPIN, // 0x16f - SPECIES_SWALOT, // 0x170 - SPECIES_TROPIUS, // 0x171 - SPECIES_WHISMUR, // 0x172 - SPECIES_LOUDRED, // 0x173 - SPECIES_EXPLOUD, // 0x174 - SPECIES_CLAMPERL, // 0x175 - SPECIES_HUNTAIL, // 0x176 - SPECIES_GOREBYSS, // 0x177 - SPECIES_ABSOL, // 0x178 - SPECIES_SHUPPET, // 0x179 - SPECIES_BANETTE, // 0x17a - SPECIES_SEVIPER, // 0x17b - SPECIES_ZANGOOSE, // 0x17c - SPECIES_RELICANTH, // 0x17d - SPECIES_ARON, // 0x17e - SPECIES_LAIRON, // 0x17f - SPECIES_AGGRON, // 0x180 - SPECIES_CASTFORM, // 0x181 - SPECIES_VOLBEAT, // 0x182 - SPECIES_ILLUMISE, // 0x183 - SPECIES_LILEEP, // 0x184 - SPECIES_CRADILY, // 0x185 - SPECIES_ANORITH, // 0x186 - SPECIES_ARMALDO, // 0x187 - SPECIES_RALTS, // 0x188 - SPECIES_KIRLIA, // 0x189 - SPECIES_GARDEVOIR, // 0x18a - SPECIES_BAGON, // 0x18b - SPECIES_SHELGON, // 0x18c - SPECIES_SALAMENCE, // 0x18d - SPECIES_BELDUM, // 0x18e - SPECIES_METANG, // 0x18f - SPECIES_METAGROSS, // 0x190 - SPECIES_REGIROCK, // 0x191 - SPECIES_REGICE, // 0x192 - SPECIES_REGISTEEL, // 0x193 - SPECIES_KYOGRE, // 0x194 - SPECIES_GROUDON, // 0x195 - SPECIES_RAYQUAZA, // 0x196 - SPECIES_LATIAS, // 0x197 - SPECIES_LATIOS, // 0x198 - SPECIES_JIRACHI, // 0x199 - SPECIES_DEOXYS, // 0x19a - SPECIES_CHIMECHO, // 0x19b - SPECIES_EGG, // 0x19c - - SPECIES_UNOWN_B, - SPECIES_UNOWN_C, - SPECIES_UNOWN_D, - SPECIES_UNOWN_E, - SPECIES_UNOWN_F, - SPECIES_UNOWN_G, - SPECIES_UNOWN_H, - SPECIES_UNOWN_I, - SPECIES_UNOWN_J, - SPECIES_UNOWN_K, - SPECIES_UNOWN_L, - SPECIES_UNOWN_M, - SPECIES_UNOWN_N, - SPECIES_UNOWN_O, - SPECIES_UNOWN_P, - SPECIES_UNOWN_Q, - SPECIES_UNOWN_R, - SPECIES_UNOWN_S, - SPECIES_UNOWN_T, - SPECIES_UNOWN_U, - SPECIES_UNOWN_V, - SPECIES_UNOWN_W, - SPECIES_UNOWN_X, - SPECIES_UNOWN_Y, - SPECIES_UNOWN_Z, - SPECIES_UNOWN_EMARK, - SPECIES_UNOWN_QMARK, -}; - -#define NUM_SPECIES SPECIES_EGG -extern const u8 gSpeciesNames[][11]; - -#endif // GUARD_SPECIES_H diff --git a/include/sprite.h b/include/sprite.h index 531314079..170d77c3f 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -195,14 +195,7 @@ struct Sprite /*0x2D*/ u8 animLoopCounter; // general purpose data fields - /*0x2E*/ s16 data0; - /*0x30*/ s16 data1; - /*0x32*/ s16 data2; - /*0x34*/ s16 data3; - /*0x36*/ s16 data4; - /*0x38*/ s16 data5; - /*0x3A*/ s16 data6; - /*0x3C*/ s16 data7; + /*0x2E*/ s16 data[8]; /*0x3E*/ u16 inUse:1; //1 u16 coordOffsetEnabled:1; //2 diff --git a/include/strings.h b/include/strings.h index a32ba4c83..a2745d382 100644 --- a/include/strings.h +++ b/include/strings.h @@ -82,6 +82,7 @@ extern const u8 gText_NoRegistry[]; extern const u8 gText_OkayToDeleteFromRegistry[]; extern const u8 gText_RegisteredDataDeleted[]; extern const u8 gUnknown_085EA79D[]; +extern const u8 gText_PkmnFainted3[]; extern const u8 gText_Coins[]; #endif //GUARD_STRINGS_H diff --git a/include/vars.h b/include/vars.h deleted file mode 100644 index 763b7379d..000000000 --- a/include/vars.h +++ /dev/null @@ -1,75 +0,0 @@ -#ifndef GUARD_VARS_H -#define GUARD_VARS_H - -#define VAR_0x3F20 0x3F20 - -#define VAR_0x4000 0x4000 -#define VAR_0x4001 0x4001 -#define VAR_0x4002 0x4002 -#define VAR_0x4003 0x4003 -#define VAR_0x4004 0x4004 -#define VAR_0x4005 0x4005 -#define VAR_0x4006 0x4006 -#define VAR_0x4007 0x4007 -#define VAR_0x4008 0x4008 -#define VAR_0x4009 0x4009 -#define VAR_0x400A 0x400A -#define VAR_0x4010 0x4010 -#define VAR_0x4011 0x4011 -#define VAR_0x401F 0x401F -#define VAR_RECYCLE_GOODS 0x4020 -#define VAR_REPEL_STEP_COUNT 0x4021 -#define VAR_ICE_STEP_COUNT 0x4022 -#define VAR_FIRST_POKE 0x4023 -#define VAR_MIRAGE_RND_H 0x4024 -#define VAR_MIRAGE_RND_L 0x4025 -#define VAR_SECRET_BASE_MAP 0x4026 - -#define VAR_HAPPINESS_STEP_COUNTER 0x402A -#define VAR_POISON_STEP_COUNTER 0x402B -#define VAR_RESET_RTC_ENABLE 0x402C - -#define VAR_0x4037 0x4037 -#define VAR_ALTERING_CAVE_WILD_SET 0x403E -#define VAR_DAYS 0x4040 - -#define VAR_DEPT_STORE_FLOOR 0x4043 -#define VAR_STORAGE_UNKNOWN 0x4036 -#define VAR_POKELOT_PRIZE 0x4045 -#define VAR_NATIONAL_DEX 0x4046 -#define VAR_SEEDOT_SIZE_RECORD 0x4047 -#define VAR_ASH_GATHER_COUNT 0x4048 -#define VAR_BIRCH_STATE 0x4049 -#define VAR_CRUISE_STEP_COUNT 0x404A -#define VAR_POKELOT_RND1 0x404B -#define VAR_POKELOT_RND2 0x404C - -#define VAR_LOTAD_SIZE_RECORD 0x404F - -#define VAR_0x4054 0x4054 - -#define VAR_0x4089 0x4089 -#define VAR_0x4095 0x4095 -#define VAR_0x4097 0x4097 -#define VAR_0x409a 0x409a -#define VAR_PORTHOLE 0x40B4 - -#define VAR_0x40BC 0x40BC -#define VAR_0x40C2 0x40C2 - -#define VAR_FRONTIER_FACILITY 0x40CF - -#define VAR_DAILY_SLOTS 0x40E6 -#define VAR_DAILY_WILDS 0x40E7 -#define VAR_DAILY_BLENDER 0x40E8 -#define VAR_DAILY_PLANTED_BERRIES 0x40E9 -#define VAR_DAILY_PICKED_BERRIES 0x40EA -#define VAR_DAILY_ROULETTE 0x40EB -#define VAR_0x40EC 0x40EC -#define VAR_0x40ED 0x40ED -#define VAR_0x40EE 0x40EE -#define VAR_0x40EF 0x40EF -#define VAR_0x40F0 0x40F0 -#define VAR_DAILY_BP 0x40F1 - -#endif // GUARD_VARS_H diff --git a/ld_script.txt b/ld_script.txt index cf7b38ec1..b1cafb74b 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -74,20 +74,20 @@ SECTIONS { src/pokemon_3.o(.text); asm/pokemon_3.o(.text); src/trig.o(.text); - src/rng.o(.text); + src/random.o(.text); src/util.o(.text); src/blend_palette.o(.text); src/daycare.o(.text); src/egg_hatch.o(.text); src/battle_interface.o(.text); asm/smokescreen.o(.text); - asm/pokeball.o(.text); + src/pokeball.o(.text); src/load_save.o(.text); asm/trade.o(.text); src/berry_blender.o(.text); src/play_time.o(.text); src/new_game.o(.text); - asm/rom4.o(.text); + asm/overworld.o(.text); asm/fieldmap.o(.text); src/metatile_behavior.o(.text); asm/field_camera.o(.text); @@ -151,7 +151,7 @@ SECTIONS { src/tv.o(.text); asm/contest_link_80F57C4.o(.text); asm/script_pokemon_util_80F87D8.o(.text); - asm/field_poison.o(.text); + src/field_poison.o(.text); src/pokemon_size_record.o(.text); asm/fldeff_80F9BCC.o(.text); src/field_special_scene.o(.text); @@ -345,11 +345,11 @@ SECTIONS { src/egg_hatch.o(.rodata); src/battle_gfx_sfx_util.o(.rodata); src/battle_interface.o(.rodata); - data/pokeball.o(.rodata); + src/pokeball.o(.rodata); data/trade.o(.rodata); src/berry_blender.o(.rodata); src/new_game.o(.rodata); - data/rom4.o(.rodata); + data/overworld.o(.rodata); data/tilesets.o(.rodata); data/maps.o(.rodata); data/fieldmap.o(.rodata); diff --git a/src/battle_2.c b/src/battle_2.c index eead4d7a9..52530f6b3 100644 --- a/src/battle_2.c +++ b/src/battle_2.c @@ -11,12 +11,12 @@ #include "palette.h" #include "task.h" #include "event_data.h" -#include "species.h" +#include "constants/species.h" #include "berry.h" #include "text.h" #include "item.h" -#include "items.h" -#include "hold_effects.h" +#include "constants/items.h" +#include "constants/hold_effects.h" #include "link.h" #include "bg.h" #include "dma3.h" @@ -25,19 +25,19 @@ #include "event_data.h" #include "m4a.h" #include "window.h" -#include "rng.h" -#include "songs.h" +#include "random.h" +#include "constants/songs.h" #include "sound.h" #include "battle_message.h" #include "sprite.h" #include "util.h" #include "trig.h" #include "battle_ai_script_commands.h" -#include "battle_move_effects.h" +#include "constants/battle_move_effects.h" #include "battle_controllers.h" #include "pokedex.h" -#include "abilities.h" -#include "moves.h" +#include "constants/abilities.h" +#include "constants/moves.h" #include "trainer_classes.h" #include "evolution_scene.h" #include "roamer.h" @@ -160,7 +160,7 @@ extern const u8 gStatStageRatios[][2]; extern const u8 * const gBattleScriptsForMoveEffects[]; extern const u8 * const gBattlescriptsForBallThrow[]; extern const u8 * const gBattlescriptsForRunningByItem[]; -extern const u8 * const gUnknown_082DBD3C[]; +extern const u8 * const gBattlescriptsForUsingItem[]; extern const u8 * const gBattlescriptsForSafariActions[]; // strings @@ -1620,7 +1620,7 @@ void CB2_QuitRecordedBattle(void) void sub_8038528(struct Sprite* sprite) { - sprite->data0 = 0; + sprite->data[0] = 0; sprite->callback = sub_8038538; } @@ -1628,42 +1628,42 @@ static void sub_8038538(struct Sprite *sprite) { u16 *arr = (u16*)(gDecompressionBuffer); - switch (sprite->data0) + switch (sprite->data[0]) { case 0: - sprite->data0++; - sprite->data1 = 0; - sprite->data2 = 0x281; - sprite->data3 = 0; - sprite->data4 = 1; + sprite->data[0]++; + sprite->data[1] = 0; + sprite->data[2] = 0x281; + sprite->data[3] = 0; + sprite->data[4] = 1; // fall through case 1: - sprite->data4--; - if (sprite->data4 == 0) + sprite->data[4]--; + if (sprite->data[4] == 0) { s32 i; s32 r2; s32 r0; - sprite->data4 = 2; - r2 = sprite->data1 + sprite->data3 * 32; - r0 = sprite->data2 - sprite->data3 * 32; + sprite->data[4] = 2; + r2 = sprite->data[1] + sprite->data[3] * 32; + r0 = sprite->data[2] - sprite->data[3] * 32; for (i = 0; i < 29; i += 2) { arr[r2 + i] = 0x3D; arr[r0 + i] = 0x3D; } - sprite->data3++; - if (sprite->data3 == 21) + sprite->data[3]++; + if (sprite->data[3] == 21) { - sprite->data0++; - sprite->data1 = 32; + sprite->data[0]++; + sprite->data[1] = 32; } } break; case 2: - sprite->data1--; - if (sprite->data1 == 20) + sprite->data[1]--; + if (sprite->data[1] == 20) SetMainCallback2(CB2_InitBattle); break; } @@ -1824,12 +1824,12 @@ void nullsub_17(void) static void sub_8038B04(struct Sprite *sprite) { - if (sprite->data0 != 0) - sprite->pos1.x = sprite->data1 + ((sprite->data2 & 0xFF00) >> 8); + if (sprite->data[0] != 0) + sprite->pos1.x = sprite->data[1] + ((sprite->data[2] & 0xFF00) >> 8); else - sprite->pos1.x = sprite->data1 - ((sprite->data2 & 0xFF00) >> 8); + sprite->pos1.x = sprite->data[1] - ((sprite->data[2] & 0xFF00) >> 8); - sprite->data2 += 0x180; + sprite->data[2] += 0x180; if (sprite->affineAnimEnded) { @@ -2382,8 +2382,8 @@ u32 sub_80397C4(u32 setId, u32 tableId) return gUnknown_0831ABA0[setId][tableId].width * 8; } -#define tBank data0 -#define tSpeciesId data2 +#define tBank data[0] +#define tSpeciesId data[2] void oac_poke_opponent(struct Sprite *sprite) { @@ -2431,20 +2431,20 @@ void SpriteCallbackDummy_2(struct Sprite *sprite) static void sub_80398BC(struct Sprite *sprite) // unused? { - sprite->data3 = 6; - sprite->data4 = 1; + sprite->data[3] = 6; + sprite->data[4] = 1; sprite->callback = sub_80398D0; } static void sub_80398D0(struct Sprite *sprite) { - sprite->data4--; - if (sprite->data4 == 0) + sprite->data[4]--; + if (sprite->data[4] == 0) { - sprite->data4 = 8; + sprite->data[4] = 8; sprite->invisible ^= 1; - sprite->data3--; - if (sprite->data3 == 0) + sprite->data[3]--; + if (sprite->data[3] == 0) { sprite->invisible = FALSE; sprite->callback = SpriteCallbackDummy_2; @@ -2495,8 +2495,8 @@ void sub_8039934(struct Sprite *sprite) yOffset = gMonFrontPicCoords[species].y_offset; } - sprite->data3 = 8 - yOffset / 8; - sprite->data4 = 1; + sprite->data[3] = 8 - yOffset / 8; + sprite->data[4] = 1; sprite->callback = sub_8039A48; } @@ -2504,20 +2504,20 @@ static void sub_8039A48(struct Sprite *sprite) { s32 i; - sprite->data4--; - if (sprite->data4 == 0) + sprite->data[4]--; + if (sprite->data[4] == 0) { - sprite->data4 = 2; + sprite->data[4] = 2; sprite->pos2.y += 8; - sprite->data3--; - if (sprite->data3 < 0) + sprite->data[3]--; + if (sprite->data[3] < 0) { FreeSpriteOamMatrix(sprite); DestroySprite(sprite); } else { - u8 *dst = (u8 *)gMonSpritesGfxPtr->sprites[GetBankIdentity(sprite->tBank)] + (gBattleMonForms[sprite->tBank] << 11) + (sprite->data3 << 8); + u8 *dst = (u8 *)gMonSpritesGfxPtr->sprites[GetBankIdentity(sprite->tBank)] + (gBattleMonForms[sprite->tBank] << 11) + (sprite->data[3] << 8); for (i = 0; i < 0x100; i++) *(dst++) = 0; @@ -2529,25 +2529,25 @@ static void sub_8039A48(struct Sprite *sprite) void sub_8039AD8(struct Sprite *sprite) { - sprite->data3 = 8; - sprite->data4 = sprite->invisible; + sprite->data[3] = 8; + sprite->data[4] = sprite->invisible; sprite->callback = sub_8039AF4; } static void sub_8039AF4(struct Sprite *sprite) { - sprite->data3--; - if (sprite->data3 == 0) + sprite->data[3]--; + if (sprite->data[3] == 0) { sprite->invisible ^= 1; - sprite->data3 = 8; + sprite->data[3] = 8; } } void sub_8039B2C(struct Sprite *sprite) { - sprite->invisible = sprite->data4; - sprite->data4 = FALSE; + sprite->invisible = sprite->data[4]; + sprite->data[4] = FALSE; sprite->callback = SpriteCallbackDummy_2; } @@ -2577,7 +2577,7 @@ static void oac_poke_ally_(struct Sprite *sprite) if (sprite->pos2.x == 0) { sprite->callback = SpriteCallbackDummy_3; - sprite->data1 = 0; + sprite->data[1] = 0; } } } @@ -2595,8 +2595,8 @@ void sub_8039C00(struct Sprite *sprite) { if (!(gUnknown_020243FC & 1)) { - sprite->pos2.x += sprite->data1; - sprite->pos2.y += sprite->data2; + sprite->pos2.x += sprite->data[1]; + sprite->pos2.y += sprite->data[2]; } } @@ -2622,19 +2622,19 @@ void dp11b_obj_instanciate(u8 bank, u8 b, s8 c, s8 d) spriteId2 = gHealthBoxesIds[bank]; gBattleSpritesDataPtr->healthBoxesData[bank].field_2 = bounceHealthBoxSpriteId; gBattleSpritesDataPtr->healthBoxesData[bank].flag_x2 = 1; - gSprites[bounceHealthBoxSpriteId].data0 = 0x80; + gSprites[bounceHealthBoxSpriteId].data[0] = 0x80; } else { spriteId2 = gBankSpriteIds[bank]; gBattleSpritesDataPtr->healthBoxesData[bank].field_3 = bounceHealthBoxSpriteId; gBattleSpritesDataPtr->healthBoxesData[bank].flag_x4 = 1; - gSprites[bounceHealthBoxSpriteId].data0 = 0xC0; + gSprites[bounceHealthBoxSpriteId].data[0] = 0xC0; } - gSprites[bounceHealthBoxSpriteId].data1 = c; - gSprites[bounceHealthBoxSpriteId].data2 = d; - gSprites[bounceHealthBoxSpriteId].data3 = spriteId2; - gSprites[bounceHealthBoxSpriteId].data4 = b; + gSprites[bounceHealthBoxSpriteId].data[1] = c; + gSprites[bounceHealthBoxSpriteId].data[2] = d; + gSprites[bounceHealthBoxSpriteId].data[3] = spriteId2; + gSprites[bounceHealthBoxSpriteId].data[4] = b; gSprites[spriteId2].pos2.x = 0; gSprites[spriteId2].pos2.y = 0; } @@ -2648,7 +2648,7 @@ void dp11b_obj_free(u8 bank, bool8 b) if (!gBattleSpritesDataPtr->healthBoxesData[bank].flag_x2) return; - r4 = gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_2].data3; + r4 = gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_2].data[3]; DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_2]); gBattleSpritesDataPtr->healthBoxesData[bank].flag_x2 = 0; } @@ -2657,7 +2657,7 @@ void dp11b_obj_free(u8 bank, bool8 b) if (!gBattleSpritesDataPtr->healthBoxesData[bank].flag_x4) return; - r4 = gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_3].data3; + r4 = gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_3].data[3]; DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].field_3]); gBattleSpritesDataPtr->healthBoxesData[bank].flag_x4 = 0; } @@ -2667,16 +2667,16 @@ void dp11b_obj_free(u8 bank, bool8 b) static void SpriteCB_HealthBoxBounce(struct Sprite *sprite) { - u8 spriteId = sprite->data3; + u8 spriteId = sprite->data[3]; s32 var; - if (sprite->data4 == 1) - var = sprite->data0; + if (sprite->data[4] == 1) + var = sprite->data[0]; else - var = sprite->data0; + var = sprite->data[0]; - gSprites[spriteId].pos2.y = Sin(var, sprite->data2) + sprite->data2; - sprite->data0 = (sprite->data0 + sprite->data1) & 0xFF; + gSprites[spriteId].pos2.y = Sin(var, sprite->data[2]) + sprite->data[2]; + sprite->data[0] = (sprite->data[0] + sprite->data[1]) & 0xFF; } void sub_8039E44(struct Sprite *sprite) @@ -2872,7 +2872,7 @@ void SwitchInClearSetData(void) && (gStatuses3[i] & STATUS3_ALWAYS_HITS) != 0 && (gDisableStructs[i].bankWithSureHit == gActiveBank)) { - gStatuses3[i] &= ~STATUS3_ALWAYS_HITS; + gStatuses3[i] &= ~(STATUS3_ALWAYS_HITS); gStatuses3[i] |= 0x10; } } @@ -3668,10 +3668,10 @@ static void TryDoEventsBeforeFirstTurn(void) *(&gBattleStruct->turnEffectsTracker) = 0; *(&gBattleStruct->turnEffectsBank) = 0; - *(&gBattleStruct->field_1A0) = 0; - *(&gBattleStruct->field_1A1) = 0; + *(&gBattleStruct->wishPerishSongState) = 0; + *(&gBattleStruct->wishPerishSongBank) = 0; gBattleScripting.atk49_state = 0; - gBattleStruct->field_4D = 0; + gBattleStruct->faintedActionsState = 0; gBattleStruct->turncountersTracker = 0; gBattleMoveFlags = 0; @@ -3701,8 +3701,8 @@ static void HandleEndTurn_ContinueBattle(void) } gBattleStruct->turnEffectsTracker = 0; gBattleStruct->turnEffectsBank = 0; - gBattleStruct->field_1A0 = 0; - gBattleStruct->field_1A1 = 0; + gBattleStruct->wishPerishSongState = 0; + gBattleStruct->wishPerishSongBank = 0; gBattleStruct->turncountersTracker = 0; gBattleMoveFlags = 0; } @@ -3720,10 +3720,10 @@ void BattleTurnPassed(void) if (TurnBasedEffects() != 0) return; } - if (sub_8041728() != 0) + if (HandleFaintedMonActions() != 0) return; - gBattleStruct->field_4D = 0; - if (sub_8041364() != 0) + gBattleStruct->faintedActionsState = 0; + if (HandleWishPerishSongOnTurnEnd() != 0) return; TurnValuesCleanUp(FALSE); @@ -4692,7 +4692,7 @@ static void CheckFocusPunch_ClearVarsBeforeTurnStarts(void) gBattleMainFunc = RunTurnActionsFunctions; gBattleCommunication[3] = 0; gBattleCommunication[4] = 0; - gBattleScripting.field_16 = 0; + gBattleScripting.multihitMoveEffect = 0; gBattleResources->battleScriptsStack->size = 0; } @@ -4701,7 +4701,7 @@ static void RunTurnActionsFunctions(void) if (gBattleOutcome != 0) gCurrentActionFuncId = 12; - *(&gBattleStruct->field_4B) = gCurrentTurnActionNumber; + *(&gBattleStruct->savedTurnActionNumber) = gCurrentTurnActionNumber; sTurnActionsFuncsTable[gCurrentActionFuncId](); if (gCurrentTurnActionNumber >= gNoOfAllBanks) // everyone did their actions, turn finished @@ -4711,7 +4711,7 @@ static void RunTurnActionsFunctions(void) } else { - if (gBattleStruct->field_4B != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another bank + if (gBattleStruct->savedTurnActionNumber != gCurrentTurnActionNumber) // action turn has been done, clear hitmarker bits for another bank { gHitMarker &= ~(HITMARKER_NO_ATTACKSTRING); gHitMarker &= ~(HITMARKER_UNABLE_TO_USE_MOVE); @@ -4729,7 +4729,7 @@ static void HandleEndTurn_BattleWon(void) gBattleTextBuff1[0] = gBattleOutcome; gBankAttacker = GetBankByIdentity(IDENTITY_PLAYER_MON1); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(BATTLE_OUTCOME_BIT_x80); + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); } else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && gBattleTypeFlags & (BATTLE_TYPE_FRONTIER | BATTLE_TYPE_x4000000 | BATTLE_TYPE_EREADER_TRAINER)) @@ -4785,16 +4785,16 @@ static void HandleEndTurn_BattleLost(void) { if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) { - if (gBattleOutcome & BATTLE_OUTCOME_BIT_x80) + if (gBattleOutcome & OUTCOME_LINK_BATTLE_RUN) { - gBattlescriptCurrInstr = BattleScript_82DB9C8; - gBattleOutcome &= ~(BATTLE_OUTCOME_BIT_x80); + gBattlescriptCurrInstr = BattleScript_PrintPlayerForfeitedLinkBattle; + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); gSaveBlock2Ptr->field_CA9_b = 1; } else { gBattlescriptCurrInstr = BattleScript_82DAA0B; - gBattleOutcome &= ~(BATTLE_OUTCOME_BIT_x80); + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); } } else @@ -4802,7 +4802,7 @@ static void HandleEndTurn_BattleLost(void) gBattleTextBuff1[0] = gBattleOutcome; gBankAttacker = GetBankByIdentity(IDENTITY_PLAYER_MON1); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(BATTLE_OUTCOME_BIT_x80); + gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); } } else @@ -4819,13 +4819,13 @@ static void HandleEndTurn_RanFromBattle(void) if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER && gBattleTypeFlags & BATTLE_TYPE_TRAINER) { - gBattlescriptCurrInstr = BattleScript_82DB9C1; + gBattlescriptCurrInstr = BattleScript_PrintPlayerForfeited; gBattleOutcome = BATTLE_FORFEITED; gSaveBlock2Ptr->field_CA9_b = 1; } else if (gBattleTypeFlags & BATTLE_TYPE_x4000000) { - gBattlescriptCurrInstr = BattleScript_82DB9C1; + gBattlescriptCurrInstr = BattleScript_PrintPlayerForfeited; gBattleOutcome = BATTLE_FORFEITED; } else @@ -5276,7 +5276,7 @@ static void HandleAction_UseItem(void) } else if (GetBankSide(gBankAttacker) == SIDE_PLAYER) { - gBattlescriptCurrInstr = gUnknown_082DBD3C[0]; + gBattlescriptCurrInstr = gBattlescriptsForUsingItem[0]; } else { @@ -5332,7 +5332,7 @@ static void HandleAction_UseItem(void) break; } - gBattlescriptCurrInstr = gUnknown_082DBD3C[*(gBattleStruct->AI_itemType + gBankAttacker / 2)]; + gBattlescriptCurrInstr = gBattlescriptsForUsingItem[*(gBattleStruct->AI_itemType + gBankAttacker / 2)]; } gCurrentActionFuncId = ACTION_RUN_BATTLESCRIPT; } @@ -5439,7 +5439,7 @@ static void HandleAction_Run(void) } } - gBattleOutcome |= BATTLE_OUTCOME_BIT_x80; + gBattleOutcome |= OUTCOME_LINK_BATTLE_RUN; gSaveBlock2Ptr->field_CA9_b = 1; } else @@ -5565,9 +5565,9 @@ static void HandleAction_Action9(void) static void HandleAction_Action11(void) { - if (!sub_8041728()) + if (!HandleFaintedMonActions()) { - gBattleStruct->field_4D = 0; + gBattleStruct->faintedActionsState = 0; gCurrentActionFuncId = ACTION_FINISHED; } } @@ -5607,6 +5607,6 @@ static void HandleAction_ActionFinished(void) gBattleScripting.atk49_state = 0; gBattleCommunication[3] = 0; gBattleCommunication[4] = 0; - gBattleScripting.field_16 = 0; + gBattleScripting.multihitMoveEffect = 0; gBattleResources->battleScriptsStack->size = 0; } diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index 97226f5c9..44be0a4d9 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -2,17 +2,16 @@ #include "battle_ai_script_commands.h" #include "pokemon.h" #include "battle.h" -#include "species.h" -#include "abilities.h" -#include "rng.h" +#include "constants/species.h" +#include "constants/abilities.h" +#include "random.h" #include "item.h" -#include "battle_move_effects.h" -#include "moves.h" +#include "constants/battle_move_effects.h" +#include "constants/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) (const u8*) AIScriptRead32(ptr) #define AI_ACTION_DONE 0x0001 diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index f5b6c7fe4..b3fccb17f 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -1,13 +1,13 @@ #include "global.h" #include "battle.h" #include "battle_controllers.h" -#include "abilities.h" -#include "moves.h" +#include "constants/abilities.h" +#include "constants/moves.h" #include "pokemon.h" -#include "species.h" -#include "rng.h" +#include "constants/species.h" +#include "random.h" #include "util.h" -#include "items.h" +#include "constants/items.h" #include "pokemon_item_effects.h" extern u8 gActiveBank; diff --git a/src/battle_anim.c b/src/battle_anim.c index fa3ac73be..2eec0bed5 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -423,7 +423,7 @@ static void ScriptCmd_createsprite(void) if (subpriority < 3) subpriority = 3; - CreateSpriteAndAnimate(template, sub_80A5C6C(gAnimBankTarget, 2), sub_80A5C6C(gAnimBankTarget, 3), subpriority); + CreateSpriteAndAnimate(template, GetBankPosition(gAnimBankTarget, 2), GetBankPosition(gAnimBankTarget, 3), subpriority); gAnimVisualTaskCount++; } diff --git a/src/battle_controller_link_opponent.c b/src/battle_controller_link_opponent.c index 5758aba87..dd8582618 100644 --- a/src/battle_controller_link_opponent.c +++ b/src/battle_controller_link_opponent.c @@ -10,7 +10,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -310,14 +310,14 @@ static void sub_8064734(void) { bool32 r10 = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x1) { sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); } if (!(gBattleTypeFlags & BATTLE_TYPE_MULTI) - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8 + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].field_1_x1) { @@ -325,7 +325,7 @@ static void sub_8064734(void) } - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x80) { @@ -465,18 +465,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; LinkOpponentBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -527,14 +527,14 @@ static void sub_8064E50(void) static void sub_8064F40(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80) { sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); SetBankEnemyShadowSpriteCallback(gActiveBank, GetMonData(&gEnemyParty[gBattlePartyID[gActiveBank]], MON_DATA_SPECIES)); @@ -1163,12 +1163,12 @@ static void LinkOpponentHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); @@ -1197,15 +1197,15 @@ static void sub_8066494(u8 bank, bool8 dontClearSubstituteBit) gBankSpriteIds[bank] = CreateSprite( &gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -1213,7 +1213,7 @@ static void sub_8066494(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFE); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT); } static void LinkOpponentHandleReturnMonToBall(void) @@ -1334,7 +1334,7 @@ static void LinkOpponentHandleDrawTrainerPic(void) sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = 2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 2; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].oam.affineParam = trainerPicId; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; @@ -1357,7 +1357,7 @@ static void LinkOpponentHandleTrainerSlide(void) gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 96; gSprites[gBankSpriteIds[gActiveBank]].pos1.x += 32; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].oam.affineParam = trainerPicId; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; @@ -1369,9 +1369,9 @@ static void LinkOpponentHandleTrainerSlide(void) static void LinkOpponentHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_8064470; @@ -1670,7 +1670,7 @@ static void LinkOpponentHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1731,9 +1731,9 @@ static void LinkOpponentHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_80676FC); diff --git a/src/battle_controller_link_partner.c b/src/battle_controller_link_partner.c index 1af6da1cd..9da468761 100644 --- a/src/battle_controller_link_partner.c +++ b/src/battle_controller_link_partner.c @@ -10,7 +10,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -267,8 +267,8 @@ static void sub_814B004(void) static void sub_814B0E8(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive && gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy && gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy && ++gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_9 != 1) @@ -352,18 +352,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; LinkPartnerBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -412,13 +412,13 @@ static void sub_814B5A8(void) static void sub_814B69C(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); gBattleBankFunc[gActiveBank] = sub_814B5A8; @@ -1049,11 +1049,11 @@ static void LinkPartnerHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); gBattleBankFunc[gActiveBank] = sub_814B290; @@ -1080,15 +1080,15 @@ static void sub_814CC98(u8 bank, bool8 dontClearSubstituteBit) gBankSpriteIds[bank] = CreateSprite( &gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -1096,7 +1096,7 @@ static void sub_814CC98(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFF); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT); } static void LinkPartnerHandleReturnMonToBall(void) @@ -1174,7 +1174,7 @@ static void LinkPartnerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gBattleBankFunc[gActiveBank] = CompleteOnBankSpriteCallbackDummy; @@ -1188,9 +1188,9 @@ static void LinkPartnerHandleTrainerSlide(void) static void LinkPartnerHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_814AF54; @@ -1211,8 +1211,8 @@ static void LinkPartnerHandleFaintAnimation(void) gBattleSpritesDataPtr->healthBoxesData[gActiveBank].animationState = 0; HandleLowHpMusicChange(&gPlayerParty[gBattlePartyID[gActiveBank]], gActiveBank); PlaySE12WithPanning(SE_POKE_DEAD, PAN_SIDE_PLAYER); - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 5; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 5; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_8039C00; gBattleBankFunc[gActiveBank] = sub_814B340; } @@ -1492,7 +1492,7 @@ static void LinkPartnerHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1554,11 +1554,11 @@ static void LinkPartnerHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; - gSprites[gBankSpriteIds[gActiveBank]].data5 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[5] = gActiveBank; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_805CC00); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); diff --git a/src/battle_controller_opponent.c b/src/battle_controller_opponent.c index d69de8c29..0862e72a7 100644 --- a/src/battle_controller_opponent.c +++ b/src/battle_controller_opponent.c @@ -11,10 +11,10 @@ #include "util.h" #include "main.h" #include "item.h" -#include "items.h" -#include "songs.h" +#include "constants/items.h" +#include "constants/songs.h" #include "sound.h" -#include "moves.h" +#include "constants/moves.h" #include "window.h" #include "m4a.h" #include "palette.h" @@ -23,7 +23,7 @@ #include "string_util.h" #include "bg.h" #include "reshow_battle_screen.h" -#include "rng.h" +#include "random.h" #include "pokeball.h" #include "data2.h" @@ -318,11 +318,11 @@ static void sub_805F560(void) bool32 sp = FALSE; bool32 r10 = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x1) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x1) sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); - if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) && !(gBattleTypeFlags & BATTLE_TYPE_MULTI) && IsDoubleBattle() && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].field_1_x1) + if (!(gBattleTypeFlags & BATTLE_TYPE_TWO_OPPONENTS) && !(gBattleTypeFlags & BATTLE_TYPE_MULTI) && IsDoubleBattle() && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].field_1_x1) sub_8172EF0(gActiveBank ^ BIT_MON, &gEnemyParty[gBattlePartyID[gActiveBank ^ BIT_MON]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x80) { @@ -453,18 +453,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; OpponentBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -509,11 +509,11 @@ static void sub_805FD00(void) static void sub_805FDF0(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); SetBankEnemyShadowSpriteCallback(gActiveBank, GetMonData(&gEnemyParty[gBattlePartyID[gActiveBank]], MON_DATA_SPECIES)); @@ -1151,13 +1151,13 @@ static void OpponentHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; - gSprites[gBankSpriteIds[gActiveBank]].data2 = species; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = species; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); @@ -1186,15 +1186,15 @@ static void sub_80613DC(u8 bank, bool8 dontClearSubstituteBit) sub_806A068(species, GetBankIdentity(bank)); gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; @@ -1203,7 +1203,7 @@ static void sub_80613DC(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFE); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT); } static void OpponentHandleReturnMonToBall(void) @@ -1321,7 +1321,7 @@ static void OpponentHandleDrawTrainerPic(void) sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = 2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 2; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].oam.affineParam = trainerPicId; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; @@ -1391,7 +1391,7 @@ static void OpponentHandleTrainerSlide(void) gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 96; gSprites[gBankSpriteIds[gActiveBank]].pos1.x += 32; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].oam.affineParam = trainerPicId; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; @@ -1402,9 +1402,9 @@ static void OpponentHandleTrainerSlide(void) static void OpponentHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_805F240; @@ -1815,7 +1815,7 @@ static void OpponentHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1876,9 +1876,9 @@ static void OpponentHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_806280C); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 7ea2abccf..e497dbfe2 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -10,10 +10,10 @@ #include "util.h" #include "main.h" #include "item.h" -#include "items.h" -#include "songs.h" +#include "constants/items.h" +#include "constants/songs.h" #include "sound.h" -#include "moves.h" +#include "constants/moves.h" #include "window.h" #include "m4a.h" #include "palette.h" @@ -22,7 +22,7 @@ #include "string_util.h" #include "bg.h" #include "reshow_battle_screen.h" -#include "rng.h" +#include "random.h" #include "pokeball.h" #include "data2.h" @@ -1023,12 +1023,12 @@ static void sub_8058B40(void) bool32 r9 = FALSE; bool32 r8 = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) sub_8172EF0(gActiveBank ^ BIT_MON, &gPlayerParty[gBattlePartyID[gActiveBank ^ BIT_MON]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x80) { @@ -1127,13 +1127,13 @@ static void sub_8058FC0(void) static void sub_805902C(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); UpdateHealthboxAttribute(gHealthBoxesIds[gActiveBank], &gPlayerParty[gBattlePartyID[gActiveBank]], HEALTHBOX_ALL); @@ -1431,18 +1431,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; PlayerBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -2237,15 +2237,15 @@ static void sub_805B258(u8 bank, bool8 dontClearSubstituteBit) gBankSpriteIds[bank] = CreateSprite( &gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -2253,7 +2253,7 @@ static void sub_805B258(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFF); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT); } static void PlayerHandleReturnMonToBall(void) @@ -2358,7 +2358,7 @@ static void PlayerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; gSprites[gBankSpriteIds[gActiveBank]].pos2.y = 48; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gSprites[gBankSpriteIds[gActiveBank]].oam.affineMode = 0; gSprites[gBankSpriteIds[gActiveBank]].hFlip = 1; @@ -2372,7 +2372,7 @@ static void PlayerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; } @@ -2411,7 +2411,7 @@ static void PlayerHandleTrainerSlide(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -96; - gSprites[gBankSpriteIds[gActiveBank]].data0 = 2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gBattleBankFunc[gActiveBank] = CompleteOnBankSpriteCallbackDummy2; @@ -2420,9 +2420,9 @@ static void PlayerHandleTrainerSlide(void) static void PlayerHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); @@ -2444,8 +2444,8 @@ static void PlayerHandleFaintAnimation(void) gBattleSpritesDataPtr->healthBoxesData[gActiveBank].animationState = 0; HandleLowHpMusicChange(&gPlayerParty[gBattlePartyID[gActiveBank]], gActiveBank); PlaySE12WithPanning(SE_POKE_DEAD, PAN_SIDE_PLAYER); - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 5; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 5; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_8039C00; gBattleBankFunc[gActiveBank] = sub_80596A8; } @@ -2902,7 +2902,7 @@ static void PlayerHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -2963,11 +2963,11 @@ static void PlayerHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; - gSprites[gBankSpriteIds[gActiveBank]].data5 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[5] = gActiveBank; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_805CC00); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); @@ -2988,7 +2988,7 @@ static void PlayerHandleIntroTrainerBallThrow(void) void sub_805CC00(struct Sprite *sprite) { - u8 bank = sprite->data5; + u8 bank = sprite->data[5]; FreeSpriteOamMatrix(sprite); FreeSpritePaletteByTag(GetSpritePaletteTagByPaletteNum(sprite->oam.paletteNum)); diff --git a/src/battle_controller_player_partner.c b/src/battle_controller_player_partner.c index 4cca5c002..eb57297da 100644 --- a/src/battle_controller_player_partner.c +++ b/src/battle_controller_player_partner.c @@ -9,7 +9,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -282,8 +282,8 @@ static void sub_81BAF48(void) static void sub_81BB02C(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive && gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy && gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy && ++gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_9 != 1) @@ -539,18 +539,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; PlayerPartnerBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -599,13 +599,13 @@ static void sub_81BB9F4(void) static void sub_81BBAE8(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); gBattleBankFunc[gActiveBank] = sub_81BB9F4; @@ -1236,11 +1236,11 @@ static void PlayerPartnerHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); gBattleBankFunc[gActiveBank] = sub_81BB1D4; @@ -1267,15 +1267,15 @@ static void sub_81BD0E4(u8 bank, bool8 dontClearSubstituteBit) gBankSpriteIds[bank] = CreateSprite( &gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -1283,7 +1283,7 @@ static void sub_81BD0E4(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFF); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT); } static void PlayerPartnerHandleReturnMonToBall(void) @@ -1353,7 +1353,7 @@ static void PlayerPartnerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; } else // otherwise use front sprite @@ -1365,7 +1365,7 @@ static void PlayerPartnerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; gSprites[gBankSpriteIds[gActiveBank]].pos2.y = 48; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gSprites[gBankSpriteIds[gActiveBank]].oam.affineMode = 0; gSprites[gBankSpriteIds[gActiveBank]].hFlip = 1; @@ -1382,9 +1382,9 @@ static void PlayerPartnerHandleTrainerSlide(void) static void PlayerPartnerHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_81BAE98; @@ -1405,8 +1405,8 @@ static void PlayerPartnerHandleFaintAnimation(void) gBattleSpritesDataPtr->healthBoxesData[gActiveBank].animationState = 0; HandleLowHpMusicChange(&gPlayerParty[gBattlePartyID[gActiveBank]], gActiveBank); PlaySE12WithPanning(SE_POKE_DEAD, PAN_SIDE_PLAYER); - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 5; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 5; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_8039C00; gBattleBankFunc[gActiveBank] = sub_81BB78C; } @@ -1745,7 +1745,7 @@ static void PlayerPartnerHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1806,11 +1806,11 @@ static void PlayerPartnerHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; - gSprites[gBankSpriteIds[gActiveBank]].data5 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[5] = gActiveBank; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_805CC00); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); diff --git a/src/battle_controller_recorded_opponent.c b/src/battle_controller_recorded_opponent.c index 027230be4..8e2f31879 100644 --- a/src/battle_controller_recorded_opponent.c +++ b/src/battle_controller_recorded_opponent.c @@ -11,7 +11,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -298,12 +298,12 @@ static void sub_818686C(void) bool32 r9 = FALSE; bool32 r8 = FALSE; - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) sub_8172EF0(gActiveBank ^ BIT_MON, &gEnemyParty[gBattlePartyID[gActiveBank ^ BIT_MON]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x80) { @@ -449,18 +449,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; RecordedOpponentBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -512,14 +512,14 @@ static void sub_8186F94(void) static void sub_8187084(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80) { sub_8172EF0(gActiveBank, &gEnemyParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); SetBankEnemyShadowSpriteCallback(gActiveBank, GetMonData(&gEnemyParty[gBattlePartyID[gActiveBank]], MON_DATA_SPECIES)); @@ -1148,14 +1148,14 @@ static void RecordedOpponentHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); @@ -1183,15 +1183,15 @@ static void sub_81885D8(u8 bank, bool8 dontClearSubstituteBit) sub_806A068(species, GetBankIdentity(bank)); gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -1199,7 +1199,7 @@ static void sub_81885D8(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFE); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_OPPONENT_SENDOUT); } static void RecordedOpponentHandleReturnMonToBall(void) @@ -1285,7 +1285,7 @@ static void RecordedOpponentHandleDrawTrainerPic(void) sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = 2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 2; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].oam.affineParam = trainerPicId; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; @@ -1301,9 +1301,9 @@ static void RecordedOpponentHandleTrainerSlide(void) static void RecordedOpponentHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_81865C8; @@ -1614,7 +1614,7 @@ static void RecordedOpponentHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1675,9 +1675,9 @@ static void RecordedOpponentHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 280; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 280; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_818962C); diff --git a/src/battle_controller_recorded_player.c b/src/battle_controller_recorded_player.c index f5f3ab3c0..f558fde87 100644 --- a/src/battle_controller_recorded_player.c +++ b/src/battle_controller_recorded_player.c @@ -10,7 +10,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -314,19 +314,19 @@ static void sub_8189D40(void) if (GetBankIdentity(gActiveBank) == IDENTITY_PLAYER_MON1) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); } if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { sub_8172EF0(gActiveBank ^ BIT_MON, &gPlayerParty[gBattlePartyID[gActiveBank ^ BIT_MON]]); } } - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].field_1_x80) { @@ -437,18 +437,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; RecordedPlayerBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -497,13 +497,13 @@ static void sub_818A37C(void) static void sub_818A470(void) { if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); } if (gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) { DestroySprite(&gSprites[gUnknown_03005D7C[gActiveBank]]); gBattleBankFunc[gActiveBank] = sub_818A37C; @@ -1134,11 +1134,11 @@ static void RecordedPlayerHandleLoadMonSprite(void) sub_806A068(species, GetBankIdentity(gActiveBank)); gBankSpriteIds[gActiveBank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(gActiveBank, 2), + GetBankPosition(gActiveBank, 2), GetBankSpriteDefault_Y(gActiveBank), sub_80A82E4(gActiveBank)); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], gBattleMonForms[gActiveBank]); gBattleBankFunc[gActiveBank] = sub_818A064; @@ -1165,15 +1165,15 @@ static void sub_818BA6C(u8 bank, bool8 dontClearSubstituteBit) gBankSpriteIds[bank] = CreateSprite( &gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); @@ -1181,7 +1181,7 @@ static void sub_818BA6C(u8 bank, bool8 dontClearSubstituteBit) gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFF); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT); } static void RecordedPlayerHandleReturnMonToBall(void) @@ -1272,7 +1272,7 @@ static void RecordedPlayerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = IndexOfSpritePaletteTag(gTrainerFrontPicPaletteTable[trainerPicId].tag); gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; gSprites[gBankSpriteIds[gActiveBank]].pos2.y = 48; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gSprites[gBankSpriteIds[gActiveBank]].oam.affineMode = 0; gSprites[gBankSpriteIds[gActiveBank]].hFlip = 1; @@ -1285,7 +1285,7 @@ static void RecordedPlayerHandleDrawTrainerPic(void) gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; } @@ -1300,9 +1300,9 @@ static void RecordedPlayerHandleTrainerSlide(void) static void RecordedPlayerHandleTrainerSlideBack(void) { oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 35; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 35; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], SpriteCallbackDummy); gBattleBankFunc[gActiveBank] = sub_81899F0; @@ -1323,8 +1323,8 @@ static void RecordedPlayerHandleFaintAnimation(void) gBattleSpritesDataPtr->healthBoxesData[gActiveBank].animationState = 0; HandleLowHpMusicChange(&gPlayerParty[gBattlePartyID[gActiveBank]], gActiveBank); PlaySE12WithPanning(SE_POKE_DEAD, -64); - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; - gSprites[gBankSpriteIds[gActiveBank]].data2 = 5; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = 5; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_8039C00; gBattleBankFunc[gActiveBank] = sub_818A114; } @@ -1633,7 +1633,7 @@ static void RecordedPlayerHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1695,11 +1695,11 @@ static void RecordedPlayerHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; - gSprites[gBankSpriteIds[gActiveBank]].data5 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[5] = gActiveBank; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_805CC00); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); diff --git a/src/battle_controller_safari.c b/src/battle_controller_safari.c index 635f5fef1..db4670523 100644 --- a/src/battle_controller_safari.c +++ b/src/battle_controller_safari.c @@ -8,7 +8,7 @@ #include "link.h" #include "util.h" #include "main.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "window.h" #include "m4a.h" @@ -384,7 +384,7 @@ static void SafariHandleDrawTrainerPic(void) 30); gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gBattleBankFunc[gActiveBank] = CompleteOnBankSpriteCallbackDummy; } diff --git a/src/battle_controller_wally.c b/src/battle_controller_wally.c index 442e32cca..446027944 100644 --- a/src/battle_controller_wally.c +++ b/src/battle_controller_wally.c @@ -10,10 +10,10 @@ #include "util.h" #include "main.h" #include "item.h" -#include "items.h" -#include "songs.h" +#include "constants/items.h" +#include "constants/songs.h" #include "sound.h" -#include "moves.h" +#include "constants/moves.h" #include "window.h" #include "m4a.h" #include "palette.h" @@ -22,7 +22,7 @@ #include "string_util.h" #include "bg.h" #include "reshow_battle_screen.h" -#include "rng.h" +#include "random.h" #include "pokeball.h" #include "data2.h" #include "party_menu.h" @@ -321,13 +321,13 @@ static void CompleteOnChosenItem(void) static void sub_816864C(void) { - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive) sub_8172EF0(gActiveBank, &gPlayerParty[gBattlePartyID[gActiveBank]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8) + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x80 && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive) sub_8172EF0(gActiveBank ^ BIT_MON, &gPlayerParty[gBattlePartyID[gActiveBank ^ BIT_MON]]); - if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].flag_x8 - && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].flag_x8 + if (!gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive + && !gBattleSpritesDataPtr->healthBoxesData[gActiveBank ^ BIT_MON].ballAnimActive && gSprites[gUnknown_03005D7C[gActiveBank]].callback == SpriteCallbackDummy && gSprites[gBankSpriteIds[gActiveBank]].callback == SpriteCallbackDummy) { @@ -396,18 +396,18 @@ static void DoHitAnimBlinkSpriteEffect(void) { u8 spriteId = gBankSpriteIds[gActiveBank]; - if (gSprites[spriteId].data1 == 32) + if (gSprites[spriteId].data[1] == 32) { - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[1] = 0; gSprites[spriteId].invisible = 0; gDoingBattleAnim = FALSE; WallyBufferExecCompleted(); } else { - if ((gSprites[spriteId].data1 % 4) == 0) + if ((gSprites[spriteId].data[1] % 4) == 0) gSprites[spriteId].invisible ^= 1; - gSprites[spriteId].data1++; + gSprites[spriteId].data[1]++; } } @@ -1073,7 +1073,7 @@ static void WallyHandleDrawTrainerPic(void) 30); gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = 240; - gSprites[gBankSpriteIds[gActiveBank]].data0 = -2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = -2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gBattleBankFunc[gActiveBank] = CompleteOnBankSpriteCallbackDummy; } @@ -1088,7 +1088,7 @@ static void WallyHandleTrainerSlide(void) 30); gSprites[gBankSpriteIds[gActiveBank]].oam.paletteNum = gActiveBank; gSprites[gBankSpriteIds[gActiveBank]].pos2.x = -96; - gSprites[gBankSpriteIds[gActiveBank]].data0 = 2; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 2; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_805D7AC; gBattleBankFunc[gActiveBank] = CompleteOnBankSpriteCallbackDummy2; } @@ -1408,7 +1408,7 @@ static void WallyHandleHitAnimation(void) else { gDoingBattleAnim = TRUE; - gSprites[gBankSpriteIds[gActiveBank]].data1 = 0; + gSprites[gBankSpriteIds[gActiveBank]].data[1] = 0; DoHitAnimHealthboxEffect(gActiveBank); gBattleBankFunc[gActiveBank] = DoHitAnimBlinkSpriteEffect; } @@ -1462,11 +1462,11 @@ static void WallyHandleIntroTrainerBallThrow(void) oamt_add_pos2_onto_pos1(&gSprites[gBankSpriteIds[gActiveBank]]); - gSprites[gBankSpriteIds[gActiveBank]].data0 = 50; - gSprites[gBankSpriteIds[gActiveBank]].data2 = -40; - gSprites[gBankSpriteIds[gActiveBank]].data4 = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; + gSprites[gBankSpriteIds[gActiveBank]].data[0] = 50; + gSprites[gBankSpriteIds[gActiveBank]].data[2] = -40; + gSprites[gBankSpriteIds[gActiveBank]].data[4] = gSprites[gBankSpriteIds[gActiveBank]].pos1.y; gSprites[gBankSpriteIds[gActiveBank]].callback = sub_80A6EEC; - gSprites[gBankSpriteIds[gActiveBank]].data5 = gActiveBank; + gSprites[gBankSpriteIds[gActiveBank]].data[5] = gActiveBank; StoreSpriteCallbackInData6(&gSprites[gBankSpriteIds[gActiveBank]], sub_805CC00); StartSpriteAnim(&gSprites[gBankSpriteIds[gActiveBank]], 1); @@ -1495,21 +1495,21 @@ static void sub_816AA80(u8 bank) gUnknown_03005D7C[bank] = CreateInvisibleSpriteWithCallback(sub_805D714); sub_806A068(species, GetBankIdentity(bank)); gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, - sub_80A5C6C(bank, 2), + GetBankPosition(bank, 2), GetBankSpriteDefault_Y(bank), sub_80A82E4(bank)); - gSprites[gUnknown_03005D7C[bank]].data1 = gBankSpriteIds[bank]; - gSprites[gUnknown_03005D7C[bank]].data2 = bank; + gSprites[gUnknown_03005D7C[bank]].data[1] = gBankSpriteIds[bank]; + gSprites[gUnknown_03005D7C[bank]].data[2] = bank; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = species; + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = species; gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); gSprites[gBankSpriteIds[bank]].invisible = TRUE; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gUnknown_03005D7C[bank]].data0 = sub_80753E8(0, 0xFF); + gSprites[gUnknown_03005D7C[bank]].data[0] = DoPokeballSendOutAnimation(0, POKEBALL_PLAYER_SENDOUT); } static void sub_816AC04(u8 taskId) diff --git a/src/battle_controllers.c b/src/battle_controllers.c index 2d373e876..c6d47e71e 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -6,10 +6,10 @@ #include "battle_ai_script_commands.h" #include "battle_anim.h" #include "pokemon.h" -#include "species.h" +#include "constants/species.h" #include "recorded_battle.h" #include "util.h" -#include "abilities.h" +#include "constants/abilities.h" #include "battle_message.h" extern u32 gBattleTypeFlags; diff --git a/src/battle_dome_cards.c b/src/battle_dome_cards.c index 9385417b4..d549856f2 100644 --- a/src/battle_dome_cards.c +++ b/src/battle_dome_cards.c @@ -4,7 +4,7 @@ #include "sprite.h" #include "window.h" #include "malloc.h" -#include "species.h" +#include "constants/species.h" #include "palette.h" #include "decompress.h" #include "battle_dome_cards.h" diff --git a/src/battle_gfx_sfx_util.c b/src/battle_gfx_sfx_util.c index 99a82f3ca..22be086f0 100644 --- a/src/battle_gfx_sfx_util.c +++ b/src/battle_gfx_sfx_util.c @@ -6,21 +6,21 @@ #include "battle_interface.h" #include "main.h" #include "malloc.h" -#include "rng.h" +#include "random.h" #include "util.h" #include "pokemon.h" -#include "moves.h" +#include "constants/moves.h" #include "task.h" #include "sprite.h" #include "sound.h" #include "m4a.h" -#include "species.h" +#include "constants/species.h" #include "decompress.h" #include "data2.h" #include "palette.h" #include "blend_palette.h" #include "contest.h" -#include "songs.h" +#include "constants/songs.h" extern u8 gBattleBufferA[BATTLE_BANKS_COUNT][0x200]; extern u8 gActiveBank; @@ -332,7 +332,7 @@ static u16 BattlePalaceGetTargetRetValue(void) void sub_805D714(struct Sprite *sprite) { - u8 spriteId = sprite->data1; + u8 spriteId = sprite->data[1]; if (!gSprites[spriteId].affineAnimEnded) return; @@ -367,7 +367,7 @@ void sub_805D7AC(struct Sprite *sprite) { if (!(gUnknown_020243FC & 1)) { - sprite->pos2.x += sprite->data0; + sprite->pos2.x += sprite->data[0]; if (sprite->pos2.x == 0) { if (sprite->pos2.y != 0) @@ -1134,7 +1134,7 @@ void sub_805EB9C(u8 affineMode) } } -#define tBank data0 +#define tBank data[0] void LoadAndCreateEnemyShadowSprites(void) { @@ -1143,14 +1143,14 @@ void LoadAndCreateEnemyShadowSprites(void) LoadCompressedObjectPic(&gSpriteSheet_EnemyShadow); bank = GetBankByIdentity(IDENTITY_OPPONENT_MON1); - gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, sub_80A5C6C(bank, 0), sub_80A5C6C(bank, 1) + 29, 0xC8); - gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId].data0 = bank; + gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, GetBankPosition(bank, 0), GetBankPosition(bank, 1) + 29, 0xC8); + gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId].data[0] = bank; if (IsDoubleBattle()) { bank = GetBankByIdentity(IDENTITY_OPPONENT_MON2); - gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, sub_80A5C6C(bank, 0), sub_80A5C6C(bank, 1) + 29, 0xC8); - gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId].data0 = bank; + gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, GetBankPosition(bank, 0), GetBankPosition(bank, 1) + 29, 0xC8); + gSprites[gBattleSpritesDataPtr->healthBoxesData[bank].shadowSpriteId].data[0] = bank; } } diff --git a/src/battle_interface.c b/src/battle_interface.c index 240c64862..95f1a1111 100644 --- a/src/battle_interface.c +++ b/src/battle_interface.c @@ -8,13 +8,13 @@ #include "string_util.h" #include "text.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "decompress.h" #include "task.h" #include "util.h" #include "gpu_regs.h" #include "battle_message.h" -#include "species.h" +#include "constants/species.h" #include "pokedex.h" #include "palette.h" #include "international_string_util.h" @@ -927,7 +927,7 @@ u8 CreateBankHealthboxSprites(u8 bank) data6 = 2; } gSprites[healthboxSpriteId_1].oam.affineParam = healthboxSpriteId_2; - gSprites[healthboxSpriteId_2].data5 = healthboxSpriteId_1; + gSprites[healthboxSpriteId_2].data[5] = healthboxSpriteId_1; gSprites[healthboxSpriteId_2].callback = sub_8072924; } else @@ -939,7 +939,7 @@ u8 CreateBankHealthboxSprites(u8 bank) gSprites[healthboxSpriteId_1].oam.affineParam = healthboxSpriteId_2; - gSprites[healthboxSpriteId_2].data5 = healthboxSpriteId_1; + gSprites[healthboxSpriteId_2].data[5] = healthboxSpriteId_1; gSprites[healthboxSpriteId_2].oam.tileNum += 32; gSprites[healthboxSpriteId_2].callback = sub_8072924; @@ -952,7 +952,7 @@ u8 CreateBankHealthboxSprites(u8 bank) gSprites[healthboxSpriteId_1].oam.affineParam = healthboxSpriteId_2; - gSprites[healthboxSpriteId_2].data5 = healthboxSpriteId_1; + gSprites[healthboxSpriteId_2].data[5] = healthboxSpriteId_1; gSprites[healthboxSpriteId_2].oam.tileNum += 32; gSprites[healthboxSpriteId_2].callback = sub_8072924; @@ -968,14 +968,14 @@ u8 CreateBankHealthboxSprites(u8 bank) CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_1), (void*)(OBJ_VRAM0 + unkSpritePtr->oam.tileNum * 32), 64); - gSprites[healthboxSpriteId_1].data5 = unkSpriteId; - gSprites[healthboxSpriteId_1].data6 = bank; + gSprites[healthboxSpriteId_1].data[5] = unkSpriteId; + gSprites[healthboxSpriteId_1].data[6] = bank; gSprites[healthboxSpriteId_1].invisible = 1; gSprites[healthboxSpriteId_2].invisible = 1; - unkSpritePtr->data5 = healthboxSpriteId_1; - unkSpritePtr->data6 = data6; + unkSpritePtr->data[5] = healthboxSpriteId_1; + unkSpritePtr->data[6] = data6; unkSpritePtr->invisible = 1; return healthboxSpriteId_1; @@ -994,7 +994,7 @@ u8 CreateSafariPlayerHealthboxSprites(void) gSprites[healthboxSpriteId_2].oam.tileNum += 64; gSprites[healthboxSpriteId_1].oam.affineParam = healthboxSpriteId_2; - gSprites[healthboxSpriteId_2].data5 = healthboxSpriteId_1; + gSprites[healthboxSpriteId_2].data[5] = healthboxSpriteId_1; gSprites[healthboxSpriteId_2].callback = sub_8072924; @@ -1008,9 +1008,9 @@ static const u8 *GetHealthboxElementGfxPtr(u8 elementId) static void sub_80728B4(struct Sprite *sprite) { - u8 var = sprite->data5; + u8 var = sprite->data[5]; - switch (sprite->data6) + switch (sprite->data[6]) { case 0: sprite->pos1.x = gSprites[var].pos1.x + 16; @@ -1033,7 +1033,7 @@ static void sub_80728B4(struct Sprite *sprite) static void sub_8072924(struct Sprite *sprite) { - u8 otherSpriteId = sprite->data5; + u8 otherSpriteId = sprite->data[5]; sprite->pos1.x = gSprites[otherSpriteId].pos1.x + 64; sprite->pos1.y = gSprites[otherSpriteId].pos1.y; @@ -1054,14 +1054,14 @@ void SetBattleBarStruct(u8 bank, u8 healthboxSpriteId, s32 maxVal, s32 currVal, void SetHealthboxSpriteInvisible(u8 healthboxSpriteId) { gSprites[healthboxSpriteId].invisible = 1; - gSprites[gSprites[healthboxSpriteId].data5].invisible = 1; + gSprites[gSprites[healthboxSpriteId].data[5]].invisible = 1; gSprites[gSprites[healthboxSpriteId].oam.affineParam].invisible = 1; } void SetHealthboxSpriteVisible(u8 healthboxSpriteId) { gSprites[healthboxSpriteId].invisible = 0; - gSprites[gSprites[healthboxSpriteId].data5].invisible = 0; + gSprites[gSprites[healthboxSpriteId].data[5]].invisible = 0; gSprites[gSprites[healthboxSpriteId].oam.affineParam].invisible = 0; } @@ -1074,7 +1074,7 @@ static void UpdateSpritePos(u8 spriteId, s16 x, s16 y) void DestoryHealthboxSprite(u8 healthboxSpriteId) { DestroySprite(&gSprites[gSprites[healthboxSpriteId].oam.affineParam]); - DestroySprite(&gSprites[gSprites[healthboxSpriteId].data5]); + DestroySprite(&gSprites[gSprites[healthboxSpriteId].data[5]]); DestroySprite(&gSprites[healthboxSpriteId]); } @@ -1091,7 +1091,7 @@ void UpdateOamPriorityInAllHealthboxes(u8 priority) { u8 healthboxSpriteId_1 = gHealthBoxesIds[i]; u8 healthboxSpriteId_2 = gSprites[gHealthBoxesIds[i]].oam.affineParam; - u8 healthboxSpriteId_3 = gSprites[gHealthBoxesIds[i]].data5; + u8 healthboxSpriteId_3 = gSprites[gHealthBoxesIds[i]].data[5]; gSprites[healthboxSpriteId_1].oam.priority = priority; gSprites[healthboxSpriteId_2].oam.priority = priority; @@ -1156,7 +1156,7 @@ static void UpdateLvlInHealthbox(u8 healthboxSpriteId, u8 lvl) windowTileData = AddTextPrinterAndCreateWindowOnHealthbox(text, xPos, 3, 2, &windowId); spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * 32; - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER) { objVram = (void*)(OBJ_VRAM0); if (!IsDoubleBattle()) @@ -1180,7 +1180,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) u8 text[32]; void *objVram; - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER && !IsDoubleBattle()) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER && !IsDoubleBattle()) { spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * 32; if (maxOrCurrent != HP_CURRENT) // singles, max @@ -1213,7 +1213,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) u8 bank; memcpy(text, sUnknown_0832C3C4, sizeof(sUnknown_0832C3C4)); - bank = gSprites[healthboxSpriteId].data6; + bank = gSprites[healthboxSpriteId].data[6]; if (IsDoubleBattle() == TRUE || GetBankSide(bank) == SIDE_OPPONENT) { UpdateHpTextInHealthboxInDoubles(healthboxSpriteId, value, maxOrCurrent); @@ -1223,7 +1223,7 @@ void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent) u32 var; u8 i; - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER) { if (maxOrCurrent == HP_CURRENT) var = 29; @@ -1258,11 +1258,11 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 u8 text[32]; void *objVram; - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER) { - if (gBattleSpritesDataPtr->bankData[gSprites[healthboxSpriteId].data6].hpNumbersNoBars) // don't print text if only bars are visible + if (gBattleSpritesDataPtr->bankData[gSprites[healthboxSpriteId].data[6]].hpNumbersNoBars) // don't print text if only bars are visible { - spriteTileNum = gSprites[gSprites[healthboxSpriteId].data5].oam.tileNum * 32; + spriteTileNum = gSprites[gSprites[healthboxSpriteId].data[5]].oam.tileNum * 32; objVram = (void*)(OBJ_VRAM0) + spriteTileNum; if (maxOrCurrent != HP_CURRENT) // doubles, max hp @@ -1292,7 +1292,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 u8 bank; memcpy(text, sUnknown_0832C3D8, sizeof(sUnknown_0832C3D8)); - bank = gSprites[healthboxSpriteId].data6; + bank = gSprites[healthboxSpriteId].data[6]; if (gBattleSpritesDataPtr->bankData[bank].hpNumbersNoBars) // don't print text if only bars are visible { @@ -1304,7 +1304,7 @@ static void UpdateHpTextInHealthboxInDoubles(u8 healthboxSpriteId, s16 value, u8 if (maxOrCurrent == HP_CURRENT) var = 0; - r7 = gSprites[healthboxSpriteId].data5; + r7 = gSprites[healthboxSpriteId].data[5]; txtPtr = ConvertIntToDecimalStringN(text + 6, value, STR_CONV_MODE_RIGHT_ALIGN, 3); if (!maxOrCurrent) StringCopy(txtPtr, gText_Slash); @@ -1354,7 +1354,7 @@ static void sub_80730D4(u8 healthboxSpriteId, struct Pokemon *mon) u8 i, var, nature, healthboxSpriteId_2; memcpy(text, sUnknown_0832C3C4, sizeof(sUnknown_0832C3C4)); - barFontGfx = &gMonSpritesGfxPtr->barFontGfx[0x520 + (GetBankIdentity(gSprites[healthboxSpriteId].data6) * 384)]; + barFontGfx = &gMonSpritesGfxPtr->barFontGfx[0x520 + (GetBankIdentity(gSprites[healthboxSpriteId].data[6]) * 384)]; var = 5; nature = GetNature(mon); StringCopy(text + 6, gNatureNamePointers[nature]); @@ -1385,7 +1385,7 @@ static void sub_80730D4(u8 healthboxSpriteId, struct Pokemon *mon) barFontGfx += 0x20; } - healthboxSpriteId_2 = gSprites[healthboxSpriteId].data5; + healthboxSpriteId_2 = gSprites[healthboxSpriteId].data[5]; ConvertIntToDecimalStringN(text + 6, gBattleStruct->field_7C, STR_CONV_MODE_RIGHT_ALIGN, 2); ConvertIntToDecimalStringN(text + 9, gBattleStruct->field_7B, STR_CONV_MODE_RIGHT_ALIGN, 2); text[5] = CHAR_SPACE; @@ -1434,7 +1434,7 @@ void SwapHpBarsWithHpText(void) if (noBars == TRUE) // bars to text { - spriteId = gSprites[gHealthBoxesIds[i]].data5; + spriteId = gSprites[gHealthBoxesIds[i]].data[5]; CpuFill32(0, (void*)(OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32), 0x100); UpdateHpTextInHealthboxInDoubles(gHealthBoxesIds[i], GetMonData(&gPlayerParty[gBattlePartyID[i]], MON_DATA_HP), HP_CURRENT); @@ -1457,7 +1457,7 @@ void SwapHpBarsWithHpText(void) } else { - spriteId = gSprites[gHealthBoxesIds[i]].data5; + spriteId = gSprites[gHealthBoxesIds[i]].data[5]; CpuFill32(0, (void *)(OBJ_VRAM0 + gSprites[spriteId].oam.tileNum * 32), 0x100); UpdateHpTextInHealthboxInDoubles(gHealthBoxesIds[i], GetMonData(&gEnemyParty[gBattlePartyID[i]], MON_DATA_HP), HP_CURRENT); @@ -1472,7 +1472,7 @@ void SwapHpBarsWithHpText(void) UpdateHealthboxAttribute(gHealthBoxesIds[i], &gEnemyParty[gBattlePartyID[i]], HEALTHBOX_NICK); } } - gSprites[gHealthBoxesIds[i]].data7 ^= 1; + gSprites[gHealthBoxesIds[i]].data[7] ^= 1; } } } @@ -1524,7 +1524,7 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar barSpriteId = CreateSprite(&sStatusSummaryBarSpriteTemplates[isOpponent], bar_X, bar_Y, 10); SetSubspriteTables(&gSprites[barSpriteId], sStatusSummaryBar_SubspriteTable); gSprites[barSpriteId].pos2.x = bar_pos2_X; - gSprites[barSpriteId].data0 = bar_data0; + gSprites[barSpriteId].data[0] = bar_data0; if (isOpponent) { @@ -1549,22 +1549,22 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar gSprites[ballIconSpritesIds[i]].pos2.y = 0; } - gSprites[ballIconSpritesIds[i]].data0 = barSpriteId; + gSprites[ballIconSpritesIds[i]].data[0] = barSpriteId; if (!isOpponent) { gSprites[ballIconSpritesIds[i]].pos1.x += 10 * i + 24; - gSprites[ballIconSpritesIds[i]].data1 = i * 7 + 10; + gSprites[ballIconSpritesIds[i]].data[1] = i * 7 + 10; gSprites[ballIconSpritesIds[i]].pos2.x = 120; } else { gSprites[ballIconSpritesIds[i]].pos1.x -= 10 * (5 - i) + 24; - gSprites[ballIconSpritesIds[i]].data1 = (6 - i) * 7 + 10; + gSprites[ballIconSpritesIds[i]].data[1] = (6 - i) * 7 + 10; gSprites[ballIconSpritesIds[i]].pos2.x = -120; } - gSprites[ballIconSpritesIds[i]].data2 = isOpponent; + gSprites[ballIconSpritesIds[i]].data[2] = isOpponent; } if (GetBankSide(bank) == SIDE_PLAYER) @@ -1576,7 +1576,7 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar if (partyInfo[i].hp == 0xFFFF) // empty slot or an egg { gSprites[ballIconSpritesIds[i]].oam.tileNum += 1; - gSprites[ballIconSpritesIds[i]].data7 = 1; + gSprites[ballIconSpritesIds[i]].data[7] = 1; } else if (partyInfo[i].hp == 0) // fainted mon { @@ -1595,7 +1595,7 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar if (partyInfo[j].hp == 0xFFFF) // empty slot or an egg { gSprites[ballIconSpritesIds[var]].oam.tileNum += 1; - gSprites[ballIconSpritesIds[var]].data7 = 1; + gSprites[ballIconSpritesIds[var]].data[7] = 1; var--; continue; } @@ -1624,7 +1624,7 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar if (partyInfo[i].hp == 0xFFFF) // empty slot or an egg { gSprites[ballIconSpritesIds[var]].oam.tileNum += 1; - gSprites[ballIconSpritesIds[var]].data7 = 1; + gSprites[ballIconSpritesIds[var]].data[7] = 1; } else if (partyInfo[i].hp == 0) // fainted mon { @@ -1644,7 +1644,7 @@ u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 ar if (partyInfo[j].hp == 0xFFFF) // empty slot or an egg { gSprites[ballIconSpritesIds[i]].oam.tileNum += 1; - gSprites[ballIconSpritesIds[i]].data7 = 1; + gSprites[ballIconSpritesIds[i]].data[7] = 1; i++; continue; } @@ -1714,21 +1714,21 @@ void sub_8073C30(u8 taskId) { if (GetBankSide(bank) != SIDE_PLAYER) { - gSprites[sp[5 - i]].data1 = 7 * i; - gSprites[sp[5 - i]].data3 = 0; - gSprites[sp[5 - i]].data4 = 0; + gSprites[sp[5 - i]].data[1] = 7 * i; + gSprites[sp[5 - i]].data[3] = 0; + gSprites[sp[5 - i]].data[4] = 0; gSprites[sp[5 - i]].callback = sub_8074158; } else { - gSprites[sp[i]].data1 = 7 * i; - gSprites[sp[i]].data3 = 0; - gSprites[sp[i]].data4 = 0; + gSprites[sp[i]].data[1] = 7 * i; + gSprites[sp[i]].data[3] = 0; + gSprites[sp[i]].data[4] = 0; gSprites[sp[i]].callback = sub_8074158; } } - gSprites[r10].data0 /= 2; - gSprites[r10].data1 = 0; + gSprites[r10].data[0] /= 2; + gSprites[r10].data[1] = 0; gSprites[r10].callback = sub_8074090; SetSubspriteTables(&gSprites[r10], sUnknown_0832C2CC); gTasks[taskId].func = sub_8073E08; @@ -1831,17 +1831,17 @@ static void sub_8073F98(u8 taskId) static void SpriteCB_StatusSummaryBar(struct Sprite *sprite) { if (sprite->pos2.x != 0) - sprite->pos2.x += sprite->data0; + sprite->pos2.x += sprite->data[0]; } static void sub_8074090(struct Sprite *sprite) { - sprite->data1 += 32; - if (sprite->data0 > 0) - sprite->pos2.x += sprite->data1 >> 4; + sprite->data[1] += 32; + if (sprite->data[0] > 0) + sprite->pos2.x += sprite->data[1] >> 4; else - sprite->pos2.x -= sprite->data1 >> 4; - sprite->data1 &= 0xF; + sprite->pos2.x -= sprite->data[1] >> 4; + sprite->data[1] &= 0xF; } static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) @@ -1850,16 +1850,16 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) u16 var2; s8 pan; - if (sprite->data1 > 0) + if (sprite->data[1] > 0) { - sprite->data1--; + sprite->data[1]--; return; } - var1 = sprite->data2; - var2 = sprite->data3; + var1 = sprite->data[2]; + var2 = sprite->data[3]; var2 += 56; - sprite->data3 = var2 & 0xFFF0; + sprite->data[3] = var2 & 0xFFF0; if (var1 != 0) { @@ -1880,7 +1880,7 @@ static void SpriteCB_StatusSummaryBallsOnBattleStart(struct Sprite *sprite) if (var1 != 0) pan = PAN_SIDE_PLAYER; - if (sprite->data7 != 0) + if (sprite->data[7] != 0) PlaySE2WithPanning(SE_TB_KARA, pan); else PlaySE1WithPanning(SE_TB_KON, pan); @@ -1894,15 +1894,15 @@ static void sub_8074158(struct Sprite *sprite) u8 var1; u16 var2; - if (sprite->data1 > 0) + if (sprite->data[1] > 0) { - sprite->data1--; + sprite->data[1]--; return; } - var1 = sprite->data2; - var2 = sprite->data3; + var1 = sprite->data[2]; + var2 = sprite->data[3]; var2 += 56; - sprite->data3 = var2 & 0xFFF0; + sprite->data[3] = var2 & 0xFFF0; if (var1 != 0) sprite->pos2.x += var2 >> 4; else @@ -1917,7 +1917,7 @@ static void sub_8074158(struct Sprite *sprite) static void SpriteCB_StatusSummaryBallsOnSwitchout(struct Sprite *sprite) { - u8 barSpriteId = sprite->data0; + u8 barSpriteId = sprite->data[0]; sprite->pos2.x = gSprites[barSpriteId].pos2.x; sprite->pos2.y = gSprites[barSpriteId].pos2.y; @@ -1964,7 +1964,7 @@ static void UpdateNickInHealthbox(u8 healthboxSpriteId, struct Pokemon *mon) spriteTileNum = gSprites[healthboxSpriteId].oam.tileNum * 32; - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER) { sub_8075198((void*)(0x6010040 + spriteTileNum), windowTileData, 6); ptr = (void*)(OBJ_VRAM0); @@ -1991,13 +1991,13 @@ static void TryAddPokeballIconToHealthbox(u8 healthboxSpriteId, bool8 noStatus) if (gBattleTypeFlags & BATTLE_TYPE_TRAINER) return; - bank = gSprites[healthboxSpriteId].data6; + bank = gSprites[healthboxSpriteId].data[6]; if (GetBankSide(bank) == SIDE_PLAYER) return; if (!GetSetPokedexFlag(SpeciesToNationalPokedexNum(GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_SPECIES)), FLAG_GET_CAUGHT)) return; - healthboxSpriteId_2 = gSprites[healthboxSpriteId].data5; + healthboxSpriteId_2 = gSprites[healthboxSpriteId].data[5]; if (noStatus) CpuCopy32(GetHealthboxElementGfxPtr(HEALTHBOX_GFX_70), (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId_2].oam.tileNum + 8) * 32), 32); @@ -2014,8 +2014,8 @@ static void UpdateStatusIconInHealthbox(u8 healthboxSpriteId) s16 tileNumAdder; u8 statusPalId; - bank = gSprites[healthboxSpriteId].data6; - healthboxSpriteId_2 = gSprites[healthboxSpriteId].data5; + bank = gSprites[healthboxSpriteId].data[6]; + healthboxSpriteId_2 = gSprites[healthboxSpriteId].data[5]; if (GetBankSide(bank) == SIDE_PLAYER) { status = GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_STATUS); @@ -2178,12 +2178,12 @@ static void UpdateLeftNoOfBallsTextOnHealthbox(u8 healthboxSpriteId) void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId) { s32 maxHp, currHp; - u8 bank = gSprites[healthboxSpriteId].data6; + u8 bank = gSprites[healthboxSpriteId].data[6]; if (elementId == HEALTHBOX_ALL && !IsDoubleBattle()) GetBankSide(bank); // pointless function call - if (GetBankSide(gSprites[healthboxSpriteId].data6) == SIDE_PLAYER) + if (GetBankSide(gSprites[healthboxSpriteId].data[6]) == SIDE_PLAYER) { u8 isDoubles; @@ -2308,7 +2308,7 @@ static void sub_8074B9C(u8 bank, u8 whichBar) } for (i = 0; i < 6; i++) { - u8 healthboxSpriteId_2 = gSprites[gBattleSpritesDataPtr->battleBars[bank].healthboxSpriteId].data5; + u8 healthboxSpriteId_2 = gSprites[gBattleSpritesDataPtr->battleBars[bank].healthboxSpriteId].data[5]; if (i < 2) CpuCopy32(GetHealthboxElementGfxPtr(barElementId) + array[i] * 32, (void*)(OBJ_VRAM0 + (gSprites[healthboxSpriteId_2].oam.tileNum + 2 + i) * 32), 32); diff --git a/src/battle_message.c b/src/battle_message.c index 77f7cc722..ec1cfd626 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -2,10 +2,10 @@ #include "battle.h" #include "battle_message.h" #include "battle_string_ids.h" -#include "moves.h" +#include "constants/moves.h" #include "text.h" #include "string_util.h" -#include "items.h" +#include "constants/items.h" #include "event_data.h" #include "link.h" #include "item.h" @@ -1632,9 +1632,9 @@ void BufferStringBattle(u16 stringID) stringPtr = gText_AttackerUsedX; break; case STRINGID_BATTLEEND: // battle end - if (gBattleTextBuff1[0] & BATTLE_OUTCOME_BIT_x80) + if (gBattleTextBuff1[0] & OUTCOME_LINK_BATTLE_RUN) { - gBattleTextBuff1[0] &= ~(BATTLE_OUTCOME_BIT_x80); + gBattleTextBuff1[0] &= ~(OUTCOME_LINK_BATTLE_RUN); if (GetBankSide(gActiveBank) == SIDE_OPPONENT && gBattleTextBuff1[0] != BATTLE_DREW) gBattleTextBuff1[0] ^= (BATTLE_LOST | BATTLE_WON); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index d9b35c053..88d583c1f 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1,22 +1,22 @@ #include "global.h" #include "battle.h" -#include "battle_move_effects.h" +#include "constants/battle_move_effects.h" #include "battle_message.h" #include "battle_ai_script_commands.h" #include "battle_scripts.h" -#include "moves.h" -#include "abilities.h" +#include "constants/moves.h" +#include "constants/abilities.h" #include "item.h" -#include "items.h" -#include "hold_effects.h" +#include "constants/items.h" +#include "constants/hold_effects.h" #include "util.h" #include "pokemon.h" #include "calculate_base_damage.h" -#include "rng.h" +#include "random.h" #include "battle_controllers.h" #include "battle_interface.h" -#include "species.h" -#include "songs.h" +#include "constants/species.h" +#include "constants/songs.h" #include "text.h" #include "sound.h" #include "pokedex.h" @@ -1053,7 +1053,7 @@ static void atk00_attackcanceler(void) if (!(gHitMarker & HITMARKER_OBEYS) && !(gBattleMons[gBankAttacker].status2 & STATUS2_MULTIPLETURNS)) { - i = IsPokeDisobedient(); // why use the 'i' variable...? + i = IsMonDisobedient(); // why use the 'i' variable...? switch (i) { case 0: @@ -3040,7 +3040,7 @@ static void atk15_seteffectwithchance(void) } gBattleCommunication[MOVE_EFFECT_BYTE] = 0; - gBattleScripting.field_16 = 0; + gBattleScripting.multihitMoveEffect = 0; } static void atk16_seteffectprimary(void) @@ -3064,7 +3064,7 @@ static void atk18_clearstatusfromeffect(void) gBattleCommunication[MOVE_EFFECT_BYTE] = 0; gBattlescriptCurrInstr += 2; - gBattleScripting.field_16 = 0; + gBattleScripting.multihitMoveEffect = 0; } static void atk19_tryfaintmon(void) @@ -3221,7 +3221,7 @@ static void atk1E_jumpifability(void) gLastUsedAbility = ability; gBattlescriptCurrInstr = jumpPtr; RecordAbilityBattle(bank - 1, gLastUsedAbility); - gBattleScripting.field_15 = bank - 1; + gBattleScripting.bankWithAbility = bank - 1; } else gBattlescriptCurrInstr += 7; @@ -3234,7 +3234,7 @@ static void atk1E_jumpifability(void) gLastUsedAbility = ability; gBattlescriptCurrInstr = jumpPtr; RecordAbilityBattle(bank - 1, gLastUsedAbility); - gBattleScripting.field_15 = bank - 1; + gBattleScripting.bankWithAbility = bank - 1; } else gBattlescriptCurrInstr += 7; @@ -3247,7 +3247,7 @@ static void atk1E_jumpifability(void) gLastUsedAbility = ability; gBattlescriptCurrInstr = jumpPtr; RecordAbilityBattle(bank, gLastUsedAbility); - gBattleScripting.field_15 = bank; + gBattleScripting.bankWithAbility = bank; } else gBattlescriptCurrInstr += 7; @@ -6383,7 +6383,7 @@ static void atk62(void) static void atk63_jumptorandomattack(void) { - if (gBattlescriptCurrInstr[1] != 0) + if (gBattlescriptCurrInstr[1]) gCurrentMove = gRandomMove; else gChosenMove = gCurrentMove = gRandomMove; @@ -6782,8 +6782,8 @@ static bool8 sub_804F344(void) return (gBattle_BG2_X != 0x1A0); } -#define sDestroy data0 -#define sSavedLvlUpBoxXPosition data1 +#define sDestroy data[0] +#define sSavedLvlUpBoxXPosition data[1] static void PutMonIconOnLvlUpBox(void) { @@ -7790,7 +7790,7 @@ static void atk8E_initmultihitstring(void) gBattlescriptCurrInstr++; } -static bool8 sub_8051064(void) +static bool8 TryDoForceSwitchOut(void) { if (gBattleMons[gBankAttacker].level >= gBattleMons[gBankTarget].level) { @@ -7807,7 +7807,7 @@ static bool8 sub_8051064(void) *(gBattleStruct->field_58 + gBankTarget) = gBattlePartyID[gBankTarget]; } - gBattlescriptCurrInstr = BattleScript_82DADD8; + gBattlescriptCurrInstr = BattleScript_SuccessForceOut; return TRUE; } @@ -7935,7 +7935,7 @@ static void atk8F_forcerandomswitch(void) } else { - if (sub_8051064()) + if (TryDoForceSwitchOut()) { do { @@ -7968,7 +7968,7 @@ static void atk8F_forcerandomswitch(void) } else { - sub_8051064(); + TryDoForceSwitchOut(); } } @@ -9306,7 +9306,7 @@ static void atkBA_jumpifnopursuitswitchdmg(void) gBankTarget = GetBankByIdentity(IDENTITY_PLAYER_MON2); } - if (gActionForBanks[gBankTarget] == 0 + if (gActionForBanks[gBankTarget] == ACTION_USE_MOVE && gBankAttacker == *(gBattleStruct->moveTarget + gBankTarget) && !(gBattleMons[gBankTarget].status1 & (STATUS_SLEEP | STATUS_FREEZE)) && gBattleMons[gBankAttacker].hp diff --git a/src/battle_util.c b/src/battle_util.c index 5c305a4e4..1a624641d 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1,16 +1,16 @@ #include "global.h" #include "battle.h" -#include "abilities.h" -#include "moves.h" -#include "hold_effects.h" +#include "constants/abilities.h" +#include "constants/moves.h" +#include "constants/hold_effects.h" #include "pokemon.h" -#include "species.h" +#include "constants/species.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "util.h" -#include "battle_move_effects.h" +#include "constants/battle_move_effects.h" #include "battle_scripts.h" -#include "rng.h" +#include "random.h" #include "text.h" #include "string_util.h" #include "battle_message.h" @@ -364,7 +364,7 @@ u8 TrySetCantSelectMoveBattleScript(void) gCurrentMove = move; if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DAE2A; + gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_SelectingDisabledMoveInPalace; gProtectStructs[gActiveBank].flag_x10 = 1; } else @@ -379,7 +379,7 @@ u8 TrySetCantSelectMoveBattleScript(void) CancelMultiTurnMoves(gActiveBank); if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB098; + gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_SelectingTormentedMoveInPalace; gProtectStructs[gActiveBank].flag_x10 = 1; } else @@ -394,7 +394,7 @@ u8 TrySetCantSelectMoveBattleScript(void) gCurrentMove = move; if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB0AF; + gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_SelectingNotAllowedMoveTauntInPalace; gProtectStructs[gActiveBank].flag_x10 = 1; } else @@ -409,7 +409,7 @@ u8 TrySetCantSelectMoveBattleScript(void) gCurrentMove = move; if (gBattleTypeFlags & BATTLE_TYPE_PALACE) { - gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_82DB185; + gPalaceSelectionBattleScripts[gActiveBank] = BattleScript_SelectingImprisionedMoveInPalace; gProtectStructs[gActiveBank].flag_x10 = 1; } else @@ -1113,23 +1113,23 @@ u8 TurnBasedEffects(void) return 0; } -bool8 sub_8041364(void) +bool8 HandleWishPerishSongOnTurnEnd(void) { gHitMarker |= (HITMARKER_GRUDGE | HITMARKER_x20); - switch (gBattleStruct->field_1A0) + switch (gBattleStruct->wishPerishSongState) { case 0: - while (gBattleStruct->field_1A1 < gNoOfAllBanks) + while (gBattleStruct->wishPerishSongBank < gNoOfAllBanks) { - gActiveBank = gBattleStruct->field_1A1; + gActiveBank = gBattleStruct->wishPerishSongBank; if (gAbsentBankFlags & gBitTable[gActiveBank]) { - gBattleStruct->field_1A1++; + gBattleStruct->wishPerishSongBank++; continue; } - gBattleStruct->field_1A1++; + gBattleStruct->wishPerishSongBank++; if (gWishFutureKnock.futureSightCounter[gActiveBank] != 0 && --gWishFutureKnock.futureSightCounter[gActiveBank] == 0 && gBattleMons[gActiveBank].hp != 0) @@ -1157,21 +1157,21 @@ bool8 sub_8041364(void) } // Why do I have to keep doing this to match? { - u8* var = &gBattleStruct->field_1A0; - *var = 1; - gBattleStruct->field_1A1 = 0; + u8 *state = &gBattleStruct->wishPerishSongState; + *state = 1; + gBattleStruct->wishPerishSongBank = 0; } // fall through case 1: - while (gBattleStruct->field_1A1 < gNoOfAllBanks) + while (gBattleStruct->wishPerishSongBank < gNoOfAllBanks) { - gActiveBank = gBankAttacker = gBanksByTurnOrder[gBattleStruct->field_1A1]; + gActiveBank = gBankAttacker = gBanksByTurnOrder[gBattleStruct->wishPerishSongBank]; if (gAbsentBankFlags & gBitTable[gActiveBank]) { - gBattleStruct->field_1A1++; + gBattleStruct->wishPerishSongBank++; continue; } - gBattleStruct->field_1A1++; + gBattleStruct->wishPerishSongBank++; if (gStatuses3[gActiveBank] & STATUS3_PERISH_SONG) { PREPARE_BYTE_NUMBER_BUFFER(gBattleTextBuff1, 1, gDisableStructs[gActiveBank].perishSongTimer1); @@ -1192,9 +1192,9 @@ bool8 sub_8041364(void) } // Hm... { - u8* var = &gBattleStruct->field_1A0; - *var = 2; - gBattleStruct->field_1A1 = 0; + u8 *state = &gBattleStruct->wishPerishSongState; + *state = 2; + gBattleStruct->wishPerishSongBank = 0; } // fall through case 2: @@ -1209,7 +1209,7 @@ bool8 sub_8041364(void) gBattlescriptCurrInstr = BattleScript_82DB8F3; BattleScriptExecute(BattleScript_82DB8F3); - gBattleStruct->field_1A0++; + gBattleStruct->wishPerishSongState++; return TRUE; } break; @@ -1220,20 +1220,20 @@ bool8 sub_8041364(void) return FALSE; } -#define sub_8041728_MAX_CASE 7 +#define FAINTED_ACTIONS_MAX_CASE 7 -bool8 sub_8041728(void) +bool8 HandleFaintedMonActions(void) { if (gBattleTypeFlags & BATTLE_TYPE_SAFARI) return FALSE; do { int i; - switch (gBattleStruct->field_4D) + switch (gBattleStruct->faintedActionsState) { case 0: - gBattleStruct->field_4E = 0; - gBattleStruct->field_4D++; + gBattleStruct->faintedActionsBank = 0; + gBattleStruct->faintedActionsState++; for (i = 0; i < gNoOfAllBanks; i++) { if (gAbsentBankFlags & gBitTable[i] && !sub_80423F4(i, 6, 6)) @@ -1243,58 +1243,58 @@ bool8 sub_8041728(void) case 1: do { - gBank1 = gBankTarget = gBattleStruct->field_4E; - if (gBattleMons[gBattleStruct->field_4E].hp == 0 - && !(gBattleStruct->field_DF & gBitTable[gBattlePartyID[gBattleStruct->field_4E]]) - && !(gAbsentBankFlags & gBitTable[gBattleStruct->field_4E])) + gBank1 = gBankTarget = gBattleStruct->faintedActionsBank; + if (gBattleMons[gBattleStruct->faintedActionsBank].hp == 0 + && !(gBattleStruct->field_DF & gBitTable[gBattlePartyID[gBattleStruct->faintedActionsBank]]) + && !(gAbsentBankFlags & gBitTable[gBattleStruct->faintedActionsBank])) { - BattleScriptExecute(BattleScript_82DA7C4); - gBattleStruct->field_4D = 2; + BattleScriptExecute(BattleScript_GiveExp); + gBattleStruct->faintedActionsState = 2; return TRUE; } - } while (++gBattleStruct->field_4E != gNoOfAllBanks); - gBattleStruct->field_4D = 3; + } while (++gBattleStruct->faintedActionsBank != gNoOfAllBanks); + gBattleStruct->faintedActionsState = 3; break; case 2: sub_803F9EC(gBank1); - if (++gBattleStruct->field_4E == gNoOfAllBanks) - gBattleStruct->field_4D = 3; + if (++gBattleStruct->faintedActionsBank == gNoOfAllBanks) + gBattleStruct->faintedActionsState = 3; else - gBattleStruct->field_4D = 1; + gBattleStruct->faintedActionsState = 1; break; case 3: - gBattleStruct->field_4E = 0; - gBattleStruct->field_4D++; + gBattleStruct->faintedActionsBank = 0; + gBattleStruct->faintedActionsState++; // fall through case 4: do { - gBank1 = gBankTarget = gBattleStruct->field_4E; - if (gBattleMons[gBattleStruct->field_4E].hp == 0 - && !(gAbsentBankFlags & gBitTable[gBattleStruct->field_4E])) + gBank1 = gBankTarget = gBattleStruct->faintedActionsBank; + if (gBattleMons[gBattleStruct->faintedActionsBank].hp == 0 + && !(gAbsentBankFlags & gBitTable[gBattleStruct->faintedActionsBank])) { - BattleScriptExecute(BattleScript_82DA7CD); - gBattleStruct->field_4D = 5; + BattleScriptExecute(BattleScript_HandleFaintedMon); + gBattleStruct->faintedActionsState = 5; return TRUE; } - } while (++gBattleStruct->field_4E != gNoOfAllBanks); - gBattleStruct->field_4D = 6; + } while (++gBattleStruct->faintedActionsBank != gNoOfAllBanks); + gBattleStruct->faintedActionsState = 6; break; case 5: - if (++gBattleStruct->field_4E == gNoOfAllBanks) - gBattleStruct->field_4D = 6; + if (++gBattleStruct->faintedActionsBank == gNoOfAllBanks) + gBattleStruct->faintedActionsState = 6; else - gBattleStruct->field_4D = 4; + gBattleStruct->faintedActionsState = 4; break; case 6: if (AbilityBattleEffects(ABILITYEFFECT_INTIMIDATE1, 0, 0, 0, 0) || AbilityBattleEffects(ABILITYEFFECT_TRACE, 0, 0, 0, 0) || ItemBattleEffects(1, 0, 1) || AbilityBattleEffects(ABILITYEFFECT_FORECAST, 0, 0, 0, 0)) return TRUE; - gBattleStruct->field_4D++; + gBattleStruct->faintedActionsState++; break; - case 7: + case FAINTED_ACTIONS_MAX_CASE: break; } - } while (gBattleStruct->field_4D != sub_8041728_MAX_CASE); + } while (gBattleStruct->faintedActionsState != FAINTED_ACTIONS_MAX_CASE); return FALSE; } @@ -1313,7 +1313,7 @@ void TryClearRageStatuses(void) u8 AtkCanceller_UnableToUseMove(void) { u8 effect = 0; - s32* bideDmg = &gBattleScripting.bideDmg; + s32 *bideDmg = &gBattleScripting.bideDmg; do { switch (gBattleStruct->atkCancellerTracker) @@ -3182,7 +3182,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn) && gBattleMoves[gCurrentMove].flags & FLAG_KINGSROCK_AFFECTED && gBattleMons[gBankTarget].hp) { - gBattleCommunication[MOVE_EFFECT_BYTE] = 8; + gBattleCommunication[MOVE_EFFECT_BYTE] = MOVE_EFFECT_FLINCH; BattleScriptPushCursor(); SetMoveEffect(0, 0); BattleScriptPop(); @@ -3318,7 +3318,7 @@ static bool32 HasObedientBitSet(u8 bank) return GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_OBEDIENCE, NULL); } -u8 IsPokeDisobedient(void) +u8 IsMonDisobedient(void) { s32 rnd; s32 calc; diff --git a/src/battle_util2.c b/src/battle_util2.c index e119c85d7..538c1c641 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -4,21 +4,17 @@ #include "malloc.h" #include "pokemon.h" #include "event_data.h" -#include "abilities.h" -#include "rng.h" +#include "constants/abilities.h" +#include "random.h" +#include "battle_scripts.h" extern struct BattlePokemon gBattleMons[BATTLE_BANKS_COUNT]; extern u16 gBattlePartyID[BATTLE_BANKS_COUNT]; extern u8 gUnknown_0203CF00[]; -extern const u8* gBattlescriptCurrInstr; +extern const u8 *gBattlescriptCurrInstr; extern u8 gBattleCommunication[]; extern u8 gActiveBank; -extern const u8 BattleScript_MoveUsedWokeUp[]; -extern const u8 BattleScript_MoveUsedIsFrozen[]; -extern const u8 BattleScript_MoveUsedUnfroze[]; -extern const u8 BattleScript_MoveUsedIsAsleep[]; - extern void sub_81D55D0(void); extern void sub_81D5694(void); extern u8 pokemon_order_func(u8); diff --git a/src/berry.c b/src/berry.c index 0c1553463..74b7090c0 100644 --- a/src/berry.c +++ b/src/berry.c @@ -2,9 +2,9 @@ #include "berry.h" #include "main.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "text.h" -#include "rng.h" +#include "random.h" #include "event_data.h" #include "fieldmap.h" diff --git a/src/berry_blender.c b/src/berry_blender.c index aa333ebaf..b1d36e2d9 100644 --- a/src/berry_blender.c +++ b/src/berry_blender.c @@ -1,11 +1,13 @@ #include "global.h" +#include "constants/game_stat.h" +#include "overworld.h" #include "berry_blender.h" #include "bg.h" #include "window.h" #include "task.h" #include "sprite.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "m4a.h" #include "bg.h" #include "palette.h" @@ -20,10 +22,10 @@ #include "item_menu_icons.h" #include "berry.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "string_util.h" #include "international_string_util.h" -#include "rng.h" +#include "random.h" #include "menu.h" #include "pokeblock.h" #include "trig.h" @@ -1002,35 +1004,35 @@ static void sub_807FAC8(void) static void sub_807FD08(struct Sprite* sprite) { - sprite->data1 += sprite->data6; - sprite->data2 -= sprite->data4; - sprite->data2 += sprite->data7; - sprite->data0 += sprite->data7; - sprite->data4--; + sprite->data[1] += sprite->data[6]; + sprite->data[2] -= sprite->data[4]; + sprite->data[2] += sprite->data[7]; + sprite->data[0] += sprite->data[7]; + sprite->data[4]--; - if (sprite->data0 < sprite->data2) + if (sprite->data[0] < sprite->data[2]) { - sprite->data3 = sprite->data4 = sprite->data3 - 1; + sprite->data[3] = sprite->data[4] = sprite->data[3] - 1; - if (++sprite->data5 > 3) + if (++sprite->data[5] > 3) DestroySprite(sprite); else PlaySE(SE_TB_KARA); } - sprite->pos1.x = sprite->data1; - sprite->pos1.y = sprite->data2; + sprite->pos1.x = sprite->data[1]; + sprite->pos1.y = sprite->data[2]; } static void sub_807FD64(struct Sprite* sprite, s16 a2, s16 a3, s16 a4, s16 a5, s16 a6) { - sprite->data0 = a3; - sprite->data1 = a2; - sprite->data2 = a3; - sprite->data3 = a4; - sprite->data4 = 10; - sprite->data5 = 0; - sprite->data6 = a5; - sprite->data7 = a6; + sprite->data[0] = a3; + sprite->data[1] = a2; + sprite->data[2] = a3; + sprite->data[3] = a4; + sprite->data[4] = 10; + sprite->data[5] = 0; + sprite->data[6] = a5; + sprite->data[7] = a6; sprite->callback = sub_807FD08; } @@ -1066,7 +1068,7 @@ static void Blender_SetPlayerNamesLocal(u8 opponentsNum) sBerryBlenderData->playersNo = 2; StringCopy(gLinkPlayers[0].name, gSaveBlock2Ptr->playerName); - if (!FlagGet(FLAG_340)) + if (!FlagGet(FLAG_0x340)) StringCopy(gLinkPlayers[1].name, sBlenderOpponentsNames[BLENDER_MASTER]); else StringCopy(gLinkPlayers[1].name, sBlenderOpponentsNames[BLENDER_MISTER]); @@ -1590,7 +1592,7 @@ static void sub_80808D4(void) if (gSpecialVar_0x8004 == 1) { - if (!FlagGet(FLAG_340)) + if (!FlagGet(FLAG_0x340)) sBerryBlenderData->field_120[0] = CreateTask(sub_8081224, 10); else sBerryBlenderData->field_120[0] = CreateTask(sUnknown_083399EC[0], 10); @@ -2909,10 +2911,10 @@ static void BerryBlender_SetBackgroundsPos(void) static void sub_8082E3C(struct Sprite* sprite) { - sprite->data2 += sprite->data0; - sprite->data3 += sprite->data1; - sprite->pos2.x = sprite->data2 / 8; - sprite->pos2.y = sprite->data3 / 8; + sprite->data[2] += sprite->data[0]; + sprite->data[3] += sprite->data[1]; + sprite->pos2.x = sprite->data[2] / 8; + sprite->pos2.y = sprite->data[3] / 8; if (sprite->animEnded) DestroySprite(sprite); @@ -2935,8 +2937,8 @@ static void sub_8082E84(void) y = gSineTable[(rand & 0xFF)] / 4; spriteId = CreateSprite(&sUnknown_08339BE0, x + 120, y + 80, 1); - gSprites[spriteId].data0 = 16 - (Random() % 32); - gSprites[spriteId].data1 = 16 - (Random() % 32); + gSprites[spriteId].data[0] = 16 - (Random() % 32); + gSprites[spriteId].data[1] = 16 - (Random() % 32); gSprites[spriteId].callback = sub_8082E3C; } @@ -2944,8 +2946,8 @@ static void sub_8082E84(void) static void sub_8082F68(struct Sprite* sprite) { - sprite->data0++; - sprite->pos2.y = -(sprite->data0 / 3); + sprite->data[0]++; + sprite->pos2.y = -(sprite->data[0] / 3); if (sprite->animEnded) DestroySprite(sprite); @@ -2953,8 +2955,8 @@ static void sub_8082F68(struct Sprite* sprite) static void sub_8082F9C(struct Sprite* sprite) { - sprite->data0++; - sprite->pos2.y = -(sprite->data0 * 2); + sprite->data[0]++; + sprite->pos2.y = -(sprite->data[0] * 2); if (sprite->pos2.y < -12) sprite->pos2.y = -12; @@ -2970,68 +2972,68 @@ static void Blender_SetBankBerryData(u8 bank, u16 itemId) static void sub_8083010(struct Sprite* sprite) { - switch (sprite->data0) + switch (sprite->data[0]) { case 0: - sprite->data1 += 8; - if (sprite->data1 > 88) + sprite->data[1] += 8; + if (sprite->data[1] > 88) { - sprite->data1 = 88; - sprite->data0++; + sprite->data[1] = 88; + sprite->data[0]++; PlaySE(SE_KON); } break; case 1: - sprite->data2 += 1; - if (sprite->data2 > 20) + sprite->data[2] += 1; + if (sprite->data[2] > 20) { - sprite->data0++; - sprite->data2 = 0; + sprite->data[0]++; + sprite->data[2] = 0; } break; case 2: - sprite->data1 += 4; - if (sprite->data1 > 176) + sprite->data[1] += 4; + if (sprite->data[1] > 176) { - if (++sprite->data3 == 3) + if (++sprite->data[3] == 3) { DestroySprite(sprite); CreateSprite(&sUnknown_08339C60, 120, -20, 2); } else { - sprite->data0 = 0; - sprite->data1 = -16; - StartSpriteAnim(sprite, sprite->data3); + sprite->data[0] = 0; + sprite->data[1] = -16; + StartSpriteAnim(sprite, sprite->data[3]); } } break; } - sprite->pos2.y = sprite->data1; + sprite->pos2.y = sprite->data[1]; } static void sub_80830C0(struct Sprite* sprite) { - switch (sprite->data0) + switch (sprite->data[0]) { case 0: - sprite->data1 += 8; - if (sprite->data1 > 92) + sprite->data[1] += 8; + if (sprite->data[1] > 92) { - sprite->data1 = 92; - sprite->data0++; + sprite->data[1] = 92; + sprite->data[0]++; PlaySE(SE_PIN); } break; case 1: - sprite->data2 += 1; - if (sprite->data2 > 20) - sprite->data0++; + sprite->data[2] += 1; + if (sprite->data[2] > 20) + sprite->data[0]++; break; case 2: - sprite->data1 += 4; - if (sprite->data1 > 176) + sprite->data[1] += 4; + if (sprite->data[1] > 176) { sBerryBlenderData->mainState++; DestroySprite(sprite); @@ -3039,7 +3041,7 @@ static void sub_80830C0(struct Sprite* sprite) break; } - sprite->pos2.y = sprite->data1; + sprite->pos2.y = sprite->data[1]; } static void sub_8083140(u16 a0, u16 a1) diff --git a/src/braille_puzzles.c b/src/braille_puzzles.c index 85b2bc509..d6924de9f 100755 --- a/src/braille_puzzles.c +++ b/src/braille_puzzles.c @@ -1,12 +1,12 @@ #include "global.h" #include "event_data.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "script.h" -#include "species.h" +#include "constants/species.h" #include "task.h" #include "field_effect.h" -#include "flags.h" +#include "constants/flags.h" extern void MapGridSetMetatileIdAt(s32 x, s32 y, u16 metatileId); // fieldmap extern void DrawWholeMapView(); // field_camera diff --git a/src/calculate_base_damage.c b/src/calculate_base_damage.c index 89770b17a..d30599607 100644 --- a/src/calculate_base_damage.c +++ b/src/calculate_base_damage.c @@ -1,14 +1,14 @@ #include "global.h" -#include "abilities.h" +#include "constants/abilities.h" #include "battle.h" -#include "hold_effects.h" +#include "constants/hold_effects.h" #include "event_data.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "pokemon.h" -#include "species.h" -#include "moves.h" -#include "battle_move_effects.h" +#include "constants/species.h" +#include "constants/moves.h" +#include "constants/battle_move_effects.h" extern u32 gBattleTypeFlags; extern struct BattlePokemon gBattleMons[4]; diff --git a/src/clear_save_data_screen.c b/src/clear_save_data_screen.c index d5e173ee8..d00944ac1 100755 --- a/src/clear_save_data_screen.c +++ b/src/clear_save_data_screen.c @@ -9,7 +9,7 @@ #include "gpu_regs.h" #include "bg.h" #include "text_window.h" -#include "songs.h" +#include "constants/songs.h" extern u8 gText_ClearAllSaveData[]; extern u8 gText_ClearingData[]; diff --git a/src/daycare.c b/src/daycare.c index 8dd45863a..ce9952531 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -2,14 +2,14 @@ #include "pokemon.h" #include "daycare.h" #include "string_util.h" -#include "species.h" -#include "items.h" +#include "constants/species.h" +#include "constants/items.h" #include "mail.h" #include "pokemon_storage_system.h" #include "event_data.h" -#include "rng.h" +#include "random.h" #include "main.h" -#include "moves.h" +#include "constants/moves.h" #include "egg_hatch.h" #include "text.h" #include "menu.h" diff --git a/src/decompress.c b/src/decompress.c index e2ae6ce83..8e8827194 100644 --- a/src/decompress.c +++ b/src/decompress.c @@ -1,6 +1,6 @@ #include "global.h" #include "decompress.h" -#include "species.h" +#include "constants/species.h" #include "text.h" #include "malloc.h" #include "pokemon.h" diff --git a/src/decoration.c b/src/decoration.c index 8093825f4..987e628c5 100644 --- a/src/decoration.c +++ b/src/decoration.c @@ -1,4 +1,5 @@ #include "global.h" +#include "constants/decorations.h" #include "decompress.h" #include "malloc.h" #include "text.h" @@ -8,7 +9,7 @@ #include "task.h" #include "main.h" #include "palette.h" -#include "songs.h" +#include "constants/songs.h" #include "overworld.h" #include "fieldmap.h" #include "metatile_behavior.h" @@ -32,7 +33,7 @@ #include "tilesets.h" #include "item_icon.h" #include "trader.h" -#include "map_object_constants.h" +#include "constants/map_objects.h" #include "decoration_inventory.h" #include "decoration.h" #include "graphics.h" @@ -1302,7 +1303,7 @@ void sub_8128060(u8 taskId) void ConfigureCameraObjectForPlacingDecoration(struct PlaceDecorationGraphicsDataBuffer *data, u8 decor) { - sDecor_CameraSpriteObjectIdx1 = gSprites[gUnknown_03005DD0.unk4].data0; + sDecor_CameraSpriteObjectIdx1 = gSprites[gUnknown_03005DD0.unk4].data[0]; gUnknown_03005DD0.unk4 = gpu_pal_decompress_alloc_tag_and_upload(data, decor); gSprites[gUnknown_03005DD0.unk4].oam.priority = 1; gSprites[gUnknown_03005DD0.unk4].callback = sub_81292D0; @@ -1383,8 +1384,8 @@ void sub_812826C(u8 taskId) void sub_81283BC(u8 taskId) { gTasks[taskId].data[10] = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data7 = 1; - gSprites[sDecor_CameraSpriteObjectIdx2].data7 = 1; + gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 1; + gSprites[sDecor_CameraSpriteObjectIdx2].data[7] = 1; sub_8128DE0(); sub_8128950(taskId); } @@ -1392,8 +1393,8 @@ void sub_81283BC(u8 taskId) void sub_8128414(u8 taskId) { gTasks[taskId].data[10] = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data7 = 1; - gSprites[sDecor_CameraSpriteObjectIdx2].data7 = 1; + gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 1; + gSprites[sDecor_CameraSpriteObjectIdx2].data[7] = 1; sub_8128DE0(); StringExpandPlaceholders(gStringVar4, gText_CancelDecorating); DisplayItemMessageOnField(taskId, gStringVar4, sub_8128B80); @@ -1769,8 +1770,8 @@ bool8 sub_8128DB4(void) void sub_8128DE0(void) { sDecorationLastDirectionMoved = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data2 = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data3 = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[2] = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[3] = 0; } void sub_8128E18(u8 taskId) @@ -1778,7 +1779,7 @@ void sub_8128E18(u8 taskId) s16 *data; data = gTasks[taskId].data; - if (!gSprites[sDecor_CameraSpriteObjectIdx1].data4) + if (!gSprites[sDecor_CameraSpriteObjectIdx1].data[4]) { if (data[10] == 1) { @@ -1792,29 +1793,29 @@ void sub_8128E18(u8 taskId) if ((gMain.heldKeys & 0x0F0) == DPAD_UP) { sDecorationLastDirectionMoved = DIR_SOUTH; - gSprites[sDecor_CameraSpriteObjectIdx1].data2 = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data3 = -2; + gSprites[sDecor_CameraSpriteObjectIdx1].data[2] = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[3] = -2; data[1]--; } if ((gMain.heldKeys & 0x0F0) == DPAD_DOWN) { sDecorationLastDirectionMoved = DIR_NORTH; - gSprites[sDecor_CameraSpriteObjectIdx1].data2 = 0; - gSprites[sDecor_CameraSpriteObjectIdx1].data3 = 2; + gSprites[sDecor_CameraSpriteObjectIdx1].data[2] = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[3] = 2; data[1]++; } if ((gMain.heldKeys & 0x0F0) == DPAD_LEFT) { sDecorationLastDirectionMoved = DIR_WEST; - gSprites[sDecor_CameraSpriteObjectIdx1].data2 = -2; - gSprites[sDecor_CameraSpriteObjectIdx1].data3 = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[2] = -2; + gSprites[sDecor_CameraSpriteObjectIdx1].data[3] = 0; data[0]--; } if ((gMain.heldKeys & 0x0F0) == DPAD_RIGHT) { sDecorationLastDirectionMoved = DIR_EAST; - gSprites[sDecor_CameraSpriteObjectIdx1].data2 = 2; - gSprites[sDecor_CameraSpriteObjectIdx1].data3 = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[2] = 2; + gSprites[sDecor_CameraSpriteObjectIdx1].data[3] = 0; data[0]++; } if (!sub_8128DB4() || !sub_8128D10(taskId)) @@ -1824,8 +1825,8 @@ void sub_8128E18(u8 taskId) } if (sDecorationLastDirectionMoved) { - gSprites[sDecor_CameraSpriteObjectIdx1].data4++; - gSprites[sDecor_CameraSpriteObjectIdx1].data4 &= 7; + gSprites[sDecor_CameraSpriteObjectIdx1].data[4]++; + gSprites[sDecor_CameraSpriteObjectIdx1].data[4] &= 7; } if (!data[10]) { @@ -1843,7 +1844,7 @@ void sub_8128E18(u8 taskId) void sub_8128FD8(u8 taskId) { sub_8197434(0, 1); - gSprites[sDecor_CameraSpriteObjectIdx1].data7 = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0; gTasks[taskId].data[10] = 0; gTasks[taskId].func = sub_8128E18; } @@ -1954,20 +1955,20 @@ void SetDecorSelectionBoxOamAttributes(u8 decorShape) void sub_81292D0(struct Sprite *sprite) { - sprite->data2 = 0; - sprite->data3 = 0; - sprite->data4 = 0; - sprite->data5 = 0; - sprite->data6 = 0; - sprite->data7 = 0; + sprite->data[2] = 0; + sprite->data[3] = 0; + sprite->data[4] = 0; + sprite->data[5] = 0; + sprite->data[6] = 0; + sprite->data[7] = 0; sprite->callback = sub_81292E8; } void sub_81292E8(struct Sprite *sprite) { - if (sprite->data7 == 0) + if (sprite->data[7] == 0) { - if (sprite->data6 < 15) + if (sprite->data[6] < 15) { sprite->invisible = FALSE; } @@ -1975,8 +1976,8 @@ void sub_81292E8(struct Sprite *sprite) { sprite->invisible = TRUE; } - sprite->data6 ++; - sprite->data6 &= 0x1F; + sprite->data[6] ++; + sprite->data[6] &= 0x1F; } else { @@ -2248,7 +2249,7 @@ bool8 sub_81299AC(u8 taskId) void SetUpPuttingAwayDecorationPlayerAvatar(void) { player_get_direction_lower_nybble(); - sDecor_CameraSpriteObjectIdx1 = gSprites[gUnknown_03005DD0.unk4].data0; + sDecor_CameraSpriteObjectIdx1 = gSprites[gUnknown_03005DD0.unk4].data[0]; sub_812A39C(); gUnknown_03005DD0.unk4 = CreateSprite(&gUnknown_085A7404, 0x78, 0x50, 0); if (gSaveBlock2Ptr->playerGender == MALE) @@ -2299,7 +2300,7 @@ void sub_8129ABC(u8 taskId) void sub_8129B34(u8 taskId) { sub_8197434(0, 1); - gSprites[sDecor_CameraSpriteObjectIdx1].data7 = 0; + gSprites[sDecor_CameraSpriteObjectIdx1].data[7] = 0; gSprites[sDecor_CameraSpriteObjectIdx1].invisible = FALSE; gSprites[sDecor_CameraSpriteObjectIdx1].callback = sub_812A36C; gSprites[sDecor_CameraSpriteObjectIdx2].pos1.x = 0x88; @@ -2719,9 +2720,9 @@ void sub_812A334(void) void sub_812A36C(struct Sprite *sprite) { - sprite->data0 ++; - sprite->data0 &= 0x1F; - if (sprite->data0 > 15) + sprite->data[0] ++; + sprite->data[0] &= 0x1F; + if (sprite->data[0] > 15) { sprite->invisible = TRUE; } diff --git a/src/decoration_inventory.c b/src/decoration_inventory.c index 03ab6c00c..308320206 100644 --- a/src/decoration_inventory.c +++ b/src/decoration_inventory.c @@ -1,6 +1,7 @@ // Includes #include "global.h" +#include "constants/decorations.h" #include "decoration.h" #include "decoration_inventory.h" diff --git a/src/egg_hatch.c b/src/egg_hatch.c index d9d77d2e9..032607806 100644 --- a/src/egg_hatch.c +++ b/src/egg_hatch.c @@ -2,7 +2,7 @@ #include "pokemon.h" #include "egg_hatch.h" #include "pokedex.h" -#include "items.h" +#include "constants/items.h" #include "script.h" #include "decompress.h" #include "task.h" @@ -10,20 +10,20 @@ #include "main.h" #include "event_data.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "text.h" #include "text_window.h" #include "string_util.h" #include "menu.h" #include "trig.h" -#include "rng.h" +#include "random.h" #include "malloc.h" #include "dma3.h" #include "gpu_regs.h" #include "bg.h" #include "m4a.h" #include "window.h" -#include "abilities.h" +#include "constants/abilities.h" #include "daycare.h" #include "battle.h" // to get rid of later @@ -709,16 +709,16 @@ static void CB2_EggHatch_1(void) static void SpriteCB_Egg_0(struct Sprite* sprite) { - if (++sprite->data0 > 20) + if (++sprite->data[0] > 20) { sprite->callback = SpriteCB_Egg_1; - sprite->data0 = 0; + sprite->data[0] = 0; } else { - sprite->data1 = (sprite->data1 + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data1, 1); - if (sprite->data0 == 15) + sprite->data[1] = (sprite->data[1] + 20) & 0xFF; + sprite->pos2.x = Sin(sprite->data[1], 1); + if (sprite->data[0] == 15) { PlaySE(SE_BOWA); StartSpriteAnim(sprite, 1); @@ -729,19 +729,19 @@ static void SpriteCB_Egg_0(struct Sprite* sprite) static void SpriteCB_Egg_1(struct Sprite* sprite) { - if (++sprite->data2 > 30) + if (++sprite->data[2] > 30) { - if (++sprite->data0 > 20) + if (++sprite->data[0] > 20) { sprite->callback = SpriteCB_Egg_2; - sprite->data0 = 0; - sprite->data2 = 0; + sprite->data[0] = 0; + sprite->data[2] = 0; } else { - sprite->data1 = (sprite->data1 + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data1, 2); - if (sprite->data0 == 15) + sprite->data[1] = (sprite->data[1] + 20) & 0xFF; + sprite->pos2.x = Sin(sprite->data[1], 2); + if (sprite->data[0] == 15) { PlaySE(SE_BOWA); StartSpriteAnim(sprite, 2); @@ -752,30 +752,30 @@ static void SpriteCB_Egg_1(struct Sprite* sprite) static void SpriteCB_Egg_2(struct Sprite* sprite) { - if (++sprite->data2 > 30) + if (++sprite->data[2] > 30) { - if (++sprite->data0 > 38) + if (++sprite->data[0] > 38) { u16 species; sprite->callback = SpriteCB_Egg_3; - sprite->data0 = 0; + sprite->data[0] = 0; species = GetMonData(&gPlayerParty[sEggHatchData->eggPartyID], MON_DATA_SPECIES); gSprites[sEggHatchData->pokeSpriteID].pos2.x = 0; gSprites[sEggHatchData->pokeSpriteID].pos2.y = 0; } else { - sprite->data1 = (sprite->data1 + 20) & 0xFF; - sprite->pos2.x = Sin(sprite->data1, 2); - if (sprite->data0 == 15) + sprite->data[1] = (sprite->data[1] + 20) & 0xFF; + sprite->pos2.x = Sin(sprite->data[1], 2); + if (sprite->data[0] == 15) { PlaySE(SE_BOWA); StartSpriteAnim(sprite, 2); CreateRandomEggShardSprite(); CreateRandomEggShardSprite(); } - if (sprite->data0 == 30) + if (sprite->data[0] == 30) PlaySE(SE_BOWA); } } @@ -783,60 +783,60 @@ static void SpriteCB_Egg_2(struct Sprite* sprite) static void SpriteCB_Egg_3(struct Sprite* sprite) { - if (++sprite->data0 > 50) + if (++sprite->data[0] > 50) { sprite->callback = SpriteCB_Egg_4; - sprite->data0 = 0; + sprite->data[0] = 0; } } static void SpriteCB_Egg_4(struct Sprite* sprite) { s16 i; - if (sprite->data0 == 0) + if (sprite->data[0] == 0) BeginNormalPaletteFade(-1, -1, 0, 0x10, 0xFFFF); - if (sprite->data0 < 4u) + if (sprite->data[0] < 4u) { for (i = 0; i <= 3; i++) CreateRandomEggShardSprite(); } - sprite->data0++; + sprite->data[0]++; if (!gPaletteFade.active) { PlaySE(SE_TAMAGO); sprite->invisible = 1; sprite->callback = SpriteCB_Egg_5; - sprite->data0 = 0; + sprite->data[0] = 0; } } static void SpriteCB_Egg_5(struct Sprite* sprite) { - if (sprite->data0 == 0) + if (sprite->data[0] == 0) { gSprites[sEggHatchData->pokeSpriteID].invisible = 0; StartSpriteAffineAnim(&gSprites[sEggHatchData->pokeSpriteID], 1); } - if (sprite->data0 == 8) + if (sprite->data[0] == 8) BeginNormalPaletteFade(-1, -1, 0x10, 0, 0xFFFF); - if (sprite->data0 <= 9) + if (sprite->data[0] <= 9) gSprites[sEggHatchData->pokeSpriteID].pos1.y -= 1; - if (sprite->data0 > 40) + if (sprite->data[0] > 40) sprite->callback = SpriteCallbackDummy; - sprite->data0++; + sprite->data[0]++; } static void SpriteCB_EggShard(struct Sprite* sprite) { - sprite->data4 += sprite->data1; - sprite->data5 += sprite->data2; + sprite->data[4] += sprite->data[1]; + sprite->data[5] += sprite->data[2]; - sprite->pos2.x = sprite->data4 / 256; - sprite->pos2.y = sprite->data5 / 256; + sprite->pos2.x = sprite->data[4] / 256; + sprite->pos2.y = sprite->data[5] / 256; - sprite->data2 += sprite->data3; + sprite->data[2] += sprite->data[3]; - if (sprite->pos1.y + sprite->pos2.y > sprite->pos1.y + 20 && sprite->data2 > 0) + if (sprite->pos1.y + sprite->pos2.y > sprite->pos1.y + 20 && sprite->data[2] > 0) DestroySprite(sprite); } @@ -854,9 +854,9 @@ static void CreateRandomEggShardSprite(void) static void CreateEggShardSprite(u8 x, u8 y, s16 data1, s16 data2, s16 data3, u8 spriteAnimIndex) { u8 spriteID = CreateSprite(&sSpriteTemplate_EggShard, x, y, 4); - gSprites[spriteID].data1 = data1; - gSprites[spriteID].data2 = data2; - gSprites[spriteID].data3 = data3; + gSprites[spriteID].data[1] = data1; + gSprites[spriteID].data[2] = data2; + gSprites[spriteID].data[3] = data3; StartSpriteAnim(&gSprites[spriteID], spriteAnimIndex); } diff --git a/src/event_data.c b/src/event_data.c index e3742a147..9f1432f17 100644 --- a/src/event_data.c +++ b/src/event_data.c @@ -44,7 +44,7 @@ void ClearTempFieldEventData(void) FlagClear(FLAG_SYS_ENC_DOWN_ITEM); FlagClear(FLAG_SYS_USE_STRENGTH); FlagClear(FLAG_SYS_CTRL_OBJ_DELETE); - FlagClear(FLAG_SYS_UNKNOWN_880); + FlagClear(FLAG_0x880); } // probably had different flag splits at one point. diff --git a/src/evolution_graphics.c b/src/evolution_graphics.c index eca5d4bdc..8d02eef91 100644 --- a/src/evolution_graphics.c +++ b/src/evolution_graphics.c @@ -2,11 +2,11 @@ #include "evolution_graphics.h" #include "sprite.h" #include "trig.h" -#include "rng.h" +#include "random.h" #include "decompress.h" #include "task.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "palette.h" // this file's functions @@ -112,18 +112,18 @@ static void SpriteCB_PreEvoSparkleSet1(struct Sprite* sprite) { u8 matrixNum; - sprite->pos1.y = 88 - (sprite->data7 * sprite->data7) / 80; - sprite->pos2.y = Sin((u8)(sprite->data6), sprite->data5) / 4; - sprite->pos2.x = Cos((u8)(sprite->data6), sprite->data5); - sprite->data6 += 4; - if (sprite->data7 & 1) - sprite->data5--; - sprite->data7++; + sprite->pos1.y = 88 - (sprite->data[7] * sprite->data[7]) / 80; + sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; + sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->data[6] += 4; + if (sprite->data[7] & 1) + sprite->data[5]--; + sprite->data[7]++; if (sprite->pos2.y > 0) sprite->subpriority = 1; else sprite->subpriority = 20; - matrixNum = sprite->data5 / 4 + 20; + matrixNum = sprite->data[5] / 4 + 20; if (matrixNum > 31) matrixNum = 31; sprite->oam.matrixNum = matrixNum; @@ -137,9 +137,9 @@ static void CreatePreEvoSparkleSet1(u8 arg0) u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 88, 0); if (spriteID != MAX_SPRITES) { - gSprites[spriteID].data5 = 48; - gSprites[spriteID].data6 = arg0; - gSprites[spriteID].data7 = 0; + gSprites[spriteID].data[5] = 48; + gSprites[spriteID].data[6] = arg0; + gSprites[spriteID].data[7] = 0; gSprites[spriteID].oam.affineMode = 1; gSprites[spriteID].oam.matrixNum = 31; gSprites[spriteID].callback = SpriteCB_PreEvoSparkleSet1; @@ -150,11 +150,11 @@ static void SpriteCB_PreEvoSparkleSet2(struct Sprite* sprite) { if (sprite->pos1.y < 88) { - sprite->pos1.y = 8 + (sprite->data7 * sprite->data7) / 5; - sprite->pos2.y = Sin((u8)(sprite->data6), sprite->data5) / 4; - sprite->pos2.x = Cos((u8)(sprite->data6), sprite->data5); - sprite->data5 = 8 + Sin((u8)(sprite->data7 * 4), 40); - sprite->data7++; + sprite->pos1.y = 8 + (sprite->data[7] * sprite->data[7]) / 5; + sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]) / 4; + sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->data[5] = 8 + Sin((u8)(sprite->data[7] * 4), 40); + sprite->data[7]++; } else DestroySprite(sprite); @@ -165,9 +165,9 @@ static void CreatePreEvoSparkleSet2(u8 arg0) u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 8, 0); if (spriteID != MAX_SPRITES) { - gSprites[spriteID].data5 = 8; - gSprites[spriteID].data6 = arg0; - gSprites[spriteID].data7 = 0; + gSprites[spriteID].data[5] = 8; + gSprites[spriteID].data[6] = arg0; + gSprites[spriteID].data[7] = 0; gSprites[spriteID].oam.affineMode = 1; gSprites[spriteID].oam.matrixNum = 25; gSprites[spriteID].subpriority = 1; @@ -177,12 +177,12 @@ static void CreatePreEvoSparkleSet2(u8 arg0) static void SpriteCB_PostEvoSparkleSet1(struct Sprite* sprite) { - if (sprite->data5 > 8) + if (sprite->data[5] > 8) { - sprite->pos2.y = Sin((u8)(sprite->data6), sprite->data5); - sprite->pos2.x = Cos((u8)(sprite->data6), sprite->data5); - sprite->data5 -= sprite->data3; - sprite->data6 += 4; + sprite->pos2.y = Sin((u8)(sprite->data[6]), sprite->data[5]); + sprite->pos2.x = Cos((u8)(sprite->data[6]), sprite->data[5]); + sprite->data[5] -= sprite->data[3]; + sprite->data[6] += 4; } else DestroySprite(sprite); @@ -193,10 +193,10 @@ static void CreatePostEvoSparkleSet1(u8 arg0, u8 arg1) u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 56, 0); if (spriteID != MAX_SPRITES) { - gSprites[spriteID].data3 = arg1; - gSprites[spriteID].data5 = 120; - gSprites[spriteID].data6 = arg0; - gSprites[spriteID].data7 = 0; + gSprites[spriteID].data[3] = arg1; + gSprites[spriteID].data[5] = 120; + gSprites[spriteID].data[6] = arg0; + gSprites[spriteID].data[7] = 0; gSprites[spriteID].oam.affineMode = 1; gSprites[spriteID].oam.matrixNum = 31; gSprites[spriteID].subpriority = 1; @@ -206,29 +206,29 @@ static void CreatePostEvoSparkleSet1(u8 arg0, u8 arg1) static void SpriteCB_PostEvoSparkleSet2(struct Sprite* sprite) { - if (!(sprite->data7 & 3)) + if (!(sprite->data[7] & 3)) sprite->pos1.y++; - if (sprite->data6 < 128) + if (sprite->data[6] < 128) { u8 matrixNum; - sprite->pos2.y = -Sin((u8)(sprite->data6), sprite->data5); - sprite->pos1.x = 120 + (sprite->data3 * sprite->data7) / 3; - sprite->data6++; - matrixNum = 31 - (sprite->data6 * 12 / 128); - if (sprite->data6 > 64) + sprite->pos2.y = -Sin((u8)(sprite->data[6]), sprite->data[5]); + sprite->pos1.x = 120 + (sprite->data[3] * sprite->data[7]) / 3; + sprite->data[6]++; + matrixNum = 31 - (sprite->data[6] * 12 / 128); + if (sprite->data[6] > 64) sprite->subpriority = 1; else { sprite->invisible = 0; sprite->subpriority = 20; - if (sprite->data6 > 112 && sprite->data6 & 1) + if (sprite->data[6] > 112 && sprite->data[6] & 1) sprite->invisible = 1; } if (matrixNum < 20) matrixNum = 20; sprite->oam.matrixNum = matrixNum; - sprite->data7++; + sprite->data[7]++; } else DestroySprite(sprite); @@ -239,9 +239,9 @@ static void CreatePostEvoSparkleSet2(u8 arg0) u8 spriteID = CreateSprite(&sEvoSparkleSpriteTemplate, 120, 56, 0); if (spriteID != MAX_SPRITES) { - gSprites[spriteID].data3 = 3 - (Random() % 7); - gSprites[spriteID].data5 = 48 + (Random() & 0x3F); - gSprites[spriteID].data7 = 0; + gSprites[spriteID].data[3] = 3 - (Random() % 7); + gSprites[spriteID].data[5] = 48 + (Random() & 0x3F); + gSprites[spriteID].data[7] = 0; gSprites[spriteID].oam.affineMode = 1; gSprites[spriteID].oam.matrixNum = 31; gSprites[spriteID].subpriority = 20; diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 68731a14a..c17921b74 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -16,11 +16,12 @@ #include "m4a.h" #include "menu.h" #include "pokedex.h" -#include "species.h" +#include "constants/species.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "overworld.h" #include "battle_message.h" +#include "battle_string_ids.h" #include "gpu_regs.h" #include "bg.h" #include "link.h" @@ -51,6 +52,7 @@ extern u8 gBattleTerrain; extern struct SpriteTemplate gUnknown_0202499C; extern bool8 gAffineAnimsDisabled; extern u16 gMoveToLearn; +extern const u8 gSpeciesNames[][11]; extern u8 gBattleCommunication[]; #define sEvoCursorPos gBattleCommunication[1] // when learning a new move @@ -771,7 +773,7 @@ static void Task_EvolutionScene(u8 taskID) { BufferMoveToLearnIntoBattleTextBuff2(); PlayFanfare(BGM_FANFA1); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[3]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnsFirstMove = 0x40; // re-used as a counter gTasks[taskID].tState++; @@ -788,7 +790,7 @@ static void Task_EvolutionScene(u8 taskID) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BufferMoveToLearnIntoBattleTextBuff2(); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[4]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnMoveState++; } @@ -796,7 +798,7 @@ static void Task_EvolutionScene(u8 taskID) case 1: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[5]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnMoveState++; } @@ -804,7 +806,7 @@ static void Task_EvolutionScene(u8 taskID) case 2: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[6]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tData7 = 5; gTasks[taskID].tData8 = 10; @@ -881,7 +883,7 @@ static void Task_EvolutionScene(u8 taskID) u16 move = GetMonData(mon, var + MON_DATA_MOVE1); if (IsHMMove2(move)) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[307]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnMoveState = 12; } @@ -897,14 +899,14 @@ static void Task_EvolutionScene(u8 taskID) } break; case 7: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[207]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnMoveState++; break; case 8: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[7]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tLearnMoveState++; } @@ -912,20 +914,20 @@ static void Task_EvolutionScene(u8 taskID) case 9: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[208]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tState = 20; } break; case 10: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[8]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tData7 = 11; gTasks[taskID].tData8 = 0; gTasks[taskID].tLearnMoveState = 3; break; case 11: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[9]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_ID_ADDER]); BattleHandleAddTextPrinter(gDisplayedStringBattle, 0); gTasks[taskID].tState = 15; break; @@ -1116,7 +1118,7 @@ static void Task_TradeEvolutionScene(u8 taskID) { BufferMoveToLearnIntoBattleTextBuff2(); PlayFanfare(BGM_FANFA1); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[3]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNLEARNEDMOVE - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnsFirstMove = 0x40; // re-used as a counter gTasks[taskID].tState++; @@ -1133,7 +1135,7 @@ static void Task_TradeEvolutionScene(u8 taskID) if (!IsTextPrinterActive(0) && !IsSEPlaying()) { BufferMoveToLearnIntoBattleTextBuff2(); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[4]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE1 - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState++; } @@ -1141,7 +1143,7 @@ static void Task_TradeEvolutionScene(u8 taskID) case 1: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[5]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE2 - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState++; } @@ -1149,7 +1151,7 @@ static void Task_TradeEvolutionScene(u8 taskID) case 2: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[6]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_TRYTOLEARNMOVE3 - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tData7 = 5; gTasks[taskID].tData8 = 9; @@ -1170,7 +1172,7 @@ static void Task_TradeEvolutionScene(u8 taskID) { case 0: sEvoCursorPos = 0; - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[292]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState = gTasks[taskID].tData7; if (gTasks[taskID].tLearnMoveState == 5) @@ -1179,7 +1181,7 @@ static void Task_TradeEvolutionScene(u8 taskID) case 1: case -1: sEvoCursorPos = 1; - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[292]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_EMPTYSTRING3 - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState = gTasks[taskID].tData8; break; @@ -1215,7 +1217,7 @@ static void Task_TradeEvolutionScene(u8 taskID) u16 move = GetMonData(mon, var + MON_DATA_MOVE1); if (IsHMMove2(move)) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[307]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_HMMOVESCANTBEFORGOTTEN - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState = 11; } @@ -1225,7 +1227,7 @@ static void Task_TradeEvolutionScene(u8 taskID) RemoveMonPPBonus(mon, var); SetMonMoveSlot(mon, gMoveToLearn, var); - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[207]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_123POOF - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState++; } @@ -1235,7 +1237,7 @@ static void Task_TradeEvolutionScene(u8 taskID) case 7: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[7]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_PKMNFORGOTMOVE - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tLearnMoveState++; } @@ -1243,20 +1245,20 @@ static void Task_TradeEvolutionScene(u8 taskID) case 8: if (!IsTextPrinterActive(0) && !IsSEPlaying()) { - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[208]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_ANDELLIPSIS - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tState = 18; } break; case 9: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[8]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_STOPLEARNINGMOVE - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tData7 = 10; gTasks[taskID].tData8 = 0; gTasks[taskID].tLearnMoveState = 3; break; case 10: - BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[9]); + BattleStringExpandPlaceholdersToDisplayedString(gBattleStringsTable[STRINGID_DIDNOTLEARNMOVE - BATTLESTRINGS_ID_ADDER]); sub_807F1A8(0, gDisplayedStringBattle, 1); gTasks[taskID].tState = 13; break; diff --git a/src/field_map_obj.c b/src/field_map_obj.c index dfdeb63a3..6a99890a4 100755 --- a/src/field_map_obj.c +++ b/src/field_map_obj.c @@ -4,7 +4,7 @@ #include "malloc.h" #include "sprite.h" #include "overworld.h" -#include "rng.h" +#include "random.h" #include "event_scripts.h" #include "berry.h" #include "palette.h" @@ -30,7 +30,7 @@ bool8 FieldObjectCB2_##name(struct MapObject *, struct Sprite *);\ void FieldObjectCB_##name(struct Sprite *sprite)\ {\ - FieldObjectStep(&gMapObjects[sprite->data0], sprite, FieldObjectCB2_##name);\ + FieldObjectStep(&gMapObjects[sprite->data[0]], sprite, FieldObjectCB2_##name);\ }\ bool8 FieldObjectCB2_##name(struct MapObject *mapObject, struct Sprite *sprite)\ {\ @@ -42,11 +42,11 @@ extern bool8 (*const (table)[])(struct MapObject *, struct Sprite *);\ bool8 FieldObjectCB2_##name(struct MapObject *, struct Sprite *);\ void FieldObjectCB_##name(struct Sprite *sprite)\ {\ - FieldObjectStep(&gMapObjects[sprite->data0], sprite, FieldObjectCB2_##name);\ + FieldObjectStep(&gMapObjects[sprite->data[0]], sprite, FieldObjectCB2_##name);\ }\ bool8 FieldObjectCB2_##name(struct MapObject *mapObject, struct Sprite *sprite)\ {\ - return (table)[sprite->data1](mapObject, sprite);\ + return (table)[sprite->data[1]](mapObject, sprite);\ } #define field_object_path(idx, table, sub, path, catch, coord)\ @@ -655,7 +655,7 @@ static u8 SpawnFieldObjectInternal(struct MapObjectTemplate *mapObjectTemplate, sprite->pos1.y += 16 + sprite->centerToCornerVecY; sprite->oam.paletteNum = paletteSlot; sprite->coordOffsetEnabled = TRUE; - sprite->data0 = mapObjectId; + sprite->data[0] = mapObjectId; mapObject->spriteId = spriteId; mapObject->mapobj_bit_12 = graphicsInfo->inanimate; if (!mapObject->mapobj_bit_12) @@ -813,8 +813,8 @@ u8 sprite_new(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction) sprite->oam.paletteNum -= 16; } sprite->coordOffsetEnabled = TRUE; - sprite->data0 = a1; - sprite->data1 = z; + sprite->data[0] = a1; + sprite->data[1] = z; if (graphicsInfo->paletteSlot == 10) { npc_load_two_palettes__and_record(graphicsInfo->paletteTag1, graphicsInfo->paletteSlot); @@ -1003,7 +1003,7 @@ static void sub_808E1B8(u8 mapObjectId, s16 x, s16 y) } sprite->oam.paletteNum = paletteSlot; sprite->coordOffsetEnabled = TRUE; - sprite->data0 = mapObjectId; + sprite->data[0] = mapObjectId; mapObject->spriteId = spriteId; if (!mapObject->mapobj_bit_12 && mapObject->animPattern != 0x0b) { @@ -1463,7 +1463,7 @@ u8 AddCameraObject(u8 linkedSpriteId) spriteId = CreateSprite(&gUnknown_084975D4, 0, 0, 4); gSprites[spriteId].invisible = TRUE; - gSprites[spriteId].data0 = linkedSpriteId; + gSprites[spriteId].data[0] = linkedSpriteId; return spriteId; } @@ -1472,15 +1472,15 @@ void ObjectCB_CameraObject(struct Sprite *sprite) void (*callbacks[ARRAY_COUNT(gUnknown_084975EC)])(struct Sprite *); memcpy(callbacks, gUnknown_084975EC, sizeof gUnknown_084975EC); - callbacks[sprite->data1](sprite); + callbacks[sprite->data[1]](sprite); } /*static*/ void CameraObject_0(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->data0].pos1.x; - sprite->pos1.y = gSprites[sprite->data0].pos1.y; + sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; + sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; sprite->invisible = TRUE; - sprite->data1 = 1; + sprite->data[1] = 1; CameraObject_1(sprite); } @@ -1489,20 +1489,20 @@ void ObjectCB_CameraObject(struct Sprite *sprite) s16 x; s16 y; - y = gSprites[sprite->data0].pos1.y; - x = gSprites[sprite->data0].pos1.x; - sprite->data2 = x - sprite->pos1.x; - sprite->data3 = y - sprite->pos1.y; + y = gSprites[sprite->data[0]].pos1.y; + x = gSprites[sprite->data[0]].pos1.x; + sprite->data[2] = x - sprite->pos1.x; + sprite->data[3] = y - sprite->pos1.y; sprite->pos1.x = x; sprite->pos1.y = y; } /*static*/ void CameraObject_2(struct Sprite *sprite) { - sprite->pos1.x = gSprites[sprite->data0].pos1.x; - sprite->pos1.y = gSprites[sprite->data0].pos1.y; - sprite->data2 = 0; - sprite->data3 = 0; + sprite->pos1.x = gSprites[sprite->data[0]].pos1.x; + sprite->pos1.y = gSprites[sprite->data[0]].pos1.y; + sprite->data[2] = 0; + sprite->data[3] = 0; } static struct Sprite *FindCameraObject(void) @@ -1526,7 +1526,7 @@ void CameraObjectReset1(void) cameraObject = FindCameraObject(); if (cameraObject != NULL) { - cameraObject->data1 = 0; + cameraObject->data[1] = 0; cameraObject->callback(cameraObject); } } @@ -1538,7 +1538,7 @@ void CameraObjectSetFollowedObjectId(u8 objectId) cameraObject = FindCameraObject(); if (cameraObject != NULL) { - cameraObject->data0 = objectId; + cameraObject->data[0] = objectId; CameraObjectReset1(); } } @@ -1552,12 +1552,12 @@ u8 CameraObjectGetFollowedObjectId(void) { return MAX_SPRITES; } - return cameraObject->data0; + return cameraObject->data[0]; } void CameraObjectReset2(void) { - FindCameraObject()->data1 = 2; + FindCameraObject()->data[1] = 2; } u8 CopySprite(struct Sprite *sprite, s16 x, s16 y, u8 subpriority) @@ -1818,14 +1818,14 @@ field_object_step(GoRandomDirections, gUnknown_0850D6F4) bool8 sub_808F44C(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_808F460(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -1836,7 +1836,7 @@ bool8 sub_808F48C(struct MapObject *mapObject, struct Sprite *sprite) return FALSE; } SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); - sprite->data1 = 3; + sprite->data[1] = 3; return TRUE; } @@ -1844,7 +1844,7 @@ bool8 sub_808F4C8(struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -1858,10 +1858,10 @@ bool8 sub_808F4E8(struct MapObject *mapObject, struct Sprite *sprite) memcpy(directions, gUnknown_0850D710, sizeof directions); chosenDirection = directions[Random() & 0x03]; FieldObjectSetDirection(mapObject, chosenDirection); - sprite->data1 = 5; + sprite->data[1] = 5; if (npc_block_way__next_tile(mapObject, chosenDirection)) { - sprite->data1 = 1; + sprite->data[1] = 1; } return TRUE; } @@ -1870,7 +1870,7 @@ bool8 sub_808F534(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetGoSpeed0AnimId(mapObject->placeholder18)); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 6; + sprite->data[1] = 6; return TRUE; } @@ -1879,7 +1879,7 @@ bool8 sub_808F564(struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -2140,14 +2140,14 @@ field_object_step(LookRandomDirections, gUnknown_0850D740) bool8 sub_808F988(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_808F99C(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2157,7 +2157,7 @@ bool8 sub_808F9C8(struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2166,7 +2166,7 @@ bool8 sub_808FA0C(struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2184,7 +2184,7 @@ bool8 sub_808FA3C(struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x03]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2193,14 +2193,14 @@ field_object_step(RandomlyGoNorthOrSouth, gUnknown_0850D754) bool8 sub_808FAC8(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_808FADC(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2211,7 +2211,7 @@ bool8 sub_808FB08(struct MapObject *mapObject, struct Sprite *sprite) return FALSE; } SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); - sprite->data1 = 3; + sprite->data[1] = 3; return TRUE; } @@ -2219,7 +2219,7 @@ bool8 sub_808FB44(struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2233,10 +2233,10 @@ bool8 sub_808FB64(struct MapObject *mapObject, struct Sprite *sprite) memcpy(directions, gUnknown_0850D770, sizeof directions); direction = directions[Random() & 0x01]; FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 5; + sprite->data[1] = 5; if (npc_block_way__next_tile(mapObject, direction)) { - sprite->data1 = 1; + sprite->data[1] = 1; } return TRUE; } @@ -2245,7 +2245,7 @@ bool8 sub_808FBB0(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetGoSpeed0AnimId(mapObject->placeholder18)); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 6; + sprite->data[1] = 6; return TRUE; } @@ -2254,7 +2254,7 @@ bool8 sub_808FBE0(struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -2264,14 +2264,14 @@ field_object_step(RandomlyGoEastOrWest, gUnknown_0850D774) bool8 sub_808FC4C(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_808FC60(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2282,7 +2282,7 @@ bool8 sub_808FC8C(struct MapObject *mapObject, struct Sprite *sprite) return FALSE; } SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); - sprite->data1 = 3; + sprite->data[1] = 3; return TRUE; } @@ -2290,7 +2290,7 @@ bool8 sub_808FCC8(struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2304,10 +2304,10 @@ bool8 sub_808FCE8(struct MapObject *mapObject, struct Sprite *sprite) memcpy(directions, gUnknown_0850D790, sizeof directions); direction = directions[Random() & 0x01]; FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 5; + sprite->data[1] = 5; if (npc_block_way__next_tile(mapObject, direction)) { - sprite->data1 = 1; + sprite->data[1] = 1; } return TRUE; } @@ -2316,7 +2316,7 @@ bool8 sub_808FD34(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetGoSpeed0AnimId(mapObject->placeholder18)); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 6; + sprite->data[1] = 6; return TRUE; } @@ -2325,7 +2325,7 @@ bool8 sub_808FD64(struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -2336,7 +2336,7 @@ bool8 sub_808FDD0(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2344,7 +2344,7 @@ bool8 sub_808FDFC(struct MapObject *mapObject, struct Sprite *sprite) { if (FieldObjectExecRegularAnim(mapObject, sprite)) { - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } return FALSE; @@ -2362,17 +2362,17 @@ void FieldObjectCB_BerryTree(struct Sprite *sprite) { struct MapObject *mapObject; - mapObject = &gMapObjects[sprite->data0]; - if (!(sprite->data7 & 0x0001)) + mapObject = &gMapObjects[sprite->data[0]]; + if (!(sprite->data[7] & 0x0001)) { get_berry_tree_graphics(mapObject, sprite); - sprite->data7 |= 0x0001; + sprite->data[7] |= 0x0001; } FieldObjectStep(mapObject, sprite, FieldObjectCB2_BerryTree); } static bool8 FieldObjectCB2_BerryTree(struct MapObject *mapObject, struct Sprite *sprite) { - return gUnknown_0850D7A0[sprite->data1](mapObject, sprite); + return gUnknown_0850D7A0[sprite->data[1]](mapObject, sprite); } bool8 do_berry_tree_growth_sparkle_1 (struct MapObject *mapObject, struct Sprite *sprite) @@ -2385,7 +2385,7 @@ bool8 do_berry_tree_growth_sparkle_1 (struct MapObject *mapObject, struct Sprite berryStage = GetStageByBerryTreeId(mapObject->trainerRange_berryTreeId); if (berryStage == 0) { - if (!(sprite->data7 & 0x0004) && sprite->animNum == 4) + if (!(sprite->data[7] & 0x0004) && sprite->animNum == 4) { gFieldEffectArguments[0] = mapObject->coords2.x; gFieldEffectArguments[1] = mapObject->coords2.y; @@ -2401,12 +2401,12 @@ bool8 do_berry_tree_growth_sparkle_1 (struct MapObject *mapObject, struct Sprite berryStage --; if (sprite->animNum != berryStage) { - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } get_berry_tree_graphics(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, 0x39); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2414,7 +2414,7 @@ bool8 sub_808FF48 (struct MapObject *mapObject, struct Sprite *sprite) { if (FieldObjectExecRegularAnim(mapObject, sprite)) { - sprite->data1 = 0; + sprite->data[1] = 0; return TRUE; } return FALSE; @@ -2423,9 +2423,9 @@ bool8 sub_808FF48 (struct MapObject *mapObject, struct Sprite *sprite) bool8 do_berry_tree_growth_sparkle_2 (struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 3; - sprite->data2 = 0; - sprite->data7 |= 0x0002; + sprite->data[1] = 3; + sprite->data[2] = 0; + sprite->data[7] |= 0x0002; gFieldEffectArguments[0] = mapObject->coords2.x; gFieldEffectArguments[1] = mapObject->coords2.y; gFieldEffectArguments[2] = sprite->subpriority - 1; @@ -2436,14 +2436,14 @@ bool8 do_berry_tree_growth_sparkle_2 (struct MapObject *mapObject, struct Sprite bool8 sub_808FFB4 (struct MapObject *mapObject, struct Sprite *sprite) { - sprite->data2 ++; - mapObject->mapobj_bit_13 = (sprite->data2 & 0x02) >> 1; + sprite->data[2] ++; + mapObject->mapobj_bit_13 = (sprite->data[2] & 0x02) >> 1; sprite->animPaused = TRUE; - if (sprite->data2 > 64) + if (sprite->data[2] > 64) { get_berry_tree_graphics(mapObject, sprite); - sprite->data1 = 4; - sprite->data2 = 0; + sprite->data[1] = 4; + sprite->data[2] = 0; return TRUE; } return FALSE; @@ -2451,13 +2451,13 @@ bool8 sub_808FFB4 (struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_8090004 (struct MapObject *mapObject, struct Sprite *sprite) { - sprite->data2 ++; - mapObject->mapobj_bit_13 = (sprite->data2 & 0x02) >> 1; + sprite->data[2] ++; + mapObject->mapobj_bit_13 = (sprite->data[2] & 0x02) >> 1; sprite->animPaused = TRUE; - if (sprite->data2 > 64) + if (sprite->data[2] > 64) { - sprite->data1 = 0; - sprite->data7 &= ~0x0002; + sprite->data[1] = 0; + sprite->data[7] &= ~0x0002; return TRUE; } return FALSE; @@ -2468,14 +2468,14 @@ field_object_step(RandomlyLookNorthOrSouth, gUnknown_0850D7B4) bool8 sub_8090094 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_80900A8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2485,7 +2485,7 @@ bool8 sub_80900D4 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2494,7 +2494,7 @@ bool8 sub_8090118 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2512,7 +2512,7 @@ bool8 sub_8090148 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2521,14 +2521,14 @@ field_object_step(RandomlyLookEastOrWest, gUnknown_0850D7C8) bool8 sub_80901D4 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_80901E8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2538,7 +2538,7 @@ bool8 sub_8090214 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6DC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2547,7 +2547,7 @@ bool8 sub_8090258 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2565,7 +2565,7 @@ bool8 sub_8090288 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2574,14 +2574,14 @@ field_object_step(RandomlyLookNorthOrWest, gUnknown_0850D7DC) bool8 sub_8090314 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090328 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2591,7 +2591,7 @@ bool8 sub_8090354 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2600,7 +2600,7 @@ bool8 sub_8090398 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2618,7 +2618,7 @@ bool8 sub_80903C8 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2627,14 +2627,14 @@ field_object_step(RandomlyLookNorthOrEast, gUnknown_0850D7F4) bool8 sub_8090454 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090468 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2644,7 +2644,7 @@ bool8 sub_8090494 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2653,7 +2653,7 @@ bool8 sub_80904D8 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2671,7 +2671,7 @@ bool8 sub_8090508 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2680,14 +2680,14 @@ field_object_step(RandomlyLookSouthOrWest, gUnknown_0850D80C) bool8 sub_8090594 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_80905A8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2697,7 +2697,7 @@ bool8 sub_80905D4 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2706,7 +2706,7 @@ bool8 sub_8090618 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2724,7 +2724,7 @@ bool8 sub_8090648 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2733,14 +2733,14 @@ field_object_step(RandomlyLookSouthOrEast, gUnknown_0850D824) bool8 sub_80906D4 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_80906E8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2750,7 +2750,7 @@ bool8 sub_8090714 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2759,7 +2759,7 @@ bool8 sub_8090758 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2777,7 +2777,7 @@ bool8 sub_8090788 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x01]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2786,14 +2786,14 @@ field_object_step(RandomlyLookNorthOrSouthOrWest, gUnknown_0850D83C) bool8 sub_8090814 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090828 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2803,7 +2803,7 @@ bool8 sub_8090854 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2812,7 +2812,7 @@ bool8 sub_8090898 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2830,7 +2830,7 @@ bool8 sub_80908C8 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x03]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2839,14 +2839,14 @@ field_object_step(RandomlyLookNorthOrSouthOrEast, gUnknown_0850D854) bool8 sub_8090954 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090968 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2856,7 +2856,7 @@ bool8 sub_8090994 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2865,7 +2865,7 @@ bool8 sub_80909D8 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2883,7 +2883,7 @@ bool8 sub_8090A08 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x03]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2892,14 +2892,14 @@ field_object_step(RandomlyLookNorthOrEastOrWest, gUnknown_0850D86C) bool8 sub_8090A94 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090AA8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2909,7 +2909,7 @@ bool8 sub_8090AD4 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2918,7 +2918,7 @@ bool8 sub_8090B18 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2936,7 +2936,7 @@ bool8 sub_8090B48 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x03]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2945,14 +2945,14 @@ field_object_step(RandomlyLookSouthOrEastOrWest, gUnknown_0850D884) bool8 sub_8090BD4 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_8090BE8 (struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -2962,7 +2962,7 @@ bool8 sub_8090C14 (struct MapObject *mapObject, struct Sprite *sprite) { SetFieldObjectStepTimer(sprite, gUnknown_0850D6EC[Random() & 0x03]); mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -2971,7 +2971,7 @@ bool8 sub_8090C58 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 4; + sprite->data[1] = 4; return TRUE; } return FALSE; @@ -2989,7 +2989,7 @@ bool8 sub_8090C88 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[Random() & 0x03]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -2999,7 +2999,7 @@ bool8 sub_8090D14 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3008,7 +3008,7 @@ bool8 sub_8090D40 (struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { SetFieldObjectStepTimer(sprite, 48); - sprite->data1 = 2; + sprite->data[1] = 2; } return FALSE; } @@ -3017,7 +3017,7 @@ bool8 sub_8090D64 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -3034,7 +3034,7 @@ bool8 sub_8090D90 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[mapObject->mapobj_unk_18]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 0; + sprite->data[1] = 0; return TRUE; } @@ -3044,7 +3044,7 @@ bool8 sub_8090E18 (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3053,7 +3053,7 @@ bool8 sub_8090E44 (struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { SetFieldObjectStepTimer(sprite, 48); - sprite->data1 = 2; + sprite->data[1] = 2; } return FALSE; } @@ -3062,7 +3062,7 @@ bool8 sub_8090E68 (struct MapObject *mapObject, struct Sprite *sprite) { if (RunFieldObjectStepTimer(sprite) || FieldObjectIsTrainerAndCloseToPlayer(mapObject)) { - sprite->data1 = 3; + sprite->data[1] = 3; } return FALSE; } @@ -3079,7 +3079,7 @@ bool8 sub_8090E94 (struct MapObject *mapObject, struct Sprite *sprite) direction = directions[mapObject->mapobj_unk_18]; } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 0; + sprite->data[1] = 0; return TRUE; } @@ -3088,7 +3088,7 @@ field_object_step(AlternatelyGoInOppositeDirections, gUnknown_0850D8CC) bool8 sub_8090F1C (struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3102,7 +3102,7 @@ bool8 sub_8090F30 (struct MapObject *mapObject, struct Sprite *sprite) direction = GetOppositeDirection(direction); } FieldObjectSetDirection(mapObject, direction); - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3131,7 +3131,7 @@ bool8 sub_8090F68 (struct MapObject *mapObject, struct Sprite *sprite) } FieldObjectSetRegularAnim(mapObject, sprite, animId); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 3; + sprite->data[1] = 3; return TRUE; } @@ -3140,7 +3140,7 @@ bool8 sub_8091020 (struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -3148,7 +3148,7 @@ bool8 sub_8091020 (struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_8091048(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3177,7 +3177,7 @@ bool8 MoveFieldObjectInNextDirectionInSequence(struct MapObject *mapObject, stru } FieldObjectSetRegularAnim(mapObject, sprite, animId); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3186,7 +3186,7 @@ bool8 sub_8091110(struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -3225,7 +3225,7 @@ bool8 mss_npc_reset_oampriv3_1_unk2_unk3(struct MapObject *mapObject, struct Spr { mapObject->mapobj_unk_21 = player_get_direction_lower_nybble(); } - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3243,7 +3243,7 @@ bool8 sub_8091F20(struct MapObject *mapObject, struct Sprite *sprite) if (FieldObjectExecRegularAnim(mapObject, sprite)) { mapObject->mapobj_bit_1 = FALSE; - sprite->data1 = 1; + sprite->data[1] = 1; } return FALSE; } @@ -3257,7 +3257,7 @@ bool8 sub_8091F4C(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD { FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(state_to_direction(gUnknown_085055CD[mapObject->animPattern], mapObject->mapobj_unk_21, playerDirection))); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3278,7 +3278,7 @@ bool8 sub_8091F94(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectMoveDestCoords(mapObject, direction, &x, &y); FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } } @@ -3293,7 +3293,7 @@ bool8 sub_8091F94(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3312,7 +3312,7 @@ bool8 sub_80920A4(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3331,7 +3331,7 @@ bool8 sub_809215C(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3350,7 +3350,7 @@ bool8 sub_8092214(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3362,7 +3362,7 @@ bool8 cph_IM_DIFFERENT(struct MapObject *mapObject, struct Sprite *sprite, u8 pl direction = state_to_direction(gUnknown_085055CD[mapObject->animPattern], mapObject->mapobj_unk_21, direction); FieldObjectSetRegularAnim(mapObject, sprite, sub_80934BC(direction)); mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3381,7 +3381,7 @@ bool8 sub_8092314(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3402,7 +3402,7 @@ bool8 oac_hopping(struct MapObject *mapObject, struct Sprite *sprite, u8 playerD FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(direction)); } mapObject->mapobj_bit_1 = TRUE; - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } @@ -3423,15 +3423,15 @@ void FieldObjectCB_TreeDisguise(struct Sprite *sprite) { struct MapObject *mapObject; - mapObject = &gMapObjects[sprite->data0]; - if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && !sprite->data7)) + mapObject = &gMapObjects[sprite->data[0]]; + if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && !sprite->data[7])) { FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]); mapObject->mapobj_unk_1A = FieldEffectStart(FLDEFF_TREE_DISGUISE); mapObject->mapobj_unk_21 = 1; - sprite->data7 ++; + sprite->data[7] ++; } - FieldObjectStep(&gMapObjects[sprite->data0], sprite, sub_80925AC); + FieldObjectStep(&gMapObjects[sprite->data[0]], sprite, sub_80925AC); } bool8 sub_80925AC(struct MapObject *mapObject, struct Sprite *sprite) @@ -3444,15 +3444,15 @@ void FieldObjectCB_MountainDisguise(struct Sprite *sprite) { struct MapObject *mapObject; - mapObject = &gMapObjects[sprite->data0]; - if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && !sprite->data7)) + mapObject = &gMapObjects[sprite->data[0]]; + if (mapObject->mapobj_unk_21 == 0 || (mapObject->mapobj_unk_21 == 1 && !sprite->data[7])) { FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]); mapObject->mapobj_unk_1A = FieldEffectStart(FLDEFF_MOUNTAIN_DISGUISE); mapObject->mapobj_unk_21 = 1; - sprite->data7 ++; + sprite->data[7] ++; } - FieldObjectStep(&gMapObjects[sprite->data0], sprite, sub_80925AC); + FieldObjectStep(&gMapObjects[sprite->data[0]], sprite, sub_80925AC); } extern bool8 (*const gUnknown_0850DA9C[])(struct MapObject *, struct Sprite *); @@ -3460,19 +3460,19 @@ bool8 sub_809268C(struct MapObject *, struct Sprite *); void FieldObjectCB_Hidden1(struct Sprite *sprite) { - if (!sprite->data7) + if (!sprite->data[7]) { - gMapObjects[sprite->data0].mapobj_bit_26 = TRUE; + gMapObjects[sprite->data[0]].mapobj_bit_26 = TRUE; sprite->subspriteMode = 2; sprite->oam.priority = 3; - sprite->data7 ++; + sprite->data[7] ++; } - FieldObjectStep(&gMapObjects[sprite->data0], sprite, sub_809268C); + FieldObjectStep(&gMapObjects[sprite->data[0]], sprite, sub_809268C); } bool8 sub_809268C(struct MapObject *mapObject, struct Sprite *sprite) { - return gUnknown_0850DA9C[sprite->data1](mapObject, sprite); + return gUnknown_0850DA9C[sprite->data[1]](mapObject, sprite); } bool8 sub_80926AC (struct MapObject *mapObject, struct Sprite *sprite) @@ -3484,7 +3484,7 @@ bool8 sub_80926B8 (struct MapObject *mapObject, struct Sprite *sprite) { if (FieldObjectExecRegularAnim(mapObject, sprite)) { - sprite->data1 = 0; + sprite->data[1] = 0; } return FALSE; } @@ -3495,7 +3495,7 @@ bool8 sub_8092718(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetStepInPlaceDelay16AnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3505,7 +3505,7 @@ bool8 sub_8092788(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetStepInPlaceDelay32AnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3515,7 +3515,7 @@ bool8 sub_80927F8(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetStepInPlaceDelay8AnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3525,7 +3525,7 @@ bool8 sub_8092868(struct MapObject *mapObject, struct Sprite *sprite) { npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetStepInPlaceDelay4AnimId(mapObject->mapobj_unk_18)); - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } @@ -3536,14 +3536,14 @@ bool8 sub_80928D8(struct MapObject *mapObject, struct Sprite *sprite) npc_reset(mapObject, sprite); FieldObjectSetRegularAnim(mapObject, sprite, GetFaceDirectionAnimId(mapObject->mapobj_unk_18)); mapObject->mapobj_bit_13 = TRUE; - sprite->data1 = 1; + sprite->data[1] = 1; return TRUE; } bool8 sub_809290C(struct MapObject *mapObject, struct Sprite *sprite) { if (FieldObjectExecRegularAnim(mapObject, sprite)) { - sprite->data1 = 2; + sprite->data[1] = 2; return TRUE; } return FALSE; @@ -3561,7 +3561,7 @@ void npc_reset(struct MapObject *mapObject, struct Sprite *sprite) mapObject->mapobj_bit_6 = FALSE; mapObject->mapobj_bit_7 = FALSE; mapObject->mapobj_unk_1C = 0xFF; - sprite->data1 = 0; + sprite->data[1] = 0; } #define dirn2anim(name, table)\ @@ -3680,7 +3680,7 @@ void npc_set_running_behaviour_etc(struct MapObject *mapObject, u8 animPattern) mapObject->mapobj_unk_21 = 0; mapObject->animId = 0; gSprites[mapObject->spriteId].callback = gUnknown_08505438[animPattern]; - gSprites[mapObject->spriteId].data1 = 0; + gSprites[mapObject->spriteId].data[1] = 0; } dirn2anim(npc_running_behaviour_by_direction, gUnknown_0850DB53) @@ -3811,7 +3811,7 @@ bool8 sub_8092E9C(u8 localId, u8 mapNum, u8 mapGroup) { u8 mapObjectId; - if (!TryGetFieldObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &mapObjectId) && gSprites[gMapObjects[mapObjectId].spriteId].data7 & 0x02) + if (!TryGetFieldObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &mapObjectId) && gSprites[gMapObjects[mapObjectId].spriteId].data[7] & 0x02) { return TRUE; } @@ -3824,7 +3824,7 @@ void sub_8092EF0(u8 localId, u8 mapNum, u8 mapGroup) if (!TryGetFieldObjectIdByLocalIdAndMap(localId, mapNum, mapGroup, &mapObjectId)) { - gSprites[gMapObjects[mapObjectId].spriteId].data7 |= 0x04; + gSprites[gMapObjects[mapObjectId].spriteId].data[7] |= 0x04; } } @@ -3975,7 +3975,7 @@ bool8 FieldObjectSetSpecialAnim(struct MapObject *mapObject, u8 specialAnimId) mapObject->mapobj_unk_1C = specialAnimId; mapObject->mapobj_bit_6 = TRUE; mapObject->mapobj_bit_7 = FALSE; - gSprites[mapObject->spriteId].data2 = 0; + gSprites[mapObject->spriteId].data[2] = 0; return FALSE; } @@ -3998,8 +3998,8 @@ void FieldObjectClearAnim(struct MapObject *mapObject) mapObject->mapobj_unk_1C = 0xFF; mapObject->mapobj_bit_6 = FALSE; mapObject->mapobj_bit_7 = FALSE; - gSprites[mapObject->spriteId].data1 = 0; - gSprites[mapObject->spriteId].data2 = 0; + gSprites[mapObject->spriteId].data[1] = 0; + gSprites[mapObject->spriteId].data[2] = 0; } u8 FieldObjectCheckIfSpecialAnimFinishedOrInactive(struct MapObject *mapObject) @@ -4137,7 +4137,7 @@ static u32 state_to_direction(u8 a0, u32 a1, u32 a2) static void FieldObjectExecSpecialAnim(struct MapObject *mapObject, struct Sprite *sprite) { - if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data2](mapObject, sprite)) + if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data[2]](mapObject, sprite)) { mapObject->mapobj_bit_7 = TRUE; } @@ -4145,10 +4145,10 @@ static void FieldObjectExecSpecialAnim(struct MapObject *mapObject, struct Sprit bool8 FieldObjectExecRegularAnim(struct MapObject *mapObject, struct Sprite *sprite) { - if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data2](mapObject, sprite)) + if (gUnknown_0850DC50[mapObject->mapobj_unk_1C][sprite->data[2]](mapObject, sprite)) { mapObject->mapobj_unk_1C = 0xFF; - sprite->data2 = 0; + sprite->data[2] = 0; return TRUE; } return FALSE; @@ -4157,7 +4157,7 @@ bool8 FieldObjectExecRegularAnim(struct MapObject *mapObject, struct Sprite *spr void FieldObjectSetRegularAnim(struct MapObject *mapObject, struct Sprite *sprite, u8 animId) { mapObject->mapobj_unk_1C = animId; - sprite->data2 = 0; + sprite->data[2] = 0; } // file boundary? @@ -4168,7 +4168,7 @@ void an_look_any(struct MapObject *mapObject, struct Sprite *sprite, u8 directio npc_coords_shift_still(mapObject); obj_npc_animation_step(mapObject, sprite, get_go_image_anim_num(mapObject->mapobj_unk_18)); sprite->animPaused = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; } bool8 sub_8093950(struct MapObject *mapObject, struct Sprite *sprite) @@ -4212,7 +4212,7 @@ void npc_apply_direction(struct MapObject *mapObject, struct Sprite *sprite, u8 sprite->animPaused = TRUE; } mapObject->mapobj_bit_2 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; } void do_go_anim(struct MapObject *mapObject, struct Sprite *sprite, u8 direction, u8 speed) @@ -4255,7 +4255,7 @@ void sub_8093AF0(struct MapObject *mapObject, struct Sprite *sprite, u8 directio sub_80976DC(sprite, direction); sprite->animPaused = FALSE; mapObject->mapobj_bit_2 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; } void sub_8093B60(struct MapObject *mapObject, struct Sprite *sprite, u8 direction) @@ -4287,7 +4287,7 @@ bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\ {\ if (fn2(mapObject, sprite))\ {\ - sprite->data2 = 2;\ + sprite->data[2] = 2;\ return TRUE;\ }\ return FALSE;\ @@ -4323,7 +4323,7 @@ void sub_8093FC4(struct MapObject *mapObject, struct Sprite *sprite, u8 directio sub_8092F88(direction, &x, &y, displacements[speed], displacements[speed]); npc_coords_shift(mapObject, mapObject->coords2.x + x, mapObject->coords2.y + y); sub_809783C(sprite, direction, speed, a5); - sprite->data2 = 1; + sprite->data[2] = 1; sprite->animPaused = 0; mapObject->mapobj_bit_2 = 1; mapObject->mapobj_bit_4 = 1; @@ -4345,11 +4345,11 @@ u8 sub_80940C4(struct MapObject *mapObject, struct Sprite *sprite, u8 callback(s memcpy(displacements, gUnknown_0850DFC2, sizeof gUnknown_0850DFC2); result = callback(sprite); - if (result == 1 && displacements[sprite->data4] != 0) + if (result == 1 && displacements[sprite->data[4]] != 0) { x = 0; y = 0; - sub_8092F88(mapObject->placeholder18, &x, &y, displacements[sprite->data4], displacements[sprite->data4]); + sub_8092F88(mapObject->placeholder18, &x, &y, displacements[sprite->data[4]], displacements[sprite->data[4]]); npc_coords_shift(mapObject, mapObject->coords2.x + x, mapObject->coords2.y + y); mapObject->mapobj_bit_2 = TRUE; mapObject->mapobj_bit_4 = TRUE; @@ -4418,7 +4418,7 @@ bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\ if (fn2(mapObject, sprite))\ {\ mapObject->mapobj_bit_22 = FALSE;\ - sprite->data2 = 2;\ + sprite->data[2] = 2;\ return TRUE;\ }\ return FALSE;\ @@ -4431,15 +4431,15 @@ maybe_shadow_1_macro(sub_8094338, maybe_shadow_1, sub_80941B0, DIR_EAST, 2, 0) void sub_8094390(struct Sprite *sprite, u16 duration) { - sprite->data2 = 1; - sprite->data3 = duration; + sprite->data[2] = 1; + sprite->data[3] = duration; } bool8 sub_8094398(struct MapObject *mapObject, struct Sprite *sprite) { - if (-- sprite->data3 == 0) + if (-- sprite->data[3] == 0) { - sprite->data2 = 2; + sprite->data[2] = 2; return TRUE; } return FALSE; @@ -4468,15 +4468,15 @@ void sub_8094554(struct MapObject *mapObject, struct Sprite *sprite, u8 directio FieldObjectSetDirection(mapObject, direction); npc_apply_anim_looping(mapObject, sprite, animNum); sprite->animPaused = FALSE; - sprite->data2 = 1; - sprite->data3 = duration; + sprite->data[2] = 1; + sprite->data[3] = duration; } bool8 sub_809459C(struct MapObject *mapObject, struct Sprite *sprite) { - if (-- sprite->data3 == 0) + if (-- sprite->data[3] == 0) { - sprite->data2 = 2; + sprite->data[2] = 2; sprite->animPaused = TRUE; return TRUE; } @@ -4485,7 +4485,7 @@ bool8 sub_809459C(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_80945C4(struct MapObject *mapObject, struct Sprite *sprite) { - if (sprite->data3 & 1) + if (sprite->data[3] & 1) { sprite->animDelayCounter ++; } @@ -4539,7 +4539,7 @@ void npc_set_direction_and_anim__an_proceed(struct MapObject *mapObject, struct { obj_anim_image_set_and_seek(sprite, animNum, 0); FieldObjectSetDirection(mapObject, direction); - sprite->data2 = 1; + sprite->data[2] = 1; } bool8 sub_8094DAC(struct MapObject *mapObject, struct Sprite *sprite) @@ -4552,7 +4552,7 @@ bool8 sub_8094DC4(struct MapObject *mapObject, struct Sprite *sprite) { if (sub_80979BC(sprite)) { - sprite->data2 = 2; + sprite->data[2] = 2; return TRUE; } return FALSE; @@ -4575,7 +4575,7 @@ bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\ {\ if (sub_80941C8(mapObject, sprite))\ {\ - sprite->data2 = 2;\ + sprite->data[2] = 2;\ mapObject->mapobj_bit_5 = FALSE;\ return TRUE;\ }\ @@ -4595,7 +4595,7 @@ bool8 sub_8094F38(struct MapObject *mapObject, struct Sprite *sprite) { an_look_any(mapObject, sprite, sub_8092AF8(mapObject->coords2.x, mapObject->coords2.y, gMapObjects[mapObjectId].coords2.x, gMapObjects[mapObjectId].coords2.y)); } - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4607,21 +4607,21 @@ bool8 sub_8094F94(struct MapObject *mapObject, struct Sprite *sprite) { an_look_any(mapObject, sprite, GetOppositeDirection(sub_8092AF8(mapObject->coords2.x, mapObject->coords2.y, gMapObjects[mapObjectId].coords2.x, gMapObjects[mapObjectId].coords2.y))); } - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_8094FF8(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_9 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_8095008(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_9 = FALSE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4653,42 +4653,42 @@ bool8 sub_8095450(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_8095460(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_25 = FALSE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_8095470(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_25 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_8095480(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_12 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_8095490(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_12 = GetFieldObjectGraphicsInfo(mapObject->graphicsId)->inanimate; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_80954BC(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_13 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_80954CC(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_13 = FALSE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4696,7 +4696,7 @@ bool8 do_exclamation_mark_bubble_1(struct MapObject *mapObject, struct Sprite *s { FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON_1); - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4704,7 +4704,7 @@ bool8 do_exclamation_mark_bubble_2(struct MapObject *mapObject, struct Sprite *s { FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_EXCLAMATION_MARK_ICON_2); - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4712,7 +4712,7 @@ bool8 do_heart_bubble(struct MapObject *mapObject, struct Sprite *sprite) { FieldObjectGetLocalIdAndMap(mapObject, (u8 *)&gFieldEffectArguments[0], (u8 *)&gFieldEffectArguments[1], (u8 *)&gFieldEffectArguments[2]); FieldEffectStart(FLDEFF_HEART_ICON); - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4725,11 +4725,11 @@ bool8 sub_8095548(struct MapObject *mapObject, struct Sprite *sprite) } if (mapObject->animPattern != 0x39 && mapObject->animPattern != 0x3A) { - sprite->data2 = 2; + sprite->data[2] = 2; return TRUE; } sub_8155D78(mapObject); - sprite->data2 = 1; + sprite->data[2] = 1; return sub_809558C(mapObject, sprite); } @@ -4737,7 +4737,7 @@ bool8 sub_809558C(struct MapObject *mapObject, struct Sprite *sprite) { if (sub_8155DA0(mapObject)) { - sprite->data2 = 2; + sprite->data[2] = 2; return TRUE; } return FALSE; @@ -4746,7 +4746,7 @@ bool8 sub_809558C(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_80955AC(struct MapObject *mapObject, struct Sprite *sprite) { obj_anim_image_set_and_seek(sprite, 1, 0); - sprite->data2 = 1; + sprite->data[2] = 1; return FALSE; } @@ -4755,7 +4755,7 @@ bool8 sub_80955C8(struct MapObject *mapObject, struct Sprite *sprite) if (sub_80979BC(sprite)) { SetFieldObjectStepTimer(sprite, 32); - sprite->data2 = 2; + sprite->data[2] = 2; } return FALSE; } @@ -4766,7 +4766,7 @@ bool8 sub_80955EC(struct MapObject *mapObject, struct Sprite *sprite) if (RunFieldObjectStepTimer(sprite)) { mapObject->mapobj_bit_13 = TRUE; - sprite->data2 = 3; + sprite->data[2] = 3; } return FALSE; } @@ -4774,7 +4774,7 @@ bool8 sub_80955EC(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_8095628(struct MapObject *mapObject, struct Sprite *sprite) { obj_anim_image_set_and_seek(sprite, 1, 0); - sprite->data2 = 1; + sprite->data[2] = 1; return FALSE; } @@ -4783,7 +4783,7 @@ bool8 sub_8095644(struct MapObject *mapObject, struct Sprite *sprite) if (sub_80979BC(sprite)) { SetFieldObjectStepTimer(sprite, 32); - sprite->data2 = 2; + sprite->data[2] = 2; } return FALSE; } @@ -4794,7 +4794,7 @@ bool8 sub_8095668(struct MapObject *mapObject, struct Sprite *sprite) if (RunFieldObjectStepTimer(sprite)) { mapObject->mapobj_bit_13 = TRUE; - sprite->data2 = 3; + sprite->data[2] = 3; } return FALSE; } @@ -4802,14 +4802,14 @@ bool8 sub_8095668(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_80956A4(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_26 = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } bool8 sub_80956B4(struct MapObject *mapObject, struct Sprite *sprite) { mapObject->mapobj_bit_26 = FALSE; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -4856,7 +4856,7 @@ bool8 name##_2(struct MapObject *mapObject, struct Sprite *sprite)\ if (fn2(mapObject, sprite))\ {\ sprite->affineAnimPaused = TRUE;\ - sprite->data2 = 2;\ + sprite->data[2] = 2;\ return TRUE;\ }\ return FALSE;\ @@ -4873,7 +4873,7 @@ static void sub_80958C0(struct MapObject *mapObject, struct Sprite *sprite, u8 d npc_coords_shift_still(mapObject); obj_npc_animation_step(mapObject, sprite, sub_80929FC(direction)); sprite->animPaused = TRUE; - sprite->data2 = 1; + sprite->data[2] = 1; } bool8 sub_8095900(struct MapObject *mapObject, struct Sprite *sprite) @@ -4941,7 +4941,7 @@ bool8 sub_8095B0C(struct MapObject *mapObject, struct Sprite *sprite) bool8 sub_8095B44(struct MapObject *mapObject, struct Sprite *sprite) { sub_8095AF0(mapObject, sprite); - sprite->data2 = 1; + sprite->data[2] = 1; return sub_8095B64(mapObject, sprite); } @@ -4949,7 +4949,7 @@ bool8 sub_8095B64(struct MapObject *mapObject, struct Sprite *sprite) { if (sub_8095B0C(mapObject, sprite)) { - sprite->data2 = 2; + sprite->data[2] = 2; return TRUE; } return FALSE; @@ -5017,7 +5017,7 @@ an_walk_any_2_macro(sub_8096428, sub_8096330, npc_obj_ministep_stop_on_arrival, bool8 sub_8096468(struct MapObject *mapObject, struct Sprite *sprite) { sub_8097FA4(mapObject); - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -5025,7 +5025,7 @@ bool8 sub_809647C(struct MapObject *mapObject, struct Sprite *sprite) { sub_8098044(mapObject->mapobj_unk_1B); sprite->pos2.y = 0; - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } @@ -5034,7 +5034,7 @@ bool8 sub_8096494(struct MapObject *mapObject, struct Sprite *sprite) if (sprite->pos2.y == 0) { sub_8098044(mapObject->mapobj_unk_1B); - sprite->data2 = 1; + sprite->data[2] = 1; return TRUE; } return FALSE; diff --git a/src/field_poison.c b/src/field_poison.c new file mode 100644 index 000000000..b83788210 --- /dev/null +++ b/src/field_poison.c @@ -0,0 +1,148 @@ +#include "global.h" +#include "string_util.h" +#include "party_menu.h" +#include "constants/species.h" +#include "task.h" +#include "field_message_box.h" +#include "strings.h" +#include "rom_818CFC8.h" +#include "battle_frontier_2.h" +#include "pokenav.h" +#include "event_data.h" +#include "script.h" +#include "battle.h" +#include "fldeff_80F9BCC.h" +#include "field_poison.h" + +static bool32 sub_80F9568(struct Pokemon *pokemon) +{ + u16 species = GetMonData(pokemon, MON_DATA_SPECIES2); + if (species == SPECIES_NONE || species == SPECIES_EGG) + { + return FALSE; + } + return TRUE; +} + +static bool32 sub_80F958C(void) +{ + int i; + struct Pokemon *pokemon; + + for (pokemon = gPlayerParty, i = 0; i < PARTY_SIZE; i++, pokemon++) + { + if (sub_80F9568(pokemon) && GetMonData(pokemon, MON_DATA_HP) != 0) + { + return FALSE; + } + } + return TRUE; +} + +static void sub_80F95C0(u8 partyIdx) +{ + struct Pokemon *pokemon = gPlayerParty + partyIdx; + unsigned int status = STATUS_NONE; + AdjustFriendship(pokemon, 0x07); + SetMonData(pokemon, MON_DATA_STATUS, &status); + GetMonData(pokemon, MON_DATA_NICKNAME, gStringVar1); + StringGetEnd10(gStringVar1); +} + +static bool32 sub_80F960C(u8 partyIdx) +{ + struct Pokemon *pokemon = gPlayerParty + partyIdx; + if (sub_80F9568(pokemon) && GetMonData(pokemon, MON_DATA_HP) == 0 && pokemon_ailments_get_primary(GetMonData(pokemon, MON_DATA_STATUS)) == AILMENT_PSN) + { + return TRUE; + } + return FALSE; +} + +static void sub_80F9654(u8 taskId) +{ + s16 *data = gTasks[taskId].data; + switch (data[0]) + { + case 0: + for (; data[1] < PARTY_SIZE; data[1]++) + { + if (sub_80F960C(data[1])) + { + sub_80F95C0(data[1]); + ShowFieldMessage(gText_PkmnFainted3); + data[0]++; + return; + } + } + data[0] = 2; + break; + case 1: + if (IsFieldMessageBoxHidden()) + { + data[0]--; + } + break; + case 2: + if (sub_80F958C()) + { + if (InBattlePyramid() | InBattlePike() || sub_81D5C18()) + { + gSpecialVar_Result = 2; + } + else + { + gSpecialVar_Result = 1; + } + } + else + { + gSpecialVar_Result = 0; + } + EnableBothScriptContexts(); + DestroyTask(taskId); + break; + } +} + +void sub_80F972C(void) +{ + CreateTask(sub_80F9654, 80); + ScriptContext1_Stop(); +} + +unsigned int overworld_poison(void) +{ + int i; + unsigned int hp; + struct Pokemon *pokemon = gPlayerParty; + unsigned int numPoisoned = 0; + unsigned int numFainted = 0; + for (i = 0; i < PARTY_SIZE; i++) + { + if (GetMonData(pokemon, MON_DATA_SANITY_BIT2) && pokemon_ailments_get_primary(GetMonData(pokemon, MON_DATA_STATUS)) == AILMENT_PSN) + { + hp = GetMonData(pokemon, MON_DATA_HP); + if (hp == 0 || --hp == 0) + { + numFainted++; + } + SetMonData(pokemon, MON_DATA_HP, &hp); + numPoisoned++; + } + pokemon++; + } + if (numFainted != 0 || numPoisoned != 0) + { + overworld_poison_effect(); + } + if (numFainted != 0) + { + return FLDPSN_FNT; + } + if (numPoisoned != 0) + { + return FLDPSN_PSN; + } + return FLDPSN_NONE; +} diff --git a/src/field_special_scene.c b/src/field_special_scene.c index f92f342eb..d46ddeaa6 100755 --- a/src/field_special_scene.c +++ b/src/field_special_scene.c @@ -2,11 +2,11 @@ #include "task.h" #include "sprite.h" #include "field_map_obj.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "palette.h" #include "script.h" -#include "vars.h" +#include "constants/vars.h" #include "event_data.h" #include "main.h" diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c index bc7177bd7..52babe346 100644 --- a/src/hall_of_fame.c +++ b/src/hall_of_fame.c @@ -9,21 +9,22 @@ #include "gpu_regs.h" #include "main.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "decompress.h" #include "save.h" #include "window.h" #include "bg.h" -#include "species.h" -#include "game_stat.h" +#include "constants/species.h" +#include "constants/game_stat.h" #include "blend_palette.h" #include "string_util.h" #include "m4a.h" #include "international_string_util.h" #include "unknown_task.h" #include "trig.h" -#include "rng.h" +#include "random.h" #include "event_data.h" +#include "overworld.h" struct HallofFameMon { @@ -57,6 +58,7 @@ extern struct MusicPlayerInfo gMPlay_BGM; extern MainCallback gGameContinueCallback; extern u32 gDamagedSaveSectors; extern u8 gReservedSpritePaletteCount; +extern const u8 gSpeciesNames[][11]; #define HALL_OF_FAME_MAX_TEAMS 50 @@ -580,9 +582,9 @@ static void Task_Hof_SetMonDisplayTask(u8 taskId) gTasks[taskId].func = Task_Hof_DisplayMon; } -#define tDestinationX data1 -#define tDestinationY data2 -#define tSpecies data7 +#define tDestinationX data[1] +#define tDestinationY data[2] +#define tSpecies data[7] static void Task_Hof_DisplayMon(u8 taskId) { @@ -613,7 +615,7 @@ static void Task_Hof_DisplayMon(u8 taskId) spriteId = sub_818D3E4(currMon->species, currMon->tid, currMon->personality, 1, xPos, yPos, currMonId, 0xFFFF); gSprites[spriteId].tDestinationX = field4; gSprites[spriteId].tDestinationY = field6; - gSprites[spriteId].data0 = 0; + gSprites[spriteId].data[0] = 0; gSprites[spriteId].tSpecies = currMon->species; gSprites[spriteId].callback = SpriteCB_GetOnScreenAndAnimate; gTasks[taskId].tMonSpriteId(currMonId) = spriteId; @@ -1404,13 +1406,13 @@ static void sub_81751A4(struct Sprite* sprite) u8 tableID; sprite->pos2.y++; - sprite->pos2.y += sprite->data1; + sprite->pos2.y += sprite->data[1]; - tableID = sprite->data0; + tableID = sprite->data[0]; rand = (Random() % 4) + 8; sprite->pos2.x = rand * gSineTable[tableID] / 256; - sprite->data0 += 4; + sprite->data[0] += 4; } } @@ -1428,9 +1430,9 @@ static bool8 sub_81751FC(void) StartSpriteAnim(sprite, Random() % 17); if (Random() & 3) - sprite->data1 = 0; + sprite->data[1] = 0; else - sprite->data1 = 1; + sprite->data[1] = 1; return FALSE; } diff --git a/src/heal_location.c b/src/heal_location.c index efc534170..aa90fe1ae 100644 --- a/src/heal_location.c +++ b/src/heal_location.c @@ -1,10 +1,10 @@ // Includes #include "global.h" -#include "map_constants.h" +#include "constants/maps.h" #include "heal_location.h" -#define HEAL_LOCATION(map, x, y) {MAP_GROUP_##map, MAP_ID_##map, x, y} +#define HEAL_LOCATION(map, x, y) {MAP_GROUP(map), MAP_NUM(map), x, y} // Static type declarations diff --git a/src/item.c b/src/item.c index 5cf9edf6c..931027e25 100644 --- a/src/item.c +++ b/src/item.c @@ -1,6 +1,6 @@ #include "global.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "string_util.h" #include "text.h" #include "event_data.h" diff --git a/src/lilycove_lady.c b/src/lilycove_lady.c index 62171e475..95270974a 100644 --- a/src/lilycove_lady.c +++ b/src/lilycove_lady.c @@ -8,10 +8,10 @@ #include "rom6.h" #include "event_data.h" #include "script.h" -#include "rng.h" +#include "random.h" #include "string_util.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "item_menu.h" #include "text.h" #include "easy_chat.h" diff --git a/src/load_save.c b/src/load_save.c index 1d78bda50..2b40f2e92 100644 --- a/src/load_save.c +++ b/src/load_save.c @@ -3,7 +3,7 @@ #include "load_save.h" #include "main.h" #include "pokemon.h" -#include "rng.h" +#include "random.h" extern void* gUnknown_0203CF5C; diff --git a/src/lottery_corner.c b/src/lottery_corner.c index 211b78f19..2ded9c943 100644 --- a/src/lottery_corner.c +++ b/src/lottery_corner.c @@ -2,9 +2,9 @@ #include "lottery_corner.h" #include "event_data.h" #include "pokemon.h" -#include "items.h" -#include "rng.h" -#include "species.h" +#include "constants/items.h" +#include "random.h" +#include "constants/species.h" #include "string_util.h" #include "text.h" diff --git a/src/mail.c b/src/mail.c index dddc06feb..877035fb6 100644 --- a/src/mail.c +++ b/src/mail.c @@ -1,4 +1,5 @@ #include "global.h" +#include "constants/items.h" #include "main.h" #include "overworld.h" #include "task.h" @@ -14,7 +15,7 @@ #include "gpu_regs.h" #include "bg.h" #include "pokemon_icon.h" -#include "species.h" +#include "constants/species.h" #include "malloc.h" #include "easy_chat.h" #include "mail_data.h" diff --git a/src/main.c b/src/main.c index 665a4dd84..07ce07f1c 100644 --- a/src/main.c +++ b/src/main.c @@ -2,7 +2,7 @@ #include "main.h" #include "m4a.h" #include "rtc.h" -#include "rng.h" +#include "random.h" #include "dma3.h" #include "gba/flash_internal.h" #include "battle.h" diff --git a/src/new_game.c b/src/new_game.c index 75e80dc8e..12873fec9 100644 --- a/src/new_game.c +++ b/src/new_game.c @@ -1,6 +1,6 @@ #include "global.h" #include "new_game.h" -#include "rng.h" +#include "random.h" #include "pokemon.h" #include "roamer.h" #include "pokemon_size_record.h" diff --git a/src/rom4.c b/src/overworld.c index c538595f2..c538595f2 100644 --- a/src/rom4.c +++ b/src/overworld.c diff --git a/src/pokeball.c b/src/pokeball.c new file mode 100644 index 000000000..127ba8e9d --- /dev/null +++ b/src/pokeball.c @@ -0,0 +1,1282 @@ +#include "global.h" +#include "pokemon.h" +#include "sprite.h" +#include "pokeball.h" +#include "battle.h" +#include "battle_anim.h" +#include "task.h" +#include "sound.h" +#include "constants/songs.h" +#include "trig.h" +#include "main.h" +#include "m4a.h" +#include "decompress.h" +#include "constants/species.h" +#include "util.h" +#include "graphics.h" + +extern bool8 gDoingBattleAnim; +extern u8 gActiveBank; +extern u8 gBankTarget; +extern u16 gBattlePartyID[]; +extern u8 gBankSpriteIds[]; +extern u8 gHealthBoxesIds[]; +extern struct MusicPlayerInfo gMPlay_BGM; + +// this file's functions +static void Task_DoPokeballSendOutAnim(u8 taskId); +static void SpriteCB_TestBallThrow(struct Sprite *sprite); +static void SpriteCB_PlayerMonSendOut_1(struct Sprite *sprite); +static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite); +static void SpriteCB_OpponentMonSendOut(struct Sprite *sprite); +static void sub_80756D4(struct Sprite *sprite); +static void sub_80756E0(struct Sprite *sprite); +static void sub_807574C(struct Sprite *sprite); +static void sub_80757E4(struct Sprite *sprite); +static void sub_8075838(struct Sprite *sprite); +static void sub_8075930(struct Sprite *sprite); +static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite); +static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite); +static void sub_8075970(struct Sprite *sprite); +static void HandleBallAnimEnd(struct Sprite *sprite); +static void sub_8075FB4(struct Sprite *sprite); +static void sub_80760F8(struct Sprite *sprite); +static void sub_8076524(struct Sprite *sprite); +static void sub_80765E0(struct Sprite *sprite); +static void sub_80767D4(struct Sprite *sprite); +static void sub_807687C(struct Sprite *sprite); +static void sub_80768F0(struct Sprite *sprite); +static void sub_80769A8(struct Sprite *sprite); +static void sub_80769CC(struct Sprite *sprite); +static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite); +static u16 GetBankPokeballItemId(u8 bank); + +// rom const data + +#define GFX_TAG_POKEBALL 55000 +#define GFX_TAG_GREATBALL 55001 +#define GFX_TAG_SAFARIBALL 55002 +#define GFX_TAG_ULTRABALL 55003 +#define GFX_TAG_MASTERBALL 55004 +#define GFX_TAG_NETBALL 55005 +#define GFX_TAG_DIVEBALL 55006 +#define GFX_TAG_NESTBALL 55007 +#define GFX_TAG_REPEATBALL 55008 +#define GFX_TAG_TIMERBALL 55009 +#define GFX_TAG_LUXURYBALL 55010 +#define GFX_TAG_PREMIERBALL 55011 + +const struct CompressedSpriteSheet gBallSpriteSheets[POKEBALL_COUNT] = +{ + {gInterfaceGfx_PokeBall, 384, GFX_TAG_POKEBALL}, + {gInterfaceGfx_GreatBall, 384, GFX_TAG_GREATBALL}, + {gInterfaceGfx_SafariBall, 384, GFX_TAG_SAFARIBALL}, + {gInterfaceGfx_UltraBall, 384, GFX_TAG_ULTRABALL}, + {gInterfaceGfx_MasterBall, 384, GFX_TAG_MASTERBALL}, + {gInterfaceGfx_NetBall, 384, GFX_TAG_NETBALL}, + {gInterfaceGfx_DiveBall, 384, GFX_TAG_DIVEBALL}, + {gInterfaceGfx_NestBall, 384, GFX_TAG_NESTBALL}, + {gInterfaceGfx_RepeatBall, 384, GFX_TAG_REPEATBALL}, + {gInterfaceGfx_TimerBall, 384, GFX_TAG_TIMERBALL}, + {gInterfaceGfx_LuxuryBall, 384, GFX_TAG_LUXURYBALL}, + {gInterfaceGfx_PremierBall, 384, GFX_TAG_PREMIERBALL}, +}; + +const struct CompressedSpritePalette gBallSpritePalettes[POKEBALL_COUNT] = +{ + {gInterfacePal_PokeBall, GFX_TAG_POKEBALL}, + {gInterfacePal_GreatBall, GFX_TAG_GREATBALL}, + {gInterfacePal_SafariBall, GFX_TAG_SAFARIBALL}, + {gInterfacePal_UltraBall, GFX_TAG_ULTRABALL}, + {gInterfacePal_MasterBall, GFX_TAG_MASTERBALL}, + {gInterfacePal_NetBall, GFX_TAG_NETBALL}, + {gInterfacePal_DiveBall, GFX_TAG_DIVEBALL}, + {gInterfacePal_NestBall, GFX_TAG_NESTBALL}, + {gInterfacePal_RepeatBall, GFX_TAG_REPEATBALL}, + {gInterfacePal_TimerBall, GFX_TAG_TIMERBALL}, + {gInterfacePal_LuxuryBall, GFX_TAG_LUXURYBALL}, + {gInterfacePal_PremierBall, GFX_TAG_PREMIERBALL}, +}; + +static const struct OamData sBallOamData = +{ + .y = 0, + .affineMode = 3, + .objMode = 0, + .mosaic = 0, + .bpp = 0, + .shape = 0, + .x = 0, + .matrixNum = 0, + .size = 1, + .tileNum = 0, + .priority = 2, + .paletteNum = 0, + .affineParam = 0, +}; + +static const union AnimCmd sBallAnimSeq3[] = +{ + ANIMCMD_FRAME(0, 5), + ANIMCMD_JUMP(0), +}; + +static const union AnimCmd sBallAnimSeq5[] = +{ + ANIMCMD_FRAME(4, 1), + ANIMCMD_JUMP(0), +}; + +static const union AnimCmd sBallAnimSeq4[] = +{ + ANIMCMD_FRAME(8, 5), + ANIMCMD_JUMP(0), +}; + +static const union AnimCmd sBallAnimSeq6[] = +{ + ANIMCMD_FRAME(12, 1), + ANIMCMD_JUMP(0), +}; + +static const union AnimCmd sBallAnimSeq0[] = +{ + ANIMCMD_FRAME(0, 1), + ANIMCMD_END, +}; + +static const union AnimCmd sBallAnimSeq1[] = +{ + ANIMCMD_FRAME(4, 5), + ANIMCMD_FRAME(8, 5), + ANIMCMD_END, +}; + +static const union AnimCmd sBallAnimSeq2[] = +{ + ANIMCMD_FRAME(4, 5), + ANIMCMD_FRAME(0, 5), + ANIMCMD_END, +}; + +static const union AnimCmd *const sBallAnimSequences[] = +{ + sBallAnimSeq0, + sBallAnimSeq1, + sBallAnimSeq2, + + // unused? + sBallAnimSeq3, + sBallAnimSeq4, + sBallAnimSeq5, + sBallAnimSeq6, +}; + +static const union AffineAnimCmd sBallAffineAnimSeq0[] = +{ + AFFINEANIMCMD_FRAME(0, 0, 0, 1), + AFFINEANIMCMD_JUMP(0), +}; + +static const union AffineAnimCmd sBallAffineAnimSeq1[] = +{ + AFFINEANIMCMD_FRAME(0, 0, -3, 1), + AFFINEANIMCMD_JUMP(0), +}; + +static const union AffineAnimCmd sBallAffineAnimSeq2[] = +{ + AFFINEANIMCMD_FRAME(0, 0, 3, 1), + AFFINEANIMCMD_JUMP(0), +}; + +static const union AffineAnimCmd sBallAffineAnimSeq3[] = +{ + AFFINEANIMCMD_FRAME(256, 256, 0, 0), + AFFINEANIMCMD_END, +}; + +static const union AffineAnimCmd sBallAffineAnimSeq4[] = +{ + AFFINEANIMCMD_FRAME(0, 0, 25, 1), + AFFINEANIMCMD_JUMP(0), +}; + +static const union AffineAnimCmd *const sBallAffineAnimSequences[] = +{ + sBallAffineAnimSeq0, + sBallAffineAnimSeq1, + sBallAffineAnimSeq2, + sBallAffineAnimSeq3, + sBallAffineAnimSeq4, +}; + +const struct SpriteTemplate gBallSpriteTemplates[POKEBALL_COUNT] = +{ + { + .tileTag = GFX_TAG_POKEBALL, + .paletteTag = GFX_TAG_POKEBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_GREATBALL, + .paletteTag = GFX_TAG_GREATBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_SAFARIBALL, + .paletteTag = GFX_TAG_SAFARIBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_ULTRABALL, + .paletteTag = GFX_TAG_ULTRABALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_MASTERBALL, + .paletteTag = GFX_TAG_MASTERBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_NETBALL, + .paletteTag = GFX_TAG_NETBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_DIVEBALL, + .paletteTag = GFX_TAG_DIVEBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_NESTBALL, + .paletteTag = GFX_TAG_NESTBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_REPEATBALL, + .paletteTag = GFX_TAG_REPEATBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_TIMERBALL, + .paletteTag = GFX_TAG_TIMERBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_LUXURYBALL, + .paletteTag = GFX_TAG_LUXURYBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, + { + .tileTag = GFX_TAG_PREMIERBALL, + .paletteTag = GFX_TAG_PREMIERBALL, + .oam = &sBallOamData, + .anims = sBallAnimSequences, + .images = NULL, + .affineAnims = sBallAffineAnimSequences, + .callback = SpriteCB_TestBallThrow, + }, +}; + +#define tFrames data[0] +#define tPan data[1] +#define tThrowId data[2] +#define tBank data[3] +#define tOpponentBank data[4] + +u8 DoPokeballSendOutAnimation(s16 pan, u8 kindOfThrow) +{ + u8 taskId; + + gDoingBattleAnim = TRUE; + gBattleSpritesDataPtr->healthBoxesData[gActiveBank].ballAnimActive = 1; + + taskId = CreateTask(Task_DoPokeballSendOutAnim, 5); + gTasks[taskId].tPan = pan; + gTasks[taskId].tThrowId = kindOfThrow; + gTasks[taskId].tBank = gActiveBank; + + return 0; +} + +#define sBank data[6] + +static void Task_DoPokeballSendOutAnim(u8 taskId) +{ + u16 throwCaseId; + u8 bank; + u16 itemId, ballId; + u8 ballSpriteId; + bool8 notSendOut = FALSE; + + if (gTasks[taskId].tFrames == 0) + { + gTasks[taskId].tFrames++; + return; + } + + throwCaseId = gTasks[taskId].tThrowId; + bank = gTasks[taskId].tBank; + + if (GetBankSide(bank) != SIDE_PLAYER) + itemId = GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_POKEBALL); + else + itemId = GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_POKEBALL); + + ballId = ItemIdToBallId(itemId); + LoadBallGfx(ballId); + ballSpriteId = CreateSprite(&gBallSpriteTemplates[ballId], 32, 80, 29); + gSprites[ballSpriteId].data[0] = 0x80; + gSprites[ballSpriteId].data[1] = 0; + gSprites[ballSpriteId].data[7] = throwCaseId; + + switch (throwCaseId) + { + case POKEBALL_PLAYER_SENDOUT: + gBankTarget = bank; + gSprites[ballSpriteId].pos1.x = 24; + gSprites[ballSpriteId].pos1.y = 68; + gSprites[ballSpriteId].callback = SpriteCB_PlayerMonSendOut_1; + break; + case POKEBALL_OPPONENT_SENDOUT: + gSprites[ballSpriteId].pos1.x = GetBankPosition(bank, BANK_X_POS); + gSprites[ballSpriteId].pos1.y = GetBankPosition(bank, BANK_Y_POS) + 24; + gBankTarget = bank; + gSprites[ballSpriteId].data[0] = 0; + gSprites[ballSpriteId].callback = SpriteCB_OpponentMonSendOut; + break; + default: + gBankTarget = GetBankByIdentity(IDENTITY_OPPONENT_MON1); + notSendOut = TRUE; + break; + } + + gSprites[ballSpriteId].sBank = gBankTarget; + if (!notSendOut) + { + DestroyTask(taskId); + return; + } + + // this will perform an unused ball throw animation + gSprites[ballSpriteId].data[0] = 0x22; + gSprites[ballSpriteId].data[2] = GetBankPosition(gBankTarget, BANK_X_POS); + gSprites[ballSpriteId].data[4] = GetBankPosition(gBankTarget, BANK_Y_POS) - 16; + gSprites[ballSpriteId].data[5] = -40; + sub_80A68D4(&gSprites[ballSpriteId]); + gSprites[ballSpriteId].oam.affineParam = taskId; + gTasks[taskId].tOpponentBank = gBankTarget; + gTasks[taskId].func = TaskDummy; + PlaySE(SE_NAGERU); +} + +static void SpriteCB_TestBallThrow(struct Sprite *sprite) +{ + if (AnimateBallThrow(sprite)) + { + u16 ballId; + u8 taskId = sprite->oam.affineParam; + u8 opponentBank = gTasks[taskId].tOpponentBank; + u8 noOfShakes = gTasks[taskId].tThrowId; + + StartSpriteAnim(sprite, 1); + sprite->affineAnimPaused = 1; + sprite->pos1.x += sprite->pos2.x; + sprite->pos1.y += sprite->pos2.y; + sprite->pos2.x = 0; + sprite->pos2.y = 0; + sprite->data[5] = 0; + ballId = ItemIdToBallId(GetBankPokeballItemId(opponentBank)); + LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); + sprite->data[0] = LaunchBallFadeMonTask(FALSE, opponentBank, 14, ballId); + sprite->sBank = opponentBank; + sprite->data[7] = noOfShakes; + DestroyTask(taskId); + sprite->callback = sub_80756D4; + } +} + +#undef tFrames +#undef tPan +#undef tThrowId +#undef tBank +#undef tOpponentBank + +static void sub_80756D4(struct Sprite *sprite) +{ + sprite->callback = sub_80756E0; +} + +static void sub_80756E0(struct Sprite *sprite) +{ + if (++sprite->data[5] == 10) + { + sprite->data[5] = 0; + sprite->callback = sub_807574C; + StartSpriteAffineAnim(&gSprites[gBankSpriteIds[sprite->sBank]], 2); + AnimateSprite(&gSprites[gBankSpriteIds[sprite->sBank]]); + gSprites[gBankSpriteIds[sprite->sBank]].data[1] = 0; + } +} + +static void sub_807574C(struct Sprite *sprite) +{ + sprite->data[5]++; + if (sprite->data[5] == 11) + PlaySE(SE_SUIKOMU); + if (gSprites[gBankSpriteIds[sprite->sBank]].affineAnimEnded) + { + StartSpriteAnim(sprite, 2); + gSprites[gBankSpriteIds[sprite->sBank]].invisible = TRUE; + sprite->data[5] = 0; + sprite->callback = sub_80757E4; + } + else + { + gSprites[gBankSpriteIds[sprite->sBank]].data[1] += 0x60; + gSprites[gBankSpriteIds[sprite->sBank]].pos2.y = -gSprites[gBankSpriteIds[sprite->sBank]].data[1] >> 8; + } +} + +static void sub_80757E4(struct Sprite *sprite) +{ + if (sprite->animEnded) + { + sprite->data[5]++; + if (sprite->data[5] == 1) + { + sprite->data[3] = 0; + sprite->data[4] = 32; + sprite->data[5] = 0; + sprite->pos1.y += Cos(0, 32); + sprite->pos2.y = -Cos(0, sprite->data[4]); + sprite->callback = sub_8075838; + } + } +} + +static void sub_8075838(struct Sprite *sprite) +{ + bool8 r5 = FALSE; + + switch (sprite->data[3] & 0xFF) + { + case 0: + sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); + sprite->data[5] += 4 + (sprite->data[3] >> 8); + if (sprite->data[5] >= 64) + { + sprite->data[4] -= 10; + sprite->data[3] += 0x101; + if (sprite->data[3] >> 8 == 4) + r5 = TRUE; + switch (sprite->data[3] >> 8) + { + case 1: + PlaySE(SE_KON); + break; + case 2: + PlaySE(SE_KON2); + break; + case 3: + PlaySE(SE_KON3); + break; + default: + PlaySE(SE_KON4); + break; + } + } + break; + case 1: + sprite->pos2.y = -Cos(sprite->data[5], sprite->data[4]); + sprite->data[5] -= 4 + (sprite->data[3] >> 8); + if (sprite->data[5] <= 0) + { + sprite->data[5] = 0; + sprite->data[3] &= 0xFF00; + } + break; + } + if (r5) + { + sprite->data[3] = 0; + sprite->pos1.y += Cos(64, 32); + sprite->pos2.y = 0; + if (sprite->data[7] == 0) + { + sprite->callback = SpriteCB_ReleaseMonFromBall; + } + else + { + sprite->callback = sub_8075930; + sprite->data[4] = 1; + sprite->data[5] = 0; + } + } +} + +static void sub_8075930(struct Sprite *sprite) +{ + sprite->data[3]++; + if (sprite->data[3] == 31) + { + sprite->data[3] = 0; + sprite->affineAnimPaused = TRUE; + StartSpriteAffineAnim(sprite, 1); + sprite->callback = sub_8075970; + PlaySE(SE_BOWA); + } +} + +static void sub_8075970(struct Sprite *sprite) +{ + switch (sprite->data[3] & 0xFF) + { + case 0: + case 2: + sprite->pos2.x += sprite->data[4]; + sprite->data[5] += sprite->data[4]; + sprite->affineAnimPaused = FALSE; + if (sprite->data[5] > 3 || sprite->data[5] < -3) + { + sprite->data[3]++; + sprite->data[5] = 0; + } + break; + case 1: + sprite->data[5]++; + if (sprite->data[5] == 1) + { + sprite->data[5] = 0; + sprite->data[4] = -sprite->data[4]; + sprite->data[3]++; + sprite->affineAnimPaused = FALSE; + if (sprite->data[4] < 0) + ChangeSpriteAffineAnim(sprite, 2); + else + ChangeSpriteAffineAnim(sprite, 1); + } + else + { + sprite->affineAnimPaused = TRUE; + } + break; + case 3: + sprite->data[3] += 0x100; + if (sprite->data[3] >> 8 == sprite->data[7]) + { + sprite->callback = SpriteCB_ReleaseMonFromBall; + } + else + { + if (sprite->data[7] == 4 && sprite->data[3] >> 8 == 3) + { + sprite->callback = sub_8075FB4; + sprite->affineAnimPaused = TRUE; + } + else + { + sprite->data[3]++; + sprite->affineAnimPaused = TRUE; + } + } + break; + case 4: + default: + sprite->data[5]++; + if (sprite->data[5] == 31) + { + sprite->data[5] = 0; + sprite->data[3] &= 0xFF00; + StartSpriteAffineAnim(sprite, 3); + if (sprite->data[4] < 0) + StartSpriteAffineAnim(sprite, 2); + else + StartSpriteAffineAnim(sprite, 1); + PlaySE(SE_BOWA); + } + break; + } +} + +#define tCryTaskSpecies data[0] +#define tCryTaskPan data[1] +#define tCryTaskWantedCry data[2] +#define tCryTaskBank data[3] +#define tCryTaskMonSpriteId data[4] +#define tCryTaskMonPtr1 data[5] +#define tCryTaskMonPtr2 data[6] +#define tCryTaskFrames data[10] +#define tCryTaskState data[15] + +static void Task_PlayCryWhenReleasedFromBall(u8 taskId) +{ + u8 wantedCry = gTasks[taskId].tCryTaskWantedCry; + s8 pan = gTasks[taskId].tCryTaskPan; + u16 species = gTasks[taskId].tCryTaskSpecies; + u8 bank = gTasks[taskId].tCryTaskBank; + u8 monSpriteId = gTasks[taskId].tCryTaskMonSpriteId; + struct Pokemon *mon = (void*)(u32)((gTasks[taskId].tCryTaskMonPtr1 << 0x10) | (u16)(gTasks[taskId].tCryTaskMonPtr2)); + + switch (gTasks[taskId].tCryTaskState) + { + case 0: + default: + if (gSprites[monSpriteId].affineAnimEnded) + gTasks[taskId].tCryTaskState = wantedCry + 1; + break; + case 1: + if (ShouldPlayNormalPokeCry(mon) == TRUE) + PlayCry3(species, pan, 0); + else + PlayCry3(species, pan, 11); + gBattleSpritesDataPtr->healthBoxesData[bank].field_1_x40 = 0; + DestroyTask(taskId); + break; + case 2: + StopCryAndClearCrySongs(); + gTasks[taskId].tCryTaskFrames = 3; + gTasks[taskId].tCryTaskState = 20; + break; + case 20: + if (gTasks[taskId].tCryTaskFrames == 0) + { + if (ShouldPlayNormalPokeCry(mon) == TRUE) + PlayCry4(species, pan, 1); + else + PlayCry4(species, pan, 12); + + gBattleSpritesDataPtr->healthBoxesData[bank].field_1_x40 = 0; + DestroyTask(taskId); + } + else + { + gTasks[taskId].tCryTaskFrames--; + } + break; + case 3: + gTasks[taskId].tCryTaskFrames = 6; + gTasks[taskId].tCryTaskState = 30; + break; + case 30: + if (gTasks[taskId].tCryTaskFrames != 0) + { + gTasks[taskId].tCryTaskFrames--; + break; + } + gTasks[taskId].tCryTaskState++; + // fall through + case 31: + if (!IsCryPlayingOrClearCrySongs()) + { + StopCryAndClearCrySongs(); + gTasks[taskId].tCryTaskFrames = 3; + gTasks[taskId].tCryTaskState++; + } + break; + case 32: + if (gTasks[taskId].tCryTaskFrames != 0) + { + gTasks[taskId].tCryTaskFrames--; + break; + } + if (ShouldPlayNormalPokeCry(mon) == TRUE) + PlayCry4(species, pan, 0); + else + PlayCry4(species, pan, 11); + + gBattleSpritesDataPtr->healthBoxesData[bank].field_1_x40 = 0; + DestroyTask(taskId); + break; + } +} + +static void SpriteCB_ReleaseMonFromBall(struct Sprite *sprite) +{ + u8 bank = sprite->sBank; + u32 ballId; + + StartSpriteAnim(sprite, 1); + ballId = ItemIdToBallId(GetBankPokeballItemId(bank)); + LaunchBallStarsTask(sprite->pos1.x, sprite->pos1.y - 5, 1, 0x1C, ballId); + sprite->data[0] = LaunchBallFadeMonTask(1, sprite->sBank, 14, ballId); + sprite->callback = HandleBallAnimEnd; + + if (gMain.inBattle) + { + struct Pokemon *mon; + u16 species; + s8 pan; + u16 wantedCryCase; + u8 taskId; + + if (GetBankSide(bank) != SIDE_PLAYER) + { + mon = &gEnemyParty[gBattlePartyID[bank]]; + pan = 25; + } + else + { + mon = &gPlayerParty[gBattlePartyID[bank]]; + pan = -25; + } + + species = GetMonData(mon, MON_DATA_SPECIES); + if ((bank == GetBankByIdentity(IDENTITY_PLAYER_MON1) || bank == GetBankByIdentity(IDENTITY_OPPONENT_MON1)) + && IsDoubleBattle() && gBattleSpritesDataPtr->animationData->field_9_x1) + { + if (gBattleTypeFlags & BATTLE_TYPE_MULTI && gBattleTypeFlags & BATTLE_TYPE_LINK) + { + if (IsBGMPlaying()) + m4aMPlayStop(&gMPlay_BGM); + } + else + { + m4aMPlayVolumeControl(&gMPlay_BGM, 0xFFFF, 128); + } + } + + if (!IsDoubleBattle() || !gBattleSpritesDataPtr->animationData->field_9_x1) + wantedCryCase = 0; + else if (bank == GetBankByIdentity(IDENTITY_PLAYER_MON1) || bank == GetBankByIdentity(IDENTITY_OPPONENT_MON1)) + wantedCryCase = 1; + else + wantedCryCase = 2; + + gBattleSpritesDataPtr->healthBoxesData[bank].field_1_x40 = 1; + + taskId = CreateTask(Task_PlayCryWhenReleasedFromBall, 3); + gTasks[taskId].tCryTaskSpecies = species; + gTasks[taskId].tCryTaskPan = pan; + gTasks[taskId].tCryTaskWantedCry = wantedCryCase; + gTasks[taskId].tCryTaskBank = bank; + gTasks[taskId].tCryTaskMonSpriteId = gBankSpriteIds[sprite->sBank]; + gTasks[taskId].tCryTaskMonPtr1 = (u32)(mon) >> 0x10; + gTasks[taskId].tCryTaskMonPtr2 = (u32)(mon); + gTasks[taskId].tCryTaskState = 0; + } + + StartSpriteAffineAnim(&gSprites[gBankSpriteIds[sprite->sBank]], 1); + + if (GetBankSide(sprite->sBank) == SIDE_OPPONENT) + gSprites[gBankSpriteIds[sprite->sBank]].callback = sub_8039B58; + else + gSprites[gBankSpriteIds[sprite->sBank]].callback = sub_8039E44; + + AnimateSprite(&gSprites[gBankSpriteIds[sprite->sBank]]); + gSprites[gBankSpriteIds[sprite->sBank]].data[1] = 0x1000; +} + +#undef tCryTaskSpecies +#undef tCryTaskPan +#undef tCryTaskWantedCry +#undef tCryTaskBank +#undef tCryTaskMonSpriteId +#undef tCryTaskMonPtr1 +#undef tCryTaskMonPtr2 +#undef tCryTaskFrames +#undef tCryTaskState + +static void sub_8075FB4(struct Sprite *sprite) +{ + sprite->animPaused = TRUE; + sprite->callback = sub_80760F8; + sprite->data[3] = 0; + sprite->data[4] = 0; + sprite->data[5] = 0; +} + +static void HandleBallAnimEnd(struct Sprite *sprite) +{ + bool8 affineAnimEnded = FALSE; + u8 bank = sprite->sBank; + + gSprites[gBankSpriteIds[bank]].invisible = FALSE; + if (sprite->animEnded) + sprite->invisible = TRUE; + if (gSprites[gBankSpriteIds[bank]].affineAnimEnded) + { + StartSpriteAffineAnim(&gSprites[gBankSpriteIds[bank]], 0); + affineAnimEnded = TRUE; + } + else + { + gSprites[gBankSpriteIds[bank]].data[1] -= 288; + gSprites[gBankSpriteIds[bank]].pos2.y = gSprites[gBankSpriteIds[bank]].data[1] >> 8; + } + if (sprite->animEnded && affineAnimEnded) + { + s32 i, doneBanks; + + gSprites[gBankSpriteIds[bank]].pos2.y = 0; + gDoingBattleAnim = FALSE; + gBattleSpritesDataPtr->healthBoxesData[bank].ballAnimActive = 0; + FreeSpriteOamMatrix(sprite); + DestroySprite(sprite); + + for (doneBanks = 0, i = 0; i < BATTLE_BANKS_COUNT; i++) + { + if (gBattleSpritesDataPtr->healthBoxesData[i].ballAnimActive == 0) + doneBanks++; + } + if (doneBanks == BATTLE_BANKS_COUNT) + { + for (i = 0; i < POKEBALL_COUNT; i++) + FreeBallGfx(i); + } + } +} + +static void sub_80760F8(struct Sprite *sprite) +{ + u8 bank = sprite->sBank; + + sprite->data[4]++; + if (sprite->data[4] == 40) + { + return; + } + else if (sprite->data[4] == 95) + { + gDoingBattleAnim = FALSE; + m4aMPlayAllStop(); + PlaySE(BGM_FANFA5); + } + else if (sprite->data[4] == 315) + { + FreeOamMatrix(gSprites[gBankSpriteIds[sprite->sBank]].oam.matrixNum); + DestroySprite(&gSprites[gBankSpriteIds[sprite->sBank]]); + DestroySpriteAndFreeResources(sprite); + if (gMain.inBattle) + gBattleSpritesDataPtr->healthBoxesData[bank].ballAnimActive = 0; + } +} + +static void SpriteCB_PlayerMonSendOut_1(struct Sprite *sprite) +{ + sprite->data[0] = 25; + sprite->data[2] = GetBankPosition(sprite->sBank, 2); + sprite->data[4] = GetBankPosition(sprite->sBank, 3) + 24; + sprite->data[5] = -30; + sprite->oam.affineParam = sprite->sBank; + sub_80A68D4(sprite); + sprite->callback = SpriteCB_PlayerMonSendOut_2; +} + +#define HIBYTE(x) (((x) >> 8) & 0xFF) + +static void SpriteCB_PlayerMonSendOut_2(struct Sprite *sprite) +{ + u32 r6; + u32 r7; + + if (HIBYTE(sprite->data[7]) >= 35 && HIBYTE(sprite->data[7]) < 80) + { + s16 r4; + + if ((sprite->oam.affineParam & 0xFF00) == 0) + { + r6 = sprite->data[1] & 1; + r7 = sprite->data[2] & 1; + sprite->data[1] = ((sprite->data[1] / 3) & ~1) | r6; + sprite->data[2] = ((sprite->data[2] / 3) & ~1) | r7; + StartSpriteAffineAnim(sprite, 4); + } + r4 = sprite->data[0]; + sub_80A6F3C(sprite); + sprite->data[7] += sprite->sBank / 3; + sprite->pos2.y += Sin(HIBYTE(sprite->data[7]), sprite->data[5]); + sprite->oam.affineParam += 0x100; + if ((sprite->oam.affineParam >> 8) % 3 != 0) + sprite->data[0] = r4; + else + sprite->data[0] = r4 - 1; + if (HIBYTE(sprite->data[7]) >= 80) + { + r6 = sprite->data[1] & 1; + r7 = sprite->data[2] & 1; + sprite->data[1] = ((sprite->data[1] * 3) & ~1) | r6; + sprite->data[2] = ((sprite->data[2] * 3) & ~1) | r7; + } + } + else + { + if (AnimateBallThrow(sprite)) + { + sprite->pos1.x += sprite->pos2.x; + sprite->pos1.y += sprite->pos2.y; + sprite->pos2.y = 0; + sprite->pos2.x = 0; + sprite->sBank = sprite->oam.affineParam & 0xFF; + sprite->data[0] = 0; + + if (IsDoubleBattle() && gBattleSpritesDataPtr->animationData->field_9_x1 + && sprite->sBank == GetBankByIdentity(IDENTITY_PLAYER_MON2)) + sprite->callback = SpriteCB_ReleaseMon2FromBall; + else + sprite->callback = SpriteCB_ReleaseMonFromBall; + + StartSpriteAffineAnim(sprite, 0); + } + } +} + +static void SpriteCB_ReleaseMon2FromBall(struct Sprite *sprite) +{ + if (sprite->data[0]++ > 24) + { + sprite->data[0] = 0; + sprite->callback = SpriteCB_ReleaseMonFromBall; + } +} + +static void SpriteCB_OpponentMonSendOut(struct Sprite *sprite) +{ + sprite->data[0]++; + if (sprite->data[0] > 15) + { + sprite->data[0] = 0; + if (IsDoubleBattle() && gBattleSpritesDataPtr->animationData->field_9_x1 + && sprite->sBank == GetBankByIdentity(IDENTITY_OPPONENT_MON2)) + sprite->callback = SpriteCB_ReleaseMon2FromBall; + else + sprite->callback = SpriteCB_ReleaseMonFromBall; + } +} + +#undef sBank + +static u8 LaunchBallStarsTaskForPokeball(u8 x, u8 y, u8 kindOfStars, u8 d) +{ + return LaunchBallStarsTask(x, y, kindOfStars, d, BALL_POKE); +} + +static u8 LaunchBallFadeMonTaskForPokeball(bool8 unFadeLater, u8 bank, u32 arg2) +{ + return LaunchBallFadeMonTask(unFadeLater, bank, arg2, BALL_POKE); +} + +void CreatePokeballSpriteToReleaseMon(u8 monSpriteId, u8 bank, u8 x, u8 y, u8 oamPriority, u8 subpriortiy, u8 g, u32 h, u16 species) +{ + u8 spriteId; + + LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[0]); + LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[0]); + spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subpriortiy); + + gSprites[spriteId].data[0] = monSpriteId; + gSprites[spriteId].data[5] = gSprites[monSpriteId].pos1.x; + gSprites[spriteId].data[6] = gSprites[monSpriteId].pos1.y; + + gSprites[monSpriteId].pos1.x = x; + gSprites[monSpriteId].pos1.y = y; + gSprites[monSpriteId].data[7] = species; + + gSprites[spriteId].data[1] = g; + gSprites[spriteId].data[2] = bank; + gSprites[spriteId].data[3] = h; + gSprites[spriteId].data[4] = h >> 0x10; + gSprites[spriteId].oam.priority = oamPriority; + gSprites[spriteId].callback = sub_8076524; + + gSprites[monSpriteId].invisible = TRUE; +} + +static void sub_8076524(struct Sprite *sprite) +{ + if (sprite->data[1] == 0) + { + u8 r5; + u8 r7 = sprite->data[0]; + u8 bank = sprite->data[2]; + u32 r4 = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + + if (sprite->subpriority != 0) + r5 = sprite->subpriority - 1; + else + r5 = 0; + + StartSpriteAnim(sprite, 1); + LaunchBallStarsTaskForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r5); + sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, bank, r4); + sprite->callback = sub_80765E0; + gSprites[r7].invisible = FALSE; + StartSpriteAffineAnim(&gSprites[r7], 1); + AnimateSprite(&gSprites[r7]); + gSprites[r7].data[1] = 0x1000; + sprite->data[7] = 0; + } + else + { + sprite->data[1]--; + } +} + +static void sub_80765E0(struct Sprite *sprite) +{ + bool8 r12 = FALSE; + bool8 r6 = FALSE; + u8 monSpriteId = sprite->data[0]; + u16 var1; + u16 var2; + + if (sprite->animEnded) + sprite->invisible = TRUE; + if (gSprites[monSpriteId].affineAnimEnded) + { + StartSpriteAffineAnim(&gSprites[monSpriteId], 0); + r12 = TRUE; + } + var1 = (sprite->data[5] - sprite->pos1.x) * sprite->data[7] / 128 + sprite->pos1.x; + var2 = (sprite->data[6] - sprite->pos1.y) * sprite->data[7] / 128 + sprite->pos1.y; + gSprites[monSpriteId].pos1.x = var1; + gSprites[monSpriteId].pos1.y = var2; + if (sprite->data[7] < 128) + { + s16 sine = -(gSineTable[(u8)sprite->data[7]] / 8); + + sprite->data[7] += 4; + gSprites[monSpriteId].pos2.x = sine; + gSprites[monSpriteId].pos2.y = sine; + } + else + { + gSprites[monSpriteId].pos1.x = sprite->data[5]; + gSprites[monSpriteId].pos1.y = sprite->data[6]; + gSprites[monSpriteId].pos2.x = 0; + gSprites[monSpriteId].pos2.y = 0; + r6 = TRUE; + } + if (sprite->animEnded && r12 && r6) + { + if (gSprites[monSpriteId].data[7] == SPECIES_EGG) + DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].data[7], TRUE, 0); + else + DoMonFrontSpriteAnimation(&gSprites[monSpriteId], gSprites[monSpriteId].data[7], FALSE, 0); + + DestroySpriteAndFreeResources(sprite); + } +} + +u8 sub_807671C(u8 a, u8 b, u8 x, u8 y, u8 oamPriority, u8 subPriority, u8 g, u32 h) +{ + u8 spriteId; + + LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[0]); + LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[0]); + spriteId = CreateSprite(&gBallSpriteTemplates[0], x, y, subPriority); + gSprites[spriteId].data[0] = a; + gSprites[spriteId].data[1] = g; + gSprites[spriteId].data[2] = b; + gSprites[spriteId].data[3] = h; + gSprites[spriteId].data[4] = h >> 16; + gSprites[spriteId].oam.priority = oamPriority; + gSprites[spriteId].callback = sub_80767D4; + return spriteId; +} + +static void sub_80767D4(struct Sprite *sprite) +{ + if (sprite->data[1] == 0) + { + u8 r6; + u8 r7 = sprite->data[0]; + u8 r8 = sprite->data[2]; + u32 r5 = (u16)sprite->data[3] | ((u16)sprite->data[4] << 16); + + if (sprite->subpriority != 0) + r6 = sprite->subpriority - 1; + else + r6 = 0; + + StartSpriteAnim(sprite, 1); + LaunchBallStarsTaskForPokeball(sprite->pos1.x, sprite->pos1.y - 5, sprite->oam.priority, r6); + sprite->data[1] = LaunchBallFadeMonTaskForPokeball(1, r8, r5); + sprite->callback = sub_807687C; + StartSpriteAffineAnim(&gSprites[r7], 2); + AnimateSprite(&gSprites[r7]); + gSprites[r7].data[1] = 0; + } + else + { + sprite->data[1]--; + } +} + +static void sub_807687C(struct Sprite *sprite) +{ + u8 r1; + + sprite->data[5]++; + if (sprite->data[5] == 11) + PlaySE(SE_SUIKOMU); + r1 = sprite->data[0]; + if (gSprites[r1].affineAnimEnded) + { + StartSpriteAnim(sprite, 2); + gSprites[r1].invisible = TRUE; + sprite->data[5] = 0; + sprite->callback = sub_80768F0; + } + else + { + gSprites[r1].data[1] += 96; + gSprites[r1].pos2.y = -gSprites[r1].data[1] >> 8; + } +} + +static void sub_80768F0(struct Sprite *sprite) +{ + if (sprite->animEnded) + sprite->callback = SpriteCallbackDummy; +} + +static void DestroySpriteAndFreeResources_(struct Sprite *sprite) +{ + DestroySpriteAndFreeResources(sprite); +} + +void sub_8076918(u8 bank) +{ + struct Sprite *healthboxSprite = &gSprites[gHealthBoxesIds[bank]]; + + healthboxSprite->data[0] = 5; + healthboxSprite->data[1] = 0; + healthboxSprite->pos2.x = 0x73; + healthboxSprite->pos2.y = 0; + healthboxSprite->callback = sub_80769CC; + if (GetBankSide(bank) != SIDE_PLAYER) + { + healthboxSprite->data[0] = -healthboxSprite->data[0]; + healthboxSprite->data[1] = -healthboxSprite->data[1]; + healthboxSprite->pos2.x = -healthboxSprite->pos2.x; + healthboxSprite->pos2.y = -healthboxSprite->pos2.y; + } + gSprites[healthboxSprite->data[5]].callback(&gSprites[healthboxSprite->data[5]]); + if (GetBankIdentity(bank) == IDENTITY_PLAYER_MON2) + healthboxSprite->callback = sub_80769A8; +} + +static void sub_80769A8(struct Sprite *sprite) +{ + sprite->data[1]++; + if (sprite->data[1] == 20) + { + sprite->data[1] = 0; + sprite->callback = sub_80769CC; + } +} + +static void sub_80769CC(struct Sprite *sprite) +{ + sprite->pos2.x -= sprite->data[0]; + sprite->pos2.y -= sprite->data[1]; + if (sprite->pos2.x == 0 && sprite->pos2.y == 0) + sprite->callback = SpriteCallbackDummy; +} + +void DoHitAnimHealthboxEffect(u8 bank) +{ + u8 spriteId; + + spriteId = CreateInvisibleSpriteWithCallback(SpriteCB_HitAnimHealthoxEffect); + gSprites[spriteId].data[0] = 1; + gSprites[spriteId].data[1] = gHealthBoxesIds[bank]; + gSprites[spriteId].callback = SpriteCB_HitAnimHealthoxEffect; +} + +static void SpriteCB_HitAnimHealthoxEffect(struct Sprite *sprite) +{ + u8 r1 = sprite->data[1]; + + gSprites[r1].pos2.y = sprite->data[0]; + sprite->data[0] = -sprite->data[0]; + sprite->data[2]++; + if (sprite->data[2] == 21) + { + gSprites[r1].pos2.x = 0; + gSprites[r1].pos2.y = 0; + DestroySprite(sprite); + } +} + +void LoadBallGfx(u8 ballId) +{ + u16 var; + + if (GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag) == 0xFFFF) + { + LoadCompressedObjectPicUsingHeap(&gBallSpriteSheets[ballId]); + LoadCompressedObjectPaletteUsingHeap(&gBallSpritePalettes[ballId]); + } + switch (ballId) + { + case BALL_DIVE: + case BALL_LUXURY: + case BALL_PREMIER: + break; + default: + var = GetSpriteTileStartByTag(gBallSpriteSheets[ballId].tag); + LZDecompressVram(gOpenPokeballGfx, (void *)(VRAM + 0x10100 + var * 32)); + break; + } +} + +void FreeBallGfx(u8 ballId) +{ + FreeSpriteTilesByTag(gBallSpriteSheets[ballId].tag); + FreeSpritePaletteByTag(gBallSpritePalettes[ballId].tag); +} + +static u16 GetBankPokeballItemId(u8 bank) +{ + if (GetBankSide(bank) == SIDE_PLAYER) + return GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_POKEBALL); + else + return GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_POKEBALL); +} diff --git a/src/pokemon_1.c b/src/pokemon_1.c index f56ade967..98a35454f 100644 --- a/src/pokemon_1.c +++ b/src/pokemon_1.c @@ -1,8 +1,8 @@ #include "global.h" #include "pokemon.h" -#include "rng.h" +#include "random.h" #include "main.h" -#include "items.h" +#include "constants/items.h" #include "string_util.h" #include "text.h" diff --git a/src/pokemon_2.c b/src/pokemon_2.c index 7014be492..a4d00112b 100644 --- a/src/pokemon_2.c +++ b/src/pokemon_2.c @@ -2,9 +2,9 @@ #include "pokemon.h" #include "battle.h" #include "event_data.h" -#include "rng.h" +#include "random.h" #include "sprite.h" -#include "species.h" +#include "constants/species.h" #include "text.h" #include "string_util.h" diff --git a/src/pokemon_3.c b/src/pokemon_3.c index 1fafee810..a419dd46e 100644 --- a/src/pokemon_3.c +++ b/src/pokemon_3.c @@ -1,25 +1,25 @@ #include "global.h" #include "pokemon.h" #include "main.h" -#include "items.h" +#include "constants/items.h" #include "string_util.h" #include "battle_message.h" #include "rtc.h" #include "item.h" #include "battle.h" -#include "species.h" +#include "constants/species.h" #include "link.h" -#include "hold_effects.h" -#include "rng.h" +#include "constants/hold_effects.h" +#include "random.h" #include "trainer_classes.h" #include "trainer_ids.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" #include "m4a.h" #include "task.h" #include "sprite.h" #include "text.h" -#include "abilities.h" +#include "constants/abilities.h" #include "pokemon_animation.h" #include "pokedex.h" diff --git a/src/pokemon_size_record.c b/src/pokemon_size_record.c index ec0103bc7..fe3b3e8dd 100644 --- a/src/pokemon_size_record.c +++ b/src/pokemon_size_record.c @@ -1,7 +1,7 @@ #include "global.h" #include "pokemon_size_record.h" #include "event_data.h" -#include "species.h" +#include "constants/species.h" #include "string_util.h" #include "text.h" #include "pokemon.h" diff --git a/src/pokemon_storage_system.c b/src/pokemon_storage_system.c index f82a52d38..bdf4427c7 100644 --- a/src/pokemon_storage_system.c +++ b/src/pokemon_storage_system.c @@ -1,7 +1,7 @@ #include "global.h" #include "pokemon_storage_system.h" #include "pokemon.h" -#include "species.h" +#include "constants/species.h" #include "event_data.h" #include "string_util.h" #include "text.h" diff --git a/src/pokemon_summary_screen.c b/src/pokemon_summary_screen.c index e9cd3e215..b00979945 100755 --- a/src/pokemon_summary_screen.c +++ b/src/pokemon_summary_screen.c @@ -3,17 +3,17 @@ #include "bg.h" #include "decompress.h" #include "item.h" -#include "items.h" +#include "constants/items.h" #include "link.h" #include "m4a.h" #include "main.h" #include "malloc.h" -#include "moves.h" +#include "constants/moves.h" #include "palette.h" #include "pokemon.h" -#include "songs.h" +#include "constants/songs.h" #include "sound.h" -#include "species.h" +#include "constants/species.h" #include "sprite.h" #include "unk_text_util.h" #include "string_util.h" @@ -937,7 +937,7 @@ void sub_81C0704(u8 taskId) gUnknown_0203CF1C->unk40D3 = sub_81C45F4(&gUnknown_0203CF1C->currentMon, &data[1]); if (gUnknown_0203CF1C->unk40D3 == 0xFF) return; - gSprites[gUnknown_0203CF1C->unk40D3].data2 = 1; + gSprites[gUnknown_0203CF1C->unk40D3].data[2] = 1; sub_81C0E24(); data[1] = 0; break; @@ -952,7 +952,7 @@ void sub_81C0704(u8 taskId) sub_81C2524(); break; case 12: - gSprites[gUnknown_0203CF1C->unk40D3].data2 = 0; + gSprites[gUnknown_0203CF1C->unk40D3].data[2] = 0; break; default: if (sub_81221EC() == 0 && FuncIsActiveTask(sub_81C20F0) == 0) diff --git a/src/rng.c b/src/random.c index ddd149018..f2f0ede58 100644 --- a/src/rng.c +++ b/src/random.c @@ -1,5 +1,5 @@ #include "global.h" -#include "rng.h" +#include "random.h" // The number 1103515245 comes from the example implementation of rand and srand // in the ISO C standard. diff --git a/src/recorded_battle.c b/src/recorded_battle.c index e843ff7cb..4f3fe4ab9 100644 --- a/src/recorded_battle.c +++ b/src/recorded_battle.c @@ -3,7 +3,7 @@ #include "recorded_battle.h" #include "main.h" #include "pokemon.h" -#include "rng.h" +#include "random.h" #include "event_data.h" #include "link.h" #include "string_util.h" diff --git a/src/region_map.c b/src/region_map.c index 8c8f64df9..b7fc625ca 100644 --- a/src/region_map.c +++ b/src/region_map.c @@ -7,9 +7,9 @@ #include "palette.h" #include "party_menu.h" #include "trig.h" -#include "map_constants.h" +#include "constants/maps.h" #include "overworld.h" -#include "flags.h" +#include "constants/flags.h" #include "event_data.h" #include "rom6.h" #include "secret_base.h" @@ -17,7 +17,7 @@ #include "international_string_util.h" #include "strings.h" #include "text_window.h" -#include "songs.h" +#include "constants/songs.h" #include "m4a.h" #include "field_effect.h" #include "region_map.h" @@ -242,56 +242,56 @@ static const u16 Unknown_085A1D48[] = INCBIN_U16("graphics/pokenav/fly_target_ic static const u8 gUnknown_085A1D68[] = INCBIN_U8("graphics/pokenav/fly_target_icons.4bpp.lz"); static const u8 gUnknown_085A1E3C[][3] = { - {MAP_GROUP_LITTLEROOT_TOWN, MAP_ID_LITTLEROOT_TOWN, 1}, - {MAP_GROUP_OLDALE_TOWN, MAP_ID_OLDALE_TOWN, 14}, - {MAP_GROUP_DEWFORD_TOWN, MAP_ID_DEWFORD_TOWN, 15}, - {MAP_GROUP_LAVARIDGE_TOWN, MAP_ID_LAVARIDGE_TOWN, 16}, - {MAP_GROUP_FALLARBOR_TOWN, MAP_ID_FALLARBOR_TOWN, 17}, - {MAP_GROUP_VERDANTURF_TOWN, MAP_ID_VERDANTURF_TOWN, 18}, - {MAP_GROUP_PACIFIDLOG_TOWN, MAP_ID_PACIFIDLOG_TOWN, 19}, - {MAP_GROUP_PETALBURG_CITY, MAP_ID_PETALBURG_CITY, 3}, - {MAP_GROUP_SLATEPORT_CITY, MAP_ID_SLATEPORT_CITY, 4}, - {MAP_GROUP_MAUVILLE_CITY, MAP_ID_MAUVILLE_CITY, 5}, - {MAP_GROUP_RUSTBORO_CITY, MAP_ID_RUSTBORO_CITY, 6}, - {MAP_GROUP_FORTREE_CITY, MAP_ID_FORTREE_CITY, 7}, - {MAP_GROUP_LILYCOVE_CITY, MAP_ID_LILYCOVE_CITY, 8}, - {MAP_GROUP_MOSSDEEP_CITY, MAP_ID_MOSSDEEP_CITY, 9}, - {MAP_GROUP_SOOTOPOLIS_CITY, MAP_ID_SOOTOPOLIS_CITY, 10}, - {MAP_GROUP_EVER_GRANDE_CITY, MAP_ID_EVER_GRANDE_CITY, 11}, - {MAP_GROUP_ROUTE101, MAP_ID_ROUTE101, 0}, - {MAP_GROUP_ROUTE102, MAP_ID_ROUTE102, 0}, - {MAP_GROUP_ROUTE103, MAP_ID_ROUTE103, 0}, - {MAP_GROUP_ROUTE104, MAP_ID_ROUTE104, 0}, - {MAP_GROUP_ROUTE105, MAP_ID_ROUTE105, 0}, - {MAP_GROUP_ROUTE106, MAP_ID_ROUTE106, 0}, - {MAP_GROUP_ROUTE107, MAP_ID_ROUTE107, 0}, - {MAP_GROUP_ROUTE108, MAP_ID_ROUTE108, 0}, - {MAP_GROUP_ROUTE109, MAP_ID_ROUTE109, 0}, - {MAP_GROUP_ROUTE110, MAP_ID_ROUTE110, 0}, - {MAP_GROUP_ROUTE111, MAP_ID_ROUTE111, 0}, - {MAP_GROUP_ROUTE112, MAP_ID_ROUTE112, 0}, - {MAP_GROUP_ROUTE113, MAP_ID_ROUTE113, 0}, - {MAP_GROUP_ROUTE114, MAP_ID_ROUTE114, 0}, - {MAP_GROUP_ROUTE115, MAP_ID_ROUTE115, 0}, - {MAP_GROUP_ROUTE116, MAP_ID_ROUTE116, 0}, - {MAP_GROUP_ROUTE117, MAP_ID_ROUTE117, 0}, - {MAP_GROUP_ROUTE118, MAP_ID_ROUTE118, 0}, - {MAP_GROUP_ROUTE119, MAP_ID_ROUTE119, 0}, - {MAP_GROUP_ROUTE120, MAP_ID_ROUTE120, 0}, - {MAP_GROUP_ROUTE121, MAP_ID_ROUTE121, 0}, - {MAP_GROUP_ROUTE122, MAP_ID_ROUTE122, 0}, - {MAP_GROUP_ROUTE123, MAP_ID_ROUTE123, 0}, - {MAP_GROUP_ROUTE124, MAP_ID_ROUTE124, 0}, - {MAP_GROUP_ROUTE125, MAP_ID_ROUTE125, 0}, - {MAP_GROUP_ROUTE126, MAP_ID_ROUTE126, 0}, - {MAP_GROUP_ROUTE127, MAP_ID_ROUTE127, 0}, - {MAP_GROUP_ROUTE128, MAP_ID_ROUTE128, 0}, - {MAP_GROUP_ROUTE129, MAP_ID_ROUTE129, 0}, - {MAP_GROUP_ROUTE130, MAP_ID_ROUTE130, 0}, - {MAP_GROUP_ROUTE131, MAP_ID_ROUTE131, 0}, - {MAP_GROUP_ROUTE132, MAP_ID_ROUTE132, 0}, - {MAP_GROUP_ROUTE133, MAP_ID_ROUTE133, 0}, - {MAP_GROUP_ROUTE134, MAP_ID_ROUTE134, 0} + {MAP_GROUP(LITTLEROOT_TOWN), MAP_NUM(LITTLEROOT_TOWN), 1}, + {MAP_GROUP(OLDALE_TOWN), MAP_NUM(OLDALE_TOWN), 14}, + {MAP_GROUP(DEWFORD_TOWN), MAP_NUM(DEWFORD_TOWN), 15}, + {MAP_GROUP(LAVARIDGE_TOWN), MAP_NUM(LAVARIDGE_TOWN), 16}, + {MAP_GROUP(FALLARBOR_TOWN), MAP_NUM(FALLARBOR_TOWN), 17}, + {MAP_GROUP(VERDANTURF_TOWN), MAP_NUM(VERDANTURF_TOWN), 18}, + {MAP_GROUP(PACIFIDLOG_TOWN), MAP_NUM(PACIFIDLOG_TOWN), 19}, + {MAP_GROUP(PETALBURG_CITY), MAP_NUM(PETALBURG_CITY), 3}, + {MAP_GROUP(SLATEPORT_CITY), MAP_NUM(SLATEPORT_CITY), 4}, + {MAP_GROUP(MAUVILLE_CITY), MAP_NUM(MAUVILLE_CITY), 5}, + {MAP_GROUP(RUSTBORO_CITY), MAP_NUM(RUSTBORO_CITY), 6}, + {MAP_GROUP(FORTREE_CITY), MAP_NUM(FORTREE_CITY), 7}, + {MAP_GROUP(LILYCOVE_CITY), MAP_NUM(LILYCOVE_CITY), 8}, + {MAP_GROUP(MOSSDEEP_CITY), MAP_NUM(MOSSDEEP_CITY), 9}, + {MAP_GROUP(SOOTOPOLIS_CITY), MAP_NUM(SOOTOPOLIS_CITY), 10}, + {MAP_GROUP(EVER_GRANDE_CITY), MAP_NUM(EVER_GRANDE_CITY), 11}, + {MAP_GROUP(ROUTE101), MAP_NUM(ROUTE101), 0}, + {MAP_GROUP(ROUTE102), MAP_NUM(ROUTE102), 0}, + {MAP_GROUP(ROUTE103), MAP_NUM(ROUTE103), 0}, + {MAP_GROUP(ROUTE104), MAP_NUM(ROUTE104), 0}, + {MAP_GROUP(ROUTE105), MAP_NUM(ROUTE105), 0}, + {MAP_GROUP(ROUTE106), MAP_NUM(ROUTE106), 0}, + {MAP_GROUP(ROUTE107), MAP_NUM(ROUTE107), 0}, + {MAP_GROUP(ROUTE108), MAP_NUM(ROUTE108), 0}, + {MAP_GROUP(ROUTE109), MAP_NUM(ROUTE109), 0}, + {MAP_GROUP(ROUTE110), MAP_NUM(ROUTE110), 0}, + {MAP_GROUP(ROUTE111), MAP_NUM(ROUTE111), 0}, + {MAP_GROUP(ROUTE112), MAP_NUM(ROUTE112), 0}, + {MAP_GROUP(ROUTE113), MAP_NUM(ROUTE113), 0}, + {MAP_GROUP(ROUTE114), MAP_NUM(ROUTE114), 0}, + {MAP_GROUP(ROUTE115), MAP_NUM(ROUTE115), 0}, + {MAP_GROUP(ROUTE116), MAP_NUM(ROUTE116), 0}, + {MAP_GROUP(ROUTE117), MAP_NUM(ROUTE117), 0}, + {MAP_GROUP(ROUTE118), MAP_NUM(ROUTE118), 0}, + {MAP_GROUP(ROUTE119), MAP_NUM(ROUTE119), 0}, + {MAP_GROUP(ROUTE120), MAP_NUM(ROUTE120), 0}, + {MAP_GROUP(ROUTE121), MAP_NUM(ROUTE121), 0}, + {MAP_GROUP(ROUTE122), MAP_NUM(ROUTE122), 0}, + {MAP_GROUP(ROUTE123), MAP_NUM(ROUTE123), 0}, + {MAP_GROUP(ROUTE124), MAP_NUM(ROUTE124), 0}, + {MAP_GROUP(ROUTE125), MAP_NUM(ROUTE125), 0}, + {MAP_GROUP(ROUTE126), MAP_NUM(ROUTE126), 0}, + {MAP_GROUP(ROUTE127), MAP_NUM(ROUTE127), 0}, + {MAP_GROUP(ROUTE128), MAP_NUM(ROUTE128), 0}, + {MAP_GROUP(ROUTE129), MAP_NUM(ROUTE129), 0}, + {MAP_GROUP(ROUTE130), MAP_NUM(ROUTE130), 0}, + {MAP_GROUP(ROUTE131), MAP_NUM(ROUTE131), 0}, + {MAP_GROUP(ROUTE132), MAP_NUM(ROUTE132), 0}, + {MAP_GROUP(ROUTE133), MAP_NUM(ROUTE133), 0}, + {MAP_GROUP(ROUTE134), MAP_NUM(ROUTE134), 0} }; static const u8 *const gUnknown_085A1ED4[] = { @@ -871,10 +871,10 @@ static void RegionMap_InitializeStateBasedOnPlayerLocation(void) u16 xOnMap; struct WarpData *storedWarp; - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_SS_TIDAL_CORRIDOR - && (gSaveBlock1Ptr->location.mapNum == MAP_ID_SS_TIDAL_CORRIDOR - || gSaveBlock1Ptr->location.mapNum == MAP_ID_SS_TIDAL_LOWER_DECK - || gSaveBlock1Ptr->location.mapNum == MAP_ID_SS_TIDAL_ROOMS)) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SS_TIDAL_CORRIDOR) + && (gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_CORRIDOR) + || gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_LOWER_DECK) + || gSaveBlock1Ptr->location.mapNum == MAP_NUM(SS_TIDAL_ROOMS))) { RegionMap_InitializeStateBasedOnSSTidalLocation(); return; @@ -1332,9 +1332,9 @@ void CreateRegionMapCursor(u16 tileTag, u16 paletteTag) gRegionMap->cursorSprite->pos1.x = 8 * gRegionMap->cursorPosX + 4; gRegionMap->cursorSprite->pos1.y = 8 * gRegionMap->cursorPosY + 4; } - gRegionMap->cursorSprite->data1 = 2; - gRegionMap->cursorSprite->data2 = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101; - gRegionMap->cursorSprite->data3 = TRUE; + gRegionMap->cursorSprite->data[1] = 2; + gRegionMap->cursorSprite->data[2] = (IndexOfSpritePaletteTag(paletteTag) << 4) + 0x101; + gRegionMap->cursorSprite->data[3] = TRUE; } } @@ -1350,12 +1350,12 @@ static void FreeRegionMapCursorSprite(void) void sub_8124268(void) { - gRegionMap->cursorSprite->data3 = TRUE; + gRegionMap->cursorSprite->data[3] = TRUE; } void sub_8124278(void) { - gRegionMap->cursorSprite->data3 = FALSE; + gRegionMap->cursorSprite->data[3] = FALSE; } void CreateRegionMapPlayerIcon(u16 tileTag, u16 paletteTag) @@ -1429,17 +1429,17 @@ static void RegionMapPlayerIconSpriteCallback_Zoomed(struct Sprite *sprite) { sprite->pos2.x = -2 * gRegionMap->scrollX; sprite->pos2.y = -2 * gRegionMap->scrollY; - sprite->data0 = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; - sprite->data1 = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; - if (sprite->data0 < -8 || sprite->data0 > 0xa8 || sprite->data1 < -8 || sprite->data1 > 0xf8) + sprite->data[0] = sprite->pos1.y + sprite->pos2.y + sprite->centerToCornerVecY; + sprite->data[1] = sprite->pos1.x + sprite->pos2.x + sprite->centerToCornerVecX; + if (sprite->data[0] < -8 || sprite->data[0] > 0xa8 || sprite->data[1] < -8 || sprite->data[1] > 0xf8) { - sprite->data2 = FALSE; + sprite->data[2] = FALSE; } else { - sprite->data2 = TRUE; + sprite->data[2] = TRUE; } - if (sprite->data2 == TRUE) + if (sprite->data[2] == TRUE) { RegionMapPlayerIconSpriteCallback(sprite); } @@ -1458,9 +1458,9 @@ static void RegionMapPlayerIconSpriteCallback(struct Sprite *sprite) { if (gRegionMap->blinkPlayerIcon) { - if (++sprite->data7 > 16) + if (++sprite->data[7] > 16) { - sprite->data7 = 0; + sprite->data[7] = 0; sprite->invisible = sprite->invisible ? FALSE : TRUE; } } @@ -1790,7 +1790,7 @@ static void sub_8124AD4(void) shape += 3; } StartSpriteAnim(&gSprites[spriteId], shape); - gSprites[spriteId].data0 = i; + gSprites[spriteId].data[0] = i; } canFlyFlag++; } @@ -1820,7 +1820,7 @@ static void sub_8124BE4(void) gSprites[spriteId].oam.size = 1; gSprites[spriteId].callback = sub_8124CBC; StartSpriteAnim(&gSprites[spriteId], 6); - gSprites[spriteId].data0 = mapSecId; + gSprites[spriteId].data[0] = mapSecId; } } } @@ -1828,17 +1828,17 @@ static void sub_8124BE4(void) static void sub_8124CBC(struct Sprite *sprite) { - if (gUnknown_0203A148->regionMap.mapSecId == sprite->data0) + if (gUnknown_0203A148->regionMap.mapSecId == sprite->data[0]) { - if (++sprite->data1 > 16) + if (++sprite->data[1] > 16) { - sprite->data1 = 0; + sprite->data[1] = 0; sprite->invisible = sprite->invisible ? FALSE : TRUE; } } else { - sprite->data1 = 16; + sprite->data[1] = 16; sprite->invisible = FALSE; } } diff --git a/src/reshow_battle_screen.c b/src/reshow_battle_screen.c index 3177a8946..a034ca089 100644 --- a/src/reshow_battle_screen.c +++ b/src/reshow_battle_screen.c @@ -10,7 +10,7 @@ #include "battle_controllers.h" #include "link.h" #include "sprite.h" -#include "species.h" +#include "constants/species.h" #include "battle_interface.h" extern u16 gBattle_BG0_X; @@ -42,7 +42,7 @@ extern u8 GetBankSpriteDefault_Y(u8 bank); extern u8 sub_80A82E4(u8 bank); extern void sub_806A068(u16 species, u8 bankIdentity); extern void sub_806A12C(u16 backPicId, u8 bankIdentity); -extern u8 sub_80A5C6C(u8 bank, u8 caseId); +extern u8 GetBankPosition(u8 bank, u8 caseId); // this file's functions static void CB2_ReshowBattleScreenAfterMenu(void); @@ -260,11 +260,11 @@ static void CreateBankSprite(u8 bank) return; sub_806A068(GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_SPECIES), GetBankIdentity(bank)); - gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, sub_80A5C6C(bank, 2), posY, sub_80A82E4(bank)); + gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, GetBankPosition(bank, 2), posY, sub_80A82E4(bank)); gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_SPECIES); + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = GetMonData(&gEnemyParty[gBattlePartyID[bank]], MON_DATA_SPECIES); StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); if (gBattleSpritesDataPtr->bankData[bank].transformSpecies == SPECIES_CASTFORM) @@ -278,7 +278,7 @@ static void CreateBankSprite(u8 bank) sub_80A82E4(0)); gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gBankSpriteIds[bank]].data0 = bank; + gSprites[gBankSpriteIds[bank]].data[0] = bank; } else if (gBattleTypeFlags & BATTLE_TYPE_WALLY_TUTORIAL && bank == 0) { @@ -288,7 +288,7 @@ static void CreateBankSprite(u8 bank) sub_80A82E4(0)); gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gBankSpriteIds[bank]].data0 = bank; + gSprites[gBankSpriteIds[bank]].data[0] = bank; } else { @@ -296,11 +296,11 @@ static void CreateBankSprite(u8 bank) return; sub_806A068(GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_SPECIES), GetBankIdentity(bank)); - gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, sub_80A5C6C(bank, 2), posY, sub_80A82E4(bank)); + gBankSpriteIds[bank] = CreateSprite(&gUnknown_0202499C, GetBankPosition(bank, 2), posY, sub_80A82E4(bank)); gSprites[gBankSpriteIds[bank]].oam.paletteNum = bank; gSprites[gBankSpriteIds[bank]].callback = SpriteCallbackDummy; - gSprites[gBankSpriteIds[bank]].data0 = bank; - gSprites[gBankSpriteIds[bank]].data2 = GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_SPECIES); + gSprites[gBankSpriteIds[bank]].data[0] = bank; + gSprites[gBankSpriteIds[bank]].data[2] = GetMonData(&gPlayerParty[gBattlePartyID[bank]], MON_DATA_SPECIES); StartSpriteAnim(&gSprites[gBankSpriteIds[bank]], gBattleMonForms[bank]); if (gBattleSpritesDataPtr->bankData[bank].transformSpecies == SPECIES_CASTFORM) diff --git a/src/roamer.c b/src/roamer.c index cbe1b6312..fbd25bfad 100644 --- a/src/roamer.c +++ b/src/roamer.c @@ -1,8 +1,8 @@ #include "global.h" #include "roamer.h" #include "pokemon.h" -#include "rng.h" -#include "species.h" +#include "random.h" +#include "constants/species.h" #include "event_data.h" enum diff --git a/src/safari_zone.c b/src/safari_zone.c index d3d40af28..19a26dad9 100644 --- a/src/safari_zone.c +++ b/src/safari_zone.c @@ -1,7 +1,7 @@ #include "global.h" #include "safari_zone.h" #include "event_data.h" -#include "game_stat.h" +#include "constants/game_stat.h" #include "main.h" #include "battle.h" #include "string_util.h" diff --git a/src/save.c b/src/save.c index 528c67145..023ca6870 100644 --- a/src/save.c +++ b/src/save.c @@ -1,7 +1,7 @@ #include "global.h" #include "gba/flash_internal.h" #include "save.h" -#include "game_stat.h" +#include "constants/game_stat.h" #include "task.h" extern struct SaveSectionLocation gRamSaveSectionLocations[0xE]; diff --git a/src/save_location.c b/src/save_location.c index 61a5fd30d..262aaf40c 100755 --- a/src/save_location.c +++ b/src/save_location.c @@ -1,9 +1,6 @@ #include "global.h" #include "save_location.h" -#include "map_constants.h" - -// used to make the list defines a little less ugly. -#define MAP(name) ((MAP_GROUP_##name << 8) + (MAP_ID_##name)) +#include "constants/maps.h" // specialSaveWarp flags #define POKECENTER_SAVEWARP (1 << 1) @@ -29,44 +26,44 @@ static bool32 IsCurMapInLocationList(const u16 *list) // TODO: Not require a packed u16 array for these lists static const u16 sSaveLocationPokeCenterList[] = { - MAP(OLDALE_TOWN_POKEMON_CENTER_1F), - MAP(OLDALE_TOWN_POKEMON_CENTER_2F), - MAP(DEWFORD_TOWN_POKEMON_CENTER_1F), - MAP(DEWFORD_TOWN_POKEMON_CENTER_2F), - MAP(LAVARIDGE_TOWN_POKEMON_CENTER_1F), - MAP(LAVARIDGE_TOWN_POKEMON_CENTER_2F), - MAP(FALLARBOR_TOWN_POKEMON_CENTER_1F), - MAP(FALLARBOR_TOWN_POKEMON_CENTER_2F), - MAP(VERDANTURF_TOWN_POKEMON_CENTER_1F), - MAP(VERDANTURF_TOWN_POKEMON_CENTER_2F), - MAP(PACIFIDLOG_TOWN_POKEMON_CENTER_1F), - MAP(PACIFIDLOG_TOWN_POKEMON_CENTER_2F), - MAP(PETALBURG_CITY_POKEMON_CENTER_1F), - MAP(PETALBURG_CITY_POKEMON_CENTER_2F), - MAP(SLATEPORT_CITY_POKEMON_CENTER_1F), - MAP(SLATEPORT_CITY_POKEMON_CENTER_2F), - MAP(MAUVILLE_CITY_POKEMON_CENTER_1F), - MAP(MAUVILLE_CITY_POKEMON_CENTER_2F), - MAP(RUSTBORO_CITY_POKEMON_CENTER_1F), - MAP(RUSTBORO_CITY_POKEMON_CENTER_2F), - MAP(FORTREE_CITY_POKEMON_CENTER_1F), - MAP(FORTREE_CITY_POKEMON_CENTER_2F), - MAP(LILYCOVE_CITY_POKEMON_CENTER_1F), - MAP(LILYCOVE_CITY_POKEMON_CENTER_2F), - MAP(MOSSDEEP_CITY_POKEMON_CENTER_1F), - MAP(MOSSDEEP_CITY_POKEMON_CENTER_2F), - MAP(SOOTOPOLIS_CITY_POKEMON_CENTER_1F), - MAP(SOOTOPOLIS_CITY_POKEMON_CENTER_2F), - MAP(EVER_GRANDE_CITY_POKEMON_CENTER_1F), - MAP(EVER_GRANDE_CITY_POKEMON_CENTER_2F), - MAP(EVER_GRANDE_CITY_POKEMON_LEAGUE_1F), - MAP(EVER_GRANDE_CITY_POKEMON_LEAGUE_2F), - MAP(BATTLE_FRONTIER_POKEMON_CENTER_1F), - MAP(BATTLE_FRONTIER_POKEMON_CENTER_2F), - MAP(SINGLE_BATTLE_COLOSSEUM), - MAP(TRADE_CENTER), - MAP(RECORD_CORNER), - MAP(DOUBLE_BATTLE_COLOSSEUM), + MAP_OLDALE_TOWN_POKEMON_CENTER_1F, + MAP_OLDALE_TOWN_POKEMON_CENTER_2F, + MAP_DEWFORD_TOWN_POKEMON_CENTER_1F, + MAP_DEWFORD_TOWN_POKEMON_CENTER_2F, + MAP_LAVARIDGE_TOWN_POKEMON_CENTER_1F, + MAP_LAVARIDGE_TOWN_POKEMON_CENTER_2F, + MAP_FALLARBOR_TOWN_POKEMON_CENTER_1F, + MAP_FALLARBOR_TOWN_POKEMON_CENTER_2F, + MAP_VERDANTURF_TOWN_POKEMON_CENTER_1F, + MAP_VERDANTURF_TOWN_POKEMON_CENTER_2F, + MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_1F, + MAP_PACIFIDLOG_TOWN_POKEMON_CENTER_2F, + MAP_PETALBURG_CITY_POKEMON_CENTER_1F, + MAP_PETALBURG_CITY_POKEMON_CENTER_2F, + MAP_SLATEPORT_CITY_POKEMON_CENTER_1F, + MAP_SLATEPORT_CITY_POKEMON_CENTER_2F, + MAP_MAUVILLE_CITY_POKEMON_CENTER_1F, + MAP_MAUVILLE_CITY_POKEMON_CENTER_2F, + MAP_RUSTBORO_CITY_POKEMON_CENTER_1F, + MAP_RUSTBORO_CITY_POKEMON_CENTER_2F, + MAP_FORTREE_CITY_POKEMON_CENTER_1F, + MAP_FORTREE_CITY_POKEMON_CENTER_2F, + MAP_LILYCOVE_CITY_POKEMON_CENTER_1F, + MAP_LILYCOVE_CITY_POKEMON_CENTER_2F, + MAP_MOSSDEEP_CITY_POKEMON_CENTER_1F, + MAP_MOSSDEEP_CITY_POKEMON_CENTER_2F, + MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_1F, + MAP_SOOTOPOLIS_CITY_POKEMON_CENTER_2F, + MAP_EVER_GRANDE_CITY_POKEMON_CENTER_1F, + MAP_EVER_GRANDE_CITY_POKEMON_CENTER_2F, + MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_1F, + MAP_EVER_GRANDE_CITY_POKEMON_LEAGUE_2F, + MAP_BATTLE_FRONTIER_POKEMON_CENTER_1F, + MAP_BATTLE_FRONTIER_POKEMON_CENTER_2F, + MAP_SINGLE_BATTLE_COLOSSEUM, + MAP_TRADE_CENTER, + MAP_RECORD_CORNER, + MAP_DOUBLE_BATTLE_COLOSSEUM, 0xFFFF, }; @@ -77,7 +74,7 @@ static bool32 IsCurMapPokeCenter(void) 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), + MAP_BATTLE_FRONTIER_BATTLE_TOWER_LOBBY, 0xFFFF, }; diff --git a/src/scrcmd.c b/src/scrcmd.c index 183b9bab5..504d001ea 100644 --- a/src/scrcmd.c +++ b/src/scrcmd.c @@ -34,7 +34,7 @@ #include "party_menu.h" #include "pokemon_3.h" #include "pokemon_storage_system.h" -#include "rng.h" +#include "random.h" #include "overworld.h" #include "rtc.h" #include "script.h" diff --git a/src/secret_base.c b/src/secret_base.c index de2b7221a..6d66e6576 100644 --- a/src/secret_base.c +++ b/src/secret_base.c @@ -1,6 +1,7 @@ // Includes #include "global.h" +#include "constants/decorations.h" #include "malloc.h" #include "task.h" #include "palette.h" @@ -10,8 +11,8 @@ #include "menu_helpers.h" #include "new_menu_helpers.h" #include "menu_indicators.h" -#include "map_constants.h" -#include "songs.h" +#include "constants/maps.h" +#include "constants/songs.h" #include "sound.h" #include "overworld.h" #include "fieldmap.h" @@ -89,30 +90,30 @@ const struct { }; const u8 gUnknown_0858CFE8[] = { - MAP_ID_SECRET_BASE_RED_CAVE1, 0x00, 0x01, 0x03, - MAP_ID_SECRET_BASE_RED_CAVE2, 0x00, 0x05, 0x09, - MAP_ID_SECRET_BASE_RED_CAVE3, 0x00, 0x01, 0x03, - MAP_ID_SECRET_BASE_RED_CAVE4, 0x00, 0x07, 0x0d, - MAP_ID_SECRET_BASE_BROWN_CAVE1, 0x00, 0x02, 0x03, - MAP_ID_SECRET_BASE_BROWN_CAVE2, 0x00, 0x09, 0x02, - MAP_ID_SECRET_BASE_BROWN_CAVE3, 0x00, 0x0d, 0x04, - MAP_ID_SECRET_BASE_BROWN_CAVE4, 0x00, 0x01, 0x02, - MAP_ID_SECRET_BASE_BLUE_CAVE1, 0x00, 0x01, 0x03, - MAP_ID_SECRET_BASE_BLUE_CAVE2, 0x00, 0x01, 0x02, - MAP_ID_SECRET_BASE_BLUE_CAVE3, 0x00, 0x03, 0x0f, - MAP_ID_SECRET_BASE_BLUE_CAVE4, 0x00, 0x03, 0x0e, - MAP_ID_SECRET_BASE_YELLOW_CAVE1, 0x00, 0x09, 0x03, - MAP_ID_SECRET_BASE_YELLOW_CAVE2, 0x00, 0x08, 0x07, - MAP_ID_SECRET_BASE_YELLOW_CAVE3, 0x00, 0x03, 0x06, - MAP_ID_SECRET_BASE_YELLOW_CAVE4, 0x00, 0x05, 0x09, - MAP_ID_SECRET_BASE_TREE1, 0x00, 0x02, 0x03, - MAP_ID_SECRET_BASE_TREE2, 0x00, 0x05, 0x06, - MAP_ID_SECRET_BASE_TREE3, 0x00, 0x0f, 0x03, - MAP_ID_SECRET_BASE_TREE4, 0x00, 0x04, 0x0a, - MAP_ID_SECRET_BASE_SHRUB1, 0x00, 0x03, 0x03, - MAP_ID_SECRET_BASE_SHRUB2, 0x00, 0x01, 0x02, - MAP_ID_SECRET_BASE_SHRUB3, 0x00, 0x07, 0x08, - MAP_ID_SECRET_BASE_SHRUB4, 0x00, 0x09, 0x06 + MAP_NUM(SECRET_BASE_RED_CAVE1), 0x00, 0x01, 0x03, + MAP_NUM(SECRET_BASE_RED_CAVE2), 0x00, 0x05, 0x09, + MAP_NUM(SECRET_BASE_RED_CAVE3), 0x00, 0x01, 0x03, + MAP_NUM(SECRET_BASE_RED_CAVE4), 0x00, 0x07, 0x0d, + MAP_NUM(SECRET_BASE_BROWN_CAVE1), 0x00, 0x02, 0x03, + MAP_NUM(SECRET_BASE_BROWN_CAVE2), 0x00, 0x09, 0x02, + MAP_NUM(SECRET_BASE_BROWN_CAVE3), 0x00, 0x0d, 0x04, + MAP_NUM(SECRET_BASE_BROWN_CAVE4), 0x00, 0x01, 0x02, + MAP_NUM(SECRET_BASE_BLUE_CAVE1), 0x00, 0x01, 0x03, + MAP_NUM(SECRET_BASE_BLUE_CAVE2), 0x00, 0x01, 0x02, + MAP_NUM(SECRET_BASE_BLUE_CAVE3), 0x00, 0x03, 0x0f, + MAP_NUM(SECRET_BASE_BLUE_CAVE4), 0x00, 0x03, 0x0e, + MAP_NUM(SECRET_BASE_YELLOW_CAVE1), 0x00, 0x09, 0x03, + MAP_NUM(SECRET_BASE_YELLOW_CAVE2), 0x00, 0x08, 0x07, + MAP_NUM(SECRET_BASE_YELLOW_CAVE3), 0x00, 0x03, 0x06, + MAP_NUM(SECRET_BASE_YELLOW_CAVE4), 0x00, 0x05, 0x09, + MAP_NUM(SECRET_BASE_TREE1), 0x00, 0x02, 0x03, + MAP_NUM(SECRET_BASE_TREE2), 0x00, 0x05, 0x06, + MAP_NUM(SECRET_BASE_TREE3), 0x00, 0x0f, 0x03, + MAP_NUM(SECRET_BASE_TREE4), 0x00, 0x04, 0x0a, + MAP_NUM(SECRET_BASE_SHRUB1), 0x00, 0x03, 0x03, + MAP_NUM(SECRET_BASE_SHRUB2), 0x00, 0x01, 0x02, + MAP_NUM(SECRET_BASE_SHRUB3), 0x00, 0x07, 0x08, + MAP_NUM(SECRET_BASE_SHRUB4), 0x00, 0x09, 0x06 }; const struct MenuAction gUnknown_0858D048[] = { @@ -360,7 +361,7 @@ void sub_80E8F9C(void) s8 idx; idx = sCurSecretBaseId / 10 * 4; - warp1_set_2(MAP_GROUP_SECRET_BASE_RED_CAVE1, gUnknown_0858CFE8[idx], gUnknown_0858CFE8[idx + 1]); + warp1_set_2(MAP_GROUP(SECRET_BASE_RED_CAVE1), gUnknown_0858CFE8[idx], gUnknown_0858CFE8[idx + 1]); } void sub_80E8FD0(u8 taskId) @@ -455,7 +456,7 @@ void sub_80E91F8(void) bool8 CurrentMapIsSecretBase(void) { - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_SECRET_BASE_RED_CAVE1 && (u8)gSaveBlock1Ptr->location.mapNum <= MAP_ID_SECRET_BASE_SHRUB4) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SECRET_BASE_RED_CAVE1) && (u8)gSaveBlock1Ptr->location.mapNum <= MAP_NUM(SECRET_BASE_SHRUB4)) { return TRUE; } diff --git a/src/sound.c b/src/sound.c index a95511ece..086fede67 100644 --- a/src/sound.c +++ b/src/sound.c @@ -5,7 +5,7 @@ #include "m4a.h" #include "main.h" #include "pokemon.h" -#include "songs.h" +#include "constants/songs.h" #include "task.h" struct Fanfare diff --git a/src/sprite.c b/src/sprite.c index daa019019..9db61d2e9 100644 --- a/src/sprite.c +++ b/src/sprite.c @@ -168,14 +168,7 @@ static const struct Sprite sDummySprite = .animPaused = 0, .affineAnimPaused = 0, .animLoopCounter = 0, - .data0 = 0, - .data1 = 0, - .data2 = 0, - .data3 = 0, - .data4 = 0, - .data5 = 0, - .data6 = 0, - .data7 = 0, + .data = {0, 0, 0, 0, 0, 0, 0}, .inUse = 0, .coordOffsetEnabled = 0, .invisible = 0, @@ -1075,7 +1068,7 @@ void BeginAffineAnim(struct Sprite *sprite) ApplyAffineAnimFrame(matrixNum, &frameCmd); sAffineAnimStates[matrixNum].delayCounter = frameCmd.duration; if (sprite->flags_f) - obj_update_pos2(sprite, sprite->data6, sprite->data7); + obj_update_pos2(sprite, sprite->data[6], sprite->data[7]); } } @@ -1101,7 +1094,7 @@ void ContinueAffineAnim(struct Sprite *sprite) sAffineAnimCmdFuncs[funcIndex](matrixNum, sprite); } if (sprite->flags_f) - obj_update_pos2(sprite, sprite->data6, sprite->data7); + obj_update_pos2(sprite, sprite->data[6], sprite->data[7]); } } @@ -1197,8 +1190,8 @@ u8 GetSpriteMatrixNum(struct Sprite *sprite) void sub_8007E18(struct Sprite* sprite, s16 a2, s16 a3) { - sprite->data6 = a2; - sprite->data7 = a3; + sprite->data[6] = a2; + sprite->data[7] = a3; sprite->flags_f = 1; } diff --git a/src/starter_choose.c b/src/starter_choose.c index 8cf3cfefa..82f8f75f6 100644 --- a/src/starter_choose.c +++ b/src/starter_choose.c @@ -12,7 +12,7 @@ #include "decompress.h" #include "menu.h" #include "sound.h" -#include "songs.h" +#include "constants/songs.h" #include "event_data.h" #include "pokedex.h" #include "data2.h" @@ -170,20 +170,20 @@ void CB2_ChooseStarter(void) // Create hand sprite spriteId = CreateSprite(&sSpriteTemplate_Hand, 120, 56, 2); - gSprites[spriteId].data0 = taskId; + gSprites[spriteId].data[0] = taskId; // Create three Pokeball sprites spriteId = CreateSprite(&sSpriteTemplate_PokeBall, sPokeballCoords[0][0], sPokeballCoords[0][1], 2); - gSprites[spriteId].data0 = taskId; - gSprites[spriteId].data1 = 0; + gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].data[1] = 0; spriteId = CreateSprite(&sSpriteTemplate_PokeBall, sPokeballCoords[1][0], sPokeballCoords[1][1], 2); - gSprites[spriteId].data0 = taskId; - gSprites[spriteId].data1 = 1; + gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].data[1] = 1; spriteId = CreateSprite(&sSpriteTemplate_PokeBall, sPokeballCoords[2][0], sPokeballCoords[2][1], 2); - gSprites[spriteId].data0 = taskId; - gSprites[spriteId].data1 = 2; + gSprites[spriteId].data[0] = taskId; + gSprites[spriteId].data[1] = 2; sStarterChooseWindowId = 0xFF; } @@ -363,15 +363,15 @@ static u8 CreatePokemonFrontSprite(u16 species, u8 x, u8 y) static void sub_81346DC(struct Sprite *sprite) { - sprite->pos1.x = gUnknown_085B1E28[gTasks[sprite->data0].tStarterSelection][0]; - sprite->pos1.y = gUnknown_085B1E28[gTasks[sprite->data0].tStarterSelection][1]; - sprite->pos2.y = Sin(sprite->data1, 8); - sprite->data1 = (u8)(sprite->data1) + 4; + sprite->pos1.x = gUnknown_085B1E28[gTasks[sprite->data[0]].tStarterSelection][0]; + sprite->pos1.y = gUnknown_085B1E28[gTasks[sprite->data[0]].tStarterSelection][1]; + sprite->pos2.y = Sin(sprite->data[1], 8); + sprite->data[1] = (u8)(sprite->data[1]) + 4; } static void sub_813473C(struct Sprite *sprite) { - if (gTasks[sprite->data0].tStarterSelection == sprite->data1) + if (gTasks[sprite->data[0]].tStarterSelection == sprite->data[1]) StartSpriteAnimIfDifferent(sprite, 1); else StartSpriteAnimIfDifferent(sprite, 0); @@ -3,8 +3,8 @@ #include "global.h" #include "rtc.h" #include "overworld.h" -#include "map_constants.h" -#include "rng.h" +#include "constants/maps.h" +#include "random.h" #include "event_data.h" #include "fieldmap.h" #include "field_camera.h" @@ -14,12 +14,12 @@ #include "pokemon_storage_system.h" #include "field_message_box.h" #include "easy_chat.h" -#include "species.h" -#include "moves.h" +#include "constants/species.h" +#include "constants/moves.h" #include "battle.h" #include "battle_tower.h" #include "contest.h" -#include "items.h" +#include "constants/items.h" #include "item.h" #include "link.h" #include "main.h" @@ -38,6 +38,9 @@ #include "secret_base.h" #include "tv.h" +extern const u8 gSpeciesNames[][11]; +extern const u8 gMoveNames[][13]; + // Static type declarations #define rbernoulli(num, den) TV_BernoulliTrial(0xFFFF * (num) / (den)) @@ -832,7 +835,7 @@ void UpdateTVScreensOnMap(int width, int height) case 2: break; default: - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_LILYCOVE_CITY_COVE_LILY_MOTEL_1F && gSaveBlock1Ptr->location.mapNum == MAP_ID_LILYCOVE_CITY_COVE_LILY_MOTEL_1F) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_COVE_LILY_MOTEL_1F) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_COVE_LILY_MOTEL_1F)) { SetTVMetatilesOnMap(width, height, 0x3); } @@ -1575,7 +1578,9 @@ void SaveRecordedItemPurchasesForTVShow(void) TVShow *show; u8 i; - if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_TRAINER_HILL_LOBBY && gSaveBlock1Ptr->location.mapNum == MAP_ID_TRAINER_HILL_LOBBY) && !(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_BATTLE_FRONTIER_MART && gSaveBlock1Ptr->location.mapNum == MAP_ID_BATTLE_FRONTIER_MART) && !rbernoulli(1, 3)) + if (!(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(TRAINER_HILL_ENTRANCE) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(TRAINER_HILL_ENTRANCE)) + && !(gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(BATTLE_FRONTIER_MART) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(BATTLE_FRONTIER_MART)) + && !rbernoulli(1, 3)) { sCurTVShowSlot = FindEmptyTVSlotBeyondFirstFiveShowsOfArray(gSaveBlock1Ptr->tvShows); if (sCurTVShowSlot != -1 && HasMixableShowAlreadyBeenSpawnedWithPlayerID(TVSHOW_SMART_SHOPPER, FALSE) != TRUE) @@ -2959,13 +2964,13 @@ bool8 IsPriceDiscounted(u8 newsKind) switch (newsKind) { case POKENEWS_SLATEPORT: - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_SLATEPORT_CITY && gSaveBlock1Ptr->location.mapNum == MAP_ID_SLATEPORT_CITY && gSpecialVar_LastTalked == 25) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(SLATEPORT_CITY) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(SLATEPORT_CITY) && gSpecialVar_LastTalked == 25) { return TRUE; } return FALSE; case POKENEWS_LILYCOVE: - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP && gSaveBlock1Ptr->location.mapNum == MAP_ID_LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP) && gSaveBlock1Ptr->location.mapNum == MAP_NUM(LILYCOVE_CITY_DEPARTMENT_STORE_ROOFTOP)) { return TRUE; } @@ -3694,20 +3699,20 @@ u32 GetPlayerIDAsU32(void) u8 CheckForBigMovieOrEmergencyNewsOnTV(void) { - if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F)) { return 0; } if (gSaveBlock2Ptr->playerGender == MALE) { - if (gSaveBlock1Ptr->location.mapNum != MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F)) { return 0; } } else { - if (gSaveBlock1Ptr->location.mapNum != MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapNum != MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_1F)) { return 0; } @@ -3725,11 +3730,11 @@ u8 CheckForBigMovieOrEmergencyNewsOnTV(void) void GetMomOrDadStringForTVMessage(void) { - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F)) { if (gSaveBlock2Ptr->playerGender == MALE) { - if (gSaveBlock1Ptr->location.mapNum == MAP_ID_LITTLEROOT_TOWN_BRENDANS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(LITTLEROOT_TOWN_BRENDANS_HOUSE_1F)) { StringCopy(gStringVar1, gText_Mom); VarSet(VAR_0x4003, 1); @@ -3737,7 +3742,7 @@ void GetMomOrDadStringForTVMessage(void) } else { - if (gSaveBlock1Ptr->location.mapNum == MAP_ID_LITTLEROOT_TOWN_MAYS_HOUSE_1F) + if (gSaveBlock1Ptr->location.mapNum == MAP_NUM(LITTLEROOT_TOWN_MAYS_HOUSE_1F)) { StringCopy(gStringVar1, gText_Mom); VarSet(VAR_0x4003, 1); diff --git a/src/wild_encounter.c b/src/wild_encounter.c index ce1e02e5e..705c4416c 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -1,23 +1,24 @@ #include "global.h" #include "wild_encounter.h" #include "pokemon.h" -#include "species.h" +#include "constants/species.h" #include "metatile_behavior.h" #include "fieldmap.h" -#include "rng.h" -#include "map_constants.h" +#include "random.h" +#include "constants/maps.h" #include "field_player_avatar.h" -#include "abilities.h" +#include "constants/abilities.h" #include "event_data.h" #include "safari_zone.h" +#include "overworld.h" #include "pokeblock.h" #include "battle_setup.h" #include "roamer.h" -#include "game_stat.h" +#include "constants/game_stat.h" #include "tv.h" #include "link.h" #include "script.h" -#include "items.h" +#include "constants/items.h" extern const u8 EventScript_RepelWoreOff[]; @@ -84,8 +85,8 @@ static bool8 CheckFeebas(void) u8 route119Section = 0; u16 waterTileNum; - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_ROUTE119 - && gSaveBlock1Ptr->location.mapNum == MAP_ID_ROUTE119) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ROUTE119) + && gSaveBlock1Ptr->location.mapNum == MAP_NUM(ROUTE119)) { GetXYCoordsOneStepInFrontOfPlayer(&x, &y); x -= 7; @@ -283,8 +284,8 @@ static u16 GetCurrentMapWildMonHeaderId(void) if (gWildMonHeaders[i].mapGroup == gSaveBlock1Ptr->location.mapGroup && gWildMonHeaders[i].mapNum == gSaveBlock1Ptr->location.mapNum) { - if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP_ALTERING_CAVE && - gSaveBlock1Ptr->location.mapNum == MAP_ID_ALTERING_CAVE) + if (gSaveBlock1Ptr->location.mapGroup == MAP_GROUP(ALTERING_CAVE) && + gSaveBlock1Ptr->location.mapNum == MAP_NUM(ALTERING_CAVE)) { u16 alteringCaveId = VarGet(VAR_ALTERING_CAVE_WILD_SET); if (alteringCaveId > 8) @@ -513,8 +514,8 @@ static bool8 DoGlobalWildEncounterDiceRoll(void) static bool8 AreLegendariesInSootopolisPreventingEncounters(void) { - if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP_SOOTOPOLIS_CITY - || gSaveBlock1Ptr->location.mapNum != MAP_ID_SOOTOPOLIS_CITY) + if (gSaveBlock1Ptr->location.mapGroup != MAP_GROUP(SOOTOPOLIS_CITY) + || gSaveBlock1Ptr->location.mapNum != MAP_NUM(SOOTOPOLIS_CITY)) { return FALSE; } diff --git a/sym_bss.txt b/sym_bss.txt index e2f03b8f3..a4d3c2d82 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -2,32 +2,32 @@ .include "src/malloc.o" .include "src/dma3_manager.o" .include "src/gpu_regs.o" - .include "src/bg.o" + .include "src/bg.o" .include "src/text.o" .include "src/sprite.o" - .include "src/link.o" - .include "src/rtc.o" - .include "src/main_menu.o" - .include "src/battle_1.o" - .include "src/egg_hatch.o" - .include "src/berry_blender.o" - .include "src/play_time.o" - .include "src/rom4.o" - .include "src/field_camera.o" - .include "src/script.o" - .include "src/scrcmd.o" - .include "src/tileset_anims.o" - .include "src/palette.o" - .include "src/sound.o" - .include "src/field_screen.o" - .include "src/field_effect.o" - .include "src/pokemon_storage_system.o" - .include "src/fldeff_cut.o" - .include "src/script_menu.o" - .include "src/record_mixing.o" - .include "src/tv.o" - - .space 1 @ TODO: define this u32 in mauville_old_man + .include "src/link.o" + .include "src/rtc.o" + .include "src/main_menu.o" + .include "src/battle_1.o" + .include "src/egg_hatch.o" + .include "src/berry_blender.o" + .include "src/play_time.o" + .include "src/overworld.o" + .include "src/field_camera.o" + .include "src/script.o" + .include "src/scrcmd.o" + .include "src/tileset_anims.o" + .include "src/palette.o" + .include "src/sound.o" + .include "src/field_screen.o" + .include "src/field_effect.o" + .include "src/pokemon_storage_system.o" + .include "src/fldeff_cut.o" + .include "src/script_menu.o" + .include "src/record_mixing.o" + .include "src/tv.o" + + .space 1 @ TODO: define this u32 in mauville_old_man gUnknown_03001178: @ 3001178 .space 0x4 @@ -54,9 +54,9 @@ gUnknown_030011F6: @ 30011F6 gUnknown_030011F7: @ 30011F7 .space 0x1 - .include "src/starter_choose.o" - - .align 0x2 + .include "src/starter_choose.o" + + .align 0x2 gUnknown_030011FC: @ 30011FC .space 0x2 @@ -138,7 +138,7 @@ gUnknown_03001298: @ 3001298 gUnknown_030012A8: @ 30012A8 .space 0x10 - .include "src/berry_fix_program.o" + .include "src/berry_fix_program.o" gUnknown_030012BC: @ 30012BC .space 0x4 diff --git a/sym_ewram.txt b/sym_ewram.txt index ee47f8e37..c35c21df6 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -543,7 +543,7 @@ gUnknown_0202499C: @ 202499C gUnknown_020249B4: @ 20249B4 .space 0x8 - .include "src/rng.o" + .include "src/random.o" .include "src/daycare.o" .include "src/load_save.o" |