pokered-rematch/scripts/oakslab.asm

1234 lines
21 KiB
NASM
Raw Normal View History

2016-06-12 00:24:04 +00:00
OaksLabScript:
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
2014-05-18 18:19:10 +00:00
call nz, OaksLabScript_1d076
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wAutoTextBoxDrawingControl], a
2014-05-18 18:19:10 +00:00
xor a
2014-09-13 07:50:56 +00:00
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
2014-05-18 18:19:10 +00:00
ld hl, OaksLabScriptPointers
2015-08-31 02:38:41 +00:00
ld a, [wOaksLabCurScript]
2014-05-18 18:19:10 +00:00
jp CallFunctionInTable
2016-06-12 00:24:04 +00:00
OaksLabScriptPointers:
2014-05-18 18:19:10 +00:00
dw OaksLabScript0
dw OaksLabScript1
dw OaksLabScript2
dw OaksLabScript3
dw OaksLabScript4
dw OaksLabScript5
dw OaksLabScript6
dw OaksLabScript7
dw OaksLabScript8
dw OaksLabScript9
dw OaksLabScript10
dw OaksLabScript11
dw OaksLabScript12
dw OaksLabScript13
dw OaksLabScript14
dw OaksLabScript15
dw OaksLabScript16
dw OaksLabScript17
dw OaksLabScript18
2016-06-12 00:24:04 +00:00
OaksLabScript0:
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_OAK_APPEARED_IN_PALLET
2014-05-18 18:19:10 +00:00
ret z
ld a, [wNPCMovementScriptFunctionNum]
2014-05-18 18:19:10 +00:00
and a
ret nz
ld a, HS_OAKS_LAB_OAK_2
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef ShowObject
ld hl, wd72e
2014-05-18 18:19:10 +00:00
res 4, [hl]
ld a, $1
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript1:
2014-05-18 18:19:10 +00:00
ld a, $8
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld de, OakEntryMovement
call MoveSprite
ld a, $2
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OakEntryMovement:
db NPC_MOVEMENT_UP
db NPC_MOVEMENT_UP
db NPC_MOVEMENT_UP
db $FF
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabScript2:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
ret nz
ld a, HS_OAKS_LAB_OAK_2
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_OAKS_LAB_OAK_1
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef ShowObject
2014-05-18 18:19:10 +00:00
ld a, $3
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript3:
2014-05-18 18:19:10 +00:00
call Delay3
ld hl, wSimulatedJoypadStatesEnd
2014-05-18 18:19:10 +00:00
ld de, PlayerEntryMovementRLE
call DecodeRLEList
dec a
ld [wSimulatedJoypadStatesIndex], a
call StartSimulatingJoypadStates
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
2015-07-18 15:17:29 +00:00
xor a
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $5
ld [H_SPRITEINDEX], a
2015-07-18 15:17:29 +00:00
xor a
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $4
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
PlayerEntryMovementRLE:
db D_UP,$8
db $ff
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabScript4:
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
and a
ret nz
2015-07-21 17:36:03 +00:00
SetEvent EVENT_FOLLOWED_OAK_INTO_LAB
SetEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_UP
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
call UpdateSprites
2015-08-31 02:38:41 +00:00
ld hl, wFlags_D733
2014-05-18 18:19:10 +00:00
res 1, [hl]
call PlayDefaultMusic
2014-05-18 18:19:10 +00:00
ld a, $5
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript5:
2014-05-18 18:19:10 +00:00
ld a, $fc
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $11
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call Delay3
ld a, $12
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call Delay3
ld a, $13
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call Delay3
ld a, $14
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
2015-07-21 01:32:02 +00:00
SetEvent EVENT_OAK_ASKED_TO_CHOOSE_MON
2014-05-18 18:19:10 +00:00
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $6
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript6:
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
cp $6
ret nz
ld a, $5
ld [H_SPRITEINDEX], a
xor a ; SPRITE_FACING_DOWN
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
xor a
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
call UpdateSprites
ld a, $c
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
ld a, $1
ld [wSimulatedJoypadStatesIndex], a
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
2015-07-20 00:52:26 +00:00
ld a, PLAYER_DIR_UP
ld [wPlayerMovingDirection], a
2014-05-18 18:19:10 +00:00
ld a, $7
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript7:
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
and a
ret nz
call Delay3
ld a, $6
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript8:
2015-08-31 02:38:41 +00:00
ld a, [wPlayerStarter]
2014-05-21 12:48:30 +00:00
cp STARTER1
jr z, .Charmander
2014-05-21 12:48:30 +00:00
cp STARTER2
jr z, .Squirtle
jr .Bulbasaur
2014-05-18 18:19:10 +00:00
.Charmander
ld de, .MiddleBallMovement1
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
cp $4 ; is the player standing below the table?
jr z, .asm_1ccf3
2014-05-18 18:19:10 +00:00
ld de, .MiddleBallMovement2
jr .asm_1ccf3
2014-05-18 18:19:10 +00:00
.MiddleBallMovement1
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_UP
db $FF
2014-05-18 18:19:10 +00:00
.MiddleBallMovement2
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db $FF
2014-05-18 18:19:10 +00:00
.Squirtle
ld de, .RightBallMovement1
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
cp $4 ; is the player standing below the table?
jr z, .asm_1ccf3
2014-05-18 18:19:10 +00:00
ld de, .RightBallMovement2
jr .asm_1ccf3
2014-05-18 18:19:10 +00:00
.RightBallMovement1
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_UP
db $FF
2014-05-18 18:19:10 +00:00
.RightBallMovement2
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db NPC_MOVEMENT_RIGHT
db $FF
2014-05-18 18:19:10 +00:00
.Bulbasaur
ld de, .LeftBallMovement1
2015-08-31 02:38:41 +00:00
ld a, [wXCoord]
2014-05-18 18:19:10 +00:00
cp $9 ; is the player standing to the right of the table?
jr nz, .asm_1ccf3
2014-05-18 18:19:10 +00:00
push hl
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld a, $4
2015-07-18 15:17:29 +00:00
ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
2014-05-18 18:19:10 +00:00
push hl
ld [hl], $4c
inc hl
inc hl
ld [hl], $0
pop hl
inc h
ld [hl], $8
inc hl
ld [hl], $9
ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that
pop hl
jr .asm_1ccf3
2014-05-18 18:19:10 +00:00
.LeftBallMovement1
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_RIGHT ; not yet terminated!
2014-05-18 18:19:10 +00:00
.LeftBallMovement2
db NPC_MOVEMENT_RIGHT
db $FF
2014-05-18 18:19:10 +00:00
.asm_1ccf3
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
call MoveSprite
ld a, $9
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript9:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
ret nz
ld a, $fc
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_UP
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $d
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
2015-07-19 03:49:52 +00:00
ld a, [wRivalStarterBallSpriteIndex]
2014-05-18 18:19:10 +00:00
cp $2
jr nz, .asm_1cd28
ld a, HS_STARTER_BALL_1
jr .asm_1cd32
2014-05-18 18:19:10 +00:00
.asm_1cd28
cp $3
jr nz, .asm_1cd30
ld a, HS_STARTER_BALL_2
jr .asm_1cd32
2014-05-18 18:19:10 +00:00
.asm_1cd30
ld a, HS_STARTER_BALL_3
2014-05-18 18:19:10 +00:00
.asm_1cd32
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
2014-05-18 18:19:10 +00:00
call Delay3
2015-07-19 03:49:52 +00:00
ld a, [wRivalStarterTemp]
2015-08-31 02:38:41 +00:00
ld [wRivalStarter], a
ld [wcf91], a
ld [wd11e], a
2014-05-18 18:19:10 +00:00
call GetMonName
ld a, $1
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_UP
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $e
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
2015-07-21 01:32:02 +00:00
SetEvent EVENT_GOT_STARTER
2014-05-18 18:19:10 +00:00
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $a
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript10:
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
cp $6
ret nz
ld a, $1
ld [H_SPRITEINDEX], a
xor a ; SPRITE_FACING_DOWN
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2015-07-20 00:52:26 +00:00
ld a, PLAYER_DIR_UP
ld [wPlayerMovingDirection], a
2014-05-18 18:19:10 +00:00
ld c, BANK(Music_MeetRival)
ld a, MUSIC_MEET_RIVAL
call PlayMusic
2014-05-18 18:19:10 +00:00
ld a, $f
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
ld a, $1
2015-07-15 20:58:21 +00:00
ld [hNPCPlayerRelativePosPerspective], a
2014-05-18 18:19:10 +00:00
ld a, $1
swap a
2015-07-15 20:58:21 +00:00
ld [hNPCSpriteOffset], a
predef CalcPositionOfPlayerRelativeToNPC
2015-07-15 20:58:21 +00:00
ld a, [hNPCPlayerYDistance]
2014-05-18 18:19:10 +00:00
dec a
2015-07-15 20:58:21 +00:00
ld [hNPCPlayerYDistance], a
predef FindPathToPlayer
ld de, wNPCMovementDirections2
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
call MoveSprite
ld a, $b
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript11:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
ret nz
; define which team rival uses, and fight it
ld a, OPP_SONY1
2015-08-31 02:38:41 +00:00
ld [wCurOpponent], a
ld a, [wRivalStarter]
2014-05-21 12:48:30 +00:00
cp STARTER2
jr nz, .NotSquirtle
2014-05-18 18:19:10 +00:00
ld a, $1
jr .done
2014-05-18 18:19:10 +00:00
.NotSquirtle
2014-05-21 12:48:30 +00:00
cp STARTER3
jr nz, .Charmander
2014-05-18 18:19:10 +00:00
ld a, $2
jr .done
2014-05-18 18:19:10 +00:00
.Charmander
ld a, $3
.done
2015-08-31 02:38:41 +00:00
ld [wTrainerNo], a
2014-05-18 18:19:10 +00:00
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wSpriteIndex], a
call GetSpritePosition1
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d3be
ld de, OaksLabText_1d3c3
2014-09-14 18:29:18 +00:00
call SaveEndBattleTextPointers
ld hl, wd72d
2014-05-18 18:19:10 +00:00
set 6, [hl]
set 7, [hl]
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2015-07-20 00:52:26 +00:00
ld a, PLAYER_DIR_UP
ld [wPlayerMovingDirection], a
2014-05-18 18:19:10 +00:00
ld a, $c
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript12:
2014-05-18 18:19:10 +00:00
ld a, $f0
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2015-07-20 00:52:26 +00:00
ld a, PLAYER_DIR_UP
ld [wPlayerMovingDirection], a
2014-05-18 18:19:10 +00:00
call UpdateSprites
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wSpriteIndex], a
call SetSpritePosition1
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
xor a ; SPRITE_FACING_DOWN
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
predef HealParty
2015-07-21 01:32:02 +00:00
SetEvent EVENT_BATTLED_RIVAL_IN_OAKS_LAB
2014-05-18 18:19:10 +00:00
ld a, $d
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript13:
ld c, 20
2014-05-18 18:19:10 +00:00
call DelayFrames
ld a, $10
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
callba Music_RivalAlternateStart
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld de, .RivalExitMovement
call MoveSprite
2015-08-31 02:38:41 +00:00
ld a, [wXCoord]
2014-05-18 18:19:10 +00:00
cp $4
; move left or right depending on where the player is standing
2015-08-13 05:14:31 +00:00
jr nz, .moveLeft
ld a, NPC_MOVEMENT_RIGHT
jr .next
.moveLeft
ld a, NPC_MOVEMENT_LEFT
.next
ld [wNPCMovementDirections], a
2014-05-18 18:19:10 +00:00
ld a, $e
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
.RivalExitMovement
db $E0 ; change sprite facing direction
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db NPC_MOVEMENT_DOWN
db $FF
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabScript14:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
jr nz, .asm_1ce8c
ld a, HS_OAKS_LAB_RIVAL
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
2014-05-18 18:19:10 +00:00
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
call PlayDefaultMusic ; reset to map music
2014-05-18 18:19:10 +00:00
ld a, $12
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
jr .done
; make the player keep facing the rival as he walks away
2014-05-18 18:19:10 +00:00
.asm_1ce8c
ld a, [wNPCNumScriptedSteps]
2014-05-18 18:19:10 +00:00
cp $5
jr nz, .asm_1cea8
2015-08-31 02:38:41 +00:00
ld a, [wXCoord]
2014-05-18 18:19:10 +00:00
cp $4
jr nz, .asm_1cea1
ld a, SPRITE_FACING_RIGHT
ld [wSpriteStateData1 + 9], a
jr .done
2014-05-18 18:19:10 +00:00
.asm_1cea1
ld a, SPRITE_FACING_LEFT
ld [wSpriteStateData1 + 9], a
jr .done
2014-05-18 18:19:10 +00:00
.asm_1cea8
cp $4
ret nz
xor a ; ld a, SPRITE_FACING_DOWN
ld [wSpriteStateData1 + 9], a
2014-05-18 18:19:10 +00:00
.done
ret
2016-06-12 00:24:04 +00:00
OaksLabScript15:
2014-05-18 18:19:10 +00:00
xor a
2014-05-25 17:51:53 +00:00
ld [hJoyHeld], a
2014-05-18 18:19:10 +00:00
call EnableAutoTextBoxDrawing
ld a, $ff
2015-08-09 05:32:44 +00:00
ld [wNewSoundID], a
2014-05-18 18:19:10 +00:00
call PlaySound
callba Music_RivalAlternateStart
2014-05-18 18:19:10 +00:00
ld a, $15
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call OaksLabScript_1d02b
ld a, HS_OAKS_LAB_RIVAL
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef ShowObject
ld a, [wNPCMovementDirections2Index]
2015-07-26 02:26:54 +00:00
ld [wSavedNPCMovementDirections2Index], a
ld b, 0
2014-05-18 18:19:10 +00:00
ld c, a
ld hl, wNPCMovementDirections2
2015-07-26 02:26:54 +00:00
ld a, NPC_MOVEMENT_UP
2014-05-18 18:19:10 +00:00
call FillMemory
ld [hl], $ff
ld a, $1
ld [H_SPRITEINDEX], a
ld de, wNPCMovementDirections2
2014-05-18 18:19:10 +00:00
call MoveSprite
ld a, $10
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript_1cefd:
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_UP
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
ld a, $8
ld [H_SPRITEINDEX], a
xor a ; SPRITE_FACING_DOWN
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
jp SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabScript16:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
ret nz
call EnableAutoTextBoxDrawing
call PlayDefaultMusic
2014-05-18 18:19:10 +00:00
ld a, $fc
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
call OaksLabScript_1cefd
ld a, $16
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call DelayFrame
call OaksLabScript_1cefd
ld a, $17
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call DelayFrame
call OaksLabScript_1cefd
ld a, $18
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call DelayFrame
ld a, $19
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
call Delay3
ld a, HS_POKEDEX_1
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_POKEDEX_2
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
2014-05-18 18:19:10 +00:00
call OaksLabScript_1cefd
ld a, $1a
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
ld a, $1
ld [H_SPRITEINDEX], a
ld a, SPRITE_FACING_RIGHT
2015-07-18 15:17:29 +00:00
ld [hSpriteFacingDirection], a
call SetSpriteFacingDirectionAndDelay
2014-05-18 18:19:10 +00:00
call Delay3
ld a, $1b
2015-07-18 15:17:29 +00:00
ld [hSpriteIndexOrTextID], a
2014-05-18 18:19:10 +00:00
call DisplayTextID
2015-07-21 01:32:02 +00:00
SetEvent EVENT_GOT_POKEDEX
2015-07-21 17:36:03 +00:00
SetEvent EVENT_OAK_GOT_PARCEL
ld a, HS_LYING_OLD_MAN
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
ld a, HS_OLD_MAN
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef ShowObject
2015-07-26 02:26:54 +00:00
ld a, [wSavedNPCMovementDirections2Index]
ld b, 0
2014-05-18 18:19:10 +00:00
ld c, a
ld hl, wNPCMovementDirections2
2015-07-26 02:26:54 +00:00
xor a ; NPC_MOVEMENT_DOWN
2014-05-18 18:19:10 +00:00
call FillMemory
ld [hl], $ff
ld a, $ff
2015-08-09 05:32:44 +00:00
ld [wNewSoundID], a
2014-05-18 18:19:10 +00:00
call PlaySound
callba Music_RivalAlternateStart
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
ld de, wNPCMovementDirections2
2014-05-18 18:19:10 +00:00
call MoveSprite
ld a, $11
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript17:
ld a, [wd730]
2014-05-18 18:19:10 +00:00
bit 0, a
ret nz
call PlayDefaultMusic
ld a, HS_OAKS_LAB_RIVAL
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
2015-07-21 17:36:03 +00:00
SetEvent EVENT_1ST_ROUTE22_RIVAL_BATTLE
ResetEventReuseHL EVENT_2ND_ROUTE22_RIVAL_BATTLE
SetEventReuseHL EVENT_ROUTE22_RIVAL_WANTS_BATTLE
ld a, HS_ROUTE_22_RIVAL_1
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef ShowObject
2014-05-18 18:19:10 +00:00
ld a, $5
2015-08-31 02:38:41 +00:00
ld [wPalletTownCurScript], a
2014-05-18 18:19:10 +00:00
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $12
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript18:
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript_RemoveParcel:
2014-05-18 18:19:10 +00:00
ld hl, wBagItems
ld bc, $0000
2015-07-21 17:36:03 +00:00
.loop
2014-05-18 18:19:10 +00:00
ld a, [hli]
cp $ff
ret z
cp OAKS_PARCEL
2015-07-21 17:36:03 +00:00
jr z, .foundParcel
2014-05-18 18:19:10 +00:00
inc hl
inc c
2015-07-21 17:36:03 +00:00
jr .loop
.foundParcel
ld hl, wNumBagItems
2014-05-18 18:19:10 +00:00
ld a, c
ld [wWhichPokemon], a
ld a, $1
2015-07-13 06:00:48 +00:00
ld [wItemQuantity], a
2014-05-18 18:19:10 +00:00
jp RemoveItemFromInventory
2016-06-12 00:24:04 +00:00
OaksLabScript_1d02b:
2014-05-18 18:19:10 +00:00
ld a, $7c
ld [$ffeb], a
ld a, $8
ld [$ffee], a
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
cp $3
jr nz, .asm_1d045
2014-05-18 18:19:10 +00:00
ld a, $4
ld [wNPCMovementDirections2Index], a
2014-05-18 18:19:10 +00:00
ld a, $30
ld b, $b
jr .asm_1d068
2014-05-18 18:19:10 +00:00
.asm_1d045
cp $1
jr nz, .asm_1d054
2014-05-18 18:19:10 +00:00
ld a, $2
ld [wNPCMovementDirections2Index], a
2014-05-18 18:19:10 +00:00
ld a, $30
ld b, $9
jr .asm_1d068
2014-05-18 18:19:10 +00:00
.asm_1d054
ld a, $3
ld [wNPCMovementDirections2Index], a
2014-05-18 18:19:10 +00:00
ld b, $a
2015-08-31 02:38:41 +00:00
ld a, [wXCoord]
2014-05-18 18:19:10 +00:00
cp $4
jr nz, .asm_1d066
2014-05-18 18:19:10 +00:00
ld a, $40
jr .asm_1d068
2014-05-18 18:19:10 +00:00
.asm_1d066
ld a, $20
.asm_1d068
ld [$ffec], a
ld a, b
ld [$ffed], a
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wSpriteIndex], a
call SetSpritePosition1
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabScript_1d076:
ld hl, OaksLabTextPointers2
2014-05-18 18:19:10 +00:00
ld a, l
2015-08-31 02:38:41 +00:00
ld [wMapTextPtr], a
2014-05-18 18:19:10 +00:00
ld a, h
2015-08-31 02:38:41 +00:00
ld [wMapTextPtr+1], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
OaksLabTextPointers:
2014-05-18 18:19:10 +00:00
dw OaksLabText1
dw OaksLabText2
dw OaksLabText3
dw OaksLabText4
dw OaksLabText5
dw OaksLabText6
dw OaksLabText7
dw OaksLabText8
dw OaksLabText9
dw OaksLabText10
dw OaksLabText11
dw OaksLabText12
dw OaksLabText13
dw OaksLabText14
dw OaksLabText15
dw OaksLabText16
dw OaksLabText17
dw OaksLabText18
dw OaksLabText19
dw OaksLabText20
dw OaksLabText21
dw OaksLabText22
dw OaksLabText23
dw OaksLabText24
dw OaksLabText25
dw OaksLabText26
dw OaksLabText27
OaksLabTextPointers2:
dw OaksLabText1
dw OaksLabText2
dw OaksLabText3
dw OaksLabText4
dw OaksLabText5
dw OaksLabText6
dw OaksLabText7
dw OaksLabText8
dw OaksLabText9
dw OaksLabText10
dw OaksLabText11
2016-06-12 00:24:04 +00:00
OaksLabText1:
2015-07-03 19:58:50 +00:00
TX_ASM
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB_2
jr nz, .asm_1d0de
2014-05-18 18:19:10 +00:00
ld hl, OaksLabGaryText1
call PrintText
jr .asm_1d0f0
.asm_1d0de
2014-05-18 18:19:10 +00:00
bit 2, a
jr nz, .asm_1d0ea
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText40
call PrintText
jr .asm_1d0f0
.asm_1d0ea
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText41
call PrintText
.asm_1d0f0
2014-05-18 18:19:10 +00:00
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabGaryText1:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabGaryText1
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText40:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText40
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText41:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText41
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText2:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-21 12:48:30 +00:00
ld a, STARTER2
2015-07-19 03:49:52 +00:00
ld [wRivalStarterTemp], a
2014-05-18 18:19:10 +00:00
ld a, $3
2015-07-19 03:49:52 +00:00
ld [wRivalStarterBallSpriteIndex], a
2014-05-21 12:48:30 +00:00
ld a, STARTER1
2014-05-18 18:19:10 +00:00
ld b, $2
jr OaksLabScript_1d133
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabText3:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-21 12:48:30 +00:00
ld a, STARTER3
2015-07-19 03:49:52 +00:00
ld [wRivalStarterTemp], a
2014-05-18 18:19:10 +00:00
ld a, $4
2015-07-19 03:49:52 +00:00
ld [wRivalStarterBallSpriteIndex], a
2014-05-21 12:48:30 +00:00
ld a, STARTER2
2014-05-18 18:19:10 +00:00
ld b, $3
jr OaksLabScript_1d133
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabText4:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-21 12:48:30 +00:00
ld a, STARTER1
2015-07-19 03:49:52 +00:00
ld [wRivalStarterTemp], a
2014-05-18 18:19:10 +00:00
ld a, $2
2015-07-19 03:49:52 +00:00
ld [wRivalStarterBallSpriteIndex], a
2014-05-21 12:48:30 +00:00
ld a, STARTER3
2014-05-18 18:19:10 +00:00
ld b, $4
2016-06-12 00:24:04 +00:00
OaksLabScript_1d133:
ld [wcf91], a
ld [wd11e], a
2014-05-18 18:19:10 +00:00
ld a, b
2014-09-13 07:50:56 +00:00
ld [wSpriteIndex], a
2015-07-21 01:32:02 +00:00
CheckEvent EVENT_GOT_STARTER
2014-05-18 18:19:10 +00:00
jp nz, OaksLabScript_1d22d
2015-07-21 01:32:02 +00:00
CheckEventReuseA EVENT_OAK_ASKED_TO_CHOOSE_MON
jr nz, OaksLabScript_1d157
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText39
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabText39:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText39
db "@"
2016-06-12 00:24:04 +00:00
OaksLabScript_1d157:
2014-05-18 18:19:10 +00:00
ld a, $5
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld a, $9
2015-07-18 15:17:29 +00:00
ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
2015-07-19 03:49:52 +00:00
ld [hl], SPRITE_FACING_DOWN
2014-05-18 18:19:10 +00:00
ld a, $1
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld a, $9
2015-07-18 15:17:29 +00:00
ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
2015-07-19 03:49:52 +00:00
ld [hl], SPRITE_FACING_RIGHT
ld hl, wd730
2014-05-18 18:19:10 +00:00
set 6, [hl]
2015-08-13 05:14:31 +00:00
predef StarterDex
ld hl, wd730
2014-05-18 18:19:10 +00:00
res 6, [hl]
call ReloadMapData
ld c, 10
2014-05-18 18:19:10 +00:00
call DelayFrames
2014-09-13 07:50:56 +00:00
ld a, [wSpriteIndex]
2014-05-18 18:19:10 +00:00
cp $2
jr z, OaksLabLookAtCharmander
cp $3
jr z, OaksLabLookAtSquirtle
jr OaksLabLookAtBulbasaur
2016-06-12 00:24:04 +00:00
OaksLabLookAtCharmander:
2014-05-18 18:19:10 +00:00
ld hl, OaksLabCharmanderText
jr OaksLabMonChoiceMenu
2016-06-12 00:24:04 +00:00
OaksLabCharmanderText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabCharmanderText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabLookAtSquirtle:
2014-05-18 18:19:10 +00:00
ld hl, OaksLabSquirtleText
jr OaksLabMonChoiceMenu
2016-06-12 00:24:04 +00:00
OaksLabSquirtleText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabSquirtleText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabLookAtBulbasaur:
2014-05-18 18:19:10 +00:00
ld hl, OaksLabBulbasaurText
jr OaksLabMonChoiceMenu
2016-06-12 00:24:04 +00:00
OaksLabBulbasaurText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabBulbasaurText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabMonChoiceMenu:
2014-05-18 18:19:10 +00:00
call PrintText
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
2014-05-18 18:19:10 +00:00
call YesNoChoice ; yes/no menu
ld a, [wCurrentMenuItem]
2014-05-18 18:19:10 +00:00
and a
jr nz, OaksLabMonChoiceEnd
ld a, [wcf91]
2015-08-31 02:38:41 +00:00
ld [wPlayerStarter], a
ld [wd11e], a
2014-05-18 18:19:10 +00:00
call GetMonName
2014-09-13 07:50:56 +00:00
ld a, [wSpriteIndex]
2014-05-18 18:19:10 +00:00
cp $2
jr nz, .asm_1d1db
ld a, HS_STARTER_BALL_1
jr .asm_1d1e5
.asm_1d1db
2014-05-18 18:19:10 +00:00
cp $3
jr nz, .asm_1d1e3
ld a, HS_STARTER_BALL_2
jr .asm_1d1e5
.asm_1d1e3
ld a, HS_STARTER_BALL_3
.asm_1d1e5
2015-07-25 03:27:59 +00:00
ld [wMissableObjectIndex], a
predef HideObject
2014-05-18 18:19:10 +00:00
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
2014-05-18 18:19:10 +00:00
ld hl, OaksLabMonEnergeticText
call PrintText
ld hl, OaksLabReceivedMonText
call PrintText
2015-07-16 03:04:58 +00:00
xor a ; PLAYER_PARTY_DATA
ld [wMonDataLocation], a
ld a, 5
2015-08-31 02:38:41 +00:00
ld [wCurEnemyLVL], a
ld a, [wcf91]
ld [wd11e], a
call AddPartyMon
ld hl, wd72e
2014-05-18 18:19:10 +00:00
set 3, [hl]
ld a, $fc
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $8
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
2016-06-12 00:24:04 +00:00
OaksLabMonChoiceEnd:
2014-05-18 18:19:10 +00:00
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabMonEnergeticText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabMonEnergeticText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabReceivedMonText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabReceivedMonText
2016-05-30 13:08:40 +00:00
TX_SFX_KEY_ITEM
db "@"
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabScript_1d22d:
2014-05-18 18:19:10 +00:00
ld a, $5
ld [H_SPRITEINDEX], a
2014-05-18 18:19:10 +00:00
ld a, $9
2015-07-18 15:17:29 +00:00
ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData1
2014-05-18 18:19:10 +00:00
ld [hl], $0
ld hl, OaksLabLastMonText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabLastMonText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabLastMonText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText32:
OaksLabText5:
2015-07-03 19:58:50 +00:00
TX_ASM
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS
jr nz, .asm_1d266
ld hl, wPokedexOwned
ld b, wPokedexOwnedEnd - wPokedexOwned
2014-05-18 18:19:10 +00:00
call CountSetBits
2015-08-07 11:24:06 +00:00
ld a, [wNumSetBits]
cp 2
jr c, .asm_1d279
2015-07-21 01:32:02 +00:00
CheckEvent EVENT_GOT_POKEDEX
jr z, .asm_1d279
.asm_1d266
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d31d
call PrintText
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
predef DisplayDexRating
jp .asm_1d2ed
.asm_1d279
ld b, POKE_BALL
2014-05-18 18:19:10 +00:00
call IsItemInBag
jr nz, .asm_1d2e7
CheckEvent EVENT_BEAT_ROUTE22_RIVAL_1ST_BATTLE
jr nz, .asm_1d2d0
2015-07-21 01:32:02 +00:00
CheckEvent EVENT_GOT_POKEDEX
jr nz, .asm_1d2c8
2015-07-21 01:32:02 +00:00
CheckEventReuseA EVENT_BATTLED_RIVAL_IN_OAKS_LAB
jr nz, .asm_1d2a9
ld a, [wd72e]
2014-05-18 18:19:10 +00:00
bit 3, a
jr nz, .asm_1d2a1
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d2f0
call PrintText
jr .asm_1d2ed
.asm_1d2a1
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d2f5
call PrintText
jr .asm_1d2ed
.asm_1d2a9
2014-05-18 18:19:10 +00:00
ld b, OAKS_PARCEL
call IsItemInBag
jr nz, .asm_1d2b8
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d2fa
call PrintText
jr .asm_1d2ed
.asm_1d2b8
2014-05-18 18:19:10 +00:00
ld hl, OaksLabDeliverParcelText
call PrintText
2015-07-21 17:36:03 +00:00
call OaksLabScript_RemoveParcel
2014-05-18 18:19:10 +00:00
ld a, $f
2015-08-31 02:38:41 +00:00
ld [wOaksLabCurScript], a
jr .asm_1d2ed
.asm_1d2c8
2014-05-18 18:19:10 +00:00
ld hl, OaksLabAroundWorldText
call PrintText
jr .asm_1d2ed
.asm_1d2d0
2015-07-21 01:32:02 +00:00
CheckAndSetEvent EVENT_GOT_POKEBALLS_FROM_OAK
jr nz, .asm_1d2e7
2015-08-05 21:20:29 +00:00
lb bc, POKE_BALL, 5
2014-05-18 18:19:10 +00:00
call GiveItem
ld hl, OaksLabGivePokeballsText
call PrintText
jr .asm_1d2ed
.asm_1d2e7
2014-05-18 18:19:10 +00:00
ld hl, OaksLabPleaseVisitText
call PrintText
.asm_1d2ed
2014-05-18 18:19:10 +00:00
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabText_1d2f0:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d2f0
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText_1d2f5:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d2f5
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText_1d2fa:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d2fa
db "@"
2016-06-12 00:24:04 +00:00
OaksLabDeliverParcelText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabDeliverParcelText1
2016-05-30 13:08:40 +00:00
TX_SFX_KEY_ITEM
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabDeliverParcelText2
db "@"
2016-06-12 00:24:04 +00:00
OaksLabAroundWorldText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabAroundWorldText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabGivePokeballsText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabGivePokeballsText1
2016-05-30 13:08:40 +00:00
TX_SFX_KEY_ITEM
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabGivePokeballsText2
db "@"
2016-06-12 00:24:04 +00:00
OaksLabPleaseVisitText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabPleaseVisitText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText_1d31d:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d31d
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText7:
OaksLabText6:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d32c
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabText_1d32c:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d32c
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText8:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText8
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText9:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d340
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabText_1d340:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d340
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText17:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalWaitingText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalWaitingText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalWaitingText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText18:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabChooseMonText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabChooseMonText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabChooseMonText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText19:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalInterjectionText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalInterjectionText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalInterjectionText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText20:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabBePatientText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabBePatientText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabBePatientText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText12:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabLeavingText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabLeavingText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabLeavingText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText13:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalPickingMonText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalPickingMonText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalPickingMonText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText14:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalReceivedMonText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalReceivedMonText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalReceivedMonText
2016-05-30 13:08:40 +00:00
TX_SFX_KEY_ITEM
db "@"
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabText15:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalChallengeText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalChallengeText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalChallengeText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText_1d3be:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d3be
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText_1d3c3:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d3c3
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText16:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabRivalToughenUpText
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabRivalToughenUpText:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabRivalToughenUpText
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText21:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText21
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText22:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText22
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText23:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText23
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText24:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText24
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText25:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText25
2016-05-30 13:08:40 +00:00
TX_SFX_KEY_ITEM
db "@"
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
OaksLabText26:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText26
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText27:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText27
db "@"
2016-06-12 00:24:04 +00:00
OaksLabText11:
OaksLabText10:
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, OaksLabText_1d405
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
OaksLabText_1d405:
2014-05-18 18:19:10 +00:00
TX_FAR _OaksLabText_1d405
db "@"