aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/PalletTown.asm
diff options
context:
space:
mode:
authorvulcandth <vulcandth@gmail.com>2023-07-13 20:27:56 -0500
committerGitHub <noreply@github.com>2023-07-13 21:27:56 -0400
commitd001ced41b53271373753de835a9c3b3413dc318 (patch)
treeff2db7f403bddfcdeb12e50def8411cafedcdd5e /scripts/PalletTown.asm
parentMake wCurrentBoxNum a byte instead of word (#414) (diff)
downloadpokeyellow-d001ced41b53271373753de835a9c3b3413dc318.tar.gz
pokeyellow-d001ced41b53271373753de835a9c3b3413dc318.tar.xz
pokeyellow-d001ced41b53271373753de835a9c3b3413dc318.zip
Add macros, constants, and labels for map scripts and text (#367)
This introduces `def_script_pointers`, `def_text_pointers`, and `object_const_def` macros, and applies them to all maps. Most other map labels have also been identified.
Diffstat (limited to 'scripts/PalletTown.asm')
-rw-r--r--scripts/PalletTown.asm112
1 files changed, 57 insertions, 55 deletions
diff --git a/scripts/PalletTown.asm b/scripts/PalletTown.asm
index 5c26fc55..dd898ac6 100644
--- a/scripts/PalletTown.asm
+++ b/scripts/PalletTown.asm
@@ -9,15 +9,16 @@ PalletTown_Script:
jp CallFunctionInTable
PalletTown_ScriptPointers:
- dw PalletTownScript0
- dw PalletTownScript1
- dw PalletTownScript2
- dw PalletTownScript3
- dw PalletTownScript4
- dw PalletTownScript5
- dw PalletTownScript6
+ def_script_pointers
+ dw_const PalletTownDefaultScript, SCRIPT_PALLETTOWN_DEFAULT
+ dw_const PalletTownOakHeyWaitScript, SCRIPT_PALLETTOWN_OAK_HEY_WAIT
+ dw_const PalletTownOakWalksToPlayerScript, SCRIPT_PALLETTOWN_OAK_WALKS_TO_PLAYER
+ dw_const PalletTownOakNotSafeComeWithMeScript, SCRIPT_PALLETTOWN_OAK_NOT_SAFE_COME_WITH_ME
+ dw_const PalletTownPlayerFollowsOakScript, SCRIPT_PALLETTOWN_PLAYER_FOLLOWS_OAK
+ dw_const PalletTownDaisyScript, SCRIPT_PALLETTOWN_DAISY
+ dw_const PalletTownNoopScript, SCRIPT_PALLETTOWN_NOOP
-PalletTownScript0:
+PalletTownDefaultScript:
CheckEvent EVENT_FOLLOWED_OAK_INTO_LAB
ret nz
ld a, [wYCoord]
@@ -33,34 +34,34 @@ PalletTownScript0:
ld c, a
ld a, MUSIC_MEET_PROF_OAK ; "oak appears" music
call PlayMusic
- ld a, $FC
+ ld a, SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
ld [wJoyIgnore], a
SetEvent EVENT_OAK_APPEARED_IN_PALLET
; trigger the next script
- ld a, 1
+ ld a, SCRIPT_PALLETTOWN_OAK_HEY_WAIT
ld [wPalletTownCurScript], a
ret
-PalletTownScript1:
+PalletTownOakHeyWaitScript:
xor a
ld [wcf0d], a
- ld a, 1
+ ld a, TEXT_PALLETTOWN_OAK
ldh [hSpriteIndexOrTextID], a
call DisplayTextID
- ld a, $FF
+ ld a, A_BUTTON | B_BUTTON | SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
ld [wJoyIgnore], a
ld a, HS_PALLET_TOWN_OAK
ld [wMissableObjectIndex], a
predef ShowObject
; trigger the next script
- ld a, 2
+ ld a, SCRIPT_PALLETTOWN_OAK_WALKS_TO_PLAYER
ld [wPalletTownCurScript], a
ret
-PalletTownScript2:
- ld a, 1
+PalletTownOakWalksToPlayerScript:
+ ld a, PALLETTOWN_OAK
ldh [hSpriteIndex], a
ld a, SPRITE_FACING_UP
ldh [hSpriteFacingDirection], a
@@ -78,18 +79,18 @@ PalletTownScript2:
dec [hl]
predef FindPathToPlayer ; load Oak's movement into wNPCMovementDirections2
ld de, wNPCMovementDirections2
- ld a, 1 ; oak
+ ld a, PALLETTOWN_OAK
ldh [hSpriteIndex], a
call MoveSprite
- ld a, $FF
+ ld a, A_BUTTON | B_BUTTON | SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
ld [wJoyIgnore], a
; trigger the next script
- ld a, 3
+ ld a, SCRIPT_PALLETTOWN_OAK_NOT_SAFE_COME_WITH_ME
ld [wPalletTownCurScript], a
ret
-PalletTownScript3:
+PalletTownOakNotSafeComeWithMeScript:
ld a, [wd730]
bit 0, a
ret nz
@@ -97,15 +98,15 @@ PalletTownScript3:
ld [wSpritePlayerStateData1FacingDirection], a
ld a, 1
ld [wcf0d], a
- ld a, $FC
+ ld a, SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
ld [wJoyIgnore], a
- ld a, 1
+ ld a, TEXT_PALLETTOWN_OAK
ldh [hSpriteIndexOrTextID], a
call DisplayTextID
; set up movement script that causes the player to follow Oak to his lab
- ld a, $FF
+ ld a, A_BUTTON | B_BUTTON | SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
ld [wJoyIgnore], a
- ld a, 1
+ ld a, PALLETTOWN_OAK
ld [wSpriteIndex], a
xor a
ld [wNPCMovementScriptFunctionNum], a
@@ -115,21 +116,21 @@ PalletTownScript3:
ld [wNPCMovementScriptBank], a
; trigger the next script
- ld a, 4
+ ld a, SCRIPT_PALLETTOWN_PLAYER_FOLLOWS_OAK
ld [wPalletTownCurScript], a
ret
-PalletTownScript4:
+PalletTownPlayerFollowsOakScript:
ld a, [wNPCMovementScriptPointerTableNum]
and a ; is the movement script over?
ret nz
; trigger the next script
- ld a, 5
+ ld a, SCRIPT_PALLETTOWN_DAISY
ld [wPalletTownCurScript], a
ret
-PalletTownScript5:
+PalletTownDaisyScript:
CheckEvent EVENT_DAISY_WALKING
jr nz, .next
CheckBothEventsSet EVENT_GOT_TOWN_MAP, EVENT_ENTERED_BLUES_HOUSE, 1
@@ -145,35 +146,36 @@ PalletTownScript5:
CheckEvent EVENT_GOT_POKEBALLS_FROM_OAK
ret z
SetEvent EVENT_PALLET_AFTER_GETTING_POKEBALLS_2
-PalletTownScript6:
+PalletTownNoopScript:
ret
PalletTown_TextPointers:
- dw PalletTownText1
- dw PalletTownText2
- dw PalletTownText3
- dw PalletTownText4
- dw PalletTownText5
- dw PalletTownText6
- dw PalletTownText7
+ def_text_pointers
+ dw_const PalletTownOakText, TEXT_PALLETTOWN_OAK
+ dw_const PalletTownGirlText, TEXT_PALLETTOWN_GIRL
+ dw_const PalletTownFisherText, TEXT_PALLETTOWN_FISHER
+ dw_const PalletTownOaksLabSignText, TEXT_PALLETTOWN_OAKSLAB_SIGN
+ dw_const PalletTownSignText, TEXT_PALLETTOWN_SIGN
+ dw_const PalletTownPlayersHouseSignText, TEXT_PALLETTOWN_PLAYERSHOUSE_SIGN
+ dw_const PalletTownRivalsHouseSignText, TEXT_PALLETTOWN_RIVALSHOUSE_SIGN
-PalletTownText1:
+PalletTownOakText:
text_asm
ld a, [wcf0d]
and a
jr nz, .next
ld a, 1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
- ld hl, OakAppearsText
+ ld hl, .HeyWaitDontGoOutText
jr .done
.next
- ld hl, OakWalksUpText
+ ld hl, .ItsUnsafeText
.done
call PrintText
jp TextScriptEnd
-OakAppearsText:
- text_far _OakAppearsText
+.HeyWaitDontGoOutText:
+ text_far _PalletTownOakHeyWaitDontGoOutText
text_asm
ld c, 10
call DelayFrames
@@ -185,30 +187,30 @@ OakAppearsText:
ld [wPlayerMovingDirection], a
jp TextScriptEnd
-OakWalksUpText:
- text_far _OakWalksUpText
+.ItsUnsafeText:
+ text_far _PalletTownOakItsUnsafeText
text_end
-PalletTownText2: ; girl
- text_far _PalletTownText2
+PalletTownGirlText:
+ text_far _PalletTownGirlText
text_end
-PalletTownText3: ; fat man
- text_far _PalletTownText3
+PalletTownFisherText:
+ text_far _PalletTownFisherText
text_end
-PalletTownText4: ; sign by lab
- text_far _PalletTownText4
+PalletTownOaksLabSignText:
+ text_far _PalletTownOaksLabSignText
text_end
-PalletTownText5: ; sign by fence
- text_far _PalletTownText5
+PalletTownSignText:
+ text_far _PalletTownSignText
text_end
-PalletTownText6: ; sign by Red's house
- text_far _PalletTownText6
+PalletTownPlayersHouseSignText:
+ text_far _PalletTownPlayersHouseSignText
text_end
-PalletTownText7: ; sign by Blue's house
- text_far _PalletTownText7
+PalletTownRivalsHouseSignText:
+ text_far _PalletTownRivalsHouseSignText
text_end