Merge branch 'master' into doc-oneisland
This commit is contained in:
@@ -332,7 +332,7 @@ sub_806CAC8: @ 806CAC8
|
||||
movs r2, 0x2
|
||||
ldrsh r1, [r4, r2]
|
||||
movs r2, 0xFF
|
||||
bl sub_8058F48
|
||||
bl MapGridGetMetatileAttributeAt
|
||||
mov r8, r0
|
||||
mov r0, sp
|
||||
movs r1, 0
|
||||
|
||||
+5
-5
@@ -2629,7 +2629,7 @@ sub_80847F8: @ 80847F8
|
||||
bl FreezeObjectEvents
|
||||
bl CameraObjectReset2
|
||||
ldrb r0, [r4, 0xA]
|
||||
bl sub_809C448
|
||||
bl StartEscalator
|
||||
movs r0, 0x1
|
||||
bl sub_81128BC
|
||||
ldrh r0, [r4, 0x8]
|
||||
@@ -2859,7 +2859,7 @@ sub_80849A0: @ 80849A0
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _080849DC
|
||||
bl sub_809C460
|
||||
bl StopEscalator
|
||||
bl WarpIntoMap
|
||||
ldr r1, _080849E4 @ =gFieldCallback
|
||||
ldr r0, _080849E8 @ =sub_80849F4
|
||||
@@ -2984,7 +2984,7 @@ _08084AC4:
|
||||
movs r1, 0
|
||||
_08084AC6:
|
||||
adds r0, r1, 0
|
||||
bl sub_809C448
|
||||
bl StartEscalator
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r4,r5}
|
||||
@@ -3163,11 +3163,11 @@ _08084C14: .4byte gSprites
|
||||
sub_8084C18: @ 8084C18
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl sub_809C474
|
||||
bl IsEscalatorMoving
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08084C34
|
||||
bl sub_809C460
|
||||
bl StopEscalator
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
|
||||
@@ -2921,7 +2921,7 @@ IsPlayerFacingSurfableFishableWater: @ 805C8B0
|
||||
ldrsh r0, [r0, r1]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl sub_805C938
|
||||
bl MetatileAtCoordsIsWaterTile
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -2940,24 +2940,24 @@ _0805C92E:
|
||||
bx r1
|
||||
thumb_func_end IsPlayerFacingSurfableFishableWater
|
||||
|
||||
thumb_func_start sub_805C938
|
||||
sub_805C938: @ 805C938
|
||||
thumb_func_start MetatileAtCoordsIsWaterTile
|
||||
MetatileAtCoordsIsWaterTile: @ 805C938
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
lsls r1, 16
|
||||
asrs r1, 16
|
||||
movs r2, 0x1
|
||||
bl sub_8058F48
|
||||
bl MapGridGetMetatileAttributeAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x2
|
||||
bl sub_805A2BC
|
||||
bl TestMetatileAttributeBit
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_805C938
|
||||
thumb_func_end MetatileAtCoordsIsWaterTile
|
||||
|
||||
thumb_func_start ClearPlayerAvatarInfo
|
||||
ClearPlayerAvatarInfo: @ 805C95C
|
||||
|
||||
@@ -1,535 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_8097874
|
||||
sub_8097874: @ 8097874
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
lsls r1, 16
|
||||
asrs r1, 16
|
||||
movs r2, 0x1
|
||||
bl sub_8058F48
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x1
|
||||
bl sub_805A2BC
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8097874
|
||||
|
||||
thumb_func_start SetUpFieldMove_Cut
|
||||
SetUpFieldMove_Cut: @ 8097898
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
ldr r4, _080978CC @ =gUnknown_2039874
|
||||
movs r0, 0
|
||||
strb r0, [r4]
|
||||
bl CutMoveRuinValleyCheck
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
beq _080978E0
|
||||
movs r0, 0x5F
|
||||
bl CheckObjectGraphicsInFrontOfPlayer
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08097904
|
||||
ldr r1, _080978D0 @ =gFieldCallback2
|
||||
ldr r0, _080978D4 @ =FieldCallback_PrepareFadeInFromMenu
|
||||
str r0, [r1]
|
||||
ldr r1, _080978D8 @ =gPostMenuFieldCallback
|
||||
ldr r0, _080978DC @ =sub_80979D0
|
||||
b _080978EC
|
||||
.align 2, 0
|
||||
_080978CC: .4byte gUnknown_2039874
|
||||
_080978D0: .4byte gFieldCallback2
|
||||
_080978D4: .4byte FieldCallback_PrepareFadeInFromMenu
|
||||
_080978D8: .4byte gPostMenuFieldCallback
|
||||
_080978DC: .4byte sub_80979D0
|
||||
_080978E0:
|
||||
strb r0, [r4]
|
||||
_080978E2:
|
||||
ldr r1, _080978F4 @ =gFieldCallback2
|
||||
ldr r0, _080978F8 @ =FieldCallback_PrepareFadeInFromMenu
|
||||
str r0, [r1]
|
||||
ldr r1, _080978FC @ =gPostMenuFieldCallback
|
||||
ldr r0, _08097900 @ =sub_8097984
|
||||
_080978EC:
|
||||
str r0, [r1]
|
||||
movs r0, 0x1
|
||||
b _08097970
|
||||
.align 2, 0
|
||||
_080978F4: .4byte gFieldCallback2
|
||||
_080978F8: .4byte FieldCallback_PrepareFadeInFromMenu
|
||||
_080978FC: .4byte gPostMenuFieldCallback
|
||||
_08097900: .4byte sub_8097984
|
||||
_08097904:
|
||||
ldr r4, _0809797C @ =gPlayerFacingPosition
|
||||
adds r1, r4, 0x2
|
||||
adds r0, r4, 0
|
||||
bl PlayerGetDestCoords
|
||||
movs r7, 0
|
||||
adds r2, r4, 0
|
||||
ldr r0, _08097980 @ =0x0000ffff
|
||||
mov r8, r0
|
||||
_08097916:
|
||||
mov r1, r8
|
||||
adds r0, r1, r7
|
||||
ldrh r1, [r2, 0x2]
|
||||
adds r0, r1
|
||||
movs r6, 0
|
||||
lsls r0, 16
|
||||
asrs r5, r0, 16
|
||||
_08097924:
|
||||
mov r1, r8
|
||||
adds r0, r1, r6
|
||||
ldrh r1, [r2]
|
||||
adds r0, r1
|
||||
lsls r0, 16
|
||||
asrs r4, r0, 16
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
str r2, [sp]
|
||||
bl MapGridGetZCoordAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, [sp]
|
||||
movs r1, 0x4
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r0, r1
|
||||
bne _0809795A
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8097874
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, [sp]
|
||||
cmp r0, 0x1
|
||||
beq _080978E2
|
||||
_0809795A:
|
||||
adds r0, r6, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
cmp r6, 0x2
|
||||
bls _08097924
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
cmp r7, 0x2
|
||||
bls _08097916
|
||||
movs r0, 0
|
||||
_08097970:
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809797C: .4byte gPlayerFacingPosition
|
||||
_08097980: .4byte 0x0000ffff
|
||||
thumb_func_end SetUpFieldMove_Cut
|
||||
|
||||
thumb_func_start sub_8097984
|
||||
sub_8097984: @ 8097984
|
||||
push {lr}
|
||||
movs r0, 0x1
|
||||
bl FieldEffectStart
|
||||
bl GetCursorSelectionMonId
|
||||
ldr r1, _0809799C @ =gFieldEffectArguments
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [r1]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809799C: .4byte gFieldEffectArguments
|
||||
thumb_func_end sub_8097984
|
||||
|
||||
thumb_func_start sub_80979A0
|
||||
sub_80979A0: @ 80979A0
|
||||
push {lr}
|
||||
bl oei_task_add
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _080979C8 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r2, _080979CC @ =sub_8097A20
|
||||
lsrs r0, r2, 16
|
||||
strh r0, [r1, 0x18]
|
||||
strh r2, [r1, 0x1A]
|
||||
movs r0, 0x12
|
||||
bl IncrementGameStat
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080979C8: .4byte gTasks
|
||||
_080979CC: .4byte sub_8097A20
|
||||
thumb_func_end sub_80979A0
|
||||
|
||||
thumb_func_start sub_80979D0
|
||||
sub_80979D0: @ 80979D0
|
||||
push {lr}
|
||||
bl GetCursorSelectionMonId
|
||||
ldr r1, _080979E8 @ =gFieldEffectArguments
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [r1]
|
||||
ldr r0, _080979EC @ =EventScript_FldEffCut
|
||||
bl ScriptContext1_SetupScript
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080979E8: .4byte gFieldEffectArguments
|
||||
_080979EC: .4byte EventScript_FldEffCut
|
||||
thumb_func_end sub_80979D0
|
||||
|
||||
thumb_func_start sub_80979F0
|
||||
sub_80979F0: @ 80979F0
|
||||
push {lr}
|
||||
bl oei_task_add
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _08097A18 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r2, _08097A1C @ =sub_8097C6C
|
||||
lsrs r0, r2, 16
|
||||
strh r0, [r1, 0x18]
|
||||
strh r2, [r1, 0x1A]
|
||||
movs r0, 0x12
|
||||
bl IncrementGameStat
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08097A18: .4byte gTasks
|
||||
_08097A1C: .4byte sub_8097C6C
|
||||
thumb_func_end sub_80979F0
|
||||
|
||||
thumb_func_start sub_8097A20
|
||||
sub_8097A20: @ 8097A20
|
||||
push {lr}
|
||||
movs r0, 0x1
|
||||
bl FieldEffectActiveListRemove
|
||||
ldr r0, _08097A38 @ =gUnknown_2039874
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
bne _08097A3C
|
||||
bl CutMoveOpenDottedHoleDoor
|
||||
b _08097A42
|
||||
.align 2, 0
|
||||
_08097A38: .4byte gUnknown_2039874
|
||||
_08097A3C:
|
||||
movs r0, 0x3A
|
||||
bl FieldEffectStart
|
||||
_08097A42:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8097A20
|
||||
|
||||
thumb_func_start sub_8097A48
|
||||
sub_8097A48: @ 8097A48
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
movs r7, 0
|
||||
movs r0, 0x79
|
||||
bl PlaySE
|
||||
ldr r4, _08097B38 @ =gPlayerFacingPosition
|
||||
adds r1, r4, 0x2
|
||||
adds r0, r4, 0
|
||||
bl PlayerGetDestCoords
|
||||
mov r8, r4
|
||||
ldr r0, _08097B3C @ =0x0000ffff
|
||||
mov r9, r0
|
||||
_08097A68:
|
||||
mov r1, r9
|
||||
adds r0, r1, r7
|
||||
mov r2, r8
|
||||
ldrh r2, [r2, 0x2]
|
||||
adds r0, r2
|
||||
movs r6, 0
|
||||
lsls r0, 16
|
||||
asrs r5, r0, 16
|
||||
_08097A78:
|
||||
mov r1, r9
|
||||
adds r0, r1, r6
|
||||
mov r2, r8
|
||||
ldrh r2, [r2]
|
||||
adds r0, r2
|
||||
lsls r0, 16
|
||||
asrs r4, r0, 16
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl MapGridGetZCoordAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r2, r8
|
||||
movs r1, 0x4
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r0, r1
|
||||
bne _08097ABC
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8097874
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08097ABC
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_8097B50
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl sub_805F378
|
||||
_08097ABC:
|
||||
adds r0, r6, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
cmp r6, 0x2
|
||||
bls _08097A78
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
cmp r7, 0x2
|
||||
bls _08097A68
|
||||
bl DrawWholeMapView
|
||||
ldr r4, _08097B40 @ =gUnknown_2039870
|
||||
movs r0, 0x8
|
||||
bl Alloc
|
||||
str r0, [r4]
|
||||
movs r7, 0
|
||||
ldr r5, _08097B44 @ =gSprites
|
||||
_08097AE2:
|
||||
ldr r0, _08097B48 @ =gPlayerAvatar
|
||||
ldrb r1, [r0, 0x4]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r5
|
||||
ldrh r1, [r0, 0x2]
|
||||
lsls r1, 23
|
||||
lsrs r1, 7
|
||||
movs r2, 0x80
|
||||
lsls r2, 12
|
||||
adds r1, r2
|
||||
asrs r1, 16
|
||||
ldrb r2, [r0]
|
||||
adds r2, 0x14
|
||||
ldr r0, _08097B4C @ =gUnknown_83D414C
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
ldr r1, [r4]
|
||||
adds r1, r7
|
||||
strb r0, [r1]
|
||||
ldr r0, [r4]
|
||||
adds r0, r7
|
||||
ldrb r1, [r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r5
|
||||
lsls r1, r7, 5
|
||||
strh r1, [r0, 0x32]
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
cmp r7, 0x7
|
||||
bls _08097AE2
|
||||
movs r0, 0
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08097B38: .4byte gPlayerFacingPosition
|
||||
_08097B3C: .4byte 0x0000ffff
|
||||
_08097B40: .4byte gUnknown_2039870
|
||||
_08097B44: .4byte gSprites
|
||||
_08097B48: .4byte gPlayerAvatar
|
||||
_08097B4C: .4byte gUnknown_83D414C
|
||||
thumb_func_end sub_8097A48
|
||||
|
||||
thumb_func_start sub_8097B50
|
||||
sub_8097B50: @ 8097B50
|
||||
push {r4-r7,lr}
|
||||
lsls r0, 16
|
||||
lsls r1, 16
|
||||
movs r4, 0
|
||||
lsrs r6, r0, 16
|
||||
asrs r0, 16
|
||||
lsrs r7, r1, 16
|
||||
asrs r1, 16
|
||||
bl MapGridGetMetatileIdAt
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
ldr r1, _08097B84 @ =gUnknown_83D4100
|
||||
ldr r5, _08097B88 @ =0x0000ffff
|
||||
mov r12, r1
|
||||
_08097B6E:
|
||||
lsls r3, r4, 2
|
||||
adds r0, r3, r1
|
||||
ldrh r0, [r0]
|
||||
cmp r0, r5
|
||||
beq _08097BA0
|
||||
cmp r0, r2
|
||||
beq _08097B8C
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
b _08097B6E
|
||||
.align 2, 0
|
||||
_08097B84: .4byte gUnknown_83D4100
|
||||
_08097B88: .4byte 0x0000ffff
|
||||
_08097B8C:
|
||||
lsls r0, r6, 16
|
||||
asrs r0, 16
|
||||
lsls r1, r7, 16
|
||||
asrs r1, 16
|
||||
mov r2, r12
|
||||
adds r2, 0x2
|
||||
adds r2, r3, r2
|
||||
ldrh r2, [r2]
|
||||
bl MapGridSetMetatileIdAt
|
||||
_08097BA0:
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8097B50
|
||||
|
||||
thumb_func_start objc_8097BA8
|
||||
objc_8097BA8: @ 8097BA8
|
||||
movs r2, 0
|
||||
movs r1, 0x8
|
||||
strh r1, [r0, 0x2E]
|
||||
strh r2, [r0, 0x30]
|
||||
strh r2, [r0, 0x34]
|
||||
ldr r1, _08097BB8 @ =objc_8097BBC
|
||||
str r1, [r0, 0x1C]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08097BB8: .4byte objc_8097BBC
|
||||
thumb_func_end objc_8097BA8
|
||||
|
||||
thumb_func_start objc_8097BBC
|
||||
objc_8097BBC: @ 8097BBC
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x32
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0x2E
|
||||
ldrsh r1, [r4, r2]
|
||||
bl Sin
|
||||
strh r0, [r4, 0x24]
|
||||
movs r1, 0x32
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, 0x2E
|
||||
ldrsh r1, [r4, r2]
|
||||
bl Cos
|
||||
strh r0, [r4, 0x26]
|
||||
ldrh r0, [r4, 0x32]
|
||||
adds r0, 0x8
|
||||
movs r1, 0xFF
|
||||
ands r0, r1
|
||||
strh r0, [r4, 0x32]
|
||||
ldrh r1, [r4, 0x2E]
|
||||
adds r1, 0x1
|
||||
ldrh r2, [r4, 0x34]
|
||||
lsls r0, r2, 16
|
||||
asrs r0, 18
|
||||
adds r1, r0
|
||||
strh r1, [r4, 0x2E]
|
||||
adds r2, 0x1
|
||||
strh r2, [r4, 0x34]
|
||||
ldrh r1, [r4, 0x30]
|
||||
movs r2, 0x30
|
||||
ldrsh r0, [r4, r2]
|
||||
cmp r0, 0x1C
|
||||
beq _08097C08
|
||||
adds r0, r1, 0x1
|
||||
strh r0, [r4, 0x30]
|
||||
b _08097C0C
|
||||
_08097C08:
|
||||
ldr r0, _08097C14 @ =sub_8097C18
|
||||
str r0, [r4, 0x1C]
|
||||
_08097C0C:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08097C14: .4byte sub_8097C18
|
||||
thumb_func_end objc_8097BBC
|
||||
|
||||
thumb_func_start sub_8097C18
|
||||
sub_8097C18: @ 8097C18
|
||||
push {r4-r6,lr}
|
||||
movs r4, 0x1
|
||||
_08097C1C:
|
||||
ldr r6, _08097C64 @ =gUnknown_2039870
|
||||
ldr r0, [r6]
|
||||
adds r0, r4
|
||||
ldrb r1, [r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
ldr r5, _08097C68 @ =gSprites
|
||||
adds r0, r5
|
||||
bl DestroySprite
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x7
|
||||
bls _08097C1C
|
||||
ldr r0, [r6]
|
||||
ldrb r1, [r0]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r5
|
||||
movs r1, 0x3A
|
||||
bl FieldEffectStop
|
||||
ldr r0, [r6]
|
||||
bl Free
|
||||
bl sub_80696C0
|
||||
bl ScriptContext2_Disable
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08097C64: .4byte gUnknown_2039870
|
||||
_08097C68: .4byte gSprites
|
||||
thumb_func_end sub_8097C18
|
||||
|
||||
thumb_func_start sub_8097C6C
|
||||
sub_8097C6C: @ 8097C6C
|
||||
push {lr}
|
||||
movs r0, 0x79
|
||||
bl PlaySE
|
||||
movs r0, 0x2
|
||||
bl FieldEffectActiveListRemove
|
||||
bl EnableBothScriptContexts
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8097C6C
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
+1
-1
@@ -42,7 +42,7 @@ _080C9B6E:
|
||||
thumb_func_start sub_80C9B74
|
||||
sub_80C9B74: @ 80C9B74
|
||||
push {r4,lr}
|
||||
bl oei_task_add
|
||||
bl CreateFieldEffectShowMon
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
|
||||
@@ -1330,16 +1330,14 @@ EventScript_SetResultFalse:: @ 81A77B0
|
||||
setvar VAR_RESULT, FALSE
|
||||
return
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1A77B6:: @ 81A77B6
|
||||
Route18_EastEntrance_1F_EventScript_1A77B6:: @ 81A77B6
|
||||
EventScript_SetExitingCyclingRoad:: @ 81A77B6
|
||||
lockall
|
||||
clearflag FLAG_SYS_ON_CYCLING_ROAD
|
||||
setvar VAR_MAP_SCENE_ROUTE16, 0
|
||||
releaseall
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1A77C1:: @ 81A77C1
|
||||
Route18_EastEntrance_1F_EventScript_1A77C1:: @ 81A77C1
|
||||
EventScript_SetEnteringCyclingRoad:: @ 81A77C1
|
||||
lockall
|
||||
setvar VAR_MAP_SCENE_ROUTE16, 1
|
||||
releaseall
|
||||
|
||||
@@ -78,11 +78,11 @@ gFldEffScript_ExclamationMarkIcon:: @ 81D97C4
|
||||
end
|
||||
|
||||
gFldEffScript_UseCutOnGrass:: @ 81D97CA
|
||||
callnative sub_80979A0
|
||||
callnative FldEff_UseCutOnGrass
|
||||
end
|
||||
|
||||
gFldEffScript_UseCutOnTree:: @ 81D97D0
|
||||
callnative sub_80979F0
|
||||
callnative FldEff_UseCutOnTree
|
||||
end
|
||||
|
||||
gFldEffScript_Shadow:: @ 81D97D6
|
||||
@@ -299,7 +299,7 @@ gFldEffScript_SecretPowerShrub:: @ 81D9964
|
||||
end
|
||||
|
||||
gFldEffScript_CutGrass:: @ 81D9965
|
||||
loadfadedpal_callnative gUnknown_83D4144, sub_8097A48
|
||||
loadfadedpal_callnative gFldEffPalette_CutGrass, FldEff_CutGrass
|
||||
end
|
||||
|
||||
gFldEffScript_FieldMoveShowMonInit:: @ 81D996F
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
#include "constants/maps.h"
|
||||
#include "constants/species.h"
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.section .rodata
|
||||
.align 2
|
||||
|
||||
gUnknown_83D4100:: @ 83D4100
|
||||
.2byte 0x000d, 0x0001
|
||||
.2byte 0x000a, 0x0013
|
||||
.2byte 0x000b, 0x000e
|
||||
.2byte 0x000c, 0x000f
|
||||
.2byte 0x0352, 0x033e
|
||||
.2byte 0x0300, 0x0310
|
||||
.2byte 0x0301, 0x0311
|
||||
.2byte 0x0302, 0x0312
|
||||
.2byte 0x0284, 0x0281
|
||||
.2byte 0xffff, 0xffff
|
||||
|
||||
.align 2
|
||||
gOamData_83D4128::
|
||||
.4byte 0x00000000, 0x00001401
|
||||
|
||||
gAnimCmd_83D4130::
|
||||
obj_image_anim_frame 0, 30
|
||||
obj_image_anim_jump 0
|
||||
|
||||
gSpriteAnimTable_83D4138::
|
||||
.4byte gAnimCmd_83D4130
|
||||
|
||||
gUnknown_83D413C::
|
||||
obj_frame_tiles gUnknown_8398648, 0x20
|
||||
|
||||
gUnknown_83D4144::
|
||||
obj_pal gUnknown_8398688, 4096
|
||||
|
||||
gUnknown_83D414C:: @ 83D414C
|
||||
spr_template 0xFFFF, 4096, gOamData_83D4128, gSpriteAnimTable_83D4138, gUnknown_83D413C, gDummySpriteAffineAnimTable, objc_8097BA8
|
||||
|
||||
+13
-13
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AAD67",
|
||||
"script": "Route15_EventScript_Yazmin",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 5,
|
||||
"script": "Route15_EventScript_1AACEB",
|
||||
"script": "Route15_EventScript_Edwin",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route15_EventScript_1AAD29",
|
||||
"script": "Route15_EventScript_Chester",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AADA5",
|
||||
"script": "Route15_EventScript_Kindra",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route15_EventScript_1AACAD",
|
||||
"script": "Route15_EventScript_Olivia",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route15_EventScript_1AAC31",
|
||||
"script": "Route15_EventScript_Alex",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AABF3",
|
||||
"script": "Route15_EventScript_Ernest",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -127,7 +127,7 @@
|
||||
"movement_range_y": 4,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AADE3",
|
||||
"script": "Route15_EventScript_Becky",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route15_EventScript_1AAC6F",
|
||||
"script": "Route15_EventScript_Grace",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -153,7 +153,7 @@
|
||||
"movement_range_y": 4,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AAE21",
|
||||
"script": "Route15_EventScript_Celia",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -179,7 +179,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AAEA5",
|
||||
"script": "Route15_EventScript_Ron",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -192,7 +192,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route15_EventScript_1AAE5F",
|
||||
"script": "Route15_EventScript_Mya",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -233,7 +233,7 @@
|
||||
"x": 41,
|
||||
"y": 11,
|
||||
"elevation": 0,
|
||||
"script": "Route15_EventScript_1680DC"
|
||||
"script": "Route15_EventScript_RouteSign"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Route15_MapScripts:: @ 81680DB
|
||||
.byte 0
|
||||
|
||||
Route15_EventScript_1680DC:: @ 81680DC
|
||||
msgbox gUnknown_8186A77, MSGBOX_SIGN
|
||||
Route15_EventScript_RouteSign:: @ 81680DC
|
||||
msgbox Route15_Text_RouteSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
+39
-39
@@ -1,154 +1,154 @@
|
||||
Text_18650B:: @ 818650B
|
||||
Route15_Text_KindraIntro:: @ 818650B
|
||||
.string "I just got some POKéMON in trades.\n"
|
||||
.string "Can I try them out on you?$"
|
||||
|
||||
Text_186549:: @ 8186549
|
||||
Route15_Text_KindraDefeat:: @ 8186549
|
||||
.string "Not good enough!$"
|
||||
|
||||
Text_18655A:: @ 818655A
|
||||
Route15_Text_KindraPostBattle:: @ 818655A
|
||||
.string "You can't change the nickname of\n"
|
||||
.string "any POKéMON you get in a trade.\p"
|
||||
.string "Only the Original TRAINER can get\n"
|
||||
.string "the nickname changed.$"
|
||||
|
||||
Text_1865D3:: @ 81865D3
|
||||
Route15_Text_BeckyIntro:: @ 81865D3
|
||||
.string "You look gentle, so I think I can\n"
|
||||
.string "beat you.\p"
|
||||
.string "I'll give it a go!$"
|
||||
|
||||
Text_186612:: @ 8186612
|
||||
Route15_Text_BeckyDefeat:: @ 8186612
|
||||
.string "No, wrong!$"
|
||||
|
||||
Text_18661D:: @ 818661D
|
||||
Route15_Text_BeckyPostBattle:: @ 818661D
|
||||
.string "I'm afraid of BIKERS. They look so\n"
|
||||
.string "ugly and mean!$"
|
||||
|
||||
Text_18664F:: @ 818664F
|
||||
Route15_Text_EdwinIntro:: @ 818664F
|
||||
.string "When I whistle, I can summon bird\n"
|
||||
.string "POKéMON.$"
|
||||
|
||||
Text_18667A:: @ 818667A
|
||||
Route15_Text_EdwinDefeat:: @ 818667A
|
||||
.string "Ow!\n"
|
||||
.string "That's tragic!$"
|
||||
|
||||
Text_18668D:: @ 818668D
|
||||
Route15_Text_EdwinPostBattle:: @ 818668D
|
||||
.string "Maybe I'm not cut out for battles.\n"
|
||||
.string "I'm not the right type, I guess.$"
|
||||
|
||||
Text_1866D1:: @ 81866D1
|
||||
Route15_Text_ChesterIntro:: @ 81866D1
|
||||
.string "Hmm? My birds are shivering!\n"
|
||||
.string "You're good, aren't you?$"
|
||||
|
||||
Text_186707:: @ 8186707
|
||||
Route15_Text_ChesterDefeat:: @ 8186707
|
||||
.string "Just as I thought!$"
|
||||
|
||||
Text_18671A:: @ 818671A
|
||||
Route15_Text_ChesterPostBattle:: @ 818671A
|
||||
.string "This is so obvious, you should know\n"
|
||||
.string "this, but…\p"
|
||||
.string "Moves like EARTHQUAKE and FISSURE\n"
|
||||
.string "have no effect on bird POKéMON.$"
|
||||
|
||||
Text_18678B:: @ 818678B
|
||||
Route15_Text_GraceIntro:: @ 818678B
|
||||
.string "Oh, you're a little cutie!\n"
|
||||
.string "So like a darling POKéMON!$"
|
||||
|
||||
Text_1867C1:: @ 81867C1
|
||||
Route15_Text_GraceDefeat:: @ 81867C1
|
||||
.string "You looked so cute, too!$"
|
||||
|
||||
Text_1867DA:: @ 81867DA
|
||||
Route15_Text_GracePostBattle:: @ 81867DA
|
||||
.string "I forgive you.\n"
|
||||
.string "I can take it.\l"
|
||||
.string "I'm a big girl now.$"
|
||||
|
||||
Text_18680C:: @ 818680C
|
||||
Route15_Text_OliviaIntro:: @ 818680C
|
||||
.string "I raise POKéMON for protection\n"
|
||||
.string "because I live alone.$"
|
||||
|
||||
Text_186841:: @ 8186841
|
||||
Route15_Text_OliviaDefeat:: @ 8186841
|
||||
.string "POKéMON isn't about winning or\n"
|
||||
.string "losing for me.$"
|
||||
|
||||
Text_18686F:: @ 818686F
|
||||
Route15_Text_OliviaPostBattle:: @ 818686F
|
||||
.string "I love having my POKéMON greet me\n"
|
||||
.string "when I get home.\p"
|
||||
.string "It's so reassuring.$"
|
||||
|
||||
Text_1868B6:: @ 81868B6
|
||||
Route15_Text_ErnestIntro:: @ 81868B6
|
||||
.string "Hey, kid! C'mon!\n"
|
||||
.string "I just got these off some loser!$"
|
||||
|
||||
Text_1868E8:: @ 81868E8
|
||||
Route15_Text_ErnestDefeat:: @ 81868E8
|
||||
.string "Why not?$"
|
||||
|
||||
Text_1868F1:: @ 81868F1
|
||||
Route15_Text_ErnestPostBattle:: @ 81868F1
|
||||
.string "Life's too short.\n"
|
||||
.string "It's cool to live as an outlaw.\l"
|
||||
.string "TEAM ROCKET RULES!$"
|
||||
|
||||
Text_186936:: @ 8186936
|
||||
Route15_Text_AlexIntro:: @ 8186936
|
||||
.string "Fork over all your cash when you\n"
|
||||
.string "lose to me, kid!$"
|
||||
|
||||
Text_186968:: @ 8186968
|
||||
Route15_Text_AlexDefeat:: @ 8186968
|
||||
.string "That can't be true!$"
|
||||
|
||||
Text_18697C:: @ 818697C
|
||||
Route15_Text_AlexPostBattle:: @ 818697C
|
||||
.string "I was just joking about the money.\n"
|
||||
.string "Don't take me all serious.$"
|
||||
|
||||
Text_1869BA:: @ 81869BA
|
||||
Route15_Text_CeliaIntro:: @ 81869BA
|
||||
.string "What's cool and happening?\n"
|
||||
.string "Trading POKéMON!$"
|
||||
|
||||
Text_1869E6:: @ 81869E6
|
||||
Route15_Text_CeliaDefeat:: @ 81869E6
|
||||
.string "I said trade!$"
|
||||
|
||||
Text_1869F4:: @ 81869F4
|
||||
Route15_Text_CeliaPostBattle:: @ 81869F4
|
||||
.string "I trade POKéMON with my friends\n"
|
||||
.string "all the time.$"
|
||||
|
||||
Text_186A22:: @ 8186A22
|
||||
Route15_Text_YazminIntro:: @ 8186A22
|
||||
.string "Want to play with my POKéMON?$"
|
||||
|
||||
Text_186A40:: @ 8186A40
|
||||
Route15_Text_YazminDefeat:: @ 8186A40
|
||||
.string "I was too impatient!$"
|
||||
|
||||
Text_186A55:: @ 8186A55
|
||||
Route15_Text_YazminPostBattle:: @ 8186A55
|
||||
.string "I'll go train with weaker people.$"
|
||||
|
||||
gUnknown_8186A77:: @ 8186A77
|
||||
Route15_Text_RouteSign:: @ 8186A77
|
||||
.string "ROUTE 15\n"
|
||||
.string "West to FUCHSIA CITY$"
|
||||
|
||||
Text_186A95:: @ 8186A95
|
||||
Route15_Text_MyaIntro:: @ 8186A95
|
||||
.string "MYA: You're perfect.\n"
|
||||
.string "Help me train my little brother?$"
|
||||
|
||||
Text_186ACB:: @ 8186ACB
|
||||
Route15_Text_MyaDefeat:: @ 8186ACB
|
||||
.string "MYA: RON, you have to focus!\n"
|
||||
.string "Concentrate on what you're doing!$"
|
||||
|
||||
Text_186B0A:: @ 8186B0A
|
||||
Route15_Text_MyaPostBattle:: @ 8186B0A
|
||||
.string "MYA: Okay, we'll turn it up.\n"
|
||||
.string "I'll add to our training menu!$"
|
||||
|
||||
Text_186B46:: @ 8186B46
|
||||
Route15_Text_MyaNotEnoughMons:: @ 8186B46
|
||||
.string "MYA: Do you want to challenge us?\n"
|
||||
.string "You'll need two POKéMON, though.$"
|
||||
|
||||
Text_186B89:: @ 8186B89
|
||||
Route15_Text_RonIntro:: @ 8186B89
|
||||
.string "RON: My sister gets scary when we\n"
|
||||
.string "lose.$"
|
||||
|
||||
Text_186BB1:: @ 8186BB1
|
||||
Route15_Text_RonDefeat:: @ 8186BB1
|
||||
.string "RON: Oh, no, no…\n"
|
||||
.string "Sis, I'm sorry!$"
|
||||
|
||||
Text_186BD2:: @ 8186BD2
|
||||
Route15_Text_RonPostBattle:: @ 8186BD2
|
||||
.string "RON: Oh, bleah…\n"
|
||||
.string "I wish I had a nice sister…$"
|
||||
|
||||
Text_186BFE:: @ 8186BFE
|
||||
Route15_Text_RonNotEnoughMons:: @ 8186BFE
|
||||
.string "RON: Did you want to battle with\n"
|
||||
.string "my sister and me?\p"
|
||||
.string "You need two POKéMON, then.$"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route15_WestEntrance_1F_EventScript_170089",
|
||||
"script": "Route15_WestEntrance_1F_EventScript_Guard",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Route15_WestEntrance_1F_MapScripts:: @ 8170088
|
||||
.byte 0
|
||||
|
||||
Route15_WestEntrance_1F_EventScript_170089:: @ 8170089
|
||||
msgbox gUnknown_819F560, MSGBOX_NPC
|
||||
Route15_WestEntrance_1F_EventScript_Guard:: @ 8170089
|
||||
msgbox Route15_WestEntrance_1F_Text_OaksAideCameByHere, MSGBOX_NPC
|
||||
end
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
gUnknown_819F560:: @ 819F560
|
||||
Route15_WestEntrance_1F_Text_OaksAideCameByHere:: @ 819F560
|
||||
.string "Are you the kid who's working on\n"
|
||||
.string "a POKéDEX?\p"
|
||||
.string "PROF. OAK's AIDE came by here.$"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route15_WestEntrance_2F_EventScript_1700B9",
|
||||
"script": "Route15_WestEntrance_2F_EventScript_Aide",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -45,14 +45,14 @@
|
||||
"x": 4,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route15_WestEntrance_2F_EventScript_170093"
|
||||
"script": "Route15_WestEntrance_2F_EventScript_LeftBinoculars"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 8,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route15_WestEntrance_2F_EventScript_1700B0"
|
||||
"script": "Route15_WestEntrance_2F_EventScript_RightBinoculars"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
.equ REQUIRED_CAUGHT_MONS, 50
|
||||
|
||||
Route15_WestEntrance_2F_MapScripts:: @ 8170092
|
||||
.byte 0
|
||||
|
||||
Route15_WestEntrance_2F_EventScript_170093:: @ 8170093
|
||||
Route15_WestEntrance_2F_EventScript_LeftBinoculars:: @ 8170093
|
||||
lockall
|
||||
msgbox gUnknown_819F79C
|
||||
msgbox Route15_WestEntrance_2F_Text_LargeShiningBird
|
||||
drawmonpic SPECIES_ARTICUNO, 10, 3
|
||||
delay 20
|
||||
waitbuttonpress
|
||||
@@ -13,40 +15,40 @@ Route15_WestEntrance_2F_EventScript_170093:: @ 8170093
|
||||
releaseall
|
||||
end
|
||||
|
||||
Route15_WestEntrance_2F_EventScript_1700B0:: @ 81700B0
|
||||
msgbox gUnknown_819F7F8, MSGBOX_SIGN
|
||||
Route15_WestEntrance_2F_EventScript_RightBinoculars:: @ 81700B0
|
||||
msgbox Route15_WestEntrance_2F_Text_SmallIslandOnHorizon, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route15_WestEntrance_2F_EventScript_1700B9:: @ 81700B9
|
||||
Route15_WestEntrance_2F_EventScript_Aide:: @ 81700B9
|
||||
lock
|
||||
faceplayer
|
||||
call EventScript_170145
|
||||
goto_if_set FLAG_GOT_EXP_SHARE_FROM_OAKS_AIDE, EventScript_17013B
|
||||
msgbox gUnknown_819F5AB, MSGBOX_YESNO
|
||||
call Route15_WestEntrance_2F_EventScript_GetAideRequestInfo
|
||||
goto_if_set FLAG_GOT_EXP_SHARE_FROM_OAKS_AIDE, Route15_WestEntrance_2F_EventScript_AlreadyGotExpShare
|
||||
msgbox Route15_WestEntrance_2F_Text_GiveItemIfCaughtEnough, MSGBOX_YESNO
|
||||
compare VAR_RESULT, NO
|
||||
goto_if_eq Aide_EventScript_DeclineCheckMons
|
||||
setvar VAR_0x8004, 0
|
||||
specialvar VAR_RESULT, Special_GetPokedexCount
|
||||
getnumberstring 2, VAR_0x8006
|
||||
call EventScript_170145
|
||||
compare VAR_0x8006, 50
|
||||
call Route15_WestEntrance_2F_EventScript_GetAideRequestInfo
|
||||
compare VAR_0x8006, REQUIRED_CAUGHT_MONS
|
||||
goto_if_lt Aide_EventScript_HaventCaughtEnough
|
||||
msgbox gUnknown_819F6AA
|
||||
msgbox Route15_WestEntrance_2F_Text_GreatHereYouGo
|
||||
checkitemspace ITEM_EXP_SHARE, 1
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq Aide_EventScript_NoRoomForItem
|
||||
giveitem_msg gUnknown_819F6FD, ITEM_EXP_SHARE
|
||||
giveitem_msg Route15_WestEntrance_2F_Text_ReceivedItemFromAide, ITEM_EXP_SHARE
|
||||
setflag FLAG_GOT_EXP_SHARE_FROM_OAKS_AIDE
|
||||
msgbox gUnknown_819F71F
|
||||
msgbox Route15_WestEntrance_2F_Text_ExplainExpShare
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_17013B:: @ 817013B
|
||||
msgbox gUnknown_819F71F
|
||||
Route15_WestEntrance_2F_EventScript_AlreadyGotExpShare:: @ 817013B
|
||||
msgbox Route15_WestEntrance_2F_Text_ExplainExpShare
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_170145:: @ 8170145
|
||||
getnumberstring 0, 50
|
||||
Route15_WestEntrance_2F_EventScript_GetAideRequestInfo:: @ 8170145
|
||||
getnumberstring 0, REQUIRED_CAUGHT_MONS
|
||||
getitemname 1, ITEM_EXP_SHARE
|
||||
return
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
gUnknown_819F5AB:: @ 819F5AB
|
||||
Route15_WestEntrance_2F_Text_GiveItemIfCaughtEnough:: @ 819F5AB
|
||||
.string "Hi! Remember me?\n"
|
||||
.string "I'm one of PROF. OAK's AIDES.\p"
|
||||
.string "If your POKéDEX has complete data\n"
|
||||
@@ -10,30 +10,30 @@ gUnknown_819F5AB:: @ 819F5AB
|
||||
.string "Have you gathered data on at least\n"
|
||||
.string "{STR_VAR_1} kinds of POKéMON?$"
|
||||
|
||||
gUnknown_819F6AA:: @ 819F6AA
|
||||
Route15_WestEntrance_2F_Text_GreatHereYouGo:: @ 819F6AA
|
||||
.string "Great! You have caught or owned\n"
|
||||
.string "{STR_VAR_3} kinds of POKéMON!\p"
|
||||
.string "Congratulations!\n"
|
||||
.string "Here you go!$"
|
||||
|
||||
gUnknown_819F6FD:: @ 819F6FD
|
||||
Route15_WestEntrance_2F_Text_ReceivedItemFromAide:: @ 819F6FD
|
||||
.string "{PLAYER} received the {STR_VAR_2}\n"
|
||||
.string "from the AIDE.$"
|
||||
|
||||
gUnknown_819F71F:: @ 819F71F
|
||||
Route15_WestEntrance_2F_Text_ExplainExpShare:: @ 819F71F
|
||||
.string "EXP. SHARE is an item to be held\n"
|
||||
.string "by a POKéMON.\p"
|
||||
.string "The POKéMON will receive a share\n"
|
||||
.string "of the EXP. Points without having\l"
|
||||
.string "to battle.$"
|
||||
|
||||
gUnknown_819F79C:: @ 819F79C
|
||||
Route15_WestEntrance_2F_Text_LargeShiningBird:: @ 819F79C
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "A large, shining bird is flying\n"
|
||||
.string "toward the sea.$"
|
||||
|
||||
gUnknown_819F7F8:: @ 819F7F8
|
||||
Route15_WestEntrance_2F_Text_SmallIslandOnHorizon:: @ 819F7F8
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "It looks like a small island on\n"
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AAEEB",
|
||||
"script": "Route16_EventScript_Lao",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AAFA5",
|
||||
"script": "Route16_EventScript_Koji",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AAFE3",
|
||||
"script": "Route16_EventScript_Luke",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AAF67",
|
||||
"script": "Route16_EventScript_Ruben",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AAF29",
|
||||
"script": "Route16_EventScript_Hideo",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AB021",
|
||||
"script": "Route16_EventScript_Camron",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -127,7 +127,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AB0A5",
|
||||
"script": "Route16_EventScript_Lea",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route16_EventScript_1AB05F",
|
||||
"script": "Route16_EventScript_Jed",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -14,18 +14,18 @@ Route16_EventScript_RemoveSnorlax:: @ 81680FF
|
||||
|
||||
Route16_OnTransition:: @ 8168103
|
||||
compare VAR_MAP_SCENE_ROUTE16, 1
|
||||
call_if_eq Route16_EventScript_EnterCyclingRoad
|
||||
call_if_eq Route16_OnTransitionCyclingRoad
|
||||
end
|
||||
|
||||
Route16_EventScript_EnterCyclingRoad:: @ 816810F
|
||||
Route16_OnTransitionCyclingRoad:: @ 816810F
|
||||
setflag FLAG_SYS_ON_CYCLING_ROAD
|
||||
return
|
||||
|
||||
Route16_OnWarp:: @ 8168113
|
||||
map_script_2 VAR_MAP_SCENE_ROUTE16, 1, Route16_EventScript_WarpIntoCyclingRoad
|
||||
map_script_2 VAR_MAP_SCENE_ROUTE16, 1, Route16_OnWarpCyclingRoad
|
||||
.2byte 0
|
||||
|
||||
Route16_EventScript_WarpIntoCyclingRoad:: @ 816811D
|
||||
Route16_OnWarpCyclingRoad:: @ 816811D
|
||||
special Special_ForcePlayerOntoBike
|
||||
end
|
||||
|
||||
|
||||
+26
-26
@@ -1,66 +1,66 @@
|
||||
Text_186C4D:: @ 8186C4D
|
||||
Route16_Text_LaoIntro:: @ 8186C4D
|
||||
.string "What do you want?$"
|
||||
|
||||
Text_186C5F:: @ 8186C5F
|
||||
Route16_Text_LaoDefeat:: @ 8186C5F
|
||||
.string "Don't you dare laugh!$"
|
||||
|
||||
Text_186C75:: @ 8186C75
|
||||
Route16_Text_LaoPostBattle:: @ 8186C75
|
||||
.string "We like just hanging here.\n"
|
||||
.string "What's it to you?$"
|
||||
|
||||
Text_186CA2:: @ 8186CA2
|
||||
Route16_Text_KojiIntro:: @ 8186CA2
|
||||
.string "Nice BIKE!\n"
|
||||
.string "Hand it over!$"
|
||||
|
||||
Text_186CBB:: @ 8186CBB
|
||||
Route16_Text_KojiDefeat:: @ 8186CBB
|
||||
.string "Knockout!$"
|
||||
|
||||
Text_186CC5:: @ 8186CC5
|
||||
Route16_Text_KojiPostBattle:: @ 8186CC5
|
||||
.string "Forget it, who needs your BIKE!$"
|
||||
|
||||
Text_186CE5:: @ 8186CE5
|
||||
Route16_Text_LukeIntro:: @ 8186CE5
|
||||
.string "Come out and play, little mouse!$"
|
||||
|
||||
Text_186D06:: @ 8186D06
|
||||
Route16_Text_LukeDefeat:: @ 8186D06
|
||||
.string "You little rat!$"
|
||||
|
||||
Text_186D16:: @ 8186D16
|
||||
Route16_Text_LukePostBattle:: @ 8186D16
|
||||
.string "I hate losing!\n"
|
||||
.string "Get out of my face!$"
|
||||
|
||||
Text_186D39:: @ 8186D39
|
||||
Route16_Text_HideoIntro:: @ 8186D39
|
||||
.string "Hey, you just bumped me!$"
|
||||
|
||||
Text_186D52:: @ 8186D52
|
||||
Route16_Text_HideoDefeat:: @ 8186D52
|
||||
.string "Kaboom!$"
|
||||
|
||||
Text_186D5A:: @ 8186D5A
|
||||
Route16_Text_HideoPostBattle:: @ 8186D5A
|
||||
.string "We'll always be hanging around here\n"
|
||||
.string "even if you don't like it.\p"
|
||||
.string "You can detour to VERMILION from\n"
|
||||
.string "FUCHSIA going along the coast.$"
|
||||
|
||||
Text_186DD9:: @ 8186DD9
|
||||
Route16_Text_CamronIntro:: @ 8186DD9
|
||||
.string "I'm feeling hungry and mean!\n"
|
||||
.string "I need a punching bag!$"
|
||||
|
||||
Text_186E0D:: @ 8186E0D
|
||||
Route16_Text_CamronDefeat:: @ 8186E0D
|
||||
.string "Bad, bad, bad!$"
|
||||
|
||||
Text_186E1C:: @ 8186E1C
|
||||
Route16_Text_CamronPostBattle:: @ 8186E1C
|
||||
.string "If I'm going to have POKéMON, they\n"
|
||||
.string "may as well be ferocious.\p"
|
||||
.string "I'd use them to leave my enemies\n"
|
||||
.string "in tatters.$"
|
||||
|
||||
Text_186E86:: @ 8186E86
|
||||
Route16_Text_RubenIntro:: @ 8186E86
|
||||
.string "Hey, there!\n"
|
||||
.string "Let's have ourselves a good time!$"
|
||||
|
||||
Text_186EB4:: @ 8186EB4
|
||||
Route16_Text_RubenDefeat:: @ 8186EB4
|
||||
.string "Don't make me mad!$"
|
||||
|
||||
Text_186EC7:: @ 8186EC7
|
||||
Route16_Text_RubenPostBattle:: @ 8186EC7
|
||||
.string "I get my kicks by harassing people\n"
|
||||
.string "with my stinking POKéMON.\p"
|
||||
.string "They're great for startling people.\n"
|
||||
@@ -78,35 +78,35 @@ Route16_Text_RouteSign:: @ 8186F98
|
||||
.string "ROUTE 16\n"
|
||||
.string "CELADON CITY - FUCHSIA CITY$"
|
||||
|
||||
Text_186FBD:: @ 8186FBD
|
||||
Route16_Text_JedIntro:: @ 8186FBD
|
||||
.string "JED: Our love knows no bounds.\n"
|
||||
.string "We're in love and we show it!$"
|
||||
|
||||
Text_186FFA:: @ 8186FFA
|
||||
Route16_Text_JedDefeat:: @ 8186FFA
|
||||
.string "JED: Oh, no!\n"
|
||||
.string "My love has seen me as a loser!$"
|
||||
|
||||
Text_187027:: @ 8187027
|
||||
Route16_Text_JedPostBattle:: @ 8187027
|
||||
.string "JED: Listen, LEA.\n"
|
||||
.string "You need to focus less on me.$"
|
||||
|
||||
Text_187057:: @ 8187057
|
||||
Route16_Text_JedNotEnoughMons:: @ 8187057
|
||||
.string "JED: You have just one POKéMON?\n"
|
||||
.string "Is there no love in your heart?$"
|
||||
|
||||
Text_187097:: @ 8187097
|
||||
Route16_Text_LeaIntro:: @ 8187097
|
||||
.string "LEA: Sometimes, the intensity of\n"
|
||||
.string "our love scares me.$"
|
||||
|
||||
Text_1870CC:: @ 81870CC
|
||||
Route16_Text_LeaDefeat:: @ 81870CC
|
||||
.string "LEA: Ohh! But JED looks cool\n"
|
||||
.string "even in a loss!$"
|
||||
|
||||
Text_1870F9:: @ 81870F9
|
||||
Route16_Text_LeaPostBattle:: @ 81870F9
|
||||
.string "LEA: Ehehe, I'm sorry.\n"
|
||||
.string "JED is so cool.$"
|
||||
|
||||
Text_187120:: @ 8187120
|
||||
Route16_Text_LeaNotEnoughMons:: @ 8187120
|
||||
.string "LEA: Oh, you don't have two\n"
|
||||
.string "POKéMON with you?\p"
|
||||
.string "Doesn't it feel lonely for you or\n"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_House_EventScript_17014F",
|
||||
"script": "Route16_House_EventScript_Woman",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -38,7 +38,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_House_EventScript_1701AF",
|
||||
"script": "Route16_House_EventScript_Fearow",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
|
||||
@@ -1,36 +1,36 @@
|
||||
Route16_House_MapScripts:: @ 817014E
|
||||
.byte 0
|
||||
|
||||
Route16_House_EventScript_17014F:: @ 817014F
|
||||
Route16_House_EventScript_Woman:: @ 817014F
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_set FLAG_GOT_HM02, EventScript_1701A5
|
||||
msgbox gUnknown_819F851
|
||||
goto_if_set FLAG_GOT_HM02, Route16_House_EventScript_AlreadyGotHM02
|
||||
msgbox Route16_House_Text_FoundMySecretRetreat
|
||||
checkitemspace ITEM_HM02, 1
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq EventScript_17019B
|
||||
giveitem_msg gUnknown_819F8C0, ITEM_HM02
|
||||
msgbox gUnknown_819F8E0
|
||||
goto_if_eq Route16_House_EventScript_NoRoomForHM02
|
||||
giveitem_msg Route16_House_Text_ReceivedHM02FromGirl, ITEM_HM02
|
||||
msgbox Route16_House_Text_ExplainHM02
|
||||
setflag FLAG_GOT_HM02
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_17019B:: @ 817019B
|
||||
msgbox gUnknown_819F92D
|
||||
Route16_House_EventScript_NoRoomForHM02:: @ 817019B
|
||||
msgbox Route16_House_Text_DontHaveAnyRoomForThis
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_1701A5:: @ 81701A5
|
||||
msgbox gUnknown_819F8E0
|
||||
Route16_House_EventScript_AlreadyGotHM02:: @ 81701A5
|
||||
msgbox Route16_House_Text_ExplainHM02
|
||||
release
|
||||
end
|
||||
|
||||
Route16_House_EventScript_1701AF:: @ 81701AF
|
||||
Route16_House_EventScript_Fearow:: @ 81701AF
|
||||
lock
|
||||
faceplayer
|
||||
waitse
|
||||
playmoncry SPECIES_FEAROW, 0
|
||||
msgbox gUnknown_819F94F
|
||||
msgbox Route16_House_Text_Fearow
|
||||
waitmoncry
|
||||
release
|
||||
end
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
gUnknown_819F851:: @ 819F851
|
||||
Route16_House_Text_FoundMySecretRetreat:: @ 819F851
|
||||
.string "Oh, dear.\n"
|
||||
.string "You've found my secret retreat.\p"
|
||||
.string "Please don't tell anyone I'm here.\n"
|
||||
.string "I'll make it up to you with this!$"
|
||||
|
||||
gUnknown_819F8C0:: @ 819F8C0
|
||||
Route16_House_Text_ReceivedHM02FromGirl:: @ 819F8C0
|
||||
.string "{PLAYER} received HM02\n"
|
||||
.string "from the girl.$"
|
||||
|
||||
gUnknown_819F8E0:: @ 819F8E0
|
||||
Route16_House_Text_ExplainHM02:: @ 819F8E0
|
||||
.string "HM02 is FLY.\n"
|
||||
.string "It's a wonderfully convenient move.\p"
|
||||
.string "Please, put it to good use.$"
|
||||
|
||||
gUnknown_819F92D:: @ 819F92D
|
||||
Route16_House_Text_DontHaveAnyRoomForThis:: @ 819F92D
|
||||
.string "You don't have any room for this.$"
|
||||
|
||||
gUnknown_819F94F:: @ 819F94F
|
||||
Route16_House_Text_Fearow:: @ 819F94F
|
||||
.string "FEAROW: Kyueen!$"
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1701DB",
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_Guard",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -38,7 +38,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1702B5",
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_OldMan",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -87,7 +87,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -96,7 +96,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -105,7 +105,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1701E4"
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerTop"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -114,7 +114,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1701F0"
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMidTop"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -123,7 +123,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -132,7 +132,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -141,7 +141,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -150,7 +150,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -159,7 +159,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_1701FC"
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMid"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -168,7 +168,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_170208"
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMidBottom"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -177,7 +177,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_170214"
|
||||
"script": "Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerBottom"
|
||||
}
|
||||
],
|
||||
"bg_events": []
|
||||
|
||||
@@ -4,115 +4,115 @@ Route16_NorthEntrance_1F_MapScripts:: @ 81701C2
|
||||
|
||||
Route16_NorthEntrance_1F_OnTransition:: @ 81701C8
|
||||
clearflag FLAG_SYS_ON_CYCLING_ROAD
|
||||
call_if_set FLAG_GOT_BICYCLE, EventScript_1701D5
|
||||
call_if_set FLAG_GOT_BICYCLE, Route16_NorthEntrance_1F_EventScript_DisableNeedBikeTrigger
|
||||
end
|
||||
|
||||
EventScript_1701D5:: @ 81701D5
|
||||
Route16_NorthEntrance_1F_EventScript_DisableNeedBikeTrigger:: @ 81701D5
|
||||
setvar VAR_TEMP_1, 1
|
||||
return
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1701DB:: @ 81701DB
|
||||
msgbox gUnknown_819F98B, MSGBOX_NPC
|
||||
Route16_NorthEntrance_1F_EventScript_Guard:: @ 81701DB
|
||||
msgbox Route16_NorthEntrance_1F_Text_CyclingRoadIsDownhillCourse, MSGBOX_NPC
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1701E4:: @ 81701E4
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerTop:: @ 81701E4
|
||||
lockall
|
||||
setvar VAR_0x8008, 0
|
||||
goto EventScript_170220
|
||||
goto Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1701F0:: @ 81701F0
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMidTop:: @ 81701F0
|
||||
lockall
|
||||
setvar VAR_0x8008, 1
|
||||
goto EventScript_170220
|
||||
goto Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1701FC:: @ 81701FC
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMid:: @ 81701FC
|
||||
lockall
|
||||
setvar VAR_0x8008, 2
|
||||
goto EventScript_170220
|
||||
goto Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_170208:: @ 8170208
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerMidBottom:: @ 8170208
|
||||
lockall
|
||||
setvar VAR_0x8008, 3
|
||||
goto EventScript_170220
|
||||
goto Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_170214:: @ 8170214
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTriggerBottom:: @ 8170214
|
||||
lockall
|
||||
setvar VAR_0x8008, 4
|
||||
goto EventScript_170220
|
||||
goto Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
EventScript_170220:: @ 8170220
|
||||
Route16_NorthEntrance_1F_EventScript_NeedBikeTrigger:: @ 8170220
|
||||
textcolor 0
|
||||
msgbox gUnknown_819F9CC
|
||||
msgbox Route16_NorthEntrance_1F_Text_ExcuseMeWaitUp
|
||||
closemessage
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
|
||||
waitmovement 0
|
||||
delay 20
|
||||
compare VAR_0x8008, 1
|
||||
call_if_eq EventScript_170279
|
||||
call_if_eq Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMidTop
|
||||
compare VAR_0x8008, 2
|
||||
call_if_eq EventScript_170284
|
||||
call_if_eq Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMid
|
||||
compare VAR_0x8008, 3
|
||||
call_if_eq EventScript_17028F
|
||||
call_if_eq Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMidBottom
|
||||
compare VAR_0x8008, 4
|
||||
call_if_eq EventScript_17029A
|
||||
msgbox gUnknown_819F95F
|
||||
call_if_eq Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterBottom
|
||||
msgbox Route16_NorthEntrance_1F_Text_NoPedestriansOnCyclingRoad
|
||||
closemessage
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_1702B3
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route16_NorthEntrance_1F_Movement_WalkRight
|
||||
waitmovement 0
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_170279:: @ 8170279
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_1702A5
|
||||
Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMidTop:: @ 8170279
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route16_NorthEntrance_1F_Movement_WalkUp
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_170284:: @ 8170284
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_1702A7
|
||||
Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMid:: @ 8170284
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route16_NorthEntrance_1F_Movement_WalkUp2
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_17028F:: @ 817028F
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_1702AA
|
||||
Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterMidBottom:: @ 817028F
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route16_NorthEntrance_1F_Movement_WalkUp3
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_17029A:: @ 817029A
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_1702AE
|
||||
Route16_NorthEntrance_1F_EventScript_PlayerWalkToCounterBottom:: @ 817029A
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route16_NorthEntrance_1F_Movement_WalkUp4
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
Movement_1702A5:: @ 81702A5
|
||||
Route16_NorthEntrance_1F_Movement_WalkUp:: @ 81702A5
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_1702A7:: @ 81702A7
|
||||
Route16_NorthEntrance_1F_Movement_WalkUp2:: @ 81702A7
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_1702AA:: @ 81702AA
|
||||
Route16_NorthEntrance_1F_Movement_WalkUp3:: @ 81702AA
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_1702AE:: @ 81702AE
|
||||
Route16_NorthEntrance_1F_Movement_WalkUp4:: @ 81702AE
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_1702B3:: @ 81702B3
|
||||
Route16_NorthEntrance_1F_Movement_WalkRight:: @ 81702B3
|
||||
walk_right
|
||||
step_end
|
||||
|
||||
Route16_NorthEntrance_1F_EventScript_1702B5:: @ 81702B5
|
||||
msgbox gUnknown_819F9E8, MSGBOX_NPC
|
||||
Route16_NorthEntrance_1F_EventScript_OldMan:: @ 81702B5
|
||||
msgbox Route16_NorthEntrance_1F_Text_HowdYouGetInGoodEffort, MSGBOX_NPC
|
||||
end
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
gUnknown_819F95F:: @ 819F95F
|
||||
Route16_NorthEntrance_1F_Text_NoPedestriansOnCyclingRoad:: @ 819F95F
|
||||
.string "No pedestrians are allowed on\n"
|
||||
.string "CYCLING ROAD!$"
|
||||
|
||||
gUnknown_819F98B:: @ 819F98B
|
||||
Route16_NorthEntrance_1F_Text_CyclingRoadIsDownhillCourse:: @ 819F98B
|
||||
.string "CYCLING ROAD is a downhill course\n"
|
||||
.string "by the sea. It's a great ride.$"
|
||||
|
||||
gUnknown_819F9CC:: @ 819F9CC
|
||||
Route16_NorthEntrance_1F_Text_ExcuseMeWaitUp:: @ 819F9CC
|
||||
.string "Excuse me!\n"
|
||||
.string "Wait up, please!$"
|
||||
|
||||
gUnknown_819F9E8:: @ 819F9E8
|
||||
Route16_NorthEntrance_1F_Text_HowdYouGetInGoodEffort:: @ 819F9E8
|
||||
.string "How'd you get in?\n"
|
||||
.string "Good effort!$"
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_1702BF",
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_LittleBoy",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -38,7 +38,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_1702C8",
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_LittleGirl",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -51,7 +51,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_1702E3",
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_Aide",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -71,14 +71,14 @@
|
||||
"x": 4,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_1702D1"
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_LeftBinoculars"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 8,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_1702DA"
|
||||
"script": "Route16_NorthEntrance_2F_EventScript_RightBinoculars"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,52 +1,54 @@
|
||||
.equ REQUIRED_CAUGHT_MONS, 40
|
||||
|
||||
Route16_NorthEntrance_2F_MapScripts:: @ 81702BE
|
||||
.byte 0
|
||||
|
||||
Route16_NorthEntrance_2F_EventScript_1702BF:: @ 81702BF
|
||||
msgbox gUnknown_819FA07, MSGBOX_NPC
|
||||
Route16_NorthEntrance_2F_EventScript_LittleBoy:: @ 81702BF
|
||||
msgbox Route16_NorthEntrance_2F_Text_OnBikeRideWithGirlfriend, MSGBOX_NPC
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_2F_EventScript_1702C8:: @ 81702C8
|
||||
msgbox gUnknown_819FA41, MSGBOX_NPC
|
||||
Route16_NorthEntrance_2F_EventScript_LittleGirl:: @ 81702C8
|
||||
msgbox Route16_NorthEntrance_2F_Text_RidingTogetherOnNewBikes, MSGBOX_NPC
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_2F_EventScript_1702D1:: @ 81702D1
|
||||
msgbox gUnknown_819FA6F, MSGBOX_SIGN
|
||||
Route16_NorthEntrance_2F_EventScript_LeftBinoculars:: @ 81702D1
|
||||
msgbox Route16_NorthEntrance_2F_Text_ItsCeladonDeptStore, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_2F_EventScript_1702DA:: @ 81702DA
|
||||
msgbox gUnknown_819FAB9, MSGBOX_SIGN
|
||||
Route16_NorthEntrance_2F_EventScript_RightBinoculars:: @ 81702DA
|
||||
msgbox Route16_NorthEntrance_2F_Text_LongPathOverWater, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route16_NorthEntrance_2F_EventScript_1702E3:: @ 81702E3
|
||||
Route16_NorthEntrance_2F_EventScript_Aide:: @ 81702E3
|
||||
lock
|
||||
faceplayer
|
||||
call EventScript_17036F
|
||||
goto_if_set FLAG_GOT_AMULET_COIN_FROM_OAKS_AIDE, EventScript_170365
|
||||
msgbox gUnknown_819FB0E, MSGBOX_YESNO
|
||||
call Route16_NorthEntrance_2F_EventScript_GetAideRequestInfo
|
||||
goto_if_set FLAG_GOT_AMULET_COIN_FROM_OAKS_AIDE, Route16_NorthEntrance_2F_EventScript_AlreadyGotAmuletCoin
|
||||
msgbox Route16_NorthEntrance_2F_Text_GiveAmuletCoinIfCaught40, MSGBOX_YESNO
|
||||
compare VAR_RESULT, NO
|
||||
goto_if_eq Aide_EventScript_DeclineCheckMons
|
||||
setvar VAR_0x8004, 0
|
||||
specialvar VAR_RESULT, Special_GetPokedexCount
|
||||
getnumberstring 2, VAR_0x8006
|
||||
call EventScript_17036F
|
||||
compare VAR_0x8006, 40
|
||||
call Route16_NorthEntrance_2F_EventScript_GetAideRequestInfo
|
||||
compare VAR_0x8006, REQUIRED_CAUGHT_MONS
|
||||
goto_if_lt Aide_EventScript_HaventCaughtEnough
|
||||
msgbox gUnknown_819FC15
|
||||
msgbox Route16_NorthEntrance_2F_Text_GreatHereYouGo
|
||||
checkitemspace ITEM_AMULET_COIN, 1
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq Aide_EventScript_NoRoomForItem
|
||||
giveitem_msg gUnknown_819FC68, ITEM_AMULET_COIN
|
||||
giveitem_msg Route16_NorthEntrance_2F_Text_ReceivedAmuletCoinFromAide, ITEM_AMULET_COIN
|
||||
setflag FLAG_GOT_AMULET_COIN_FROM_OAKS_AIDE
|
||||
msgbox gUnknown_819FC93
|
||||
msgbox Route16_NorthEntrance_2F_Text_ExplainAmuletCoin
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_170365:: @ 8170365
|
||||
msgbox gUnknown_819FC93
|
||||
Route16_NorthEntrance_2F_EventScript_AlreadyGotAmuletCoin:: @ 8170365
|
||||
msgbox Route16_NorthEntrance_2F_Text_ExplainAmuletCoin
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_17036F:: @ 817036F
|
||||
getnumberstring 0, 40
|
||||
Route16_NorthEntrance_2F_EventScript_GetAideRequestInfo:: @ 817036F
|
||||
getnumberstring 0, REQUIRED_CAUGHT_MONS
|
||||
getitemname 1, ITEM_AMULET_COIN
|
||||
return
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
gUnknown_819FA07:: @ 819FA07
|
||||
Route16_NorthEntrance_2F_Text_OnBikeRideWithGirlfriend:: @ 819FA07
|
||||
.string "I'm on a relaxing ride on my new\n"
|
||||
.string "bike with my girlfriend.$"
|
||||
|
||||
gUnknown_819FA41:: @ 819FA41
|
||||
Route16_NorthEntrance_2F_Text_RidingTogetherOnNewBikes:: @ 819FA41
|
||||
.string "We're going riding together on our\n"
|
||||
.string "new bikes.$"
|
||||
|
||||
gUnknown_819FA6F:: @ 819FA6F
|
||||
Route16_NorthEntrance_2F_Text_ItsCeladonDeptStore:: @ 819FA6F
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "It's the CELADON DEPT. STORE!$"
|
||||
|
||||
gUnknown_819FAB9:: @ 819FAB9
|
||||
Route16_NorthEntrance_2F_Text_LongPathOverWater:: @ 819FAB9
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "There's a long path over water far\n"
|
||||
.string "away.$"
|
||||
|
||||
gUnknown_819FB0E:: @ 819FB0E
|
||||
Route16_NorthEntrance_2F_Text_GiveAmuletCoinIfCaught40:: @ 819FB0E
|
||||
.string "Hi! Remember me?\n"
|
||||
.string "I'm one of PROF. OAK's AIDES.\p"
|
||||
.string "If your POKéDEX has complete data\n"
|
||||
@@ -29,17 +29,17 @@ gUnknown_819FB0E:: @ 819FB0E
|
||||
.string "Have you gathered data on at least\n"
|
||||
.string "40 kinds of POKéMON?$"
|
||||
|
||||
gUnknown_819FC15:: @ 819FC15
|
||||
Route16_NorthEntrance_2F_Text_GreatHereYouGo:: @ 819FC15
|
||||
.string "Great! You have caught or owned\n"
|
||||
.string "{STR_VAR_3} kinds of POKéMON!\p"
|
||||
.string "Congratulations!\n"
|
||||
.string "Here you go!$"
|
||||
|
||||
gUnknown_819FC68:: @ 819FC68
|
||||
Route16_NorthEntrance_2F_Text_ReceivedAmuletCoinFromAide:: @ 819FC68
|
||||
.string "{PLAYER} received the AMULET COIN\n"
|
||||
.string "from the AIDE.$"
|
||||
|
||||
gUnknown_819FC93:: @ 819FC93
|
||||
Route16_NorthEntrance_2F_Text_ExplainAmuletCoin:: @ 819FC93
|
||||
.string "An AMULET COIN is an item to be\n"
|
||||
.string "held by a POKéMON.\p"
|
||||
.string "If the POKéMON appears in a winning\n"
|
||||
|
||||
+16
-16
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 6,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB319",
|
||||
"script": "Route17_EventScript_Virgil",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 5,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB221",
|
||||
"script": "Route17_EventScript_Isaiah",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 2,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB1E3",
|
||||
"script": "Route17_EventScript_Raul",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 5,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB129",
|
||||
"script": "Route17_EventScript_Nikolas",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 5,
|
||||
"script": "Route17_EventScript_1AB0EB",
|
||||
"script": "Route17_EventScript_Billy",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 4,
|
||||
"script": "Route17_EventScript_1AB29D",
|
||||
"script": "Route17_EventScript_Jamal",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route17_EventScript_1AB25F",
|
||||
"script": "Route17_EventScript_Zeek",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -127,7 +127,7 @@
|
||||
"movement_range_y": 5,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB2DB",
|
||||
"script": "Route17_EventScript_Corey",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB1A5",
|
||||
"script": "Route17_EventScript_William",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -153,7 +153,7 @@
|
||||
"movement_range_y": 5,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route17_EventScript_1AB167",
|
||||
"script": "Route17_EventScript_Jaxon",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -165,42 +165,42 @@
|
||||
"x": 12,
|
||||
"y": 97,
|
||||
"elevation": 0,
|
||||
"script": "Route17_EventScript_1681DB"
|
||||
"script": "Route17_EventScript_RouteSign"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 12,
|
||||
"y": 83,
|
||||
"elevation": 0,
|
||||
"script": "Route17_EventScript_1681D2"
|
||||
"script": "Route17_EventScript_TrainerTips2"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 12,
|
||||
"y": 68,
|
||||
"elevation": 0,
|
||||
"script": "Route17_EventScript_1681C9"
|
||||
"script": "Route17_EventScript_TrainerTips1"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 12,
|
||||
"y": 53,
|
||||
"elevation": 0,
|
||||
"script": "Route17_EventScript_1681C0"
|
||||
"script": "Route17_EventScript_ItemsNotice"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 12,
|
||||
"y": 125,
|
||||
"elevation": 3,
|
||||
"script": "Route17_EventScript_1681E4"
|
||||
"script": "Route17_EventScript_BallsNotice"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 11,
|
||||
"y": 157,
|
||||
"elevation": 0,
|
||||
"script": "Route17_EventScript_1681ED"
|
||||
"script": "Route17_EventScript_CyclingRoadSign"
|
||||
},
|
||||
{
|
||||
"type": "hidden_item",
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
Route17_MapScripts:: @ 81681BF
|
||||
.byte 0
|
||||
|
||||
Route17_EventScript_1681C0:: @ 81681C0
|
||||
msgbox gUnknown_81874E4, MSGBOX_SIGN
|
||||
Route17_EventScript_ItemsNotice:: @ 81681C0
|
||||
msgbox Route17_Text_WatchOutForDiscardedItems, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route17_EventScript_1681C9:: @ 81681C9
|
||||
msgbox gUnknown_8187512, MSGBOX_SIGN
|
||||
Route17_EventScript_TrainerTips1:: @ 81681C9
|
||||
msgbox Route17_Text_SameSpeciesGrowDifferentRates, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route17_EventScript_1681D2:: @ 81681D2
|
||||
msgbox gUnknown_818757B, MSGBOX_SIGN
|
||||
Route17_EventScript_TrainerTips2:: @ 81681D2
|
||||
msgbox Route17_Text_PressBToStayInPlace, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route17_EventScript_1681DB:: @ 81681DB
|
||||
msgbox gUnknown_81875BE, MSGBOX_SIGN
|
||||
Route17_EventScript_RouteSign:: @ 81681DB
|
||||
msgbox Route17_Text_RouteSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route17_EventScript_1681E4:: @ 81681E4
|
||||
msgbox gUnknown_81875E3, MSGBOX_SIGN
|
||||
Route17_EventScript_BallsNotice:: @ 81681E4
|
||||
msgbox Route17_Text_DontThrowGameThrowBalls, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route17_EventScript_1681ED:: @ 81681ED
|
||||
msgbox gUnknown_8187622, MSGBOX_SIGN
|
||||
Route17_EventScript_CyclingRoadSign:: @ 81681ED
|
||||
msgbox Route17_Text_CyclingRoadSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
+36
-36
@@ -1,131 +1,131 @@
|
||||
Text_18717E:: @ 818717E
|
||||
Route17_Text_RaulIntro:: @ 818717E
|
||||
.string "There's no getting rich quick in\n"
|
||||
.string "battling kids.$"
|
||||
|
||||
Text_1871AE:: @ 81871AE
|
||||
Route17_Text_RaulDefeat:: @ 81871AE
|
||||
.string "Burned out!$"
|
||||
|
||||
Text_1871BA:: @ 81871BA
|
||||
Route17_Text_RaulPostBattle:: @ 81871BA
|
||||
.string "You can find good stuff lying\n"
|
||||
.string "around on CYCLING ROAD.\p"
|
||||
.string "There's good money in picking them\n"
|
||||
.string "up and selling them.$"
|
||||
|
||||
Text_187228:: @ 8187228
|
||||
Route17_Text_IsaiahIntro:: @ 8187228
|
||||
.string "I'm mighty proud of my bod, kiddo.\n"
|
||||
.string "Come on!$"
|
||||
|
||||
Text_187254:: @ 8187254
|
||||
Route17_Text_IsaiahDefeat:: @ 8187254
|
||||
.string "Whoo!$"
|
||||
|
||||
Text_18725A:: @ 818725A
|
||||
Route17_Text_IsaiahPostBattle:: @ 818725A
|
||||
.string "I could belly-bump you outta\n"
|
||||
.string "here!$"
|
||||
|
||||
Text_18727D:: @ 818727D
|
||||
Route17_Text_VirgilIntro:: @ 818727D
|
||||
.string "You heading to FUCHSIA?$"
|
||||
|
||||
Text_187295:: @ 8187295
|
||||
Route17_Text_VirgilDefeat:: @ 8187295
|
||||
.string "Crash and burn!$"
|
||||
|
||||
Text_1872A5:: @ 81872A5
|
||||
Route17_Text_VirgilPostBattle:: @ 81872A5
|
||||
.string "I love racing downhill!$"
|
||||
|
||||
Text_1872BD:: @ 81872BD
|
||||
Route17_Text_BillyIntro:: @ 81872BD
|
||||
.string "We're BIKERS!\n"
|
||||
.string "We rule the roads, man!$"
|
||||
|
||||
Text_1872E3:: @ 81872E3
|
||||
Route17_Text_BillyDefeat:: @ 81872E3
|
||||
.string "Smoked!$"
|
||||
|
||||
Text_1872EB:: @ 81872EB
|
||||
Route17_Text_BillyPostBattle:: @ 81872EB
|
||||
.string "Are you looking for adventure?$"
|
||||
|
||||
Text_18730A:: @ 818730A
|
||||
Route17_Text_NikolasIntro:: @ 818730A
|
||||
.string "Let VOLTORB electrify you!$"
|
||||
|
||||
Text_187325:: @ 8187325
|
||||
Route17_Text_NikolasDefeat:: @ 8187325
|
||||
.string "Grounded out!$"
|
||||
|
||||
Text_187333:: @ 8187333
|
||||
Route17_Text_NikolasPostBattle:: @ 8187333
|
||||
.string "I got my VOLTORB at the abandoned\n"
|
||||
.string "POWER PLANT.$"
|
||||
|
||||
Text_187362:: @ 8187362
|
||||
Route17_Text_ZeekIntro:: @ 8187362
|
||||
.string "I leveled up my POKéMON, but it\n"
|
||||
.string "won't evolve. Why?$"
|
||||
|
||||
Text_187395:: @ 8187395
|
||||
Route17_Text_ZeekDefeat:: @ 8187395
|
||||
.string "Why, you!$"
|
||||
|
||||
Text_18739F:: @ 818739F
|
||||
Route17_Text_ZeekPostBattle:: @ 818739F
|
||||
.string "Maybe some POKéMON need element\n"
|
||||
.string "STONES to evolve.$"
|
||||
|
||||
Text_1873D1:: @ 81873D1
|
||||
Route17_Text_JamalIntro:: @ 81873D1
|
||||
.string "I need a little exercise!$"
|
||||
|
||||
Text_1873EB:: @ 81873EB
|
||||
Route17_Text_JamalDefeat:: @ 81873EB
|
||||
.string "Whew!\n"
|
||||
.string "Good workout!$"
|
||||
|
||||
Text_1873FF:: @ 81873FF
|
||||
Route17_Text_JamalPostBattle:: @ 81873FF
|
||||
.string "I'm sure I lost weight there!$"
|
||||
|
||||
Text_18741D:: @ 818741D
|
||||
Route17_Text_CoreyIntro:: @ 818741D
|
||||
.string "Be a rebel!$"
|
||||
|
||||
Text_187429:: @ 8187429
|
||||
Route17_Text_CoreyDefeat:: @ 8187429
|
||||
.string "Aaaargh!$"
|
||||
|
||||
Text_187432:: @ 8187432
|
||||
Route17_Text_CoreyPostBattle:: @ 8187432
|
||||
.string "Be ready to fight for your beliefs!$"
|
||||
|
||||
Text_187456:: @ 8187456
|
||||
Route17_Text_JaxonIntro:: @ 8187456
|
||||
.string "Nice BIKE!\n"
|
||||
.string "How's it handle?$"
|
||||
|
||||
Text_187472:: @ 8187472
|
||||
Route17_Text_JaxonDefeat:: @ 8187472
|
||||
.string "Shoot!$"
|
||||
|
||||
Text_187479:: @ 8187479
|
||||
Route17_Text_JaxonPostBattle:: @ 8187479
|
||||
.string "The slope makes it hard to steer.$"
|
||||
|
||||
Text_18749B:: @ 818749B
|
||||
Route17_Text_WilliamIntro:: @ 818749B
|
||||
.string "Get lost, kid!\n"
|
||||
.string "I'm bushed!$"
|
||||
|
||||
Text_1874B6:: @ 81874B6
|
||||
Route17_Text_WilliamDefeat:: @ 81874B6
|
||||
.string "Are you satisfied?$"
|
||||
|
||||
Text_1874C9:: @ 81874C9
|
||||
Route17_Text_WilliamPostBattle:: @ 81874C9
|
||||
.string "I need to catch a few z's!$"
|
||||
|
||||
gUnknown_81874E4:: @ 81874E4
|
||||
Route17_Text_WatchOutForDiscardedItems:: @ 81874E4
|
||||
.string "It's a notice.\p"
|
||||
.string "Watch out for discarded items.$"
|
||||
|
||||
gUnknown_8187512:: @ 8187512
|
||||
Route17_Text_SameSpeciesGrowDifferentRates:: @ 8187512
|
||||
.string "TRAINER TIPS\p"
|
||||
.string "All POKéMON are unique.\p"
|
||||
.string "Even POKéMON of the same species\n"
|
||||
.string "and level grow at different rates.$"
|
||||
|
||||
gUnknown_818757B:: @ 818757B
|
||||
Route17_Text_PressBToStayInPlace:: @ 818757B
|
||||
.string "TRAINER TIPS\p"
|
||||
.string "Press the B Button to stay in place\n"
|
||||
.string "while on a slope.$"
|
||||
|
||||
gUnknown_81875BE:: @ 81875BE
|
||||
Route17_Text_RouteSign:: @ 81875BE
|
||||
.string "ROUTE 17\n"
|
||||
.string "CELADON CITY - FUCHSIA CITY$"
|
||||
|
||||
gUnknown_81875E3:: @ 81875E3
|
||||
Route17_Text_DontThrowGameThrowBalls:: @ 81875E3
|
||||
.string "It's a notice!\p"
|
||||
.string "Don't throw the game, throw POKé\n"
|
||||
.string "BALLS instead!$"
|
||||
|
||||
gUnknown_8187622:: @ 8187622
|
||||
Route17_Text_CyclingRoadSign:: @ 8187622
|
||||
.string "CYCLING ROAD\n"
|
||||
.string "Slope ends here!$"
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 4,
|
||||
"script": "Route18_EventScript_1AB3D3",
|
||||
"script": "Route18_EventScript_Jacob",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route18_EventScript_1AB395",
|
||||
"script": "Route18_EventScript_Ramiro",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 6,
|
||||
"script": "Route18_EventScript_1AB357",
|
||||
"script": "Route18_EventScript_Wilton",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -89,14 +89,14 @@
|
||||
"x": 37,
|
||||
"y": 7,
|
||||
"elevation": 0,
|
||||
"script": "Route18_EventScript_168228"
|
||||
"script": "Route18_EventScript_CyclingRoadSign"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 52,
|
||||
"y": 7,
|
||||
"elevation": 0,
|
||||
"script": "Route18_EventScript_16821F"
|
||||
"script": "Route18_EventScript_RouteSign"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -5,25 +5,25 @@ Route18_MapScripts:: @ 81681F6
|
||||
|
||||
Route18_OnTransition:: @ 8168201
|
||||
compare VAR_MAP_SCENE_ROUTE16, 1
|
||||
call_if_eq EventScript_16820D
|
||||
call_if_eq Route18_OnTransitionCyclingRoad
|
||||
end
|
||||
|
||||
EventScript_16820D:: @ 816820D
|
||||
Route18_OnTransitionCyclingRoad:: @ 816820D
|
||||
setflag FLAG_SYS_ON_CYCLING_ROAD
|
||||
return
|
||||
|
||||
Route18_OnWarp:: @ 8168211
|
||||
map_script_2 VAR_MAP_SCENE_ROUTE16, 1, EventScript_16821B
|
||||
map_script_2 VAR_MAP_SCENE_ROUTE16, 1, Route18_OnWarpCyclingRoad
|
||||
.2byte 0
|
||||
|
||||
EventScript_16821B:: @ 816821B
|
||||
Route18_OnWarpCyclingRoad:: @ 816821B
|
||||
special Special_ForcePlayerOntoBike
|
||||
end
|
||||
|
||||
Route18_EventScript_16821F:: @ 816821F
|
||||
msgbox gUnknown_8187757, MSGBOX_SIGN
|
||||
Route18_EventScript_RouteSign:: @ 816821F
|
||||
msgbox Route18_Text_RouteSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route18_EventScript_168228:: @ 8168228
|
||||
msgbox gUnknown_818777C, MSGBOX_SIGN
|
||||
Route18_EventScript_CyclingRoadSign:: @ 8168228
|
||||
msgbox Route18_Text_CyclingRoadSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
+11
-11
@@ -1,40 +1,40 @@
|
||||
Text_187640:: @ 8187640
|
||||
Route18_Text_WiltonIntro:: @ 8187640
|
||||
.string "I always check every grassy area\n"
|
||||
.string "for new POKéMON.$"
|
||||
|
||||
Text_187672:: @ 8187672
|
||||
Route18_Text_WiltonDefeat:: @ 8187672
|
||||
.string "Tch!$"
|
||||
|
||||
Text_187677:: @ 8187677
|
||||
Route18_Text_WiltonPostBattle:: @ 8187677
|
||||
.string "I wish I had a BIKE!$"
|
||||
|
||||
Text_18768C:: @ 818768C
|
||||
Route18_Text_RamiroIntro:: @ 818768C
|
||||
.string "Kurukkoo!\n"
|
||||
.string "How do you like my birdcall?$"
|
||||
|
||||
Text_1876B3:: @ 81876B3
|
||||
Route18_Text_RamiroDefeat:: @ 81876B3
|
||||
.string "I had to bug you!$"
|
||||
|
||||
Text_1876C5:: @ 81876C5
|
||||
Route18_Text_RamiroPostBattle:: @ 81876C5
|
||||
.string "I collect sea POKéMON on weekends\n"
|
||||
.string "because the sea is so close.$"
|
||||
|
||||
Text_187704:: @ 8187704
|
||||
Route18_Text_JacobIntro:: @ 8187704
|
||||
.string "This is my turf!\n"
|
||||
.string "Get out of here!$"
|
||||
|
||||
Text_187726:: @ 8187726
|
||||
Route18_Text_JacobDefeat:: @ 8187726
|
||||
.string "Darn!$"
|
||||
|
||||
Text_18772C:: @ 818772C
|
||||
Route18_Text_JacobPostBattle:: @ 818772C
|
||||
.string "This is my fave area for catching\n"
|
||||
.string "POKéMON.$"
|
||||
|
||||
gUnknown_8187757:: @ 8187757
|
||||
Route18_Text_RouteSign:: @ 8187757
|
||||
.string "ROUTE 18\n"
|
||||
.string "CELADON CITY - FUCHSIA CITY$"
|
||||
|
||||
gUnknown_818777C:: @ 818777C
|
||||
Route18_Text_CyclingRoadSign:: @ 818777C
|
||||
.string "CYCLING ROAD\n"
|
||||
.string "No pedestrians permitted!$"
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_170391",
|
||||
"script": "Route18_EastEntrance_1F_EventScript_Guard",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -60,7 +60,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -69,7 +69,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_17039A"
|
||||
"script": "Route18_EastEntrance_1F_EventScript_NeedBikeTriggerTop"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -78,7 +78,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1703A6"
|
||||
"script": "Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMidTop"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -87,7 +87,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1703B2"
|
||||
"script": "Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMid"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -96,7 +96,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1703BE"
|
||||
"script": "Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMidBottom"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -105,7 +105,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_TEMP_1",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1703CA"
|
||||
"script": "Route18_EastEntrance_1F_EventScript_NeedBikeTriggerBottom"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -114,7 +114,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -123,7 +123,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -132,7 +132,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 1,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77B6"
|
||||
"script": "EventScript_SetExitingCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -141,7 +141,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -150,7 +150,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE16",
|
||||
"var_value": 0,
|
||||
"script": "Route18_EastEntrance_1F_EventScript_1A77C1"
|
||||
"script": "EventScript_SetEnteringCyclingRoad"
|
||||
}
|
||||
],
|
||||
"bg_events": []
|
||||
|
||||
@@ -4,111 +4,111 @@ Route18_EastEntrance_1F_MapScripts:: @ 8170378
|
||||
|
||||
Route18_EastEntrance_1F_OnTransition:: @ 817037E
|
||||
clearflag FLAG_SYS_ON_CYCLING_ROAD
|
||||
call_if_set FLAG_GOT_BICYCLE, EventScript_17038B
|
||||
call_if_set FLAG_GOT_BICYCLE, Route18_EastEntrance_1F_EventScript_DisableNeedBikeTrigger
|
||||
end
|
||||
|
||||
EventScript_17038B:: @ 817038B
|
||||
Route18_EastEntrance_1F_EventScript_DisableNeedBikeTrigger:: @ 817038B
|
||||
setvar VAR_TEMP_1, 1
|
||||
return
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_170391:: @ 8170391
|
||||
msgbox gUnknown_819FD3A, MSGBOX_NPC
|
||||
Route18_EastEntrance_1F_EventScript_Guard:: @ 8170391
|
||||
msgbox Route18_EastEntrance_1F_Text_CyclingRoadAllUphillFromHere, MSGBOX_NPC
|
||||
end
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_17039A:: @ 817039A
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTriggerTop:: @ 817039A
|
||||
lockall
|
||||
setvar VAR_0x8008, 0
|
||||
goto EventScript_1703D6
|
||||
goto Route18_EastEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_1703A6:: @ 81703A6
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMidTop:: @ 81703A6
|
||||
lockall
|
||||
setvar VAR_0x8008, 1
|
||||
goto EventScript_1703D6
|
||||
goto Route18_EastEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_1703B2:: @ 81703B2
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMid:: @ 81703B2
|
||||
lockall
|
||||
setvar VAR_0x8008, 2
|
||||
goto EventScript_1703D6
|
||||
goto Route18_EastEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_1703BE:: @ 81703BE
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTriggerMidBottom:: @ 81703BE
|
||||
lockall
|
||||
setvar VAR_0x8008, 3
|
||||
goto EventScript_1703D6
|
||||
goto Route18_EastEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
Route18_EastEntrance_1F_EventScript_1703CA:: @ 81703CA
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTriggerBottom:: @ 81703CA
|
||||
lockall
|
||||
setvar VAR_0x8008, 4
|
||||
goto EventScript_1703D6
|
||||
goto Route18_EastEntrance_1F_EventScript_NeedBikeTrigger
|
||||
end
|
||||
|
||||
EventScript_1703D6:: @ 81703D6
|
||||
Route18_EastEntrance_1F_EventScript_NeedBikeTrigger:: @ 81703D6
|
||||
textcolor 0
|
||||
msgbox gUnknown_819FD60
|
||||
msgbox Route18_EastEntrance_1F_Text_ExcuseMe
|
||||
closemessage
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestUp
|
||||
waitmovement 0
|
||||
delay 20
|
||||
compare VAR_0x8008, 1
|
||||
call_if_eq EventScript_17042F
|
||||
call_if_eq Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMidTop
|
||||
compare VAR_0x8008, 2
|
||||
call_if_eq EventScript_17043A
|
||||
call_if_eq Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMid
|
||||
compare VAR_0x8008, 3
|
||||
call_if_eq EventScript_170445
|
||||
call_if_eq Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMidBottom
|
||||
compare VAR_0x8008, 4
|
||||
call_if_eq EventScript_170450
|
||||
msgbox gUnknown_819FD0C
|
||||
call_if_eq Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterBottom
|
||||
msgbox Route18_EastEntrance_1F_Text_NeedBicycleForCyclingRoad
|
||||
closemessage
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_170469
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route18_EastEntrance_1F_Movement_WalkRight
|
||||
waitmovement 0
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_17042F:: @ 817042F
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_17045B
|
||||
Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMidTop:: @ 817042F
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route18_EastEntrance_1F_Movement_WalkUp
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_17043A:: @ 817043A
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_17045D
|
||||
Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMid:: @ 817043A
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route18_EastEntrance_1F_Movement_WalkUp2
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_170445:: @ 8170445
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_170460
|
||||
Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterMidBottom:: @ 8170445
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route18_EastEntrance_1F_Movement_WalkUp3
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_170450:: @ 8170450
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_170464
|
||||
Route18_EastEntrance_1F_EventScript_PlayerWalkToCounterBottom:: @ 8170450
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route18_EastEntrance_1F_Movement_WalkUp4
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
Movement_17045B:: @ 817045B
|
||||
Route18_EastEntrance_1F_Movement_WalkUp:: @ 817045B
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_17045D:: @ 817045D
|
||||
Route18_EastEntrance_1F_Movement_WalkUp2:: @ 817045D
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_170460:: @ 8170460
|
||||
Route18_EastEntrance_1F_Movement_WalkUp3:: @ 8170460
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_170464:: @ 8170464
|
||||
Route18_EastEntrance_1F_Movement_WalkUp4:: @ 8170464
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_170469:: @ 8170469
|
||||
Route18_EastEntrance_1F_Movement_WalkRight:: @ 8170469
|
||||
walk_right
|
||||
step_end
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
gUnknown_819FD0C:: @ 819FD0C
|
||||
Route18_EastEntrance_1F_Text_NeedBicycleForCyclingRoad:: @ 819FD0C
|
||||
.string "You need a BICYCLE to go out on\n"
|
||||
.string "CYCLING ROAD!$"
|
||||
|
||||
gUnknown_819FD3A:: @ 819FD3A
|
||||
Route18_EastEntrance_1F_Text_CyclingRoadAllUphillFromHere:: @ 819FD3A
|
||||
.string "CYCLING ROAD is all uphill from\n"
|
||||
.string "here.$"
|
||||
|
||||
gUnknown_819FD60:: @ 819FD60
|
||||
Route18_EastEntrance_1F_Text_ExcuseMe:: @ 819FD60
|
||||
.string "Excuse me!$"
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route18_EastEntrance_2F_EventScript_17047E",
|
||||
"script": "Route18_EastEntrance_2F_EventScript_Haden",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -45,14 +45,14 @@
|
||||
"x": 4,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route18_EastEntrance_2F_EventScript_17046C"
|
||||
"script": "Route18_EastEntrance_2F_EventScript_LeftBinoculars"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 8,
|
||||
"y": 1,
|
||||
"elevation": 0,
|
||||
"script": "Route18_EastEntrance_2F_EventScript_170475"
|
||||
"script": "Route18_EastEntrance_2F_EventScript_RightBinoculars"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,47 +1,47 @@
|
||||
Route18_EastEntrance_2F_MapScripts:: @ 817046B
|
||||
.byte 0
|
||||
|
||||
Route18_EastEntrance_2F_EventScript_17046C:: @ 817046C
|
||||
msgbox gUnknown_819FD6B, MSGBOX_SIGN
|
||||
Route18_EastEntrance_2F_EventScript_LeftBinoculars:: @ 817046C
|
||||
msgbox Route18_EastEntrance_2F_Text_PalletTownInWest, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route18_EastEntrance_2F_EventScript_170475:: @ 8170475
|
||||
msgbox gUnknown_819FDB3, MSGBOX_SIGN
|
||||
Route18_EastEntrance_2F_EventScript_RightBinoculars:: @ 8170475
|
||||
msgbox Route18_EastEntrance_2F_Text_PeopleSwimming, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route18_EastEntrance_2F_EventScript_17047E:: @ 817047E
|
||||
Route18_EastEntrance_2F_EventScript_Haden:: @ 817047E
|
||||
lock
|
||||
faceplayer
|
||||
setvar VAR_0x8008, INGAME_TRADE_LICKITUNG
|
||||
call EventScript_GetInGameTradeSpeciesInfo
|
||||
goto_if_set FLAG_DID_MARC_TRADE, EventScript_1704F0
|
||||
goto_if_set FLAG_DID_MARC_TRADE, Route18_EastEntrance_2F_EventScript_AlreadyTraded
|
||||
msgbox Trade_Text_LookingForMonWannaTradeForMon, MSGBOX_YESNO
|
||||
compare VAR_RESULT, NO
|
||||
goto_if_eq EventScript_1704D8
|
||||
goto_if_eq Route18_EastEntrance_2F_EventScript_DeclineTrade
|
||||
call EventScript_ChooseMonForInGameTrade
|
||||
compare VAR_0x8004, PARTY_SIZE
|
||||
goto_if_ge EventScript_1704D8
|
||||
goto_if_ge Route18_EastEntrance_2F_EventScript_DeclineTrade
|
||||
call EventScript_GetInGameTradeSpecies
|
||||
compare VAR_RESULT, VAR_0x8009
|
||||
goto_if_ne EventScript_1704E2
|
||||
goto_if_ne Route18_EastEntrance_2F_EventScript_NotRequestedMon
|
||||
call EventScript_DoInGameTrade
|
||||
msgbox Trade_Text_HeyThanks
|
||||
setflag FLAG_DID_MARC_TRADE
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_1704D8:: @ 81704D8
|
||||
Route18_EastEntrance_2F_EventScript_DeclineTrade:: @ 81704D8
|
||||
msgbox Trade_Text_AwwOhWell
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_1704E2:: @ 81704E2
|
||||
Route18_EastEntrance_2F_EventScript_NotRequestedMon:: @ 81704E2
|
||||
getspeciesname 0, VAR_0x8009
|
||||
msgbox Trade_Text_WhatThatsNoMon
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_1704F0:: @ 81704F0
|
||||
Route18_EastEntrance_2F_EventScript_AlreadyTraded:: @ 81704F0
|
||||
msgbox Trade_Text_IsntMyOldMonGreat
|
||||
release
|
||||
end
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
gUnknown_819FD6B:: @ 819FD6B
|
||||
Route18_EastEntrance_2F_Text_PalletTownInWest:: @ 819FD6B
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "PALLET TOWN is in the west.$"
|
||||
|
||||
gUnknown_819FDB3:: @ 819FDB3
|
||||
Route18_EastEntrance_2F_Text_PeopleSwimming:: @ 819FDB3
|
||||
.string "Let's see what the binoculars have\n"
|
||||
.string "to show…\p"
|
||||
.string "There are people swimming.$"
|
||||
|
||||
+13
-13
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 3,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route19_EventScript_1AB44F",
|
||||
"script": "Route19_EventScript_Reece",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route19_EventScript_1AB411",
|
||||
"script": "Route19_EventScript_Richard",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route19_EventScript_1AB547",
|
||||
"script": "Route19_EventScript_Tony",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 3,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB48D",
|
||||
"script": "Route19_EventScript_Matthew",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 2,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB4CB",
|
||||
"script": "Route19_EventScript_Douglas",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 6,
|
||||
"script": "Route19_EventScript_1AB509",
|
||||
"script": "Route19_EventScript_David",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB585",
|
||||
"script": "Route19_EventScript_Axle",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -127,7 +127,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB601",
|
||||
"script": "Route19_EventScript_Alice",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB63F",
|
||||
"script": "Route19_EventScript_Connie",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -153,7 +153,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB5C3",
|
||||
"script": "Route19_EventScript_Anya",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -166,7 +166,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB67D",
|
||||
"script": "Route19_EventScript_Lia",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -179,7 +179,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route19_EventScript_1AB6C3",
|
||||
"script": "Route19_EventScript_Luc",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -191,7 +191,7 @@
|
||||
"x": 13,
|
||||
"y": 12,
|
||||
"elevation": 0,
|
||||
"script": "Route19_EventScript_168232"
|
||||
"script": "Route19_EventScript_RouteSign"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Route19_MapScripts:: @ 8168231
|
||||
.byte 0
|
||||
|
||||
Route19_EventScript_168232:: @ 8168232
|
||||
msgbox gUnknown_8187C06, MSGBOX_SIGN
|
||||
Route19_EventScript_RouteSign:: @ 8168232
|
||||
msgbox Route19_Text_RouteSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
+39
-39
@@ -1,154 +1,154 @@
|
||||
Text_1877A3:: @ 81877A3
|
||||
Route19_Text_RichardIntro:: @ 81877A3
|
||||
.string "I have to exercise and warm up\n"
|
||||
.string "before going out for a swim.$"
|
||||
|
||||
Text_1877DF:: @ 81877DF
|
||||
Route19_Text_RichardDefeat:: @ 81877DF
|
||||
.string "All warmed up!$"
|
||||
|
||||
Text_1877EE:: @ 81877EE
|
||||
Route19_Text_RichardPostBattle:: @ 81877EE
|
||||
.string "Thanks, kid!\n"
|
||||
.string "I'm ready for a swim.$"
|
||||
|
||||
Text_187811:: @ 8187811
|
||||
Route19_Text_ReeceIntro:: @ 8187811
|
||||
.string "Wait! Slow down!\n"
|
||||
.string "You'll have a heart attack!$"
|
||||
|
||||
Text_18783E:: @ 818783E
|
||||
Route19_Text_ReeceDefeat:: @ 818783E
|
||||
.string "Ooh!\n"
|
||||
.string "That's chilly!$"
|
||||
|
||||
Text_187852:: @ 8187852
|
||||
Route19_Text_ReecePostBattle:: @ 8187852
|
||||
.string "Watch out for TENTACOOL.\n"
|
||||
.string "They sting so painfully.$"
|
||||
|
||||
Text_187884:: @ 8187884
|
||||
Route19_Text_MatthewIntro:: @ 8187884
|
||||
.string "I love swimming!\n"
|
||||
.string "What about you?$"
|
||||
|
||||
Text_1878A5:: @ 81878A5
|
||||
Route19_Text_MatthewDefeat:: @ 81878A5
|
||||
.string "Belly flop!$"
|
||||
|
||||
Text_1878B1:: @ 81878B1
|
||||
Route19_Text_MatthewPostBattle:: @ 81878B1
|
||||
.string "I can beat even marine POKéMON\n"
|
||||
.string "at swimming.$"
|
||||
|
||||
Text_1878DD:: @ 81878DD
|
||||
Route19_Text_DouglasIntro:: @ 81878DD
|
||||
.string "What's beyond the horizon?$"
|
||||
|
||||
Text_1878F8:: @ 81878F8
|
||||
Route19_Text_DouglasDefeat:: @ 81878F8
|
||||
.string "Glub!$"
|
||||
|
||||
Text_1878FE:: @ 81878FE
|
||||
Route19_Text_DouglasPostBattle:: @ 81878FE
|
||||
.string "I see a couple of islands over\n"
|
||||
.string "yonder!$"
|
||||
|
||||
Text_187925:: @ 8187925
|
||||
Route19_Text_DavidIntro:: @ 8187925
|
||||
.string "I tried diving for POKéMON, but it\n"
|
||||
.string "was a no-go.$"
|
||||
|
||||
Text_187955:: @ 8187955
|
||||
Route19_Text_DavidDefeat:: @ 8187955
|
||||
.string "Help!$"
|
||||
|
||||
Text_18795B:: @ 818795B
|
||||
Route19_Text_DavidPostBattle:: @ 818795B
|
||||
.string "I guess you have to fish for sea\n"
|
||||
.string "POKéMON.$"
|
||||
|
||||
Text_187985:: @ 8187985
|
||||
Route19_Text_TonyIntro:: @ 8187985
|
||||
.string "I look at the sea to forget all\n"
|
||||
.string "the bad things that happened.$"
|
||||
|
||||
Text_1879C3:: @ 81879C3
|
||||
Route19_Text_TonyDefeat:: @ 81879C3
|
||||
.string "Ooh!\n"
|
||||
.string "Traumatic!$"
|
||||
|
||||
Text_1879D3:: @ 81879D3
|
||||
Route19_Text_TonyPostBattle:: @ 81879D3
|
||||
.string "I'm looking at the sea to forget\n"
|
||||
.string "the bad thing that happened!$"
|
||||
|
||||
Text_187A11:: @ 8187A11
|
||||
Route19_Text_AnyaIntro:: @ 8187A11
|
||||
.string "Oh, I just love your ride!\n"
|
||||
.string "Can I have it if I win?$"
|
||||
|
||||
Text_187A44:: @ 8187A44
|
||||
Route19_Text_AnyaDefeat:: @ 8187A44
|
||||
.string "Oh! I lost!$"
|
||||
|
||||
Text_187A50:: @ 8187A50
|
||||
Route19_Text_AnyaPostBattle:: @ 8187A50
|
||||
.string "It's still a long way to go to\n"
|
||||
.string "SEAFOAM ISLANDS…\p"
|
||||
.string "I want to go back to FUCHSIA…$"
|
||||
|
||||
Text_187A9E:: @ 8187A9E
|
||||
Route19_Text_AliceIntro:: @ 8187A9E
|
||||
.string "Swimming's great!\n"
|
||||
.string "Sunburns aren't!$"
|
||||
|
||||
Text_187AC1:: @ 8187AC1
|
||||
Route19_Text_AliceDefeat:: @ 8187AC1
|
||||
.string "Shocker!$"
|
||||
|
||||
Text_187ACA:: @ 8187ACA
|
||||
Route19_Text_AlicePostBattle:: @ 8187ACA
|
||||
.string "My boyfriend wanted to swim to\n"
|
||||
.string "SEAFOAM ISLANDS.$"
|
||||
|
||||
Text_187AFA:: @ 8187AFA
|
||||
Route19_Text_AxleIntro:: @ 8187AFA
|
||||
.string "Ahoy, there!\n"
|
||||
.string "These waters are treacherous!$"
|
||||
|
||||
Text_187B25:: @ 8187B25
|
||||
Route19_Text_AxleDefeat:: @ 8187B25
|
||||
.string "Ooh!\n"
|
||||
.string "Dangerous!$"
|
||||
|
||||
Text_187B35:: @ 8187B35
|
||||
Route19_Text_AxlePostBattle:: @ 8187B35
|
||||
.string "M-my legs! They cramped up!\n"
|
||||
.string "Glub, glub…$"
|
||||
|
||||
Text_187B5D:: @ 8187B5D
|
||||
Route19_Text_ConnieIntro:: @ 8187B5D
|
||||
.string "I swam here with my friends…\n"
|
||||
.string "I'm tired…$"
|
||||
|
||||
Text_187B85:: @ 8187B85
|
||||
Route19_Text_ConnieDefeat:: @ 8187B85
|
||||
.string "I'm exhausted…$"
|
||||
|
||||
Text_187B94:: @ 8187B94
|
||||
Route19_Text_ConniePostBattle:: @ 8187B94
|
||||
.string "If I were to ride a POKéMON on\n"
|
||||
.string "the sea, I'd like a LAPRAS.\p"
|
||||
.string "LAPRAS is so big, I bet it\n"
|
||||
.string "would keep me dry on water.$"
|
||||
|
||||
gUnknown_8187C06:: @ 8187C06
|
||||
Route19_Text_RouteSign:: @ 8187C06
|
||||
.string "SEA ROUTE 19\n"
|
||||
.string "FUCHSIA CITY - SEAFOAM ISLANDS$"
|
||||
|
||||
Text_187C32:: @ 8187C32
|
||||
Route19_Text_LiaIntro:: @ 8187C32
|
||||
.string "LIA: I'm looking after my brother.\n"
|
||||
.string "He just became a TRAINER.$"
|
||||
|
||||
Text_187C6F:: @ 8187C6F
|
||||
Route19_Text_LiaDefeat:: @ 8187C6F
|
||||
.string "LIA: That's no way to treat my\n"
|
||||
.string "little brother!$"
|
||||
|
||||
Text_187C9E:: @ 8187C9E
|
||||
Route19_Text_LiaPostBattle:: @ 8187C9E
|
||||
.string "LIA: Do you have a younger\n"
|
||||
.string "brother?\p"
|
||||
.string "I hope you're teaching him all\n"
|
||||
.string "sorts of things.$"
|
||||
|
||||
Text_187CF2:: @ 8187CF2
|
||||
Route19_Text_LiaNotEnoughMons:: @ 8187CF2
|
||||
.string "LIA: I want to battle together\n"
|
||||
.string "with my little brother.\p"
|
||||
.string "Don't you have two POKéMON?$"
|
||||
|
||||
Text_187D45:: @ 8187D45
|
||||
Route19_Text_LucIntro:: @ 8187D45
|
||||
.string "LUC: My big sis taught me how\n"
|
||||
.string "to swim and train POKéMON.$"
|
||||
|
||||
Text_187D7E:: @ 8187D7E
|
||||
Route19_Text_LucDefeat:: @ 8187D7E
|
||||
.string "LUC: Oh, wow!\n"
|
||||
.string "Someone tougher than my big sis!$"
|
||||
|
||||
Text_187DAD:: @ 8187DAD
|
||||
Route19_Text_LucPostBattle:: @ 8187DAD
|
||||
.string "LUC: My big sis is strong and nice.\n"
|
||||
.string "I think she's awesome!$"
|
||||
|
||||
Text_187DE8:: @ 8187DE8
|
||||
Route19_Text_LucNotEnoughMons:: @ 8187DE8
|
||||
.string "LUC: I don't want to if I can't\n"
|
||||
.string "battle you with my big sis.\p"
|
||||
.string "Don't you have two POKéMON?$"
|
||||
|
||||
+13
-13
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route20_EventScript_1AB83F",
|
||||
"script": "Route20_EventScript_Melissa",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB8F9",
|
||||
"script": "Route20_EventScript_Missy",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 4,
|
||||
"script": "Route20_EventScript_1AB801",
|
||||
"script": "Route20_EventScript_Nora",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB8BB",
|
||||
"script": "Route20_EventScript_Roger",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 4,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB747",
|
||||
"script": "Route20_EventScript_Dean",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route20_EventScript_1AB937",
|
||||
"script": "Route20_EventScript_Irene",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
"movement_range_y": 3,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB709",
|
||||
"script": "Route20_EventScript_Barry",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -127,7 +127,7 @@
|
||||
"movement_range_y": 3,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB785",
|
||||
"script": "Route20_EventScript_Darrin",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 5,
|
||||
"script": "Route20_EventScript_1AB87D",
|
||||
"script": "Route20_EventScript_Shirley",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -153,7 +153,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route20_EventScript_1AB7C3",
|
||||
"script": "Route20_EventScript_Tiffany",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -166,7 +166,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route20_EventScript_1ACE36",
|
||||
"script": "Route20_EventScript_Camper",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -193,14 +193,14 @@
|
||||
"x": 68,
|
||||
"y": 14,
|
||||
"elevation": 0,
|
||||
"script": "Route20_EventScript_168280"
|
||||
"script": "Route20_EventScript_SeafoamIslandsSign"
|
||||
},
|
||||
{
|
||||
"type": "bg_event_type_0",
|
||||
"x": 64,
|
||||
"y": 8,
|
||||
"elevation": 0,
|
||||
"script": "Route20_EventScript_168280"
|
||||
"script": "Route20_EventScript_SeafoamIslandsSign"
|
||||
},
|
||||
{
|
||||
"type": "hidden_item",
|
||||
|
||||
@@ -3,11 +3,11 @@ Route20_MapScripts:: @ 816823B
|
||||
.byte 0
|
||||
|
||||
Route20_OnTransition:: @ 8168241
|
||||
call_if_unset FLAG_STOPPED_SEAFOAM_B3F_CURRENT, EventScript_168254
|
||||
call_if_unset FLAG_STOPPED_SEAFOAM_B4F_CURRENT, EventScript_16826D
|
||||
call_if_unset FLAG_STOPPED_SEAFOAM_B3F_CURRENT, Route20_EventScript_ResetSeafoamBouldersForB3F
|
||||
call_if_unset FLAG_STOPPED_SEAFOAM_B4F_CURRENT, Route20_EventScript_ResetSeafoamBouldersForB4F
|
||||
end
|
||||
|
||||
EventScript_168254:: @ 8168254
|
||||
Route20_EventScript_ResetSeafoamBouldersForB3F:: @ 8168254
|
||||
clearflag FLAG_HIDE_SEAFOAM_1F_BOULDER_1
|
||||
clearflag FLAG_HIDE_SEAFOAM_1F_BOULDER_2
|
||||
setflag FLAG_HIDE_SEAFOAM_B1F_BOULDER_1
|
||||
@@ -18,7 +18,7 @@ EventScript_168254:: @ 8168254
|
||||
setflag FLAG_HIDE_SEAFOAM_B3F_BOULDER_2
|
||||
return
|
||||
|
||||
EventScript_16826D:: @ 816826D
|
||||
Route20_EventScript_ResetSeafoamBouldersForB4F:: @ 816826D
|
||||
clearflag FLAG_HIDE_SEAFOAM_B3F_BOULDER_3
|
||||
clearflag FLAG_HIDE_SEAFOAM_B3F_BOULDER_4
|
||||
clearflag FLAG_HIDE_SEAFOAM_B3F_BOULDER_5
|
||||
@@ -27,6 +27,6 @@ EventScript_16826D:: @ 816826D
|
||||
setflag FLAG_HIDE_SEAFOAM_B4F_BOULDER_2
|
||||
return
|
||||
|
||||
Route20_EventScript_168280:: @ 8168280
|
||||
msgbox gUnknown_81882D1, MSGBOX_SIGN
|
||||
Route20_EventScript_SeafoamIslandsSign:: @ 8168280
|
||||
msgbox Route20_Text_SeafoamIslands, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
+32
-32
@@ -1,119 +1,119 @@
|
||||
Text_187E40:: @ 8187E40
|
||||
Route20_Text_BarryIntro:: @ 8187E40
|
||||
.string "The water is shallow here.\n"
|
||||
.string "There are many people swimming.$"
|
||||
|
||||
Text_187E7B:: @ 8187E7B
|
||||
Route20_Text_BarryDefeat:: @ 8187E7B
|
||||
.string "Splash!$"
|
||||
|
||||
Text_187E83:: @ 8187E83
|
||||
Route20_Text_BarryPostBattle:: @ 8187E83
|
||||
.string "I wish I could ride my POKéMON.\n"
|
||||
.string "I bet you're not tired.$"
|
||||
|
||||
Text_187EBB:: @ 8187EBB
|
||||
Route20_Text_ShirleyIntro:: @ 8187EBB
|
||||
.string "SEAFOAM is a quiet getaway.\n"
|
||||
.string "I'm vacationing here.$"
|
||||
|
||||
Text_187EED:: @ 8187EED
|
||||
Route20_Text_ShirleyDefeat:: @ 8187EED
|
||||
.string "Quit it!$"
|
||||
|
||||
Text_187EF6:: @ 8187EF6
|
||||
Route20_Text_ShirleyPostBattle:: @ 8187EF6
|
||||
.string "There's a huge cavern underneath\n"
|
||||
.string "this island.$"
|
||||
|
||||
Text_187F24:: @ 8187F24
|
||||
Route20_Text_TiffanyIntro:: @ 8187F24
|
||||
.string "I love floating with the fishes\n"
|
||||
.string "here among the waves.$"
|
||||
|
||||
Text_187F5A:: @ 8187F5A
|
||||
Route20_Text_TiffanyDefeat:: @ 8187F5A
|
||||
.string "Yowch!$"
|
||||
|
||||
Text_187F61:: @ 8187F61
|
||||
Route20_Text_TiffanyPostBattle:: @ 8187F61
|
||||
.string "Want to float with me?$"
|
||||
|
||||
Text_187F78:: @ 8187F78
|
||||
Route20_Text_IreneIntro:: @ 8187F78
|
||||
.string "Are you on vacation, too?$"
|
||||
|
||||
Text_187F92:: @ 8187F92
|
||||
Route20_Text_IreneDefeat:: @ 8187F92
|
||||
.string "No mercy at all!$"
|
||||
|
||||
Text_187FA3:: @ 8187FA3
|
||||
Route20_Text_IrenePostBattle:: @ 8187FA3
|
||||
.string "SEAFOAM used to be a single island\n"
|
||||
.string "in the distant past.$"
|
||||
|
||||
Text_187FDB:: @ 8187FDB
|
||||
Route20_Text_DeanIntro:: @ 8187FDB
|
||||
.string "Check out my buff physique!$"
|
||||
|
||||
Text_187FF7:: @ 8187FF7
|
||||
Route20_Text_DeanDefeat:: @ 8187FF7
|
||||
.string "Wimpy!$"
|
||||
|
||||
Text_187FFE:: @ 8187FFE
|
||||
Route20_Text_DeanPostBattle:: @ 8187FFE
|
||||
.string "I should've been buffing up my\n"
|
||||
.string "POKéMON, not me!$"
|
||||
|
||||
Text_18802E:: @ 818802E
|
||||
Route20_Text_DarrinIntro:: @ 818802E
|
||||
.string "Why are you riding a POKéMON?\n"
|
||||
.string "Can't you swim?$"
|
||||
|
||||
Text_18805C:: @ 818805C
|
||||
Route20_Text_DarrinDefeat:: @ 818805C
|
||||
.string "Ouch!\n"
|
||||
.string "Torpedoed!$"
|
||||
|
||||
Text_18806D:: @ 818806D
|
||||
Route20_Text_DarrinPostBattle:: @ 818806D
|
||||
.string "Riding a POKéMON sure looks fun!$"
|
||||
|
||||
Text_18808E:: @ 818808E
|
||||
Route20_Text_RogerIntro:: @ 818808E
|
||||
.string "I rode my bird POKéMON here.$"
|
||||
|
||||
Text_1880AB:: @ 81880AB
|
||||
Route20_Text_RogerDefeat:: @ 81880AB
|
||||
.string "Oh, no!\n"
|
||||
.string "Now what am I to do?$"
|
||||
|
||||
Text_1880C8:: @ 81880C8
|
||||
Route20_Text_RogerPostBattle:: @ 81880C8
|
||||
.string "My birds are exhausted.\n"
|
||||
.string "They can't FLY me back!$"
|
||||
|
||||
Text_1880F8:: @ 81880F8
|
||||
Route20_Text_NoraIntro:: @ 81880F8
|
||||
.string "My boyfriend gave me big pearls.$"
|
||||
|
||||
Text_188119:: @ 8188119
|
||||
Route20_Text_NoraDefeat:: @ 8188119
|
||||
.string "Oh, no!\n"
|
||||
.string "My pearls were in them!$"
|
||||
|
||||
Text_188139:: @ 8188139
|
||||
Route20_Text_NoraPostBattle:: @ 8188139
|
||||
.string "Will my pearls grow bigger inside\n"
|
||||
.string "CLOYSTER?$"
|
||||
|
||||
Text_188165:: @ 8188165
|
||||
Route20_Text_MissyIntro:: @ 8188165
|
||||
.string "I swam here from CINNABAR ISLAND.\n"
|
||||
.string "It wasn't easy, I tell you.$"
|
||||
|
||||
Text_1881A3:: @ 81881A3
|
||||
Route20_Text_MissyDefeat:: @ 81881A3
|
||||
.string "I'm so disappointed!$"
|
||||
|
||||
Text_1881B8:: @ 81881B8
|
||||
Route20_Text_MissyPostBattle:: @ 81881B8
|
||||
.string "POKéMON have taken over an\n"
|
||||
.string "abandoned mansion on CINNABAR.\p"
|
||||
.string "They call it the POKéMON MANSION\n"
|
||||
.string "now.$"
|
||||
|
||||
Text_188218:: @ 8188218
|
||||
Route20_Text_MelissaIntro:: @ 8188218
|
||||
.string "CINNABAR, in the west, has a LAB\n"
|
||||
.string "for POKéMON.\p"
|
||||
.string "My daddy works there.$"
|
||||
|
||||
Text_18825C:: @ 818825C
|
||||
Route20_Text_MelissaDefeat:: @ 818825C
|
||||
.string "Wait!\n"
|
||||
.string "You're supposed to wait!$"
|
||||
|
||||
Text_18827B:: @ 818827B
|
||||
Route20_Text_MelissaPostBattle:: @ 818827B
|
||||
.string "CINNABAR is a volcanic island.\p"
|
||||
.string "I heard it rose out of the sea\n"
|
||||
.string "when a volcano erupted.$"
|
||||
|
||||
gUnknown_81882D1:: @ 81882D1
|
||||
Route20_Text_SeafoamIslands:: @ 81882D1
|
||||
.string "SEAFOAM ISLANDS$"
|
||||
|
||||
Text_1882E1:: @ 81882E1
|
||||
Route20_Text_MistyTrainsHere:: @ 81882E1
|
||||
.string "Strong TRAINERS and WATER POKéMON\n"
|
||||
.string "are common sights in these parts.\p"
|
||||
.string "They say that MISTY of the\n"
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route21_North_EventScript_1AB975",
|
||||
"script": "Route21_North_EventScript_Ronald",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route21_North_EventScript_1AB9F1",
|
||||
"script": "Route21_North_EventScript_Wade",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 2,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route21_North_EventScript_1ABA6D",
|
||||
"script": "Route21_North_EventScript_Spencer",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route21_North_EventScript_1ABB65",
|
||||
"script": "Route21_North_EventScript_Lil",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 1,
|
||||
"script": "Route21_North_EventScript_1ABBAB",
|
||||
"script": "Route21_North_EventScript_Ian",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -1,42 +1,49 @@
|
||||
Text_18835A:: @ 818835A
|
||||
Route21_North_Text_RonaldIntro:: @ 818835A
|
||||
.string "You want to know if the fish are\n"
|
||||
.string "biting?$"
|
||||
|
||||
Text_188383:: @ 8188383
|
||||
Route21_North_Text_RonaldDefeat:: @ 8188383
|
||||
.string "Dang!$"
|
||||
|
||||
Text_188389:: @ 8188389
|
||||
Route21_North_Text_RonaldPostBattle:: @ 8188389
|
||||
.string "I can't catch anything good.\n"
|
||||
.string "Not one good POKéMON to be had!$"
|
||||
|
||||
Text_1883C6:: @ 81883C6
|
||||
Route21_North_Text_WadeIntro:: @ 81883C6
|
||||
.string "I got a big haul!\n"
|
||||
.string "Wanna go for it?$"
|
||||
|
||||
Text_1883E9:: @ 81883E9
|
||||
Route21_North_Text_WadeDefeat:: @ 81883E9
|
||||
.string "Heheh, MAGIKARP just don't make\n"
|
||||
.string "the grade, do they?$"
|
||||
|
||||
Text_18841D:: @ 818841D
|
||||
Route21_North_Text_WadePostBattle:: @ 818841D
|
||||
.string "I seem to only catch MAGIKARP!$"
|
||||
|
||||
Text_18843C:: @ 818843C
|
||||
Route21_North_Text_SpencerIntro:: @ 818843C
|
||||
.string "The sea cleanses my body and soul!$"
|
||||
|
||||
Text_18845F:: @ 818845F
|
||||
Route21_North_Text_SpencerDefeat:: @ 818845F
|
||||
.string "Ayah!$"
|
||||
|
||||
Text_188465:: @ 8188465
|
||||
Route21_North_Text_SpencerPostBattle:: @ 8188465
|
||||
.string "The sea is great and all, but I\n"
|
||||
.string "like the mountains, too.$"
|
||||
|
||||
Text_18849E:: @ 818849E
|
||||
@ Below is the battle text for the Cue Ball that was on Route 21 in Gen 1.
|
||||
@ This trainer wasnt used in Gen 3 so their text goes unused/untranslated
|
||||
@ English translations from RB are listed
|
||||
|
||||
@ "What's wrong with me swimming?"
|
||||
Route21_North_Text_CueBallIntro:: @ 818849E
|
||||
.string "おれだって たまには\n"
|
||||
.string "およぎに くるぜ!$"
|
||||
|
||||
Text_1884B3:: @ 81884B3
|
||||
@ "Cheap shot!"
|
||||
Route21_North_Text_CueBallDefeat:: @ 81884B3
|
||||
.string "ぐわわ!$"
|
||||
|
||||
Text_1884B8:: @ 81884B8
|
||||
@ "I look like what? A studded inner tube? Get lost!"
|
||||
Route21_North_Text_CueBallPostBattle:: @ 81884B8
|
||||
.string "うきやすそう だと?\n"
|
||||
.string "うるせー おおきな おせわだッ!$"
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route21_South_EventScript_1AB9B3",
|
||||
"script": "Route21_South_EventScript_Claude",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route21_South_EventScript_1ABA2F",
|
||||
"script": "Route21_South_EventScript_Nolan",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route21_South_EventScript_1ABAAB",
|
||||
"script": "Route21_South_EventScript_Jack",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route21_South_EventScript_1ABAE9",
|
||||
"script": "Route21_South_EventScript_Jerome",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 2,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 4,
|
||||
"script": "Route21_South_EventScript_1ABB27",
|
||||
"script": "Route21_South_EventScript_Roland",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
|
||||
@@ -1,87 +1,87 @@
|
||||
Text_1884D4:: @ 81884D4
|
||||
Route21_South_Text_JackIntro:: @ 81884D4
|
||||
.string "I caught my POKéMON at sea.$"
|
||||
|
||||
Text_1884F0:: @ 81884F0
|
||||
Route21_South_Text_JackDefeat:: @ 81884F0
|
||||
.string "Diver!!\n"
|
||||
.string "Down!!$"
|
||||
|
||||
Text_1884FF:: @ 81884FF
|
||||
Route21_South_Text_JackPostBattle:: @ 81884FF
|
||||
.string "Where'd you catch your POKéMON?$"
|
||||
|
||||
Text_18851F:: @ 818851F
|
||||
Route21_South_Text_JeromeIntro:: @ 818851F
|
||||
.string "Right now, I'm in a triathlon meet.$"
|
||||
|
||||
Text_188543:: @ 8188543
|
||||
Route21_South_Text_JeromeDefeat:: @ 8188543
|
||||
.string "Pant…\n"
|
||||
.string "Pant… Pant…$"
|
||||
|
||||
Text_188555:: @ 8188555
|
||||
Route21_South_Text_JeromePostBattle:: @ 8188555
|
||||
.string "I'm beat! But, I still have the\n"
|
||||
.string "bike race and marathon left!$"
|
||||
|
||||
Text_188592:: @ 8188592
|
||||
Route21_South_Text_RolandIntro:: @ 8188592
|
||||
.string "Ahh!\n"
|
||||
.string "Feel the sun and the wind!$"
|
||||
|
||||
Text_1885B2:: @ 81885B2
|
||||
Route21_South_Text_RolandDefeat:: @ 81885B2
|
||||
.string "Yow!\n"
|
||||
.string "I lost!$"
|
||||
|
||||
Text_1885BF:: @ 81885BF
|
||||
Route21_South_Text_RolandPostBattle:: @ 81885BF
|
||||
.string "I'm sunburnt to a crisp!$"
|
||||
|
||||
Text_1885D8:: @ 81885D8
|
||||
Route21_South_Text_ClaudeIntro:: @ 81885D8
|
||||
.string "Hey, don't scare away the fish!$"
|
||||
|
||||
Text_1885F8:: @ 81885F8
|
||||
Route21_South_Text_ClaudeDefeat:: @ 81885F8
|
||||
.string "Sorry! I'm just so frustrated from\n"
|
||||
.string "not catching anything.$"
|
||||
|
||||
Text_188632:: @ 8188632
|
||||
Route21_South_Text_ClaudePostBattle:: @ 8188632
|
||||
.string "Sheesh, I haven't caught a thing.\n"
|
||||
.string "Could this place actually be a\l"
|
||||
.string "giant pool or something?$"
|
||||
|
||||
Text_18868C:: @ 818868C
|
||||
Route21_South_Text_NolanIntro:: @ 818868C
|
||||
.string "Keep me company till I get a hit.$"
|
||||
|
||||
Text_1886AE:: @ 81886AE
|
||||
Route21_South_Text_NolanDefeat:: @ 81886AE
|
||||
.string "That burned some time.$"
|
||||
|
||||
Text_1886C5:: @ 81886C5
|
||||
Route21_South_Text_NolanPostBattle:: @ 81886C5
|
||||
.string "Oh wait!\n"
|
||||
.string "I got a bite! Yeah!$"
|
||||
|
||||
Text_1886E2:: @ 81886E2
|
||||
Route21_North_Text_LilIntro:: @ 81886E2
|
||||
.string "LIL: Huh? A battle?\n"
|
||||
.string "IAN, can't you do it alone?$"
|
||||
|
||||
Text_188712:: @ 8188712
|
||||
Route21_North_Text_LilDefeat:: @ 8188712
|
||||
.string "LIL: Oh, see?\n"
|
||||
.string "We lost. Happy now?$"
|
||||
|
||||
Text_188734:: @ 8188734
|
||||
Route21_North_Text_LilPostBattle:: @ 8188734
|
||||
.string "LIL: I'm tired.\n"
|
||||
.string "Can't we go home already?$"
|
||||
|
||||
Text_18875E:: @ 818875E
|
||||
Route21_North_Text_LilNotEnoughMons:: @ 818875E
|
||||
.string "LIL: Huh? A battle?\n"
|
||||
.string "I can't be bothered to do it alone.\l"
|
||||
.string "Bring two POKéMON, won't you?$"
|
||||
|
||||
Text_1887B4:: @ 81887B4
|
||||
Route21_North_Text_IanIntro:: @ 81887B4
|
||||
.string "IAN: My sis doesn't get enough\n"
|
||||
.string "exercise, so I made her come.$"
|
||||
|
||||
Text_1887F1:: @ 81887F1
|
||||
Route21_North_Text_IanDefeat:: @ 81887F1
|
||||
.string "IAN: Awww, Sis!\n"
|
||||
.string "Get it together!$"
|
||||
|
||||
Text_188812:: @ 8188812
|
||||
Route21_North_Text_IanPostBattle:: @ 8188812
|
||||
.string "IAN: Come on, Sis!\p"
|
||||
.string "You're not going to lose weight\n"
|
||||
.string "like this!$"
|
||||
|
||||
Text_188850:: @ 8188850
|
||||
Route21_North_Text_IanNotEnoughMons:: @ 8188850
|
||||
.string "IAN: We want a two-on-two battle.\n"
|
||||
.string "So can you bring two POKéMON?$"
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route24_EventScript_168620",
|
||||
"script": "Route24_EventScript_Rocket",
|
||||
"flag": "FLAG_HIDE_NUGGET_BRIDGE_ROCKET"
|
||||
},
|
||||
{
|
||||
@@ -49,7 +49,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route24_EventScript_1A972D",
|
||||
"script": "Route24_EventScript_Ethan",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -62,7 +62,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route24_EventScript_1A9673",
|
||||
"script": "Route24_EventScript_Reli",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -75,7 +75,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route24_EventScript_1A95F7",
|
||||
"script": "Route24_EventScript_Timmy",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -88,7 +88,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route24_EventScript_1A96B1",
|
||||
"script": "Route24_EventScript_Ali",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -101,7 +101,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route24_EventScript_1A9635",
|
||||
"script": "Route24_EventScript_Cale",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -114,7 +114,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 5,
|
||||
"script": "Route24_EventScript_1A96EF",
|
||||
"script": "Route24_EventScript_Shane",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -140,7 +140,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE24",
|
||||
"var_value": 0,
|
||||
"script": "Route24_EventScript_168660"
|
||||
"script": "Route24_EventScript_RocketTriggerLeft"
|
||||
},
|
||||
{
|
||||
"type": "trigger",
|
||||
@@ -149,7 +149,7 @@
|
||||
"elevation": 3,
|
||||
"var": "VAR_MAP_SCENE_ROUTE24",
|
||||
"var_value": 0,
|
||||
"script": "Route24_EventScript_16866C"
|
||||
"script": "Route24_EventScript_RocketTriggerRight"
|
||||
}
|
||||
],
|
||||
"bg_events": [
|
||||
|
||||
@@ -1,103 +1,105 @@
|
||||
.equ LOCALID_ROCKET, 1
|
||||
|
||||
Route24_MapScripts:: @ 816861F
|
||||
.byte 0
|
||||
|
||||
Route24_EventScript_168620:: @ 8168620
|
||||
Route24_EventScript_Rocket:: @ 8168620
|
||||
lock
|
||||
faceplayer
|
||||
compare VAR_MAP_SCENE_ROUTE24, 1
|
||||
goto_if_eq EventScript_168656
|
||||
msgbox gUnknown_8188C3C
|
||||
goto_if_eq Route24_EventScript_RocketPostBattle
|
||||
msgbox Route24_Text_JustEarnedFabulousPrize
|
||||
checkitemspace ITEM_NUGGET, 1
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq EventScript_16864C
|
||||
call EventScript_1686B9
|
||||
goto_if_eq Route24_EventScript_NoRoomForNugget
|
||||
call Route24_EventScript_BattleRocket
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_16864C:: @ 816864C
|
||||
msgbox gUnknown_8188CC2
|
||||
Route24_EventScript_NoRoomForNugget:: @ 816864C
|
||||
msgbox Route24_Text_YouDontHaveAnyRoom
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_168656:: @ 8168656
|
||||
msgbox gUnknown_8188DF1
|
||||
Route24_EventScript_RocketPostBattle:: @ 8168656
|
||||
msgbox Route24_Text_YoudBecomeTopRocketLeader
|
||||
release
|
||||
end
|
||||
|
||||
Route24_EventScript_168660:: @ 8168660
|
||||
Route24_EventScript_RocketTriggerLeft:: @ 8168660
|
||||
lockall
|
||||
setvar VAR_TEMP_1, 0
|
||||
goto EventScript_168678
|
||||
goto Route24_EventScript_RocketTrigger
|
||||
end
|
||||
|
||||
Route24_EventScript_16866C:: @ 816866C
|
||||
Route24_EventScript_RocketTriggerRight:: @ 816866C
|
||||
lockall
|
||||
setvar VAR_TEMP_1, 1
|
||||
goto EventScript_168678
|
||||
goto Route24_EventScript_RocketTrigger
|
||||
end
|
||||
|
||||
EventScript_168678:: @ 8168678
|
||||
Route24_EventScript_RocketTrigger:: @ 8168678
|
||||
textcolor 0
|
||||
compare VAR_TEMP_1, 0
|
||||
call_if_eq EventScript_1686FD
|
||||
call_if_eq Route24_EventScript_RocketApproachPlayer
|
||||
compare VAR_TEMP_1, 1
|
||||
call_if_eq EventScript_168708
|
||||
call_if_eq Route24_EventScript_RocketMotionToPlayer
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_WalkInPlaceFastestRight
|
||||
waitmovement 0
|
||||
msgbox gUnknown_8188C3C
|
||||
msgbox Route24_Text_JustEarnedFabulousPrize
|
||||
checkitemspace ITEM_NUGGET, 1
|
||||
compare VAR_RESULT, 0
|
||||
goto_if_eq EventScript_168713
|
||||
call EventScript_1686B9
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq Route24_EventScript_NoRoomForNuggetTrigger
|
||||
call Route24_EventScript_BattleRocket
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_1686B9:: @ 81686B9
|
||||
giveitem_msg gUnknown_8188C93, ITEM_NUGGET
|
||||
message Text_188CDB
|
||||
Route24_EventScript_BattleRocket:: @ 81686B9
|
||||
giveitem_msg Route24_Text_ReceivedNuggetFromMysteryTrainer, ITEM_NUGGET
|
||||
message Route24_Text_JoinTeamRocket
|
||||
waitmessage
|
||||
playbgm MUS_ROCKET, 0
|
||||
waitbuttonpress
|
||||
setvar VAR_LAST_TALKED, 1
|
||||
trainerbattle_no_intro TRAINER_TEAM_ROCKET_GRUNT_6, Text_188DDC
|
||||
msgbox gUnknown_8188DF1
|
||||
setvar VAR_LAST_TALKED, LOCALID_ROCKET
|
||||
trainerbattle_no_intro TRAINER_TEAM_ROCKET_GRUNT_6, Route24_Text_RocketDefeat
|
||||
msgbox Route24_Text_YoudBecomeTopRocketLeader
|
||||
setvar VAR_MAP_SCENE_ROUTE24, 1
|
||||
return
|
||||
|
||||
EventScript_1686FD:: @ 81686FD
|
||||
applymovement 1, Movement_16873E
|
||||
Route24_EventScript_RocketApproachPlayer:: @ 81686FD
|
||||
applymovement LOCALID_ROCKET, Route24_Movement_RocketApproachPlayer
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_168708:: @ 8168708
|
||||
applymovement 1, Movement_WalkInPlaceFastestLeft
|
||||
Route24_EventScript_RocketMotionToPlayer:: @ 8168708
|
||||
applymovement LOCALID_ROCKET, Movement_WalkInPlaceFastestLeft
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_168713:: @ 8168713
|
||||
msgbox gUnknown_8188CC2
|
||||
Route24_EventScript_NoRoomForNuggetTrigger:: @ 8168713
|
||||
msgbox Route24_Text_YouDontHaveAnyRoom
|
||||
closemessage
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Movement_168743
|
||||
applymovement OBJ_EVENT_ID_PLAYER, Route24_Movement_WalkDown
|
||||
waitmovement 0
|
||||
compare VAR_TEMP_1, 0
|
||||
call_if_eq EventScript_168733
|
||||
call_if_eq Route24_EventScript_RocketWalkBackToPos
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_168733:: @ 8168733
|
||||
applymovement 1, Movement_168740
|
||||
Route24_EventScript_RocketWalkBackToPos:: @ 8168733
|
||||
applymovement LOCALID_ROCKET, Route24_Movement_RocketWalkBackToPos
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
Movement_16873E:: @ 816873E
|
||||
Route24_Movement_RocketApproachPlayer:: @ 816873E
|
||||
walk_left
|
||||
step_end
|
||||
|
||||
Movement_168740:: @ 8168740
|
||||
Route24_Movement_RocketWalkBackToPos:: @ 8168740
|
||||
walk_right
|
||||
walk_in_place_fastest_left
|
||||
step_end
|
||||
|
||||
Movement_168743:: @ 8168743
|
||||
Route24_Movement_WalkDown:: @ 8168743
|
||||
walk_down
|
||||
step_end
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
gUnknown_8188C3C:: @ 8188C3C
|
||||
Route24_Text_JustEarnedFabulousPrize:: @ 8188C3C
|
||||
.string "Congratulations! You beat our\n"
|
||||
.string "five contest TRAINERS!\p"
|
||||
.string "You just earned a fabulous prize!$"
|
||||
|
||||
gUnknown_8188C93:: @ 8188C93
|
||||
Route24_Text_ReceivedNuggetFromMysteryTrainer:: @ 8188C93
|
||||
.string "{PLAYER} received a NUGGET\n"
|
||||
.string "from the mystery TRAINER!$"
|
||||
|
||||
gUnknown_8188CC2:: @ 8188CC2
|
||||
Route24_Text_YouDontHaveAnyRoom:: @ 8188CC2
|
||||
.string "You don't have any room!$"
|
||||
|
||||
Text_188CDB:: @ 8188CDB
|
||||
Route24_Text_JoinTeamRocket:: @ 8188CDB
|
||||
.string "By the way, how would you like to\n"
|
||||
.string "join TEAM ROCKET?\p"
|
||||
.string "We're a group of professional\n"
|
||||
@@ -23,13 +23,78 @@ Text_188CDB:: @ 8188CDB
|
||||
.string "I'll make you an offer you can't\n"
|
||||
.string "refuse!$"
|
||||
|
||||
Text_188DDC:: @ 8188DDC
|
||||
Route24_Text_RocketDefeat:: @ 8188DDC
|
||||
.string "Arrgh!\n"
|
||||
.string "You are good!$"
|
||||
|
||||
gUnknown_8188DF1:: @ 8188DF1
|
||||
Route24_Text_YoudBecomeTopRocketLeader:: @ 8188DF1
|
||||
.string "With your ability, you'd become\n"
|
||||
.string "a top leader in TEAM ROCKET.\p"
|
||||
.string "Come on, think of the opportunity!\n"
|
||||
.string "Don't let this chance go to waste.$"
|
||||
|
||||
Route24_Text_ShaneIntro:: @ 8188E74
|
||||
.string "I saw your feat from the grass!$"
|
||||
|
||||
Route24_Text_ShaneDefeat:: @ 8188E94
|
||||
.string "I thought not!$"
|
||||
|
||||
Route24_Text_ShanePostBattle:: @ 8188EA3
|
||||
.string "I hid because the people on the\n"
|
||||
.string "bridge frightened me.$"
|
||||
|
||||
Route24_Text_EthanIntro:: @ 8188ED9
|
||||
.string "Okay! I'm No. 5!\n"
|
||||
.string "I'll stomp you!$"
|
||||
|
||||
Route24_Text_EthanDefeat:: @ 8188EFA
|
||||
.string "Whoa!\n"
|
||||
.string "Too much!$"
|
||||
|
||||
Route24_Text_EthanPostBattle:: @ 8188F0A
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Route24_Text_ReliIntro:: @ 8188F2C
|
||||
.string "I'm No. 4!\n"
|
||||
.string "Getting tired?$"
|
||||
|
||||
Route24_Text_ReliDefeat:: @ 8188F46
|
||||
.string "I lost, too!$"
|
||||
|
||||
Route24_Text_ReliPostBattle:: @ 8188F53
|
||||
.string "I did my best, so I've no regrets!$"
|
||||
|
||||
Route24_Text_TimmyIntro:: @ 8188F76
|
||||
.string "Here's No. 3!\n"
|
||||
.string "I won't be easy!$"
|
||||
|
||||
Route24_Text_TimmyDefeat:: @ 8188F95
|
||||
.string "Ow!\n"
|
||||
.string "Stomped flat!$"
|
||||
|
||||
Route24_Text_TimmyPostBattle:: @ 8188FA7
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Route24_Text_AliIntro:: @ 8188FC9
|
||||
.string "I'm second!\n"
|
||||
.string "Now it's serious!$"
|
||||
|
||||
Route24_Text_AliDefeat:: @ 8188FE7
|
||||
.string "How could I lose?$"
|
||||
|
||||
Route24_Text_AliPostBattle:: @ 8188FF9
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Route24_Text_CaleIntro:: @ 818901B
|
||||
.string "People call this the NUGGET\n"
|
||||
.string "BRIDGE!\p"
|
||||
.string "Beat us five TRAINERS and win\n"
|
||||
.string "a fabulous prize!\p"
|
||||
.string "Think you got what it takes?$"
|
||||
|
||||
Route24_Text_CaleDefeat:: @ 818908C
|
||||
.string "Whoo!\n"
|
||||
.string "Good stuff!$"
|
||||
|
||||
Route24_Text_CalePostBattle:: @ 818909E
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
+12
-12
@@ -31,7 +31,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 4,
|
||||
"script": "Route25_EventScript_1A98A1",
|
||||
"script": "Route25_EventScript_Franklin",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -44,7 +44,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route25_EventScript_1A976B",
|
||||
"script": "Route25_EventScript_Joey",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -57,7 +57,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route25_EventScript_1A991D",
|
||||
"script": "Route25_EventScript_Wayne",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -70,7 +70,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route25_EventScript_1A97A9",
|
||||
"script": "Route25_EventScript_Dan",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route25_EventScript_1A9825",
|
||||
"script": "Route25_EventScript_Kelsey",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -96,7 +96,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route25_EventScript_1A98DF",
|
||||
"script": "Route25_EventScript_Nob",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -109,7 +109,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route25_EventScript_1A995B",
|
||||
"script": "Route25_EventScript_Flint",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -122,7 +122,7 @@
|
||||
"movement_range_y": 3,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 2,
|
||||
"script": "Route25_EventScript_1A97E7",
|
||||
"script": "Route25_EventScript_Chad",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -135,7 +135,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 1,
|
||||
"trainer_sight_or_berry_tree_id": 3,
|
||||
"script": "Route25_EventScript_1A9863",
|
||||
"script": "Route25_EventScript_Haley",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -174,7 +174,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route25_EventScript_1ACE4F",
|
||||
"script": "Route25_EventScript_Beauty",
|
||||
"flag": "0"
|
||||
},
|
||||
{
|
||||
@@ -187,7 +187,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route25_EventScript_16874F",
|
||||
"script": "Route25_EventScript_Man",
|
||||
"flag": "0"
|
||||
}
|
||||
],
|
||||
@@ -207,7 +207,7 @@
|
||||
"x": 48,
|
||||
"y": 4,
|
||||
"elevation": 0,
|
||||
"script": "Route25_EventScript_168746"
|
||||
"script": "Route25_EventScript_SeaCottageSign"
|
||||
},
|
||||
{
|
||||
"type": "hidden_item",
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
Route25_MapScripts:: @ 8168745
|
||||
.byte 0
|
||||
|
||||
Route25_EventScript_168746:: @ 8168746
|
||||
msgbox gUnknown_818954C, MSGBOX_SIGN
|
||||
Route25_EventScript_SeaCottageSign:: @ 8168746
|
||||
msgbox Route25_Text_SeaCottageSign, MSGBOX_SIGN
|
||||
end
|
||||
|
||||
Route25_EventScript_16874F:: @ 816874F
|
||||
msgbox gUnknown_81895C2, MSGBOX_NPC
|
||||
Route25_EventScript_Man:: @ 816874F
|
||||
msgbox Route25_Text_AreYouHereAlone, MSGBOX_NPC
|
||||
end
|
||||
|
||||
+30
-96
@@ -1,184 +1,118 @@
|
||||
Text_188E74:: @ 8188E74
|
||||
.string "I saw your feat from the grass!$"
|
||||
|
||||
Text_188E94:: @ 8188E94
|
||||
.string "I thought not!$"
|
||||
|
||||
Text_188EA3:: @ 8188EA3
|
||||
.string "I hid because the people on the\n"
|
||||
.string "bridge frightened me.$"
|
||||
|
||||
Text_188ED9:: @ 8188ED9
|
||||
.string "Okay! I'm No. 5!\n"
|
||||
.string "I'll stomp you!$"
|
||||
|
||||
Text_188EFA:: @ 8188EFA
|
||||
.string "Whoa!\n"
|
||||
.string "Too much!$"
|
||||
|
||||
Text_188F0A:: @ 8188F0A
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Text_188F2C:: @ 8188F2C
|
||||
.string "I'm No. 4!\n"
|
||||
.string "Getting tired?$"
|
||||
|
||||
Text_188F46:: @ 8188F46
|
||||
.string "I lost, too!$"
|
||||
|
||||
Text_188F53:: @ 8188F53
|
||||
.string "I did my best, so I've no regrets!$"
|
||||
|
||||
Text_188F76:: @ 8188F76
|
||||
.string "Here's No. 3!\n"
|
||||
.string "I won't be easy!$"
|
||||
|
||||
Text_188F95:: @ 8188F95
|
||||
.string "Ow!\n"
|
||||
.string "Stomped flat!$"
|
||||
|
||||
Text_188FA7:: @ 8188FA7
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Text_188FC9:: @ 8188FC9
|
||||
.string "I'm second!\n"
|
||||
.string "Now it's serious!$"
|
||||
|
||||
Text_188FE7:: @ 8188FE7
|
||||
.string "How could I lose?$"
|
||||
|
||||
Text_188FF9:: @ 8188FF9
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Text_18901B:: @ 818901B
|
||||
.string "People call this the NUGGET\n"
|
||||
.string "BRIDGE!\p"
|
||||
.string "Beat us five TRAINERS and win\n"
|
||||
.string "a fabulous prize!\p"
|
||||
.string "Think you got what it takes?$"
|
||||
|
||||
Text_18908C:: @ 818908C
|
||||
.string "Whoo!\n"
|
||||
.string "Good stuff!$"
|
||||
|
||||
Text_18909E:: @ 818909E
|
||||
.string "I did my best. I have no regrets!$"
|
||||
|
||||
Text_1890C0:: @ 81890C0
|
||||
Route25_Text_JoeyIntro:: @ 81890C0
|
||||
.string "Local TRAINERS come here to\n"
|
||||
.string "practice.$"
|
||||
|
||||
Text_1890E6:: @ 81890E6
|
||||
Route25_Text_JoeyDefeat:: @ 81890E6
|
||||
.string "You're decent.$"
|
||||
|
||||
Text_1890F5:: @ 81890F5
|
||||
Route25_Text_JoeyPostBattle:: @ 81890F5
|
||||
.string "All POKéMON have weaknesses.\n"
|
||||
.string "Even the strongest ones.\p"
|
||||
.string "That's why it's best to raise\n"
|
||||
.string "POKéMON of different types.$"
|
||||
|
||||
Text_189165:: @ 8189165
|
||||
Route25_Text_DanIntro:: @ 8189165
|
||||
.string "Dad took me to a great party on\n"
|
||||
.string "the S.S. ANNE at VERMILION CITY.$"
|
||||
|
||||
Text_1891A6:: @ 81891A6
|
||||
Route25_Text_DanDefeat:: @ 81891A6
|
||||
.string "I'm not mad!$"
|
||||
|
||||
Text_1891B3:: @ 81891B3
|
||||
Route25_Text_DanPostBattle:: @ 81891B3
|
||||
.string "On the S.S. ANNE, I saw TRAINERS\n"
|
||||
.string "from around the world.$"
|
||||
|
||||
Text_1891EB:: @ 81891EB
|
||||
Route25_Text_FlintIntro:: @ 81891EB
|
||||
.string "I'm a cool guy.\n"
|
||||
.string "I've got a girlfriend!$"
|
||||
|
||||
Text_189212:: @ 8189212
|
||||
Route25_Text_FlintDefeat:: @ 8189212
|
||||
.string "Aww, darn…$"
|
||||
|
||||
Text_18921D:: @ 818921D
|
||||
Route25_Text_FlintPostBattle:: @ 818921D
|
||||
.string "Oh, well.\n"
|
||||
.string "My girlfriend will cheer me up.$"
|
||||
|
||||
Text_189247:: @ 8189247
|
||||
Route25_Text_KelseyIntro:: @ 8189247
|
||||
.string "Hi!\n"
|
||||
.string "My boyfriend is cool!$"
|
||||
|
||||
Text_189261:: @ 8189261
|
||||
Route25_Text_KelseyDefeat:: @ 8189261
|
||||
.string "My conditioning isn't the best…$"
|
||||
|
||||
Text_189281:: @ 8189281
|
||||
Route25_Text_KelseyPostBattle:: @ 8189281
|
||||
.string "I wish my boyfriend was as good\n"
|
||||
.string "as you.$"
|
||||
|
||||
Text_1892A9:: @ 81892A9
|
||||
Route25_Text_ChadIntro:: @ 81892A9
|
||||
.string "I had this feeling…\n"
|
||||
.string "I knew I had to battle you!$"
|
||||
|
||||
Text_1892D9:: @ 81892D9
|
||||
Route25_Text_ChadDefeat:: @ 81892D9
|
||||
.string "I knew I'd lose, too!$"
|
||||
|
||||
Text_1892EF:: @ 81892EF
|
||||
Route25_Text_ChadPostBattle:: @ 81892EF
|
||||
.string "If your POKéMON gets confused,\n"
|
||||
.string "switch it out.\p"
|
||||
.string "That's a good tactic.$"
|
||||
|
||||
Text_189333:: @ 8189333
|
||||
Route25_Text_HaleyIntro:: @ 8189333
|
||||
.string "My friend has many cute POKéMON.\n"
|
||||
.string "I'm so jealous!$"
|
||||
|
||||
Text_189364:: @ 8189364
|
||||
Route25_Text_HaleyDefeat:: @ 8189364
|
||||
.string "I'm not so jealous!$"
|
||||
|
||||
Text_189378:: @ 8189378
|
||||
Route25_Text_HaleyPostBattle:: @ 8189378
|
||||
.string "You came from MT. MOON?\n"
|
||||
.string "May I have a CLEFAIRY?$"
|
||||
|
||||
Text_1893A7:: @ 81893A7
|
||||
Route25_Text_FranklinIntro:: @ 81893A7
|
||||
.string "I just got down from MT. MOON,\n"
|
||||
.string "but I've still got gas in the tank!$"
|
||||
|
||||
Text_1893EA:: @ 81893EA
|
||||
Route25_Text_FranklinDefeat:: @ 81893EA
|
||||
.string "You worked hard!$"
|
||||
|
||||
Text_1893FB:: @ 81893FB
|
||||
Route25_Text_FranklinPostBattle:: @ 81893FB
|
||||
.string "Drat!\n"
|
||||
.string "A ZUBAT bit me back in that cave.$"
|
||||
|
||||
Text_189423:: @ 8189423
|
||||
Route25_Text_NobIntro:: @ 8189423
|
||||
.string "I'm off to see a POKéMANIAC's\n"
|
||||
.string "collection at the cape.$"
|
||||
|
||||
Text_189459:: @ 8189459
|
||||
Route25_Text_NobDefeat:: @ 8189459
|
||||
.string "You done got me, and real good,\n"
|
||||
.string "too!$"
|
||||
|
||||
Text_18947E:: @ 818947E
|
||||
Route25_Text_NobPostBattle:: @ 818947E
|
||||
.string "The POKéMANIAC sure lives up to\n"
|
||||
.string "his name.\p"
|
||||
.string "His collection includes many rare\n"
|
||||
.string "species of POKéMON.$"
|
||||
|
||||
Text_1894DE:: @ 81894DE
|
||||
Route25_Text_WayneIntro:: @ 81894DE
|
||||
.string "You're going to see BILL?\n"
|
||||
.string "First, we battle!$"
|
||||
|
||||
Text_18950A:: @ 818950A
|
||||
Route25_Text_WayneDefeat:: @ 818950A
|
||||
.string "You're something.$"
|
||||
|
||||
Text_18951C:: @ 818951C
|
||||
Route25_Text_WaynePostBattle:: @ 818951C
|
||||
.string "The trail below is a shortcut to\n"
|
||||
.string "CERULEAN CITY.$"
|
||||
|
||||
gUnknown_818954C:: @ 818954C
|
||||
Route25_Text_SeaCottageSign:: @ 818954C
|
||||
.string "SEA COTTAGE\n"
|
||||
.string "BILL lives here!$"
|
||||
|
||||
Text_189569:: @ 8189569
|
||||
Route25_Text_MistyHighHopesAboutThisPlace:: @ 8189569
|
||||
.string "This cape is a famous date spot.\p"
|
||||
.string "MISTY, the GYM LEADER, has high\n"
|
||||
.string "hopes about this place.$"
|
||||
|
||||
gUnknown_81895C2:: @ 81895C2
|
||||
Route25_Text_AreYouHereAlone:: @ 81895C2
|
||||
.string "Hello, are you here alone?\p"
|
||||
.string "If you're out at CERULEAN's cape…\n"
|
||||
.string "Well, it should be as a couple.$"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route25_SeaCottage_EventScript_17054B",
|
||||
"script": "Route25_SeaCottage_EventScript_Bill",
|
||||
"flag": "FLAG_HIDE_BILL_HUMAN_SEA_COTTAGE"
|
||||
},
|
||||
{
|
||||
@@ -38,7 +38,7 @@
|
||||
"movement_range_y": 1,
|
||||
"trainer_type": 0,
|
||||
"trainer_sight_or_berry_tree_id": 0,
|
||||
"script": "Route25_SeaCottage_EventScript_17054B",
|
||||
"script": "Route25_SeaCottage_EventScript_Bill",
|
||||
"flag": "FLAG_HIDE_BILL_CLEFAIRY"
|
||||
}
|
||||
],
|
||||
@@ -72,7 +72,7 @@
|
||||
"x": 4,
|
||||
"y": 5,
|
||||
"elevation": 0,
|
||||
"script": "Route25_SeaCottage_EventScript_1706DD"
|
||||
"script": "Route25_SeaCottage_EventScript_Computer"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,143 +1,150 @@
|
||||
.equ LOCALID_BILL_HUMAN, 1
|
||||
.equ LOCALID_BILL_CLEFAIRY, 2
|
||||
|
||||
.equ BILL_IN_TELEPORTER, FLAG_TEMP_2
|
||||
.equ RETURN_AFTER_SS_TICKET, FLAG_TEMP_3
|
||||
|
||||
Route25_SeaCottage_MapScripts:: @ 8170523
|
||||
map_script MAP_SCRIPT_ON_TRANSITION, Route25_SeaCottage_OnTransition
|
||||
.byte 0
|
||||
|
||||
Route25_SeaCottage_OnTransition:: @ 8170529
|
||||
call_if_unset FLAG_HELPED_BILL_IN_SEA_COTTAGE, EventScript_17053C
|
||||
call_if_set FLAG_GOT_SS_TICKET, EventScript_170547
|
||||
call_if_unset FLAG_HELPED_BILL_IN_SEA_COTTAGE, Route25_SeaCottage_EventScript_HideClefairyBill
|
||||
call_if_set FLAG_GOT_SS_TICKET, Route25_SeaCottage_EventScript_SetReturnedAfterSSTicket
|
||||
end
|
||||
|
||||
EventScript_17053C:: @ 817053C
|
||||
Route25_SeaCottage_EventScript_HideClefairyBill:: @ 817053C
|
||||
clearflag FLAG_HIDE_BILL_CLEFAIRY
|
||||
setobjectxyperm 1, 3, 3
|
||||
setobjectxyperm LOCALID_BILL_HUMAN, 3, 3
|
||||
return
|
||||
|
||||
EventScript_170547:: @ 8170547
|
||||
setflag FLAG_TEMP_3
|
||||
Route25_SeaCottage_EventScript_SetReturnedAfterSSTicket:: @ 8170547
|
||||
setflag RETURN_AFTER_SS_TICKET
|
||||
return
|
||||
|
||||
Route25_SeaCottage_EventScript_17054B:: @ 817054B
|
||||
Route25_SeaCottage_EventScript_Bill:: @ 817054B
|
||||
lock
|
||||
faceplayer
|
||||
goto_if_set FLAG_TEMP_3, EventScript_1706C8
|
||||
goto_if_set FLAG_GOT_SS_TICKET, EventScript_170640
|
||||
goto_if_set FLAG_HELPED_BILL_IN_SEA_COTTAGE, EventScript_17064A
|
||||
goto_if_set RETURN_AFTER_SS_TICKET, Route25_SeaCottage_EventScript_BillGoLookAtPC
|
||||
goto_if_set FLAG_GOT_SS_TICKET, Route25_SeaCottage_EventScript_BillGoToSSAnne
|
||||
goto_if_set FLAG_HELPED_BILL_IN_SEA_COTTAGE, Route25_SeaCottage_EventScript_BillGiveSSTicket
|
||||
checkplayergender
|
||||
compare VAR_RESULT, MALE
|
||||
goto_if_eq EventScript_170580
|
||||
goto_if_eq Route25_SeaCottage_EventScript_BillAskForHelpMale
|
||||
compare VAR_RESULT, FEMALE
|
||||
goto_if_eq EventScript_17058E
|
||||
goto_if_eq Route25_SeaCottage_EventScript_BillAskForHelpFemale
|
||||
end
|
||||
|
||||
EventScript_170580:: @ 8170580
|
||||
msgbox gUnknown_819FDFA, MSGBOX_YESNO
|
||||
goto EventScript_17059C
|
||||
Route25_SeaCottage_EventScript_BillAskForHelpMale:: @ 8170580
|
||||
msgbox Route25_SeaCottage_Text_ImBillHelpMeOutPal, MSGBOX_YESNO
|
||||
goto Route25_SeaCottage_EventScript_BillAskForHelp
|
||||
end
|
||||
|
||||
EventScript_17058E:: @ 817058E
|
||||
msgbox gUnknown_819FEE6, MSGBOX_YESNO
|
||||
goto EventScript_17059C
|
||||
Route25_SeaCottage_EventScript_BillAskForHelpFemale:: @ 817058E
|
||||
msgbox Route25_SeaCottage_Text_ImBillHelpMeOutLady, MSGBOX_YESNO
|
||||
goto Route25_SeaCottage_EventScript_BillAskForHelp
|
||||
end
|
||||
|
||||
EventScript_17059C:: @ 817059C
|
||||
Route25_SeaCottage_EventScript_BillAskForHelp:: @ 817059C
|
||||
compare VAR_RESULT, NO
|
||||
call_if_eq EventScript_170600
|
||||
msgbox gUnknown_819FFD3
|
||||
call_if_eq Route25_SeaCottage_EventScript_DeclineHelpBill
|
||||
msgbox Route25_SeaCottage_Text_RunCellSeparationOnPC
|
||||
closemessage
|
||||
delay 10
|
||||
compare VAR_FACING, DIR_SOUTH
|
||||
call_if_eq EventScript_17062A
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillWalkToTeleporterSouth
|
||||
compare VAR_FACING, DIR_NORTH
|
||||
call_if_eq EventScript_170635
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillWalkToTeleporter
|
||||
compare VAR_FACING, DIR_WEST
|
||||
call_if_eq EventScript_170635
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillWalkToTeleporter
|
||||
compare VAR_FACING, DIR_EAST
|
||||
call_if_eq EventScript_170635
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillWalkToTeleporter
|
||||
opendoor 10, 3
|
||||
waitdooranim
|
||||
applymovement 2, Movement_1706DB
|
||||
applymovement LOCALID_BILL_CLEFAIRY, Route25_SeaCottage_Movement_BillEnterTeleporter
|
||||
waitmovement 0
|
||||
removeobject 2
|
||||
removeobject LOCALID_BILL_CLEFAIRY
|
||||
playse SE_C_MAKU_D
|
||||
closedoor 10, 3
|
||||
waitdooranim
|
||||
setflag FLAG_TEMP_2
|
||||
setflag BILL_IN_TELEPORTER
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_170600:: @ 8170600
|
||||
@ Just returns after message, execution continues as if player had said yes
|
||||
Route25_SeaCottage_EventScript_DeclineHelpBill:: @ 8170600
|
||||
checkplayergender
|
||||
compare VAR_RESULT, MALE
|
||||
call_if_eq EventScript_170618
|
||||
call_if_eq Route25_SeaCottage_EventScript_DeclineHelpBillMale
|
||||
compare VAR_RESULT, FEMALE
|
||||
call_if_eq EventScript_170621
|
||||
call_if_eq Route25_SeaCottage_EventScript_DeclineHelpBillFemale
|
||||
return
|
||||
|
||||
EventScript_170618:: @ 8170618
|
||||
msgbox gUnknown_81A0035
|
||||
Route25_SeaCottage_EventScript_DeclineHelpBillMale:: @ 8170618
|
||||
msgbox Route25_SeaCottage_Text_NoPleaseChief
|
||||
return
|
||||
|
||||
EventScript_170621:: @ 8170621
|
||||
msgbox gUnknown_81A00B6
|
||||
Route25_SeaCottage_EventScript_DeclineHelpBillFemale:: @ 8170621
|
||||
msgbox Route25_SeaCottage_Text_NoPleaseBeautiful
|
||||
return
|
||||
|
||||
EventScript_17062A:: @ 817062A
|
||||
applymovement 2, Movement_1706D5
|
||||
Route25_SeaCottage_EventScript_BillWalkToTeleporterSouth:: @ 817062A
|
||||
applymovement LOCALID_BILL_CLEFAIRY, Route25_SeaCottage_Movement_BillWalkToTeleporterSouth
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_170635:: @ 8170635
|
||||
applymovement 2, Movement_1706D2
|
||||
Route25_SeaCottage_EventScript_BillWalkToTeleporter:: @ 8170635
|
||||
applymovement LOCALID_BILL_CLEFAIRY, Route25_SeaCottage_Movement_BillWalkToTeleporter
|
||||
waitmovement 0
|
||||
return
|
||||
|
||||
EventScript_170640:: @ 8170640
|
||||
msgbox gUnknown_81A02CF
|
||||
Route25_SeaCottage_EventScript_BillGoToSSAnne:: @ 8170640
|
||||
msgbox Route25_SeaCottage_Text_SSAnnePartyYouGoInstead
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_17064A:: @ 817064A
|
||||
Route25_SeaCottage_EventScript_BillGiveSSTicket:: @ 817064A
|
||||
famechecker FAMECHECKER_BILL, FCPICKSTATE_COLORED, UpdatePickStateFromSpecialVar8005
|
||||
checkplayergender
|
||||
compare VAR_RESULT, MALE
|
||||
call_if_eq EventScript_1706AC
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillThanksMale
|
||||
compare VAR_RESULT, FEMALE
|
||||
call_if_eq EventScript_1706B5
|
||||
call_if_eq Route25_SeaCottage_EventScript_BillThanksFemale
|
||||
checkitemspace ITEM_SS_TICKET, 1
|
||||
compare VAR_RESULT, FALSE
|
||||
goto_if_eq EventScript_1706BE
|
||||
giveitem_msg gUnknown_81A028E, ITEM_SS_TICKET, 1, MUS_FAN5
|
||||
goto_if_eq Route25_SeaCottage_EventScript_NoRoomForSSTicket
|
||||
giveitem_msg Route25_SeaCottage_Text_ReceivedSSTicketFromBill, ITEM_SS_TICKET, 1, MUS_FAN5
|
||||
setflag FLAG_GOT_SS_TICKET_DUP
|
||||
setflag FLAG_HIDE_NUGGET_BRIDGE_ROCKET
|
||||
setflag FLAG_GOT_SS_TICKET
|
||||
setflag FLAG_SYS_NOT_SOMEONES_PC
|
||||
goto EventScript_170640
|
||||
goto Route25_SeaCottage_EventScript_BillGoToSSAnne
|
||||
end
|
||||
|
||||
EventScript_1706AC:: @ 81706AC
|
||||
msgbox gUnknown_81A013B
|
||||
Route25_SeaCottage_EventScript_BillThanksMale:: @ 81706AC
|
||||
msgbox Route25_SeaCottage_Text_ThanksBudTakeThis
|
||||
return
|
||||
|
||||
EventScript_1706B5:: @ 81706B5
|
||||
msgbox gUnknown_81A01E4
|
||||
Route25_SeaCottage_EventScript_BillThanksFemale:: @ 81706B5
|
||||
msgbox Route25_SeaCottage_Text_ThanksLadyTakeThis
|
||||
return
|
||||
|
||||
EventScript_1706BE:: @ 81706BE
|
||||
msgbox gUnknown_81A02B4
|
||||
Route25_SeaCottage_EventScript_NoRoomForSSTicket:: @ 81706BE
|
||||
msgbox Route25_SeaCottage_Text_YouveGotTooMuchStuff
|
||||
release
|
||||
end
|
||||
|
||||
EventScript_1706C8:: @ 81706C8
|
||||
msgbox gUnknown_81A03AB
|
||||
Route25_SeaCottage_EventScript_BillGoLookAtPC:: @ 81706C8
|
||||
msgbox Route25_SeaCottage_Text_CheckOutRareMonsOnPC
|
||||
release
|
||||
end
|
||||
|
||||
Movement_1706D2:: @ 81706D2
|
||||
Route25_SeaCottage_Movement_BillWalkToTeleporter:: @ 81706D2
|
||||
walk_up
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Movement_1706D5:: @ 81706D5
|
||||
Route25_SeaCottage_Movement_BillWalkToTeleporterSouth:: @ 81706D5
|
||||
walk_right
|
||||
walk_up
|
||||
walk_up
|
||||
@@ -145,85 +152,85 @@ Movement_1706D5:: @ 81706D5
|
||||
walk_in_place_fastest_up
|
||||
step_end
|
||||
|
||||
Movement_1706DB:: @ 81706DB
|
||||
Route25_SeaCottage_Movement_BillEnterTeleporter:: @ 81706DB
|
||||
walk_up
|
||||
step_end
|
||||
|
||||
Route25_SeaCottage_EventScript_1706DD:: @ 81706DD
|
||||
Route25_SeaCottage_EventScript_Computer:: @ 81706DD
|
||||
lockall
|
||||
goto_if_set FLAG_TEMP_3, EventScript_1707CA
|
||||
goto_if_set FLAG_TEMP_2, EventScript_1706FA
|
||||
msgbox gUnknown_81A0402
|
||||
goto_if_set RETURN_AFTER_SS_TICKET, Route25_SeaCottage_EventScript_OpenBillsMonList
|
||||
goto_if_set BILL_IN_TELEPORTER, Route25_SeaCottage_EventScript_RunCellSeparator
|
||||
msgbox Route25_SeaCottage_Text_TeleporterIsDisplayed
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_1706FA:: @ 81706FA
|
||||
Route25_SeaCottage_EventScript_RunCellSeparator:: @ 81706FA
|
||||
fadeoutbgm 0
|
||||
msgbox gUnknown_81A042D
|
||||
msgbox Route25_SeaCottage_Text_InitiatedTeleportersCellSeparator
|
||||
closemessage
|
||||
clearflag FLAG_TEMP_2
|
||||
clearflag BILL_IN_TELEPORTER
|
||||
setflag FLAG_HELPED_BILL_IN_SEA_COTTAGE
|
||||
special SpawnCameraObject
|
||||
applymovement OBJ_EVENT_ID_CAMERA, Movement_1707BE
|
||||
applymovement OBJ_EVENT_ID_CAMERA, Route25_SeaCottage_Movement_CameraPanToTeleporters
|
||||
waitmovement 0
|
||||
delay 35
|
||||
playse SE_PIN
|
||||
waitse
|
||||
setvar VAR_0x8004, 0
|
||||
special sub_809C4A8
|
||||
special AnimateTeleporterHousing
|
||||
delay 10
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
setvar VAR_0x8004, 1
|
||||
special sub_809C4A8
|
||||
special AnimateTeleporterHousing
|
||||
playse SE_TK_WARPIN
|
||||
special sub_809C5FC
|
||||
special AnimateTeleporterCable
|
||||
waitse
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call EventScript_1707B6
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
call Route25_SeaCottage_EventScript_PlayTeleporterBeepSE
|
||||
opendoor 3, 3
|
||||
waitdooranim
|
||||
fadeinbgm 0
|
||||
addobject 1
|
||||
addobject LOCALID_BILL_HUMAN
|
||||
clearflag FLAG_HIDE_BILL_HUMAN_SEA_COTTAGE
|
||||
delay 50
|
||||
playfanfare MUS_FANFA1
|
||||
applymovement 1, Movement_170888
|
||||
applymovement LOCALID_BILL_HUMAN, Route25_SeaCottage_Movement_BillExitTeleporter
|
||||
waitmovement 0
|
||||
waitfanfare
|
||||
applymovement OBJ_EVENT_ID_CAMERA, Movement_1707C3
|
||||
applymovement OBJ_EVENT_ID_CAMERA, Route25_SeaCottage_Movement_CameraPanBackFromTeleporters
|
||||
waitmovement 0
|
||||
playse SE_C_MAKU_D
|
||||
closedoor 3, 3
|
||||
waitdooranim
|
||||
applymovement 1, Movement_170881
|
||||
applymovement LOCALID_BILL_HUMAN, Route25_SeaCottage_Movement_BillWalkToMiddleOfRoom
|
||||
waitmovement 0
|
||||
special RemoveCameraObject
|
||||
releaseall
|
||||
end
|
||||
|
||||
EventScript_1707B6:: @ 81707B6
|
||||
Route25_SeaCottage_EventScript_PlayTeleporterBeepSE:: @ 81707B6
|
||||
playse SE_BOWA
|
||||
waitse
|
||||
delay 20
|
||||
return
|
||||
|
||||
Movement_1707BE:: @ 81707BE
|
||||
Route25_SeaCottage_Movement_CameraPanToTeleporters:: @ 81707BE
|
||||
walk_up
|
||||
walk_up
|
||||
walk_right
|
||||
walk_right
|
||||
step_end
|
||||
|
||||
Movement_1707C3:: @ 81707C3
|
||||
Route25_SeaCottage_Movement_CameraPanBackFromTeleporters:: @ 81707C3
|
||||
delay_16
|
||||
delay_16
|
||||
walk_down
|
||||
@@ -232,65 +239,65 @@ Movement_1707C3:: @ 81707C3
|
||||
walk_left
|
||||
step_end
|
||||
|
||||
EventScript_1707CA:: @ 81707CA
|
||||
msgbox gUnknown_81A045B
|
||||
goto EventScript_1707D8
|
||||
Route25_SeaCottage_EventScript_OpenBillsMonList:: @ 81707CA
|
||||
msgbox Route25_SeaCottage_Text_BillsFavoriteMonList
|
||||
goto Route25_SeaCottage_EventScript_BillsMonList
|
||||
end
|
||||
|
||||
EventScript_1707D8:: @ 81707D8
|
||||
message Text_1A0479
|
||||
Route25_SeaCottage_EventScript_BillsMonList:: @ 81707D8
|
||||
message Route25_SeaCottage_Text_SeeWhichMon
|
||||
waitmessage
|
||||
multichoice 0, 0, MULTICHOICE_EEVEELUTIONS, FALSE
|
||||
switch VAR_RESULT
|
||||
case 0, EventScript_17082B
|
||||
case 1, EventScript_170840
|
||||
case 2, EventScript_170855
|
||||
case 3, EventScript_17086A
|
||||
case 4, EventScript_17087F
|
||||
case 127, EventScript_17087F
|
||||
case 0, Route25_SeaCottage_EventScript_ViewEevee
|
||||
case 1, Route25_SeaCottage_EventScript_ViewFlareon
|
||||
case 2, Route25_SeaCottage_EventScript_ViewJolteon
|
||||
case 3, Route25_SeaCottage_EventScript_ViewVaporeon
|
||||
case 4, Route25_SeaCottage_EventScript_ExitBillsMonList
|
||||
case 127, Route25_SeaCottage_EventScript_ExitBillsMonList
|
||||
end
|
||||
|
||||
EventScript_17082B:: @ 817082B
|
||||
Route25_SeaCottage_EventScript_ViewEevee:: @ 817082B
|
||||
drawmonpic SPECIES_EEVEE, 10, 3
|
||||
waitbuttonpress
|
||||
erasemonpic
|
||||
setvar VAR_0x8004, SPECIES_EEVEE
|
||||
special Special_SetSeenMon
|
||||
goto EventScript_1707D8
|
||||
goto Route25_SeaCottage_EventScript_BillsMonList
|
||||
end
|
||||
|
||||
EventScript_170840:: @ 8170840
|
||||
Route25_SeaCottage_EventScript_ViewFlareon:: @ 8170840
|
||||
drawmonpic SPECIES_FLAREON, 10, 3
|
||||
waitbuttonpress
|
||||
erasemonpic
|
||||
setvar VAR_0x8004, SPECIES_FLAREON
|
||||
special Special_SetSeenMon
|
||||
goto EventScript_1707D8
|
||||
goto Route25_SeaCottage_EventScript_BillsMonList
|
||||
end
|
||||
|
||||
EventScript_170855:: @ 8170855
|
||||
Route25_SeaCottage_EventScript_ViewJolteon:: @ 8170855
|
||||
drawmonpic SPECIES_JOLTEON, 10, 3
|
||||
waitbuttonpress
|
||||
erasemonpic
|
||||
setvar VAR_0x8004, SPECIES_JOLTEON
|
||||
special Special_SetSeenMon
|
||||
goto EventScript_1707D8
|
||||
goto Route25_SeaCottage_EventScript_BillsMonList
|
||||
end
|
||||
|
||||
EventScript_17086A:: @ 817086A
|
||||
Route25_SeaCottage_EventScript_ViewVaporeon:: @ 817086A
|
||||
drawmonpic SPECIES_VAPOREON, 10, 3
|
||||
waitbuttonpress
|
||||
erasemonpic
|
||||
setvar VAR_0x8004, SPECIES_VAPOREON
|
||||
special Special_SetSeenMon
|
||||
goto EventScript_1707D8
|
||||
goto Route25_SeaCottage_EventScript_BillsMonList
|
||||
end
|
||||
|
||||
EventScript_17087F:: @ 817087F
|
||||
Route25_SeaCottage_EventScript_ExitBillsMonList:: @ 817087F
|
||||
releaseall
|
||||
end
|
||||
|
||||
Movement_170881:: @ 8170881
|
||||
Route25_SeaCottage_Movement_BillWalkToMiddleOfRoom:: @ 8170881
|
||||
walk_right
|
||||
walk_right
|
||||
walk_right
|
||||
@@ -299,6 +306,6 @@ Movement_170881:: @ 8170881
|
||||
walk_down
|
||||
step_end
|
||||
|
||||
Movement_170888:: @ 8170888
|
||||
Route25_SeaCottage_Movement_BillExitTeleporter:: @ 8170888
|
||||
walk_down
|
||||
step_end
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
gUnknown_819FDFA:: @ 819FDFA
|
||||
Route25_SeaCottage_Text_ImBillHelpMeOutPal:: @ 819FDFA
|
||||
.string "Hiya! I'm a POKéMON…\n"
|
||||
.string "…No I'm not!\p"
|
||||
.string "Call me BILL!\n"
|
||||
@@ -11,7 +11,7 @@ gUnknown_819FDFA:: @ 819FDFA
|
||||
.string "So, how about it?\n"
|
||||
.string "Help me out here!$"
|
||||
|
||||
gUnknown_819FEE6:: @ 819FEE6
|
||||
Route25_SeaCottage_Text_ImBillHelpMeOutLady:: @ 819FEE6
|
||||
.string "Hiya! I'm a POKéMON…\n"
|
||||
.string "…No I'm not!\p"
|
||||
.string "Call me BILL!\n"
|
||||
@@ -24,13 +24,13 @@ gUnknown_819FEE6:: @ 819FEE6
|
||||
.string "So, how about it?\n"
|
||||
.string "Help me out here!$"
|
||||
|
||||
gUnknown_819FFD3:: @ 819FFD3
|
||||
Route25_SeaCottage_Text_RunCellSeparationOnPC:: @ 819FFD3
|
||||
.string "Wait till I get inside the\n"
|
||||
.string "TELEPORTER.\p"
|
||||
.string "When I do, go to my PC and run\n"
|
||||
.string "the Cell Separation System.$"
|
||||
|
||||
gUnknown_81A0035:: @ 81A0035
|
||||
Route25_SeaCottage_Text_NoPleaseChief:: @ 81A0035
|
||||
.string "No!?\n"
|
||||
.string "Now don't be so cold!\p"
|
||||
.string "Come on, you gotta help a guy in\n"
|
||||
@@ -40,7 +40,7 @@ gUnknown_81A0035:: @ 81A0035
|
||||
.string "Okay?\l"
|
||||
.string "All right!$"
|
||||
|
||||
gUnknown_81A00B6:: @ 81A00B6
|
||||
Route25_SeaCottage_Text_NoPleaseBeautiful:: @ 81A00B6
|
||||
.string "No!?\n"
|
||||
.string "Now don't be so cold!\p"
|
||||
.string "Come on, you gotta help a guy in\n"
|
||||
@@ -50,7 +50,7 @@ gUnknown_81A00B6:: @ 81A00B6
|
||||
.string "Okay?\l"
|
||||
.string "All right!$"
|
||||
|
||||
gUnknown_81A013B:: @ 81A013B
|
||||
Route25_SeaCottage_Text_ThanksBudTakeThis:: @ 81A013B
|
||||
.string "BILL: Yeehah!\n"
|
||||
.string "Thanks, bud! I owe you one!\p"
|
||||
.string "So, did you come to see my\n"
|
||||
@@ -60,7 +60,7 @@ gUnknown_81A013B:: @ 81A013B
|
||||
.string "I've got to thank you…\n"
|
||||
.string "Oh, here, maybe this'll do.$"
|
||||
|
||||
gUnknown_81A01E4:: @ 81A01E4
|
||||
Route25_SeaCottage_Text_ThanksLadyTakeThis:: @ 81A01E4
|
||||
.string "BILL: Yeehah!\n"
|
||||
.string "Thanks, lady! I owe you one!\p"
|
||||
.string "So, did you come to see my\n"
|
||||
@@ -70,14 +70,14 @@ gUnknown_81A01E4:: @ 81A01E4
|
||||
.string "I've got to thank you…\n"
|
||||
.string "Oh, here, maybe this'll do.$"
|
||||
|
||||
gUnknown_81A028E:: @ 81A028E
|
||||
Route25_SeaCottage_Text_ReceivedSSTicketFromBill:: @ 81A028E
|
||||
.string "{PLAYER} received an S.S. TICKET\n"
|
||||
.string "from BILL.$"
|
||||
|
||||
gUnknown_81A02B4:: @ 81A02B4
|
||||
Route25_SeaCottage_Text_YouveGotTooMuchStuff:: @ 81A02B4
|
||||
.string "You've got too much stuff!$"
|
||||
|
||||
gUnknown_81A02CF:: @ 81A02CF
|
||||
Route25_SeaCottage_Text_SSAnnePartyYouGoInstead:: @ 81A02CF
|
||||
.string "That cruise ship S.S. ANNE is in\n"
|
||||
.string "VERMILION CITY.\p"
|
||||
.string "I hear there are lots of TRAINERS\n"
|
||||
@@ -87,22 +87,22 @@ gUnknown_81A02CF:: @ 81A02CF
|
||||
.string "Why don't you go instead of me?\n"
|
||||
.string "Go on and have a good time.$"
|
||||
|
||||
gUnknown_81A03AB:: @ 81A03AB
|
||||
Route25_SeaCottage_Text_CheckOutRareMonsOnPC:: @ 81A03AB
|
||||
.string "BILL: Feel like checking out some\n"
|
||||
.string "of my rare POKéMON on my PC?\p"
|
||||
.string "Go on, check out my PC.$"
|
||||
|
||||
gUnknown_81A0402:: @ 81A0402
|
||||
Route25_SeaCottage_Text_TeleporterIsDisplayed:: @ 81A0402
|
||||
.string "TELEPORTER is displayed on the PC\n"
|
||||
.string "monitor.$"
|
||||
|
||||
gUnknown_81A042D:: @ 81A042D
|
||||
Route25_SeaCottage_Text_InitiatedTeleportersCellSeparator:: @ 81A042D
|
||||
.string "{PLAYER} initiated the TELEPORTER's\n"
|
||||
.string "Cell Separator.$"
|
||||
|
||||
gUnknown_81A045B:: @ 81A045B
|
||||
Route25_SeaCottage_Text_BillsFavoriteMonList:: @ 81A045B
|
||||
.string "BILL's favorite POKéMON list!$"
|
||||
|
||||
Text_1A0479:: @ 81A0479
|
||||
Route25_SeaCottage_Text_SeeWhichMon:: @ 81A0479
|
||||
.string "Which POKéMON do you want to see?$"
|
||||
|
||||
|
||||
@@ -59,19 +59,19 @@ PewterCity_Museum_1F_EventScript_PokemonJournalBrock:: @ 81ACE1C
|
||||
releaseall
|
||||
end
|
||||
|
||||
Route20_EventScript_1ACE36:: @ 81ACE36
|
||||
Route20_EventScript_Camper:: @ 81ACE36
|
||||
lock
|
||||
faceplayer
|
||||
famechecker FAMECHECKER_MISTY, 3
|
||||
msgbox Text_1882E1
|
||||
msgbox Route20_Text_MistyTrainsHere
|
||||
release
|
||||
end
|
||||
|
||||
Route25_EventScript_1ACE4F:: @ 81ACE4F
|
||||
Route25_EventScript_Beauty:: @ 81ACE4F
|
||||
lock
|
||||
faceplayer
|
||||
famechecker FAMECHECKER_MISTY, 4
|
||||
msgbox Text_189569
|
||||
msgbox Route25_Text_MistyHighHopesAboutThisPlace
|
||||
release
|
||||
end
|
||||
|
||||
|
||||
+560
-560
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -445,9 +445,9 @@ gSpecials:: @ 815FD60
|
||||
def_special Special_BrailleCursorToggle
|
||||
def_special Script_ResetUnionRoomTrade
|
||||
def_special Special_PlayerPartyContainsSpeciesWithPlayerID
|
||||
def_special sub_809C4A8
|
||||
def_special AnimateTeleporterHousing
|
||||
def_special IsDodrioInParty
|
||||
def_special sub_809C5FC
|
||||
def_special AnimateTeleporterCable
|
||||
def_special Special_InitElevatorFloorSelectMenuPos
|
||||
def_special Special_ComputeLoreleiDollCollection
|
||||
def_special Special_LoopWingFlapSound
|
||||
|
||||
+80
-80
@@ -367,339 +367,339 @@ Route14_Text_JanRematchIntro:: @ 81C261B
|
||||
.string "JAN: KIRI, here we go!\n"
|
||||
.string "Let's win for sure this time!$"
|
||||
|
||||
Text_1C2650:: @ 81C2650
|
||||
Route15_Text_KindraRematchIntro:: @ 81C2650
|
||||
.string "I'm going to keep battling with the\n"
|
||||
.string "POKéMON I got in trades.$"
|
||||
|
||||
Text_1C268D:: @ 81C268D
|
||||
Route15_Text_BeckyRematchIntro:: @ 81C268D
|
||||
.string "You look gentle, so I think I can\n"
|
||||
.string "beat you.\p"
|
||||
.string "I'll give it one more go!$"
|
||||
|
||||
Text_1C26D3:: @ 81C26D3
|
||||
Route15_Text_EdwinRematchIntro:: @ 81C26D3
|
||||
.string "When I whistle, bird POKéMON\n"
|
||||
.string "gather around.\p"
|
||||
.string "They're amazingly cute!$"
|
||||
|
||||
Text_1C2717:: @ 81C2717
|
||||
Route15_Text_ChesterRematchIntro:: @ 81C2717
|
||||
.string "Hmm? My birds are shivering!\n"
|
||||
.string "Wait, aren't you that TRAINER…$"
|
||||
|
||||
Text_1C2753:: @ 81C2753
|
||||
Route15_Text_GraceRematchIntro:: @ 81C2753
|
||||
.string "Oh, you're a little cutie!\n"
|
||||
.string "So like a darling POKéMON!\l"
|
||||
.string "I remember you now!$"
|
||||
|
||||
Text_1C279D:: @ 81C279D
|
||||
Route15_Text_OliviaRematchIntro:: @ 81C279D
|
||||
.string "I raise POKéMON for protection\n"
|
||||
.string "because I live alone.\p"
|
||||
.string "That hasn't changed.$"
|
||||
|
||||
Text_1C27E7:: @ 81C27E7
|
||||
Route15_Text_ErnestRematchIntro:: @ 81C27E7
|
||||
.string "Hey, kid! C'mon!\n"
|
||||
.string "I got these off some loser!$"
|
||||
|
||||
Text_1C2814:: @ 81C2814
|
||||
Route15_Text_AlexRematchIntro:: @ 81C2814
|
||||
.string "Fork over all your cash when you\n"
|
||||
.string "lose to me, kid!$"
|
||||
|
||||
Text_1C2846:: @ 81C2846
|
||||
Route15_Text_CeliaRematchIntro:: @ 81C2846
|
||||
.string "What's cool and happening?\n"
|
||||
.string "Trading POKéMON, of course.$"
|
||||
|
||||
Text_1C287D:: @ 81C287D
|
||||
Route15_Text_YazminRematchIntro:: @ 81C287D
|
||||
.string "Want to play with my POKéMON\n"
|
||||
.string "again?$"
|
||||
|
||||
Text_1C28A1:: @ 81C28A1
|
||||
Route15_Text_MyaRematchIntro:: @ 81C28A1
|
||||
.string "MYA: Hi, we keep meeting,\n"
|
||||
.string "don't we?\p"
|
||||
.string "Help me train my little brother\n"
|
||||
.string "again?$"
|
||||
|
||||
Text_1C28EC:: @ 81C28EC
|
||||
Route15_Text_RonRematchIntro:: @ 81C28EC
|
||||
.string "RON: My sister's gotten more\n"
|
||||
.string "powerful…$"
|
||||
|
||||
Text_1C2913:: @ 81C2913
|
||||
Route16_Text_LaoRematchIntro:: @ 81C2913
|
||||
.string "What do you want?$"
|
||||
|
||||
Text_1C2925:: @ 81C2925
|
||||
Route16_Text_KojiRematchIntro:: @ 81C2925
|
||||
.string "Nice BIKE!\n"
|
||||
.string "Hand it over quick!$"
|
||||
|
||||
Text_1C2944:: @ 81C2944
|
||||
Route16_Text_LukeRematchIntro:: @ 81C2944
|
||||
.string "Come out and play, little mouse.\n"
|
||||
.string "I'll treat you right!$"
|
||||
|
||||
Text_1C297B:: @ 81C297B
|
||||
Route16_Text_HideoRematchIntro:: @ 81C297B
|
||||
.string "Hey, wait a second!\n"
|
||||
.string "Don't call me and then run away!$"
|
||||
|
||||
Text_1C29B0:: @ 81C29B0
|
||||
Route16_Text_CamronRematchIntro:: @ 81C29B0
|
||||
.string "I'm feeling hungry and mean!\n"
|
||||
.string "I really need a punching bag!$"
|
||||
|
||||
Text_1C29EB:: @ 81C29EB
|
||||
Route16_Text_RubenRematchIntro:: @ 81C29EB
|
||||
.string "Hey, there!\n"
|
||||
.string "We'll have ourselves a good time!$"
|
||||
|
||||
Text_1C2A19:: @ 81C2A19
|
||||
Route16_Text_JedRematchIntro:: @ 81C2A19
|
||||
.string "JED: Are you here to see our\n"
|
||||
.string "love, which knows no bounds?$"
|
||||
|
||||
Text_1C2A53:: @ 81C2A53
|
||||
Route16_Text_LeaRematchIntro:: @ 81C2A53
|
||||
.string "LEA: Sometimes, the intensity of\n"
|
||||
.string "our love scares me.$"
|
||||
|
||||
Text_1C2A88:: @ 81C2A88
|
||||
Route17_Text_RaulRematchIntro:: @ 81C2A88
|
||||
.string "I told you, there's no getting rich\n"
|
||||
.string "quick in battling kids.$"
|
||||
|
||||
Text_1C2AC4:: @ 81C2AC4
|
||||
Route17_Text_IsaiahRematchIntro:: @ 81C2AC4
|
||||
.string "I'm mighty proud of my bod, kiddo.\n"
|
||||
.string "Come on!$"
|
||||
|
||||
Text_1C2AF0:: @ 81C2AF0
|
||||
Route17_Text_VirgilRematchIntro:: @ 81C2AF0
|
||||
.string "You out for a stroll?$"
|
||||
|
||||
Text_1C2B06:: @ 81C2B06
|
||||
Route17_Text_BillyRematchIntro:: @ 81C2B06
|
||||
.string "We're BIKERS!\n"
|
||||
.string "We rule the roads, man!$"
|
||||
|
||||
Text_1C2B2C:: @ 81C2B2C
|
||||
Route17_Text_NikolasRematchIntro:: @ 81C2B2C
|
||||
.string "VOLTORB's going to seriously\n"
|
||||
.string "electrify you today!$"
|
||||
|
||||
Text_1C2B5E:: @ 81C2B5E
|
||||
Route17_Text_ZeekRematchIntro:: @ 81C2B5E
|
||||
.string "I leveled up my POKéMON, but it\n"
|
||||
.string "absolutely won't evolve. Why?$"
|
||||
|
||||
Text_1C2B9C:: @ 81C2B9C
|
||||
Route17_Text_JamalRematchIntro:: @ 81C2B9C
|
||||
.string "Gaah! I really need to exercise\n"
|
||||
.string "and seriously trim some flab!$"
|
||||
|
||||
Text_1C2BDA:: @ 81C2BDA
|
||||
Route17_Text_CoreyRematchIntro:: @ 81C2BDA
|
||||
.string "Be a rebel!$"
|
||||
|
||||
Text_1C2BE6:: @ 81C2BE6
|
||||
Route17_Text_JaxonRematchIntro:: @ 81C2BE6
|
||||
.string "Yep, that's a nice BIKE!\n"
|
||||
.string "How's it handle?$"
|
||||
|
||||
Text_1C2C10:: @ 81C2C10
|
||||
Route17_Text_WilliamRematchIntro:: @ 81C2C10
|
||||
.string "Get lost, kid!\n"
|
||||
.string "I'm bushed!$"
|
||||
|
||||
Text_1C2C2B:: @ 81C2C2B
|
||||
Route18_Text_WiltonRematchIntro:: @ 81C2C2B
|
||||
.string "I've been checking every grassy\n"
|
||||
.string "area for new POKéMON.\p"
|
||||
.string "But it's not always easy…$"
|
||||
|
||||
Text_1C2C7B:: @ 81C2C7B
|
||||
Route18_Text_RamiroRematchIntro:: @ 81C2C7B
|
||||
.string "Koorukukukoo!\n"
|
||||
.string "Is my birdcall getting better?$"
|
||||
|
||||
Text_1C2CA8:: @ 81C2CA8
|
||||
Route18_Text_JacobRematchIntro:: @ 81C2CA8
|
||||
.string "I warned you before, this is my\n"
|
||||
.string "turf!\p"
|
||||
.string "I don't want you coming around.$"
|
||||
|
||||
Text_1C2CEE:: @ 81C2CEE
|
||||
Route19_Text_RichardRematchIntro:: @ 81C2CEE
|
||||
.string "I'm almost warmed up to go\n"
|
||||
.string "out for a swim.$"
|
||||
|
||||
Text_1C2D19:: @ 81C2D19
|
||||
Route19_Text_ReeceRematchIntro:: @ 81C2D19
|
||||
.string "Wait! Slow down!\n"
|
||||
.string "What if you have a heart attack?$"
|
||||
|
||||
Text_1C2D4B:: @ 81C2D4B
|
||||
Route19_Text_MatthewRematchIntro:: @ 81C2D4B
|
||||
.string "I love swimming!\n"
|
||||
.string "I guess you're the surfing type.$"
|
||||
|
||||
Text_1C2D7D:: @ 81C2D7D
|
||||
Route19_Text_DouglasRematchIntro:: @ 81C2D7D
|
||||
.string "What's beyond the horizon?\n"
|
||||
.string "Have you seen?$"
|
||||
|
||||
Text_1C2DA7:: @ 81C2DA7
|
||||
Route19_Text_DavidRematchIntro:: @ 81C2DA7
|
||||
.string "I tried diving for POKéMON again,\n"
|
||||
.string "but it was a no-go like before.$"
|
||||
|
||||
Text_1C2DE9:: @ 81C2DE9
|
||||
Route19_Text_TonyRematchIntro:: @ 81C2DE9
|
||||
.string "I look at the sea to forget all\n"
|
||||
.string "the bad things that happened.\p"
|
||||
.string "…Like losing to you the last time!$"
|
||||
|
||||
Text_1C2E4A:: @ 81C2E4A
|
||||
Route19_Text_AnyaRematchIntro:: @ 81C2E4A
|
||||
.string "You always get to ride your\n"
|
||||
.string "POKéMON…\p"
|
||||
.string "It looks so relaxing.\n"
|
||||
.string "Can I have it if I win?$"
|
||||
|
||||
Text_1C2E9D:: @ 81C2E9D
|
||||
Route19_Text_AliceRematchIntro:: @ 81C2E9D
|
||||
.string "Swimming's great!\n"
|
||||
.string "Sunburns aren't!$"
|
||||
|
||||
Text_1C2EC0:: @ 81C2EC0
|
||||
Route19_Text_AxleRematchIntro:: @ 81C2EC0
|
||||
.string "These waters are treacherous!\n"
|
||||
.string "You shouldn't come back here!$"
|
||||
|
||||
Text_1C2EFC:: @ 81C2EFC
|
||||
Route19_Text_ConnieRematchIntro:: @ 81C2EFC
|
||||
.string "I swam here with my friends…\n"
|
||||
.string "I'm tired…\l"
|
||||
.string "Must we really battle again?$"
|
||||
|
||||
Text_1C2F41:: @ 81C2F41
|
||||
Route19_Text_LiaRematchIntro:: @ 81C2F41
|
||||
.string "LIA: You know my brother just\n"
|
||||
.string "became a TRAINER, right?\p"
|
||||
.string "I want to make him better, so I\n"
|
||||
.string "need your help again.$"
|
||||
|
||||
Text_1C2FAE:: @ 81C2FAE
|
||||
Route19_Text_LucRematchIntro:: @ 81C2FAE
|
||||
.string "LUC: My big sis taught me all\n"
|
||||
.string "about POKéMON.\p"
|
||||
.string "I wonder if I'm better?$"
|
||||
|
||||
Text_1C2FF3:: @ 81C2FF3
|
||||
Route20_Text_BarryRematchIntro:: @ 81C2FF3
|
||||
.string "The water is shallow here.\n"
|
||||
.string "There are many people swimming.$"
|
||||
|
||||
Text_1C302E:: @ 81C302E
|
||||
Route20_Text_ShirleyRematchIntro:: @ 81C302E
|
||||
.string "Are you jealous that I'm\n"
|
||||
.string "vacationing on SEAFOAM?$"
|
||||
|
||||
Text_1C305F:: @ 81C305F
|
||||
Route20_Text_TiffanyRematchIntro:: @ 81C305F
|
||||
.string "I love floating with the fishes\n"
|
||||
.string "here among the waves.$"
|
||||
|
||||
Text_1C3095:: @ 81C3095
|
||||
Route20_Text_IreneRematchIntro:: @ 81C3095
|
||||
.string "Were you on vacation, too?$"
|
||||
|
||||
Text_1C30B0:: @ 81C30B0
|
||||
Route20_Text_DeanRematchIntro:: @ 81C30B0
|
||||
.string "Check out my physique!\p"
|
||||
.string "It's even more buff than ever\n"
|
||||
.string "before!$"
|
||||
|
||||
Text_1C30ED:: @ 81C30ED
|
||||
Route20_Text_DarrinRematchIntro:: @ 81C30ED
|
||||
.string "Why are you riding a POKéMON?\n"
|
||||
.string "Haven't you learned to swim yet?$"
|
||||
|
||||
Text_1C312C:: @ 81C312C
|
||||
Route20_Text_RogerRematchIntro:: @ 81C312C
|
||||
.string "I rode my bird POKéMON here.$"
|
||||
|
||||
Text_1C3149:: @ 81C3149
|
||||
Route20_Text_NoraRematchIntro:: @ 81C3149
|
||||
.string "My boyfriend gave me big pearls.\n"
|
||||
.string "And, they've grown bigger!$"
|
||||
|
||||
Text_1C3185:: @ 81C3185
|
||||
Route20_Text_MissyRematchIntro:: @ 81C3185
|
||||
.string "I swam here from CINNABAR ISLAND.\n"
|
||||
.string "It wasn't easy, like I said.$"
|
||||
|
||||
Text_1C31C4:: @ 81C31C4
|
||||
Route20_Text_MelissaRematchIntro:: @ 81C31C4
|
||||
.string "CINNABAR, in the west, has a LAB\n"
|
||||
.string "for POKéMON.\p"
|
||||
.string "My daddy works there.$"
|
||||
|
||||
Text_1C3208:: @ 81C3208
|
||||
Route21_North_Text_RonaldRematchIntro:: @ 81C3208
|
||||
.string "You want to know if the fish are\n"
|
||||
.string "biting?$"
|
||||
|
||||
Text_1C3231:: @ 81C3231
|
||||
Route21_North_Text_WadeRematchIntro:: @ 81C3231
|
||||
.string "I got a big haul again!\n"
|
||||
.string "Wanna go for it once more?$"
|
||||
|
||||
Text_1C3264:: @ 81C3264
|
||||
Route21_North_Text_SpencerRematchIntro:: @ 81C3264
|
||||
.string "The sea cleanses my body and soul!$"
|
||||
|
||||
Text_1C3287:: @ 81C3287
|
||||
.string "きょうも およぎに\n"
|
||||
.string "きちまったぜ$"
|
||||
|
||||
Text_1C3298:: @ 81C3298
|
||||
Route21_South_Text_JackRematchIntro:: @ 81C3298
|
||||
.string "I caught my POKéMON at sea.\n"
|
||||
.string "And that's where I train them.$"
|
||||
|
||||
Text_1C32D3:: @ 81C32D3
|
||||
Route21_South_Text_JeromeRematchIntro:: @ 81C32D3
|
||||
.string "Right now, I'm in another triathlon\n"
|
||||
.string "meet!$"
|
||||
|
||||
Text_1C32FD:: @ 81C32FD
|
||||
Route21_South_Text_RolandRematchIntro:: @ 81C32FD
|
||||
.string "Ahh!\n"
|
||||
.string "Feel the sun and the wind!$"
|
||||
|
||||
Text_1C331D:: @ 81C331D
|
||||
Route21_South_Text_ClaudeRematchIntro:: @ 81C331D
|
||||
.string "Hey, cut it out already.\n"
|
||||
.string "You always scare away the fish!$"
|
||||
|
||||
Text_1C3356:: @ 81C3356
|
||||
Route21_South_Text_NolanRematchIntro:: @ 81C3356
|
||||
.string "Keep me company till I get a hit.$"
|
||||
|
||||
Text_1C3378:: @ 81C3378
|
||||
Route21_North_Text_LilRematchIntro:: @ 81C3378
|
||||
.string "LIL: Huh? A battle again?\n"
|
||||
.string "IAN, can't you do it alone?$"
|
||||
|
||||
Text_1C33AE:: @ 81C33AE
|
||||
Route21_North_Text_IanRematchIntro:: @ 81C33AE
|
||||
.string "IAN: My sis is still a slob.\n"
|
||||
.string "Help me get her into shape!$"
|
||||
|
||||
Text_1C33E7:: @ 81C33E7
|
||||
Route25_Text_JoeyRematchIntro:: @ 81C33E7
|
||||
.string "I won't lose while I'm here!$"
|
||||
|
||||
Text_1C3404:: @ 81C3404
|
||||
Route25_Text_DanRematchIntro:: @ 81C3404
|
||||
.string "Dad took me to a great party on\n"
|
||||
.string "the S.S. ANNE at VERMILION CITY.$"
|
||||
|
||||
Text_1C3445:: @ 81C3445
|
||||
Route25_Text_FlintRematchIntro:: @ 81C3445
|
||||
.string "I'm a cool guy.\n"
|
||||
.string "I've got a girlfriend!\p"
|
||||
.string "I'll show her how cool I am for\n"
|
||||
.string "sure this time!$"
|
||||
|
||||
Text_1C349C:: @ 81C349C
|
||||
Route25_Text_KelseyRematchIntro:: @ 81C349C
|
||||
.string "Hi!\n"
|
||||
.string "My boyfriend is cool!\l"
|
||||
.string "My conditioning's good today!$"
|
||||
|
||||
Text_1C34D4:: @ 81C34D4
|
||||
Route25_Text_ChadRematchIntro:: @ 81C34D4
|
||||
.string "I had this feeling…\n"
|
||||
.string "I knew I had to battle you again!$"
|
||||
|
||||
Text_1C350A:: @ 81C350A
|
||||
Route25_Text_HaleyRematchIntro:: @ 81C350A
|
||||
.string "My friend has many cute POKéMON.\n"
|
||||
.string "I'm so jealous!$"
|
||||
|
||||
Text_1C353B:: @ 81C353B
|
||||
Route25_Text_FranklinRematchIntro:: @ 81C353B
|
||||
.string "I just trained up on MT. MOON,\n"
|
||||
.string "but I've still got gas in the tank!$"
|
||||
|
||||
Text_1C357E:: @ 81C357E
|
||||
Route25_Text_NobRematchIntro:: @ 81C357E
|
||||
.string "A POKéMANIAC lives on the cape.\n"
|
||||
.string "Have you seen his collection?$"
|
||||
|
||||
Text_1C35BC:: @ 81C35BC
|
||||
Route25_Text_WayneRematchIntro:: @ 81C35BC
|
||||
.string "You're going to see BILL again?\n"
|
||||
.string "First, we battle!$"
|
||||
|
||||
Text_1C35EE:: @ 81C35EE
|
||||
Route24_Text_ShaneRematchIntro:: @ 81C35EE
|
||||
.string "I saw your feat from the grass!$"
|
||||
|
||||
Text_1C360E:: @ 81C360E
|
||||
Route24_Text_EthanRematchIntro:: @ 81C360E
|
||||
.string "Okay!\n"
|
||||
.string "I'll stomp you!$"
|
||||
|
||||
Text_1C3624:: @ 81C3624
|
||||
Route24_Text_ReliRematchIntro:: @ 81C3624
|
||||
.string "You always look so busy…\n"
|
||||
.string "Aren't you getting tired?$"
|
||||
|
||||
Text_1C3657:: @ 81C3657
|
||||
Route24_Text_TimmyRematchIntro:: @ 81C3657
|
||||
.string "You really must love coming to\n"
|
||||
.string "NUGGET BRIDGE.$"
|
||||
|
||||
Text_1C3685:: @ 81C3685
|
||||
Route24_Text_AliRematchIntro:: @ 81C3685
|
||||
.string "The time we battled…\p"
|
||||
.string "Even though I was the second in\n"
|
||||
.string "line, I was the best, wasn't I?$"
|
||||
|
||||
Text_1C36DA:: @ 81C36DA
|
||||
Route24_Text_CaleRematchIntro:: @ 81C36DA
|
||||
.string "People call this the NUGGET\n"
|
||||
.string "BRIDGE!\p"
|
||||
.string "You've already beaten us, so you're\n"
|
||||
|
||||
@@ -2,6 +2,14 @@
|
||||
#define GUARD_METATILE_LABELS_H
|
||||
|
||||
// gTileset_General
|
||||
#define METATILE_General_Plain_Mowed 0x001
|
||||
#define METATILE_General_ThinTreeTop_Grass 0x00A
|
||||
#define METATILE_General_WideTreeTopLeft_Grass 0x00B
|
||||
#define METATILE_General_WideTreeTopRight_Grass 0x00C
|
||||
#define METATILE_General_Plain_Grass 0x00D
|
||||
#define METATILE_General_WideTreeTopLeft_Mowed 0x00E
|
||||
#define METATILE_General_WideTreeTopRight_Mowed 0x00F
|
||||
#define METATILE_General_ThinTreeTop_Mowed 0x013
|
||||
#define METATILE_General_CalmWater 0x12B
|
||||
|
||||
// gTileset_Mart
|
||||
@@ -9,10 +17,31 @@
|
||||
#define METATILE_Mart_CounterMid_Bottom 0x2C0
|
||||
|
||||
// gTileset_PokemonCenter
|
||||
#define METATILE_PokemonCenter_NetworkMachine_ScreenLeft_On 0x35A
|
||||
#define METATILE_PokemonCenter_NetworkMachine_ScreenRight_On 0x35B
|
||||
#define METATILE_PokemonCenter_NetworkMachine_Ruby 0x35D
|
||||
#define METATILE_PokemonCenter_NetworkMachine_Sapphire 0x35F
|
||||
#define METATILE_PokemonCenter_NetworkMachine_ScreenLeft_On 0x35A
|
||||
#define METATILE_PokemonCenter_NetworkMachine_ScreenRight_On 0x35B
|
||||
#define METATILE_PokemonCenter_NetworkMachine_Ruby 0x35D
|
||||
#define METATILE_PokemonCenter_NetworkMachine_Sapphire 0x35F
|
||||
#define METATILE_PokemonCenter_Escalator_Top_Normal 0x2E4
|
||||
#define METATILE_PokemonCenter_Escalator_Top_Transition1 0x317
|
||||
#define METATILE_PokemonCenter_Escalator_Top_Transition2 0x315
|
||||
#define METATILE_PokemonCenter_Escalator_TopNext_Normal 0x2E3
|
||||
#define METATILE_PokemonCenter_Escalator_TopNext_Transition1 0x316
|
||||
#define METATILE_PokemonCenter_Escalator_TopNext_Transition2 0x314
|
||||
#define METATILE_PokemonCenter_Escalator_TopNextRail_Normal 0x2EB
|
||||
#define METATILE_PokemonCenter_Escalator_TopNextRail_Transition1 0x31E
|
||||
#define METATILE_PokemonCenter_Escalator_TopNextRail_Transition2 0x31C
|
||||
#define METATILE_PokemonCenter_Escalator_Bottom_Normal 0x2D9
|
||||
#define METATILE_PokemonCenter_Escalator_Bottom_Transition1 0x313
|
||||
#define METATILE_PokemonCenter_Escalator_Bottom_Transition2 0x311
|
||||
#define METATILE_PokemonCenter_Escalator_BottomRail_Normal 0x2D1
|
||||
#define METATILE_PokemonCenter_Escalator_BottomRail_Transition1 0x30B
|
||||
#define METATILE_PokemonCenter_Escalator_BottomRail_Transition2 0x309
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNext_Normal 0x2D8
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNext_Transition1 0x312
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNext_Transition2 0x310
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNextRail_Normal 0x2D0
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNextRail_Transition1 0x30A
|
||||
#define METATILE_PokemonCenter_Escalator_BottomNextRail_Transition2 0x308
|
||||
|
||||
// gTileset_VermilionGym
|
||||
#define METATILE_VermilionGym_Floor 0x281
|
||||
@@ -45,6 +74,18 @@
|
||||
#define METATILE_VermilionGym_Beam_Node_BottomRight_Edge_HalfOn 0x2C6
|
||||
#define METATILE_VermilionGym_Beam_Node_BottomRight_HalfOn 0x2C7
|
||||
|
||||
// gTileset_SeaCottage
|
||||
#define METATILE_SeaCottage_Teleporter_Light_Green 0x28A
|
||||
#define METATILE_SeaCottage_Teleporter_Light_Yellow 0x2B5
|
||||
#define METATILE_SeaCottage_Teleporter_Light_Red 0x2B6
|
||||
#define METATILE_SeaCottage_Teleporter_Cable_Top 0x285
|
||||
#define METATILE_SeaCottage_Teleporter_Cable_Bottom 0x2B4
|
||||
#define METATILE_SeaCottage_Teleporter_CableBall_Top 0x2B9
|
||||
#define METATILE_SeaCottage_Teleporter_CableBall_Bottom 0x2BA
|
||||
#define METATILE_SeaCottage_Teleporter_Door 0x296
|
||||
#define METATILE_SeaCottage_Teleporter_Door_HalfGlowing 0x2B7
|
||||
#define METATILE_SeaCottage_Teleporter_Door_FullGlowing 0x2B8
|
||||
|
||||
// gTileset_GameCorner
|
||||
#define METATILE_GameCorner_Floor_ShadeFull 0x292
|
||||
#define METATILE_GameCorner_Floor_StairsTop 0x29D
|
||||
@@ -133,4 +174,20 @@
|
||||
#define METATILE_TrainerTower_Floor_ShadeBottomLeft 0x287
|
||||
#define METATILE_TrainerTower_CounterBarrier 0x2B4
|
||||
|
||||
// gTileset_ViridianForest
|
||||
#define METATILE_ViridianForest_HugeTreeTopMiddle_Grass 0x284
|
||||
#define METATILE_ViridianForest_HugeTreeTopMiddle_Mowed 0x281
|
||||
|
||||
// gTileset_CeladonCity
|
||||
#define METATILE_CeladonCity_CyclingRoad_Grass 0x352
|
||||
#define METATILE_CeladonCity_CyclingRoad_Mowed 0x33E
|
||||
|
||||
// gTileset_FuchsiaCity
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopLeft_Grass 0x300
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopMiddle_Grass 0x301
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopRight_Grass 0x302
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopLeft_Mowed 0x310
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopMiddle_Mowed 0x311
|
||||
#define METATILE_FuchsiaCity_SafariZoneTreeTopRight_Mowed 0x312
|
||||
|
||||
#endif // GUARD_METATILE_LABELS_H
|
||||
|
||||
@@ -117,6 +117,8 @@ bool32 RfuUnionObjectIsInvisible(u8 objectEventId);
|
||||
void RfuUnionObjectStartWarp(u8 objectEventId, u8 animNo);
|
||||
bool32 RfuUnionObjectIsWarping(u8 objectEventId);
|
||||
|
||||
void sub_805F378(s16 x, s16 y);
|
||||
|
||||
// Exported data declarations
|
||||
|
||||
extern const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[];
|
||||
@@ -124,5 +126,7 @@ extern const struct SpritePalette gUnknown_83A5348;
|
||||
extern const struct SpriteTemplate * const gFieldEffectObjectTemplatePointers[];
|
||||
extern const struct OamData gObjectEventBaseOam_32x32;
|
||||
extern const struct UCoords16 gUnknown_83A64C8[];
|
||||
extern const u16 gUnknown_8398648[];
|
||||
extern const u16 gUnknown_8398688[];
|
||||
|
||||
#endif // GUARD_EVENT_OBJECT_MOVEMENT_H
|
||||
|
||||
@@ -1201,4 +1201,7 @@ extern const u8 Text_MonSentToBoxBillsBoxFull[];
|
||||
|
||||
extern const u8 EventScript_BagItemCanBeRegistered[];
|
||||
|
||||
// fldeff_cut
|
||||
extern const u8 EventScript_FldEffCut[];
|
||||
|
||||
#endif //GUARD_EVENT_SCRIPTS_H
|
||||
|
||||
@@ -25,5 +25,7 @@ bool8 ShouldShowBoxWasFullMessage(void);
|
||||
u16 GetHiddenItemAttr(u32 hiddenItem, u8 attr);
|
||||
u8 GetUnlockedSeviiAreas(void);
|
||||
u32 GetPlayerTrainerId(void);
|
||||
bool8 CutMoveRuinValleyCheck(void);
|
||||
void CutMoveOpenDottedHoleDoor(void);
|
||||
|
||||
#endif // GUARD_FIELD_SPECIALS_H
|
||||
|
||||
+3
-2
@@ -19,6 +19,7 @@ u32 MapGridGetMetatileBehaviorAt(int, int);
|
||||
u8 MapGridGetMetatileLayerTypeAt(s16 x, s16 y);
|
||||
void MapGridSetMetatileIdAt(int, int, u16);
|
||||
void MapGridSetMetatileEntryAt(int, int, u16);
|
||||
u8 MapGridGetZCoordAt(s32 x, s32 y);
|
||||
void GetCameraCoords(u16*, u16*);
|
||||
bool8 MapGridIsImpassableAt(s32, s32);
|
||||
s32 GetMapBorderIdAt(s32, s32);
|
||||
@@ -29,8 +30,8 @@ struct MapConnection * GetMapConnectionAtPos(s16 x, s16 y);
|
||||
void sub_8059948(u8 a0, u8 a1);
|
||||
|
||||
void save_serialize_map(void);
|
||||
u32 sub_8058F1C(u32 original, u8 bit);
|
||||
u32 sub_8058F48(s16 x, s16 y, u8 z);
|
||||
u32 GetMetatileAttributeFromRawMetatileBehavior(u32 original, u8 bit);
|
||||
u32 MapGridGetMetatileAttributeAt(s16 x, s16 y, u8 attr);
|
||||
void MapGridSetMetatileImpassabilityAt(s32 x, s32 y, bool32 arg2);
|
||||
|
||||
#endif //GUARD_FIELDMAP_H
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ gTasks[taskId].data[9] = (u32)func;
|
||||
extern struct MapPosition gPlayerFacingPosition;
|
||||
|
||||
bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId);
|
||||
u8 oei_task_add(void);
|
||||
u8 CreateFieldEffectShowMon(void);
|
||||
|
||||
// flash
|
||||
u8 sub_80C9DCC(u8 lightLevel, u8 mapType);
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
|
||||
#define OBJECT_EVENTS_COUNT 16
|
||||
|
||||
#define METATILE_COLLISION_MASK 0x0C00
|
||||
|
||||
enum
|
||||
{
|
||||
CONNECTION_SOUTH = 1,
|
||||
@@ -15,6 +17,8 @@ enum
|
||||
|
||||
typedef void (*TilesetCB)(void);
|
||||
|
||||
#define METATILE_ID(tileset, name) (METATILE_##tileset##_##name)
|
||||
|
||||
struct Tileset
|
||||
{
|
||||
/*0x00*/ bool8 isCompressed;
|
||||
|
||||
@@ -114,7 +114,7 @@ bool8 MetatileBehavior_UnusedReturnFalse_10(u8 metatileBehavior);
|
||||
bool8 MetatileBehavior_UnusedReturnFalse_11(u8 metatileBehavior);
|
||||
bool8 MetatileBehavior_UnusedReturnFalse_12(u8 metatileBehavior);
|
||||
bool8 MetatileBehavior_UnusedReturnFalse_13(u8 metatileBehavior);
|
||||
bool8 sub_805A2BC(u8 metatileBehavior, u8 playerDirection);
|
||||
bool8 TestMetatileAttributeBit(u8 attr, u8 bitmask);
|
||||
bool8 MetatileBehavior_UnusedIsSpinRight(u8 metatileBehavior);
|
||||
bool8 MetatileBehavior_UnusedIsSpinLeft(u8 metatileBehavior);
|
||||
bool8 MetatileBehavior_UnusedIsSpinUp(u8 metatileBehavior);
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
#ifndef GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
|
||||
#define GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
|
||||
|
||||
#include "global.h"
|
||||
|
||||
void sub_809C448(u8 a0);
|
||||
void sub_809C460(void);
|
||||
bool8 sub_809C474(void);
|
||||
void sub_809C4A8(void);
|
||||
void sub_809C5FC(void);
|
||||
|
||||
#endif // GUARD_SEA_COTTAGE_SPECIAL_ANIM_H
|
||||
@@ -0,0 +1,10 @@
|
||||
#ifndef GUARD_SPECIAL_FIELD_ANIM_H
|
||||
#define GUARD_SPECIAL_FIELD_ANIM_H
|
||||
|
||||
#include "global.h"
|
||||
|
||||
void StartEscalator(u8 a0);
|
||||
void StopEscalator(void);
|
||||
bool8 IsEscalatorMoving(void);
|
||||
|
||||
#endif // GUARD_SPECIAL_FIELD_ANIM_H
|
||||
+4
-4
@@ -131,14 +131,14 @@ SECTIONS {
|
||||
asm/pokemon_storage_system.o(.text);
|
||||
src/pokemon_icon.o(.text);
|
||||
src/script_movement.o(.text);
|
||||
asm/fldeff_cut.o(.text);
|
||||
src/fldeff_cut.o(.text);
|
||||
src/mail_data.o(.text);
|
||||
src/map_name_popup.o(.text);
|
||||
src/item_menu_icons.o(.text);
|
||||
src/battle_anim_mon_movement.o(.text);
|
||||
src/item.o(.text);
|
||||
src/shop.o(.text);
|
||||
src/sea_cottage_special_anim.o(.text);
|
||||
src/special_field_anim.o(.text);
|
||||
src/berry.o(.text);
|
||||
src/script_menu.o(.text);
|
||||
asm/naming_screen.o(.text);
|
||||
@@ -449,13 +449,13 @@ SECTIONS {
|
||||
src/trainer_card.o(.rodata);
|
||||
data/pokemon_storage_system.o(.rodata);
|
||||
src/pokemon_icon.o(.rodata);
|
||||
data/fldeff_cut.o(.rodata);
|
||||
src/fldeff_cut.o(.rodata);
|
||||
src/map_name_popup.o(.rodata);
|
||||
src/item_menu_icons.o(.rodata);
|
||||
src/battle_anim_mon_movement.o(.rodata);
|
||||
src/item.o(.rodata);
|
||||
src/shop.o(.rodata);
|
||||
src/sea_cottage_special_anim.o(.rodata);
|
||||
src/special_field_anim.o(.rodata);
|
||||
src/berry.o(.rodata);
|
||||
src/script_menu.o(.rodata);
|
||||
data/naming_screen.o(.rodata);
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "event_object_lock.h"
|
||||
#include "start_menu.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/event_object_movement.h"
|
||||
|
||||
static void sub_807DF4C(u8 a0);
|
||||
static void sub_807DFBC(u8 taskId);
|
||||
@@ -348,7 +349,7 @@ static void sub_807DFBC(u8 taskId)
|
||||
{
|
||||
PlayerGetDestCoords(&task->data[12], &task->data[13]);
|
||||
sub_807DCB0(TRUE);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], 16);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN);
|
||||
task->data[0] = 8;
|
||||
}
|
||||
break;
|
||||
@@ -372,7 +373,7 @@ static void sub_807DFBC(u8 taskId)
|
||||
if (sub_807E418())
|
||||
{
|
||||
sub_807DCB0(TRUE);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], 16);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_DOWN);
|
||||
task->data[0] = 2;
|
||||
}
|
||||
break;
|
||||
@@ -752,7 +753,7 @@ static void sub_807E80C(u8 taskId)
|
||||
if (task->data[1] < 0 || gTasks[task->data[1]].isActive != TRUE)
|
||||
{
|
||||
ObjectEventClearAnimIfSpecialAnimActive(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)]);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], 17);
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[GetObjectEventIdByLocalIdAndMap(0xFF, 0, 0)], MOVEMENT_ACTION_WALK_NORMAL_UP);
|
||||
task->data[0] = 2;
|
||||
}
|
||||
break;
|
||||
|
||||
+50
-50
@@ -16,37 +16,37 @@ struct ConnectionFlags
|
||||
};
|
||||
|
||||
static void InitMapLayoutData(struct MapHeader *mapHeader);
|
||||
void map_copy_with_padding(u16 *map, u16 width, u16 height);
|
||||
void mapheader_copy_mapdata_of_adjacent_maps(struct MapHeader *mapHeader);
|
||||
void fillSouthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
void fillNorthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
void fillWestConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
void fillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
void LoadSavedMapView(void);
|
||||
struct MapConnection *sub_8059600(u8 direction, s32 x, s32 y);
|
||||
bool8 sub_8059658(u8 direction, s32 x, s32 y, struct MapConnection *connection);
|
||||
bool8 sub_80596BC(s32 x, s32 src_width, s32 dest_width, s32 offset);
|
||||
static void map_copy_with_padding(u16 *map, u16 width, u16 height);
|
||||
static void mapheader_copy_mapdata_of_adjacent_maps(struct MapHeader *mapHeader);
|
||||
static void fillSouthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
static void fillNorthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
static void fillWestConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
static void fillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset);
|
||||
static void LoadSavedMapView(void);
|
||||
static struct MapConnection *sub_8059600(u8 direction, s32 x, s32 y);
|
||||
static bool8 sub_8059658(u8 direction, s32 x, s32 y, struct MapConnection *connection);
|
||||
static bool8 sub_80596BC(s32 x, s32 src_width, s32 dest_width, s32 offset);
|
||||
|
||||
struct BackupMapLayout VMap;
|
||||
EWRAM_DATA u16 gBackupMapLayout[VIRTUAL_MAP_SIZE] = {};
|
||||
static EWRAM_DATA u16 gBackupMapLayout[VIRTUAL_MAP_SIZE] = {};
|
||||
EWRAM_DATA struct MapHeader gMapHeader = {};
|
||||
EWRAM_DATA struct Camera gCamera = {};
|
||||
EWRAM_DATA struct ConnectionFlags gMapConnectionFlags = {};
|
||||
static EWRAM_DATA struct ConnectionFlags gMapConnectionFlags = {};
|
||||
|
||||
const struct ConnectionFlags sDummyConnectionFlags = {};
|
||||
static const struct ConnectionFlags sDummyConnectionFlags = {};
|
||||
|
||||
const u32 gUnknown_8352EF0[] = {
|
||||
0x1ff,
|
||||
0x3e00,
|
||||
0x3c000,
|
||||
0xfc0000,
|
||||
0x7000000,
|
||||
static const u32 sMetatileAttrMasks[] = {
|
||||
0x000001ff,
|
||||
0x00003e00,
|
||||
0x0003c000,
|
||||
0x00fc0000,
|
||||
0x07000000,
|
||||
0x18000000,
|
||||
0x60000000,
|
||||
0x80000000
|
||||
};
|
||||
|
||||
const u8 gUnknown_8352F10[] = {
|
||||
static const u8 sMetatileAttrShifts[] = {
|
||||
0,
|
||||
9,
|
||||
14,
|
||||
@@ -87,7 +87,7 @@ static void InitMapLayoutData(struct MapHeader * mapHeader)
|
||||
mapheader_copy_mapdata_of_adjacent_maps(mapHeader);
|
||||
}
|
||||
|
||||
void map_copy_with_padding(u16 *map, u16 width, u16 height)
|
||||
static void map_copy_with_padding(u16 *map, u16 width, u16 height)
|
||||
{
|
||||
s32 y;
|
||||
u16 *dest = VMap.map;
|
||||
@@ -101,7 +101,7 @@ void map_copy_with_padding(u16 *map, u16 width, u16 height)
|
||||
}
|
||||
}
|
||||
|
||||
void mapheader_copy_mapdata_of_adjacent_maps(struct MapHeader *mapHeader)
|
||||
static void mapheader_copy_mapdata_of_adjacent_maps(struct MapHeader *mapHeader)
|
||||
{
|
||||
s32 count;
|
||||
struct MapConnection *connection;
|
||||
@@ -147,7 +147,7 @@ void mapheader_copy_mapdata_of_adjacent_maps(struct MapHeader *mapHeader)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8058B54(s32 x, s32 y, const struct MapHeader *connectedMapHeader, s32 x2, s32 y2, s32 width, s32 height)
|
||||
static void sub_8058B54(s32 x, s32 y, const struct MapHeader *connectedMapHeader, s32 x2, s32 y2, s32 width, s32 height)
|
||||
{
|
||||
s32 i;
|
||||
u16 *src;
|
||||
@@ -166,7 +166,7 @@ void sub_8058B54(s32 x, s32 y, const struct MapHeader *connectedMapHeader, s32 x
|
||||
}
|
||||
}
|
||||
|
||||
void fillSouthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
static void fillSouthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
{
|
||||
s32 x, y;
|
||||
s32 x2;
|
||||
@@ -213,7 +213,7 @@ void fillSouthConnection(struct MapHeader const *mapHeader, struct MapHeader con
|
||||
}
|
||||
}
|
||||
|
||||
void fillNorthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
static void fillNorthConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
{
|
||||
s32 x;
|
||||
s32 x2, y2;
|
||||
@@ -262,7 +262,7 @@ void fillNorthConnection(struct MapHeader const *mapHeader, struct MapHeader con
|
||||
}
|
||||
}
|
||||
|
||||
void fillWestConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
static void fillWestConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
{
|
||||
s32 y;
|
||||
s32 x2, y2;
|
||||
@@ -308,7 +308,7 @@ void fillWestConnection(struct MapHeader const *mapHeader, struct MapHeader cons
|
||||
}
|
||||
}
|
||||
|
||||
void fillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
static void fillEastConnection(struct MapHeader const *mapHeader, struct MapHeader const *connectedMapHeader, s32 offset)
|
||||
{
|
||||
s32 x, y;
|
||||
s32 y2;
|
||||
@@ -443,28 +443,28 @@ u32 MapGridGetMetatileIdAt(s32 x, s32 y)
|
||||
return block & 0x3FF;
|
||||
}
|
||||
|
||||
u32 sub_8058F1C(u32 original, u8 bit)
|
||||
u32 GetMetatileAttributeFromRawMetatileBehavior(u32 original, u8 bit)
|
||||
{
|
||||
if (bit >= 8)
|
||||
return original;
|
||||
|
||||
return (original & gUnknown_8352EF0[bit]) >> gUnknown_8352F10[bit];
|
||||
return (original & sMetatileAttrMasks[bit]) >> sMetatileAttrShifts[bit];
|
||||
}
|
||||
|
||||
u32 sub_8058F48(s16 x, s16 y, u8 z)
|
||||
u32 MapGridGetMetatileAttributeAt(s16 x, s16 y, u8 attr)
|
||||
{
|
||||
u16 metatileId = MapGridGetMetatileIdAt(x, y);
|
||||
return GetBehaviorByMetatileIdAndMapLayout(gMapHeader.mapLayout, metatileId, z);
|
||||
return GetBehaviorByMetatileIdAndMapLayout(gMapHeader.mapLayout, metatileId, attr);
|
||||
}
|
||||
|
||||
u32 MapGridGetMetatileBehaviorAt(s32 x, s32 y)
|
||||
{
|
||||
return sub_8058F48(x, y, 0);
|
||||
return MapGridGetMetatileAttributeAt(x, y, 0);
|
||||
}
|
||||
|
||||
u8 MapGridGetMetatileLayerTypeAt(s16 x, s16 y)
|
||||
{
|
||||
return sub_8058F48(x, y, 6);
|
||||
return MapGridGetMetatileAttributeAt(x, y, 6);
|
||||
}
|
||||
|
||||
void MapGridSetMetatileIdAt(s32 x, s32 y, u16 metatile)
|
||||
@@ -512,12 +512,12 @@ u32 GetBehaviorByMetatileIdAndMapLayout(struct MapLayout *mapLayout, u16 metatil
|
||||
if (metatile < NUM_METATILES_IN_PRIMARY)
|
||||
{
|
||||
attributes = mapLayout->primaryTileset->metatileAttributes;
|
||||
return sub_8058F1C(attributes[metatile], attr);
|
||||
return GetMetatileAttributeFromRawMetatileBehavior(attributes[metatile], attr);
|
||||
}
|
||||
else if (metatile < 0x400)
|
||||
{
|
||||
attributes = mapLayout->secondaryTileset->metatileAttributes;
|
||||
return sub_8058F1C(attributes[metatile - NUM_METATILES_IN_PRIMARY], attr);
|
||||
return GetMetatileAttributeFromRawMetatileBehavior(attributes[metatile - NUM_METATILES_IN_PRIMARY], attr);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -544,7 +544,7 @@ void save_serialize_map(void)
|
||||
}
|
||||
}
|
||||
|
||||
bool32 SavedMapViewIsEmpty(void)
|
||||
static bool32 SavedMapViewIsEmpty(void)
|
||||
{
|
||||
u16 i;
|
||||
u32 marker = 0;
|
||||
@@ -559,12 +559,12 @@ bool32 SavedMapViewIsEmpty(void)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void ClearSavedMapView(void)
|
||||
static void ClearSavedMapView(void)
|
||||
{
|
||||
CpuFill16(0, gSaveBlock2Ptr->mapView, sizeof(gSaveBlock2Ptr->mapView));
|
||||
}
|
||||
|
||||
void LoadSavedMapView(void)
|
||||
static void LoadSavedMapView(void)
|
||||
{
|
||||
s32 i, j;
|
||||
s32 x, y;
|
||||
@@ -588,7 +588,7 @@ void LoadSavedMapView(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8059250(u8 a1)
|
||||
static void sub_8059250(u8 a1)
|
||||
{
|
||||
s32 width;
|
||||
u16 *mapView;
|
||||
@@ -690,7 +690,7 @@ s32 GetMapBorderIdAt(s32 x, s32 y)
|
||||
return 0;
|
||||
}
|
||||
|
||||
s32 GetPostCameraMoveMapBorderId(s32 x, s32 y)
|
||||
static s32 GetPostCameraMoveMapBorderId(s32 x, s32 y)
|
||||
{
|
||||
return GetMapBorderIdAt(7 + gSaveBlock1Ptr->pos.x + x, 7 + gSaveBlock1Ptr->pos.y + y);
|
||||
}
|
||||
@@ -708,7 +708,7 @@ bool32 CanCameraMoveInDirection(s32 direction)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void sub_80594AC(struct MapConnection *connection, int direction, s32 x, s32 y)
|
||||
static void sub_80594AC(struct MapConnection *connection, int direction, s32 x, s32 y)
|
||||
{
|
||||
struct MapHeader const *mapHeader;
|
||||
mapHeader = mapconnection_get_mapheader(connection);
|
||||
@@ -779,7 +779,7 @@ struct MapConnection *sub_8059600(u8 direction, s32 x, s32 y)
|
||||
|
||||
}
|
||||
|
||||
bool8 sub_8059658(u8 direction, s32 x, s32 y, struct MapConnection *connection)
|
||||
static bool8 sub_8059658(u8 direction, s32 x, s32 y, struct MapConnection *connection)
|
||||
{
|
||||
struct MapHeader const *mapHeader;
|
||||
mapHeader = mapconnection_get_mapheader(connection);
|
||||
@@ -795,7 +795,7 @@ bool8 sub_8059658(u8 direction, s32 x, s32 y, struct MapConnection *connection)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 sub_80596BC(s32 x, s32 src_width, s32 dest_width, s32 offset)
|
||||
static bool8 sub_80596BC(s32 x, s32 src_width, s32 dest_width, s32 offset)
|
||||
{
|
||||
s32 offset2 = max(offset, 0);
|
||||
|
||||
@@ -808,7 +808,7 @@ bool8 sub_80596BC(s32 x, s32 src_width, s32 dest_width, s32 offset)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool32 sub_80596E8(s32 x, s32 width)
|
||||
static bool32 sub_80596E8(s32 x, s32 width)
|
||||
{
|
||||
if (x >= 0 && x < width)
|
||||
return TRUE;
|
||||
@@ -816,7 +816,7 @@ bool32 sub_80596E8(s32 x, s32 width)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
s32 sub_80596FC(struct MapConnection *connection, s32 x, s32 y)
|
||||
static s32 sub_80596FC(struct MapConnection *connection, s32 x, s32 y)
|
||||
{
|
||||
struct MapHeader const *mapHeader;
|
||||
mapHeader = mapconnection_get_mapheader(connection);
|
||||
@@ -878,7 +878,7 @@ void GetCameraFocusCoords(u16 *x, u16 *y)
|
||||
*y = gSaveBlock1Ptr->pos.y + 7;
|
||||
}
|
||||
|
||||
void SetCameraCoords(u16 x, u16 y)
|
||||
static void SetCameraCoords(u16 x, u16 y)
|
||||
{
|
||||
gSaveBlock1Ptr->pos.x = x;
|
||||
gSaveBlock1Ptr->pos.y = y;
|
||||
@@ -889,7 +889,7 @@ void GetCameraCoords(u16 *x, u16 *y)
|
||||
*x = gSaveBlock1Ptr->pos.x;
|
||||
*y = gSaveBlock1Ptr->pos.y;
|
||||
}
|
||||
void copy_tileset_patterns_to_vram(struct Tileset const *tileset, u16 numTiles, u16 offset)
|
||||
static void copy_tileset_patterns_to_vram(struct Tileset const *tileset, u16 numTiles, u16 offset)
|
||||
{
|
||||
if (tileset)
|
||||
{
|
||||
@@ -900,7 +900,7 @@ void copy_tileset_patterns_to_vram(struct Tileset const *tileset, u16 numTiles,
|
||||
}
|
||||
}
|
||||
|
||||
void copy_tileset_patterns_to_vram2(struct Tileset const *tileset, u16 numTiles, u16 offset)
|
||||
static void copy_tileset_patterns_to_vram2(struct Tileset const *tileset, u16 numTiles, u16 offset)
|
||||
{
|
||||
if (tileset)
|
||||
{
|
||||
@@ -911,7 +911,7 @@ void copy_tileset_patterns_to_vram2(struct Tileset const *tileset, u16 numTiles,
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80598CC(u16 a0, u16 a1)
|
||||
static void sub_80598CC(u16 a0, u16 a1)
|
||||
{
|
||||
switch (gUnknown_2036E28)
|
||||
{
|
||||
@@ -955,7 +955,7 @@ void sub_8059948(u8 a0, u8 a1)
|
||||
CpuFastCopy(gPlttBufferUnfaded + a0 * 16, gPlttBufferFaded + a0 * 16, a1 * 16 * sizeof(u16));
|
||||
}
|
||||
|
||||
void apply_map_tileset_palette(struct Tileset const *tileset, u16 destOffset, u16 size)
|
||||
static void apply_map_tileset_palette(struct Tileset const *tileset, u16 destOffset, u16 size)
|
||||
{
|
||||
u16 black = RGB_BLACK;
|
||||
|
||||
|
||||
@@ -0,0 +1,299 @@
|
||||
#include "global.h"
|
||||
#include "gflib.h"
|
||||
#include "event_object_lock.h"
|
||||
#include "event_object_movement.h"
|
||||
#include "event_scripts.h"
|
||||
#include "fieldmap.h"
|
||||
#include "field_camera.h"
|
||||
#include "field_specials.h"
|
||||
#include "fldeff.h"
|
||||
#include "field_effect.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "metatile_behavior.h"
|
||||
#include "overworld.h"
|
||||
#include "party_menu.h"
|
||||
#include "script.h"
|
||||
#include "trig.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/metatile_labels.h"
|
||||
|
||||
#define CUT_GRASS_SPRITE_COUNT 8
|
||||
|
||||
static EWRAM_DATA u8 *sCutGrassSpriteArrayPtr = NULL;
|
||||
static EWRAM_DATA bool8 sScheduleOpenDottedHole = FALSE;
|
||||
|
||||
static void FieldCallback_CutGrass(void);
|
||||
static void FieldCallback_CutTree(void);
|
||||
static void FieldMoveCallback_CutGrass(void);
|
||||
static void SetCutGrassMetatileAt(s16 x, s16 y);
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite * sprite);
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite * sprite);
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite * sprite);
|
||||
static void FieldMoveCallback_CutTree(void);
|
||||
|
||||
static const u16 sCutGrassMetatileMapping[][2] = {
|
||||
{
|
||||
METATILE_ID(General, Plain_Grass),
|
||||
METATILE_ID(General, Plain_Mowed)
|
||||
}, {
|
||||
METATILE_ID(General, ThinTreeTop_Grass),
|
||||
METATILE_ID(General, ThinTreeTop_Mowed)
|
||||
}, {
|
||||
METATILE_ID(General, WideTreeTopLeft_Grass),
|
||||
METATILE_ID(General, WideTreeTopLeft_Mowed)
|
||||
}, {
|
||||
METATILE_ID(General, WideTreeTopRight_Grass),
|
||||
METATILE_ID(General, WideTreeTopRight_Mowed)
|
||||
}, {
|
||||
METATILE_ID(CeladonCity, CyclingRoad_Grass),
|
||||
METATILE_ID(CeladonCity, CyclingRoad_Mowed)
|
||||
}, {
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopLeft_Grass),
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopLeft_Mowed)
|
||||
}, {
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopMiddle_Grass),
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopMiddle_Mowed)
|
||||
}, {
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopRight_Grass),
|
||||
METATILE_ID(FuchsiaCity, SafariZoneTreeTopRight_Mowed)
|
||||
}, {
|
||||
METATILE_ID(ViridianForest, HugeTreeTopMiddle_Grass),
|
||||
METATILE_ID(ViridianForest, HugeTreeTopMiddle_Mowed)
|
||||
}, {
|
||||
0xffff,
|
||||
0xffff
|
||||
}
|
||||
};
|
||||
|
||||
static const struct OamData sOamData_FldEff_CutGrass = {
|
||||
.y = 0,
|
||||
.affineMode = ST_OAM_AFFINE_OFF,
|
||||
.objMode = ST_OAM_OBJ_NORMAL,
|
||||
.mosaic = FALSE,
|
||||
.bpp = ST_OAM_4BPP,
|
||||
.shape = SPRITE_SHAPE(8x8),
|
||||
.x = 0,
|
||||
.matrixNum = 0,
|
||||
.size = SPRITE_SIZE(8x8),
|
||||
.tileNum = 0x001,
|
||||
.priority = 1,
|
||||
.paletteNum = 0x1,
|
||||
.affineParam = 0
|
||||
};
|
||||
|
||||
static const union AnimCmd sSpriteAnim_Fldeff_CutGrass_0[] = {
|
||||
ANIMCMD_FRAME(0, 30),
|
||||
ANIMCMD_JUMP(0)
|
||||
};
|
||||
|
||||
static const union AnimCmd *const sSpriteAnimTable_FldEff_CutGrass[] = {
|
||||
sSpriteAnim_Fldeff_CutGrass_0
|
||||
};
|
||||
|
||||
static const struct SpriteFrameImage sSpriteFrameImages_FldEff_CutGrass[] = {
|
||||
{gUnknown_8398648, 0x20}
|
||||
};
|
||||
|
||||
const struct SpritePalette gFldEffPalette_CutGrass[] = {
|
||||
gUnknown_8398688, 4096
|
||||
};
|
||||
|
||||
static const struct SpriteTemplate sSpriteTemplate_FldEff_CutGrass = {
|
||||
.tileTag = 0xFFFF,
|
||||
.paletteTag = 4096,
|
||||
.oam = &sOamData_FldEff_CutGrass,
|
||||
.anims = sSpriteAnimTable_FldEff_CutGrass,
|
||||
.images = sSpriteFrameImages_FldEff_CutGrass,
|
||||
.affineAnims = gDummySpriteAffineAnimTable,
|
||||
.callback = SpriteCallback_CutGrass_Init
|
||||
};
|
||||
|
||||
static u8 MetatileAtCoordsIsGrassTile(s16 x, s16 y)
|
||||
{
|
||||
return TestMetatileAttributeBit(MapGridGetMetatileAttributeAt(x, y, 1), 1);
|
||||
}
|
||||
|
||||
bool8 SetUpFieldMove_Cut(void)
|
||||
{
|
||||
s16 x, y;
|
||||
u8 i, j;
|
||||
sScheduleOpenDottedHole = FALSE;
|
||||
if (CutMoveRuinValleyCheck() == TRUE)
|
||||
{
|
||||
sScheduleOpenDottedHole = TRUE;
|
||||
gFieldCallback2 = FieldCallback_PrepareFadeInFromMenu;
|
||||
gPostMenuFieldCallback = FieldCallback_CutGrass;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
if (CheckObjectGraphicsInFrontOfPlayer(OBJ_EVENT_GFX_CUT_TREE) == TRUE)
|
||||
{
|
||||
gFieldCallback2 = FieldCallback_PrepareFadeInFromMenu;
|
||||
gPostMenuFieldCallback = FieldCallback_CutTree;
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
// FIXME: this fakematch
|
||||
register s32 neg1 asm("r8");
|
||||
struct MapPosition *pos;
|
||||
PlayerGetDestCoords(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y);
|
||||
|
||||
for (i = 0, pos = &gPlayerFacingPosition, neg1 = 0xFFFF; i < 3; i++)
|
||||
{
|
||||
|
||||
y = i + neg1 + pos->y;
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
x = j + neg1 + pos->x;
|
||||
if (MapGridGetZCoordAt(x, y) == pos->height)
|
||||
{
|
||||
if (MetatileAtCoordsIsGrassTile(x, y) == TRUE)
|
||||
{
|
||||
gFieldCallback2 = FieldCallback_PrepareFadeInFromMenu;
|
||||
gPostMenuFieldCallback = FieldCallback_CutGrass;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
static void FieldCallback_CutGrass(void)
|
||||
{
|
||||
FieldEffectStart(FLDEFF_USE_CUT_ON_GRASS);
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
}
|
||||
|
||||
bool8 FldEff_UseCutOnGrass(void)
|
||||
{
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
FLDEFF_SET_FUNC_TO_DATA(FieldMoveCallback_CutGrass);
|
||||
IncrementGameStat(GAME_STAT_USED_CUT);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void FieldCallback_CutTree(void)
|
||||
{
|
||||
gFieldEffectArguments[0] = GetCursorSelectionMonId();
|
||||
ScriptContext1_SetupScript(EventScript_FldEffCut);
|
||||
}
|
||||
|
||||
bool8 FldEff_UseCutOnTree(void)
|
||||
{
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
FLDEFF_SET_FUNC_TO_DATA(FieldMoveCallback_CutTree);
|
||||
IncrementGameStat(GAME_STAT_USED_CUT);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void FieldMoveCallback_CutGrass(void)
|
||||
{
|
||||
FieldEffectActiveListRemove(FLDEFF_USE_CUT_ON_GRASS);
|
||||
if (sScheduleOpenDottedHole == TRUE)
|
||||
CutMoveOpenDottedHoleDoor();
|
||||
else
|
||||
FieldEffectStart(FLDEFF_CUT_GRASS);
|
||||
}
|
||||
|
||||
bool8 FldEff_CutGrass(void)
|
||||
{
|
||||
u8 i, j;
|
||||
s16 x, y;
|
||||
// FIXME: this fakematch
|
||||
register s32 neg1 asm("r9");
|
||||
struct MapPosition *pos;
|
||||
|
||||
i = 0;
|
||||
PlaySE(SE_W015);
|
||||
PlayerGetDestCoords(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y);
|
||||
|
||||
for (i = 0, pos = &gPlayerFacingPosition, neg1 = 0xFFFF; i < 3; i++)
|
||||
{
|
||||
|
||||
y = i + neg1 + pos->y;
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
x = j + neg1 + pos->x;
|
||||
if (MapGridGetZCoordAt(x, y) == pos->height)
|
||||
{
|
||||
if (MetatileAtCoordsIsGrassTile(x, y) == TRUE)
|
||||
{
|
||||
SetCutGrassMetatileAt(x, y);
|
||||
sub_805F378(x, y);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
DrawWholeMapView();
|
||||
sCutGrassSpriteArrayPtr = Alloc(CUT_GRASS_SPRITE_COUNT);
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
sCutGrassSpriteArrayPtr[i] = CreateSprite(&sSpriteTemplate_FldEff_CutGrass, gSprites[gPlayerAvatar.spriteId].oam.x + 8, gSprites[gPlayerAvatar.spriteId].oam.y + 20, 0);
|
||||
gSprites[sCutGrassSpriteArrayPtr[i]].data[2] = i * (0x100 / CUT_GRASS_SPRITE_COUNT);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static void SetCutGrassMetatileAt(s16 x, s16 y)
|
||||
{
|
||||
u16 i = 0;
|
||||
u16 metatileId = MapGridGetMetatileIdAt(x, y);
|
||||
while (1)
|
||||
{
|
||||
if (sCutGrassMetatileMapping[i][0] == 0xFFFF)
|
||||
return;
|
||||
if (sCutGrassMetatileMapping[i][0] == metatileId)
|
||||
{
|
||||
MapGridSetMetatileIdAt(x, y, sCutGrassMetatileMapping[i][1]);
|
||||
break;
|
||||
}
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Init(struct Sprite * sprite)
|
||||
{
|
||||
sprite->data[0] = 8;
|
||||
sprite->data[1] = 0;
|
||||
sprite->data[3] = 0;
|
||||
sprite->callback = SpriteCallback_CutGrass_Run;
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Run(struct Sprite * sprite)
|
||||
{
|
||||
sprite->pos2.x = Sin(sprite->data[2], sprite->data[0]);
|
||||
sprite->pos2.y = Cos(sprite->data[2], sprite->data[0]);
|
||||
sprite->data[2] += 8;
|
||||
sprite->data[2] &= 0xFF;
|
||||
sprite->data[0]++;
|
||||
sprite->data[0] += sprite->data[3] >> 2;
|
||||
sprite->data[3]++;
|
||||
if (sprite->data[1] != 28)
|
||||
sprite->data[1]++;
|
||||
else
|
||||
sprite->callback = SpriteCallback_CutGrass_Cleanup;
|
||||
}
|
||||
|
||||
static void SpriteCallback_CutGrass_Cleanup(struct Sprite * sprite)
|
||||
{
|
||||
u8 i;
|
||||
for (i = 1; i < CUT_GRASS_SPRITE_COUNT; i++)
|
||||
{
|
||||
DestroySprite(&gSprites[sCutGrassSpriteArrayPtr[i]]);
|
||||
}
|
||||
FieldEffectStop(&gSprites[sCutGrassSpriteArrayPtr[0]], FLDEFF_CUT_GRASS);
|
||||
Free(sCutGrassSpriteArrayPtr);
|
||||
sub_80696C0();
|
||||
ScriptContext2_Disable();
|
||||
}
|
||||
|
||||
static void FieldMoveCallback_CutTree(void)
|
||||
{
|
||||
PlaySE(SE_W015);
|
||||
FieldEffectActiveListRemove(FLDEFF_USE_CUT_ON_TREE);
|
||||
EnableBothScriptContexts();
|
||||
}
|
||||
+1
-1
@@ -29,7 +29,7 @@ static void FieldCallback_Dig(void)
|
||||
|
||||
bool8 FldEff_UseDig(void)
|
||||
{
|
||||
u8 taskId = oei_task_add();
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
|
||||
FLDEFF_SET_FUNC_TO_DATA(sub_80C9AFC);
|
||||
SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_ON_FOOT);
|
||||
|
||||
+23
-21
@@ -12,12 +12,13 @@
|
||||
#include "event_object_movement.h"
|
||||
#include "constants/songs.h"
|
||||
#include "constants/event_objects.h"
|
||||
#include "constants/event_object_movement.h"
|
||||
#include "constants/maps.h"
|
||||
|
||||
static void task08_080C9820(u8 taskId);
|
||||
static void sub_80C98FC(u8 taskId);
|
||||
static void sub_80C98B0(u8 taskId);
|
||||
static void sub_80C99A0(u8 taskId);
|
||||
static void Task_FieldEffectShowMon_Init(u8 taskId);
|
||||
static void Task_FieldEffectShowMon_WaitFldeff(u8 taskId);
|
||||
static void Task_FieldEffectShowMon_WaitPlayerAnim(u8 taskId);
|
||||
static void Task_FieldEffectShowMon_Cleanup(u8 taskId);
|
||||
static void sub_80C9A10(void);
|
||||
static void sub_80C9A60(void);
|
||||
|
||||
@@ -36,13 +37,13 @@ bool8 CheckObjectGraphicsInFrontOfPlayer(u8 graphicsId)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
u8 oei_task_add(void)
|
||||
u8 CreateFieldEffectShowMon(void)
|
||||
{
|
||||
GetXYCoordsOneStepInFrontOfPlayer(&gPlayerFacingPosition.x, &gPlayerFacingPosition.y);
|
||||
return CreateTask(task08_080C9820, 8);
|
||||
return CreateTask(Task_FieldEffectShowMon_Init, 8);
|
||||
}
|
||||
|
||||
static void task08_080C9820(u8 taskId)
|
||||
static void Task_FieldEffectShowMon_Init(u8 taskId)
|
||||
{
|
||||
u8 mapObjId;
|
||||
|
||||
@@ -54,48 +55,49 @@ static void task08_080C9820(u8 taskId)
|
||||
{
|
||||
if (gMapHeader.mapType == MAP_TYPE_UNDERWATER)
|
||||
{
|
||||
// Leftover from RS, inhibits the player anim while underwater.
|
||||
FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
|
||||
gTasks[taskId].func = sub_80C98FC;
|
||||
gTasks[taskId].func = Task_FieldEffectShowMon_WaitFldeff;
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_805CB70();
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[mapObjId], 0x45);
|
||||
gTasks[taskId].func = sub_80C98B0;
|
||||
ObjectEventSetHeldMovement(&gObjectEvents[mapObjId], MOVEMENT_ACTION_UNKNOWN_STEP_45);
|
||||
gTasks[taskId].func = Task_FieldEffectShowMon_WaitPlayerAnim;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80C98B0(u8 taskId)
|
||||
static void Task_FieldEffectShowMon_WaitPlayerAnim(u8 taskId)
|
||||
{
|
||||
if (ObjectEventCheckHeldMovementStatus(&gObjectEvents[gPlayerAvatar.objectEventId]) == TRUE)
|
||||
{
|
||||
FieldEffectStart(FLDEFF_FIELD_MOVE_SHOW_MON_INIT);
|
||||
gTasks[taskId].func = sub_80C98FC;
|
||||
gTasks[taskId].func = Task_FieldEffectShowMon_WaitFldeff;
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80C98FC(u8 taskId)
|
||||
static void Task_FieldEffectShowMon_WaitFldeff(u8 taskId)
|
||||
{
|
||||
if (!FieldEffectActiveListContains(FLDEFF_FIELD_MOVE_SHOW_MON))
|
||||
{
|
||||
gFieldEffectArguments[1] = GetPlayerFacingDirection();
|
||||
if (gFieldEffectArguments[1] == 1)
|
||||
if (gFieldEffectArguments[1] == DIR_SOUTH)
|
||||
gFieldEffectArguments[2] = 0;
|
||||
if (gFieldEffectArguments[1] == 2)
|
||||
if (gFieldEffectArguments[1] == DIR_NORTH)
|
||||
gFieldEffectArguments[2] = 1;
|
||||
if (gFieldEffectArguments[1] == 3)
|
||||
if (gFieldEffectArguments[1] == DIR_WEST)
|
||||
gFieldEffectArguments[2] = 2;
|
||||
if (gFieldEffectArguments[1] == 4)
|
||||
if (gFieldEffectArguments[1] == DIR_EAST)
|
||||
gFieldEffectArguments[2] = 3;
|
||||
ObjectEventSetGraphicsId(&gObjectEvents[gPlayerAvatar.objectEventId], GetPlayerAvatarGraphicsIdByCurrentState());
|
||||
StartSpriteAnim(&gSprites[gPlayerAvatar.spriteId], gFieldEffectArguments[2]);
|
||||
FieldEffectActiveListRemove(6);
|
||||
gTasks[taskId].func = sub_80C99A0;
|
||||
FieldEffectActiveListRemove(FLDEFF_FIELD_MOVE_SHOW_MON);
|
||||
gTasks[taskId].func = Task_FieldEffectShowMon_Cleanup;
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_80C99A0(u8 taskId)
|
||||
static void Task_FieldEffectShowMon_Cleanup(u8 taskId)
|
||||
{
|
||||
FLDEFF_CALL_FUNC_IN_DATA();
|
||||
gPlayerAvatar.unk6 = FALSE;
|
||||
@@ -121,7 +123,7 @@ static void sub_80C9A10(void)
|
||||
|
||||
bool8 FldEff_UseRockSmash(void)
|
||||
{
|
||||
u8 taskId = oei_task_add();
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
|
||||
FLDEFF_SET_FUNC_TO_DATA(sub_80C9A60);
|
||||
IncrementGameStat(GAME_STAT_USED_ROCK_SMASH);
|
||||
|
||||
@@ -33,7 +33,7 @@ static void FldEff_UseStrength(void)
|
||||
|
||||
bool8 sub_80D0860(void)
|
||||
{
|
||||
u8 taskId = oei_task_add();
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
FLDEFF_SET_FUNC_TO_DATA(sub_80D08A8);
|
||||
GetMonNickname(&gPlayerParty[gFieldEffectArguments[0]], gStringVar1);
|
||||
return FALSE;
|
||||
|
||||
@@ -43,7 +43,7 @@ bool8 FldEff_SweetScent(void)
|
||||
u8 taskId;
|
||||
|
||||
SetWeatherScreenFadeOut();
|
||||
taskId = oei_task_add();
|
||||
taskId = CreateFieldEffectShowMon();
|
||||
FLDEFF_SET_FUNC_TO_DATA(StartSweetScentFieldEffect);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ static void FieldCallback_Teleport(void)
|
||||
|
||||
bool8 FldEff_UseTeleport(void)
|
||||
{
|
||||
u8 taskId = oei_task_add();
|
||||
u8 taskId = CreateFieldEffectShowMon();
|
||||
FLDEFF_SET_FUNC_TO_DATA(StartTeleportFieldEffect);
|
||||
SetPlayerAvatarTransitionFlags(PLAYER_AVATAR_FLAG_ON_FOOT);
|
||||
return FALSE;
|
||||
|
||||
+7
-34
@@ -16,39 +16,12 @@ static const bool8 sTileSurfable[METATILE_COUNT] = {
|
||||
[MB_SOUTHWARD_CURRENT] = TRUE
|
||||
};
|
||||
|
||||
static const u8 sTileBitAttributes[] = {
|
||||
0x00,
|
||||
0x01,
|
||||
0x02,
|
||||
0x04,
|
||||
0x08,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00
|
||||
static const u8 sTileBitAttributes[32] = {
|
||||
[0] = 0x00,
|
||||
[1] = 0x01,
|
||||
[2] = 0x02,
|
||||
[3] = 0x04,
|
||||
[4] = 0x08,
|
||||
};
|
||||
|
||||
bool8 MetatileBehavior_UnusedReturnTrue(u8 metatileBehavior)
|
||||
@@ -769,7 +742,7 @@ bool8 MetatileBehavior_UnusedReturnFalse_11(u8 metatileBehavior) { return FALSE;
|
||||
bool8 MetatileBehavior_UnusedReturnFalse_12(u8 metatileBehavior) { return FALSE; }
|
||||
bool8 MetatileBehavior_UnusedReturnFalse_13(u8 metatileBehavior) { return FALSE; }
|
||||
|
||||
bool8 sub_805A2BC(u8 arg1, u8 arg2)
|
||||
bool8 TestMetatileAttributeBit(u8 arg1, u8 arg2)
|
||||
{
|
||||
if(sTileBitAttributes[arg1] & arg2)
|
||||
return TRUE;
|
||||
|
||||
+15
-15
@@ -113,7 +113,7 @@ static EWRAM_DATA u16 *gUnknown_203AE90 = NULL;
|
||||
static EWRAM_DATA struct UnkStruct_203AE94 gUnknown_203AE94 = {0};
|
||||
static EWRAM_DATA struct UnkStruct_203AE98 gUnknown_203AE98[32] = {0};
|
||||
static EWRAM_DATA u16 sQuestLogIdx = 0;
|
||||
static EWRAM_DATA u8 gUnknown_203AF9A[64][2] = {{0}};
|
||||
static EWRAM_DATA u8 sMovementScripts[64][2] = {{0}};
|
||||
static EWRAM_DATA u16 gUnknown_203B01A = 0;
|
||||
static EWRAM_DATA u16 gUnknown_203B01C = 0;
|
||||
static EWRAM_DATA u16 sFlagOrVarPlayhead = 0;
|
||||
@@ -1551,24 +1551,24 @@ void sub_811246C(struct Sprite *sprite)
|
||||
struct ObjectEvent *objectEvent = &gObjectEvents[sprite->data[0]];
|
||||
if (objectEvent->localId == OBJ_EVENT_ID_PLAYER)
|
||||
{
|
||||
if (gUnknown_203AF9A[0][0] != OBJ_EVENT_ID_PLAYER)
|
||||
if (sMovementScripts[0][0] != 0xFF)
|
||||
{
|
||||
ObjectEventSetHeldMovement(objectEvent, gUnknown_203AF9A[0][0]);
|
||||
gUnknown_203AF9A[0][0] = OBJ_EVENT_ID_PLAYER;
|
||||
ObjectEventSetHeldMovement(objectEvent, sMovementScripts[0][0]);
|
||||
sMovementScripts[0][0] = 0xFF;
|
||||
}
|
||||
if (gUnknown_203AF9A[0][1] != OBJ_EVENT_ID_PLAYER)
|
||||
if (sMovementScripts[0][1] != OBJ_EVENT_ID_PLAYER)
|
||||
{
|
||||
sub_8150454();
|
||||
gUnknown_203AF9A[0][1] = OBJ_EVENT_ID_PLAYER;
|
||||
sMovementScripts[0][1] = OBJ_EVENT_ID_PLAYER;
|
||||
}
|
||||
sub_8063E28(objectEvent, sprite);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (gUnknown_203AF9A[objectEvent->localId][0] != OBJ_EVENT_ID_PLAYER)
|
||||
if (sMovementScripts[objectEvent->localId][0] != 0xFF)
|
||||
{
|
||||
ObjectEventSetHeldMovement(objectEvent, gUnknown_203AF9A[objectEvent->localId][0]);
|
||||
gUnknown_203AF9A[objectEvent->localId][0] = OBJ_EVENT_ID_PLAYER;
|
||||
ObjectEventSetHeldMovement(objectEvent, sMovementScripts[objectEvent->localId][0]);
|
||||
sMovementScripts[objectEvent->localId][0] = 0xFF;
|
||||
}
|
||||
sub_8063E28(objectEvent, sprite);
|
||||
}
|
||||
@@ -1736,15 +1736,15 @@ static void sub_8112940(u8 a0, struct UnkStruct_203AE98 *a1, u16 a2)
|
||||
sNumQuestLogs = a2 / 8;
|
||||
for (i = 0; i < 0x40; i++)
|
||||
{
|
||||
gUnknown_203AF9A[i][0] |= 0xFF;
|
||||
gUnknown_203AF9A[i][1] |= 0xFF;
|
||||
sMovementScripts[i][0] |= 0xFF;
|
||||
sMovementScripts[i][1] |= 0xFF;
|
||||
}
|
||||
sQuestLogIdx = 0;
|
||||
gUnknown_203B01C = 0;
|
||||
gUnknown_3005E90 = (struct UnkStruct_3005E90){};
|
||||
gUnknown_203B01A = gUnknown_3005E94[sQuestLogIdx].unk_4;
|
||||
gUnknown_203AF9A[0][0] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
gUnknown_203AF9A[0][1] = 0xFF;
|
||||
sMovementScripts[0][0] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
sMovementScripts[0][1] = 0xFF;
|
||||
gUnknown_3005E88 = 1;
|
||||
break;
|
||||
case 2:
|
||||
@@ -1807,10 +1807,10 @@ void sub_8112B3C(void)
|
||||
switch (gUnknown_3005E94[sQuestLogIdx].unk_6)
|
||||
{
|
||||
case 0:
|
||||
gUnknown_203AF9A[gUnknown_3005E94[sQuestLogIdx].unk_0][0] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
sMovementScripts[gUnknown_3005E94[sQuestLogIdx].unk_0][0] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
break;
|
||||
case 1:
|
||||
gUnknown_203AF9A[gUnknown_3005E94[sQuestLogIdx].unk_0][1] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
sMovementScripts[gUnknown_3005E94[sQuestLogIdx].unk_0][1] = gUnknown_3005E94[sQuestLogIdx].unk_3;
|
||||
break;
|
||||
case 2:
|
||||
*(u32 *)&gUnknown_3005E90 = ((gUnknown_3005E94[sQuestLogIdx].unk_3 << 24) | (gUnknown_3005E94[sQuestLogIdx].unk_2 << 16) | (gUnknown_3005E94[sQuestLogIdx].unk_1 << 8) | (gUnknown_3005E94[sQuestLogIdx].unk_0 << 0));
|
||||
|
||||
@@ -1,262 +0,0 @@
|
||||
#include "global.h"
|
||||
#include "event_data.h"
|
||||
#include "task.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "fieldmap.h"
|
||||
#include "field_camera.h"
|
||||
|
||||
static EWRAM_DATA u8 gUnknown_2039984 = 0;
|
||||
|
||||
static void sub_809C1D8(u8 taskId, const s16 *a1, u16 a2);
|
||||
static void sub_809C334(u8 taskId);
|
||||
static void sub_809C500(u8 taskId);
|
||||
static void sub_809C640(u8 taskId);
|
||||
|
||||
static const u16 gUnknown_83DF0D4[] = {0x0308, 0x030a, 0x02d0};
|
||||
static const u16 gUnknown_83DF0DA[] = {0x0309, 0x030b, 0x02d1};
|
||||
static const u16 gUnknown_83DF0E0[] = {0x0310, 0x0312, 0x02d8};
|
||||
static const u16 gUnknown_83DF0E6[] = {0x0311, 0x0313, 0x02d9};
|
||||
static const u16 gUnknown_83DF0EC[] = {0x02e3, 0x0316, 0x0314};
|
||||
static const u16 gUnknown_83DF0F2[] = {0x02e4, 0x0317, 0x0315};
|
||||
static const u16 gUnknown_83DF0F8[] = {0x02eb, 0x031e, 0x031c};
|
||||
|
||||
// Functions
|
||||
static void sub_809C1D8(u8 taskId, const s16 *a1, u16 a2)
|
||||
{
|
||||
s16 r5, r3, r4;
|
||||
s16 i, j;
|
||||
|
||||
r5 = gTasks[taskId].data[4] - 1;
|
||||
r3 = gTasks[taskId].data[5] - 1;
|
||||
r4 = gTasks[taskId].data[1];
|
||||
|
||||
if (gTasks[taskId].data[2] == 0)
|
||||
{
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
s32 id = MapGridGetMetatileIdAt(r5 + j, r3 + i);
|
||||
|
||||
if (a1[r4] == (s16)id)
|
||||
{
|
||||
if (r4 != 2)
|
||||
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[r4 + 1]);
|
||||
else
|
||||
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
s32 id = MapGridGetMetatileIdAt(r5 + j, r3 + i);
|
||||
|
||||
if (a1[2 - r4] == (s16)id)
|
||||
{
|
||||
if (r4 != 2)
|
||||
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[1 - r4]);
|
||||
else
|
||||
MapGridSetMetatileIdAt(r5 + j, r3 + i, a2 | a1[2]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_809C334(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
u16 v1;
|
||||
|
||||
data[3] = 1;
|
||||
switch (data[0])
|
||||
{
|
||||
case 0:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0D4, 0);
|
||||
break;
|
||||
case 1:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0DA, 0);
|
||||
break;
|
||||
case 2:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0E0, 0xC00);
|
||||
break;
|
||||
case 3:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0E6, 0);
|
||||
break;
|
||||
case 4:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0EC, 0xC00);
|
||||
break;
|
||||
case 5:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0F2, 0);
|
||||
break;
|
||||
case 6:
|
||||
sub_809C1D8(taskId, gUnknown_83DF0F8, 0);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
data[0] = (data[0] + 1) & 7;
|
||||
v1 = data[0] & 7;
|
||||
if (v1 == 0)
|
||||
{
|
||||
DrawWholeMapView();
|
||||
data[1] = (data[1] + 1) % 3;
|
||||
data[3] = v1;
|
||||
}
|
||||
}
|
||||
|
||||
static u8 sub_809C3FC(u16 a0)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(sub_809C334, 0);
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&data[4], &data[5]);
|
||||
data[0] = 0;
|
||||
data[1] = 0;
|
||||
data[2] = a0;
|
||||
sub_809C334(taskId);
|
||||
return taskId;
|
||||
}
|
||||
|
||||
void sub_809C448(u8 a0)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
taskId = sub_809C3FC(a0);
|
||||
gUnknown_2039984 = taskId;
|
||||
}
|
||||
|
||||
void sub_809C460(void)
|
||||
{
|
||||
DestroyTask(gUnknown_2039984);
|
||||
}
|
||||
|
||||
bool8 sub_809C474(void)
|
||||
{
|
||||
if (gTasks[gUnknown_2039984].data[3] == 0)
|
||||
{
|
||||
if (gTasks[gUnknown_2039984].data[1] != 2)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
// special 0x1b5 - creates a tile animaiton one block left two-four up the player
|
||||
void sub_809C4A8(void)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(sub_809C500, 0);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = 0;
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&data[2], &data[3]);
|
||||
if (gSpecialVar_0x8004 == 0)
|
||||
{
|
||||
gTasks[taskId].data[2] += 6;
|
||||
gTasks[taskId].data[3] -= 5;
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].data[2]--;
|
||||
gTasks[taskId].data[3] -= 5;
|
||||
}
|
||||
}
|
||||
|
||||
static void sub_809C500(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
if (data[0] == 0)
|
||||
{
|
||||
if ((data[1] & 1) == 0)
|
||||
{
|
||||
MapGridSetMetatileIdAt(data[2], data[3], 0xEB5);
|
||||
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xEB7);
|
||||
}
|
||||
else
|
||||
{
|
||||
MapGridSetMetatileIdAt(data[2], data[3], 0xEB6);
|
||||
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xEB8);
|
||||
}
|
||||
CurrentMapDrawMetatileAt(data[2], data[3]);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3] + 2);
|
||||
}
|
||||
|
||||
data[0]++;
|
||||
if (data[0] != 0x10)
|
||||
return;
|
||||
|
||||
data[0] = 0;
|
||||
data[1]++;
|
||||
if (data[1] != 0xD)
|
||||
return;
|
||||
|
||||
MapGridSetMetatileIdAt(data[2], data[3], 0xE8A);
|
||||
MapGridSetMetatileIdAt(data[2], data[3] + 2, 0xE96);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3]);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3] + 2);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
// special 0x1B7 - creates a tile animation two-six blocks right from the top-left corner of the screen
|
||||
void sub_809C5FC(void)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(sub_809C640, 0);
|
||||
gTasks[taskId].data[0] = 0;
|
||||
gTasks[taskId].data[1] = 0;
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&data[2], &data[3]);
|
||||
gTasks[taskId].data[2] += 4;
|
||||
gTasks[taskId].data[3] -= 5;
|
||||
}
|
||||
|
||||
static void sub_809C640(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
if (data[0] == 0)
|
||||
{
|
||||
if (data[1] != 0)
|
||||
{
|
||||
MapGridSetMetatileIdAt(data[2], data[3], 0xE85);
|
||||
MapGridSetMetatileIdAt(data[2], data[3] + 1, 0xEB4);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3]);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3] + 1);
|
||||
if (data[1] == 4)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
return;
|
||||
}
|
||||
|
||||
data[2]--;
|
||||
}
|
||||
MapGridSetMetatileIdAt(data[2], data[3], 0xEB9);
|
||||
MapGridSetMetatileIdAt(data[2], data[3] + 1, 0xEBA);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3]);
|
||||
CurrentMapDrawMetatileAt(data[2], data[3] + 1);
|
||||
}
|
||||
|
||||
data[0]++;
|
||||
if (data[0] == 4)
|
||||
{
|
||||
data[0] = 0;
|
||||
data[1]++;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,341 @@
|
||||
#include "global.h"
|
||||
#include "event_data.h"
|
||||
#include "task.h"
|
||||
#include "field_player_avatar.h"
|
||||
#include "fieldmap.h"
|
||||
#include "field_camera.h"
|
||||
#include "constants/metatile_labels.h"
|
||||
|
||||
static EWRAM_DATA u8 sEscalatorTaskId = 0;
|
||||
|
||||
static void SetEscalatorMetatile(u8 taskId, const s16 *metatileIds, u16 metatileMasks);
|
||||
static void Task_DrawEscalator(u8 taskId);
|
||||
static void Task_DrawTeleporterHousing(u8 taskId);
|
||||
static void Task_DrawTeleporterCable(u8 taskId);
|
||||
|
||||
#define ESCALATOR_STAGES 3
|
||||
#define LAST_ESCALATOR_STAGE (ESCALATOR_STAGES - 1)
|
||||
|
||||
static const u16 sEscalatorMetatiles_BottomNextRail[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_BottomNextRail_Transition2,
|
||||
METATILE_PokemonCenter_Escalator_BottomNextRail_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_BottomNextRail_Normal
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_BottomRail[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_BottomRail_Transition2,
|
||||
METATILE_PokemonCenter_Escalator_BottomRail_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_BottomRail_Normal
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_BottomNext[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_BottomNext_Transition2,
|
||||
METATILE_PokemonCenter_Escalator_BottomNext_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_BottomNext_Normal
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_Bottom[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_Bottom_Transition2,
|
||||
METATILE_PokemonCenter_Escalator_Bottom_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_Bottom_Normal
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_TopNext[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_TopNext_Normal,
|
||||
METATILE_PokemonCenter_Escalator_TopNext_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_TopNext_Transition2
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_Top[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_Top_Normal,
|
||||
METATILE_PokemonCenter_Escalator_Top_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_Top_Transition2
|
||||
};
|
||||
|
||||
static const u16 sEscalatorMetatiles_TopNextRail[ESCALATOR_STAGES] =
|
||||
{
|
||||
METATILE_PokemonCenter_Escalator_TopNextRail_Normal,
|
||||
METATILE_PokemonCenter_Escalator_TopNextRail_Transition1,
|
||||
METATILE_PokemonCenter_Escalator_TopNextRail_Transition2
|
||||
};
|
||||
|
||||
#define tState data[0]
|
||||
#define tTransitionStage data[1]
|
||||
#define tGoingUp data[2]
|
||||
#define tDrawingEscalator data[3]
|
||||
#define tPlayerX data[4]
|
||||
#define tPlayerY data[5]
|
||||
|
||||
static void SetEscalatorMetatile(u8 taskId, const s16 *metatileIds, u16 metatileMasks)
|
||||
{
|
||||
s16 x, y, transitionStage;
|
||||
s16 i, j;
|
||||
|
||||
x = gTasks[taskId].tPlayerX - 1;
|
||||
y = gTasks[taskId].tPlayerY - 1;
|
||||
transitionStage = gTasks[taskId].tTransitionStage;
|
||||
|
||||
// Check all the escalator sections and only progress the selected one to the next stage
|
||||
if (!gTasks[taskId].tGoingUp)
|
||||
{
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
s32 id = MapGridGetMetatileIdAt(x + j, y + i);
|
||||
|
||||
if (metatileIds[transitionStage] == (s16)id)
|
||||
{
|
||||
if (transitionStage != LAST_ESCALATOR_STAGE)
|
||||
MapGridSetMetatileIdAt(x + j, y + i, metatileMasks | metatileIds[transitionStage + 1]);
|
||||
else
|
||||
MapGridSetMetatileIdAt(x + j, y + i, metatileMasks | metatileIds[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
for (j = 0; j < 3; j++)
|
||||
{
|
||||
s32 id = MapGridGetMetatileIdAt(x + j, y + i);
|
||||
|
||||
if (metatileIds[LAST_ESCALATOR_STAGE - transitionStage] == (s16)id)
|
||||
{
|
||||
if (transitionStage != LAST_ESCALATOR_STAGE)
|
||||
MapGridSetMetatileIdAt(x + j, y + i, metatileMasks | metatileIds[1 - transitionStage]);
|
||||
else
|
||||
MapGridSetMetatileIdAt(x + j, y + i, metatileMasks | metatileIds[LAST_ESCALATOR_STAGE]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void Task_DrawEscalator(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
u16 state;
|
||||
|
||||
tDrawingEscalator = TRUE;
|
||||
|
||||
// Set tile for each section of the escalator in sequence for current transition stage
|
||||
switch (tState)
|
||||
{
|
||||
case 0:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_BottomNextRail, 0);
|
||||
break;
|
||||
case 1:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_BottomRail, 0);
|
||||
break;
|
||||
case 2:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_BottomNext, METATILE_COLLISION_MASK);
|
||||
break;
|
||||
case 3:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_Bottom, 0);
|
||||
break;
|
||||
case 4:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_TopNext, METATILE_COLLISION_MASK);
|
||||
break;
|
||||
case 5:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_Top, 0);
|
||||
break;
|
||||
case 6:
|
||||
SetEscalatorMetatile(taskId, sEscalatorMetatiles_TopNextRail, 0);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
tState = (tState + 1) & 7;
|
||||
state = tState & 7;
|
||||
|
||||
// If all sections of the escalator have been set, draw map and progress to next stage
|
||||
if (state == 0)
|
||||
{
|
||||
DrawWholeMapView();
|
||||
tTransitionStage = (tTransitionStage + 1) % ESCALATOR_STAGES;
|
||||
tDrawingEscalator = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
static u8 CreateEscalatorTask(bool16 goingUp)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(Task_DrawEscalator, 0);
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&tPlayerX, &tPlayerY);
|
||||
tState = 0;
|
||||
tTransitionStage = 0;
|
||||
tGoingUp = goingUp;
|
||||
Task_DrawEscalator(taskId);
|
||||
return taskId;
|
||||
}
|
||||
|
||||
void StartEscalator(bool8 goingUp)
|
||||
{
|
||||
u8 taskId;
|
||||
|
||||
taskId = CreateEscalatorTask(goingUp);
|
||||
sEscalatorTaskId = taskId;
|
||||
}
|
||||
|
||||
void StopEscalator(void)
|
||||
{
|
||||
DestroyTask(sEscalatorTaskId);
|
||||
}
|
||||
|
||||
bool8 IsEscalatorMoving(void)
|
||||
{
|
||||
if (gTasks[sEscalatorTaskId].tDrawingEscalator == FALSE)
|
||||
{
|
||||
if (gTasks[sEscalatorTaskId].tTransitionStage != LAST_ESCALATOR_STAGE)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
#undef tState
|
||||
#undef tTransitionStage
|
||||
#undef tGoingUp
|
||||
#undef tDrawingEscalator
|
||||
#undef tPlayerX
|
||||
#undef tPlayerY
|
||||
|
||||
#define tTimer data[0]
|
||||
#define tState data[1]
|
||||
#define tX data[2]
|
||||
#define tY data[3]
|
||||
|
||||
void AnimateTeleporterHousing(void)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(Task_DrawTeleporterHousing, 0);
|
||||
gTasks[taskId].tTimer = 0;
|
||||
gTasks[taskId].tState = 0;
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&tX, &tY);
|
||||
|
||||
// Set the coords of whichever teleporter is being animated
|
||||
// 0 for the right teleporter, 1 for the left teleporter
|
||||
if (gSpecialVar_0x8004 == 0)
|
||||
{
|
||||
gTasks[taskId].tX += 6;
|
||||
gTasks[taskId].tY -= 5;
|
||||
}
|
||||
else
|
||||
{
|
||||
gTasks[taskId].tX -= 1;
|
||||
gTasks[taskId].tY -= 5;
|
||||
}
|
||||
}
|
||||
|
||||
static void Task_DrawTeleporterHousing(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
if (tTimer == 0)
|
||||
{
|
||||
// Alternate the teleporter light / brightness of the teleporter door
|
||||
if ((tState & 1) == 0)
|
||||
{
|
||||
MapGridSetMetatileIdAt(tX, tY, METATILE_SeaCottage_Teleporter_Light_Yellow | METATILE_COLLISION_MASK);
|
||||
MapGridSetMetatileIdAt(tX, tY + 2, METATILE_SeaCottage_Teleporter_Door_HalfGlowing | METATILE_COLLISION_MASK);
|
||||
}
|
||||
else
|
||||
{
|
||||
MapGridSetMetatileIdAt(tX, tY, METATILE_SeaCottage_Teleporter_Light_Red | METATILE_COLLISION_MASK);
|
||||
MapGridSetMetatileIdAt(tX, tY + 2, METATILE_SeaCottage_Teleporter_Door_FullGlowing | METATILE_COLLISION_MASK);
|
||||
}
|
||||
CurrentMapDrawMetatileAt(tX, tY);
|
||||
CurrentMapDrawMetatileAt(tX, tY + 2);
|
||||
}
|
||||
|
||||
tTimer++;
|
||||
if (tTimer != 16)
|
||||
return;
|
||||
|
||||
tTimer = 0;
|
||||
tState++;
|
||||
if (tState != 13)
|
||||
return;
|
||||
|
||||
MapGridSetMetatileIdAt(tX, tY, METATILE_SeaCottage_Teleporter_Light_Green | METATILE_COLLISION_MASK);
|
||||
MapGridSetMetatileIdAt(tX, tY + 2, METATILE_SeaCottage_Teleporter_Door | METATILE_COLLISION_MASK);
|
||||
CurrentMapDrawMetatileAt(tX, tY);
|
||||
CurrentMapDrawMetatileAt(tX, tY + 2);
|
||||
DestroyTask(taskId);
|
||||
}
|
||||
|
||||
void AnimateTeleporterCable(void)
|
||||
{
|
||||
u8 taskId;
|
||||
s16 *data;
|
||||
|
||||
taskId = CreateTask(Task_DrawTeleporterCable, 0);
|
||||
gTasks[taskId].tTimer = 0;
|
||||
gTasks[taskId].tState = 0;
|
||||
data = gTasks[taskId].data;
|
||||
PlayerGetDestCoords(&tX, &tY);
|
||||
gTasks[taskId].tX += 4;
|
||||
gTasks[taskId].tY -= 5;
|
||||
}
|
||||
|
||||
static void Task_DrawTeleporterCable(u8 taskId)
|
||||
{
|
||||
s16 *data = gTasks[taskId].data;
|
||||
|
||||
if (tTimer == 0)
|
||||
{
|
||||
if (tState != 0)
|
||||
{
|
||||
// Set default cable tiles to clear the ball
|
||||
MapGridSetMetatileIdAt(tX, tY, METATILE_SeaCottage_Teleporter_Cable_Top | METATILE_COLLISION_MASK);
|
||||
MapGridSetMetatileIdAt(tX, tY + 1, METATILE_SeaCottage_Teleporter_Cable_Bottom | METATILE_COLLISION_MASK);
|
||||
CurrentMapDrawMetatileAt(tX, tY);
|
||||
CurrentMapDrawMetatileAt(tX, tY + 1);
|
||||
|
||||
// End after drawing 4 times (length of the cable)
|
||||
if (tState == 4)
|
||||
{
|
||||
DestroyTask(taskId);
|
||||
return;
|
||||
}
|
||||
|
||||
tX--;
|
||||
}
|
||||
|
||||
// Draw the cable ball
|
||||
MapGridSetMetatileIdAt(tX, tY, METATILE_SeaCottage_Teleporter_CableBall_Top | METATILE_COLLISION_MASK);
|
||||
MapGridSetMetatileIdAt(tX, tY + 1, METATILE_SeaCottage_Teleporter_CableBall_Bottom | METATILE_COLLISION_MASK);
|
||||
CurrentMapDrawMetatileAt(tX, tY);
|
||||
CurrentMapDrawMetatileAt(tX, tY + 1);
|
||||
}
|
||||
|
||||
tTimer++;
|
||||
if (tTimer == 4)
|
||||
{
|
||||
tTimer = 0;
|
||||
tState++;
|
||||
}
|
||||
}
|
||||
|
||||
#undef tTimer
|
||||
#undef tState
|
||||
#undef tX
|
||||
#undef tY
|
||||
+11
-11
@@ -367,11 +367,11 @@ bool8 StandardWildEncounter(u32 currMetatileBehavior, u16 previousMetatileBehavi
|
||||
headerId = GetCurrentMapWildMonHeaderId();
|
||||
if (headerId != 0xFFFF)
|
||||
{
|
||||
if (sub_8058F1C(currMetatileBehavior, 4) == TRUE)
|
||||
if (GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 4) == TRUE)
|
||||
{
|
||||
if (gWildMonHeaders[headerId].landMonsInfo == NULL)
|
||||
return FALSE;
|
||||
else if (previousMetatileBehavior != sub_8058F1C(currMetatileBehavior, 0) && !DoGlobalWildEncounterDiceRoll())
|
||||
else if (previousMetatileBehavior != GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0) && !DoGlobalWildEncounterDiceRoll())
|
||||
return FALSE;
|
||||
if (DoWildEncounterRateTest(gWildMonHeaders[headerId].landMonsInfo->encounterRate, FALSE) != TRUE)
|
||||
{
|
||||
@@ -405,12 +405,12 @@ bool8 StandardWildEncounter(u32 currMetatileBehavior, u16 previousMetatileBehavi
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (sub_8058F1C(currMetatileBehavior, 4) == 2
|
||||
|| (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridge(sub_8058F1C(currMetatileBehavior, 0)) == TRUE))
|
||||
else if (GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 4) == 2
|
||||
|| (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING) && MetatileBehavior_IsBridge(GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0)) == TRUE))
|
||||
{
|
||||
if (gWildMonHeaders[headerId].waterMonsInfo == NULL)
|
||||
return FALSE;
|
||||
else if (previousMetatileBehavior != sub_8058F1C(currMetatileBehavior, 0) && !DoGlobalWildEncounterDiceRoll())
|
||||
else if (previousMetatileBehavior != GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0) && !DoGlobalWildEncounterDiceRoll())
|
||||
return FALSE;
|
||||
else if (DoWildEncounterRateTest(gWildMonHeaders[headerId].waterMonsInfo->encounterRate, FALSE) != TRUE)
|
||||
{
|
||||
@@ -474,7 +474,7 @@ bool8 SweetScentWildEncounter(void)
|
||||
headerId = GetCurrentMapWildMonHeaderId();
|
||||
if (headerId != 0xFFFF)
|
||||
{
|
||||
if (sub_8058F48(x, y, 4) == 1)
|
||||
if (MapGridGetMetatileAttributeAt(x, y, 4) == 1)
|
||||
{
|
||||
if (TryStartRoamerEncounter() == TRUE)
|
||||
{
|
||||
@@ -490,7 +490,7 @@ bool8 SweetScentWildEncounter(void)
|
||||
BattleSetup_StartWildBattle();
|
||||
return TRUE;
|
||||
}
|
||||
else if (sub_8058F48(x, y, 4) == 2)
|
||||
else if (MapGridGetMetatileAttributeAt(x, y, 4) == 2)
|
||||
{
|
||||
if (TryStartRoamerEncounter() == TRUE)
|
||||
{
|
||||
@@ -711,7 +711,7 @@ void ResetEncounterRateModifiers(void)
|
||||
|
||||
static bool8 HandleWildEncounterCooldown(u32 currMetatileBehavior)
|
||||
{
|
||||
u8 unk = sub_8058F1C(currMetatileBehavior, 4);
|
||||
u8 unk = GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 4);
|
||||
u32 minSteps;
|
||||
u32 encRate;
|
||||
if (unk == 0)
|
||||
@@ -763,19 +763,19 @@ bool8 TryStandardWildEncounter(u32 currMetatileBehavior)
|
||||
{
|
||||
if (!HandleWildEncounterCooldown(currMetatileBehavior))
|
||||
{
|
||||
sWildEncounterData.prevMetatileBehavior = sub_8058F1C(currMetatileBehavior, 0);
|
||||
sWildEncounterData.prevMetatileBehavior = GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0);
|
||||
return FALSE;
|
||||
}
|
||||
else if (StandardWildEncounter(currMetatileBehavior, sWildEncounterData.prevMetatileBehavior) == TRUE)
|
||||
{
|
||||
sWildEncounterData.encounterRateBuff = 0;
|
||||
sWildEncounterData.stepsSinceLastEncounter = 0;
|
||||
sWildEncounterData.prevMetatileBehavior = sub_8058F1C(currMetatileBehavior, 0);
|
||||
sWildEncounterData.prevMetatileBehavior = GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0);
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
sWildEncounterData.prevMetatileBehavior = sub_8058F1C(currMetatileBehavior, 0);
|
||||
sWildEncounterData.prevMetatileBehavior = GetMetatileAttributeFromRawMetatileBehavior(currMetatileBehavior, 0);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
+2
-8
@@ -218,14 +218,8 @@ gUnknown_203982C: @ 203982C
|
||||
|
||||
.align 2
|
||||
.include "src/script_movement.o"
|
||||
|
||||
.align 2
|
||||
gUnknown_2039870: @ 2039870
|
||||
.space 0x4
|
||||
|
||||
gUnknown_2039874: @ 2039874
|
||||
.space 0x4
|
||||
|
||||
.include "src/fldeff_cut.o"
|
||||
.align 2
|
||||
.include "src/item_menu_icons.o"
|
||||
|
||||
@@ -235,7 +229,7 @@ gBagPockets: @ 203988C
|
||||
.align 2
|
||||
.include "src/shop.o"
|
||||
.align 2
|
||||
.include "src/sea_cottage_special_anim.o"
|
||||
.include "src/special_field_anim.o"
|
||||
.align 2
|
||||
.include "src/script_menu.o"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user