2014-05-18 18:19:10 +00:00
|
|
|
|
PalletTownScript: ; 18e5b (6:4e5b)
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wd74b]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
bit 4,a
|
|
|
|
|
jr z,.next
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld hl,wd747
|
2014-05-18 18:19:10 +00:00
|
|
|
|
set 6,[hl]
|
|
|
|
|
.next
|
|
|
|
|
call EnableAutoTextBoxDrawing
|
|
|
|
|
ld hl,PalletTownScriptPointers
|
|
|
|
|
ld a,[W_PALLETTOWNCURSCRIPT]
|
|
|
|
|
jp CallFunctionInTable
|
|
|
|
|
|
|
|
|
|
PalletTownScriptPointers: ; 18e73 (6:4e73)
|
|
|
|
|
dw PalletTownScript0
|
|
|
|
|
dw PalletTownScript1
|
|
|
|
|
dw PalletTownScript2
|
|
|
|
|
dw PalletTownScript3
|
|
|
|
|
dw PalletTownScript4
|
|
|
|
|
dw PalletTownScript5
|
|
|
|
|
dw PalletTownScript6
|
|
|
|
|
|
|
|
|
|
PalletTownScript0: ; 18e81 (6:4e81)
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wd747]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
bit 0,a
|
|
|
|
|
ret nz
|
|
|
|
|
ld a,[W_YCOORD]
|
|
|
|
|
cp 1 ; is player near north exit?
|
|
|
|
|
ret nz
|
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
|
ld [hJoyHeld],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,4
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wd528],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,$FF
|
|
|
|
|
call PlaySound ; stop music
|
|
|
|
|
ld a, BANK(Music_MeetProfOak)
|
|
|
|
|
ld c,a ; song bank
|
|
|
|
|
ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music
|
2015-07-03 19:38:12 +00:00
|
|
|
|
call PlayMusic
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,$FC
|
2014-05-25 17:51:53 +00:00
|
|
|
|
ld [wJoyIgnore],a
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld hl,wd74b
|
2014-05-18 18:19:10 +00:00
|
|
|
|
set 7,[hl]
|
|
|
|
|
|
|
|
|
|
; trigger the next script
|
|
|
|
|
ld a,1
|
|
|
|
|
ld [W_PALLETTOWNCURSCRIPT],a
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownScript1: ; 18eb2 (6:4eb2)
|
|
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcf0d],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,1
|
|
|
|
|
ld [$FF8C],a
|
|
|
|
|
call DisplayTextID
|
|
|
|
|
ld a,$FF
|
2014-05-25 17:51:53 +00:00
|
|
|
|
ld [wJoyIgnore],a
|
2014-09-25 23:21:49 +00:00
|
|
|
|
ld a,HS_PALLET_TOWN_OAK
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcc4d],a
|
2014-06-16 20:57:26 +00:00
|
|
|
|
predef ShowObject
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
|
|
; trigger the next script
|
|
|
|
|
ld a,2
|
|
|
|
|
ld [W_PALLETTOWNCURSCRIPT],a
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownScript2: ; 18ed2 (6:4ed2)
|
|
|
|
|
ld a,1
|
|
|
|
|
ld [$FF8C],a
|
|
|
|
|
ld a,4
|
|
|
|
|
ld [$FF8D],a
|
2014-09-10 03:55:19 +00:00
|
|
|
|
call SetSpriteFacingDirectionAndDelay
|
2014-05-18 18:19:10 +00:00
|
|
|
|
call Delay3
|
|
|
|
|
ld a,1
|
|
|
|
|
ld [W_YCOORD],a
|
|
|
|
|
ld a,1
|
|
|
|
|
ld [$FF9B],a
|
|
|
|
|
ld a,1
|
|
|
|
|
swap a
|
|
|
|
|
ld [$FF95],a
|
2014-09-10 03:55:19 +00:00
|
|
|
|
predef CalcPositionOfPlayerRelativeToNPC
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld hl,$FF95
|
|
|
|
|
dec [hl]
|
2014-09-10 03:55:19 +00:00
|
|
|
|
predef FindPathToPlayer ; load Oak’s movement into wNPCMovementDirections2
|
|
|
|
|
ld de,wNPCMovementDirections2
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,1 ; oak
|
|
|
|
|
ld [$FF8C],a
|
|
|
|
|
call MoveSprite
|
|
|
|
|
ld a,$FF
|
2014-05-25 17:51:53 +00:00
|
|
|
|
ld [wJoyIgnore],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
|
|
; trigger the next script
|
|
|
|
|
ld a,3
|
|
|
|
|
ld [W_PALLETTOWNCURSCRIPT],a
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownScript3: ; 18f12 (6:4f12)
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wd730]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
bit 0,a
|
|
|
|
|
ret nz
|
|
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wSpriteStateData1 + 9],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,1
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcf0d],a
|
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,1
|
|
|
|
|
ld [$FF8C],a
|
|
|
|
|
call DisplayTextID
|
|
|
|
|
ld a,$FF
|
2014-05-25 17:51:53 +00:00
|
|
|
|
ld [wJoyIgnore],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,1
|
2014-09-13 07:50:56 +00:00
|
|
|
|
ld [wSpriteIndex],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
xor a
|
2014-09-10 03:55:19 +00:00
|
|
|
|
ld [wNPCMovementScriptFunctionNum],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,1
|
2014-09-10 03:55:19 +00:00
|
|
|
|
ld [wNPCMovementScriptPointerTableNum],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,[H_LOADEDROMBANK]
|
2014-09-10 03:55:19 +00:00
|
|
|
|
ld [wNPCMovementScriptBank],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
|
|
; trigger the next script
|
|
|
|
|
ld a,4
|
|
|
|
|
ld [W_PALLETTOWNCURSCRIPT],a
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownScript4: ; 18f4b (6:4f4b)
|
2014-09-10 03:55:19 +00:00
|
|
|
|
ld a,[wNPCMovementScriptPointerTableNum]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
and a
|
|
|
|
|
ret nz
|
|
|
|
|
|
|
|
|
|
; trigger the next script
|
|
|
|
|
ld a,5
|
|
|
|
|
ld [W_PALLETTOWNCURSCRIPT],a
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownScript5: ; 18f56 (6:4f56)
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wd74a]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
bit 2,a
|
|
|
|
|
jr nz,.next
|
|
|
|
|
and 3
|
|
|
|
|
cp 3
|
|
|
|
|
jr nz,.next
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld hl,wd74a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
set 2,[hl]
|
2014-09-25 23:21:49 +00:00
|
|
|
|
ld a,HS_DAISY_SITTING
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcc4d],a
|
2014-06-16 20:57:26 +00:00
|
|
|
|
predef HideObject
|
2014-09-25 23:21:49 +00:00
|
|
|
|
ld a,HS_DAISY_WALKING
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcc4d],a
|
2014-06-16 20:57:26 +00:00
|
|
|
|
predef_jump ShowObject
|
2014-05-18 18:19:10 +00:00
|
|
|
|
.next
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wd74b]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
bit 4,a
|
|
|
|
|
ret z
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld hl,wd74b
|
2014-05-18 18:19:10 +00:00
|
|
|
|
set 6,[hl]
|
|
|
|
|
PalletTownScript6: ; 18f87 (6:4f87)
|
|
|
|
|
ret
|
|
|
|
|
|
|
|
|
|
PalletTownTextPointers: ; 18f88 (6:4f88)
|
|
|
|
|
dw PalletTownText1
|
|
|
|
|
dw PalletTownText2
|
|
|
|
|
dw PalletTownText3
|
|
|
|
|
dw PalletTownText4
|
|
|
|
|
dw PalletTownText5
|
|
|
|
|
dw PalletTownText6
|
|
|
|
|
dw PalletTownText7
|
|
|
|
|
|
|
|
|
|
PalletTownText1: ; 18f96 (6:4f96)
|
|
|
|
|
db 8
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld a,[wcf0d]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
and a
|
|
|
|
|
jr nz,.next
|
|
|
|
|
ld a,1
|
2014-09-13 07:50:56 +00:00
|
|
|
|
ld [wDoNotWaitForButtonPressAfterDisplayingText],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld hl,OakAppearsText
|
|
|
|
|
jr .done
|
|
|
|
|
.next
|
|
|
|
|
ld hl,OakWalksUpText
|
|
|
|
|
.done
|
|
|
|
|
call PrintText
|
|
|
|
|
jp TextScriptEnd
|
|
|
|
|
|
|
|
|
|
OakAppearsText: ; 18fb0 (6:4fb0)
|
|
|
|
|
TX_FAR _OakAppearsText
|
|
|
|
|
db 8
|
|
|
|
|
ld c,10
|
|
|
|
|
call DelayFrames
|
|
|
|
|
xor a
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wcd4f],a
|
|
|
|
|
ld [wcd50],a
|
2014-06-16 20:57:26 +00:00
|
|
|
|
predef EmotionBubble ; display ! over head
|
2014-05-18 18:19:10 +00:00
|
|
|
|
ld a,4
|
2014-05-26 21:04:56 +00:00
|
|
|
|
ld [wd528],a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
jp TextScriptEnd
|
|
|
|
|
|
|
|
|
|
OakWalksUpText: ; 18fce (6:4fce)
|
|
|
|
|
TX_FAR _OakWalksUpText
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText2: ; 0x18fd3 girl
|
|
|
|
|
TX_FAR _PalletTownText2
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText3: ; 0x18fd8 fat man
|
|
|
|
|
TX_FAR _PalletTownText3
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText4: ; 0x18fdd sign by lab
|
|
|
|
|
TX_FAR _PalletTownText4
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText5: ; 0x18fe2 sign by fence
|
|
|
|
|
TX_FAR _PalletTownText5
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText6: ; 0x18fe7 sign by Red’s house
|
|
|
|
|
TX_FAR _PalletTownText6
|
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
|
|
PalletTownText7: ; 0x18fec sign by Blue’s house
|
|
|
|
|
TX_FAR _PalletTownText7
|
|
|
|
|
db "@"
|