ScrCmd_cmdC7; merge pikalaxalt/trainer_tower into pikalaxalt/scrcmd

This commit is contained in:
scnorton
2019-01-06 13:43:01 -05:00
17 changed files with 531 additions and 1046 deletions
-18
View File
@@ -5,24 +5,6 @@
.text .text
thumb_func_start ScrCmd_cmdC7
ScrCmd_cmdC7: @ 806B7EC
ldr r2, _0806B804 @ =gUnknown_20370DC
ldr r3, _0806B808 @ =gUnknown_20370DA
ldrh r1, [r3]
strh r1, [r2]
ldr r1, [r0, 0x8]
ldrb r2, [r1]
strh r2, [r3]
adds r1, 0x1
str r1, [r0, 0x8]
movs r0, 0
bx lr
.align 2, 0
_0806B804: .4byte gUnknown_20370DC
_0806B808: .4byte gUnknown_20370DA
thumb_func_end ScrCmd_cmdC7
thumb_func_start ScrCmd_message thumb_func_start ScrCmd_message
ScrCmd_message: @ 806B80C ScrCmd_message: @ 806B80C
push {r4,lr} push {r4,lr}
+55 -714
View File
@@ -5,720 +5,6 @@
.text .text
thumb_func_start sub_815E068
sub_815E068: @ 815E068
push {r4,r5,lr}
lsls r0, 24
lsrs r0, 24
adds r3, r0, 0
lsls r1, 24
lsrs r2, r1, 24
movs r5, 0
cmp r0, 0x1
beq _0815E0B4
cmp r0, 0x1
bgt _0815E084
cmp r0, 0
beq _0815E088
b _0815E0F8
_0815E084:
cmp r3, 0x2
bne _0815E0F8
_0815E088:
movs r4, 0
ldr r0, _0815E0B0 @ =gUnknown_8479ED8
ldrb r1, [r0, 0x1]
adds r3, r0, 0
cmp r1, r2
beq _0815E0A4
adds r1, r3, 0
_0815E096:
adds r1, 0x4
adds r4, 0x1
cmp r4, 0x52
bhi _0815E0A4
ldrb r0, [r1, 0x1]
cmp r0, r2
bne _0815E096
_0815E0A4:
cmp r4, 0x53
beq _0815E0F8
lsls r0, r4, 2
adds r0, r3
ldrb r5, [r0, 0x2]
b _0815E0F8
.align 2, 0
_0815E0B0: .4byte gUnknown_8479ED8
_0815E0B4:
movs r4, 0
ldr r1, _0815E0BC @ =gUnknown_847A024
b _0815E0C8
.align 2, 0
_0815E0BC: .4byte gUnknown_847A024
_0815E0C0:
adds r1, 0x8
adds r4, 0x1
cmp r4, 0x9
bhi _0815E0CE
_0815E0C8:
ldrb r0, [r1, 0x2]
cmp r0, r2
bne _0815E0C0
_0815E0CE:
cmp r4, 0xA
beq _0815E0F8
ldr r0, _0815E0E8 @ =0x00004003
bl VarGet
lsls r0, 16
cmp r0, 0
beq _0815E0F0
ldr r1, _0815E0EC @ =gUnknown_847A024
lsls r0, r4, 3
adds r0, r1
ldrb r5, [r0, 0x4]
b _0815E0F8
.align 2, 0
_0815E0E8: .4byte 0x00004003
_0815E0EC: .4byte gUnknown_847A024
_0815E0F0:
ldr r1, _0815E108 @ =gUnknown_847A024
lsls r0, r4, 3
adds r0, r1
ldrb r5, [r0, 0x3]
_0815E0F8:
ldr r2, _0815E10C @ =gUnknown_20370DC
ldr r1, _0815E110 @ =gUnknown_20370DA
ldrh r0, [r1]
strh r0, [r2]
strh r5, [r1]
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0815E108: .4byte gUnknown_847A024
_0815E10C: .4byte gUnknown_20370DC
_0815E110: .4byte gUnknown_20370DA
thumb_func_end sub_815E068
thumb_func_start sub_815E114
sub_815E114: @ 815E114
push {lr}
ldr r0, _0815E120 @ =c2_exit_to_overworld_1_continue_scripts_restart_music
bl SetMainCallback2
pop {r0}
bx r0
.align 2, 0
_0815E120: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music
thumb_func_end sub_815E114
thumb_func_start sub_815E124
sub_815E124: @ 815E124
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
bl sub_80D08F8
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815E14C
ldr r0, _0815E154 @ =gMain
ldr r1, _0815E158 @ =sub_815E114
str r1, [r0, 0x8]
bl sub_80563F0
ldr r0, _0815E15C @ =sub_800FD9C
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
_0815E14C:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0815E154: .4byte gMain
_0815E158: .4byte sub_815E114
_0815E15C: .4byte sub_800FD9C
thumb_func_end sub_815E124
thumb_func_start sub_815E160
sub_815E160: @ 815E160
push {r4,lr}
ldr r4, _0815E1AC @ =gBattleTypeFlags
ldr r3, _0815E1B0 @ =0x00080008
str r3, [r4]
ldr r0, _0815E1B4 @ =gUnknown_203F458
ldr r1, [r0]
ldrb r2, [r1]
lsls r0, r2, 5
subs r0, r2
lsls r0, 5
adds r1, r0
ldrb r0, [r1, 0xE]
cmp r0, 0x1
bne _0815E180
orrs r0, r3
str r0, [r4]
_0815E180:
ldr r1, _0815E1B8 @ =gTrainerBattleOpponent_A
movs r0, 0
strh r0, [r1]
bl sub_815E9FC
ldr r0, _0815E1BC @ =sub_815E124
movs r1, 0x1
bl CreateTask
movs r0, 0
bl PlayMapChosenOrBattleBGM
bl sub_8080060
lsls r0, 24
lsrs r0, 24
bl sub_80D08B8
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0815E1AC: .4byte gBattleTypeFlags
_0815E1B0: .4byte 0x00080008
_0815E1B4: .4byte gUnknown_203F458
_0815E1B8: .4byte gTrainerBattleOpponent_A
_0815E1BC: .4byte sub_815E124
thumb_func_end sub_815E160
thumb_func_start sub_815E1C0
sub_815E1C0: @ 815E1C0
push {lr}
ldr r0, _0815E1E4 @ =gSpecialVar_0x8005
ldrh r0, [r0]
cmp r0, 0
bne _0815E1DE
ldr r3, _0815E1E8 @ =gSpecialVar_Result
ldr r0, _0815E1EC @ =gUnknown_203F458
ldr r1, [r0]
ldrb r2, [r1]
lsls r0, r2, 5
subs r0, r2
lsls r0, 5
adds r1, r0
ldrb r0, [r1, 0xE]
strh r0, [r3]
_0815E1DE:
pop {r0}
bx r0
.align 2, 0
_0815E1E4: .4byte gSpecialVar_0x8005
_0815E1E8: .4byte gSpecialVar_Result
_0815E1EC: .4byte gUnknown_203F458
thumb_func_end sub_815E1C0
thumb_func_start sub_815E1F0
sub_815E1F0: @ 815E1F0
ldr r0, _0815E210 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0815E214 @ =0x00003d34
adds r0, r1, r2
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
movs r0, 0xF5
lsls r0, 6
adds r1, r0
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
bx lr
.align 2, 0
_0815E210: .4byte gSaveBlock1Ptr
_0815E214: .4byte 0x00003d34
thumb_func_end sub_815E1F0
thumb_func_start sub_815E218
sub_815E218: @ 815E218
push {lr}
ldr r0, _0815E260 @ =gMapHeader
ldrh r0, [r0, 0x12]
mov r12, r0
ldr r3, _0815E264 @ =0xfffffed6
add r3, r12
ldr r0, _0815E268 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0815E26C @ =0x00003d34
adds r0, r1, r2
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
movs r0, 0xF5
lsls r0, 6
adds r1, r0
ldrb r1, [r1]
cmp r3, r1
bne _0815E27C
ldr r3, _0815E270 @ =0xfffffed7
add r3, r12
ldr r0, _0815E274 @ =gUnknown_203F458
ldr r1, [r0]
ldrb r2, [r1]
lsls r0, r2, 5
subs r0, r2
lsls r0, 5
adds r1, r0
ldrb r1, [r1, 0xD]
cmp r3, r1
bgt _0815E27C
ldr r1, _0815E278 @ =gSpecialVar_Result
movs r0, 0
b _0815E280
.align 2, 0
_0815E260: .4byte gMapHeader
_0815E264: .4byte 0xfffffed6
_0815E268: .4byte gSaveBlock1Ptr
_0815E26C: .4byte 0x00003d34
_0815E270: .4byte 0xfffffed7
_0815E274: .4byte gUnknown_203F458
_0815E278: .4byte gSpecialVar_Result
_0815E27C:
ldr r1, _0815E288 @ =gSpecialVar_Result
movs r0, 0x1
_0815E280:
strh r0, [r1]
pop {r0}
bx r0
.align 2, 0
_0815E288: .4byte gSpecialVar_Result
thumb_func_end sub_815E218
thumb_func_start sub_815E28C
sub_815E28C: @ 815E28C
push {r4-r6,lr}
mov r6, r8
push {r6}
ldr r4, _0815E2D0 @ =gSaveBlock1Ptr
ldr r0, [r4]
ldr r5, _0815E2D4 @ =0x00003d34
adds r1, r0, r5
ldr r0, _0815E2D8 @ =gSpecialVar_0x8005
ldrh r0, [r0]
str r0, [r1]
cmp r0, 0x3
bls _0815E2A8
movs r0, 0
str r0, [r1]
_0815E2A8:
bl sub_815EC0C
bl sub_815D834
cmp r0, 0
bne _0815E2E0
ldr r1, [r4]
adds r0, r1, r5
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
ldr r0, _0815E2DC @ =0x00003d42
adds r1, r0
ldrb r0, [r1]
movs r2, 0x20
orrs r0, r2
b _0815E2FA
.align 2, 0
_0815E2D0: .4byte gSaveBlock1Ptr
_0815E2D4: .4byte 0x00003d34
_0815E2D8: .4byte gSpecialVar_0x8005
_0815E2DC: .4byte 0x00003d42
_0815E2E0:
ldr r1, [r4]
adds r0, r1, r5
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
ldr r0, _0815E384 @ =0x00003d42
adds r1, r0
ldrb r2, [r1]
movs r0, 0x21
negs r0, r0
ands r0, r2
_0815E2FA:
strb r0, [r1]
ldr r6, _0815E388 @ =gSaveBlock1Ptr
ldr r2, [r6]
ldr r5, _0815E38C @ =0x00003d34
adds r0, r2, r5
ldr r1, [r0]
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
adds r2, r0
movs r0, 0xF5
lsls r0, 6
adds r2, r0
movs r0, 0
mov r8, r0
mov r0, r8
strb r0, [r2]
ldr r0, [r6]
adds r1, r0, r5
ldr r2, [r1]
lsls r1, r2, 1
adds r1, r2
lsls r1, 2
ldr r4, _0815E390 @ =0x00003d38
adds r1, r4
adds r0, r1
bl SetVBlankCounter1Ptr
ldr r2, [r6]
adds r3, r2, r5
ldr r1, [r3]
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
adds r4, r2, r4
adds r4, r0
mov r0, r8
str r0, [r4]
ldr r1, [r3]
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
adds r2, r0
ldr r3, _0815E384 @ =0x00003d42
adds r2, r3
ldrb r1, [r2]
movs r0, 0x5
negs r0, r0
ands r0, r1
strb r0, [r2]
ldr r1, [r6]
adds r5, r1, r5
ldr r2, [r5]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
adds r1, r3
ldrb r2, [r1]
movs r0, 0x3
negs r0, r0
ands r0, r2
strb r0, [r1]
pop {r3}
mov r8, r3
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0815E384: .4byte 0x00003d42
_0815E388: .4byte gSaveBlock1Ptr
_0815E38C: .4byte 0x00003d34
_0815E390: .4byte 0x00003d38
thumb_func_end sub_815E28C
thumb_func_start sub_815E394
sub_815E394: @ 815E394
push {lr}
bl DisableVBlankCounter1
ldr r3, _0815E3F8 @ =gSpecialVar_Result
movs r0, 0
strh r0, [r3]
ldr r0, _0815E3FC @ =gSaveBlock1Ptr
ldr r2, [r0]
ldr r1, _0815E400 @ =0x00003d34
adds r0, r2, r1
ldr r1, [r0]
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
adds r2, r0
ldr r0, _0815E404 @ =0x00003d42
adds r2, r0
ldrb r0, [r2]
lsls r0, 29
cmp r0, 0
bge _0815E3C2
movs r0, 0x1
strh r0, [r3]
_0815E3C2:
ldrb r2, [r2]
lsls r0, r2, 31
cmp r0, 0
beq _0815E3D6
lsls r0, r2, 30
cmp r0, 0
bge _0815E3D6
ldrh r0, [r3]
adds r0, 0x1
strh r0, [r3]
_0815E3D6:
ldr r0, _0815E3FC @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0815E400 @ =0x00003d34
adds r0, r1, r2
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
ldr r0, _0815E404 @ =0x00003d42
adds r1, r0
ldrb r0, [r1]
movs r2, 0x4
orrs r0, r2
strb r0, [r1]
pop {r0}
bx r0
.align 2, 0
_0815E3F8: .4byte gSpecialVar_Result
_0815E3FC: .4byte gSaveBlock1Ptr
_0815E400: .4byte 0x00003d34
_0815E404: .4byte 0x00003d42
thumb_func_end sub_815E394
thumb_func_start sub_815E408
sub_815E408: @ 815E408
push {r4-r7,lr}
mov r7, r8
push {r7}
ldr r1, _0815E444 @ =gUnknown_847A2B4
ldr r0, _0815E448 @ =gUnknown_203F458
ldr r0, [r0]
ldrb r0, [r0, 0xF]
lsls r0, 1
adds r0, r1
ldrh r4, [r0]
ldr r0, _0815E44C @ =gSaveBlock1Ptr
mov r8, r0
ldr r2, [r0]
ldr r7, _0815E450 @ =0x00003d34
adds r0, r2, r7
ldr r1, [r0]
lsls r0, r1, 1
adds r0, r1
lsls r0, 2
adds r2, r0
ldr r6, _0815E454 @ =0x00003d42
adds r2, r6
ldrb r0, [r2]
lsls r0, 31
lsrs r5, r0, 31
cmp r5, 0
beq _0815E45C
ldr r1, _0815E458 @ =gSpecialVar_Result
movs r0, 0x2
b _0815E4A0
.align 2, 0
_0815E444: .4byte gUnknown_847A2B4
_0815E448: .4byte gUnknown_203F458
_0815E44C: .4byte gSaveBlock1Ptr
_0815E450: .4byte 0x00003d34
_0815E454: .4byte 0x00003d42
_0815E458: .4byte gSpecialVar_Result
_0815E45C:
adds r0, r4, 0
movs r1, 0x1
bl AddBagItem
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815E49C
ldr r1, _0815E494 @ =gStringVar2
adds r0, r4, 0
bl sub_8099E90
mov r0, r8
ldr r1, [r0]
adds r0, r1, r7
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
adds r1, r6
ldrb r0, [r1]
movs r2, 0x1
orrs r0, r2
strb r0, [r1]
ldr r0, _0815E498 @ =gSpecialVar_Result
strh r5, [r0]
b _0815E4A2
.align 2, 0
_0815E494: .4byte gStringVar2
_0815E498: .4byte gSpecialVar_Result
_0815E49C:
ldr r1, _0815E4AC @ =gSpecialVar_Result
movs r0, 0x1
_0815E4A0:
strh r0, [r1]
_0815E4A2:
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0815E4AC: .4byte gSpecialVar_Result
thumb_func_end sub_815E408
thumb_func_start sub_815E4B0
sub_815E4B0: @ 815E4B0
push {r4-r6,lr}
ldr r6, _0815E4D8 @ =gSaveBlock1Ptr
ldr r2, [r6]
ldr r1, _0815E4DC @ =0x00003d34
adds r0, r2, r1
ldr r1, [r0]
lsls r0, r1, 1
adds r0, r1
lsls r1, r0, 2
adds r0, r2, r1
ldr r3, _0815E4E0 @ =0x00003d42
adds r0, r3
ldrb r0, [r0]
lsls r0, 30
lsrs r5, r0, 31
cmp r5, 0
beq _0815E4E8
ldr r1, _0815E4E4 @ =gSpecialVar_Result
movs r0, 0x2
b _0815E534
.align 2, 0
_0815E4D8: .4byte gSaveBlock1Ptr
_0815E4DC: .4byte 0x00003d34
_0815E4E0: .4byte 0x00003d42
_0815E4E4: .4byte gSpecialVar_Result
_0815E4E8:
ldr r4, _0815E520 @ =0x00003d38
adds r0, r1, r4
adds r0, r2, r0
adds r0, 0x4
bl sub_815EDDC
ldr r3, [r6]
ldr r2, _0815E524 @ =0x00003d34
adds r1, r3, r2
ldr r2, [r1]
lsls r1, r2, 1
adds r1, r2
lsls r1, 2
adds r4, r3, r4
adds r4, r1
ldr r4, [r4]
cmp r0, r4
bls _0815E530
adds r0, r1, r3
ldr r3, _0815E528 @ =0x00003d3c
adds r0, r3
adds r1, r4, 0
bl sub_815EDF4
ldr r0, _0815E52C @ =gSpecialVar_Result
strh r5, [r0]
b _0815E536
.align 2, 0
_0815E520: .4byte 0x00003d38
_0815E524: .4byte 0x00003d34
_0815E528: .4byte 0x00003d3c
_0815E52C: .4byte gSpecialVar_Result
_0815E530:
ldr r1, _0815E55C @ =gSpecialVar_Result
movs r0, 0x1
_0815E534:
strh r0, [r1]
_0815E536:
ldr r0, _0815E560 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0815E564 @ =0x00003d34
adds r0, r1, r2
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
ldr r3, _0815E568 @ =0x00003d42
adds r1, r3
ldrb r0, [r1]
movs r2, 0x2
orrs r0, r2
strb r0, [r1]
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0815E55C: .4byte gSpecialVar_Result
_0815E560: .4byte gSaveBlock1Ptr
_0815E564: .4byte 0x00003d34
_0815E568: .4byte 0x00003d42
thumb_func_end sub_815E4B0
thumb_func_start sub_815E56C
sub_815E56C: @ 815E56C
push {r4,lr}
ldr r0, _0815E5A0 @ =gSaveBlock1Ptr
ldr r4, [r0]
ldr r1, _0815E5A4 @ =0x00003d34
adds r0, r4, r1
ldr r1, [r0]
lsls r0, r1, 1
adds r0, r1
lsls r3, r0, 2
adds r0, r4, r3
ldr r1, _0815E5A8 @ =0x00003d42
adds r0, r1
ldrb r0, [r0]
lsls r0, 29
cmp r0, 0
blt _0815E5BA
subs r1, 0xA
adds r0, r4, r1
adds r2, r0, r3
ldr r1, [r2]
ldr r0, _0815E5AC @ =0x00034bbe
cmp r1, r0
bls _0815E5B0
adds r0, 0x1
str r0, [r2]
b _0815E5BA
.align 2, 0
_0815E5A0: .4byte gSaveBlock1Ptr
_0815E5A4: .4byte 0x00003d34
_0815E5A8: .4byte 0x00003d42
_0815E5AC: .4byte 0x00034bbe
_0815E5B0:
ldr r1, _0815E5C0 @ =0x00003d38
adds r0, r3, r1
adds r0, r4, r0
bl SetVBlankCounter1Ptr
_0815E5BA:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0815E5C0: .4byte 0x00003d38
thumb_func_end sub_815E56C
thumb_func_start sub_815E5C4
sub_815E5C4: @ 815E5C4
ldr r0, _0815E5E4 @ =gSaveBlock1Ptr
ldr r1, [r0]
ldr r2, _0815E5E8 @ =0x00003d34
adds r0, r1, r2
ldr r2, [r0]
lsls r0, r2, 1
adds r0, r2
lsls r0, 2
adds r1, r0
ldr r0, _0815E5EC @ =0x00003d42
adds r1, r0
ldrb r0, [r1]
movs r2, 0x8
orrs r0, r2
strb r0, [r1]
bx lr
.align 2, 0
_0815E5E4: .4byte gSaveBlock1Ptr
_0815E5E8: .4byte 0x00003d34
_0815E5EC: .4byte 0x00003d42
thumb_func_end sub_815E5C4
thumb_func_start sub_815E5F0 thumb_func_start sub_815E5F0
sub_815E5F0: @ 815E5F0 sub_815E5F0: @ 815E5F0
push {lr} push {lr}
@@ -1676,4 +962,59 @@ _0815EDD4: .4byte gUnknown_83FE998
_0815EDD8: .4byte gUnknown_83FE9C4 _0815EDD8: .4byte gUnknown_83FE9C4
thumb_func_end sub_815EC8C thumb_func_end sub_815EC8C
thumb_func_start sub_815EDDC
sub_815EDDC: @ 815EDDC
ldr r1, _0815EDF0 @ =gSaveBlock2Ptr
ldr r1, [r1]
movs r2, 0xF2
lsls r2, 4
adds r1, r2
ldr r0, [r0]
ldr r1, [r1]
eors r0, r1
bx lr
.align 2, 0
_0815EDF0: .4byte gSaveBlock2Ptr
thumb_func_end sub_815EDDC
thumb_func_start sub_815EDF4
sub_815EDF4: @ 815EDF4
ldr r2, _0815EE08 @ =gSaveBlock2Ptr
ldr r2, [r2]
movs r3, 0xF2
lsls r3, 4
adds r2, r3
ldr r2, [r2]
eors r2, r1
str r2, [r0]
bx lr
.align 2, 0
_0815EE08: .4byte gSaveBlock2Ptr
thumb_func_end sub_815EDF4
thumb_func_start sub_815EE0C
sub_815EE0C: @ 815EE0C
push {r4-r6,lr}
ldr r6, _0815EE30 @ =gSaveBlock1Ptr
ldr r5, _0815EE34 @ =0x00003d38
movs r4, 0x3
_0815EE14:
ldr r0, [r6]
adds r0, r5
adds r0, 0x4
ldr r1, _0815EE38 @ =0x00034bbf
bl sub_815EDF4
adds r5, 0xC
subs r4, 0x1
cmp r4, 0
bge _0815EE14
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0815EE30: .4byte gSaveBlock1Ptr
_0815EE34: .4byte 0x00003d38
_0815EE38: .4byte 0x00034bbf
thumb_func_end sub_815EE0C
.align 2, 0 @ Don't pad with nop. .align 2, 0 @ Don't pad with nop.
-55
View File
@@ -5,61 +5,6 @@
.text .text
thumb_func_start sub_815EDDC
sub_815EDDC: @ 815EDDC
ldr r1, _0815EDF0 @ =gSaveBlock2Ptr
ldr r1, [r1]
movs r2, 0xF2
lsls r2, 4
adds r1, r2
ldr r0, [r0]
ldr r1, [r1]
eors r0, r1
bx lr
.align 2, 0
_0815EDF0: .4byte gSaveBlock2Ptr
thumb_func_end sub_815EDDC
thumb_func_start sub_815EDF4
sub_815EDF4: @ 815EDF4
ldr r2, _0815EE08 @ =gSaveBlock2Ptr
ldr r2, [r2]
movs r3, 0xF2
lsls r3, 4
adds r2, r3
ldr r2, [r2]
eors r2, r1
str r2, [r0]
bx lr
.align 2, 0
_0815EE08: .4byte gSaveBlock2Ptr
thumb_func_end sub_815EDF4
thumb_func_start sub_815EE0C
sub_815EE0C: @ 815EE0C
push {r4-r6,lr}
ldr r6, _0815EE30 @ =gSaveBlock1Ptr
ldr r5, _0815EE34 @ =0x00003d38
movs r4, 0x3
_0815EE14:
ldr r0, [r6]
adds r0, r5
adds r0, 0x4
ldr r1, _0815EE38 @ =0x00034bbf
bl sub_815EDF4
adds r5, 0xC
subs r4, 0x1
cmp r4, 0
bge _0815EE14
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0815EE30: .4byte gSaveBlock1Ptr
_0815EE34: .4byte 0x00003d38
_0815EE38: .4byte 0x00034bbf
thumb_func_end sub_815EE0C
thumb_func_start sub_815EE3C thumb_func_start sub_815EE3C
sub_815EE3C: @ 815EE3C sub_815EE3C: @ 815EE3C
ldr r1, _0815EE50 @ =gSaveBlock2Ptr ldr r1, _0815EE50 @ =gSaveBlock2Ptr
+18 -2
View File
@@ -1,5 +1,7 @@
#include "constants/items.h"
.include "asm/macros.inc" .include "asm/macros.inc"
.include "constants/constants.inc" .include "constants/gba_constants.inc"
.include "constants/misc_constants.inc"
.section .rodata .section .rodata
@@ -562,7 +564,21 @@ gUnknown_847A284:: @ 847A284
.2byte 0x0131, 0x0175, 0x017d .2byte 0x0131, 0x0175, 0x017d
gUnknown_847A2B4:: @ 847A2B4 gUnknown_847A2B4:: @ 847A2B4
.2byte 0x3f, 0x40, 0x41, 0x42, 0x43, 0x46, 0xb3, 0xb4, 0xb9, 0xba, 0xbb, 0xc6, 0xc7, 0xc9, 0xda .2byte ITEM_HP_UP
.2byte ITEM_PROTEIN
.2byte ITEM_IRON
.2byte ITEM_CARBOS
.2byte ITEM_CALCIUM
.2byte ITEM_ZINC
.2byte ITEM_BRIGHT_POWDER
.2byte ITEM_WHITE_HERB
.2byte ITEM_MENTAL_HERB
.2byte ITEM_CHOICE_BAND
.2byte ITEM_KINGS_ROCK
.2byte ITEM_SCOPE_LENS
.2byte ITEM_METAL_COAT
.2byte ITEM_DRAGON_SCALE
.2byte ITEM_UP_GRADE
gUnknown_847A2D2:: @ 847A2D2 gUnknown_847A2D2:: @ 847A2D2
.2byte 0x011d .2byte 0x011d
+124 -124
View File
@@ -22,8 +22,8 @@
.macro dummy_tower_team .macro dummy_tower_team
.string "$", 11 .string "$", 11
.byte FACILITY_CLASS_AQUA_LEADER, 0x01, 0x00 .byte FACILITY_CLASS_AQUA_LEADER, 0x01
.align 1
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -41,8 +41,8 @@
gUnknown_847ABAC:: gUnknown_847ABAC::
.byte 0x01, 0x08, 0x00, 0x07 .byte 0x01, 0x08, 0x00, 0x07
.string "COLE$", 11 .string "COLE$", 11
.byte FACILITY_CLASS_YOUNGSTER_2, 0x01, 0x00 .byte FACILITY_CLASS_YOUNGSTER_2, 0x01
.align 1
.2byte EC_WORD_AHAHA, EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_GOING, EC_WORD_ANYWHERE, EC_WORD_EXCL .2byte EC_WORD_AHAHA, EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_GOING, EC_WORD_ANYWHERE, EC_WORD_EXCL
.2byte EC_WORD_ALL_RIGHT, EC_WORD_EXCL, EC_WORD_BYE_BYE, EC_WORD_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_ALL_RIGHT, EC_WORD_EXCL, EC_WORD_BYE_BYE, EC_WORD_EXCL, 0xFFFF, 0xFFFF
.2byte EC_WORD_HIYAH, EC_WORD_EXCL_EXCL, EC_WORD_DONE, EC_WORD_IN, EC_WORD_TOTALLY, EC_WORD_EXCL_EXCL .2byte EC_WORD_HIYAH, EC_WORD_EXCL_EXCL, EC_WORD_DONE, EC_WORD_IN, EC_WORD_TOTALLY, EC_WORD_EXCL_EXCL
@@ -128,8 +128,8 @@ gUnknown_847ABAC::
gUnknown_847AF8C:: gUnknown_847AF8C::
.byte 0x02, 0x08, 0x00, 0x0d .byte 0x02, 0x08, 0x00, 0x0d
.string "JAC$", 11 .string "JAC$", 11
.byte FACILITY_CLASS_BURGLAR, 0x01, 0x00 .byte FACILITY_CLASS_BURGLAR, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_A, EC_MOVE2(THIEF), EC_WORD_EXCL, EC_WORD_GIVE_ME, EC_WORD_SOMETHING .2byte EC_WORD_I_AM, EC_WORD_A, EC_MOVE2(THIEF), EC_WORD_EXCL, EC_WORD_GIVE_ME, EC_WORD_SOMETHING
.2byte EC_WORD_YOU_VE, EC_WORD_GOT, EC_WORD_NOTHING, EC_WORD_THAT, EC_WORD_I, EC_WORD_WANT .2byte EC_WORD_YOU_VE, EC_WORD_GOT, EC_WORD_NOTHING, EC_WORD_THAT, EC_WORD_I, EC_WORD_WANT
.2byte EC_WORD_EEK, EC_WORD_EXCL_EXCL, EC_WORD_I_AM, EC_WORD_SORRY, EC_WORD_I, EC_WORD_SURRENDER .2byte EC_WORD_EEK, EC_WORD_EXCL_EXCL, EC_WORD_I_AM, EC_WORD_SORRY, EC_WORD_I, EC_WORD_SURRENDER
@@ -215,8 +215,8 @@ gUnknown_847AF8C::
gUnknown_847B36C:: gUnknown_847B36C::
.byte 0x03, 0x08, 0x00, 0x02 .byte 0x03, 0x08, 0x00, 0x02
.string "MILY$", 11 .string "MILY$", 11
.byte FACILITY_CLASS_PSYCHIC_4, 0x01, 0x00 .byte FACILITY_CLASS_PSYCHIC_4, 0x01
.align 1
.2byte EC_WORD_LOOK, EC_WORD_AT, EC_WORD_MY, EC_WORD_POKEMON, EC_MOVE2(SUPERPOWER), EC_WORD_EXCL .2byte EC_WORD_LOOK, EC_WORD_AT, EC_WORD_MY, EC_WORD_POKEMON, EC_MOVE2(SUPERPOWER), EC_WORD_EXCL
.2byte EC_WORD_ISN_T, EC_WORD_IT, EC_WORD_INCREDIBLE, EC_WORD_QUES, EC_WORD_POKEMON, EC_WORD_POWER .2byte EC_WORD_ISN_T, EC_WORD_IT, EC_WORD_INCREDIBLE, EC_WORD_QUES, EC_WORD_POKEMON, EC_WORD_POWER
.2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_AN, EC_WORD_AWFUL, EC_MOVE(NIGHTMARE), EC_WORD_ELLIPSIS_EXCL .2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_AN, EC_WORD_AWFUL, EC_MOVE(NIGHTMARE), EC_WORD_ELLIPSIS_EXCL
@@ -302,8 +302,8 @@ gUnknown_847B36C::
gUnknown_847B74C:: gUnknown_847B74C::
.byte 0x04, 0x08, 0x01, 0x09 .byte 0x04, 0x08, 0x01, 0x09
.string "JOS & ANNE$", 11 .string "JOS & ANNE$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x07, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x07
.align 1
.2byte EC_WORD_I, EC_WORD_CAN_T, EC_WORD_LOSE, EC_WORD_TO, EC_WORD_YOU, EC_WORD_HERE .2byte EC_WORD_I, EC_WORD_CAN_T, EC_WORD_LOSE, EC_WORD_TO, EC_WORD_YOU, EC_WORD_HERE
.2byte EC_WORD_VERY, EC_WORD_WELL, EC_WORD_DONE, EC_WORD_EXCL, EC_WORD_GOOD, EC_WORD_BATTLE .2byte EC_WORD_VERY, EC_WORD_WELL, EC_WORD_DONE, EC_WORD_EXCL, EC_WORD_GOOD, EC_WORD_BATTLE
.2byte EC_WORD_UNBELIEVABLE, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_UNBELIEVABLE, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -382,8 +382,8 @@ gUnknown_847B74C::
.byte 255 @ friendship .byte 255 @ friendship
.string "JOS & ANNE$", 11 .string "JOS & ANNE$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x07, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x07
.align 1
.2byte EC_WORD_HERE_GOES, EC_WORD_EXCL_EXCL, EC_WORD_GET, EC_WORD_READY, EC_WORD_TO, EC_WORD_LOSE .2byte EC_WORD_HERE_GOES, EC_WORD_EXCL_EXCL, EC_WORD_GET, EC_WORD_READY, EC_WORD_TO, EC_WORD_LOSE
.2byte EC_WORD_PERFECT, EC_WORD_EXCL, EC_WORD_WE, EC_WORD_GET, EC_WORD_THE, EC_WORD_WIN .2byte EC_WORD_PERFECT, EC_WORD_EXCL, EC_WORD_WE, EC_WORD_GET, EC_WORD_THE, EC_WORD_WIN
.2byte EC_WORD_LOST, EC_WORD_QUES_EXCL, EC_WORD_YOU, EC_WORD_MUST_BE, EC_WORD_JOKING, EC_WORD_EXCL .2byte EC_WORD_LOST, EC_WORD_QUES_EXCL, EC_WORD_YOU, EC_WORD_MUST_BE, EC_WORD_JOKING, EC_WORD_EXCL
@@ -468,8 +468,8 @@ gUnknown_847B74C::
gUnknown_847BB2C:: gUnknown_847BB2C::
.byte 0x05, 0x08, 0x01, 0x04 .byte 0x05, 0x08, 0x01, 0x04
.string "EMY & ALEK$", 11 .string "EMY & ALEK$", 11
.byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x01, 0x00 .byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_SO, EC_WORD_LOST, EC_WORD_IN, EC_WORD_LOVEY_DOVEY, EC_WORD_HAPPINESS .2byte EC_WORD_I_AM, EC_WORD_SO, EC_WORD_LOST, EC_WORD_IN, EC_WORD_LOVEY_DOVEY, EC_WORD_HAPPINESS
.2byte EC_WORD_OH, EC_WORD_OH, EC_WORD_HE, EC_WORD_IS, EC_WORD_REALLY, EC_WORD_AWESOME .2byte EC_WORD_OH, EC_WORD_OH, EC_WORD_HE, EC_WORD_IS, EC_WORD_REALLY, EC_WORD_AWESOME
.2byte EC_WORD_AIYEEH, EC_WORD_EXCL_EXCL, EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_SERIOUS, EC_WORD_QUES .2byte EC_WORD_AIYEEH, EC_WORD_EXCL_EXCL, EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_SERIOUS, EC_WORD_QUES
@@ -548,8 +548,8 @@ gUnknown_847BB2C::
.byte 255 @ friendship .byte 255 @ friendship
.string "EMY & ALEK$", 11 .string "EMY & ALEK$", 11
.byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x01, 0x00 .byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_GIDDY, EC_WORD_WITH, EC_WORD_LOVEY_DOVEY, EC_WORD_JOY, EC_WORD_EXCL_EXCL .2byte EC_WORD_I_AM, EC_WORD_GIDDY, EC_WORD_WITH, EC_WORD_LOVEY_DOVEY, EC_WORD_JOY, EC_WORD_EXCL_EXCL
.2byte EC_WORD_SIGH, EC_WORD_ELLIPSIS, EC_WORD_MY, EC_WORD_GIRL, EC_WORD_IS, EC_WORD_CUTE .2byte EC_WORD_SIGH, EC_WORD_ELLIPSIS, EC_WORD_MY, EC_WORD_GIRL, EC_WORD_IS, EC_WORD_CUTE
.2byte EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_CAN_T, EC_WORD_BE, EC_WORD_SERIOUS .2byte EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_CAN_T, EC_WORD_BE, EC_WORD_SERIOUS
@@ -634,8 +634,8 @@ gUnknown_847BB2C::
gUnknown_847BF0C:: gUnknown_847BF0C::
.byte 0x06, 0x08, 0x01, 0x00 .byte 0x06, 0x08, 0x01, 0x00
.string "JO & HALEY$", 11 .string "JO & HALEY$", 11
.byte FACILITY_CLASS_CRUSH_KIN, 0x05, 0x00 .byte FACILITY_CLASS_CRUSH_KIN, 0x05
.align 1
.2byte EC_WORD_WE_RE, EC_WORD_USING, EC_WORD_THAT, EC_WORD_STRATEGY, EC_WORD_OKAY, EC_WORD_QUES .2byte EC_WORD_WE_RE, EC_WORD_USING, EC_WORD_THAT, EC_WORD_STRATEGY, EC_WORD_OKAY, EC_WORD_QUES
.2byte EC_WORD_YAY, EC_WORD_WE, EC_WORD_WON, EC_WORD_EXCL, EC_WORD_SORRY, EC_WORD_EXCL .2byte EC_WORD_YAY, EC_WORD_WE, EC_WORD_WON, EC_WORD_EXCL, EC_WORD_SORRY, EC_WORD_EXCL
.2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_THAT_WAS, EC_WORD_REALLY, EC_WORD_TERRIBLE, EC_WORD_EXCL .2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_THAT_WAS, EC_WORD_REALLY, EC_WORD_TERRIBLE, EC_WORD_EXCL
@@ -714,8 +714,8 @@ gUnknown_847BF0C::
.byte 255 @ friendship .byte 255 @ friendship
.string "JO & HALEY$", 11 .string "JO & HALEY$", 11
.byte FACILITY_CLASS_CRUSH_KIN, 0x05, 0x00 .byte FACILITY_CLASS_CRUSH_KIN, 0x05
.align 1
.2byte EC_WORD_YOU, EC_WORD_YOU, EC_WORD_YOU, EC_WORD_BETTER, EC_WORD_NOT, EC_WORD_WIN .2byte EC_WORD_YOU, EC_WORD_YOU, EC_WORD_YOU, EC_WORD_BETTER, EC_WORD_NOT, EC_WORD_WIN
.2byte EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_JOKING, EC_WORD_QUES, EC_WORD_WE, EC_WORD_WON .2byte EC_WORD_YOU_RE, EC_WORD_NOT, EC_WORD_JOKING, EC_WORD_QUES, EC_WORD_WE, EC_WORD_WON
.2byte EC_WORD_WIMPY, EC_WORD_ELLIPSIS, EC_WORD_WE, EC_WORD_WERE, EC_WORD_WEAK, EC_WORD_ELLIPSIS .2byte EC_WORD_WIMPY, EC_WORD_ELLIPSIS, EC_WORD_WE, EC_WORD_WERE, EC_WORD_WEAK, EC_WORD_ELLIPSIS
@@ -800,8 +800,8 @@ gUnknown_847BF0C::
gUnknown_847C2EC:: gUnknown_847C2EC::
.byte 0x07, 0x08, 0x02, 0x0c .byte 0x07, 0x08, 0x02, 0x0c
.string "JORDY$", 11 .string "JORDY$", 11
.byte FACILITY_CLASS_BIKER, 0x03, 0x00 .byte FACILITY_CLASS_BIKER, 0x03
.align 1
.2byte EC_WORD_DON_T, EC_WORD_MAKE, EC_WORD_ME, EC_WORD_GIGGLE, EC_WORD_YOU, EC_WORD_PUSHOVER .2byte EC_WORD_DON_T, EC_WORD_MAKE, EC_WORD_ME, EC_WORD_GIGGLE, EC_WORD_YOU, EC_WORD_PUSHOVER
.2byte EC_WORD_WHAT, EC_WORD_A_LITTLE, EC_WORD_PUSHOVER, EC_WORD_YOU, EC_WORD_ARE, EC_WORD_EXCL .2byte EC_WORD_WHAT, EC_WORD_A_LITTLE, EC_WORD_PUSHOVER, EC_WORD_YOU, EC_WORD_ARE, EC_WORD_EXCL
.2byte EC_WORD_YOU, EC_WORD_WERE, EC_WORD_READY, EC_WORD_TO, EC_WORD_ROCK, EC_WORD_EXCL .2byte EC_WORD_YOU, EC_WORD_WERE, EC_WORD_READY, EC_WORD_TO, EC_WORD_ROCK, EC_WORD_EXCL
@@ -880,8 +880,8 @@ gUnknown_847C2EC::
.byte 0 @ friendship .byte 0 @ friendship
.string "ERNEST$", 11 .string "ERNEST$", 11
.byte FACILITY_CLASS_BIKER, 0x01, 0x00 .byte FACILITY_CLASS_BIKER, 0x01
.align 1
.2byte EC_WORD_IT_S, EC_WORD_SLEEP, EC_WORD_TIME, EC_WORD_FOR, EC_WORD_CHILDREN, EC_WORD_EXCL .2byte EC_WORD_IT_S, EC_WORD_SLEEP, EC_WORD_TIME, EC_WORD_FOR, EC_WORD_CHILDREN, EC_WORD_EXCL
.2byte EC_WORD_NOT, EC_WORD_GUTSY, EC_WORD_ENOUGH, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_NOT, EC_WORD_GUTSY, EC_WORD_ENOUGH, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_WHY, EC_WORD_DID, EC_WORD_YOU, EC_WORD_CRUSH, EC_WORD_ME, EC_WORD_QUES .2byte EC_WORD_WHY, EC_WORD_DID, EC_WORD_YOU, EC_WORD_CRUSH, EC_WORD_ME, EC_WORD_QUES
@@ -960,8 +960,8 @@ gUnknown_847C2EC::
.byte 0 @ friendship .byte 0 @ friendship
.string "GABRIEL$", 11 .string "GABRIEL$", 11
.byte FACILITY_CLASS_CUE_BALL, 0x01, 0x00 .byte FACILITY_CLASS_CUE_BALL, 0x01
.align 1
.2byte EC_WORD_YAHOO, EC_WORD_EXCL, EC_WORD_HERE_I_COME, EC_WORD_TO, EC_WORD_SWARM, EC_WORD_YOU .2byte EC_WORD_YAHOO, EC_WORD_EXCL, EC_WORD_HERE_I_COME, EC_WORD_TO, EC_WORD_SWARM, EC_WORD_YOU
.2byte EC_WORD_I_AM, EC_WORD_INVINCIBLE, EC_WORD_YOU, EC_WORD_GOT, EC_WORD_THAT, EC_WORD_QUES .2byte EC_WORD_I_AM, EC_WORD_INVINCIBLE, EC_WORD_YOU, EC_WORD_GOT, EC_WORD_THAT, EC_WORD_QUES
.2byte EC_WORD_WHAT, EC_WORD_WAS, EC_WORD_THAT, EC_WORD_QUES, 0xFFFF, 0xFFFF .2byte EC_WORD_WHAT, EC_WORD_WAS, EC_WORD_THAT, EC_WORD_QUES, 0xFFFF, 0xFFFF
@@ -1045,8 +1045,8 @@ gUnknown_847C2EC::
gUnknown_847C6CC:: gUnknown_847C6CC::
.byte 0x08, 0x08, 0x02, 0x0e .byte 0x08, 0x08, 0x02, 0x0e
.string "MIKE$", 11 .string "MIKE$", 11
.byte FACILITY_CLASS_HIKER_2, 0x05, 0x00 .byte FACILITY_CLASS_HIKER_2, 0x05
.align 1
.2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_FULL, EC_WORD_OF, EC_WORD_POWER .2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_FULL, EC_WORD_OF, EC_WORD_POWER
.2byte EC_WORD_WHAT_S_UP_QUES, EC_WORD_WHERE, EC_WORD_IS, EC_WORD_YOUR, EC_WORD_POWER, EC_WORD_QUES .2byte EC_WORD_WHAT_S_UP_QUES, EC_WORD_WHERE, EC_WORD_IS, EC_WORD_YOUR, EC_WORD_POWER, EC_WORD_QUES
.2byte EC_WORD_YOU, EC_WORD_GOT, EC_WORD_ME, EC_WORD_WITH, EC_WORD_YOUR, EC_MOVE2(FAKE_OUT) .2byte EC_WORD_YOU, EC_WORD_GOT, EC_WORD_ME, EC_WORD_WITH, EC_WORD_YOUR, EC_MOVE2(FAKE_OUT)
@@ -1125,8 +1125,8 @@ gUnknown_847C6CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "REBECCA$", 11 .string "REBECCA$", 11
.byte FACILITY_CLASS_CRUSH_GIRL, 0x05, 0x00 .byte FACILITY_CLASS_CRUSH_GIRL, 0x05
.align 1
.2byte EC_WORD_I, EC_WORD_WILL, EC_WORD_WIN, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_I, EC_WORD_WILL, EC_WORD_WIN, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF
.2byte EC_WORD_IT_S, EC_WORD_TOO, EC_WORD_BAD, EC_WORD_BUT, EC_WORD_I_AM, EC_WORD_OVERWHELMING .2byte EC_WORD_IT_S, EC_WORD_TOO, EC_WORD_BAD, EC_WORD_BUT, EC_WORD_I_AM, EC_WORD_OVERWHELMING
.2byte EC_WORD_ARRGH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_ARRGH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -1205,8 +1205,8 @@ gUnknown_847C6CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "NICOLAS$", 11 .string "NICOLAS$", 11
.byte FACILITY_CLASS_BLACK_BELT_2, 0x05, 0x00 .byte FACILITY_CLASS_BLACK_BELT_2, 0x05
.align 1
.2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_WHERE, EC_WORD_YOU, EC_WORD_STOP, EC_WORD_EXCL .2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_WHERE, EC_WORD_YOU, EC_WORD_STOP, EC_WORD_EXCL
.2byte EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_TO, EC_WORD_EVER, EC_WORD_BEAT, EC_WORD_ME .2byte EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_TO, EC_WORD_EVER, EC_WORD_BEAT, EC_WORD_ME
.2byte EC_WORD_WHY, EC_WORD_COULDN_T, EC_WORD_I, EC_WORD_BEAT, EC_WORD_YOU, EC_WORD_QUES .2byte EC_WORD_WHY, EC_WORD_COULDN_T, EC_WORD_I, EC_WORD_BEAT, EC_WORD_YOU, EC_WORD_QUES
@@ -1290,8 +1290,8 @@ gUnknown_847C6CC::
gUnknown_847CAAC:: gUnknown_847CAAC::
.byte 0x09, 0x08, 0x00, 0x00 .byte 0x09, 0x08, 0x00, 0x00
.string "JOEY$", 11 .string "JOEY$", 11
.byte FACILITY_CLASS_CAMPER_2, 0x01, 0x00 .byte FACILITY_CLASS_CAMPER_2, 0x01
.align 1
.2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_SCARY, EC_WORD_STRONG, EC_WORD_EXCL .2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_SCARY, EC_WORD_STRONG, EC_WORD_EXCL
.2byte EC_WORD_WERE, EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_TOO, EC_WORD_MUCH, EC_WORD_QUES .2byte EC_WORD_WERE, EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_TOO, EC_WORD_MUCH, EC_WORD_QUES
.2byte EC_WORD_YOUR, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_WAY, EC_WORD_TOO_STRONG, EC_WORD_EXCL .2byte EC_WORD_YOUR, EC_WORD_POKEMON, EC_WORD_ARE, EC_WORD_WAY, EC_WORD_TOO_STRONG, EC_WORD_EXCL
@@ -1377,8 +1377,8 @@ gUnknown_847CAAC::
gUnknown_847CE8C:: gUnknown_847CE8C::
.byte 0x0a, 0x08, 0x00, 0x0c .byte 0x0a, 0x08, 0x00, 0x0c
.string "LILY$", 11 .string "LILY$", 11
.byte FACILITY_CLASS_PKMN_BREEDER_3, 0x01, 0x00 .byte FACILITY_CLASS_PKMN_BREEDER_3, 0x01
.align 1
.2byte EC_WORD_I, EC_WORD_WANT, EC_WORD_SOMETHING, EC_WORD_IN, EC_MOVE(RETURN), EC_WORD_EXCL .2byte EC_WORD_I, EC_WORD_WANT, EC_WORD_SOMETHING, EC_WORD_IN, EC_MOVE(RETURN), EC_WORD_EXCL
.2byte EC_WORD_I, EC_WORD_BELIEVE, EC_WORD_IN, EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_EXCL .2byte EC_WORD_I, EC_WORD_BELIEVE, EC_WORD_IN, EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_EXCL
.2byte EC_WORD_I, EC_WORD_NEED, EC_WORD_SOMETHING, EC_WORD_IN, EC_MOVE(RETURN), EC_WORD_ELLIPSIS .2byte EC_WORD_I, EC_WORD_NEED, EC_WORD_SOMETHING, EC_WORD_IN, EC_MOVE(RETURN), EC_WORD_ELLIPSIS
@@ -1464,8 +1464,8 @@ gUnknown_847CE8C::
gUnknown_847D26C:: gUnknown_847D26C::
.byte 0x0b, 0x08, 0x00, 0x0e .byte 0x0b, 0x08, 0x00, 0x0e
.string "BRANDON$", 11 .string "BRANDON$", 11
.byte FACILITY_CLASS_BUG_CATCHER_2, 0x01, 0x00 .byte FACILITY_CLASS_BUG_CATCHER_2, 0x01
.align 1
.2byte EC_WORD_POISON, EC_WORD_IS, EC_WORD_JUST, EC_WORD_SO, EC_WORD_AWFUL, EC_WORD_ISN_T_IT_QUES .2byte EC_WORD_POISON, EC_WORD_IS, EC_WORD_JUST, EC_WORD_SO, EC_WORD_AWFUL, EC_WORD_ISN_T_IT_QUES
.2byte EC_WORD_SEE, EC_WORD_QUES, EC_WORD_ISN_T, EC_WORD_POISON, EC_WORD_TERRIBLE, EC_WORD_QUES .2byte EC_WORD_SEE, EC_WORD_QUES, EC_WORD_ISN_T, EC_WORD_POISON, EC_WORD_TERRIBLE, EC_WORD_QUES
.2byte EC_WORD_HUH_QUES, EC_WORD_OUR, EC_WORD_POISON, EC_WORD_DIDN_T, EC_WORD_WORK, EC_WORD_QUES .2byte EC_WORD_HUH_QUES, EC_WORD_OUR, EC_WORD_POISON, EC_WORD_DIDN_T, EC_WORD_WORK, EC_WORD_QUES
@@ -1551,8 +1551,8 @@ gUnknown_847D26C::
gUnknown_847D64C:: gUnknown_847D64C::
.byte 0x0c, 0x08, 0x01, 0x02 .byte 0x0c, 0x08, 0x01, 0x02
.string "RIC & RENE$", 11 .string "RIC & RENE$", 11
.byte FACILITY_CLASS_CRUSH_KIN, 0x05, 0x00 .byte FACILITY_CLASS_CRUSH_KIN, 0x05
.align 1
.2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_IS, EC_WORD_REALLY, EC_WORD_AWESOME .2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_IS, EC_WORD_REALLY, EC_WORD_AWESOME
.2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_IS, EC_WORD_TOO, EC_WORD_AWESOME .2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_IS, EC_WORD_TOO, EC_WORD_AWESOME
.2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_ISN_T, EC_WORD_AWESOME, EC_WORD_QUES .2byte EC_WORD_MY, EC_WORD_BIG, EC_WORD_BROTHER, EC_WORD_ISN_T, EC_WORD_AWESOME, EC_WORD_QUES
@@ -1631,8 +1631,8 @@ gUnknown_847D64C::
.byte 255 @ friendship .byte 255 @ friendship
.string "RIC & RENE$", 11 .string "RIC & RENE$", 11
.byte FACILITY_CLASS_CRUSH_KIN, 0x05, 0x00 .byte FACILITY_CLASS_CRUSH_KIN, 0x05
.align 1
.2byte EC_WORD_I_AM, EC_WORD_REALLY, EC_WORD_AWESOME, EC_WORD_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_I_AM, EC_WORD_REALLY, EC_WORD_AWESOME, EC_WORD_EXCL, 0xFFFF, 0xFFFF
.2byte EC_WORD_I_AM, EC_WORD_TOO, EC_WORD_AWESOME, EC_WORD_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_I_AM, EC_WORD_TOO, EC_WORD_AWESOME, EC_WORD_EXCL, 0xFFFF, 0xFFFF
.2byte EC_WORD_HUH_QUES, 0xFFFF, EC_WORD_I_AM, EC_WORD_NOT_VERY, EC_WORD_AWESOME, EC_WORD_QUES .2byte EC_WORD_HUH_QUES, 0xFFFF, EC_WORD_I_AM, EC_WORD_NOT_VERY, EC_WORD_AWESOME, EC_WORD_QUES
@@ -1717,8 +1717,8 @@ gUnknown_847D64C::
gUnknown_847DA2C:: gUnknown_847DA2C::
.byte 0x0d, 0x08, 0x01, 0x0d .byte 0x0d, 0x08, 0x01, 0x0d
.string "JEN & KIRA$", 11 .string "JEN & KIRA$", 11
.byte FACILITY_CLASS_TWINS_2, 0x05, 0x00 .byte FACILITY_CLASS_TWINS_2, 0x05
.align 1
.2byte EC_WORD_I_AM, EC_WORD_GOING, EC_WORD_TO, EC_WORD_TRY, EC_WORD_HARD, EC_WORD_EXCL .2byte EC_WORD_I_AM, EC_WORD_GOING, EC_WORD_TO, EC_WORD_TRY, EC_WORD_HARD, EC_WORD_EXCL
.2byte EC_WORD_EHEHE, EC_WORD_YAY, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_EHEHE, EC_WORD_YAY, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_WAAAH, EC_WORD_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_WAAAH, EC_WORD_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -1797,8 +1797,8 @@ gUnknown_847DA2C::
.byte 255 @ friendship .byte 255 @ friendship
.string "JEN & KIRA$", 11 .string "JEN & KIRA$", 11
.byte FACILITY_CLASS_TWINS_2, 0x03, 0x00 .byte FACILITY_CLASS_TWINS_2, 0x03
.align 1
.2byte EC_WORD_LET_S, EC_WORD_TRY, EC_WORD_HARD, EC_WORD_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_LET_S, EC_WORD_TRY, EC_WORD_HARD, EC_WORD_EXCL, 0xFFFF, 0xFFFF
.2byte EC_WORD_GIGGLE, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_GIGGLE, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_WAAAH, EC_WORD_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_WAAAH, EC_WORD_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -1883,8 +1883,8 @@ gUnknown_847DA2C::
gUnknown_847DE0C:: gUnknown_847DE0C::
.byte 0x0e, 0x08, 0x01, 0x08 .byte 0x0e, 0x08, 0x01, 0x08
.string "ISAC & MAG$", 11 .string "ISAC & MAG$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x01, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x01
.align 1
.2byte EC_WORD_OUR, EC_MOVE(EARTHQUAKE), EC_WORD_WILL, EC_WORD_MAKE, EC_WORD_YOU, EC_WORD_SHAKY .2byte EC_WORD_OUR, EC_MOVE(EARTHQUAKE), EC_WORD_WILL, EC_WORD_MAKE, EC_WORD_YOU, EC_WORD_SHAKY
.2byte EC_WORD_FEELING, EC_WORD_SHAKY, EC_WORD_HUH_QUES, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_FEELING, EC_WORD_SHAKY, EC_WORD_HUH_QUES, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_I_AM, EC_WORD_ALL, EC_WORD_SHAKY, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF .2byte EC_WORD_I_AM, EC_WORD_ALL, EC_WORD_SHAKY, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF
@@ -1963,8 +1963,8 @@ gUnknown_847DE0C::
.byte 255 @ friendship .byte 255 @ friendship
.string "ISAC & MAG$", 11 .string "ISAC & MAG$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x01, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x01
.align 1
.2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_DOESN_T, EC_WORD_GET, EC_WORD_ALL, EC_WORD_SHAKY .2byte EC_WORD_MY, EC_WORD_POKEMON, EC_WORD_DOESN_T, EC_WORD_GET, EC_WORD_ALL, EC_WORD_SHAKY
.2byte EC_WORD_SEE, EC_WORD_QUES, EC_WORD_I, EC_WORD_DIDN_T, EC_WORD_LIE, EC_WORD_EXCL .2byte EC_WORD_SEE, EC_WORD_QUES, EC_WORD_I, EC_WORD_DIDN_T, EC_WORD_LIE, EC_WORD_EXCL
.2byte EC_WORD_HUH_QUES, EC_WORD_YOU, EC_WORD_LEFT, EC_WORD_ME, EC_WORD_FEELING, EC_WORD_SHAKY .2byte EC_WORD_HUH_QUES, EC_WORD_YOU, EC_WORD_LEFT, EC_WORD_ME, EC_WORD_FEELING, EC_WORD_SHAKY
@@ -2049,8 +2049,8 @@ gUnknown_847DE0C::
gUnknown_847E1EC:: gUnknown_847E1EC::
.byte 0x0f, 0x08, 0x02, 0x06 .byte 0x0f, 0x08, 0x02, 0x06
.string "CHELSEA$", 11 .string "CHELSEA$", 11
.byte FACILITY_CLASS_PKMN_RANGER_4, 0x07, 0x00 .byte FACILITY_CLASS_PKMN_RANGER_4, 0x07
.align 1
.2byte EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD, EC_WORD_IS, EC_WORD_IMPORTANT, EC_WORD_ISN_T_IT_QUES .2byte EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD, EC_WORD_IS, EC_WORD_IMPORTANT, EC_WORD_ISN_T_IT_QUES
.2byte EC_WORD_YOU, EC_WORD_TAKE, EC_WORD_THE, EC_WORD_LOSS, 0xFFFF, 0xFFFF .2byte EC_WORD_YOU, EC_WORD_TAKE, EC_WORD_THE, EC_WORD_LOSS, 0xFFFF, 0xFFFF
.2byte EC_WORD_BE, EC_WORD_KIND, EC_WORD_TO, EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD .2byte EC_WORD_BE, EC_WORD_KIND, EC_WORD_TO, EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD
@@ -2129,8 +2129,8 @@ gUnknown_847E1EC::
.byte 255 @ friendship .byte 255 @ friendship
.string "TRENTON$", 11 .string "TRENTON$", 11
.byte FACILITY_CLASS_PKMN_RANGER_3, 0x07, 0x00 .byte FACILITY_CLASS_PKMN_RANGER_3, 0x07
.align 1
.2byte EC_WORD_I, EC_MOVE2(PROTECT), EC_WORD_THE, EC_WORD_GREAT, EC_WORD_GREEN, EC_WORD_WORLD .2byte EC_WORD_I, EC_MOVE2(PROTECT), EC_WORD_THE, EC_WORD_GREAT, EC_WORD_GREEN, EC_WORD_WORLD
.2byte EC_WORD_TAKE_THAT, EC_WORD_EXCL, EC_WORD_THE, EC_WORD_LOSS, EC_WORD_IS, EC_WORD_YOURS .2byte EC_WORD_TAKE_THAT, EC_WORD_EXCL, EC_WORD_THE, EC_WORD_LOSS, EC_WORD_IS, EC_WORD_YOURS
.2byte EC_MOVE2(PROTECT), EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD, 0xFFFF, 0xFFFF .2byte EC_MOVE2(PROTECT), EC_WORD_THE, EC_WORD_GREEN, EC_WORD_WORLD, 0xFFFF, 0xFFFF
@@ -2209,8 +2209,8 @@ gUnknown_847E1EC::
.byte 255 @ friendship .byte 255 @ friendship
.string "ALBERT$", 11 .string "ALBERT$", 11
.byte FACILITY_CLASS_COOLTRAINER_3, 0x07, 0x00 .byte FACILITY_CLASS_COOLTRAINER_3, 0x07
.align 1
.2byte EC_WORD_LET_S, EC_WORD_HAVE, EC_WORD_AN, EC_WORD_EXCITING, EC_WORD_TIME, EC_WORD_HERE .2byte EC_WORD_LET_S, EC_WORD_HAVE, EC_WORD_AN, EC_WORD_EXCITING, EC_WORD_TIME, EC_WORD_HERE
.2byte EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_TO, EC_WORD_MAKE, EC_WORD_THINGS, EC_WORD_EXCITING .2byte EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_TO, EC_WORD_MAKE, EC_WORD_THINGS, EC_WORD_EXCITING
.2byte EC_WORD_YOU_RE, EC_WORD_STRONG, EC_WORD_THAT_WAS, EC_WORD_WILD, EC_WORD_AND, EC_WORD_EXCITING .2byte EC_WORD_YOU_RE, EC_WORD_STRONG, EC_WORD_THAT_WAS, EC_WORD_WILD, EC_WORD_AND, EC_WORD_EXCITING
@@ -2294,8 +2294,8 @@ gUnknown_847E1EC::
gUnknown_847E5CC:: gUnknown_847E5CC::
.byte 0x10, 0x08, 0x02, 0x04 .byte 0x10, 0x08, 0x02, 0x04
.string "CAMRYN$", 11 .string "CAMRYN$", 11
.byte FACILITY_CLASS_PICNICKER_2, 0x01, 0x00 .byte FACILITY_CLASS_PICNICKER_2, 0x01
.align 1
.2byte EC_WORD_LET_S, EC_WORD_BATTLE, EC_WORD_I, EC_WORD_WON_T, EC_WORD_LOSE, EC_WORD_EXCL .2byte EC_WORD_LET_S, EC_WORD_BATTLE, EC_WORD_I, EC_WORD_WON_T, EC_WORD_LOSE, EC_WORD_EXCL
.2byte EC_WORD_I, EC_WORD_SAID, EC_WORD_THAT, EC_WORD_I, EC_WORD_WOULD, EC_WORD_WIN .2byte EC_WORD_I, EC_WORD_SAID, EC_WORD_THAT, EC_WORD_I, EC_WORD_WOULD, EC_WORD_WIN
.2byte EC_WORD_OH_QUES, EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS, EC_WORD_DID, EC_WORD_I, EC_WORD_LOSE, EC_WORD_QUES .2byte EC_WORD_OH_QUES, EC_WORD_ELLIPSIS_ELLIPSIS_ELLIPSIS, EC_WORD_DID, EC_WORD_I, EC_WORD_LOSE, EC_WORD_QUES
@@ -2374,8 +2374,8 @@ gUnknown_847E5CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "NATALIA$", 11 .string "NATALIA$", 11
.byte FACILITY_CLASS_AROMA_LADY_2, 0x01, 0x00 .byte FACILITY_CLASS_AROMA_LADY_2, 0x01
.align 1
.2byte EC_WORD_THIS, EC_MOVE(SWEET_SCENT), EC_WORD_YOU, EC_WORD_LIKE, EC_WORD_IT, EC_WORD_QUES .2byte EC_WORD_THIS, EC_MOVE(SWEET_SCENT), EC_WORD_YOU, EC_WORD_LIKE, EC_WORD_IT, EC_WORD_QUES
.2byte EC_WORD_WASN_T, EC_WORD_THAT, EC_WORD_NICE, EC_WORD_QUES, 0xFFFF, 0xFFFF .2byte EC_WORD_WASN_T, EC_WORD_THAT, EC_WORD_NICE, EC_WORD_QUES, 0xFFFF, 0xFFFF
.2byte EC_WORD_THAT, EC_WORD_WASN_T, EC_WORD_GOOD, EC_WORD_QUES, 0xFFFF, 0xFFFF .2byte EC_WORD_THAT, EC_WORD_WASN_T, EC_WORD_GOOD, EC_WORD_QUES, 0xFFFF, 0xFFFF
@@ -2454,8 +2454,8 @@ gUnknown_847E5CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "KATHLEEN$", 11 .string "KATHLEEN$", 11
.byte FACILITY_CLASS_COOLTRAINER_4, 0x07, 0x00 .byte FACILITY_CLASS_COOLTRAINER_4, 0x07
.align 1
.2byte EC_WORD_TOO, EC_WORD_BAD, EC_WORD_IT_S, EC_WORD_OVER, EC_WORD_FOR, EC_WORD_YOU .2byte EC_WORD_TOO, EC_WORD_BAD, EC_WORD_IT_S, EC_WORD_OVER, EC_WORD_FOR, EC_WORD_YOU
.2byte EC_WORD_SORRY, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_SORRY, EC_WORD_ELLIPSIS, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_HARD, EC_WORD_TO, EC_WORD_BELIEVE, EC_WORD_ELLIPSIS .2byte EC_WORD_THIS, EC_WORD_IS, EC_WORD_HARD, EC_WORD_TO, EC_WORD_BELIEVE, EC_WORD_ELLIPSIS
@@ -2539,8 +2539,8 @@ gUnknown_847E5CC::
gUnknown_847E9AC:: gUnknown_847E9AC::
.byte 0x11, 0x08, 0x00, 0x03 .byte 0x11, 0x08, 0x00, 0x03
.string "BRADEN$", 11 .string "BRADEN$", 11
.byte FACILITY_CLASS_SWIMMER_MALE_2, 0x01, 0x00 .byte FACILITY_CLASS_SWIMMER_MALE_2, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_PRETTY, EC_WORD_HAPPY, EC_WORD_WITH, EC_WORD_MY, EC_WORD_TOUGHNESS .2byte EC_WORD_I_AM, EC_WORD_PRETTY, EC_WORD_HAPPY, EC_WORD_WITH, EC_WORD_MY, EC_WORD_TOUGHNESS
.2byte EC_WORD_WROOOAAR_EXCL, 0xFFFF, EC_WORD_SERIOUSLY, EC_WORD_I, EC_WORD_WON, EC_WORD_QUES .2byte EC_WORD_WROOOAAR_EXCL, 0xFFFF, EC_WORD_SERIOUSLY, EC_WORD_I, EC_WORD_WON, EC_WORD_QUES
.2byte EC_WORD_YOU, EC_WORD_SHOCKED, EC_WORD_ME, EC_WORD_OUT, EC_WORD_OF, EC_WORD_HAPPINESS .2byte EC_WORD_YOU, EC_WORD_SHOCKED, EC_WORD_ME, EC_WORD_OUT, EC_WORD_OF, EC_WORD_HAPPINESS
@@ -2626,8 +2626,8 @@ gUnknown_847E9AC::
gUnknown_847ED8C:: gUnknown_847ED8C::
.byte 0x12, 0x08, 0x00, 0x0a .byte 0x12, 0x08, 0x00, 0x0a
.string "ALLYSON$", 11 .string "ALLYSON$", 11
.byte FACILITY_CLASS_COOLTRAINER_4, 0x07, 0x00 .byte FACILITY_CLASS_COOLTRAINER_4, 0x07
.align 1
.2byte EC_WORD_I_AM, EC_WORD_NOT, EC_WORD_ABOUT, EC_WORD_TO, EC_WORD_LOSE, EC_WORD_TODAY .2byte EC_WORD_I_AM, EC_WORD_NOT, EC_WORD_ABOUT, EC_WORD_TO, EC_WORD_LOSE, EC_WORD_TODAY
.2byte EC_WORD_YES, EC_WORD_EXCL_EXCL, EC_WORD_I, EC_WORD_ADORE, EC_WORD_MYSELF, EC_WORD_TODAY .2byte EC_WORD_YES, EC_WORD_EXCL_EXCL, EC_WORD_I, EC_WORD_ADORE, EC_WORD_MYSELF, EC_WORD_TODAY
.2byte EC_WORD_I_WAS, EC_WORD_CONFUSED, EC_WORD_ABOUT, EC_WORD_THINGS, EC_WORD_I, EC_WORD_THINK .2byte EC_WORD_I_WAS, EC_WORD_CONFUSED, EC_WORD_ABOUT, EC_WORD_THINGS, EC_WORD_I, EC_WORD_THINK
@@ -2713,8 +2713,8 @@ gUnknown_847ED8C::
gUnknown_847F16C:: gUnknown_847F16C::
.byte 0x13, 0x08, 0x00, 0x0e .byte 0x13, 0x08, 0x00, 0x0e
.string "ALBERTO$", 11 .string "ALBERTO$", 11
.byte FACILITY_CLASS_SAILOR_2, 0x05, 0x00 .byte FACILITY_CLASS_SAILOR_2, 0x05
.align 1
.2byte EC_WORD_LET_S, EC_WORD_GET, EC_WORD_WITH, EC_WORD_IT, EC_WORD_RIGHT, EC_WORD_AWAY .2byte EC_WORD_LET_S, EC_WORD_GET, EC_WORD_WITH, EC_WORD_IT, EC_WORD_RIGHT, EC_WORD_AWAY
.2byte EC_WORD_YO, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_GIVE_UP, EC_WORD_NOW, EC_WORD_EH_QUES .2byte EC_WORD_YO, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_GIVE_UP, EC_WORD_NOW, EC_WORD_EH_QUES
.2byte EC_WORD_IT_S, EC_WORD_ALL, EC_WORD_OVER, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_SURRENDER .2byte EC_WORD_IT_S, EC_WORD_ALL, EC_WORD_OVER, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_SURRENDER
@@ -2800,8 +2800,8 @@ gUnknown_847F16C::
gUnknown_847F54C:: gUnknown_847F54C::
.byte 0x14, 0x08, 0x01, 0x0c .byte 0x14, 0x08, 0x01, 0x0c
.string "KAT & KIPP$", 11 .string "KAT & KIPP$", 11
.byte FACILITY_CLASS_SIS_AND_BRO_2, 0x04, 0x00 .byte FACILITY_CLASS_SIS_AND_BRO_2, 0x04
.align 1
.2byte EC_WORD_I_AM, EC_WORD_GOING, EC_WORD_TO, EC_WORD_TRY, EC_WORD_MY, EC_WORD_BEST .2byte EC_WORD_I_AM, EC_WORD_GOING, EC_WORD_TO, EC_WORD_TRY, EC_WORD_MY, EC_WORD_BEST
.2byte EC_WORD_WAY, EC_WORD_TO, EC_WORD_GO, EC_WORD_MY, EC_WORD_AWESOME, EC_WORD_BROTHER .2byte EC_WORD_WAY, EC_WORD_TO, EC_WORD_GO, EC_WORD_MY, EC_WORD_AWESOME, EC_WORD_BROTHER
.2byte EC_WORD_SIGH, EC_WORD_ELLIPSIS, EC_WORD_THAT_S, EC_WORD_HOW, EC_WORD_IT, EC_WORD_GOES .2byte EC_WORD_SIGH, EC_WORD_ELLIPSIS, EC_WORD_THAT_S, EC_WORD_HOW, EC_WORD_IT, EC_WORD_GOES
@@ -2880,8 +2880,8 @@ gUnknown_847F54C::
.byte 255 @ friendship .byte 255 @ friendship
.string "KAT & KIPP$", 11 .string "KAT & KIPP$", 11
.byte FACILITY_CLASS_SIS_AND_BRO_2, 0x04, 0x00 .byte FACILITY_CLASS_SIS_AND_BRO_2, 0x04
.align 1
.2byte EC_WORD_FUFUFU, EC_WORD_ELLIPSIS, EC_WORD_WE, EC_WORD_NEVER, EC_WORD_LOSE, EC_WORD_EXCL .2byte EC_WORD_FUFUFU, EC_WORD_ELLIPSIS, EC_WORD_WE, EC_WORD_NEVER, EC_WORD_LOSE, EC_WORD_EXCL
.2byte EC_WORD_FUFUFU, EC_WORD_ELLIPSIS, EC_WORD_WE_RE, EC_WORD_TOO_STRONG, EC_WORD_TO, EC_WORD_LOSE .2byte EC_WORD_FUFUFU, EC_WORD_ELLIPSIS, EC_WORD_WE_RE, EC_WORD_TOO_STRONG, EC_WORD_TO, EC_WORD_LOSE
.2byte EC_WORD_WHAT, EC_WORD_HUH_QUES, EC_WORD_ARE, EC_WORD_YOU, EC_WORD_JOKING, EC_WORD_QUES .2byte EC_WORD_WHAT, EC_WORD_HUH_QUES, EC_WORD_ARE, EC_WORD_YOU, EC_WORD_JOKING, EC_WORD_QUES
@@ -2966,8 +2966,8 @@ gUnknown_847F54C::
gUnknown_847F92C:: gUnknown_847F92C::
.byte 0x15, 0x08, 0x01, 0x08 .byte 0x15, 0x08, 0x01, 0x08
.string "GEB&MEGAN$", 11 .string "GEB&MEGAN$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x07, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x07
.align 1
.2byte EC_WORD_YOU_RE, EC_WORD_OUR, EC_WORD_OPPONENT, EC_WORD_QUES, EC_WORD_PUSHOVER, EC_WORD_HAHAHA .2byte EC_WORD_YOU_RE, EC_WORD_OUR, EC_WORD_OPPONENT, EC_WORD_QUES, EC_WORD_PUSHOVER, EC_WORD_HAHAHA
.2byte EC_WORD_HAHAHA, EC_WORD_SORRY, EC_WORD_MY, EC_WORD_FRIEND, EC_WORD_TOUGH, EC_WORD_LOSS .2byte EC_WORD_HAHAHA, EC_WORD_SORRY, EC_WORD_MY, EC_WORD_FRIEND, EC_WORD_TOUGH, EC_WORD_LOSS
.2byte EC_WORD_YOU_RE, EC_WORD_SERIOUS, EC_WORD_AREN_T, EC_WORD_YOU, EC_WORD_FRIEND, EC_WORD_QUES .2byte EC_WORD_YOU_RE, EC_WORD_SERIOUS, EC_WORD_AREN_T, EC_WORD_YOU, EC_WORD_FRIEND, EC_WORD_QUES
@@ -3046,8 +3046,8 @@ gUnknown_847F92C::
.byte 255 @ friendship .byte 255 @ friendship
.string "GEB&MEGAN$", 11 .string "GEB&MEGAN$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x07, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x07
.align 1
.2byte EC_WORD_YOU_RE, EC_WORD_OUR, EC_WORD_FOE, EC_WORD_QUES, EC_WORD_GIGGLE, EC_WORD_ELLIPSIS .2byte EC_WORD_YOU_RE, EC_WORD_OUR, EC_WORD_FOE, EC_WORD_QUES, EC_WORD_GIGGLE, EC_WORD_ELLIPSIS
.2byte EC_WORD_GIGGLE, EC_WORD_ELLIPSIS, EC_WORD_I_AM, EC_WORD_SO, EC_WORD_SORRY, 0xFFFF .2byte EC_WORD_GIGGLE, EC_WORD_ELLIPSIS, EC_WORD_I_AM, EC_WORD_SO, EC_WORD_SORRY, 0xFFFF
.2byte EC_WORD_MY, EC_WORD_WORD, EC_WORD_THIS, EC_WORD_IS, EC_WORD_JUST, EC_WORD_INCREDIBLE .2byte EC_WORD_MY, EC_WORD_WORD, EC_WORD_THIS, EC_WORD_IS, EC_WORD_JUST, EC_WORD_INCREDIBLE
@@ -3132,8 +3132,8 @@ gUnknown_847F92C::
gUnknown_847FD0C:: gUnknown_847FD0C::
.byte 0x16, 0x08, 0x01, 0x05 .byte 0x16, 0x08, 0x01, 0x05
.string "LISA&LEAH$", 11 .string "LISA&LEAH$", 11
.byte FACILITY_CLASS_TWINS_2, 0x01, 0x00 .byte FACILITY_CLASS_TWINS_2, 0x01
.align 1
.2byte EC_WORD_ABSOLUTELY, EC_WORD_WE_RE, EC_WORD_GOING, EC_WORD_TO, EC_WORD_WIN, EC_WORD_EXCL .2byte EC_WORD_ABSOLUTELY, EC_WORD_WE_RE, EC_WORD_GOING, EC_WORD_TO, EC_WORD_WIN, EC_WORD_EXCL
.2byte EC_WORD_YEAH_YEAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte EC_WORD_YEAH_YEAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF
@@ -3212,8 +3212,8 @@ gUnknown_847FD0C::
.byte 255 @ friendship .byte 255 @ friendship
.string "LISA&LEAH$", 11 .string "LISA&LEAH$", 11
.byte FACILITY_CLASS_TWINS_2, 0x01, 0x00 .byte FACILITY_CLASS_TWINS_2, 0x01
.align 1
.2byte EC_WORD_CAN, EC_WORD_WE, EC_WORD_WIN, EC_WORD_QUES, EC_WORD_IT_S, EC_WORD_EXCITING .2byte EC_WORD_CAN, EC_WORD_WE, EC_WORD_WIN, EC_WORD_QUES, EC_WORD_IT_S, EC_WORD_EXCITING
.2byte EC_WORD_YEAH_YEAH, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_MAKE, EC_WORD_ME, EC_WORD_HAPPY .2byte EC_WORD_YEAH_YEAH, EC_WORD_EXCL_EXCL, EC_WORD_YOU, EC_WORD_MAKE, EC_WORD_ME, EC_WORD_HAPPY
.2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF .2byte EC_WORD_AWW, EC_WORD_EXCL, EC_WORD_WAAAH, EC_WORD_EXCL_EXCL, 0xFFFF, 0xFFFF
@@ -3292,8 +3292,8 @@ gUnknown_847FD0C::
.byte 255 @ friendship .byte 255 @ friendship
.string "$", 11 .string "$", 11
.byte FACILITY_CLASS_AQUA_LEADER, 0x01, 0x00 .byte FACILITY_CLASS_AQUA_LEADER, 0x01
.align 1
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
.2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF
@@ -3377,8 +3377,8 @@ gUnknown_847FD0C::
gUnknown_84800EC:: gUnknown_84800EC::
.byte 0x17, 0x08, 0x02, 0x01 .byte 0x17, 0x08, 0x02, 0x01
.string "PRISCILLA$", 11 .string "PRISCILLA$", 11
.byte FACILITY_CLASS_TUBER_3, 0x01, 0x00 .byte FACILITY_CLASS_TUBER_3, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_A_LITTLE, EC_WORD_POKEMON, EC_WORD_GIRL, EC_WORD_HERE_I_COME, EC_WORD_EXCL .2byte EC_WORD_I_AM, EC_WORD_A_LITTLE, EC_WORD_POKEMON, EC_WORD_GIRL, EC_WORD_HERE_I_COME, EC_WORD_EXCL
.2byte EC_WORD_WAAAH, EC_WORD_EXCL, EC_WORD_DID, EC_WORD_I, EC_WORD_WIN, EC_WORD_QUES .2byte EC_WORD_WAAAH, EC_WORD_EXCL, EC_WORD_DID, EC_WORD_I, EC_WORD_WIN, EC_WORD_QUES
.2byte EC_WORD_OH_DEAR, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_COULDN_T, EC_WORD_WIN, EC_WORD_ELLIPSIS .2byte EC_WORD_OH_DEAR, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_COULDN_T, EC_WORD_WIN, EC_WORD_ELLIPSIS
@@ -3457,8 +3457,8 @@ gUnknown_84800EC::
.byte 0 @ friendship .byte 0 @ friendship
.string "CHARLOTTE$", 11 .string "CHARLOTTE$", 11
.byte FACILITY_CLASS_LADY_2, 0x01, 0x00 .byte FACILITY_CLASS_LADY_2, 0x01
.align 1
.2byte EC_WORD_HELLO, EC_WORD_THERE, EC_WORD_I_AM, EC_WORD_A, EC_WORD_POKEMON, EC_WORD_LADY .2byte EC_WORD_HELLO, EC_WORD_THERE, EC_WORD_I_AM, EC_WORD_A, EC_WORD_POKEMON, EC_WORD_LADY
.2byte EC_WORD_OH, EC_WORD_MY, EC_WORD_MY, EC_WORD_ELLIPSIS, EC_WORD_I_AM, EC_WORD_SORRY .2byte EC_WORD_OH, EC_WORD_MY, EC_WORD_MY, EC_WORD_ELLIPSIS, EC_WORD_I_AM, EC_WORD_SORRY
.2byte EC_WORD_YOU_RE, EC_WORD_BETTER, EC_WORD_THAN, EC_WORD_A, EC_WORD_POKEMON, EC_WORD_LADY .2byte EC_WORD_YOU_RE, EC_WORD_BETTER, EC_WORD_THAN, EC_WORD_A, EC_WORD_POKEMON, EC_WORD_LADY
@@ -3537,8 +3537,8 @@ gUnknown_84800EC::
.byte 255 @ friendship .byte 255 @ friendship
.string "SHANIA$", 11 .string "SHANIA$", 11
.byte FACILITY_CLASS_SWIMMER_FEMALE_2, 0x01, 0x00 .byte FACILITY_CLASS_SWIMMER_FEMALE_2, 0x01
.align 1
.2byte EC_WORD_A, EC_WORD_POKEMON, EC_WORD_HEROINE, EC_WORD_THAT_S, EC_WORD_WHAT, EC_WORD_I_AM .2byte EC_WORD_A, EC_WORD_POKEMON, EC_WORD_HEROINE, EC_WORD_THAT_S, EC_WORD_WHAT, EC_WORD_I_AM
.2byte EC_WORD_AHAHA, EC_WORD_NO, EC_WORD_WAY, EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_SERIOUSLY .2byte EC_WORD_AHAHA, EC_WORD_NO, EC_WORD_WAY, EC_WORD_YOU_RE, EC_WORD_TOO_WEAK, EC_WORD_SERIOUSLY
.2byte EC_WORD_WHY, EC_WORD_QUES_EXCL, EC_WORD_YOU, EC_WORD_SHOULD, EC_WORD_NOT, EC_WORD_LIE .2byte EC_WORD_WHY, EC_WORD_QUES_EXCL, EC_WORD_YOU, EC_WORD_SHOULD, EC_WORD_NOT, EC_WORD_LIE
@@ -3622,8 +3622,8 @@ gUnknown_84800EC::
gUnknown_84804CC:: gUnknown_84804CC::
.byte 0x18, 0x08, 0x02, 0x0d .byte 0x18, 0x08, 0x02, 0x0d
.string "BRENNAN$", 11 .string "BRENNAN$", 11
.byte FACILITY_CLASS_SAILOR_2, 0x01, 0x00 .byte FACILITY_CLASS_SAILOR_2, 0x01
.align 1
.2byte EC_WORD_TAKE, EC_WORD_THINGS, EC_WORD_EASY, EC_WORD_ELLIPSIS, EC_WORD_THAT_S, EC_WORD_IMPORTANT .2byte EC_WORD_TAKE, EC_WORD_THINGS, EC_WORD_EASY, EC_WORD_ELLIPSIS, EC_WORD_THAT_S, EC_WORD_IMPORTANT
.2byte EC_WORD_YOU, EC_WORD_LOSE, EC_WORD_IF, EC_WORD_YOU, EC_WORD_GIVE_UP, EC_WORD_EXCL .2byte EC_WORD_YOU, EC_WORD_LOSE, EC_WORD_IF, EC_WORD_YOU, EC_WORD_GIVE_UP, EC_WORD_EXCL
.2byte EC_WORD_OOPS, EC_WORD_YOU, EC_WORD_GOT, EC_WORD_AN, EC_WORD_EASY, EC_WORD_WIN .2byte EC_WORD_OOPS, EC_WORD_YOU, EC_WORD_GOT, EC_WORD_AN, EC_WORD_EASY, EC_WORD_WIN
@@ -3702,8 +3702,8 @@ gUnknown_84804CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "KADEN$", 11 .string "KADEN$", 11
.byte FACILITY_CLASS_FISHERMAN_2, 0x01, 0x00 .byte FACILITY_CLASS_FISHERMAN_2, 0x01
.align 1
.2byte EC_WORD_MY, EC_WORD_FISHING, EC_WORD_FASHION, EC_WORD_APPEAL, EC_WORD_IS, EC_WORD_FANTASTIC .2byte EC_WORD_MY, EC_WORD_FISHING, EC_WORD_FASHION, EC_WORD_APPEAL, EC_WORD_IS, EC_WORD_FANTASTIC
.2byte EC_WORD_MY, EC_WORD_FANTASTIC, EC_WORD_FASHION, EC_WORD_APPEAL, EC_WORD_WINS, EC_WORD_OUT .2byte EC_WORD_MY, EC_WORD_FANTASTIC, EC_WORD_FASHION, EC_WORD_APPEAL, EC_WORD_WINS, EC_WORD_OUT
.2byte EC_WORD_UH_OH, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_SEE, EC_WORD_I, EC_WORD_LOST .2byte EC_WORD_UH_OH, EC_WORD_ELLIPSIS, EC_WORD_I, EC_WORD_SEE, EC_WORD_I, EC_WORD_LOST
@@ -3782,8 +3782,8 @@ gUnknown_84804CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "EMANUEL$", 11 .string "EMANUEL$", 11
.byte FACILITY_CLASS_GENTLEMAN_2, 0x01, 0x00 .byte FACILITY_CLASS_GENTLEMAN_2, 0x01
.align 1
.2byte EC_WORD_HMM, EC_WORD_QUES, EC_WORD_ARE, EC_WORD_YOU, EC_WORD_SKILLED, EC_WORD_QUES .2byte EC_WORD_HMM, EC_WORD_QUES, EC_WORD_ARE, EC_WORD_YOU, EC_WORD_SKILLED, EC_WORD_QUES
.2byte EC_WORD_I, EC_WORD_SEE, EC_WORD_I, EC_WORD_WASN_T, EC_WORD_RIGHT, EC_WORD_ELLIPSIS .2byte EC_WORD_I, EC_WORD_SEE, EC_WORD_I, EC_WORD_WASN_T, EC_WORD_RIGHT, EC_WORD_ELLIPSIS
.2byte EC_WORD_YOU, EC_WORD_TRULY, EC_WORD_ARE, EC_WORD_A, EC_WORD_MASTER, EC_WORD_TRAINER .2byte EC_WORD_YOU, EC_WORD_TRULY, EC_WORD_ARE, EC_WORD_A, EC_WORD_MASTER, EC_WORD_TRAINER
@@ -3867,8 +3867,8 @@ gUnknown_84804CC::
gUnknown_84808AC:: gUnknown_84808AC::
.byte 0x19, 0x08, 0x00, 0x0c .byte 0x19, 0x08, 0x00, 0x0c
.string "JARRETT$", 11 .string "JARRETT$", 11
.byte FACILITY_CLASS_JUGGLER, 0x02, 0x00 .byte FACILITY_CLASS_JUGGLER, 0x02
.align 1
.2byte EC_WORD_LET_S, EC_WORD_HAVE, EC_WORD_AN, EC_MOVE2(EXPLOSION), EC_WORD_PARTY, EC_WORD_EXCL .2byte EC_WORD_LET_S, EC_WORD_HAVE, EC_WORD_AN, EC_MOVE2(EXPLOSION), EC_WORD_PARTY, EC_WORD_EXCL
.2byte EC_WORD_CONGRATS, EC_WORD_FOR, EC_WORD_YOUR, EC_WORD_LOSS, EC_WORD_PARTY, EC_WORD_KID .2byte EC_WORD_CONGRATS, EC_WORD_FOR, EC_WORD_YOUR, EC_WORD_LOSS, EC_WORD_PARTY, EC_WORD_KID
.2byte EC_WORD_NICE, EC_MOVE(SELF_DESTRUCT), EC_WORD_THERE, EC_WORD_EXCL, EC_WORD_YOU_RE, EC_WORD_PERFECT .2byte EC_WORD_NICE, EC_MOVE(SELF_DESTRUCT), EC_WORD_THERE, EC_WORD_EXCL, EC_WORD_YOU_RE, EC_WORD_PERFECT
@@ -3954,8 +3954,8 @@ gUnknown_84808AC::
gUnknown_8480C8C:: gUnknown_8480C8C::
.byte 0x1a, 0x08, 0x00, 0x0d .byte 0x1a, 0x08, 0x00, 0x0d
.string "OWEN$", 11 .string "OWEN$", 11
.byte FACILITY_CLASS_SUPER_NERD, 0x02, 0x00 .byte FACILITY_CLASS_SUPER_NERD, 0x02
.align 1
.2byte EC_WORD_HERE_IT_IS, EC_MOVE2(THUNDER_WAVE), EC_WORD_DON_T, EC_MOVE2(WRAP), EC_WORD_ME, EC_WORD_EXCL .2byte EC_WORD_HERE_IT_IS, EC_MOVE2(THUNDER_WAVE), EC_WORD_DON_T, EC_MOVE2(WRAP), EC_WORD_ME, EC_WORD_EXCL
.2byte EC_WORD_ACCEPT, EC_WORD_MY, EC_MOVE2(PRESENT), EC_WORD_OF, EC_MOVE2(THUNDER_WAVE), EC_WORD_EXCL .2byte EC_WORD_ACCEPT, EC_WORD_MY, EC_MOVE2(PRESENT), EC_WORD_OF, EC_MOVE2(THUNDER_WAVE), EC_WORD_EXCL
.2byte EC_MOVE2(WRAP), EC_MOVE(BIND), EC_WORD_ELECTRIC, EC_MOVE2(WHIRLWIND), EC_WORD_SPIRALING, EC_WORD_AROUND .2byte EC_MOVE2(WRAP), EC_MOVE(BIND), EC_WORD_ELECTRIC, EC_MOVE2(WHIRLWIND), EC_WORD_SPIRALING, EC_WORD_AROUND
@@ -4041,8 +4041,8 @@ gUnknown_8480C8C::
gUnknown_848106C:: gUnknown_848106C::
.byte 0x1b, 0x08, 0x00, 0x01 .byte 0x1b, 0x08, 0x00, 0x01
.string "LORENZO$", 11 .string "LORENZO$", 11
.byte FACILITY_CLASS_PSYCHIC_3, 0x01, 0x00 .byte FACILITY_CLASS_PSYCHIC_3, 0x01
.align 1
.2byte EC_WORD_THIS, EC_WORD_POWER, EC_WORD_IS, EC_WORD_NOW, EC_WORD_COMPLETE, EC_WORD_EXCL .2byte EC_WORD_THIS, EC_WORD_POWER, EC_WORD_IS, EC_WORD_NOW, EC_WORD_COMPLETE, EC_WORD_EXCL
.2byte EC_WORD_NO, EC_WORD_KEEN_EYE, EC_WORD_CAN, EC_WORD_STOP, EC_WORD_MY, EC_WORD_POWER .2byte EC_WORD_NO, EC_WORD_KEEN_EYE, EC_WORD_CAN, EC_WORD_STOP, EC_WORD_MY, EC_WORD_POWER
.2byte EC_WORD_HERE_IT_IS, EC_WORD_EXCL, EC_MOVE(KINESIS), EC_WORD_EXCL, EC_WORD_ELLIPSIS, EC_WORD_WHAT .2byte EC_WORD_HERE_IT_IS, EC_WORD_EXCL, EC_MOVE(KINESIS), EC_WORD_EXCL, EC_WORD_ELLIPSIS, EC_WORD_WHAT
@@ -4128,8 +4128,8 @@ gUnknown_848106C::
gUnknown_848144C:: gUnknown_848144C::
.byte 0x1c, 0x08, 0x01, 0x0b .byte 0x1c, 0x08, 0x01, 0x0b
.string "NIA & CARL$", 11 .string "NIA & CARL$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x04, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x04
.align 1
.2byte EC_WORD_HERE_GOES, EC_WORD_MY, EC_WORD_DIGITAL, EC_WORD_ROMANTIC, EC_WORD_HERO, EC_WORD_STRATEGY .2byte EC_WORD_HERE_GOES, EC_WORD_MY, EC_WORD_DIGITAL, EC_WORD_ROMANTIC, EC_WORD_HERO, EC_WORD_STRATEGY
.2byte EC_WORD_THAT_S, EC_WORD_THE, EC_WORD_DIGITAL, EC_WORD_HYPER, EC_WORD_MODE, EC_WORD_POWER .2byte EC_WORD_THAT_S, EC_WORD_THE, EC_WORD_DIGITAL, EC_WORD_HYPER, EC_WORD_MODE, EC_WORD_POWER
.2byte EC_WORD_MY, EC_WORD_PERFECT, EC_WORD_STRATEGY, EC_WORD_WAS, EC_MOVE2(BEAT_UP), EC_WORD_QUES .2byte EC_WORD_MY, EC_WORD_PERFECT, EC_WORD_STRATEGY, EC_WORD_WAS, EC_MOVE2(BEAT_UP), EC_WORD_QUES
@@ -4208,8 +4208,8 @@ gUnknown_848144C::
.byte 255 @ friendship .byte 255 @ friendship
.string "NIA & CARL$", 11 .string "NIA & CARL$", 11
.byte FACILITY_CLASS_COOL_COUPLE, 0x04, 0x00 .byte FACILITY_CLASS_COOL_COUPLE, 0x04
.align 1
.2byte EC_WORD_MASTER, EC_WORD_COMPLETE, EC_WORD_FASHION, EC_WORD_SYSTEM, EC_WORD_START, EC_WORD_EXCL .2byte EC_WORD_MASTER, EC_WORD_COMPLETE, EC_WORD_FASHION, EC_WORD_SYSTEM, EC_WORD_START, EC_WORD_EXCL
.2byte EC_WORD_THAT_S_IT_EXCL, EC_WORD_THE, EC_WORD_POWER, EC_WORD_OF, EC_WORD_OUR, EC_WORD_SYSTEM .2byte EC_WORD_THAT_S_IT_EXCL, EC_WORD_THE, EC_WORD_POWER, EC_WORD_OF, EC_WORD_OUR, EC_WORD_SYSTEM
.2byte EC_WORD_OKAY, EC_WORD_EXCL, EC_MOVE(THUNDERBOLT), EC_WORD_RUN_AWAY, EC_WORD_SYSTEM, EC_WORD_START .2byte EC_WORD_OKAY, EC_WORD_EXCL, EC_MOVE(THUNDERBOLT), EC_WORD_RUN_AWAY, EC_WORD_SYSTEM, EC_WORD_START
@@ -4294,8 +4294,8 @@ gUnknown_848144C::
gUnknown_848182C:: gUnknown_848182C::
.byte 0x1d, 0x08, 0x01, 0x03 .byte 0x1d, 0x08, 0x01, 0x03
.string "AXE & REN$", 11 .string "AXE & REN$", 11
.byte FACILITY_CLASS_SIS_AND_BRO_2, 0x02, 0x00 .byte FACILITY_CLASS_SIS_AND_BRO_2, 0x02
.align 1
.2byte EC_WORD_IT_S, EC_WORD_GOING, EC_WORD_TO, EC_WORD_GET, EC_WORD_AWFULLY, EC_WORD_COLD .2byte EC_WORD_IT_S, EC_WORD_GOING, EC_WORD_TO, EC_WORD_GET, EC_WORD_AWFULLY, EC_WORD_COLD
.2byte EC_WORD_THAT_S, EC_WORD_THAT, EC_WORD_MAN, EC_WORD_I_AM, EC_WORD_COLD, EC_WORD_EXCL .2byte EC_WORD_THAT_S, EC_WORD_THAT, EC_WORD_MAN, EC_WORD_I_AM, EC_WORD_COLD, EC_WORD_EXCL
.2byte EC_WORD_I, EC_WORD_CAN_T_WIN, EC_WORD_IN, EC_WORD_THIS, EC_MOVE(SHEER_COLD), EC_WORD_ELLIPSIS .2byte EC_WORD_I, EC_WORD_CAN_T_WIN, EC_WORD_IN, EC_WORD_THIS, EC_MOVE(SHEER_COLD), EC_WORD_ELLIPSIS
@@ -4374,8 +4374,8 @@ gUnknown_848182C::
.byte 255 @ friendship .byte 255 @ friendship
.string "AXE & REN$", 11 .string "AXE & REN$", 11
.byte FACILITY_CLASS_SIS_AND_BRO_2, 0x02, 0x00 .byte FACILITY_CLASS_SIS_AND_BRO_2, 0x02
.align 1
.2byte EC_WORD_OUR, EC_WORD_SWIFT_SWIM, EC_WORD_LEFT, EC_WORD_ME, EC_WORD_FEELING, EC_WORD_COLD .2byte EC_WORD_OUR, EC_WORD_SWIFT_SWIM, EC_WORD_LEFT, EC_WORD_ME, EC_WORD_FEELING, EC_WORD_COLD
.2byte EC_WORD_I, EC_WORD_WON, EC_WORD_BUT, EC_WORD_I_AM, EC_WORD_NOT, EC_WORD_HOT .2byte EC_WORD_I, EC_WORD_WON, EC_WORD_BUT, EC_WORD_I_AM, EC_WORD_NOT, EC_WORD_HOT
.2byte EC_WORD_I_AM, EC_WORD_HUNGRY, EC_WORD_FOR, EC_WORD_ANY, EC_WORD_HOT, EC_WORD_EATS .2byte EC_WORD_I_AM, EC_WORD_HUNGRY, EC_WORD_FOR, EC_WORD_ANY, EC_WORD_HOT, EC_WORD_EATS
@@ -4460,8 +4460,8 @@ gUnknown_848182C::
gUnknown_8481C0C:: gUnknown_8481C0C::
.byte 0x1e, 0x08, 0x01, 0x05 .byte 0x1e, 0x08, 0x01, 0x05
.string "KATI & GEB$", 11 .string "KATI & GEB$", 11
.byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x02, 0x00 .byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x02
.align 1
.2byte EC_WORD_WELCOME, EC_WORD_TO, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_MOVE2(THUNDER_WAVE), EC_MOVE(SANDSTORM) .2byte EC_WORD_WELCOME, EC_WORD_TO, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_MOVE2(THUNDER_WAVE), EC_MOVE(SANDSTORM)
.2byte EC_WORD_LALALA, EC_WORD_LALALA, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_WORD_LALALA, EC_WORD_LIFE .2byte EC_WORD_LALALA, EC_WORD_LALALA, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_WORD_LALALA, EC_WORD_LIFE
.2byte EC_WORD_I, EC_WORD_NEED, EC_WORD_TO, EC_WORD_LOSE, EC_WORD_MY, EC_MOVE2(FRUSTRATION) .2byte EC_WORD_I, EC_WORD_NEED, EC_WORD_TO, EC_WORD_LOSE, EC_WORD_MY, EC_MOVE2(FRUSTRATION)
@@ -4540,8 +4540,8 @@ gUnknown_8481C0C::
.byte 255 @ friendship .byte 255 @ friendship
.string "KATI & GEB$", 11 .string "KATI & GEB$", 11
.byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x02, 0x00 .byte FACILITY_CLASS_YOUNG_COUPLE_2, 0x02
.align 1
.2byte EC_WORD_I_AM, EC_WORD_PLUS, EC_WORD_YOU_RE, EC_WORD_MINUS, EC_WORD_LOVEY_DOVEY, EC_WORD_MAGNET_PULL .2byte EC_WORD_I_AM, EC_WORD_PLUS, EC_WORD_YOU_RE, EC_WORD_MINUS, EC_WORD_LOVEY_DOVEY, EC_WORD_MAGNET_PULL
.2byte EC_WORD_DON_T, EC_WORD_STOP, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_WORD_LOCOMOTIVE, EC_WORD_EXCL .2byte EC_WORD_DON_T, EC_WORD_STOP, EC_WORD_OUR, EC_WORD_LOVEY_DOVEY, EC_WORD_LOCOMOTIVE, EC_WORD_EXCL
.2byte EC_WORD_HIS, EC_WORD_CRY, EC_WORD_HAS, EC_WORD_CUTE_CHARM, EC_WORD_TOO, EC_WORD_EXCL .2byte EC_WORD_HIS, EC_WORD_CRY, EC_WORD_HAS, EC_WORD_CUTE_CHARM, EC_WORD_TOO, EC_WORD_EXCL
@@ -4626,8 +4626,8 @@ gUnknown_8481C0C::
gUnknown_8481FEC:: gUnknown_8481FEC::
.byte 0x1f, 0x08, 0x02, 0x07 .byte 0x1f, 0x08, 0x02, 0x07
.string "BEN$", 11 .string "BEN$", 11
.byte FACILITY_CLASS_ROCKER, 0x01, 0x00 .byte FACILITY_CLASS_ROCKER, 0x01
.align 1
.2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER .2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER
.2byte EC_WORD_STATIC, EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_YES, EC_WORD_IT, EC_WORD_IS .2byte EC_WORD_STATIC, EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_YES, EC_WORD_IT, EC_WORD_IS
.2byte EC_WORD_ELECTRIC, EC_WORD_ABOUT, EC_WORD_MY, EC_WORD_DIGITAL, EC_WORD_TELEVISION, EC_WORD_I_AM .2byte EC_WORD_ELECTRIC, EC_WORD_ABOUT, EC_WORD_MY, EC_WORD_DIGITAL, EC_WORD_TELEVISION, EC_WORD_I_AM
@@ -4706,8 +4706,8 @@ gUnknown_8481FEC::
.byte 255 @ friendship .byte 255 @ friendship
.string "CAMDEN$", 11 .string "CAMDEN$", 11
.byte FACILITY_CLASS_ENGINEER, 0x01, 0x00 .byte FACILITY_CLASS_ENGINEER, 0x01
.align 1
.2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER .2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER
.2byte EC_WORD_A, EC_MOVE(THUNDERBOLT), EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_TOO, EC_WORD_EXCL .2byte EC_WORD_A, EC_MOVE(THUNDERBOLT), EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_TOO, EC_WORD_EXCL
.2byte EC_WORD_ELECTRIC, EC_WORD_EXCL, EC_WORD_IT_S, EC_WORD_ABOUT, EC_WORD_WIRELESS, EC_WORD_LINK .2byte EC_WORD_ELECTRIC, EC_WORD_EXCL, EC_WORD_IT_S, EC_WORD_ABOUT, EC_WORD_WIRELESS, EC_WORD_LINK
@@ -4786,8 +4786,8 @@ gUnknown_8481FEC::
.byte 255 @ friendship .byte 255 @ friendship
.string "ZACKERY$", 11 .string "ZACKERY$", 11
.byte FACILITY_CLASS_SCIENTIST, 0x01, 0x00 .byte FACILITY_CLASS_SCIENTIST, 0x01
.align 1
.2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER .2byte EC_WORD_LALALA, EC_WORD_LET_S, EC_MOVE(SING), EC_WORD_ABOUT, EC_WORD_ELECTRIC, EC_WORD_POWER
.2byte EC_MOVE2(THUNDER_SHOCK), EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_YOU, EC_WORD_KNOW, EC_WORD_QUES .2byte EC_MOVE2(THUNDER_SHOCK), EC_WORD_IS, EC_WORD_ELECTRIC, EC_WORD_YOU, EC_WORD_KNOW, EC_WORD_QUES
.2byte EC_WORD_ELECTRIC, EC_WORD_EXCL, EC_MOVE2(FLASH), EC_MOVE2(FLASH), EC_MOVE2(FLASH), EC_WORD_EXCL_EXCL .2byte EC_WORD_ELECTRIC, EC_WORD_EXCL, EC_MOVE2(FLASH), EC_MOVE2(FLASH), EC_MOVE2(FLASH), EC_WORD_EXCL_EXCL
@@ -4871,8 +4871,8 @@ gUnknown_8481FEC::
gUnknown_84823CC:: gUnknown_84823CC::
.byte 0x20, 0x08, 0x02, 0x0e .byte 0x20, 0x08, 0x02, 0x0e
.string "MAURA$", 11 .string "MAURA$", 11
.byte FACILITY_CLASS_BEAUTY_2, 0x02, 0x00 .byte FACILITY_CLASS_BEAUTY_2, 0x02
.align 1
.2byte EC_WORD_I_AM, EC_WORD_THE, EC_WORD_GROUP, EC_WORD_LEADER, EC_WORD_EXCL, 0xFFFF .2byte EC_WORD_I_AM, EC_WORD_THE, EC_WORD_GROUP, EC_WORD_LEADER, EC_WORD_EXCL, 0xFFFF
.2byte EC_WORD_WHAT, EC_WORD_AM, EC_WORD_I, EC_WORD_LEADER, EC_WORD_OF, EC_WORD_QUES .2byte EC_WORD_WHAT, EC_WORD_AM, EC_WORD_I, EC_WORD_LEADER, EC_WORD_OF, EC_WORD_QUES
.2byte EC_WORD_I_AM, EC_WORD_NO, EC_WORD_LEADER, EC_WORD_IT_S, EC_WORD_A_LITTLE, EC_WORD_LIE .2byte EC_WORD_I_AM, EC_WORD_NO, EC_WORD_LEADER, EC_WORD_IT_S, EC_WORD_A_LITTLE, EC_WORD_LIE
@@ -4951,8 +4951,8 @@ gUnknown_84823CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "MIKAELA$", 11 .string "MIKAELA$", 11
.byte FACILITY_CLASS_LASS_2, 0x01, 0x00 .byte FACILITY_CLASS_LASS_2, 0x01
.align 1
.2byte EC_WORD_I_AM, EC_WORD_REALLY, EC_WORD_THE, EC_WORD_NO_1, EC_WORD_TRAINER, EC_WORD_HERE .2byte EC_WORD_I_AM, EC_WORD_REALLY, EC_WORD_THE, EC_WORD_NO_1, EC_WORD_TRAINER, EC_WORD_HERE
.2byte EC_WORD_NEVER, EC_WORD_SAID, EC_WORD_WHAT, EC_WORD_I_AM, EC_WORD_NO_1, EC_WORD_AT .2byte EC_WORD_NEVER, EC_WORD_SAID, EC_WORD_WHAT, EC_WORD_I_AM, EC_WORD_NO_1, EC_WORD_AT
.2byte EC_WORD_NEXT, EC_WORD_TIME, EC_WORD_I, EC_WORD_WILL, EC_WORD_BE, EC_WORD_OVERWHELMING .2byte EC_WORD_NEXT, EC_WORD_TIME, EC_WORD_I, EC_WORD_WILL, EC_WORD_BE, EC_WORD_OVERWHELMING
@@ -5031,8 +5031,8 @@ gUnknown_84823CC::
.byte 255 @ friendship .byte 255 @ friendship
.string "FLINT$", 11 .string "FLINT$", 11
.byte FACILITY_CLASS_ENGINEER, 0x04, 0x00 .byte FACILITY_CLASS_ENGINEER, 0x04
.align 1
.2byte EC_WORD_I_AM, EC_WORD_THE, EC_MOVE2(MILK_DRINK), EC_WORD_WORLD, EC_WORD_LEADER, EC_WORD_EXCL .2byte EC_WORD_I_AM, EC_WORD_THE, EC_MOVE2(MILK_DRINK), EC_WORD_WORLD, EC_WORD_LEADER, EC_WORD_EXCL
.2byte EC_WORD_I_VE, EC_WORD_WON, EC_WORD_THIS, EC_MOVE2(MILK_DRINK), EC_WORD_MATCH, EC_WORD_EXCL .2byte EC_WORD_I_VE, EC_WORD_WON, EC_WORD_THIS, EC_MOVE2(MILK_DRINK), EC_WORD_MATCH, EC_WORD_EXCL
.2byte EC_WORD_I, EC_WORD_CAN_T, EC_WORD_DRINK, EC_WORD_ANY, EC_WORD_MORE, EC_WORD_DRINKS .2byte EC_WORD_I, EC_WORD_CAN_T, EC_WORD_DRINK, EC_WORD_ANY, EC_WORD_MORE, EC_WORD_DRINKS
+1
View File
@@ -43,6 +43,7 @@ u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreChosenMoves);
void RunBattleScriptCommands_PopCallbacksStack(void); void RunBattleScriptCommands_PopCallbacksStack(void);
void RunBattleScriptCommands(void); void RunBattleScriptCommands(void);
bool8 TryRunFromBattle(u8 bank); bool8 TryRunFromBattle(u8 bank);
void sub_800FD9C(void);
extern const u8 gStatusConditionString_PoisonJpn[8]; extern const u8 gStatusConditionString_PoisonJpn[8];
extern const u8 gStatusConditionString_SleepJpn[8]; extern const u8 gStatusConditionString_SleepJpn[8];
+1
View File
@@ -17,5 +17,6 @@ void BattleSetup_StartTrainerBattle(void);
u8 *BattleSetup_GetScriptAddrAfterBattle(void); u8 *BattleSetup_GetScriptAddrAfterBattle(void);
u8 *BattleSetup_GetTrainerPostBattleScript(void); u8 *BattleSetup_GetTrainerPostBattleScript(void);
void sub_80803FC(void); void sub_80803FC(void);
u8 sub_8080060(void);
#endif // GUARD_BATTLE_SETUP_H #endif // GUARD_BATTLE_SETUP_H
+3 -1
View File
@@ -3,6 +3,8 @@
#include "global.h" #include "global.h"
void sub_8149DFC(u8 a1); void sub_8149DFC(u8 a0);
bool8 sub_80D08F8(void);
void sub_80D08B8(u8 a0);
#endif // GUARD_BATTLE_TRANSITION_H #endif // GUARD_BATTLE_TRANSITION_H
+3
View File
@@ -59,4 +59,7 @@ extern u16 gSpecialVar_0x8014;
extern u16 gSpecialVar_Result; extern u16 gSpecialVar_Result;
extern u16 gSpecialVar_0x8004; extern u16 gSpecialVar_0x8004;
extern u16 gUnknown_20370DA;
extern u16 gUnknown_20370DC;
#endif // GUARD_EVENT_DATA_H #endif // GUARD_EVENT_DATA_H
+16 -1
View File
@@ -709,6 +709,21 @@ struct MEventBuffers
/*0x344 0x3464*/ u32 unk_344[2][5]; /*0x344 0x3464*/ u32 unk_344[2][5];
}; // 0x36C 0x348C }; // 0x36C 0x348C
struct TrainerTowerLog
{
u32 unk0;
u32 unk4;
u8 unk8;
u8 unk9;
u8 unkA_0:1;
u8 unkA_1:1;
u8 unkA_2:1;
u8 unkA_3:1;
u8 unkA_4:1;
u8 unkA_5:1;
u8 unkA_6:2;
};
struct SaveBlock1 struct SaveBlock1
{ {
/*0x0000*/ struct Coords16 pos; /*0x0000*/ struct Coords16 pos;
@@ -766,7 +781,7 @@ struct SaveBlock1
/*0x3A54*/ struct FameCheckerSaveData fameChecker[NUM_FAMECHECKER_PERSONS]; /*0x3A54*/ struct FameCheckerSaveData fameChecker[NUM_FAMECHECKER_PERSONS];
/*0x3A94*/ u8 filler3A94[0x2A0]; /*0x3A94*/ u8 filler3A94[0x2A0];
/*0x3D34*/ u32 unkArrayIdx; /*0x3D34*/ u32 unkArrayIdx;
/*0x3D38*/ u32 unkArray[4][3]; /*0x3D38*/ struct TrainerTowerLog unkArray[4];
}; };
extern struct SaveBlock1* gSaveBlock1Ptr; extern struct SaveBlock1* gSaveBlock1Ptr;
+1
View File
@@ -64,5 +64,6 @@ void sub_809A2DC(void);
void sub_809A2A4(void); void sub_809A2A4(void);
void sub_8099E90(u16, u8 *); void sub_8099E90(u16, u8 *);
void sub_809A824(u16 itemId); void sub_809A824(u16 itemId);
bool8 AddBagItem(u16 itemId, u16 amount);
#endif // ITEM_H #endif // ITEM_H
+1
View File
@@ -66,6 +66,7 @@ void DoSoftReset(void);
void ClearPokemonCrySongs(void); void ClearPokemonCrySongs(void);
void RestoreSerialTimer3IntrHandlers(void); void RestoreSerialTimer3IntrHandlers(void);
void SetVBlankCounter1Ptr(u32 *ptr); void SetVBlankCounter1Ptr(u32 *ptr);
void DisableVBlankCounter1(void);
extern const char RomHeaderGameCode[4]; extern const char RomHeaderGameCode[4];
extern const char RomHeaderSoftwareVersion; extern const char RomHeaderSoftwareVersion;
+2
View File
@@ -88,6 +88,8 @@ void SetCurrentMapLayout(u16 mapDataId);
void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y); void SetWarpDestinationToFixedHoleWarp(s16 x, s16 y);
void ResetInitialPlayerAvatarState(void); void ResetInitialPlayerAvatarState(void);
void sub_8055D40(u16 mapDataId);
void sub_80563F0(void);
extern u8 gUnknown_2031DD8; extern u8 gUnknown_2031DD8;
extern u8 gUnknown_2036E28; extern u8 gUnknown_2036E28;
+2
View File
@@ -670,4 +670,6 @@ void DoMonFrontSpriteAnimation(struct Sprite* sprite, u16 species, bool8 noCry,
void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3); void BattleAnimateFrontSprite(struct Sprite* sprite, u16 species, bool8 noCry, u8 arg3);
void BattleAnimateBackSprite(struct Sprite* sprite, u16 species); void BattleAnimateBackSprite(struct Sprite* sprite, u16 species);
void PlayMapChosenOrBattleBGM(u16 songId);
#endif // GUARD_POKEMON_H #endif // GUARD_POKEMON_H
+1 -1
View File
@@ -287,7 +287,7 @@ void ApplyNewEncryptionKeyToAllEncryptedData(u32 encryptionKey)
int i; int i;
for(i = 0; i < 4; i++) for(i = 0; i < 4; i++)
ApplyNewEncryptionKeyToWord(&gSaveBlock1Ptr->unkArray[i][1], encryptionKey); ApplyNewEncryptionKeyToWord(&gSaveBlock1Ptr->unkArray[i].unk4, encryptionKey);
sub_8054F38(encryptionKey); sub_8054F38(encryptionKey);
ApplyNewEncryptionKeyToBagItems_(encryptionKey); ApplyNewEncryptionKeyToBagItems_(encryptionKey);
+132 -125
View File
@@ -53,32 +53,32 @@ const u8 sScriptConditionTable[6][3] =
#define SCRCMD_DEF(name) bool8 name(struct ScriptContext *ctx) #define SCRCMD_DEF(name) bool8 ScrCmd_##name(struct ScriptContext *ctx)
SCRCMD_DEF(ScrCmd_nop) SCRCMD_DEF(nop)
{ {
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_nop1) SCRCMD_DEF(nop1)
{ {
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_end) SCRCMD_DEF(end)
{ {
StopScript(ctx); StopScript(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_gotonative) SCRCMD_DEF(gotonative)
{ {
bool8 (*func)(void) = (bool8 (*)(void))ScriptReadWord(ctx); bool8 (*func)(void) = (bool8 (*)(void))ScriptReadWord(ctx);
SetupNativeScript(ctx, func); SetupNativeScript(ctx, func);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_special) SCRCMD_DEF(special)
{ {
u16 (*const *specialPtr)(void) = gSpecials + ScriptReadHalfword(ctx); u16 (*const *specialPtr)(void) = gSpecials + ScriptReadHalfword(ctx);
if (specialPtr < gSpecialsEnd) if (specialPtr < gSpecialsEnd)
@@ -88,7 +88,7 @@ SCRCMD_DEF(ScrCmd_special)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_specialvar) SCRCMD_DEF(specialvar)
{ {
u16 * varPtr = GetVarPointer(ScriptReadHalfword(ctx)); u16 * varPtr = GetVarPointer(ScriptReadHalfword(ctx));
u16 (*const *specialPtr)(void) = gSpecials + ScriptReadHalfword(ctx); u16 (*const *specialPtr)(void) = gSpecials + ScriptReadHalfword(ctx);
@@ -99,40 +99,40 @@ SCRCMD_DEF(ScrCmd_specialvar)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_callnative) SCRCMD_DEF(callnative)
{ {
void (*func )(void) = ((void (*)(void))ScriptReadWord(ctx)); void (*func )(void) = ((void (*)(void))ScriptReadWord(ctx));
func(); func();
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_waitstate) SCRCMD_DEF(waitstate)
{ {
ScriptContext1_Stop(); ScriptContext1_Stop();
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_goto) SCRCMD_DEF(goto)
{ {
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
ScriptJump(ctx, scrptr); ScriptJump(ctx, scrptr);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_return) SCRCMD_DEF(return)
{ {
ScriptReturn(ctx); ScriptReturn(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_call) SCRCMD_DEF(call)
{ {
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
ScriptCall(ctx, scrptr); ScriptCall(ctx, scrptr);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_goto_if) SCRCMD_DEF(goto_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
@@ -141,7 +141,7 @@ SCRCMD_DEF(ScrCmd_goto_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_call_if) SCRCMD_DEF(call_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
@@ -150,7 +150,7 @@ SCRCMD_DEF(ScrCmd_call_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setvaddress) SCRCMD_DEF(setvaddress)
{ {
u32 addr1 = (u32)ctx->scriptPtr - 1; u32 addr1 = (u32)ctx->scriptPtr - 1;
u32 addr2 = ScriptReadWord(ctx); u32 addr2 = ScriptReadWord(ctx);
@@ -159,21 +159,21 @@ SCRCMD_DEF(ScrCmd_setvaddress)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_vgoto) SCRCMD_DEF(vgoto)
{ {
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
ScriptJump(ctx, scrptr - gVScriptOffset); ScriptJump(ctx, scrptr - gVScriptOffset);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_vcall) SCRCMD_DEF(vcall)
{ {
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx); const u8 * scrptr = (const u8 *)ScriptReadWord(ctx);
ScriptCall(ctx, scrptr - gVScriptOffset); ScriptCall(ctx, scrptr - gVScriptOffset);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_vgoto_if) SCRCMD_DEF(vgoto_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx) - gVScriptOffset; const u8 * scrptr = (const u8 *)ScriptReadWord(ctx) - gVScriptOffset;
@@ -182,7 +182,7 @@ SCRCMD_DEF(ScrCmd_vgoto_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_vcall_if) SCRCMD_DEF(vcall_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
const u8 * scrptr = (const u8 *)ScriptReadWord(ctx) - gVScriptOffset; const u8 * scrptr = (const u8 *)ScriptReadWord(ctx) - gVScriptOffset;
@@ -191,7 +191,7 @@ SCRCMD_DEF(ScrCmd_vcall_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_gotostd) SCRCMD_DEF(gotostd)
{ {
u8 stdIdx = ScriptReadByte(ctx); u8 stdIdx = ScriptReadByte(ctx);
const u8 *const * script = gStdScripts + stdIdx; const u8 *const * script = gStdScripts + stdIdx;
@@ -200,7 +200,7 @@ SCRCMD_DEF(ScrCmd_gotostd)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_callstd) SCRCMD_DEF(callstd)
{ {
u8 stdIdx = ScriptReadByte(ctx); u8 stdIdx = ScriptReadByte(ctx);
const u8 *const * script = gStdScripts + stdIdx; const u8 *const * script = gStdScripts + stdIdx;
@@ -209,7 +209,7 @@ SCRCMD_DEF(ScrCmd_callstd)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_gotostd_if) SCRCMD_DEF(gotostd_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
u8 stdIdx = ScriptReadByte(ctx); u8 stdIdx = ScriptReadByte(ctx);
@@ -222,7 +222,7 @@ SCRCMD_DEF(ScrCmd_gotostd_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_callstd_if) SCRCMD_DEF(callstd_if)
{ {
u8 condition = ScriptReadByte(ctx); u8 condition = ScriptReadByte(ctx);
u8 stdIdx = ScriptReadByte(ctx); u8 stdIdx = ScriptReadByte(ctx);
@@ -235,26 +235,26 @@ SCRCMD_DEF(ScrCmd_callstd_if)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_gotoram) SCRCMD_DEF(gotoram)
{ {
ScriptJump(ctx, gRAMScriptPtr); ScriptJump(ctx, gRAMScriptPtr);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_killscript) SCRCMD_DEF(killscript)
{ {
ClearRamScript(); ClearRamScript();
StopScript(ctx); StopScript(ctx);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_setmysteryeventstatus) SCRCMD_DEF(setmysteryeventstatus)
{ {
SetMysteryEventScriptStatus(ScriptReadByte(ctx)); SetMysteryEventScriptStatus(ScriptReadByte(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_cmdCF) SCRCMD_DEF(cmdCF)
{ {
const u8 * script = sub_8069E48(); const u8 * script = sub_8069E48();
if (script != NULL) if (script != NULL)
@@ -265,42 +265,42 @@ SCRCMD_DEF(ScrCmd_cmdCF)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_loadword) SCRCMD_DEF(loadword)
{ {
u8 which = ScriptReadByte(ctx); u8 which = ScriptReadByte(ctx);
ctx->data[which] = ScriptReadWord(ctx); ctx->data[which] = ScriptReadWord(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_loadbytefromaddr) SCRCMD_DEF(loadbytefromaddr)
{ {
u8 which = ScriptReadByte(ctx); u8 which = ScriptReadByte(ctx);
ctx->data[which] = *(const u8 *)ScriptReadWord(ctx); ctx->data[which] = *(const u8 *)ScriptReadWord(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_writebytetoaddr) SCRCMD_DEF(writebytetoaddr)
{ {
u8 value = ScriptReadByte(ctx); u8 value = ScriptReadByte(ctx);
*(u8 *)ScriptReadWord(ctx) = value; *(u8 *)ScriptReadWord(ctx) = value;
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_loadbyte) SCRCMD_DEF(loadbyte)
{ {
u8 which = ScriptReadByte(ctx); u8 which = ScriptReadByte(ctx);
ctx->data[which] = ScriptReadByte(ctx); ctx->data[which] = ScriptReadByte(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setptrbyte) SCRCMD_DEF(setptrbyte)
{ {
u8 which = ScriptReadByte(ctx); u8 which = ScriptReadByte(ctx);
*(u8 *)ScriptReadWord(ctx) = ctx->data[which]; *(u8 *)ScriptReadWord(ctx) = ctx->data[which];
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_copylocal) SCRCMD_DEF(copylocal)
{ {
u8 whichDst = ScriptReadByte(ctx); u8 whichDst = ScriptReadByte(ctx);
u8 whichSrc = ScriptReadByte(ctx); u8 whichSrc = ScriptReadByte(ctx);
@@ -308,21 +308,21 @@ SCRCMD_DEF(ScrCmd_copylocal)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_copybyte) SCRCMD_DEF(copybyte)
{ {
u8 * dest = (u8 *)ScriptReadWord(ctx); u8 * dest = (u8 *)ScriptReadWord(ctx);
*dest = *(const u8 *)ScriptReadWord(ctx); *dest = *(const u8 *)ScriptReadWord(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setvar) SCRCMD_DEF(setvar)
{ {
u16 * varPtr = GetVarPointer(ScriptReadHalfword(ctx)); u16 * varPtr = GetVarPointer(ScriptReadHalfword(ctx));
*varPtr = ScriptReadHalfword(ctx); *varPtr = ScriptReadHalfword(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_copyvar) SCRCMD_DEF(copyvar)
{ {
u16 * destPtr = GetVarPointer(ScriptReadHalfword(ctx)); u16 * destPtr = GetVarPointer(ScriptReadHalfword(ctx));
u16 * srcPtr = GetVarPointer(ScriptReadHalfword(ctx)); u16 * srcPtr = GetVarPointer(ScriptReadHalfword(ctx));
@@ -330,7 +330,7 @@ SCRCMD_DEF(ScrCmd_copyvar)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setorcopyvar) SCRCMD_DEF(setorcopyvar)
{ {
u16 * destPtr = GetVarPointer(ScriptReadHalfword(ctx)); u16 * destPtr = GetVarPointer(ScriptReadHalfword(ctx));
*destPtr = VarGet(ScriptReadHalfword(ctx)); *destPtr = VarGet(ScriptReadHalfword(ctx));
@@ -355,7 +355,7 @@ u8 compare_012(u16 left, u16 right)
} }
// comparelocaltolocal // comparelocaltolocal
SCRCMD_DEF(ScrCmd_compare_local_to_local) SCRCMD_DEF(compare_local_to_local)
{ {
const u8 value1 = ctx->data[ScriptReadByte(ctx)]; const u8 value1 = ctx->data[ScriptReadByte(ctx)];
const u8 value2 = ctx->data[ScriptReadByte(ctx)]; const u8 value2 = ctx->data[ScriptReadByte(ctx)];
@@ -365,7 +365,7 @@ SCRCMD_DEF(ScrCmd_compare_local_to_local)
} }
// comparelocaltoimm // comparelocaltoimm
SCRCMD_DEF(ScrCmd_compare_local_to_value) SCRCMD_DEF(compare_local_to_value)
{ {
const u8 value1 = ctx->data[ScriptReadByte(ctx)]; const u8 value1 = ctx->data[ScriptReadByte(ctx)];
const u8 value2 = ScriptReadByte(ctx); const u8 value2 = ScriptReadByte(ctx);
@@ -374,7 +374,7 @@ SCRCMD_DEF(ScrCmd_compare_local_to_value)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_local_to_addr) SCRCMD_DEF(compare_local_to_addr)
{ {
const u8 value1 = ctx->data[ScriptReadByte(ctx)]; const u8 value1 = ctx->data[ScriptReadByte(ctx)];
const u8 value2 = *(const u8 *)ScriptReadWord(ctx); const u8 value2 = *(const u8 *)ScriptReadWord(ctx);
@@ -383,7 +383,7 @@ SCRCMD_DEF(ScrCmd_compare_local_to_addr)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_addr_to_local) SCRCMD_DEF(compare_addr_to_local)
{ {
const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
const u8 value2 = ctx->data[ScriptReadByte(ctx)]; const u8 value2 = ctx->data[ScriptReadByte(ctx)];
@@ -392,7 +392,7 @@ SCRCMD_DEF(ScrCmd_compare_addr_to_local)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_addr_to_value) SCRCMD_DEF(compare_addr_to_value)
{ {
const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
const u8 value2 = ScriptReadByte(ctx); const u8 value2 = ScriptReadByte(ctx);
@@ -401,7 +401,7 @@ SCRCMD_DEF(ScrCmd_compare_addr_to_value)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_addr_to_addr) SCRCMD_DEF(compare_addr_to_addr)
{ {
const u8 value1 = *(const u8 *)ScriptReadWord(ctx); const u8 value1 = *(const u8 *)ScriptReadWord(ctx);
const u8 value2 = *(const u8 *)ScriptReadWord(ctx); const u8 value2 = *(const u8 *)ScriptReadWord(ctx);
@@ -410,7 +410,7 @@ SCRCMD_DEF(ScrCmd_compare_addr_to_addr)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_var_to_value) SCRCMD_DEF(compare_var_to_value)
{ {
const u16 value1 = *GetVarPointer(ScriptReadHalfword(ctx)); const u16 value1 = *GetVarPointer(ScriptReadHalfword(ctx));
const u16 value2 = ScriptReadHalfword(ctx); const u16 value2 = ScriptReadHalfword(ctx);
@@ -419,7 +419,7 @@ SCRCMD_DEF(ScrCmd_compare_var_to_value)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_compare_var_to_var) SCRCMD_DEF(compare_var_to_var)
{ {
const u16 *ptr1 = GetVarPointer(ScriptReadHalfword(ctx)); const u16 *ptr1 = GetVarPointer(ScriptReadHalfword(ctx));
const u16 *ptr2 = GetVarPointer(ScriptReadHalfword(ctx)); const u16 *ptr2 = GetVarPointer(ScriptReadHalfword(ctx));
@@ -428,21 +428,21 @@ SCRCMD_DEF(ScrCmd_compare_var_to_var)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_addvar) SCRCMD_DEF(addvar)
{ {
u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx)); u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx));
*ptr += ScriptReadHalfword(ctx); *ptr += ScriptReadHalfword(ctx);
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_subvar) SCRCMD_DEF(subvar)
{ {
u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx)); u16 *ptr = GetVarPointer(ScriptReadHalfword(ctx));
*ptr -= VarGet(ScriptReadHalfword(ctx)); *ptr -= VarGet(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_random) SCRCMD_DEF(random)
{ {
u16 max = VarGet(ScriptReadHalfword(ctx)); u16 max = VarGet(ScriptReadHalfword(ctx));
@@ -450,7 +450,7 @@ SCRCMD_DEF(ScrCmd_random)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_giveitem) SCRCMD_DEF(giveitem)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u32 quantity = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -460,7 +460,7 @@ SCRCMD_DEF(ScrCmd_giveitem)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_takeitem) SCRCMD_DEF(takeitem)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u32 quantity = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -469,7 +469,7 @@ SCRCMD_DEF(ScrCmd_takeitem)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkitemspace) SCRCMD_DEF(checkitemspace)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u32 quantity = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -478,7 +478,7 @@ SCRCMD_DEF(ScrCmd_checkitemspace)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkitem) SCRCMD_DEF(checkitem)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u32 quantity = VarGet(ScriptReadHalfword(ctx)); u32 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -487,7 +487,7 @@ SCRCMD_DEF(ScrCmd_checkitem)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkitemtype) SCRCMD_DEF(checkitemtype)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
@@ -495,7 +495,7 @@ SCRCMD_DEF(ScrCmd_checkitemtype)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_givepcitem) SCRCMD_DEF(givepcitem)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u16 quantity = VarGet(ScriptReadHalfword(ctx)); u16 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -504,7 +504,7 @@ SCRCMD_DEF(ScrCmd_givepcitem)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkpcitem) SCRCMD_DEF(checkpcitem)
{ {
u16 itemId = VarGet(ScriptReadHalfword(ctx)); u16 itemId = VarGet(ScriptReadHalfword(ctx));
u16 quantity = VarGet(ScriptReadHalfword(ctx)); u16 quantity = VarGet(ScriptReadHalfword(ctx));
@@ -513,7 +513,7 @@ SCRCMD_DEF(ScrCmd_checkpcitem)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_givedecoration) SCRCMD_DEF(givedecoration)
{ {
u32 decorId = VarGet(ScriptReadHalfword(ctx)); u32 decorId = VarGet(ScriptReadHalfword(ctx));
@@ -521,7 +521,7 @@ SCRCMD_DEF(ScrCmd_givedecoration)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_takedecoration) SCRCMD_DEF(takedecoration)
{ {
u32 decorId = VarGet(ScriptReadHalfword(ctx)); u32 decorId = VarGet(ScriptReadHalfword(ctx));
@@ -529,7 +529,7 @@ SCRCMD_DEF(ScrCmd_takedecoration)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkdecorspace) SCRCMD_DEF(checkdecorspace)
{ {
u32 decorId = VarGet(ScriptReadHalfword(ctx)); u32 decorId = VarGet(ScriptReadHalfword(ctx));
@@ -537,7 +537,7 @@ SCRCMD_DEF(ScrCmd_checkdecorspace)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkdecor) SCRCMD_DEF(checkdecor)
{ {
u32 decorId = VarGet(ScriptReadHalfword(ctx)); u32 decorId = VarGet(ScriptReadHalfword(ctx));
@@ -545,31 +545,31 @@ SCRCMD_DEF(ScrCmd_checkdecor)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setflag) SCRCMD_DEF(setflag)
{ {
FlagSet(ScriptReadHalfword(ctx)); FlagSet(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_clearflag) SCRCMD_DEF(clearflag)
{ {
FlagClear(ScriptReadHalfword(ctx)); FlagClear(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_checkflag) SCRCMD_DEF(checkflag)
{ {
ctx->comparisonResult = FlagGet(ScriptReadHalfword(ctx)); ctx->comparisonResult = FlagGet(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_incrementgamestat) SCRCMD_DEF(incrementgamestat)
{ {
IncrementGameStat(ScriptReadByte(ctx)); IncrementGameStat(ScriptReadByte(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_comparestattoword) SCRCMD_DEF(comparestattoword)
{ {
u8 statIdx = ScriptReadByte(ctx); u8 statIdx = ScriptReadByte(ctx);
u32 value = ScriptReadWord(ctx); u32 value = ScriptReadWord(ctx);
@@ -584,7 +584,7 @@ SCRCMD_DEF(ScrCmd_comparestattoword)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_cmdD0) SCRCMD_DEF(cmdD0)
{ {
u16 value = ScriptReadHalfword(ctx); u16 value = ScriptReadHalfword(ctx);
sub_8115748(value); sub_8115748(value);
@@ -592,14 +592,14 @@ SCRCMD_DEF(ScrCmd_cmdD0)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_animateflash) SCRCMD_DEF(animateflash)
{ {
sub_807F028(ScriptReadByte(ctx)); sub_807F028(ScriptReadByte(ctx));
ScriptContext1_Stop(); ScriptContext1_Stop();
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_setflashradius) SCRCMD_DEF(setflashradius)
{ {
u16 flashLevel = VarGet(ScriptReadHalfword(ctx)); u16 flashLevel = VarGet(ScriptReadHalfword(ctx));
@@ -615,14 +615,14 @@ static bool8 IsPaletteNotActive(void)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_fadescreen) SCRCMD_DEF(fadescreen)
{ {
fade_screen(ScriptReadByte(ctx), 0); fade_screen(ScriptReadByte(ctx), 0);
SetupNativeScript(ctx, IsPaletteNotActive); SetupNativeScript(ctx, IsPaletteNotActive);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_fadescreenspeed) SCRCMD_DEF(fadescreenspeed)
{ {
u8 mode = ScriptReadByte(ctx); u8 mode = ScriptReadByte(ctx);
u8 speed = ScriptReadByte(ctx); u8 speed = ScriptReadByte(ctx);
@@ -642,14 +642,14 @@ static bool8 RunPauseTimer(void)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_delay) SCRCMD_DEF(delay)
{ {
sPauseCounter = ScriptReadHalfword(ctx); sPauseCounter = ScriptReadHalfword(ctx);
SetupNativeScript(ctx, RunPauseTimer); SetupNativeScript(ctx, RunPauseTimer);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_initclock) SCRCMD_DEF(initclock)
{ {
// u8 hour = VarGet(ScriptReadHalfword(ctx)); // u8 hour = VarGet(ScriptReadHalfword(ctx));
// u8 minute = VarGet(ScriptReadHalfword(ctx)); // u8 minute = VarGet(ScriptReadHalfword(ctx));
@@ -658,13 +658,13 @@ SCRCMD_DEF(ScrCmd_initclock)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_dodailyevents) SCRCMD_DEF(dodailyevents)
{ {
// DoTimeBasedEvents(); // DoTimeBasedEvents();
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_gettime) SCRCMD_DEF(gettime)
{ {
// RtcCalcLocalTime(); // RtcCalcLocalTime();
// gSpecialVar_0x8000 = gLocalTime.hours; // gSpecialVar_0x8000 = gLocalTime.hours;
@@ -676,7 +676,7 @@ SCRCMD_DEF(ScrCmd_gettime)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setweather) SCRCMD_DEF(setweather)
{ {
u16 weather = VarGet(ScriptReadHalfword(ctx)); u16 weather = VarGet(ScriptReadHalfword(ctx));
@@ -684,25 +684,25 @@ SCRCMD_DEF(ScrCmd_setweather)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_resetweather) SCRCMD_DEF(resetweather)
{ {
SetSav1WeatherFromCurrMapHeader(); SetSav1WeatherFromCurrMapHeader();
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_doweather) SCRCMD_DEF(doweather)
{ {
DoCurrentWeather(); DoCurrentWeather();
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setstepcallback) SCRCMD_DEF(setstepcallback)
{ {
ActivatePerStepCallback(ScriptReadByte(ctx)); ActivatePerStepCallback(ScriptReadByte(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setmaplayoutindex) SCRCMD_DEF(setmaplayoutindex)
{ {
u16 value = VarGet(ScriptReadHalfword(ctx)); u16 value = VarGet(ScriptReadHalfword(ctx));
@@ -710,7 +710,7 @@ SCRCMD_DEF(ScrCmd_setmaplayoutindex)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_warp) SCRCMD_DEF(warp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -724,7 +724,7 @@ SCRCMD_DEF(ScrCmd_warp)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_warpsilent) SCRCMD_DEF(warpsilent)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -738,7 +738,7 @@ SCRCMD_DEF(ScrCmd_warpsilent)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_warpdoor) SCRCMD_DEF(warpdoor)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -752,7 +752,7 @@ SCRCMD_DEF(ScrCmd_warpdoor)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_warphole) SCRCMD_DEF(warphole)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -769,7 +769,7 @@ SCRCMD_DEF(ScrCmd_warphole)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_warpteleport) SCRCMD_DEF(warpteleport)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -783,7 +783,7 @@ SCRCMD_DEF(ScrCmd_warpteleport)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_warpD1) SCRCMD_DEF(warpD1)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -798,7 +798,7 @@ SCRCMD_DEF(ScrCmd_warpD1)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_setwarp) SCRCMD_DEF(setwarp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -810,7 +810,7 @@ SCRCMD_DEF(ScrCmd_setwarp)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setdynamicwarp) SCRCMD_DEF(setdynamicwarp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -822,7 +822,7 @@ SCRCMD_DEF(ScrCmd_setdynamicwarp)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setdivewarp) SCRCMD_DEF(setdivewarp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -834,7 +834,7 @@ SCRCMD_DEF(ScrCmd_setdivewarp)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setholewarp) SCRCMD_DEF(setholewarp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -846,7 +846,7 @@ SCRCMD_DEF(ScrCmd_setholewarp)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setescapewarp) SCRCMD_DEF(setescapewarp)
{ {
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
u8 mapNum = ScriptReadByte(ctx); u8 mapNum = ScriptReadByte(ctx);
@@ -858,7 +858,7 @@ SCRCMD_DEF(ScrCmd_setescapewarp)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_getplayerxy) SCRCMD_DEF(getplayerxy)
{ {
u16 *pX = GetVarPointer(ScriptReadHalfword(ctx)); u16 *pX = GetVarPointer(ScriptReadHalfword(ctx));
u16 *pY = GetVarPointer(ScriptReadHalfword(ctx)); u16 *pY = GetVarPointer(ScriptReadHalfword(ctx));
@@ -868,13 +868,13 @@ SCRCMD_DEF(ScrCmd_getplayerxy)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_getpartysize) SCRCMD_DEF(getpartysize)
{ {
gSpecialVar_Result = CalculatePlayerPartyCount(); gSpecialVar_Result = CalculatePlayerPartyCount();
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_playse) SCRCMD_DEF(playse)
{ {
PlaySE(ScriptReadHalfword(ctx)); PlaySE(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
@@ -888,13 +888,13 @@ static bool8 WaitForSoundEffectFinish(void)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_waitse) SCRCMD_DEF(waitse)
{ {
SetupNativeScript(ctx, WaitForSoundEffectFinish); SetupNativeScript(ctx, WaitForSoundEffectFinish);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_playfanfare) SCRCMD_DEF(playfanfare)
{ {
PlayFanfare(ScriptReadHalfword(ctx)); PlayFanfare(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
@@ -905,13 +905,13 @@ static bool8 WaitForFanfareFinish(void)
return IsFanfareTaskInactive(); return IsFanfareTaskInactive();
} }
SCRCMD_DEF(ScrCmd_waitfanfare) SCRCMD_DEF(waitfanfare)
{ {
SetupNativeScript(ctx, WaitForFanfareFinish); SetupNativeScript(ctx, WaitForFanfareFinish);
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_playbgm) SCRCMD_DEF(playbgm)
{ {
u16 songId = ScriptReadHalfword(ctx); u16 songId = ScriptReadHalfword(ctx);
bool8 val = ScriptReadByte(ctx); bool8 val = ScriptReadByte(ctx);
@@ -924,13 +924,13 @@ SCRCMD_DEF(ScrCmd_playbgm)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_savebgm) SCRCMD_DEF(savebgm)
{ {
Overworld_SetSavedMusic(ScriptReadHalfword(ctx)); Overworld_SetSavedMusic(ScriptReadHalfword(ctx));
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_fadedefaultbgm) SCRCMD_DEF(fadedefaultbgm)
{ {
if (gUnknown_203ADFA == 2 || gUnknown_203ADFA == 3) if (gUnknown_203ADFA == 2 || gUnknown_203ADFA == 3)
return FALSE; return FALSE;
@@ -938,7 +938,7 @@ SCRCMD_DEF(ScrCmd_fadedefaultbgm)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_fadenewbgm) SCRCMD_DEF(fadenewbgm)
{ {
u16 music = ScriptReadHalfword(ctx); u16 music = ScriptReadHalfword(ctx);
if (gUnknown_203ADFA == 2 || gUnknown_203ADFA == 3) if (gUnknown_203ADFA == 2 || gUnknown_203ADFA == 3)
@@ -947,7 +947,7 @@ SCRCMD_DEF(ScrCmd_fadenewbgm)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_fadeoutbgm) SCRCMD_DEF(fadeoutbgm)
{ {
u8 speed = ScriptReadByte(ctx); u8 speed = ScriptReadByte(ctx);
@@ -961,7 +961,7 @@ SCRCMD_DEF(ScrCmd_fadeoutbgm)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_fadeinbgm) SCRCMD_DEF(fadeinbgm)
{ {
u8 speed = ScriptReadByte(ctx); u8 speed = ScriptReadByte(ctx);
@@ -974,7 +974,7 @@ SCRCMD_DEF(ScrCmd_fadeinbgm)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_applymovement) SCRCMD_DEF(applymovement)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
const void *movementScript = (const void *)ScriptReadWord(ctx); const void *movementScript = (const void *)ScriptReadWord(ctx);
@@ -984,7 +984,7 @@ SCRCMD_DEF(ScrCmd_applymovement)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_applymovement_at) SCRCMD_DEF(applymovement_at)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
const void *movementScript = (const void *)ScriptReadWord(ctx); const void *movementScript = (const void *)ScriptReadWord(ctx);
@@ -1001,7 +1001,7 @@ static bool8 WaitForMovementFinish(void)
return ScriptMovement_IsObjectMovementFinished(sMovingNpcId, sMovingNpcMapId, sMovingNpcMapBank); return ScriptMovement_IsObjectMovementFinished(sMovingNpcId, sMovingNpcMapId, sMovingNpcMapBank);
} }
SCRCMD_DEF(ScrCmd_waitmovement) SCRCMD_DEF(waitmovement)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
@@ -1013,7 +1013,7 @@ SCRCMD_DEF(ScrCmd_waitmovement)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_waitmovement_at) SCRCMD_DEF(waitmovement_at)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 mapBank; u8 mapBank;
@@ -1029,7 +1029,7 @@ SCRCMD_DEF(ScrCmd_waitmovement_at)
return TRUE; return TRUE;
} }
SCRCMD_DEF(ScrCmd_removeobject) SCRCMD_DEF(removeobject)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
@@ -1037,7 +1037,7 @@ SCRCMD_DEF(ScrCmd_removeobject)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_removeobject_at) SCRCMD_DEF(removeobject_at)
{ {
u16 objectId = VarGet(ScriptReadHalfword(ctx)); u16 objectId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1047,7 +1047,7 @@ SCRCMD_DEF(ScrCmd_removeobject_at)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_addobject) SCRCMD_DEF(addobject)
{ {
u16 objectId = VarGet(ScriptReadHalfword(ctx)); u16 objectId = VarGet(ScriptReadHalfword(ctx));
@@ -1055,7 +1055,7 @@ SCRCMD_DEF(ScrCmd_addobject)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_addobject_at) SCRCMD_DEF(addobject_at)
{ {
u16 objectId = VarGet(ScriptReadHalfword(ctx)); u16 objectId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1065,7 +1065,7 @@ SCRCMD_DEF(ScrCmd_addobject_at)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setobjectxy) SCRCMD_DEF(setobjectxy)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u16 x = VarGet(ScriptReadHalfword(ctx)); u16 x = VarGet(ScriptReadHalfword(ctx));
@@ -1075,7 +1075,7 @@ SCRCMD_DEF(ScrCmd_setobjectxy)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setobjectxyperm) SCRCMD_DEF(setobjectxyperm)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u16 x = VarGet(ScriptReadHalfword(ctx)); u16 x = VarGet(ScriptReadHalfword(ctx));
@@ -1085,7 +1085,7 @@ SCRCMD_DEF(ScrCmd_setobjectxyperm)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_moveobjectoffscreen) SCRCMD_DEF(moveobjectoffscreen)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
@@ -1093,7 +1093,7 @@ SCRCMD_DEF(ScrCmd_moveobjectoffscreen)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_showobject_at) SCRCMD_DEF(showobject_at)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1103,7 +1103,7 @@ SCRCMD_DEF(ScrCmd_showobject_at)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_hideobject_at) SCRCMD_DEF(hideobject_at)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1113,7 +1113,7 @@ SCRCMD_DEF(ScrCmd_hideobject_at)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setobjectpriority) SCRCMD_DEF(setobjectpriority)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1124,7 +1124,7 @@ SCRCMD_DEF(ScrCmd_setobjectpriority)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_resetobjectpriority) SCRCMD_DEF(resetobjectpriority)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 mapGroup = ScriptReadByte(ctx); u8 mapGroup = ScriptReadByte(ctx);
@@ -1134,7 +1134,7 @@ SCRCMD_DEF(ScrCmd_resetobjectpriority)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_faceplayer) SCRCMD_DEF(faceplayer)
{ {
if (gMapObjects[gSelectedEventObject].active) if (gMapObjects[gSelectedEventObject].active)
{ {
@@ -1144,7 +1144,7 @@ SCRCMD_DEF(ScrCmd_faceplayer)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_turnobject) SCRCMD_DEF(turnobject)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 direction = ScriptReadByte(ctx); u8 direction = ScriptReadByte(ctx);
@@ -1153,7 +1153,7 @@ SCRCMD_DEF(ScrCmd_turnobject)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_setobjectmovementtype) SCRCMD_DEF(setobjectmovementtype)
{ {
u16 localId = VarGet(ScriptReadHalfword(ctx)); u16 localId = VarGet(ScriptReadHalfword(ctx));
u8 movementType = ScriptReadByte(ctx); u8 movementType = ScriptReadByte(ctx);
@@ -1162,7 +1162,7 @@ SCRCMD_DEF(ScrCmd_setobjectmovementtype)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_createvobject) SCRCMD_DEF(createvobject)
{ {
u8 graphicsId = ScriptReadByte(ctx); u8 graphicsId = ScriptReadByte(ctx);
u8 v2 = ScriptReadByte(ctx); u8 v2 = ScriptReadByte(ctx);
@@ -1175,7 +1175,7 @@ SCRCMD_DEF(ScrCmd_createvobject)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_turnvobject) SCRCMD_DEF(turnvobject)
{ {
u8 v1 = ScriptReadByte(ctx); u8 v1 = ScriptReadByte(ctx);
u8 direction = ScriptReadByte(ctx); u8 direction = ScriptReadByte(ctx);
@@ -1184,7 +1184,7 @@ SCRCMD_DEF(ScrCmd_turnvobject)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_lockall) SCRCMD_DEF(lockall)
{ {
if (is_c1_link_related_active()) if (is_c1_link_related_active())
{ {
@@ -1198,7 +1198,7 @@ SCRCMD_DEF(ScrCmd_lockall)
} }
} }
SCRCMD_DEF(ScrCmd_lock) SCRCMD_DEF(lock)
{ {
if (is_c1_link_related_active()) if (is_c1_link_related_active())
{ {
@@ -1220,7 +1220,7 @@ SCRCMD_DEF(ScrCmd_lock)
} }
} }
SCRCMD_DEF(ScrCmd_releaseall) SCRCMD_DEF(releaseall)
{ {
u8 playerObjectId; u8 playerObjectId;
@@ -1232,7 +1232,7 @@ SCRCMD_DEF(ScrCmd_releaseall)
return FALSE; return FALSE;
} }
SCRCMD_DEF(ScrCmd_release) SCRCMD_DEF(release)
{ {
u8 playerObjectId; u8 playerObjectId;
@@ -1245,3 +1245,10 @@ SCRCMD_DEF(ScrCmd_release)
UnfreezeMapObjects(); UnfreezeMapObjects();
return FALSE; return FALSE;
} }
SCRCMD_DEF(cmdC7)
{
gUnknown_20370DC = gUnknown_20370DA;
gUnknown_20370DA = ScriptReadByte(ctx);
return FALSE;
}
+171 -5
View File
@@ -1,5 +1,6 @@
#include "global.h" #include "global.h"
#include "main.h" #include "main.h"
#include "task.h"
#include "constants/flags.h" #include "constants/flags.h"
#include "constants/vars.h" #include "constants/vars.h"
#include "malloc.h" #include "malloc.h"
@@ -11,7 +12,12 @@
#include "cereader_tool.h" #include "cereader_tool.h"
#include "easy_chat.h" #include "easy_chat.h"
#include "text.h" #include "text.h"
#include "battle_setup.h"
#include "battle_transition.h"
#include "battle.h"
#include "battle_2.h"
#include "overworld.h" #include "overworld.h"
#include "item.h"
struct UnkStruct_8479D34 struct UnkStruct_8479D34
{ {
@@ -28,7 +34,6 @@ struct UnkSubstruct_203F458_000C_004
/* 0x000 */ u8 unk_000[11]; /* 0x000 */ u8 unk_000[11];
/* 0x00B */ u8 unk_00B; /* 0x00B */ u8 unk_00B;
/* 0x00C */ u8 unk_00C; /* 0x00C */ u8 unk_00C;
/* 0x00D */ u8 unk_00D;
/* 0x00E */ u16 unk_00E[6]; /* 0x00E */ u16 unk_00E[6];
/* 0x01A */ u16 unk_01A[6]; /* 0x01A */ u16 unk_01A[6];
/* 0x026 */ u16 unk_026[6]; /* 0x026 */ u16 unk_026[6];
@@ -38,7 +43,8 @@ struct UnkSubstruct_203F458_000C_004
struct UnkSubstruct_203F458_000C struct UnkSubstruct_203F458_000C
{ {
/* 0x000 */ u8 filler_000[2]; /* 0x000 */ u8 unk_000;
/* 0x000 */ u8 unk_001;
/* 0x002 */ u8 unk_002; /* 0x002 */ u8 unk_002;
/* 0x003 */ u8 unk_003; /* 0x003 */ u8 unk_003;
/* 0x004 */ struct UnkSubstruct_203F458_000C_004 unk_004[3]; /* 0x004 */ struct UnkSubstruct_203F458_000C_004 unk_004[3];
@@ -122,15 +128,19 @@ void sub_815E8CC(void);
void sub_815E908(void); void sub_815E908(void);
void sub_815E948(void); void sub_815E948(void);
void sub_815E9C8(void); void sub_815E9C8(void);
void sub_815E9FC(void);
void sub_815EC0C(void); void sub_815EC0C(void);
u32 sub_815EDDC(u32 *);
void sub_815EDF4(u32 *, u32);
extern const struct UnkStruct_8479D34 gUnknown_8479D34[15]; extern const struct UnkStruct_8479D34 gUnknown_8479D34[15];
extern const struct UnkStruct_8479ED8 gUnknown_8479ED8[83];
extern const struct UnkStruct_847A024 gUnknown_847A024[10];
extern void (*const gUnknown_847A230[])(void); extern void (*const gUnknown_847A230[])(void);
extern const struct Unk_203F458_Header gUnknown_84827AC; extern const struct Unk_203F458_Header gUnknown_84827AC;
extern const struct UnkSubstruct_203F458_000C *const gUnknown_84827B4[][8]; extern const struct UnkSubstruct_203F458_000C *const gUnknown_84827B4[][8];
extern const u16 gUnknown_847A284[8][3]; extern const u16 gUnknown_847A284[8][3];
extern const struct UnkStruct_8479ED8 gUnknown_8479ED8[83]; extern const u16 gUnknown_847A2B4[];
extern const struct UnkStruct_847A024 gUnknown_847A024[10];
bool32 sub_815D7BC(void * dest, void * buffer) bool32 sub_815D7BC(void * dest, void * buffer)
{ {
@@ -280,7 +290,7 @@ void sub_815DA54(void)
gUnknown_203F45C->unk_3C = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_002; gUnknown_203F45C->unk_3C = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_002;
gUnknown_203F45C->unk_3D = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_004[r10].unk_00B; gUnknown_203F45C->unk_3D = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_004[r10].unk_00B;
gUnknown_203F45C->unk_3E = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_004[r10].unk_00C; gUnknown_203F45C->unk_3E = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_004[r10].unk_00C;
SetVBlankCounter1Ptr(gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx]); SetVBlankCounter1Ptr(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0);
sub_815DD2C(); sub_815DD2C();
} }
@@ -692,3 +702,159 @@ void sub_815DF54(void)
"_0815E064: .4byte gStringVar4"); "_0815E064: .4byte gStringVar4");
} }
#endif // NONMATCHING #endif // NONMATCHING
void sub_815E068(u8 battleType, u8 facilityClass)
{
u16 r5 = FALSE;
s32 r4;
switch (battleType)
{
case 0:
case 2:
for (r4 = 0; r4 < NELEMS(gUnknown_8479ED8); r4++)
{
if (gUnknown_8479ED8[r4].unk1 == facilityClass)
break;
}
if (r4 != NELEMS(gUnknown_8479ED8))
r5 = gUnknown_8479ED8[r4].unk2;
break;
case 1:
for (r4 = 0; r4 < NELEMS(gUnknown_847A024); r4++)
{
if (gUnknown_847A024[r4].unk2 == facilityClass)
break;
}
if (r4 != NELEMS(gUnknown_847A024))
{
if (VarGet(VAR_0x4003))
r5 = gUnknown_847A024[r4].unk4;
else
r5 = gUnknown_847A024[r4].unk3;
}
break;
}
gUnknown_20370DC = gUnknown_20370DA;
gUnknown_20370DA = r5;
}
void sub_815E114(void)
{
SetMainCallback2(c2_exit_to_overworld_1_continue_scripts_restart_music);
}
void sub_815E124(u8 taskId)
{
if (sub_80D08F8() == TRUE)
{
gMain.savedCallback = sub_815E114;
sub_80563F0();
SetMainCallback2(sub_800FD9C);
DestroyTask(taskId);
}
}
void sub_815E160(void)
{
gBattleTypeFlags = BATTLE_TYPE_TRAINER | BATTLE_TYPE_FACTORY;
if (gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_002 == 1)
gBattleTypeFlags |= BATTLE_TYPE_DOUBLE;
gTrainerBattleOpponent_A = 0;
sub_815E9FC();
CreateTask(sub_815E124, 1);
PlayMapChosenOrBattleBGM(0);
sub_80D08B8(sub_8080060());
}
void sub_815E1C0(void)
{
if (!gSpecialVar_0x8005)
gSpecialVar_Result = gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_002;
}
void sub_815E1F0(void)
{
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk8++;
}
void sub_815E218(void)
{
u16 mapDataId = gMapHeader.mapDataId;
if (mapDataId - 0x12A == gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk8 && mapDataId - 0x129 <= gUnknown_203F458->unk_0004.unk_0008[gUnknown_203F458->unk_0000].unk_001)
gSpecialVar_Result = FALSE;
else
gSpecialVar_Result = TRUE;
}
void sub_815E28C(void)
{
gSaveBlock1Ptr->unkArrayIdx = gSpecialVar_0x8005;
if (gSaveBlock1Ptr->unkArrayIdx >= NELEMS(gSaveBlock1Ptr->unkArray))
gSaveBlock1Ptr->unkArrayIdx = 0;
sub_815EC0C();
if (!sub_815D834())
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_5 = TRUE;
else
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_5 = FALSE;
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk8 = 0;
SetVBlankCounter1Ptr(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0);
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0 = 0;
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_2 = FALSE;
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_1 = FALSE;
}
void sub_815E394(void)
{
DisableVBlankCounter1();
gSpecialVar_Result = 0;
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_2)
gSpecialVar_Result++;
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_0 && gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_1)
gSpecialVar_Result++;
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_2 = TRUE;
}
void sub_815E408(void)
{
u16 itemId = gUnknown_847A2B4[gUnknown_203F458->unk_0004.unk_0008->unk_003];
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_0)
gSpecialVar_Result = 2;
else if (AddBagItem(itemId, 1) == 1)
{
sub_8099E90(itemId, gStringVar2);
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_0 = TRUE;
gSpecialVar_Result = 0;
}
else
gSpecialVar_Result = 1;
}
void sub_815E4B0(void)
{
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_1)
gSpecialVar_Result = 2;
else if (sub_815EDDC(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk4) > gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0)
{
sub_815EDF4(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk4, gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0);
gSpecialVar_Result = 0;
}
else
gSpecialVar_Result = 1;
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_1 = TRUE;
}
void sub_815E56C(void)
{
if (!gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_2)
{
if (gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0 >= 215999)
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0 = 215999;
else
SetVBlankCounter1Ptr(&gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unk0);
}
}
void sub_815E5C4(void)
{
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_3 = 1;
}